举个输送带运转控制的例子,说明三菱PLC的SFC编程方法
SFC全称顺序功能图(Sequeential Function Chart),是一种按照工艺流程图进行编程的图形编程语言。
SFC编程的优点
1、在程序中可以很直观地看到设备的动作顺序。
2、在设备故障时能够很容易地查找出故障所处在的位置。
3、不需要复杂的互锁电路,更容易设计和维护系统。
4、可多流程多分支同时执行,非相邻的步骤可用相同软元件。
用SFC顺序功能图编程的步骤
1、分配I/O,画状态转移图,将实际生产过程的控制要求以工序步划分成若干块,每个步完成一定的动作(功能),在转移条件满足后,从当前步转移到下一步。
2、打开编程软件,根据状态转移图编写程式块。
3、将SFC功能图程序转换为梯形图程序,只有转换成梯形图程序,PLC才能识别。
举个例子
多个传送带的启动和停止控制如下图所示。启动按钮按下后,电动机M1接通。行程开关X000接通后电动机M2接通,当行程开关X001接通后电动机M1停止。以后几个传送带的动作类推。试设计出其控制梯形图
打开GX Works2软件,新建一个程序文档。
1、新建工程→FXCPU→FX3U/FX3UC→简单工程→SFC→确定。
2、标题→块类型→梯形图块。这个梯形图块是用来调用SFC块的。
3、程序→MAIN→右键→新建数据→SFC→确定。
4、标题→块类型→SFC块。这个是主程序块。
综上所述,SFC的程序结构是由梯形图块和SFC两部分组成。
先编写一下SFC块的内容:
可先画好状态和条件,点注释工具注释好各状态。
第0步,开始状态,写一些区间复位指令。
区间复位:ZRST Y0-Y10,ZRST M0-M100。
条件,启动按钮开,X5→TRAN→
第20步(0-9初始化用,10-19功能指令用,一般从第20步开始用 ),
M1接通货物进入,SET→Y1。(保持运行,用SET。 )
条件,X0→TRAN→
第21步,M2运转,SET→Y2。
条件,X1→TRAN→
第22步,M1复位,RST→Y1。
条件,X2→TRAN→
第23步,M3运转,SET→Y3。
条件,X3→TRAN→
第24步,M2复位,RST→Y2。
条件,X4→TRAN→
第25步,M3复位,RST→Y3。
条件,货物搬走,X4断开→LDI X4→TRAN→转移到S0循环。
每编辑完一条都要按F4转换程序。
再编辑梯形图块:M8002,SET S0,按F4转换程序。可在这里调用多个不同的SFC块,也可以一个SFC多个分支的方式,实现多个不同程序切换。
仿真模拟运行:
视频加载中...
#电工##PLC##机械#
S7200 SMART从零到精通教程6___PLC编程基础知识
从这节开始我将讲解S7200 SMART PLC的编程基础知识,各种指令等
1·数据的存储类型
数制(1)二进制数的1位(bit)只能取0和1两个不同的值,可以用来表示开关量的两种不同的状态,例如触点的断开和接通,线圈的通电和断电,灯的亮和不亮等。2#1001110110011101就是16位二进制常数。它的基数2,进位规则“逢二进一”
(2)十进制数是用0~9这10个数码表示的数。它的基数10,进位规则“逢十进一”
(3)十六进制的十六个数字是0~9和A B C D E F(对应十进制中的10~15),每个十六进制数字可以用4位二进制表示,如16#A用二进制表示为2#1010。它的基数16,进位规则“逢十六进一”
(4)BCD码用4位二进制数(或1位16进制数)表示一位十进制数。例如十进制数366转换成十六进制BCD码是W#16#0366。而十进制数366转换成十六进制数是W#16#16E。 BCD码的最高4位二进制数用来表示符号,16位BCD码字的范围是-999~+999,32位BCD码字的范围是-999999~+999999,不同数制的数的表示方法不同:
不同数制的数的表示方法
下面重点讲解一下数制的转换:
二进制数转十进制数:从二进制的地位到高位(即右到左)依次乘以2的0~n次方的和 。例如:2#1011 0111转换成十进制数:
2#1011 0111=1×2^7 +0×2^6+1×2^5+1×2^4+0×2^3+1×2^2+1×2^1+1×2^0=183
十进制数转二进制数:将一个十进制数反复除以2取余数,除到商等于0为止。 例如:205转换成二进制数等于2#1100 1101,转换过程如下:
205/2=102......1(二进制的最低位)
102/2=51......0
51/2=25.......1
25/2=12......1
12/2=6......0
6/2=3......0
3/2=1......1
1/2=0......1(二进制的最高位)
二进制数转十六进制数:将一个二进制数从最低位开始以4位分一组,最左边的不够四位的补0,从每一组的二进制数的最低位向最高位依次乘以2的n次方之和。 例如:2#110 1101转换成十六进制数如下:2#110 1101可以写成2#0110 1101
0×2^3+1×2^2+1×2^1+0×2^0 (0110) 1×2^3+1×2^2+0×2^1+1×2^0(1101) =16#6D
十六进制数转二进制数:将十六进制数的每一位转换成四位二进制数,不足四位的在左边补0,组合起来即可得到二进制数。 例如:16#3E=2#0011 1110
十六进制数转十进制数:将一个十六进制数的最低位到最高位(即右到左)依次乘以16的n次方之和。 例如:16#29FE=2×16^3+9×16^2+15×16^1+14×16^0=10750
十进制数转十六进制数:将一个十进制数整数反复除以16取余数,除到商等于0为止。 例如:276转换成十六进制数等于16#114.
276/16=17......4(十六进制的最低位)
17/16=1......1
1/16=0......1(十六进制的最高位)
数据的长度和类型不同长度的数据表示的十进制数取值范围
常数:表示方法如二进制,十进制,十六进制等。在表示二进制数和十六进制数时要在前面加"2#","16#"。 格式如下:2#1101,16#45DF,ASCII:"HELLOW",实数:-3.1415926,十进制数:1258
2·元件的功能与地址分配
输入过程映像存储器I输入过程映像存储器与输入端相连,专门接收PLC外部开关信号的元件。
位格式:I【字节地址】·【位地址】,如I0.0
字节,字,双字格式:I 【长度】·【起始字节地址】,如IB0,IW0,ID0
输出过程映像存储器Q输出过程映像存储器是将PLC内部信号输出传送到外部负载(用户输出设备)。
位格式:Q【字节地址】·【位地址】,如Q0.0
字节,字,双字格式:Q【长度】·【起始字节地址】,如QB0,QW0,QD0
变量存储器V用来存储程序执行过程中控制逻辑操作的中间结果和保存与工序或任务相关的其它数据,变量存储器不能直接驱动外部负载。
位格式:V【字节地址】·【位地址】,如V1.0
字节,字,双字格式:V【长度】·【起始字节地址】,如VB0,VW2,VD100
位存储器M位存储器是PLC中数量最多的一种继电器。不能直接驱动外部负载。
位格式:M【字节地址】·【位地址】,如M1.0
字节,字,双字格式:M【长度】·【起始字节地址】,如MB0,MW2,MD100
由于此节内容较多,下一节继续讲解······
下一讲S7200 SMART从零到精通教程7,请继续关注涛哥乡村行,续······点赞关注哦!
如有不明白之处可私信我,我会尽快回复!
相关问答
我们厂里生产线工艺流程变了,原来的plc控制柜怎么改程序?
我们厂前几天在郑州景和电气定做了5台plc控制柜,没想到他们还帮忙把原来厂里那台旧控制柜的程序也给改了,他们的编程工程师好专业呀,你可以咨询一下他们我们...
plc步号怎么排?
以不同品牌的程序分类——再以不同功能细分。3、选择程序加以理解:分类完成后就是慢慢的“消化”程序了。首先选择自己熟悉的PLC程序或是自己将要用到的程序...
plc控制柜加工有哪些工艺?感谢回答
[回答]plc控制柜要注意:(1)考虑被测目标的加工工艺规定。(2)在考虑操纵规定和性能指标的前提条件下,尽可能使自动控制系统简易、经济发展。(3)自动控制系...
请问谁知道:plc控制柜代加工是什么意思?知道的请回答
[回答]plc控制柜设计方法及流程(1)详尽掌握和剖析被测目标的加工工艺标准,依据生产线设备和加工过程的操纵规定,剖析被测目标的组织和运作全过程,确立姿势...
plc的自检过程怎么完成的?
PLC控制系统在启动、运行过程中如何自检1、自控系统初始状态在一般的工业生产过程中,系统内每台设备开始时均处于初始状态。初始状态包括:供设备用电的电...
如何用labview去编写生产线MES程序?
使用LabVIEW编写生产线MES程序需要以下步骤:1.确定需求:了解生产线的工艺流程和数据采集要求,明确需要监控和控制的参数。2.设计界面:使用LabVIEW的图形...
plc装配流水线工作原理?
下一个工位。一直到加工完成,检查是否合格,...每个工位都要有传感器,表示加工完成,完后后传感器一个信号,传送带运转,将工件送到下一个工位,或者由机器人拿到...
plc控制任务说明?
plc控制系统设计任务分析包括工艺流程,明确控制要求、确定控制方案、选择机型和输入输出设备选择及输入输出点分配,施工设计、总装调试等。一、分析工艺流程,...
谁能帮助我!plc控制柜代加工是什么意思?求解答
[回答]plc控制柜有过载、短路及缺相保护等功能。其结构紧凑、工作稳定、功能齐全,可以根据实际控制规摸大小进行组合,既可以实现单柜自动控制,也可以实现...
plc怎么使用时间来做到期停止工作,输入密码解除?
这个是很容易实现的,第一种是普通计时功能实现,下面应朋友要求再做个以PLC时间控制的,往下看第一种D100是计时的,当它的值小于216000时,M100不输出,下面...时...