【导读】为了进一步熟悉S7-1200的运动指令,编一段小顺控程序来学习PTO模式,小顺控一共分五步。
一、分享几个小技巧
(1)可以用CASE语句实现S7-1200顺控程序,当前步值就是CASE条件变量值,通过变量步值来执行不同的程序段;(2)效率不错的PLC编程方式是SFC加SCL的混合编程,顺控逻辑用SFC内部功能,算法用SCL;(3)使用OB30做计时器,可以不用T,其实很方便;(4)当轴在执行一个运动控制命令时,如果用一个新的轴命令覆盖时,轴的速度变化是平滑过渡的。
二、顺控小程序的步骤
第一步:轴以快速定位速度定到juedui位置。
第二步:轴一增量速度1移动增量1。
第三步:以增量速度2移动增量2。
第四步:延时设定的时间,单位0.1秒。
第五步:轴juedui回到零位。
小程序分为以上5步,下面来说一下其中的细节。
增加了一些必须的变量,设定参数都需要勾选数据保存项。
HMI做个用于监控和设定参数的小界面,包括启动循环和停止循环的按键,设定循环参数,监控轴状态位置和循环时间。
增加了个系统组织块OB30,中断时间设置成100ms,为了做一个0.1s单位的定时器来用,循环总计时和延时计时。
新建了一个自动循环的FC块,首先处理循环启动和循环复位的按钮,循环启动加入启动条件,停止需要触发轴停止信号。
Zui后是循环Case块的编写,Cyc_Step=0,作为一个循环就绪状态可以初始化一些变量,从Cyc_Step=1开始是正式循环,同一轴的FB块可以重复调用使用没有任何问题,通过判断BUSY和Done两个信号就能准确的一步一步执行下去。
受轴加减速时间和PLC扫描周期影响,整个循环设置时间差不多15.6秒,实际运行时间16.5秒。