最新新闻
我要投稿
联系电话:027-87592219/20/21转188
投稿邮箱:tb@e-works.net.cn
您所在的位置:首页 > 智库 > 智能生产

数控平台PLC控制系统的开发

发布时间:2014-04-11 作者:黄菊生 龚庆寿 夏平 龚存宇  来源:万方数据
关键字:数控 PLC 控制系统 
本文介绍了用西门子S72200PLC构成数控平台控制系统的开发, 讨论了系统组成、插补运算、PLC软件脉冲分配及控制程序的设计, 给出了脉冲分配梯形图和PLC控制程序流程图。

3 PLC控制程序

  3.1 接收数据

  按照通信协议, PLC处于接收数据状态。用接收指令RCV VB100, 0, 将接收到的数据存放在PLC接收缓冲区VB100 开始的存储区, 接收缓冲区与插补控制信息的对应关系如图3所示。

PLC接收数据缓冲区

图3 PLC接收数据缓冲区

  3.2 通信及初始化设置

  S72200PLC与PC机通信采用自由端口通信模式, 通信参数为波特率9600bp s, 每个字符8位数据位, 无奇偶校验。采用报文接收, 一次接收多个字节, 这时需要设置特殊存储器字节SMB87 ~SMB94及脉冲分配要用到的几个寄存器。通信与初始化设置程序如下:

  LD  SM011    / /首次扫描为1
  MOVB 16#09, SMB30 / /初始化自由口通信参数
  MOVB 16#B0, SMB87 / /RCV信息控制字节
  MOVB 16#0A, SMB89 / /结束符为16#0A
  MOVW + 1, SMW90 / /空闲超时为1ms
  MOVB 100, SMB94 / /最大字符数为100
  MOVB 1, VB400 / /X轴脉冲分配移位寄存器
  MOVB 1, VB500 / /Y轴脉冲分配移位寄存器
  MOVB 0, VB300 / /移位寄存器的移入数据
  MOVB 0, AC1 / /X轴的时序脉冲记数器
  MOVB 0, AC2 / /Y轴的时序脉冲记数器
  ATCH INT_ 0, 23 / /报文接收结束中断事件
  EN I / /允许中断
  RCV  VB100, 0 / /执行接收指令, 接收缓冲区
         指向VB100
  3.3 脉冲分配

  对三相步进电机的控制, 有单三拍、双三拍和单、双六拍通电方式, 我们采用六拍通电方式。改变通电顺序就改变了步进电机的旋转方向, 数控平台的移动方向就改变了。如何用PLC产生六拍时序脉冲及改变通电顺序, 实现数控平台沿X、Y轴正确移动是PLC控制程序的关键。

  以X轴步进电机为例, 用移位寄存器指令SHRBV30010, V40010, + 7 对VB400 移位产生六拍时序脉冲, 初始化时VB300 为0, VB400 为1, 执行一次移位将V30010 位的值从V40010 位移入, + 7 表示VB400中参与移位的7 位为V40010 ~V40016。用VB400中的六位V40011 ~V40016 产生六拍时序脉冲, 每移位一次为一拍, V40011~V40016前移一位,在V40011~V40016中每次总有一位为逻辑1, 其它位为逻辑0, 如第一次移位后V40011 ~V40016 等于100000, 逻辑1就代表着当前拍所在位置。移位六次为一循环, 反复进行。

  每一拍X 步进电机三相的通电情况用M110、M111和M112存储, M110、M111 和M112 组成三相单、双六拍环形脉冲分配器, 在V40011 ~V40016产生的六拍时序脉冲的作用下, M110、M111 和M112的通电顺序为: M110→M110、M111→M111→M111、M112→M112→M112、M110。

  步进电机的正反转控制用4 个控制开关实现,Q013作X轴正转开关, Q013 = 1正转, Q014作X轴反转开关, Q014 = 1 反转, Y轴类似, 用Q015 和Q016。

  用Q217、Q216和Q215输出控制信号到X轴步进电机XA、XB和XC三相, 当Q013 闭合时X轴正转, X步进电机的通电顺序为A→AB→B→BC→C→CA→A, 循环。即:

  Q217→Q217、Q216→Q216→Q216、Q215→Q215→Q215、Q217→Q217, 循环。

本文为授权转载文章,任何人未经原授权方同意,不得复制、转载、摘编等任何方式进行使用,e-works不承担由此而产生的任何法律责任! 如有异议请及时告之,以便进行及时处理。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。