文章

数控机械PLC运动控制库研发与设计

2020-05-19晏永红

737阅
本文基于IEC61131-3标准开发了数控机械PLC运动控制库,并搭建控制测试平台来对其进行测试。测试结果验证了运动控制库的可行性。
0 引言
        所谓数控技术,即是通过计算机编程来控制生产机器按照工作人员既定的程序进行零部件的加工。与传统人工加工方式相比,通过数控技术进行零部件加工不仅效率与加工精度高,且质量好。因此,数控技术是制造业从传统的劳力密集型模式向自动化生产模式转变的核心技术。大力推广数控技术以推动国家制造业技术革新,进一步提高产品质量及生产率,已成为各国加快经济发展,提高综合国力的重要途径。数控系统的核心技术是运动控制,其对零部件的加工极为重要。而市场上出现了诸多不同的数控运动控制方案,但各个方案之间并不兼容,使得运动控制较为复杂。为此,本文基于IEC61131-3标准开发了数控机械PLC运动控制库,并搭建控制测试平台来对其进行测试。测试结果验证了运动控制库的可行性。
1 开发技术
        1.1 IEC61131-3标准
        IEC61131-3标准是1993年国际电工委发布的面向PLC的标准编程语言。传统的PLC编程采用指令表、梯形图等编程方法,其数据封装性、程序可移植性与可重复性较差。而IEC61131?3标准规定的编程标准不依赖硬件,且支持自上而下或自下而上的编程模式,同时也拥有标准化的通信组件。该标准统一了各厂家的编程标准,为工控软件编程规范及统一发挥了重要作用。
        1.2 数控机械PLC运动规范
        为了解决不同厂家之间数控机械PLC控制不兼容的问题,本文采用PLCopen提出的运动控制编程标准化规范。其通过规范编程语言和运动控制接口,从而实现运动控制方案的标准化。数控机械PLC运动规范主要有单轴,轴组状态转移图的定义以及运动控制接口的定义。PLCopen运动控制规范中单轴运动总共定义了8个状态,分别为同步运动状态、离散运动状态、连续运动状态、停止状态、回零点状态、静止状态、错误状态和无效状态,而每一个状态代表当前轴所处的运动状态。单轴状态跳转图如图1所示。轴组运动总共定义6个状态,分别为轴组运动状态、轴组停止状态、轴组错误状态、轴组待机状态、轴组无效状态以及轴组回零点状态。其轴组状态跳转图如图2所示。图1和图2中,箭头代表不同状态之间彼此可以互相跳转,实线表示可能发生由相关指令所引起的状态转换,而虚线代表当前相关状态跳转失败所导致的状态转换。

   单轴状态跳转图

图1 单轴状态跳转图
轴组状态跳转图
图2 轴组状态跳转图

2 运动控制库设计
        2.1数控机械PLC运动控制平台
        本文所采用的数控机械PLC运动控制平台主要由PLCopen控制器、人机交互界面(HMI)、伺服驱动器、电机以及PC控制端等组成。PLCopen控制器是整个控制平台的核心部分,其通过CAN总线向伺服驱动器传输指令和数据,进而控制电机的转动。使用PC控制端通过USB协议与控制器进行通信,也可由人机交互界面通过Modbus协议与控制器来进行通信。数控机械PLC运动控制平台如图3所示。

运动控制平台架构

图3 运动控制平台架构       

        2.2 数控机械PLC运动控制软件模型
        本文采用IEC61131?3标准编程语言来开发运动控制库,首先对单轴和多轴运动控制程序进行编写,然后打包封装成标准函数库。用户在开发应用程序时,通过调用标准函数完成功能开发,然后编译下载到PLCopen控制器中。再由程序中的指令驱动单轴和多轴进行相
关运动,从而完成运动控制目的。
        为了完成标准函数库的编写,本文先对运动控制的软件模型进行定义,如图4所示,由输入/输出变量以及运动控制算法组成。

运动控制模块软件模型

