S7-1200使用SCL语言编程实现数控G代码指令编程控制
作者8300877
前言:在非标机床行业里经常使用PLC作为系统控制器,但是很多时候PLC写的程序动作都是一旦完成就固化了,如果客户需要提出修改动作之类的就需要工程师到现场进行程序修改,在此作者想到了一个和数控加工机床一样灵活的编程指令---G代码编程;动作的时序由用户自行编写,只需要输入几个简单的编程指令来进行组合就可以灵活实现工艺要求。
下面来看看界面和程序的实现:
1. 触摸屏上输入G指令代码,按照标准的G代码进行输入,当然这里没有插补功能,因为这套系统是S71200带V90PN伺服驱动器,所以只能实现简单的动作控制。
2. 遇到G4指令时右边的计时器就会显示出倒计时数据
3. 在编写指令时想在某一段插入新的程序指令时右边”插入程序段”里可以输入程序段号来进行插入或者删除。
4. 每一段的段号颜色作为当前运行状态位置显示
以上是把整个G代码解析的程序做成了一个FB功能块,利用1200PLC内置的字符串控制指令来实现拆分提取字符串信息;整个程序的大概思路就是1.解析指令 2.提取数据 3.判断书否输入有错误 4.把提取出来的数据对应上并且赋值输出。
程序中使用了一个UTD作为FB外部的接口,实现内外数据隔离,互不干扰。
G指令的扫描也是从上至下,从左至右,靠内部循环扫描,每一个指令输出后必须得到一个反馈信号才能进行下一个指令的输出。
目前未实现的功能就是一段程序里只能输入单个指令,因为1200CPU不支持split指令,但是1500PLC支持此指令,所以在高端CPU上可以实现更强大的功能,目前此程序已经固化使用而且非常稳定。