基于Labview的步进电机闭环控制系统设计

  • 格式:pdf
  • 大小:2.53 MB
  • 文档页数:3

第55卷第2期2021年2月电力电子技术Power ElectronicsVol.55, No.2February 2021基于Labview的步进电机闭环控制系统设计刘旭辉,简 震,丁志娟,张远方(上海应用技术大学,机械工程学院,上海201418)摘要:针对步进电机容易出现丢步现象,釆用比例积分微分(PID)控制原理,并结合Labview和STM32控制器 搭建了步进电机闭环控制系统。通过调用动态链接库库函数Pcomm.dll的方式,实现了 Labview与STM32控制 器之间的串口通信。设计了 PID参数实时整定模块,能够快速获得最佳PID参数。进行了步进电机开环控制和 闭环控制对比实验,实验结果表明该系统对步进电机失步问题具有良好的调控效果。关键词:步进电机;比例积分微分;串口通信中图分类号:TM3 文献标识码:A 文章编号:1000-100X (2021)02-0054-03Design of Closed-loop Control System of Stepper Motor Based on LabviewLIU Xu-hui, JIAN Zhen, DING Zhi-juan , ZHANG Yuan-fang(Shanghai Institute of Technology, Shanghai 201418, China)Abstract: In view of the fact that stepper motor is easy to lose step, a closed-loop control system of stepper motor is built by using proportional integral differential (PID) control principle and combining Labview and STM32 controller. The serial communication between Labview and STM32 controller is realized by calling Pcomm.dll.A real-time PID parameter tuning module is designed to get the best PID parameters quickly.The open-loop and closed-loop control of the stepper motor are compared.The experiment shows that the system has a good control effect on the stepper motor out of step problem.Keywords : stepper motor ; proportional integral differential ; serial communicationFoundation Project: Supported by National Natural Science Foundation of China(No.51675345)1引言步进电机是一种将数字脉冲信号转变为角位 移或线位移的开环控制元件,通过改变脉冲频率 和脉冲数量可分别控制其转速和角位移,在额定 工况下,步进电机具有较高的定位精度且无累计误 差,常用于数控机床、医疗器械等自动化领域〔7。 然而在高转速和大负载的情况下,步进电机容易 出现丢步现象,造成定位误差。Labview是一款基 于命令流的面向对象的并行式图形化编程语言, 其强大的底层驱动程序可方便地与单片机应用程 序接口相连,实现快速的可视化编程,在数据采集、 仪器控制、图像处理、测量测试等领域具有广泛 应用⑷。这里以两相混合式步进电机为研究对象, 针对其丢步问题进行了探讨,基于PID控制原理, 并结合Labview和STM32控制器搭建了步进电机 闭环控制系统,对步进电机进行了研究与分析。基金项目:国家自然科学基金(51675345)定稿日期:2020-06-22作者简介:刘旭辉(1978-),男,湖北天门人,博士,教授, 研究方向为智能材料及振动控制。2控制系统结构这里以目前应用最为广泛的双极性两相混合 式步进电机为研究对象,所设计的闭环控制系统 可分为软件和硬件部分。硬件部分主要包括:步进 电机、STM32控制器、驱动器和编码器。软件部分 主要包括STM32控制程序和Labview上位机软 件,其中,STM32控制程序通过Keil软件釆用C语 言编写实现。控制器采用YS-F4Pro控制器,该控制 器包含STM32F407IG6驱动芯片,内置Cortex-CM4 内核处理器。步进电机驱动器采用TB67S109A驱 动芯片,电机为57BYG250B步进电机,编码器采 用HN38-06-N增量型旋转编码器。通过上述软 件和硬件的结合搭建了步进电机闭环控制系统, 该闭环控制系统的具体结构框图如图1所示。

图1系统的结构框图Fig. 1 Structural block diagram of the system

