1. 引言 实际的工业自动化生产过程中,随处可见大量的涉及定长送料并加工的设备:早期的设备主要以机械定位为主,例如利用控制汽缸的有效行程实现定位,特点是:原理简单、设备成本及维护成本低,但zui大的缺点就是精度不高、一致性差,目前以逐步淘汰;当前用的比较多的是以PLC或自制单板系统,控制步进电机实现,基本可以解决定位精度问题,但以PLC实现时,长度参数或动作延时等参数改变及调整时,几乎很难在现场实现,如果在系统中再加入“文本显示”,一方面增加了太多的成本,另一方面,开发难度也加大;以单板系统实现时,参数修改等人机交互固然可以设计进去,但开发费用大、开发周期长,并且系统的稳定性、可靠性也需要经过长时间的考验;并且由于都不是专业的运动控制系统,当需要提升送料效率时,也会遇到诸多难题;因此,选择一个专业的运动控制系统,对于中小规模的设备厂商来讲,将是zui合适的选择。 2. DMC110A控制器简介 科瑞特自动化DMC110A运动控制器采用高性能“CPU+FPGA”主控,系统资源丰富、功能强大、使用简单: 24K存储空间:支持1024个参数, IO接口充足:16个输入、8个输出,逻辑关系在程序中确定,功能可完全自定义; 高速高性能:支持100KHz脉冲频率,标准的梯形加速曲线; 人机交互便捷:内嵌键盘模块、128×64点阵液晶显示,提供显示指令,用户可灵活控制显示; 高性能内核模块:系统提供一套完整的指令系统,支持用户进行便捷的二次编程,对于非标数控系统,完全优越于G代码编程; 编程方便:可在PC机编程下载用户程序,或在键盘上直接编程; 3. 应用DMC110A的系统分析 相比较PLC编程或其他非专业的运动控制系统,如何控制步进电机快速的实现定长启停,将始终是软件开发的难点,并且经常被开发人员所忽视。往往是系统功能基本实现时,才发现控制步进电机运转只能保证以较低的速度运行,速度提高,步进电机就会出现丢步的现象:而把这种现象的原因都归咎与电机力距不够,或驱动器性能不好。再加上需要在电机运转精度上反复验证、更改算法,结果很自然的延长了项目开发周期,或误了产品订单、或丧失了市场良机。 相反,作为专业型的DMC系列运动控制器,科瑞特自动化集数年的运动控制经验,专注与运动控制理论与实践,解决以上问题就显得易如反掌:简单的速度指令可以灵活、的控制步进电机的起始速度、加速时间、zui高速度(算法就勿劳控制器使用者费心);简单的运动指令,可以可靠、地控制步进电机旋转的角度(送料长度与电机旋转角度成正比);简单方便的显示指令、及几种参数设置模式,可以便捷的实现人机交互:例如各种参数设置、显示运行状态及产品加工信息。 首先根据整机系统特性,计算出系统的脉冲系数,即:对应于步进电机设定好的细分、丝杆螺距,控制器发多少脉冲,系统运行单位长度(mm)。脉冲系数可以为小数。规定寄存器S1为脉冲系数。 规定设备要求的定长数值为寄存器S2;(长度单位,例如毫米,可以为小数); 规定速度参数为:起始速度(S10),加速时间(S11),zui高速度(S12) 规定动作参数为:汽缸延时(S13) 4. 设定长度控制功能的实现 速度指令:SPEEDM/0201 变量值格式速度参数设置 说明:1.该指令对其后的运动有效; 2.速度曲线为标准梯形加速; 3.参数单位为脉冲频率,zui低速度>1,zui高速度<100000,加速时间越小(参见加速时间设置指令),其速度曲线越陡峭; 运动指令:DRVIM /0115 相对地址/变量值单轴运动 说明:指令执行时,受控目标将沿单轴方向,移动#data(S#1)个脉冲数。 相关指令实现:“ FMOVM F0,S2 FMULM F0,S1 FMOVM M0,F0 SPEEDM S10,S11,S12 DRVIM M0 PAUSE ” 5. 参数设置的实现 系统需要设置的参数共有6个:送料长度(S2), 起始速度(S10),加速时间(S11),zui高速度(S12),汽缸延时(S13),脉冲系数(S1); 脉冲系数由于为设备固有参数,一般不会轻易改变,并且防止意外修改,因此规定在有密码包含的参数设置模式中设置或更改。 其它参数可能比较频繁的需要改动,因此在可视参数设置模式中设置或更改; 制作可视参数液晶画面:
将这两个液晶画面分别下载至控制器参数画面‘0’、‘1’,并分别设置对应的寄存器序号为S2、S10、S11、S12(参数画面0),S13、S20、S20、S20(参数画面1)。 使用:控制器待机状态下,按“Par”,即可进入可视参数设置模式,可以对五个可视参数进行设置。 在控制器待机状态下,按“Mode”,按“2”,输入密码“******”,即可进入密码保护参数设置模式,在此模式下可以对所以参数进行设置,在本实例中,可以对S1:脉冲系数进行设置; 6. 状态信息显示的实现 一般情况下,设备运行需要显示的信息主要有:送料长度、运行速度、加工数量、提示待机或工作中。制作以下图片:
将这两个图片分别下载至控制器状态画面‘0’、‘1’; 显示指令: DISPLAY #data1, #data2, #data3 / #data1, S#2, #data3 说明:调用显示指令,用于显示程序运行中用户想要看到的信息。 #data1:显示格式;#data2或S#2:显示内容;#data3:显示位置。 显示格式:“0”显示整屏(DISPLAY 0,X,0);可以整屏显示4屏界面“X=0~3”; “1”固定格式显示坐标值(DISPLAY 1,0,0); “2”固定格式显示加工(完成)次数(DISPLAY 2,S#2,0);加工次数可以设置为M0-M15中的某个M型变量用户需要在程序的循环中用加一指令来维护; “4”显示4个状态界面的某个单元内容(32个单元之一)(DISPLAY 4, #data2,#data3); “6”在显示界面的“4~7”位置,显示S/M型参数的数值(DISPLAY 6,S#2,#data3); “9”清屏(DISPLAY 9,0,0)。 相关指令实现:“ DISPLAY 0,0,0 DISPLAY 6,M1,5 DISPLAY 6,S2,6 DISPLAY 6,S12,7 WAIT0: JNB WAIT0,I0 DISPLAY 4,8,4 INC M1 …… ” 7. 效果及结论 笔者已在珠三角地区使用科瑞特自动化DMC110A运动控制器完成了多例实践应用,总体来说:项目完成周期短,充分发挥了步进电机的应有特性,系统工作可靠、外观大方、性价比极高,设备制造厂商可以将主要精力集中在提升机械性能上,相比PLC或单板系统来讲,优势极为明显。 因此,推广价值。