1、维修电工高级技师培训 之可编程控制器 1.1.硬件组成硬件组成 编写PLC用户程序 编写PLC用户程序二、可编程控制器结构及组成二、可编程控制器结构及组成硬件硬件软件软件2.2.可编程控制器由哪几部分组成?可编程控制器由哪几部分组成?1):(1)(2)(3)(4)(5)s sc co ommc cR R1 1R R2 2T TR R3 3+5 5v vA A滤滤波波内内部部电电路路L LE ED D 有触点输出方式)无触点输出方式)无触点输出方式)继电器输出接口电路继电器输出接口电路内部电路T T1 1+5 5v v负载R R2 2V VT TR R3 3V VDDF FU UC COOMMR
2、 R1 1L LE EDD晶体管输出接口电路晶体管输出接口电路晶闸管输出接口电路晶闸管输出接口电路 4 4)PLCPLC的电源模块的电源模块 3.PLC的应用领域 。PS(电源模块)CPU IM(接口模块)SM:DISM:DOSM:AISM:AO CP:-点-到-点-PROFIBUS-工业以太网二、可编程序控制器的工作原理及编程语言二、可编程序控制器的工作原理及编程语言 开机开机内部处理内部处理通讯服务通讯服务输入处理输入处理程序执行程序执行输出处理输出处理一)一)PLCPLC的工作原理的工作原理(PLCPLC的工作方式的工作方式:循环循环扫描)扫描)输入端输入端输入电路输入电路输入映像寄存输
3、入映像寄存器器X0X1.X0Y0Y0Y1元件映像寄存元件映像寄存器器读读写写输出锁存器输出锁存器输出电路输出电路输入端输入端Y0Y1读读写写常开触点常闭触点线圈&=X0X1Y0X0X0X0X1X1X1X0Y0Y0Y0Y0X0Y0案例案例1、三相异步电机的全压启动的、三相异步电机的全压启动的PLC控制控制继电器控制系统电路图如果用如果用PLC控制怎么实现呢?控制怎么实现呢?PLC 控制系统电路图控制系统电路图SB1SB2FRKMKMPLC通过程序的执行来实现以上的起动,自锁,停止电路,我们今后把这种典型电路叫做起保停电路。三)三)SFC程序的组成:步,转换,动作可转换为顺序控制梯形图SFC 程序
4、的工作原理:特定时间执行特定的程序步,并扫描相应的转换条件,当转换条件满足时,进入下个程序步,直到结束句梯形图构成:n左母线,右母线n逻辑行n常开触点,常闭触点n线圈X1X0X2X0Y1Y2Y1Y2ORnLD X1nOR Y1nANI X0nOUT YIX1X0X2X0Y1Y2Y1Y21).输入输入/输出点数输出点数输入/输出点数指的是外部输入、输出端子数量的总和,又称为主机的开关量输入/输出点数,它是描述可编程控制器大小的一个重要参数。2).存储容量存储容量可编程控制器存储容量通常指用户程序存储器和数据存储器容量之和,表征系统提供给用户的可用资源,是系统性能的一项重要技术指标。3).扫描速度
5、扫描速度可编程控制器采用循环扫描方式工作,完成一次扫描所需的时间叫做扫描周期,扫描速度与扫描周期成反比。4).指令系统指令系统指令系统是指可编程控制器所有指令的总和。可编程控制器的编程指令越多,软件功能就越强,但掌握应用也相对较复杂。5).可扩展性可扩展性小型可编程控制器的基本单元(主机)多为开关量I/O接口,模拟量处理、高速处理、温度控制、通信等智能扩展模块的多少及性能也已成为衡量可编程控制器产品水平的标志。6).通信功能通信功能可编程控制器的组网和通信能力也已成为可编程控制器产品水平的重要衡量指标之一。三、FX2NPLC系统FX2N系列可编程控制器型号格式如下:FX2N -系列名系列名I/
6、O总点数总点数单元功能单元功能电源和输入输电源和输入输出类型特性出类型特性输出类型输出类型R:继电器输出:继电器输出T:晶体管输出:晶体管输出S:晶闸管输出:晶闸管输出M:基本单元:基本单元E:输入输出混合扩展单元与扩展模块:输入输出混合扩展单元与扩展模块EX:输入专用扩展模块:输入专用扩展模块EY:输出专用扩展模块:输出专用扩展模块无标记:无标记:AC电源,电源,DC输入输入D:DC电源,电源,DC输入输入UA1/UL:AC电源,电源,AC输入输入 X 0功能字母功能字母数字数字 X0M0M0M0 通常可分为两类:通常可分为两类:和和 特殊辅助继电器的线圈由PLC自动驱动,用户只可以利用其触
7、点。特殊辅助继电器的线圈由用户控制,其线圈得电后,PLC作出特定动作。运行监视用特殊辅助继电器运行监视用特殊辅助继电器PLC运行时运行时M8000得电,得电,PLC停止时停止时M8000失电失电初始脉冲特殊辅助继电器 M8002-只在PLC开始运行的第一个扫描周期内得电,其余时间均断电。常用M8002的 触 点 作为 一 些 继电 器 的 初始 化 复 位信号-分别为产生周期为分别为产生周期为10ms、100ms、1s、1min脉冲的脉冲的特殊辅助继电器特殊辅助继电器(PLC RUN)以下为线圈驱动形以下为线圈驱动形,用户通过程序驱动其线圈用户通过程序驱动其线圈,其其线圈得电后起以下的作用线圈
8、得电后起以下的作用:非保持型继电器、寄存器状态清除非保持型继电器、寄存器状态清除保持型继电器、寄存器状态清除保持型继电器、寄存器状态清除RUNSTOP时,输出保持时,输出保持RUN前状态前状态以以D8039中指定的扫描时间工作中指定的扫描时间工作 5、定时器(、定时器(T)通用定时器不具备断电的保持功能,即当通用定时器不具备断电的保持功能,即当输入电路断开或停电时定时器复位。输入电路断开或停电时定时器复位。n编号:FX0S FX1S FX0N FX1N FX2N (FX2NC)100ms T0T49 T0T62 T0T62 T0T199 10ms T24T49 T32T62 T32T62 T2
9、00T2451ms -T63 -【编程练习】:按下启动按钮【编程练习】:按下启动按钮,使第一台电机起动使第一台电机起动,过过5 5秒后秒后,第二台电机自动起动第二台电机自动起动,按下停止按钮按下停止按钮,控制控制两台电机同时停止两台电机同时停止,试设计梯形图。试设计梯形图。X0X1Y0Y0T0 K50T0X1Y1Y1注:注:16位增计数器分为通用型和保持型两种位增计数器分为通用型和保持型两种6、16位增计数器位增计数器 FX0S FX1S FX0N FX1N FX2N (FX2NC)普通普通 C0-C13 C0-C15 C0-C15 C0-C15 C0-C99 保持保持 C14-C15 C16
10、-C31 C16-C31 C16-C199C100-C19916位增计数器编号位增计数器编号三)三)PLCPLC应用系统的设计调试方法应用系统的设计调试方法PLCPLC控制系统是将硬件和软件分开,控制系统是将硬件和软件分开,着力进行软件的编程设计。但是,着力进行软件的编程设计。但是,不论什么控制系统,在设计规划不论什么控制系统,在设计规划时,必须符合电气控制系统设计时,必须符合电气控制系统设计的基本原则。的基本原则。任何一种电气控制系统都是为了任何一种电气控制系统都是为了实现被控对象(生产设备或生产实现被控对象(生产设备或生产过程)的工艺要求,以提高生产过程)的工艺要求,以提高生产效率和产品质
11、量。效率和产品质量。1.PLC1.PLC系统设计的原则与内容系统设计的原则与内容 在设计在设计PLCPLC控制系统时,应遵循以下基本原则:控制系统时,应遵循以下基本原则:(1 1)最大限度地满足生产机械和生产工艺对电气控制的要求,)最大限度地满足生产机械和生产工艺对电气控制的要求,这些生产工艺要求是电气控制系统设计的依据。这些生产工艺要求是电气控制系统设计的依据。(2 2)在满足生产工艺要求前提下,设计方案力求简单、经济、)在满足生产工艺要求前提下,设计方案力求简单、经济、合理,不要盲目追求自动化和高指标。力求控制系统操作简单、合理,不要盲目追求自动化和高指标。力求控制系统操作简单、使用及维修
12、方便。使用及维修方便。(3 3)正确、合理地选用电器元件,确保控制系统安全可靠地工)正确、合理地选用电器元件,确保控制系统安全可靠地工作,同时考虑技术进步、造型美观。作,同时考虑技术进步、造型美观。(4 4)为适应生产的发展和工艺的改进,在选择控制设备时,设)为适应生产的发展和工艺的改进,在选择控制设备时,设备能力留有适当余量。备能力留有适当余量。2.2.设计内容:设计内容:(1 1)拟订控制系统设计的技术条件。技术条件一般)拟订控制系统设计的技术条件。技术条件一般以设计任务书的形式来确定,它是整个设计的依据。以设计任务书的形式来确定,它是整个设计的依据。(2 2)选择电气传动形式和电动机、电
13、磁阀等执行机)选择电气传动形式和电动机、电磁阀等执行机构。构。(3 3)选定)选定PLCPLC的型号。的型号。(4 4)绘制电气原理图及)绘制电气原理图及PLCPLC的输入的输入/输出分配表。输出分配表。(5 5)根据系统设计的要求编写软件规格说明书,然)根据系统设计的要求编写软件规格说明书,然后再用相应的编程语言(常用梯形图)进行程序设后再用相应的编程语言(常用梯形图)进行程序设计。计。(6 6)了解并遵循用户认知心理学,重视人机界面的)了解并遵循用户认知心理学,重视人机界面的设计。设计。(7 7)设计操作台、电气柜。)设计操作台、电气柜。(8 8)编写设计说明书和使用说明书。)编写设计说明
14、书和使用说明书。根据具体任务,上述内容可适当调整。根据具体任务,上述内容可适当调整。四)四)PLCPLC控制系统设计的一般步骤控制系统设计的一般步骤1 1熟悉控制对象设计工艺布置图熟悉控制对象设计工艺布置图 2 2PLCPLC选型及确定硬件配制选型及确定硬件配制3 3设计电气原理图并编制材料清单设计电气原理图并编制材料清单 4 4设计控制台(柜)设计控制台(柜)5 5设计安装所需的图纸设计安装所需的图纸6 6编制控制程序编制控制程序7 7程序调试程序调试 8 8编制技术文件编制技术文件(一)(一)PLCPLC控制系统的硬件设计控制系统的硬件设计 PLC PLC的品种繁多,其结构形式、性能、容量
15、、指的品种繁多,其结构形式、性能、容量、指令系统、编程方法、价格等各有不同,使用场合也各令系统、编程方法、价格等各有不同,使用场合也各有侧重。因此,合理选择有侧重。因此,合理选择PLCPLC对于提高对于提高PLCPLC控制系统的控制系统的技术经济指标起着重要作用。技术经济指标起着重要作用。(二)(二)PLCPLC机型的选择机型的选择PLCPLC机型的选择应是在满足控制要求的前提下,保证机型的选择应是在满足控制要求的前提下,保证可靠、维护使用方便以及最佳的性能价格比。具体应可靠、维护使用方便以及最佳的性能价格比。具体应考虑以下几方面:考虑以下几方面:1 1性能与任务相适应性能与任务相适应2 2结
16、构上合理、安装要方便、机型上应统一结构上合理、安装要方便、机型上应统一 3 3编程设备的选择编程设备的选择4 4是否满足响应时间的要求是否满足响应时间的要求 5 5对联网通信功能的要求对联网通信功能的要求6 6其他特殊要求其他特殊要求1.I/O1.I/O点数的确定:点数的确定:PLCPLC的的I/OI/O点数的确定以系统实际的输入输出点数为基点数的确定以系统实际的输入输出点数为基础确定。在础确定。在I/OI/O点数的确定时,应留有适当余量。通点数的确定时,应留有适当余量。通常常I/OI/O点数可按实际需要的点数可按实际需要的101015%15%考虑余量;当考虑余量;当I/OI/O模块较多时,一
17、般按上述比例留出备用模块。模块较多时,一般按上述比例留出备用模块。2.2.存储器容量的确定:存储器容量的确定:用户程序占用多少存储容量与许多因素有关,如用户程序占用多少存储容量与许多因素有关,如I/OI/O点数、控制要求、运算处理量、程序结构等。因此在点数、控制要求、运算处理量、程序结构等。因此在程序编制前只能粗略的估算。程序编制前只能粗略的估算。(三)(三)PLCPLC容量估算容量估算对对PLCPLC来讲,信号形式可分为四类:来讲,信号形式可分为四类:(1 1)数字量输入信号)数字量输入信号 (2 2)数字量输出信号)数字量输出信号 (3 3)模拟量输入信号)模拟量输入信号 (4 4)模拟量
18、输出信号)模拟量输出信号 不同的不同的I/OI/O模块,其电路和性能不同,它直接影响模块,其电路和性能不同,它直接影响着着PLCPLC的应用范围和价格,应该根据实际情况合理选的应用范围和价格,应该根据实际情况合理选择。择。(四)(四)I/OI/O模块的选择模块的选择(五)安全回路设计(1)短路保护(2)互锁与联锁措施(3)失压保护与紧急停车措施(4)极限保护五)控制系统的接地设计在设计PLC系统接地时,应注意以下几点:1.接地线应尽量粗,一般用大于1.5mm2的接地线;2.接地点应尽量靠近控制器,一般不大于50米;3.接地线应尽量避开强电回路和主回路,不能避开时,应垂直相交。六)抗I/O干扰设
19、计1从抗干扰角度选择I/O模块 I/O模块的选择一般要考虑以下因素:(1)输入输出信号与内部回路隔离的模块比非隔离的模块抗干扰性能好;(2)晶体管等无触点输出的模块比有触点输出的模块在控制器侧产生的干扰小;(3)输入模块允许的输入信号ON/OFF电压差大,抗干扰性能好;OFF电压高,对抗感应电压干扰是有利的;(4)输入信号响应慢的输入模块抗干扰性能好。(3)PLC的输入与输出最好分开走线,开关量与模拟量也要分开敷设。模拟量信号的传送应采用屏蔽线,屏蔽层应一端接地,接地电阻应小于屏蔽层电阻的1/10。(4)交流输出线和直流输出线不要用同一根电缆,输出线应尽量远离高压线和动力线,避免并行。2安装与
20、布线时注意:(1)动力线、控制线以及PLC的电源线和I/O线应分别配线,隔离变压器与PLC和I/O之间应采用双绞线连接。(2)PLC应远离强干扰源,不能与高压电器安装在同一个开关柜内。在柜内PLC应远离动力线(二者之间距离应大于200mm)。与PLC装在同一个柜子内的电感性负载,如功率较大的继电器、接触器的线圈,应并联RC电路。3考虑I/O端的接线:(1)输入接线一般不要太长,但如果环境干扰较小,电压降不大时,输入接线可适当长些。输入/输出线要分开。(2)输出端接线分为独立输出和公共输出,在不同组中,可采用不同类型和电压等级的输出电压。但在同一组中的输出只能用同一类型、同一电压等级的电源。(3
21、)PLC的输出负载可能产生干扰,因此要采取措施加以控制,如直流输出的续流管保护,交流输出的阻容吸收电路,晶体管及双向晶闸管输出的旁路电阻保护等。4正确选择接地点,完善接地系统5对变频器干扰的抑制 变频器的干扰处理一般有下面几种方式:1)加隔离变压器,主要是针对来自电源的传导干扰,可以将绝大部分的传导干扰阻隔在隔离变压器之前。2)使用滤波器,滤波器具有较强的抗干扰能力,还具有防止将设备本身的干扰传导给电源,有些还兼有尖峰电压吸收功能。3)使用输出电抗器,在变频器到电动机之间增加交流电抗器主要是减少变频器输出在能量传输过程中线路产生电磁辐射,影响其它设备正常工作。四、FX2N系列PLC的基本指令及
22、编程 X0M0X1T0 K10M0Y0X0T0M0 Y6X1X0X2X3Y6X4X7ORBORANBX2X3Y0X2X3Y0一个扫描周期X0Y0M0M0Y0M0Y0X0Y0PLS M0 PLF M1 X0X0X0M0M1一个扫描周期0 LD X0PLS M0LD X01PLF M1SET Y0 RST Y0 X1X0X0X1Y00 LD X0SET Y0LD X11RST Y0PLS M0 PLF M1 X0X0SET Y0 RST Y0 M1M0X0M0M1Y0 SET Y0 RST Y0 X1X0X2Y0Y1Y2X0M0X2T0MRDMPSMPPM1 X0MCN0M100M0Y0Y1X2M
23、CRN0X4Y3Y2T0M100 案例案例1:三相异步电机的正反转:三相异步电机的正反转1、主电路和继电器控制电路、主电路和继电器控制电路上一页上一页下一页下一页本章首页本章首页X0X1X2X3COMY0Y1COMSB2SB3SB1KM1KM2KM2KM1FR2、外部接线图、外部接线图上一页上一页下一页下一页本章首页本章首页X0X1X1X0Y0Y1Y0Y1X2Y1X2Y0X3X33、PLC梯形图梯形图上一页上一页下一页下一页过载保护过载保护本章首页本章首页有时为了有时为了节省输入触节省输入触点点,对于热继电器过,对于热继电器过载保护,我们可以利载保护,我们可以利用外部电路去完成。用外部电路去完
24、成。方法如下:方法如下:上一页上一页下一页下一页本章首页本章首页X0X1X2X3COMY0Y1COMSB2SB3SB1KM1KM2KM2KM1FR4、调整后的外部接线图、调整后的外部接线图手动复位手动复位型热继电型热继电器器上一页上一页下一页下一页本章首页本章首页5、调整后的、调整后的PLC梯形图梯形图X0X1X1X0Y0Y1Y0Y1X2Y1X2Y0上一页上一页下一页下一页本章首页本章首页案例案例2:三相异步电机的星三角启动主电路和继电器控制:三相异步电机的星三角启动主电路和继电器控制电路电路上一页上一页下一页下一页本章首页本章首页类别类别元件元件PLC元件元件作用作用类别类别元件元件PLC元
25、件元件作用作用输输入入FRX0热继电器输输出出KM1Y1电动机主接触器SB1X1停止按钮KM2Y2三角型启动接触器SB2X2启动按钮KM3Y3星型启动接触器2、输入、输入/输出分配表输出分配表上一页上一页下一页下一页本章首页本章首页3、外部接线图、外部接线图上一页上一页下一页下一页本章首页本章首页4、PLC梯形图梯形图上一页上一页下一页下一页本章首页本章首页 步步有向线段有向线段转换转换转换条件转换条件动作动作 S0M8002S20S21X4X0 Y0 T0 k30某一步变为活动步的两个条件某一步变为活动步的两个条件:该步的前级步为活动步;该步的前级步为活动步;相应的转换条件得到满足相应的转换
26、条件得到满足。使系统由当前步转入下一步的使系统由当前步转入下一步的信号称为转换条件。信号称为转换条件。转换条件可能是外部输入信号,转换条件可能是外部输入信号,如按钮、指令开关、限位开关的如按钮、指令开关、限位开关的接通接通/断开等,也可能是断开等,也可能是PLCPLC内部内部产生的信号,如定时器、计数器产生的信号,如定时器、计数器触点的接通触点的接通/断开等。断开等。转换条件也可能是若干个信号转换条件也可能是若干个信号的与、或、非逻辑组合。的与、或、非逻辑组合。S0S21S22S23X0X0.X1X0+X1Y0T0 K20S0S21X0S22X3S23T37S24X2S25X4S26X3S27
27、T38S28X2I0.5M8002 单序列结构顺序功能图单序列结构顺序功能图M8002M1M2M3M4X3X1X2X0X2Y0Y1Y0Y1左行左行右行右行右行右行左行左行M0初始步初始步起动起动Xi-1XiXi+1执行第i-1步执行第i步执行第i+1步abXi-1XiXi+1执行第i-1步执行第i步执行第i+1步ab Xi-1aXiXiXi+1M1M2M3X1X23、使用、使用STL指令的编程方法指令的编程方法lSTL触点驱动的电路块具有三个功能:对负载的驱动处理、指定转换条件和指定转换目标。lSTL置位指令,与之配合使用的RET复位指令。X0X1X1X2X2X4X4X5X5 M8002M1Y
28、0高速开门M0初始步M2Y1减速开门X0 有人X1 减速位置M3T0定时0.5sX2 全开M4Y2高速关门T0 0.5s后M5Y3减速关门X4 减速位置X5 全关M6T1定时0.5sT1 0.5s后X0 有人夹紧工件 X1快进 X2X4 快退X5 快进工进 X3X6 工进快退 X7X10 松开工件FX2N48MRAC220VY1Y7Y2Y3Y4Y5Y6X10Y0X7X3X1X5X2X4X6X0启动已夹紧左侧快进结束左侧工进结束左侧起点右侧快进结束右侧工进结束右侧起点已松开夹紧左侧快进右侧工进左侧快退右侧快进左侧工进右侧快退松开comcomY1/Y4Y2/Y5Y3/Y6快进 工进快退快进M800
29、2M0X0启动M1Y0X1 已加紧M2X2Y1Y2M3Y2X3M4Y3X4M5M6Y4Y5M7Y5X6X5M8Y6等待等待M9=1M10Y7X10 已松开X7工进快退SETM0M8002SETM1 X1M2RSTM1SETSETSETRSTRSTRSTM3M4M2M2M3X2X4X3M4M4M5M3M0 X0SETM1RSTM0M6SETM8002M0X0启动M1Y0X1 已加紧M2X2Y1Y2M3Y2X3M4Y3X4M5M6Y4 Y5M7Y5X6X5M8Y6等待等待M9=1M10Y7X10 已松开X7工进快退M8002M0X0启动M1Y0X1 已加紧M2X2Y1Y2M3Y2X3M4Y3X4M
30、5M6Y4 Y5M7Y5X6X5M8Y6等待等待M9=1M10Y7X10 已松开X7工进快退M7SETRSTM0X10X6X7M8M9M8M6M7SETSETSETRSTRSTRSTM10M10M7M8M6 X5SETRSTRSTM9M5M5M10M9M8002M0X0启动M1Y0X1 已加紧M2X2Y1Y2M3Y2X3M4Y3X4M5M6Y4 Y5M7Y5X6X5M8Y6等待等待M9=1M10Y7X10 已松开X7工进快退M2M3M2M1Y0夹紧Y2Y1M6M7M6M4Y3Y5Y4右侧工进右侧快进左侧快退左侧工进左侧快进M10M8Y6Y7END松开右侧快退 PLC大多用于开关量控制,基本指令
31、和步进指令已经能满足控制要求。为适应控制系统的其它控制要求(如模拟量控制等),PLC生产厂家就在小型PLC上增设了大量的功能指令(也称应用指令),功能指令的出现大大拓宽了PLC的应用范围,也给用户编制程序带来了极大方便。FX系列PLC有多达200多条功能指令。一一.应用指令的表示方法应用指令的表示方法1.1.助记符与操作数助记符与操作数 应用指令表示格式与基本指令不同。应用指令用编号FNC00FNC294表示,并给出对应的助记符(大多用英文名称或缩写表示)。例如FNC45的助记符是MEAN(平均),若使用简易编程器时键入FNC45,若采用智能编程器或在计算机上编程时也可键入助记符MEAN。有的
32、应用指令没有操作数,而大多数应用指令有1至4个操作数。例如一个数据块传送指令,它有三个操作数:S表示源操作数;D表示目标操作数,如果使用变址功能,则可表示为S和D。当源或目标不止一个时,用S1、S2、D1、D2表示。用n和m表示其它操作数,它们常用来表示常数K和H,或作为源和目标操作数的补充说明,当这样的操作数多时可用n1、n2和m1、m2等来表示。源操作数为D10D12,目标操作数为D20D22,K3表示有3个数,当X0接通时,执行的操作为D10D12D20D222.162.16位和位和3232位指令位指令 应用指令的指令段通常占1个程序步,16位操作数占2步,32位操作数占4步。应用指令可
33、处理16位数据或32位数据,处理32位数据的指令是在助记符前加“D”标志,无标志也可助记符前“B”为处理16位数据的指令,前例中X1接通D31D30D33D32。3.3.脉冲执行指令脉冲执行指令 应用指令有连续执行和脉冲执行两种类型。指令助记符MOV后面有“P”表示脉冲执行,即该指令仅在X1接通(由OFF到ON)时执行(将D10中的数据送到D12中)一次;如果没有“P”则表示连续执行,即该在X1接通(ON)的每一个扫描周期指令都要被执行。4.4.变址寄存器变址寄存器FX系列有16个变址寄存器V0V7和Z0Z7。变址寄存器V和Z用来修改操作对象的元件号。32位指令中,V为高16位,Z为低16位。
34、32位指令中V和Z自动组合使用,只需指定Z0就能代表V0和Z0的组合。X0,X1,X2均接通时,10V0,20Z1,(D5V0)+(D15Z1)(D40Z1),即(D15)+(D35)(D60)二、应用指令的数据格式二、应用指令的数据格式 X、Y、M、S等只处理ON/OFF信息的软元件称为位元件;而T、C、D等处理数值的软元件则称为字元件,一个字元件由16位二进制数组成。位元件可以通过组合使用,4个位元件为一个单元,通用表示方法是由Kn加起始的软元件号组成,n为单元数。例如K2 M0表示M0M7组成两个位元件组(K2表示2个单元),它是一个8位数据,M0为最低位。如果将16位数据传送到不足16
35、位的位元件组合(n4)时,只传送低位数据,多出的高位数据不传送,32位数据传送也一样。在作16位数操作时,参与操作的位元件不足16位时,高位的不足部分均作0处理,这意味着只能处理正数(符号位为0),在作32位数处理时也一样。被组合的元件首位元件可以任意选择,但为避免混乱,建议采用编号以0结尾的元件,如S10,X0,X20等。1 1位元件与字元件位元件与字元件三、程序流向控制类指令三、程序流向控制类指令(FNC00FN09)1 1条件跳转指令条件跳转指令条件跳转指令CJ(P)的编号为FNC00,操作数为指针标号P0P127,其中P63为END所在步序,不需标记。指针标号允许用变址寄存器修改。CJ
36、和CJP都占3个程序步,指针标号占1步。如图所示,当X20接通时,则由CJ P9指令跳到标号为P9的指令处开始执行,跳过了程序的一部分,减少了扫描周期。如果X20断开,跳转不会执行,则程序按原顺序执行。使用跳转指令时应注意:1)CJP指令表示为脉冲执行方式;2)在一个程序中一个标号只能出现一次,否则将出错;3)在跳转执行期间,即使被跳过程序的驱动条件改变,但其线圈(或结果)仍保持跳转前的状态,因为跳转期间根本没有执行这段程序。4)如果在跳转开始时定时器和计数器已在工作,则在跳转执行期间它们将停止工作,到跳转条件不满足后又继续工作。但对于正在工作的定时器T192T199和高速计数器C235C25
37、5不管有无跳转仍连续工作。5)若积算定时器和计数器的复位(RST)指令在跳转区外,即使它们的线圈被跳转,但对它们的复位仍然有效。2 2子程序调用与子程序返回指令子程序调用与子程序返回指令 子程序调用指令CALL的编号为FNC01。操作数为P0P127,此指令占用3个程序步。子程序返回指令SRET的编号为FNC02。无操作数,占用1个程序步。如图所示,如果X0接通,则转到标号P10处去执行子程序。当执行SRET指令时,返回到CALL指令的下一步执行。使用子程序调用与返回指令时应注意:1)转移标号不能重复,也不可与跳转指令的标号重复;2)子程序可以嵌套调用,最多可5级嵌套。中断指令与中断程序中断指
38、令与中断程序FX系列PLC的中断事件包括:输入中断、定时器中断、高速计数器中断。输入中断用来接收特定的输入地址号的输入信号3 3与中断有关的指令与中断有关的指令与中断有关的三条功能指令是:中断返回指令IRET,编号为FNCO3;中断允许指令EI,编号为FNCO4;中断禁止DI,编号为FNC05。它们均无操作数,占用1个程序步。PLC通常处于禁止中断状态,由EI和DI指令组成允许中断 范围。在执行到该区间,如有中断源产生中断,CPU将暂停主程序执行转而执行中断服务程序。当遇到IRET时返回断点继续执行主程序。如图所示,允许中断范围中若中断源X0有一个下降沿,则转入I000为标号的中断服务程序,但
39、X0可否引起中断还受M8050控制,当X20有效时则M8050控制X0无法中断。M8050通禁止执行中断。使用中断相关指令时应注意:1)中断的优先级排队如下,如果多个中断依次发生,则以发生先后为序,即发生越早级别越高,如果多个中断源同时发出信号,则中断指针号越小优先级越高;2)当M8050M8058为ON时,禁止执行相应I0I8的中断,M8059为ON时则禁止所有计数器中断;3)无需中断禁止时,可只用EI指令,不必用DI指令;4)执行一个中断服务程序时,如果在中断服务程序中有EI和DI,可实现二级中断嵌套,否则禁止其它中断。4 4主程序结束指令主程序结束指令主程序结束指令FEND的编号为FNC
40、06,无操作数,占用1个程序步。FEND表示主程序结束,当执行到FEND时,PLC进行输入/输出处理,监视定时器刷新,完成后返回启始步。使用FEND指令时应注意:1)子程序和中断服务程序应放在FEND之后;2)子程序和中断服务程序必须写在FEND和END之间,否则出错。5 5监视定时器指令监视定时器指令 监视定时器指令WDT(P)编号为FNC07,没有操作数,占有1个程序步。WDT指令的功能是对PLC的监视定时器进行刷新。FX系列PLC的监视定时器时间默认值为200ms(可用D8000来设定),正常情况下PLC扫描周期小于此定时时间。如果由于有外界干扰或程序本身的原因使扫描周期大于监视定时器的
41、设定值,使PLC的CPU出错灯亮并停止工作,可通过在适当位置加WDT指令复位监视定时器,以使程序能继续执行到END。如图所示,利用一个WDT指令将一个240ms的程序一分为二,使它们都小于200ms,则不再会出现报警停机。使用WDT指令时应注意:1)如果在后续的FOR-NEXT循环中,执行时间可能超过监控定时器的定时时间,可将WDT插入循环程序中。2)当与条件跳转指令CJ对应的指针标号在CJ指令之前时(即程序往回跳)就有可能连续反复跳步使它们之间的程序反复执行,使执行时间超过监控时间,可在CJ指令与对应标号之间插入WDT指令。6 6循环指令循环指令循环指令共有两条:循环区起点指令FOR,编号为
42、FNC08,占3个程序步;循环结束指令NEXT,编号为FNC09,占用1个程序步,无操作数。在程序运行时,位于FORNEXT间的程序反复执行n次(由操作数决定)后再继续执行后续程序。循环的次数n=132767。如果n=-327670之间,则当作n=1处理。如图所示为一个二重嵌套循环,外层A执行5次。每执行一次A循环就要执行10次循环B,循环B一共执行50次。使用循环指令时应注意:FOR和NEXT必须成对使用;2)FX2N系列PLC可循环嵌套5层;3)在循环中可利用CJ指令在循环没结束时跳出循环体;4)FOR应放在NEXT之前,NEXT应在FEND和END之前,否则均会出错。四、传送与比较类指令
43、四、传送与比较类指令(FNC10FNC19)1 1比较指令比较指令比较指令包括CMP(比较)和ZCP(区间比较)二条。(1)比较指令CMP (D)CMP(P)指令的编号为FNC10,是将源 操作数S1.和源操作数S2.的数据进行比较,比较结果用目标元件D.的状态来表示。如图所示,当X1为接通时,把常数100与C20的当前值进行比较,比较的结果送入M0M2中。X1为OFF时不执行,M0M2的状态也保持不变。(2)区间比较指令ZCP (D)ZCP(P)指令的编号为FNC11,指令执行时源操作数S.与S1.和S2.的内容进行比较,并比较结果送到目标操作数D.中。如图所示,当X0为ON时,把C30当前
44、值与K100和K120相比较,将结果送M3、M4、M5中。X0为OFF,则ZCP不执行,M3、M4、M5不变。使用比较指令CMP/ZCP时应注意:1)S1.、S2.可取任意数据格式,目标操作数D.可取Y、M和S;2)使用ZCP时,S2.的数值不能小于S1.;3)所有的源数据都被看成二进制值处理.2 2传送类指令传送类指令(1)传送指令MOV (D)MOV(P)指令的编号为FNC12,该指令的功能是将源数据传送到指定的目标。如图所示,当X0为ON时,则将S.中的数据K100传送到目标操作元件D.即D10中。在指令执行时,常数K100会自动转换成二进制数。当X0为OFF时,则指令不执行,数据保持不
45、变。使用应用MOV指令时应注意:1)源操作数可取所有数据类型,标操作数可以是KnY、KnM、KnS、T、C、D、V、Z。2)16位运算时占5个程序步,32位运算时则占9个程序步。(2)移位传送指令SMOV SMOV(P)指令的编号为FNC13。该指令的功能是将源数据(二进制)自动转换成4位BCD码,再进行移位传送,传送后的目标操作数元件的BCD码自动转换成二进制数。如图所示,当X1为ON时,将D1中右起第4位(m1=4)开始的2位(m2=2)BCD码移到目标操作数D2的右起第3位(n=3)和第2位。然后D2中的BCD码会自动转换为二进制数,而D2中的第1位和第4位BCD码不变。使用移位传送指令
46、时应该注意:1)源操作数可取所有数据类型,目标操作数可为KnY、KnM、KnS、T、C、D、V、Z。2)SMOV指令只有16位运算,占11个程序步。(3)块传送指令BMOV BMOV(P)指令的ALCE编号为FNC15,是将源操作数指定元件开始的n个数据组成数据块传送到指定的目标。如图所示,传送顺序既可从高元件号开始,也可从低元件号开始,传送顺序自动决定。若用到需要指定位数的位元件,则源操作数和目标操作数的指定位数应相同。使用块传送指令时应注意:1)源操作数可取KnX、KnY、KnM、KnS、T、C、D和文件寄 存器,目标操作数可取.KnT、KnM、KnS、T、C和D;2)只有16位操作,占7
47、个程序步;3)如果元件号超出允许范围,数据则仅传送到允许范围的元件。五、算术和逻辑运算类指令五、算术和逻辑运算类指令 1 1算术运算指令算术运算指令(1)加法指令ADD (D)ADD(P)指令的编号为FNC20。它是将指定的源元件中的二进制数相加结果送到指定的目标元件中去。如图所示,当X0为ON时,执行(D10)+(D12)(D14)。(2)减法指令SUB (D)SUB(P)指令的编号为FNC21。它是将S1.指定元件中的内容以二进制形式减去S2.指定元件的内容,其结果存入由D.指定的元件中。如图所示,当X0为ON时,执行(D10)(D12)(D14)。使用加法和减法指令时应该注意:1)操作数
48、可取所有数据类型,目标操作数可取KnY、KnM、KnS、T、C、D、V和Z。2)16位运算占7个程序步,32位运算占13个程序步。3)数据为有符号二进制数,最高位为符号位(0为正,1为负)。4)加法指令有三个标志:零标志(M8020)、借位标志(M8021)和进位标志(M8022)。当运算结果超过32767(16位运算)或2147483647(32位运算)则进位标志置1;当运算结果小于-32767(16位运算)或-2147483647(32位运算),借位标志就会置1。2 2逻辑辑运算类指令逻辑辑运算类指令(1)逻辑与指令WAND (D)WAND(P)指令的编号为FNC26。是将两个源操作数按位
49、进行与操作,结果送指定元件。(2)逻辑或指令WOR (D)WOR(P)指令的编号为FNC27。它是对二个源操作数按位进行或运算,结果送指定元件。如图所示,当X1有效时,(D10)(D12)(D14)WAND、WOR、WXOR和NEG指令的使用如图所示。(3)逻辑异或指令WXOR (D)WXOR(P)指令的编号为FNC28。它是对源操作数位进行逻辑异或运算。(4)求补指令NEG (D)NEG(P)指令的编号为FNC29。其功能是将D.指定的元件内容的各位先取反再加1,将其结果再存入原来的元件中。WXOR和NEG指令的使用如图所示。使用逻辑运算指令时应该注意:1)WAND、WOR和WXOR指令的S
50、1.和S2.均可取所有的数据类型,而目标操作数可取KnY、KnM、KnS、T、C、D、V和Z。2)NEG指令只有目标操作数,其可取KnY、KnM、KnS、T、C、D、V和Z。3)WAND、WOR、WXOR指令16位运算占7个程序步,32位为13个程序步,而NEG分别占3步和5步。六、循环与移位类指令六、循环与移位类指令1 1循环移位指令循环移位指令右、左循环移位指令(D)ROR(P)和(D)ROL(P)编号分别为FNC30和FNC31。执行这两条指令时,各位数据向右(或向左)循环移动n位,最后一次移出来的那一位同时存入进位标志M8022中,如图所示。2 2带进位的循环移位指令带进位的循环移位指