1.编程器件
FX系列产品,它内部的编程元件,也就是支持该机型编程语言的软元件,按通俗叫法分别称为继电器、定时器、计数器等,但它们与真实元件有很大的差别,一般称它们为“软继电器”。这些编程用的继电器,其工作线圈没有受工作电压等级、功耗大小和电磁惯性等问题影响;触点没有数量限制、机械磨损和电蚀等问题。它在不同的指令操作下,工作状态既可以无记忆,也可以有记忆,同时可以作脉冲数字元件使用。一般情况下,X代表输入继电器,Y代表输出继电器,M代表辅助继电器,SPM代表专用辅助继电器,T代表定时器,C代表计数器,S代表状态继电器,D代表数据寄存器,MOV代表传输等。
1.1 输入继电器(X)
PLC的输入端口是接受外部开关信号的窗口。PLC内部与输入端口连接的输入继电器X是用光电隔离的电子继电器,它们的编号与接线端口编号一致(按八进制输入),线圈的吸合或释放只取决于PLC外部触点的状态。内部有常开/常闭2种触点供编程时随时使用,且使用次数不限。输入电路的时间常数一般小于10ms。各基本单元都是八进制输入的地址,输入为X000~X007,X010~X017,X020~X027。它们一般位于机器的上端。
1.2 输出继电器(Y)
PLC的输出端口是向外部负载输出信号的窗口。输出继电器的线圈由程序控制,输出继电器的外部输出主触点接到PLC的输出端口上供外部负载使用,其余常开/常闭触点供内部程序使用。输出继电器的电子常开/常闭触点使用次数不限。输出电路的时间常数是固定的。各基本单元都是八进制输出,输出为Y000~Y007,Y010~Y017,Y020~Y027。它们一般位于机器的下端。
1.3 辅助继电器(M)
PLC内有很多的辅助继电器,其线圈与输出继电器一样,由PLC内各软元件的触点驱动。辅助继电器也称中间继电器,它没有向外的任何联系,只供内部编程使用。它的电子常开/常闭触点使用次数不受限制。但是,这些触点不能直接驱动外部负载,外部负载的驱动必须通过输出继电器来实现。如图2-1-1所示中的M300,它只起到一个自锁的功能。在FX2N中普遍采用M0~M499,共500点辅助继电器,其地址号按十进制编号。辅助继电器中还有一些特殊的辅助继电器,如掉电继电器、保持继电器等。
图2-1-1 辅助继电器符号接线图
1.4 定时器(T)
在PLC内的定时器是根据时钟脉冲的累积形式,当所计时间达到设定值时,其输出触点动作,时钟脉冲有1ms、10ms、100ms。定时器以用户程序存储器内的常数K作为设定值,也可以用数据寄存器(D)的内容作为设定值。在后一种情况下,一般使用有掉电保护功能的数据寄存器。即使如此,若备用电池电压降低时,定时器或计数器往往会发生误动作。
定时器通道范围如下:
100ms定时器T0~T199,共200点,设定值:0.1~3 276.7s;
10ms定时器T200~T245,共46点,设定值:0.01~327.67s;
1ms积算定时器T246~T249,共4点,设定值:0.001~32.767s;
100ms积算定时器T250~T255,共6点,设定值:0.1~3 276.7s。
定时器指令符号及应用如图2-1-2所示:
图2-1-2 定时器指令符号图
图2-2中,当定时器线圈T200的驱动输入X000接通时,T200的当前值计数器对10ms的时钟脉冲进行累积计数,当前值与设定值K123相等时,定时器的输出接点动作,即输出触点是在驱动线圈后的1.23s(10ms×123=1.23s)时才动作,当T200触点吸合后,Y000就有输出。当驱动输入X000断开或发生停电时,定时器就复位,输出触点也复位。
每个定时器只有一个输入,它与常规定时器一样,线圈通电时,开始计时;断电时,自动复位,不保存中间数值。定时器有2个数据寄存器,一个为设定值寄存器,另一个是现时值寄存器。编程时,由用户设定累积值。
如果是积算定时器,它的符号接线如图2-1-3所示:
2-1-3 积算定时器符号接线图
图2-1-3中,定时器线圈T250的驱动输入X001接通时,T250的当前值计数器对100ms的时钟脉冲进行累积计数,当该值与设定值K345相等时,定时器的输出触点动作。在计数过程中,即使输入X001在接通或复电时,计数继续进行,其累积时间为34.5s(100ms ×345=34.5s)时触点动作。当复位输入X002接通,定时器就复位,输出触点也复位。
1.5 计数器(C)
FX2N中的16位计数器,是16位二进制加法计数器,它是在计数信号的上升沿进行计数。它有2个输入,一个用于复位,一个用于计数。每一个计数脉冲上升沿使原来的数值减1,当现时值减到零时停止计数,同时触点闭合。直到复位控制信号的上升沿输入时,触点才断开,设定值又写入,再次进入计数状态。
其设定值在K1~K32 767范围内有效。
设定值K0与K1含义相同,即在第一次计数时,其输出触点就动作。
通用计数器的通道号:C0~C99,共100点。
保持用计数器的通道号:C100~C199,共100点。
通用与掉电保持用的计数器点数分配,可由参数设置而随意更改。
计数器符号接线如图2-1-4所示。
图2-1-4 计数器符号接线图
图2-1-4中,由计数输入X011每次驱动C0线圈时,计数器的当前值加1。当第10次执行线圈指令时,计数器C0的输出触点即动作。之后即使计数器输入X011再动作,计数器的当前值保持不变。
当复位输入X010接通(ON)时、执行RST指令、计数器的当前值为0,输出接点也复位。
应注意的是,计数器C100~C199,即使发生停电,当前值与输出触点的动作状态或复位状态也能保持。
1.6 数据寄存器(D)
数据寄存器是计算机必不可少的元件,用于存放各种数据。FX2N中每一个数据寄存器都是16bit(最高位为正负符号位),也可用2个数据寄存器合并起来存储32bit数据(最高位为正负符号位)。
(1)通用数据寄存器,通道分配:D0~D199,共200点。
只要不写入其他数据,已写入的数据不会变化。但是,由RUN→STOP时,全部数据均清零。(若特殊辅助继电器M8033已被驱动,则数据不被清零)。
(2)停电保持用寄存器,通道分配:D200~D511,共312点,或D200~D999,共800点(由机器的具体型号定)。
基本上同通用数据寄存器。除非改写,否则原有数据不会丢失,不论电源接通与否,PLC运行与否,其内容也不变化。然而在2台PLC做点对点的通信时,D490~D509被用作通信操作。
(3)文件寄存器,通道分配:D1 000~D2 999,共2 000点。
文件寄存器是在用户程序存储器(RAM、EEPROM、EPROM)内的一个存储区,以500点为一个单位,最多可在参数设置时到2 000点。用外部设备口进行写入操作。在PLC运行时,可用BMOV指令读到通用数据寄存器中,但是不能用指令将数据写入文件寄存器。用BMOV将数据写入RAM后,再从RAM中读出。将数据写入EEPROM盒时,需要花费一定的时间,务必注意。
(4)RAM文件寄存器,通道分配:D6 000~D7 999,共2 000点。
驱动特殊辅助继电器M8074,由于采用扫描被禁止,上述的数据寄存器可作为文件寄存器处理,用BMOV指令传送数据(写入或读出)。
(5)特殊用寄存器,通道分配:D8 000~D8 255,共256点。
写入特定目的的数据或已经写入数据的寄存器,其内容在电源接通时,写入初始化值。(一般先清零,然后由系统ROM来写入)
2.基础指令
基本逻辑指令是PLC中最基本的编程语言,掌握了它就初步掌握了PLC的使用方法,现在我们针对FX2N系列,逐条学习其指令的功能和使用方法,每条指令及其应用实例都以梯形图和语句表2种编程语言对照说明。
2.1 输入/输出指令(LD/LDI/OUT)
把LD/LDI/OUT 3条指令的功能、梯形图表示形式、操作元件以列表的形式加以说明,如表2-1-1所示:
表2-1-1 三条指令表
LD与LDI指令用于与母线相连的接点,此外还可用于分支电路的起点。如图2-1-5所示。
OUT指令是线圈的驱动指令,可用于输出继电器、辅助继电器、定时器、计数器、状态寄存器等,但不能用于输入继电器。输出指令用于并行输出,能连续使用多次。
图2-1-5 LD指令符号接线图
2.2 触点串连指令(AND/ANDI)、并联指令(OR/ORI)
触点串连指令(AND/ANDI)、并联指令(OR/ORI)如表2-1-2所示:
表2-1-2 触点串连、关联指令表
AND、ANDI指令用于一个触点的串联,但串联触点的数量不限,这2个指令可连续使用。
OR、ORI是用于一个触点的并联连接指令。如图2-1-6所示。
图2-1-6 ANDI与OR符号接线图
2.3 电路块的并联和串联指令(ORB、ANB)
表2-1-3 电路块并、串联指令表
含有2个以上触点串联连接的电路称为“串联连接块”,串联电路块并联连接时,支路的起点以LD或LDNOT指令开始,而支路的终点要用ORB指令。ORB指令是一种独立指令,其后不带操作元件号,因此,ORB指令不表示触点,可以看成电路块之间的一段连接线。如需要将多个电路块并联连接,应在每个并联电路块之后使用一个ORB指令,用这种方法编程时并联电路块的个数没有限制;如果将所有要并联的电路块依次写出,然后在这些电路块的末尾集中写出ORB的指令,此时ORB指令最多使用7次。
将分支电路(并联电路块)与前面的电路串联连接时使用ANB指令,各并联电路块的起点使用LD或LDNOT指令;与ORB指令一样,ANB指令也不带操作元件,如需要将多个电路块串联连接,应在每个串联电路块之后使用一个ANB指令,用这种方法编程时串联电路块的个数没有限制,若集中使用ANB指令,最多使用7次。如图2-1-7所示。
图2-1-7 电路块的并联和串联指令接线图
2.4 程序结束指令(END)
表2-1-4 程序结束指令表
在程序结束处写上END指令,PLC只执行第一步至END之间的程序,并立即输出处理。若不写END指令,PLC将以用户存贮器的第一步执行到最后一步,因此,使用END指令可缩短扫描周期。另外,在调试程序时,可以将END指令插在各程序段之后,分段检查各程序段的动作,确认无误后,再依次删去插入的END指令。
3.梯形图的设计与编程方法
梯形图是各种PLC通用的编程语言,尽管各厂家的PLC所使用的指令符号不太一致,但梯形图的设计与编程方法基本上大同小异。
3.1 确定各元件的编号,分配I/O地址
利用梯形图编程,首先必须确定所使用的编程元件编号,PLC是按编号来区别操作元件的。我们选用的FX2N型号的PLC,其内部元件的地址编号如表X所示,使用时一定要明确,每个元件在同一时刻决不能担任几个角色。一般来讲,配置好的PLC,其输入点数与控制对象的输入信号数总是相对应的,输出点数与输出的控制回路数也是相对应的(如果有模拟量,则模拟量的路数与实际的也要相当),故I/O的分配实际上是把PLC的输入、输出点号分给实际的I/O电路,编程时按点号建立逻辑或控制关系,接线时按点号“对号入坐”进行接线。FX2N系列的I/O地址分配及一些其他的内存分配前面都已介绍过了,同学们也可以参考FX系列的编程手册。
3.2 梯形图的编程规则
(1)每个继电器的线圈和它的触点均用同一编号,每个元件的触点使用时没有数量限制。
(2)梯形图每一行都是从左边开始,线圈接在最右边(线圈右边不允许再有接触点),如图2-1-8(a)所示为错误的,图2-1-8(b)所示为正确的。
图2-1-8(a) 错误的梯形图
图2-1-8(b) 正确的梯形图
(3)线圈不能直接接在左边母线上。
(4)在一个程序中,同一编号的线圈如果使用2次,称为双线圈输出,它很容易引起误操作,应尽量避免。
(5)在梯形图中没有真实的电流流动,为了便于分析PLC的周期扫描原理和逻辑上的因果关系,假定在梯形图中有“电流”流动,这个“电流”只能在梯形图中单方向流动——即从左向右流动,层次的改变只能从上向下。
如图2-1-9所示是一个错误的桥式电路梯形图。
图2-1-9 错误的桥式电路梯形图
4.实例分析
4.1 时间顺序控制的延时断开定时器电路
时间顺序控制——延时断开定时器,如图2-1-10所示梯形图程序,按图说明控制过程。
图2-1-10 时间顺序控制梯形图
4.2 定时步进电路
如图2-1-11所示,当X0合上,Y0输出10s后Y1才有输出,Y0输出20s后停止输出;Y1输出10s后Y2才有输出,Y1输出30s后停止工作;Y2输出50s后停止工作;X1为总停触点。
根据综上描述和对图2-1-11梯形图程序的理解,画出对应Y0、Y1、Y2输出的时序脉冲图。
图2-1-11 梯形图
4.3 计数器电路
如图2-1-12所示梯形图电路,当X0合上,Y0有输出;Y1的输出状态是合上1s,关断1s,连续计数10次后,Y0、Y1停止输出;Y2在第10个脉冲时合上1s后关断。画出该程序对应Y0、Y1、Y2输出的时序脉冲图。
图2-1-12 梯形图
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。