54基于Labview的步进电机闭环控制系统设计3硬件环境设计3.1 驱动电路设计步进电机是一种感应电机,必须由相应的环 形脉冲分配器和功率驱动电路驱动方可使用。驱 动器是利用电子电路将直流电变成分时供电的多 相时序控制电流,用这种电流为步进电机供电,步 进电机才能正常工作冋。TB67S109A是一种配备脉 宽调制(PWM)斩波器的两相双极步进电机驱动 器,最高可实现32细分驱动。通过STM32高级定 时器PWM翻转模式,调整PWM脉冲频率控制驱 动器输出相电压实现电机调速。此外,外围驱动电 路采用共阳接法,利用光耦隔离器将STM32控制 器与驱动电路进行隔离,确保电路安全可靠。3.2 速度位移采集电路HN38-06-N为AB相增量式编码器,每转动 一圈可输出600个脉冲信号,通过STM32控制器 高级定时器编码器接口,可对编码器脉冲信号捕 获计数,得到电机输岀轴转速和位置信息。为提高 测量精度,采用AB相上升沿下降沿同时计数,实 现对编码器信号的4倍频。此外,考虑到编码器信 号直接与控制器引脚连接对控制器产生信号干扰 等不良影响,采用高性能光耦隔离板对编码器信 号进行隔离传输。4软件设计4.1 PID算法考虑到位置式PID对误差有累计作用,可能 引起机构的大幅度变化,造成机构损伤,因此采用 离散型增量式PID算法,对步进电机进行闭环控 制,其算法如下:△ 〃*=Ae*-Be—+Ce*_2 (1)式中:为第A次釆样输岀控制量增量;%为第A次釆 样偏差;e—为第k-\次釆样偏差;e*_2为第k-2次釆样偏 差;A=K?(1+T/K,+KJT),KP为比例系数,K;为积分系数,心 为微分系数,T为釆样周期;B=K”( 1+2^7) ; C=K#JT。STM32控制器通过对编码器脉冲信号的采样 计数得到电机的实际转速,然后将该转速传给PID 控制函数,得到控制量增量用于修改定时器比较 值,输出相应频率的PWM脉冲信号给驱动器,从 而实现对步进电机转速的闭环控制叫控制流程如 图2所示,p(t)为目标转速,r(t)为电机实际转速。 p"[罕Tpid函数| as »|控制器严“彳驱动器图2增量式PID闭环控制框图Fig. 2 Incremental PID closed -loop control block diagram4.2上位机软件编写为实现上位机与下位机之间的通信,釆用 Labview编写了上位机软件,主要包括串口通信模 块、模式选择模块、PID参数整定模块、速度调节 模块及图形显示模块。4.2.1 串口通信模块Labview中通常采用VISA函数来实现上位机 与下位机之间的串口通信,VISA函数使用方便, 编程简单,但生成安装文件时,需安装约300 M驱 动程序导致软件安装包体积较大,运行速度变慢, 数据传输时可能造成数据丢失⑴。这里采用动态链 接库库函数Pcomm.dll来实现Labview串口通信 功能°Pcomm.dll是台湾MOXA公司提供的第三方 库文件,体积只有84 k,通过Pcomm.dll动态链接 库库函数编写串口通信程序与VISA函数相比程 序运行速度提高近2倍间。4.2.2 速度调节模块上位机以字符串形式通过串口向下位机发送 相关指令数据,通讯协议如表1所示。表1串口通讯协议Table 1 Serial communication protocol数据名称帧头功能码参数1~12校验码结束符字符表示OxAA0x01~0xFF 0x01~0xFF前13个字节 的校验和0x2F速度调节模块指令码为“AA 03 speed(XX XX XX XX) (0x55•••0x55) CS 2F”,AA 为帧头,03 为 功能码,speed为单精度浮点型字符串(以4个8位 整型XX表示),Ox55为空字节,CS为校验码,2F 为结束符(“/”),共16字节,均以十六进制表示。当 拖动速度滑杆改变速度时,会触发“速度调节”事件 结构将该指令码发送至STM32控制器,控制器收 到数据后对指令码进行判断并截取“speed”参数字 符串来修改源程序速度参数,达到速度调节的目的。 4.2.3 图形显示模块为实现对电机输出轴角位移、速度的监测及 PID参数的实时整定,设计了图形显示模块。 STM32控制器在对编码器脉冲信号进行计数后, 定时器中断回调函数通过串口向上位机以指令码 形式发送电机转速或角位移信息。上位机接收到 指令码后,先对指令码帧头、帧尾及校验和进行验 证,之后以条件结构判断功能码,最后通过索引字 符串功能截取转速或角位移信息并通过图形显示 模块实时显示。结合PID参数整定模块,通过调整 PID参数可实时观测电机转速和角位移随时间变 化曲线,快速获得最佳PID参数。

