设计应用

基于STM32的新型光耦电机定位技术

作者:杨晓昆,张正平,张 灿,赵 麒
发布日期:2018-05-24
来源:2018年电子技术应用第5期

0 引言

    随着精工技术的不断发展,越来越多的仪器设备对数据精密度的要求不断提高[1-2]。本实验室参与的工程项目——纳米量子点蛋白质芯片关键技术及产品研发所采用的微型移动平台,经过几代的技术改进,不断将控制平台微型化,对仪器平台精密定位的要求也在不断提高。此时前几代所使用的传统中小型移动平台的多光耦定位电机已无法达到工作需求。所以,实验组在逐步缩小光耦体积、减少光耦数量的同时,采用一种新型定位技术,以便更进一步提高平台精准度。

1 总体结构与电机驱动

1.1 模块化项目结构

    纳米量子点蛋白质芯片关键技术及产品研发项目设备总体结构如图1所示,因实验项目采用的是模块化工程模式,即不同的实验组负责各自的模块,其中主要分为结构搭配与设计组、上位机软件工程组和下位机硬件工程组3个方向。本实验组隶属于下位机硬件工程组,在总体结构中,实验组没有直接参与或负责的部分已用虚线框注明。

qrs5-t1.gif

1.2 电机的驱动

    在实际工程中,需同时考虑产品最优化性能、维护成本及可操作性等因素,所以选用由微型四相电机所组成的xy轴单光耦十字移动工作滑台。因为所选用的移动平台是由四相永磁式步进电机和光耦共同搭建完成的,此电机在通常情况下可以由电压直接驱动,但考虑到重定义相位、电机功率等原因,采用市面上已经非常成熟的A4988芯片对电机进行驱动[3]和保护。

    滑台电机的转动方向与STM32电机方向引脚的高低电平有关。实验组根据电机实际情况,将输出方向与电压的关系建立如下公式:

     qrs5-gs1.gif

式中,x为STM32下位机方向引脚输出电压。

    同时,电机转动的速度是通过改变STM32下位机速度引脚的脉冲频率来控制的,速度引脚所产生的脉冲频率越高,电机所对应的移动速度越快。

    因实际电机受到灵敏度限制,只能识别一定范围内的脉冲频率,所以实验组根据频率要求将电机速度分为25个挡位,并通过部分源码简介电机速度与脉冲频率间的关系[4-5]

    以下为电机控制部分一个周期脉冲所对应的C语言程序源码:

    PWM_X_ON;

    OSTimeDly(1);

    PWM_X_OFF;

    OSTimeDly(Pulse_X_Time);

    经头文件及宏定义之后,第1行源码的效果是拉高x轴速度引脚电平;第2行源码将速度引脚高电平延迟一个节拍(1 ms);随后,通过第3行源码拉低x轴速度引脚电平;第4行源码将此时状态维持,并等待下一个脉冲周期。此时,电机会相应的移动一个位置,这里将移动路程记做1。

    由上述C语言程序源码和周期条件可得出电机速度与周期频率的关系如下:

    qrs5-gs2.gif

式中,n为第4行源码中所接收的上位机Pulse_X_Time参数所代表挡位。

2 光耦的原理及使用

    光耦的全称为光耦合器,是诞生于20世纪70年代的一种新型器件,因其优秀的抗干扰能力、工作稳定性、持久性等特性在实际工业生产中有着非常广泛的应用。

    原光耦理想电路如图2所示,因其简单结构无法满足电路的安全与功能需求,所以在光耦电路的接收和发送端分别接入了保护电阻[6]

qrs5-t2.gif

    将接入保护电阻的光耦结构通电后接入示波器,令电机以式(2)中v(0)速度运行,其示波器中显示的电压与时间关系如图3所示。

qrs5-t3.gif

    从图3中结果可以看出光耦的输出电压并非理想的跳变,这是由于光耦的结构特性所决定的。

    光耦的接收端是由光敏电阻所构成的,其阻值会随着光强度变化而发生改变,而当光耦滑台产生移动时,滑台所配套的遮光挡板处于匀速运动,以至于无法在短时间内完全阻挡发射光线,因此才会出现图3所示现象。

    光耦电压的这种不确定性,使得STM32电压接收引脚无法准确对其进行捕获,以至于无法对距离进行准确的把握。

    针对光耦的这一非理想因素,实验组最终提出将光耦电路输出端接入迟滞比较器的解决方案[7]。迟滞比较器的作用是当光耦输入电压大于一定范围时迟滞比较器输出高电平,光耦输入电压小于某一范围时迟滞比较器将输出低电平。

    此时,光耦结构完整电路如图4所示,并通过设置与实际测量,最终得到迟滞比较器输出电压与光耦输入电压间的关系如式(3)所示:

     qrs5-gs3.gif

式中,x代表光耦的输入电压。

qrs5-t4.gif

    将完善后的电路图并入实际工作电路,经过示波器实际测量,光耦输出电压与时间的关系如图5所示。

qrs5-t5.gif

    最后,实验组得出准确STM32输出脉冲次数与电机移动距离关系,如式(4)所示:

    qrs5-gs4.gifqrs5-gs4.gif

式中,x为STM32下位机输出的脉冲次数,经计算最大脉冲数值为4 439。

3 光耦电机结构与新型定位技术

    针对前几代双光耦电机因体积原因无法准确定位的缺陷,实验组在进一步将电机微型化的条件下,构建了微型xy轴单光耦十字移动工作滑台。并采用了一种新型的定位技术——数值边界定位算法,有效克服了只能适用于中小型移动平台的双光耦电机所存在的缺点[8]

    xy轴单光耦十字移动工作滑台其结构分为x、y两轴,每一个轴分别由对应的电机、光耦和遮光挡板所构成。在这里,只单例出其中x轴来进行分析,y轴同理。其x轴的结构如图6所示。