图4 运动控制模块软件模型

        单轴运动中只涉及到一维方向上的移动,因而单轴运动控制在于控制轴机在一维方向上按照既定的速度、加速度到达指定地点。以位移控制模块为例,该模块一共有11个输入和输出端口,如图5所示。其中,AxisID,Execute,Position,Velocity,Acceleration,Direction,BufferMode为输入端口。AxisID表示伺服驱动器的轴号;Execute表示执行条件;Position为所要移动的目标位置;Velocity表示伺服驱动器运行最大速度;Acceleration表示伺服驱动器运行最大加减速度;Direction表示移动方向;BufferMode则表示缓冲区模式。
        对于多轴运动的运动控制,其主要通过多齿轮的协同传动实现多轴运动。以齿轮耦合功能模块为例,其主要协同主齿轮与从齿轮之间的同步运动,该模块模型如图6所示。模块有6个输入端口,4个输出端口,共计10个端口。RatioNumerator,Master,Acceleration,RatioDenominator,Execute,Slave为输入端口;CommandAborted,InGear,Error,ErrorID为输出端口。RatioNumerator为主从轴的电子齿轮分子;RatioDenominator为主从轴的电子齿轮分母;Master为主轴轴号;Slave为从轴轴号;Execute为模块执行信号,上升沿表示执行模块;Acceleration为伺服驱动器最大加减速度;CommandAborted为指令中断置位;InGear为指令完成置位;Error为异常置位;ErrorID为错误代码。

单轴运动功能模块模型

图5 单轴运动功能模块模型
轴组运动功能模块模型
图6 轴组运动功能模块模型

        本文采用三变量组合(ExecuteFlag,DoneFlag,CommandType)来表示单轴不同状态之间的跳转,ExecuteFlag为0,表示当前功能模块没有执行或者执行结束;为1时,表示功能模块正在执行;DoneFlag为0时,表示当前功能模块尚未执行完毕;为1时,则表示当前功能模块已执行完毕。CommandType为指令类型,其取值为1,2,···,n,不同的数字代表不同的指令。设定1指令为位移控制指令,则(1,0,1)代表位移控制指令正在执行;(0,1,1)代表位移控制模块已执行完毕。轴状态跳转流程如图7所示。
3 实验验证
        本文搭建了运动控制实验平台来验证运动控制库的有效性,实验平台如图8所示。采用Beremiz软件平台进行控制程序的编写,并编译下载至实验平台的控制器上进行运动控制试验。图9所示为单轴位移控制模块测试图。首先让轴的移动速度从0开始匀加速至最
大速度3cm/s,并保持匀速一段时间。然后,匀减速至2cm/s并保持一段时间。最后,再匀减速至0。图9a)为速度曲线,图9b)为位移曲线。

轴状态跳转流程图

图7 轴状态跳转流程图
运动控制实验平台
图8 运动控制实验平台
位移模块测试图
图9 位移模块测试图

        对多轴运动齿轮运动控制模块进行测试,齿轮分子为2,分母为1,测试结果如图10所示。由图可知,从动轴的速度随着主动轴速度的改变而发生变化,且两者速度关系满足主齿轮和从齿轮的齿轮比关系。
         此外,本文将运动控制库应用于剪板机的运动控制上,测试结果如图11所示。由图11b)可看出,该运动控制库是有效且可靠的。
4 结语
        通过数控技术进行零部件加工不仅效率与加工精度高,且质量好,因此,成为了自动化生产中不可缺少的核心技术。而数控系统的核心技术是运动控制,其对零部件的加工极为重要。而目前市场上出现了诸多不同的数控运动控制方案,但各个方案之间并不兼容,从而
使得运动控制较为复杂。为此,本文基于IEC61131-3标准开发了数控机械PLC运动控制库,并搭建控制测试平台来对其进行测试。其测试结果验证了运动控制库的可行性。

齿轮运动控制测试图

图10 齿轮运动控制测试图
齿轮运动控制测试图
图11 实例测试

责任编辑:杨培
本文来源于互联网,e-works本着传播知识、有益学习和研究的目的进行的转载,为网友免费提供,并以尽力标明作者与出处,如有著作权人或出版方提出异议,本站将立即删除。如果您对文章转载有任何疑问请告之我们,以便我们及时纠正。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。
读者评论 (0)
请您登录/注册后再评论