基于嵌入式PC控制器的步进电机群控系统设计
C control完成控制程序的编写,然后再将程序加载到SystemManager中的PLC Configuration,完成程序中的参数和硬件端子的连接,再通过以太网(网络或者传输电缆)与CX1020相连,将硬件组态和控制程序分别下载到目标设备即可完成下位机程序的编写过程。由于软件的开放性,在分系统控制台或总控管理/束组控制台可通过Visual C++语言或其他高级语言编写的上位机程序调用TwinCAT中的DLL实现与上位机的控制对接。TwinCAT提供的编程语言包含IEC61131-3的全部语言:IL、FBD、LD、SFC和ST。用户可以通过选用以上语言的任一种进行PLC编程。此外,用户还可以通过TwinCAT所提供的运动控制(MC)程序块进行编程,大大简化了编程难度,提高了控制的可靠性。TwinCAT也有在运动控制方面的扩展功能,例如,实现控制电子齿轮、飞行前愧凸轮碟等较为复杂的运动控制系统。本系统主要采用TwinCAT NC进行编程。
2.2 通信及组态连接(编程建立)
本控制方案选用TwinCAT NC轴下的MC(Motion Control)功能块进行编程。只需要在程序中调用其中的各个功能块,例如轴使能、运动或者停止模块,类似调用普通PLC程序中功能块一样,只需要对相应功能块的输入输出变量进行不同的赋值,便可实现相应的控制。变量可根据其所对应的类型指定地址,也可由程序自动分配其地址空间。
软件编程结束后,便可进行硬件的组态和连接,其过程如下:
(1)通过网线将控制器与计算机相连接,第1次连接后应进行硬件扫描,确保系统上所有的硬件模块连接正确。
(2)在NC Configuration中添加要控制轴的个数,即所需要控制的电机的数目,然后将所建立的轴与硬件扫描后使该轴的控制器相对应,添加建立所需要的轴和轴与控制器对应后的结果如图2所示。
(3)在PLC Configuration 中导入程序,实现程序中的轴控制参数与硬件控制器的对应,对应结果如图3所示。
(4)将硬件配置和编好的程序下载到目标控制器,将系统设置为运行模式,然后通过改变各个MC模块的参数,便可实现对电机的控制。
步进电机拖动设备的运动距离主要由电机的步距角、细分数及传递丝杠的螺距参数决定,通过这些参数计算出电机转动运行圈数和设备运动距离的系数,然后将其填入Scaling Factor,便可在程序中直接指定设备的运行距离,由程序计算出电机执行所需的脉冲数。Scaling Factor设置如图4所示。此外,为了保证步进电机运行的平稳性要求,启动和加速时间、速度曲线也可设定载入控制器,以减少软件编程,提高系统可靠性。加减速参数设置如图5所示。
如若对步进电机的细分有明确要求,可通过编程改变控制器的参数或者通过Beckhoff公司提供的KS2000软件对控制进行设置,实现电机的不同细分要求[2-3]。
通过一系列实验表明,本控制方案完全可以满足系统所要求的技术指标,与使用PLC的控制方案和其他控制方式的多电机控制方案相比,具有以下特点:(1)采用高性能CPU及EtherCAT工业以太网通信等最新技术,可满足高速、高精度要求;(2)系统开放性好,易于扩展;(3)系统拓扑结构简单,与传统控制方案相比较,控制器集成Ethernet接口和EtherCAT接口,输出模块直接驱动步进电机,大幅缩减了中间环节,系统可靠性高,电柜安装尺寸大幅缩小,施工及维护简单、方便;(4)所有产品均以总线连接,配置及诊断功能方便、强大;(5)控制器预装Windows操作系统,可充分利用Windows操作系统带来的优势,如在控制器中直接使用VB、VC面向对象编程语言,数据库系统以及Windows操作系统在组网上的优势、各操作站之间的数据交换。
嵌入式PC 可编程逻辑控制器 NC控制 工业以太网 相关文章:
- 基于Linux系统的软PLC设计(07-19)
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)