分析控制要求得出,本例是一个典型的顺序控制问题,对于这类问题适合采用“顺控图设计法”。采用顺控图法编程需在项目分析的基础上画出正确的顺控图。
本实例中通过分析动力头的整个工作过程来绘制顺控图,如图7-10所示。
图7-10a是顺控图的文字表达形式,图7-10b是符号表达形式。针对图7-10b需做以下几点说明:
1)激活初始步1的转换条件有两个,一个是PLC上电第一个扫描周期为ON的标志位(P_First_Cycle),它的作用是使PLC开机运行时就无条件地进入到初始步1;另一个来自于5步的转换条件是行程开关SQ1(0.01)和循环模式开关0.02“非”的逻辑与组合。
2)激活2步的转换条件也有两个,一个来自于初始步1的转换条件是SQ1(0.01)和起动按钮0.00的逻辑与组合,以防动力头偏离了初始位置;另一个来自于5步的转换条件是行程开关SQ1(0.01)与循环模式开关0.02的逻辑与组合。因此,如果选择循环工作模式,则当转换条件满足时,5步将直接转入到2步,无需再按起动按钮了。
3)在2步的动作中,起动电动机M1和M2且保持,因此在图7-10b中的2步对应动作框中画“S101.04”和“S101.05”,符号S表示置位保持;在5步和1步中分别关闭M1和M2,在对应的动作框中内画“R101.04”和“R101.05”,符号R表示复位停止。
4)在5步的动作中,由于存在两个出口(激活初始步1或激活步2),因此5步的复位条件也相应有两个,即图7-10b中的W10.01和W10.02,切勿遗漏!
图7-10 动力头进给控制顺控图
a)顺控图1 b)顺控图2
根据表7-6定义程序符号和图7-10b,使用基本逻辑指令编程法编写的动力头进给控制梯形图如图7-11所示。
图7-10动力头给进控制顺控图属于循环序列结构,使用CP1H的工作位W10.01~W10.05作为各步标志位。按照基本指令法编写配料车系统梯形图程序时需要注意以下几点:
1)W10.05步存在两个出口W10.01和W10.02,所以W10.05的复位条件有两个,即W10.01和W10.02。
2)W10.01步的激活条件有两个,一个是P_First_Cycle;另一个是由W10.05步在满足条件时激活。
3)W10.02步的激活条件有两个,一个是由W10.01步在满足条件时激活;另一个是由W10.05步在满足条件时激活。
4)快进101.01在W10.02步和W10.03步都有输出,所以使用图5-8c所示的组合输出方法来避免多线圈输出问题。
从该实例可以看出顺控图设计法是一种较先进的设计方法,简单易学,提高了编程的效率,程序的调试与修改更加方便,而且可读性也大为改善。
另外,对于欧姆龙CJ系列PLC可以在CX-Programmer编程软件中直接插入顺控图模块(Sequential Function Chart,SFC),借助该软件提供的模板来编写顺控图,具体操作方法介绍如下。
首先,在CX-Programmer中新建工程文件,选择设备类型(以CJ1M-CPU23机型为例),网络类型选择SYSMAC WAY,如图7-12所示。
在图7-12中,鼠标单击“设备类型”后面的“设定”按钮,出现“设备类型设置[CJ1M]”对话框,如图7-13所示。在“CPU类型”选项中选择“CPU23”,单击“确定”按钮,完成设备类型设置。出现工程文件编辑界面。
图7-11 动力头进给控制梯形图
图7-12 新建工程
图7-13 设备类型设置
采用SFC编写程序主要有如下4个步骤。
(1)建立SFC框架
在工程工作区窗口,鼠标右键单击“程序”,在弹出的快捷菜单中选择“插入程序”,进一步选择“SFC”,如图7-14所示。在“SFC”上单击鼠标左键后,出现SFC编辑界面,如图7-15所示。
图7-14 插入SFC
图7-15 SFC编辑界面
本实例的顺控图共有5步(见图7-10),系统默认有“Step1”和“Step2”,因此需要再增加3步。增加步“Step”和转换“Trans”的方法如下:
首先,鼠标右键单击“Step2”,在出现的快捷菜单中选择“增加转换和步”,如图7-16a所示,就会在“Step2”的下面增加一个转换“Trans2”和一个步“Step3”,如图7-16b所示。可以通过选中“Step3”,按下鼠标左键拖动“Step3”来改变它的位置。同样,用拖动的方法可以改变其他“Step”的位置,从而改变SFC图形的布局。
图7-16 增加转换和步
a)增加转换和步操作 b)增加转换和步结果
用同样的方法来增加“Trans4”、“Step4”和“Trans5”、“Step5”。
为了增加程序的可读性和可维护性,将5步的名称依次修改为初始步、快进步、工进步、停留步和快退步,系统默认第1步为初始步,用双线框表示。
修改步名称时只需双击该步或者在该步上单击鼠标右键,在弹出的快捷菜单中选择“编辑步名称”,直接输入新的步名称即可。比如修改“Step1”的名称时,双击“Step1”,则“Step1”进入可编辑状态,如图7-17所示,此时直接输入“初始步”。
用同样的方法可以修改转换“Trans1”~“Trans4”的名称,修改完的SFC画面如图7-18所示。
图7-17 修改步名称
图7-18 修改转换名称和步名称
由于系统上电后无条件进入初始步,所以在“初始步”上方无需转换条件;但是需要在最后一步“快退步”下方增加一个转换,以实现单周期模式/循环模式控制。具体方法是在“快退步”上单击鼠标右键,在弹出的快捷菜单中选择“增加转换”,则会增加一个“Trans1”,在“Trans1”上单击鼠标右键,依次选择“连接线”→“增加连接线”选项,如图7-19所示。
单击鼠标左键,出现如图7-20所示对话框,选择“初始步”后单击“确定”按钮,完成“快退步”向“初始步”的转换连接,并修改“Trans1”的名称,结果如图7-21所示。
图7-19 增加连接线
图7-20 选择连接线的目的步
在“快退步”上单击鼠标右键,在弹出的快捷菜单中选择“添加分歧”,然后用同样的方法在新增加的转换“Trans1”上添加连接线,完成从“快退步”到“快进步”的转换连接。至此,完成了本实例的SFC框架结构,如图7-22所示。
图7-21 连接线添加成功
图7-22 SFC框架(www.daowen.com)
(2)定义转换条件
在工程工作区窗口的“新程序2(未指定)”下的第3个选项“转换”上单击鼠标右键,依次选择“插入转换”→“梯形图”,即可插入转换“Transition1”,如图7-23所示。重复操作6次,可以插入6个“Transition”,单击“转换”前面的“+”,可以看到刚才插入的6个“Transition”,如图7-24所示。
根据表7-6定义程序符号,双击某一“Transition”完成该转换梯形图程序的输入。Transition1~Transition6的梯形图如图7-25~图7-30所示。
图7-23 插入转换Transition
图7-24 插入6个Transition
图7-25 Transition1的梯形图
图7-26 Transition2的梯形图
图7-27 Transition3的梯形图
图7-28 Transition4的梯形图
图7-29 Transition5的梯形图
图7-30 Transition6的梯形图
将图7-22中的“Trans1”~“Trans6”后的“False”依次修改为“Transition1”~“Transition6”,如此可将此前定义好的转换条件跟SFC框架中的转换一一对应,当转换条件满足时,就可从当前步转换到下一步,如图7-31所示。
图7-31 SFC图形中False修改为定义好的Transition
(3)定义每一步的动作
在工程工作区窗口的“动作”上单击鼠标右键,在随后出现的快捷菜单上依次选择“插入转换”,“梯形图”,重复操作4次,可以插入4个“Action”,然后依次双击“Action”完成梯形图的输入。Action1~Action4的梯形图如图7-32~图7-35所示。
图7-32 Action1的梯形图
图7-33 Action2的梯形图
图7-34 Action3的梯形图
图7-35 Action4的梯形图
注意:每一个Action中的梯形图程序都代表这一步将执行的动作,梯形图程序的输入条件均为P_On,即激活某一步时将无条件地运行该步的程序。
动作定义好以后,要将SFC中的“步”与对该步要执行的动作建立对应关系。下面以“初始步”为例说明操作方法。在“初始步”上单击鼠标右键,在弹出的快捷菜单上依次选择“添加动作”→“已存在的动作”,如图7-36所示。单击鼠标左键后,出现如图7-37所示的画面。
图7-36 建立步与动作之间的对应关系1
鼠标单击图7-37中的“Action1”,在Action1”的下拉菜单中显示已定义的4个动作,如图7-38所示,选择Action1。其他步添加动作的方法类似,不再赘述。
图7-37 建立步与动作之间的对应关系2
图7-38 给“初始步”选择Action1
在“快进步”和“工进步”时,快进YV1(101.01)都有输出,因此在“快进步”和“工进步”中均应添加布尔动作“快进YV1”,在“工进步”中还需添加布尔动作“工进YV2”,在“快退步”添加布尔动作“快退YV3”。具体添加方法以在“快进步”添加布尔动作“快进YV1”为例说明。
在“快进步”上单击鼠标右键,在随后出现的快捷菜单上依次选择“添加动作”→“布尔动作”,如图7-39a所示。单击鼠标后添加了一个布尔动作,如图7-39b所示。
图7-39 添加布尔动作操作1
a)添加布尔动作菜单 b)添加布尔动作结果
接着用鼠标单击刚才添加的动作后出现灰色按钮,如图7-40所示。单击灰色按钮后出现如图7-41所示的画面,在该画面上选择快进YV1。
图7-40 添加布尔动作操作2
图7-41 添加布尔动作操作3
单击“确定”后,布尔动作“快进YV1”添加成功,按此方法添加其他布尔动作。至此,完成了SFC的编辑,修改新程序2为循环任务00(起动任务),最终画面如图7-42所示。
图7-42 完整的SFC画面
(4)调试运行
经过调试运行验证了可以实现与图7-11所示梯形图程序相同的控制功能。使用这种编程方法的好处是无需单独绘制顺控图,可以将顺控图的绘制和梯形图编程合并完成,提高了编程效率。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。