《单轴步进电机定长控制器的设计及其实现.docx》由会员分享,可在线阅读,更多相关《单轴步进电机定长控制器的设计及其实现.docx(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、单轴步进电机定长控制器的设计及其实现摘要:分析了影响步进电机定长精度的两个重要因素,采用ATmega128微控制器设计了一种单轴步进电机定长控制器。一方面,引入点动微调粗调方法将零点标定误差控制在最小误差限内;另一方面,综合阶梯型和直线型曲线实现加减速控制,兼顾加减速平滑性能和定长时间。实验结果说明,该控制器引入点动微调粗调和加减速后,定长精度较高,定位速度快,定长时间可灵敏配置,十分合适一维定长定位应用场合。关键词:步进电机;定长控制;加减速;微调粗调;ATmega128Abstract:Analysingtwoimportantfactorsoftheaccuracyofstepmotor
2、lengthcontrol,authordesignedasingle-axisstepmotorlengthcontrollerbasedonmicrocontrollerATmega128.Ontheonehand,themethodofjogfinetuningandjogcoarsetuningisusedtolimittheerrorvalueofpointzerocalibrationassmallaspossible;Ontheotherhand,takingintoaccounttheaccelerationanddecelerationsmoothperformanceand
3、lengthcontroltime,theladdercurveandthelinearcurveareintegratedtoimplementtheaccelerationanddecelerationcontrol.Theexperimentalresultsshowsthatthelengthcontrollerhasagoodperformanceofhighaccuracypositioning,fastspeedpositioningandflexiblecontroltimeanditverysuitablefortheone-dimensionallengthposition
4、ingapplications.Keywords:stepmotor;lengthcontrol;accelerationanddeceleration;finetuningandcoarsetuning;ATmega1281引言步进电机是纯粹的数字控制电动机,其角位移和角速度分别与输入脉冲数和脉冲频率成正比,开环状态下控制简单方便,在定长定位场合得到了广泛的应用1。步进电机的定长控制往往是以参考零点为初始位置配合一定的加减速算法得以实现的,因此其定长定位精度受两个因素影响。第一个因素是零点标定的准确性,零点标定精度越高定位误差越小,反之定位误差越大。通常有传感器法、专用芯片法和直接归零法来实
5、现零点标定,传感器法对传感器的安装精度有较高要求,而后两者都需要在目的零点安装挡板,这对电机有一定冲击。第二个因素是加减速的平滑性能,加速度越大定位时间越短却轻易丢步,反之定位时间越长但可有效防止丢步。目前有阶梯型、直线线和S型曲线算法来实现加减速控制2。阶梯型曲线算法将加减速阶段的总步数均分给假设干频率段,加速度物理意义不明显,频率台阶大轻易造成电机丢步;直线型曲线算法中加减速阶段每个频率只走一步,加速度恒定但均分过细导致在线计算量过大或存储量过大;S型曲线算法平滑性能均要比前两者都好,实现起来比拟复杂。本文以兼顾精度和响应速度为目的,采用ATmega128微控制器设计一种单轴步进电机定长控
6、制器。第一,引入点动微调粗调到直接归零法中来进步零点标定的准确性;第二,综合阶梯型和直线型曲线算法,保持加速度的恒定以及减少计算量,缩短定位时间。2定长控制器的硬件构造步进电机定长控制系统的硬件构造图如图1所示,由定长控制器(虚线框所示)、驱动器和步进电机组成。该定长控制器只输出脱机、方向、脉冲、公共信号并接收限位开关信号,它结合步进驱动器以及步进电机组成定长控制系统。图1步进电机定长控制系统硬件构造图该定长控制器采用ATmega1283单片机作为核心控制单元,其128KB的Flash和4KB的EEPROM足够知足步进电机定长定位需求。36矩阵键盘模块中包括09数字、系统、确定、返回、去除等按
7、键,6根列线通过内部上拉到PB0PB5引脚,3根行线直接接到PE5PE7,利用行扫描实现对按键的检测;独立式按钮模块中包括电源开关、调试、点动正、点动反、归零、急停等按钮,通过5K电阻上拉到电源;段式液晶显示模块包括一块6位8字的静态驱动段式液晶屏EDS810、LED指示灯以及7片级联的串入并出芯片74HC595,其中6片用来驱动液晶屏每一位的段码,最后一片驱动LED指示灯,利用PC0PC3对该模块进展驱动。微控制器ATmega128从PA7和PA6输出脱机和方向信号,从PE4输出脉冲信号,这三路信号经过74LS07高压驱动芯片放大后送给外部驱动器。3定长控制器的软件设计重点介绍软件设计中的点
8、动微调粗调和加减速曲线的实现,以便兼顾定长定位精度和定长时间。3.1点动微调粗调的实现采用点动微调粗调引入到直接归零法来减小零点标定误差,进步定位精度。点动微调粗调本质上是一种分辨率为单位Hz、调节范围为fminfmax的点动运行方式。在这种运行方式中,按住点动按钮时定长控制器发送脉冲驱动电机运转,松开点动按钮时定长控制器停顿发送脉冲制动电机。点动微调粗调有两个好处:第一:调节范围连续平滑,在调节范围内可设置任意频率来驱动电机,合适于不同负载场合;第二,步进精度高,当点动频率设置为fmin时,其最低的驱动频率可以到达10Hz,假设点动持续时间为0.5s,那么步进电机转动了5个步距角(假如没有细
9、分驱动),精细的步距角可以保证零点标定误差在一个比拟小的绝对误差限中。点动微调粗调的详细做法是,在目的零点安装挡板、刻线等零点指示标志,设置一个比拟高的频率进展粗调驱动步进电机旋转逼近目的零点,然后以一个比拟低的频率反复进展微调,直到步进电机运行到零点指示标志处。3.2加减速曲线算法的实现采用加减速控制的目的是克制步进电机在启动和制动阶段的惯性力矩,防止启动丢步和制动过冲,因此良好的加减速控制对定位精度意义重大。结合阶梯型和直线型加减速曲线,来实现对步进电机启动阶段的加速控制和制动阶段的减速控制。加速时,在给定的加速a下步进电机从最大启动频率f1开场运行S1个步距角切换到f2,f2运行S2个步
10、距角切换到f3,直至切换到设定频率fs,fn-1、fn、Sn以及a知足匀直线加速的约束;减速时,控制步骤与加速时步骤相反。介绍加减速曲线算法的详细实现。约定初始状态为:最大启动频率为f1=1000Hz,设定频率fs为最大运行频率为fmax=20000Hz,初始步进间隔为S1=30,加速度a=1000Hz/s,由式子fn2=f12+2aS,并根据每个频率段上定的步数S,可以推算出总步数S、该段上的运行频率fn。(1)取S1=30,那么S=30,f22=10002+2100030,推出f2=1030(Hz);(2)取S2=30,那么S=60,f32=10002+2100060,推出f3=1058(
11、Hz);(3)取S3=30,那么S=90,f42=10002+2100090,推出f4=1086(Hz);(以后每隔5个频率段,Sn就增加30步) (255)取S255=1530,那么S=198900,f2562=10002+21000198900,推出f256=19970(Hz);(256)取S256=1560,那么S=200460,f2572=10002+21000200460,推出f257=20048(Hz);由于20048(Hz)20000(Hz),计算停顿。将上面得到的总步数S,分段频率fn,分段步数Sn形成一张步进电机加减速步进频率和步进间隔表,如表1所示。表1步进电机加减速步进频
12、率和步进间隔表加速时,从启动频率f1至设定频率fs依次取步进频率fn和步进间隔Sn,实时判定是否需要更新步进频率和步进间隔;加速完毕后假如存在匀速阶段,以设定频率fs匀速运行至减速点;减速时,从设定频率fs至启动频率f1依次取fn和Sn,实时判定是否需要更新步进频率和步进间隔,当f1的步进间隔走完时电机立即制动。3.3定长控制方案结合设定参数和加减速曲线来实现步进电机的定长控制,设定参数通常包括长度L(脉冲数)、速度fs(Hz)、加速度等级an(n取15)以及方向等。首先,在定长控制器中内置如图2(a)所示的5条加减速曲线(取f1=1000Hz,fmax=20000Hz,an=(1000*n)
13、Hz/s),用户只能选择这5种加速度当中的一种,按照加减速曲线算法形成每条曲线的步进电机加减速步进频率和步进间隔表,并存入ATmega128的Flash中。其次,根据加速度等级、速度、长度三个参数来判定是否存在匀速阶段。查表后计算出加速阶段的总步数S,一般会出现四种情况:当fs=f1时,加减速没有意义,步进电机直接以设定频率fs启动走完长度L;当fsf1且L2S时,存在匀速阶段,对步进电机施行如图2(b)所示的轨迹控制;当fsf1且L=2S时,只存在加减速阶段,对步进电机施行如图2(c)所示的轨迹控制;当fsf1且L2S时,参数设置欠公道,将设定速度fs交换为最大启动频率f1对步进电机施行如图
14、2(d)所示的轨迹控制,步进电机以f1直接启动时电磁转矩足够大可以克制惯性力矩。图2不同设定参数下的定长控制轨迹3.4附加功能步进定长控制用具有单位长度脉冲数设定、程序分组、分组延时、分组循环、掉电记忆以及归零等功能。单位长度脉冲数是指单位长度对应的脉冲数目,其设定值依步进电机轴端的连结构造不同而不同;一个目的对象可能需要在不同位置进展切刀动作,程序分组可以知足这个要求,每一条程序由长度、速度、方向、加速度等级四个参数组成,可以设定150条程序,可根据消费工艺一次编完程序;分组延时用来设定每条程序之间的延时时间,延时时间内可以人工手动或控制器自动对目的对象切刀;分组循环是为了知足连续加工多个目
15、的对象的要求,可以设定19999次循环;掉电记忆主要将当前的各个分组参数以及当前的定长长度存入ATmega128的EEPROM中;归零可以实现步进电机自动退回至目的零点。4实验结果及其分析为了验证基于ATmega128的单轴步进电机定长控制器的定长精度和定长时间,将其应用于滚珠丝杠定长场合并对相关数据进展了测试和分析。测试平台为定长控制器、SH2034D高压高细分步进电机驱动器、85BYGH四相混合式步进电机以及行程为50cm的滚珠丝杠。(1)定长精度测试定长控制前先完成滚珠丝杠零点标定和单位长度脉冲换算。零点标定采用点动微调粗调方法进展,将滚珠丝杠螺母调试至目的零点;零点标定后固定步进电机驱
16、动器细分数(固定为8细分)并进展单位长度脉冲换算,任意设定一单位长度脉冲数N1(如500个脉冲量/cm)和定长长度L1(如30.5cm),步进电机启动后带动滚珠丝刚并记录丝杠螺母执行长度L1,重复上述步骤得到测量数据(L1,N1*L1)、(L2,N2*L2)、(Ln,Nn*Ln),利用最小二乘法计算优化的单位长度脉冲数目Nopt并重设该参数。经过实际测量和运算,单位长度脉冲量为565个脉冲量/cm。上述步骤完毕后,选择不同的加速度等级,设定好长度、速度、方向后测试丝杠螺母的执行长度,测试结果如表2。表2定长长度设定值及测试值 (2)定长时间测试定长时间由加速时间、匀速时间以及减速时间组成。对于
17、存在加减速的情况,在给定的加速a、设定频率fs以及设定长度Ls下,理论加速时间tr和理论减速时间td相等,其值即是tr=td=(fs-f1)/a,理论匀速时间为tm=(Ls*Nopt-(f1+fs)*tr)/fs,那么理论定长时间tc=tr+td+tm。对于只不存在加减速的情况,理论定长时间tc=Ls*Nopt/fs。定长时间测试结果如表3。表3定长时间理论值及其测试值 (3)结果分析表2的测试结果说明定长控制器有着较高的定长精度,所有测试值与设定值的绝对误差稳定在0.1cm附近;设定加速度和设定频率偏高时,误差有所偏高。表3的测试结果显示定长时间测试值与理论值吻合度很高,这知足步进电机加减速
18、曲线算法规律,为用户灵敏控制定长时间提供了时机。值得留意的一点,表3中测试编号为2的数据中,由于设定频率偏高而设定长度偏短步进电机将以f1直接匀速运动,这符合设计的定长控制方案。5结论采用ATmega128的单轴步进电机定长控制器在滚珠丝杠应用场合得到了良好的应用,控制性能很高十分合适于一维定长定位场合。该控制器的上风在于:第一,采用点动微调粗调可以将零点误差控制在几个单位步距角内,间接进步了定长精度;第二,采用综合了阶梯型和直线型加减速曲线算法,参数设置公道时不仅可有效防止带负载中的丢步或过冲现象而且定长时间较短;第三,可以根据输入参数控制器可以智能地选择公道定长控制方案;第四,加速物理意义明显理论定长时间可计算,有助于用户灵敏配置定长时间。