qrs5-t6.gif

    因为xy轴单光耦十字移动工作滑台是一个微型平台,即使选配体积极小的光耦和遮光挡板,仍然会占据大量空间,所以,光耦的跳变对输出有了不同的意义:当遮光挡板进入光耦时,光耦会输出一个低电平,并始终保持;当遮光挡板离开光耦时,光耦的输出电平会被拉高,并始终保持直到遮光挡板再次进入光耦,电平拉低。所以,新的光耦输出电压与电机移动距离关系如图7所示。

qrs5-t7.gif

    在此,重新定义STM32所输出的一个脉冲,对应电机移动距离为单位1。

    因此,本文提出的数值边界定位技术,通过多次实验分别测得图6中的X_Left和X_Right距离所需的脉冲次数,再从复以上实验步骤,多次测量得到X_Left+X_Right的总长脉冲次数记做XY_Test(因为实际工程中存在X、Y相同的两个电机)。以上数据对y轴电机同样适用。通过多次的实验测量和计算分别得出X_Left=2 034、X_Righ=2 445、XY_Test=4 439。

    在启动系统之前,因为无法得知电机所在位置,所以需要对整体结构进行初始化[9],以下为针对此电机的初始化算法步骤:

    (1)判断光耦输出端的电平,如果是低电平,即说明遮光挡板位于光耦内,给予电机一个向右移动的命令;如果是高电平,说明遮光挡板位于光之外,给予电机一个向左移动的命令。

    (2)电机向左移动离开光耦时,光耦电平由低变高,电机向右移动进入光耦时,光耦电平被拉低。所以,无论遮光挡板是离开还是进入光耦,都会产生一个跳变信号。若已捕获到这一跳变信号,则说明电机遮光挡板已经运行至临界点。

    (3)给予电机一个向右的方向和X_Right的距离,此时遮光挡板运行至电机起点位置。

    光耦电机初始化流程如图8所示。

qrs5-t8.gif

    当电机x、y轴同时运动时,此技术仍然适用,只需要添加对二者边界的判决条件,构造如下函数:

    qrs5-gs5.gif

式中,i表示次电机上电后所运行的次数,di(x1)由式(1)定义为电机第i次运动方向,si(x2)由式(4)定义为电机第i次运行距离的绝对值。

    因此,若想要时刻得到电机的绝对位置并判断是否越过边界条件则需要公式如下:

    qrs5-gs6.gif

式中,m、n分别为x、y轴当前操作电机的次数,x1、x2分别为x轴所对应方向电压和距离,y1、y2分别为y轴所对应的方向电压与距离,f(x,y)为式(5)所构建电机一次的运动距离。

    若z值超出了已经给定的数值边界,则下位机将向PC上位机返回警告信号。

4 结论

    与前几代双光耦电机定位技术的局限性不同,单光耦电机的数值边界定位技术适用于多种电机工作平台,有较好的可移植性,尤其在微型电机平台有着显著的优势。它可以避免因测量精确度限制导致的误差,并且从软件方面着手大大减少了硬件工程所需的工作量。

    但是该技术也存在的相应的缺点,电机的运行过度依赖于软件的程序,对硬件故障无法及时地做出反馈。可能导致的问题之一是,如果旋转电机出现滑丝现象,单从软件是无法得到这一结论的。

    所以在后期的工作之中,实验组将会系统地对工程进行完善,将对硬件的检测部分加入到工作内容之中,并且在现有的基础之上,对电机的运动进行维度拓展,将之后的工作重心转移到第三维度的处理与应用。

参考文献

[1] FAN Y,ZHANG L,CHENG M,et al.Sensorless SVPWM-FADTC of a new flux-modulated permanent-magnet wheel motor based on a wide-speed sliding mode observer[J].IEEE Transactions on Industrial Electronics,2015,62(5):3143-3151.

[2] 王登贵,杨中平,胡真明,等.基于PLC的四相步进电机控制方法及实现[J].微计算机信息,2015,41(1):21-24.

[3] Chen Chao,Shi Yunlai,Zhang Jun,et al.Novel linear piezoelectric motor for precision position stage[J].Chinese Journal of Mechanical Engineering,2016,29(2):378-385.

[4] 莫本团.基于步进电机控制的大空间火灾精确定位原理设计[J].电子测试,2017(9):34-35.

[5] RAHIDEH A,KORAKIANITIS T.Analytical open-circuit magnetic field distribution of slotless brushless permanent-magnet machines with rotor eccentricity[J].IEEE Transactions on Magnetics,2011,47(12):4791-4807.

[6] QIAO Z,SHI T,WANG Y,et al.New sliding-mode observer for position sensorless control of permanent-magnet synchronous  motor[J].IEEE Transactions on Industrial Electronics,2013,60(2):710-719.

[7] 王洪祥,赵野,黑勇.一种带有迟滞比较器的新型RC振荡器[J].科学技术与工程,2013,13(18):5345-5349.

[8] 章圣焰,刘小康,胡水仙.浅谈光耦的使用方法[J].航空电子技术,2015,46(4):51-54.

[9] 贾启.三自由度永磁同步平面电机定位控制研究[D].沈阳:沈阳工业大学,2013.



作者信息:

杨晓昆,张正平,张  灿,赵  麒

(贵州大学 大数据与信息工程学院,贵州 贵阳550000)

此内容为AET网站原创,未经授权禁止转载。
机电控制 光耦 迟滞比较器 定位技术