以上介绍的PLC编程语言虽是国际标准语言,还是太专业了,不易被非专业人员接受。还应当有类似计算机可视化或组态软件那样的语言。欧姆龙公司C1000F、C120F等机型用的系统流程语言就是这样的语言。
系统流程语言所定义的指令也是告知PLC该做什么及怎样去做的图形符号,但不与电气硬件符号与规则相关联,也不与计算机的逻辑符号相关联。
系统流程语言只与说明系统工作的流程图(Flow chat)相关联。故可很容易为熟悉系统,但不懂电气、又不懂得计算机的技术人员所接受。
1.编程过程
(1)画出过程流程图(Process flow chat),说明控制系统任务及可编程序控制器作用。
(2)画简化流程图(General Flow chat),明了、简单地说明控制动作执行顺序。
(3)画详细流程图(detailed Flow chat),把简化流程图细化,目的是能依此编写指令。这相当于梯形图语言的梯形图。
(4)编写指令。在详细流程图的基础上进行。要编写指令码与数据(地址)。这个工作,相当于从梯形图到语句表的翻译工作。
2.实例说明
用PLC控制机械手工作,其工作情况如图1-11所示。
(1)工作过程。起动→臂转到位置A→取工件→臂转到位置B→放工件→臂再到位置A→……如此不断重复着。
(2)画简化流程图。用流程图表达这个过程,如图1-12所示。
图1-11 机械手工作概况
1—LS3检查工件抓取 2—LS1顺时针转 3—PB1起动按钮 4—LS2逆时针转 5—传送带A 6—传送带B
图1-12 工作过程示意图
(3)画详细流程图。把图1-12的流程细化,用符号表示,标以操作数,即为详细流程图。(www.daowen.com)
操作数根据动作而定。如起动,它是输入动作,其操作数即为起动按钮接到PLC的输入点。如点号为0000,则起动的操作数为0000。再如臂转动从B到A,它是输出动作,若这个动作的电磁阀线圈接到PLC的输出点,点号为0200,则这个动作的操作数为0200等。
动作则用符号表示,输入动作这里用AND,输出用OUT。因为输入条件有个是否具备的问题。条件不具备,就要等待。故等待也是动作,其符号用WAIT。
图1-13中未解释的还有LBL0为标号0,为指令在图或程序中的位置标识。JMP为跳转,执行它,要求PLC跳转去执行标号指定的指令。OUT之后再加NOT,表示输出动作禁止。与原梯形图的OUT-NOT含义相同。
此外,详细流程图还要把一些动作分解开。如臂转到位置A,分解成向位置A转动及等待是否到位置A两步。事实上,PLC对动作的准确控制也要有这两步。
详细流程图的一个步,用一个框表示。框中的符号为动作,数字为点号。
图1-13 详细流程图
(4)编写指令。有了详细流程图,即可编写PLC的指令表。表1-4即为与图1-9对应的指令表。
表1-4 指令表
把表中的语句通过编程器(与梯形图语句用的编程器不同)送入PLC,再运行程序,如其他条件也具备,即可使PLC进行上述动作的控制。只要起动条件具备,机械手将不停地从A处取工件放到B处。若起动条件不具备,则机械手停止在B处。
由于系统流程语言有等待指令,其执行程序不同于梯形图语言。如本程序用了多个等待,这里的第一个等待条件不满足,即0000不为ON,则PLC就不执行后继指令,只在①处循环等待。0000 ON后,执行②,继而执行③,并又在③处等待。它的程序不是周而复始地不断执行着,而是用到哪个指令就执行哪个指令。
3.系统流程语言特点
(1)较容易理解,不懂得电路的人,也可理解。尽管这里介绍的只是几个最简单的指令。
(2)对输入的响应比梯形图语言快。因为梯形图语言中的指令,有用、无用都要执行。而系统流程语言则需要时才执行,总的执行指令的周期短。
只是使用这种语言的欧姆龙PLC,目前还很少进入中国市场。可能今后会有所变化。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。