本文以西门子s7-1500 plc为例,简单讲述各种自动程序设计方法,其他品牌或型号的plc也可用使用类似的设计。这里暂不讨论手动、报警、诊断等程序如何设计。
下面总结一下常用自动程序设计方法:
一:scl case(结构化控制语言 也称st,case指令)
越来越多的小型plc都支持scl语言,scl是一种类似于pascal的高级编程语言,常用的for、if、while、case等程控语句组合起来能编写出很强大的算法和逻辑,用此写法的人也越来越多。用scl设计自动程序主要就是结合case 和if语句,将step作为程序号,如果存在比较长的分支或并行动作时需要有借助多个step程序步,这里不做深究,书写规则大体如下:
scl case
二:lad 起保停
所有的plc都适合用lad起保停的写法,也存在很多变种,最常规变种是当前步的输出用置为set,不需要起保停,在紧接的下一步中用reset复位,在老一代plc中是很流行写法,随着plc的升级换代,此写法逐渐减少,书写规则大体如下:
lad 启保停
三:lad 移位
所有的plc也都适合用lad 移位指令(通常为左移位)的写法,在老一代plc也较常见,因自动流程按移位的方法设计好后不容易增加动作,设计较长的动作流程时也很不方便,与lad启保停相比可扩展性差,不够直观。常见的书写规则大体如下:
lad shl
四:graph(顺序功能流程图语言 也称sfc)
中高端plc才能支持graph,许多小型plc有他的缩减版:步进指令,但步进指令功能有限,且很不直观。graph就是为方便实现流程设计而产生。步、转换和动作是顺序功能图的三种主要元件,加上灵活的使用其分支、并行和跳转可实现复杂的流程,程序可以做到非常直观,也很容易增改,执行效率高,用久了graph后对其他写法都不习惯,唯一的缺点就时plc性能要求高,也占用很大的工作存储器。大体形式如下:
五:lad 比较
结合“slc case”和“lad 启保停”的写法,在没有先例参考的情况下,创造出“lad比较”写法,直到后来看到有工控朋友用到过类似的写法,才知道此写法并非本人首创。形式如下图所示。
“lad 比较”和“scl case”有些类似,不过原理上还是有很大差别,“scl case”执行效率更高。在“scl case”中,只有case符合条件的才运行,不符合的就跳过,而”lad比较”是所有程序都会执行,不能有双线圈,除非lad中使用正真的跳转指令(switch lable 结合 jmp),但操作起来更加艰难,而“scl case”就没有这么多限制。但”lad比较”比“scl case”稍许直观,通用性更强。
四维图新开发OneMap智能地图一体化产品及应用解决方案
温度传感器—PN结温敏二极管
联想ThinkPad X1 NANO即将发布:重量不足1KG
如何使用BPF对Linux内核进行实时跟踪
华为荣耀智慧屏势头不可小觑,5分钟卖3000台
基于西门子S7-1500 PLC的自动程序设计方法
如何成为一名优秀的工程师
信号发生器主要作用是什么?安泰测试为您解答
荣耀8X评测 千元换机的最佳选择之一
怎么解决蓝牙自动断开的原因
可穿戴智能心电监测助力空巢老人医疗再升级
阿尔法:数字货币智能搬砖量化工具到底有多神奇?
区域链手机问世1月16日发布 糖果手机怎么让你赚区域链的钱
网络摄像头的安全可靠性亟待提升
3D打印光固化技术大跃进 复合材料重现精密人造组织
浅谈关于倾角传感器的几个重要应用领域
内桥接线变电站电压电流回路及备自投装置设计分析
压力传感器使用过程中出现噪音原因
哪款蓝牙耳机性价比比较高?四款高颜值蓝牙耳机推荐
中国移动发布首份VR头显设备评测报告和首份无人机评测报告