55第55卷第2期2021年2月电力电子技术Power ElectronicsVol.55, No.2February 20215 实验测试为测试步进电机在闭环控制下的动态性能, 搭建了步进电机实验测试平台,对步进电机进行 开环控制和闭环控制对比实验,测试平台由驱动 器、编码器、步进电机、YS-F4Pro控制器组成。5.1 PID参数实时整定实验采用Labview编写的上位机软件能实现PID 参数的实时整定,快速获得最佳PID参数。下面以 比例调节(心)为例,通过实验对PID参数的实时 整定功能进行说明。如图3所示,7;时间段内设定 p=100r-min-1,^=5,^=1.25,^=0,^ 时间段内设 定 p =50 r • min-1, K=2.5, &= 1.25, Kd=0 ; T3 时间段 内设定 />=100 r・minT,Kp=3,Ki=1.25,Kd=0。对比 八,*可知,当r与p重合时,甘时间段调整时间 约为3 s,T3时间段调整时间约为9 s,随着K,,的 减小电机的响应速度变慢,且厲时间段出现较为 明显的振荡现象。对比E’G可知,厲的&略高于 T2,T2时间段调整时间约为12 s,较T3推迟3 s,振 荡幅度也有所增加。通过3个时间段对比可知,K” 对电机的响应速度起决定作用,随着心的减小电 机响应速度变慢,电机运行越不稳定。经多次PID 参数整定,当心=5.5,&=1.75,心=0.2时步进电机 具有良好的动态性能。10095907570656050~r------/1T\r7^TP,J图3 PID参数实时整定Fig. 3 Real time tuning of PID parameters5.2 步进电机闭环控制实验通过调速滑杆设定p=600 r-min-'(额定转速), 电机启动后STM32控制器定时器中断回调函数每 隔0.1 s向上位机发送一次转速信息。为便于数据 的分析,采用Matlab对上位机采集到的数据进行 处理,闭环控制与开环控制速度对比如图4所示, S3,"open为闭环、开环转速。7007 600=500 三400 上300 点200 d 100 0 -100,叹护"closed [局部 2加匚抛大I 4.161 s 卩3.2 5血-円6.517 s586.3 r«min-1123456789 10 t/s图4速度对比Fig. 4 Speed comparison设定步进电机在0.5 s时启动,在闭环控制作 用下,步进电机迅速达到P,其响应速度要高于开 环控制,在接近p时由于比例环节的作用出现超调 现象,超调量约为P的3%,属于允许误差范围,之 后约在4.2 s时ndoeed与p重合,调整时间约为3.7 s0 “旳则稳定在593 r-min"1,与p存在偏差,属于失 步现象,因此该闭环系统对步进电机失步现象具 有良好的调控作用。此外,为探究该闭环系统的稳 定性,在5 s时对步进电机施加反向负载,傀“a略 有下降后,在PID控制的作用下,约在6.5 s时恢 复至P,调整时间约为1.5 s,而“咛在负载作用下 存在较大幅度的下降并最终稳定在586 r-min-1, 存在较大的失步现象,故相较开环控制而言该闭 环系统具有良好的稳定性。通过对比实验可知该 闭环系统对步进电机失步现象具有良好调控作用 和稳定性。6结论基于PID控制理论并结合STM32控制器和 Labview搭建了步进电机闭环控制系统。针对步进 电机失步问题设计了步进电机开环与闭环对照实 验,该系统对步进电机失步现象具有良好的调控作 用,并具有较高的响应速度及稳定性。另外,设计 了步进电机PID参数实时整定模块,与传统参数 整定方法相比,该模块具有良好的交互性和直观 性,这种新型的参数整定模式,在工程应用、教育 机构示教演示上具有一定应用价值和借鉴意义。参考文献[1] 张 嬪,樊艳艳,李 勇.基于STM32和TMC5160的步 进电机控制系统[J].仪器仪.表用户,2020,27(2)=63- 66.[2] 刘成浚,王直.基于STM32的一种步进电机系统的 设计[J].电子设计工程,2018,26(1):131-134,139.[3] 郭豪,赵树忠.基于单片机的步进电机控制[J].机械 工程与自动化,2018,42(1): 169-170, 173.[4] 郭鹤飞,李华,陈敏,等.基于LabVIEW的光储微 电网运行系统设计研究[J].电力电子技术,2020,54(2): 69-72.[5] 夏斯权,周亦敏.步进电机闭环控制系统的研究与应 用[J].机电工程,2017,34(12):1446-1450.[6] 何庆.一种面向步进电机控制的PID控制算法[J]. 电工技术,2018,28(18):21-23,26.[7] 杨叶,刘晓梅,李琳.基于Labview的步进电机检 测系统[J].信息系统工程,2016,18(2):71-72.[8] 田 云.在LabVIEW中利用动态链接库实现串口通 信[J].日用电器,2015,17(8):139-141.