PLC 编程语言的优劣,哪种语言更适合编程
首先我们来看下PLC有哪些常用编程语言,然后我们再逐一分析每个语言的特点,大家可以根据这些特点来选择适合自己的编程语言。
常用的编程语言有如下几种:LAD梯形图,STL语句表,SCL结构化文本(高级编程语言),Graph流程图,FBD功能模块....
LAD 梯形图,是目前最为流行的编程语言
梯形图语言
类似于继电器,直观易懂,非常适合初学者使用
梯形图由触点、线圈和用功能框表示的指令构成。触点(类似与继电器触点)代表逻辑输入条件,线圈(类似与继电器线圈)代表逻辑运算结果,
左边是信号流母线,信号流总是从左向右流动的。扫描总是从上往下扫描。
STL 语句表,适合经验丰富的编程人员使用
STL 语句表编程
STL语句表编程有着类似于汇编的编程方式,但是指令更为简易。
SCL 结构化文本编程,类似于高级编程语言
SCL结构化文本编程
适合之前从事计算机语言编程的人员使用,高级语言适合用于其它语言不能实现的功能,采用高级语言进行编程,可以完成较复杂的控制运算。
Graph 流程图编程,适合自动化流程控制
Graph 流程图,
满足顺序控制的流程化编程,适合设备自动流程的编写,编程简单,查看直观,能够第一时间定位到问题点。
FBD,功能模块式编程,是与数字逻辑电路类似的一种PLC编程语言。
FBD功能模块化编程
综上所述,个人建议:初学者以LAD开始学习为主;设备的自动化流程以使用Graph语言为主;需要实现复杂的控制运算时可以使用SCL;高效编程,数据寻址使用的,建议STL语言;习惯电子电路编辑的可以使用FBD语言。
原创不易,求多多关注!!
几种PLC自动程序设计方法对比
上一篇关于触摸屏监控PLC IO的文章浏览量已超过三千次,关注的人很多,本人觉得有必要分享一些更多的实际经验和解决问题的思路。至于具体指令和软件的使用方法,建议大家查阅相对应的手册,自行学习研究,比看一般的视频效果要强。也建议大家在各个主流PLC网站注册账号,方便下载最新的样本、手册和软件。
本文以西门子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”稍许直观,通用性更强。
这里由于篇幅有限,就简单分析各类设计方法,本人斗胆对各种自动程序设计方法做如下对比评分:
总体上讲“LAD比较”/“SCL CASE”/GRAPH评分上旗鼓相当,喜好因人而异,本人更偏向于“LAD比较”。大家认为呢?如果有其他常规或更好的设计方法,欢迎评论留言。
本文由玩转工控创作,未经授权,禁止转载到头条以外的其他平台。
相关问答
西门子plc用什么编程?
西门子PLC采用STEP7编程软件,是一款集成开发环境(IDE)工具,它支持多种编程语言,如LAD,FBD,STL,SCL和GRAPH,可满足不同的编程需求。使用STEP7编程软件,...
S7系列的PLC的编程语言LAD、STL、SCL、GRAPH、HIGRAPH、CFC...
LD:梯形图是一种日系称为LAD的图形编程语言。它使用图形符号和连接线来表示程序控制结构,适用于自动化控制系统中的逻辑控制和顺序控制。LD具有易于理解和使用...
如何使用西门子step7软件组态s7-300plc通过profinet与et200s从站通讯?
都是用step7编程的。但它们是使用不同版本的STEP7软件包。两者也无法相提并论。就是两个个体的实物,都有它自己的思想和灵魂。s7-400和300、200都是用...
西门子PLC用什么语言编程,用梯形图么?还是什么语言?
西门子的PLC有很多语言一般的电气人员用的都是梯形图,电子人员用的是功能块,STL是学过汇编语言的,还有SCL那是有CC++或计算机编程基础的人们用的,GRAPH...
与西门子plc编程类似的plc有哪些-ZOL问答
编程软件不一样,具体编程语言编程思路都不一样!1、S7-200系列用的STEP7-Micro/WIN软件;S7-300使用的是STEP7软件。2、S7-200系列的编程语言有三种:语句表(STL....
十万火急!专业制造的plc编程哪个厂家的好,plc编程安全性如...
[回答]这一点意味着,你可以为有控制任务实现***从简单的PLC单元到集成的高速加工模块。SINUMERIK及SIMATICS7-300统一的设计可以方便地以模块化原理对...
电力系统常用的组态软件是什么
相对来说中国经组态软件水平发展的速度很慢,现在的技术还停留在好几年前。如果你是想自己开发组态软件的话,介绍你用visualgraph,像前两个公司的电...
win764位肿么安装西门子PLC300编程软件-ZOL问答
CD_1\S7-Plcsim\Disk1\setup.msiCD_1\AutomationLicenseManager\Disk1\setup.msiCD_2\S7-Graph\Disk1\s...
西门子300的LADSTL和FBD是什么的?
是编程语言的名字或者说编程语言的格式,也就是编程方式。西门子300的编程软件STEP7支持七种编程语言分别是:LAD,STL,SCL,CFC,GRAPH,HIGRAPH,FBD。其中标准安装...
学加工中心编程有钱途吗?以后想往机床维修或者CNC编程发展,有没有同行指点一下?
现在中国数控行业还发展挺快的。现在企业都往数字化发展。现在基本上每个行业都要用到数控机床。像手机制造业,家用电器,家私,汽车等等,只要跟我们生活息息相...