1、 PLC的基本原理及组成一、工作方式一、工作方式 周期循环扫描周期循环扫描二、工作过程二、工作过程自诊断、输入采样、程序扫描、输出刷新自诊断、输入采样、程序扫描、输出刷新几个外阶段。几个外阶段。三、扫描周期三、扫描周期 T=T=自检时间自检时间+读入一点时间读入一点时间输入点数输入点数+程序步数程序步数运运算速度算速度+输出一点时间输出一点时间输出点数。输出点数。第一节第一节 PLCPLC的基本原理的基本原理PLC的工作过程示意图的工作过程示意图输 入 处 理程 序 处 理输 出 处 理输输入入端端子子输输入入映映像像寄寄存存器器执执行行用用户户程程序序输输出出端端子子输输出出映映像像寄寄存存
2、器器输输入入信信号号输输出出信信号号内内部部存存储储器器刷刷新新输输入入端端子子输输入入映映像像寄寄存存器器执执行行用用户户程程序序输输出出端端子子输输出出映映像像寄寄存存器器输输入入信信号号输输出出信信号号内内部部存存储储器器刷刷新新输 入 处 理程 序 处 理输 出 处 理输输入入端端子子输输入入映映像像寄寄存存器器执执行行用用户户程程序序输输出出端端子子输输出出映映像像寄寄存存器器输输入入信信号号输输出出信信号号内内部部存存储储器器刷刷新新输输入入端端子子输输入入映映像像寄寄存存器器执执行行用用户户程程序序输输出出端端子子输输出出映映像像寄寄存存器器输输入入信信号号输输出出信信号号内内部
3、部存存储储器器刷刷新新一、一、PLC硬件系统组成硬件系统组成外部设备现场用户输出设备微处理器(CPU)运算器控制器输出部件输入部件系统存储器用户存储器I/O扩展接口通讯及编程接口编程设备计算机打印机等传感器按钮、开关现场信号电磁阀中间继电器执行器现场用户输入设备扩展设备扩展单元通讯模块功能模块电源变换器110V/220V市电PLC基本单元基本单元PLC系统结构示意图系统结构示意图第二节第二节 PLCPLC的组成的组成v微处理器(微处理器(CPUCPU)接收并存储用户程序和数据;接收并存储用户程序和数据;诊断电源、诊断电源、PLCPLC工作状态及编程的语法错误;工作状态及编程的语法错误;接收输入
4、信号,送入数据寄存器并保存;接收输入信号,送入数据寄存器并保存;运行时顺序读取、解释、执行用户程序,完成用户运行时顺序读取、解释、执行用户程序,完成用户 程序的各种操作;程序的各种操作;将用户程序的执行结果送至输出端。将用户程序的执行结果送至输出端。v系统存储器(系统存储器(EPROM)EPROM)系统程序存储器系统程序存储器+系统数系统数据存储器据存储器存放系统工作程序(监控程序);存放系统工作程序(监控程序);存放模块化应用功能子程序;存放模块化应用功能子程序;存放命令解释程序;存放命令解释程序;存放功能子程序的调用管理程序;存放功能子程序的调用管理程序;存放存储系统参数。存放存储系统参数
5、。v用户存储器用户存储器RAM存放用户工作程序存放用户工作程序;存放工作数据。存放工作数据。v输入单元输入单元带光电隔离电路带光电隔离电路多种辅助电源类型:多种辅助电源类型:ACAC电源电源DC24VDC24V输入输入 DCDC电源电源DC24VDC24V输入输入 DCDC电源电源DC12VDC12V输入输入接收开关量及数字量信号(数字量输入单元);接收开关量及数字量信号(数字量输入单元);接收模拟量信号(模拟量输入单元)接收模拟量信号(模拟量输入单元);接收按钮或开关命令(数字量输入单元);接收按钮或开关命令(数字量输入单元);接收传感器输出信号。接收传感器输出信号。v输出单元输出单元带光电
6、隔离器及滤波器带光电隔离器及滤波器多种输出方式多种输出方式:晶体管:晶体管 晶闸管晶闸管 继电器继电器驱动直流负载(晶体管输出单元);驱动直流负载(晶体管输出单元);驱动非频繁动作的交驱动非频繁动作的交/直流负载(继电器输出单元);直流负载(继电器输出单元);驱动频繁动作的交驱动频繁动作的交/直流负载(晶闸管输出单元)。直流负载(晶闸管输出单元)。v通讯及编程接口通讯及编程接口采用采用RS-485RS-485或或RS-422RS-422串行总线串行总线连接专用编程器(连接专用编程器(FX-20PFX-20P、FX-10PFX-10P);连接个人电脑(连接个人电脑(PCPC),),实现编程及在线
7、监控;实现编程及在线监控;连接工控机连接工控机,实现编程及在线监控;实现编程及在线监控;连接网络设备(如调制解调器),实现远程通讯;连接网络设备(如调制解调器),实现远程通讯;连接打印机等计算机外设。连接打印机等计算机外设。vI/OI/O扩展接口扩展接口采用并行通讯方式采用并行通讯方式扩展扩展I/OI/O模块模块;扩展位置控制模块(如扩展位置控制模块(如F2-30GMF2-30GM););扩展通讯模块(如扩展通讯模块(如FX-232AWFX-232AW等);等);扩展模拟量控制模块(如扩展模拟量控制模块(如FX-2DAFX-2DA、FX-4ADFX-4AD等)。等)。二、二、PLC软件系统组成
8、软件系统组成系统监控程序系统监控程序 运行管理运行管理 生成用户元件生成用户元件系统内部自检系统内部自检管理程序管理程序 解释程序解释程序标准程序模块、系统调用标准程序模块、系统调用用户程序用户程序自动化系统控制程序自动化系统控制程序数据表格数据表格软件系统软件系统三、数据结构三、数据结构v十进制数(十进制数(DEC:DECimal number),),常用于:常用于:定时器定时器/计数器的设定值;计数器的设定值;辅助继电器(辅助继电器(M)、)、定时器(定时器(T)、)、计数器(计数器(C)、)、状状态(态(S)等软元件的地址号;等软元件的地址号;应用指令的数值型操作数及指令动作常数(应用指
9、令的数值型操作数及指令动作常数(K)。)。v十六进制数(十六进制数(HEX:HEXdecimal number)与十进制数一样,用于指定应用指令的数值型操作与十进制数一样,用于指定应用指令的数值型操作数及指令动作常数(数及指令动作常数(H)。)。三、数据结构三、数据结构v二进制数(二进制数(BIN:BINary number)PLC内部数据类型,通过外设进行监视时,各软元件内部数据类型,通过外设进行监视时,各软元件的数值自动变换为十进制数或十六进制数。的数值自动变换为十进制数或十六进制数。v八进制数(八进制数(OCT:OCTal number)用于输入继电用于输入继电器和输出继电器的软元件编号
10、。器和输出继电器的软元件编号。输入继电器用输入继电器用X00X07、X10X17、X20X27等八进制等八进制格式进行编号;格式进行编号;输出继电器用输出继电器用Y00Y07、Y10Y17、Y20Y27等八进制等八进制格式进行编号。格式进行编号。三、数据结构三、数据结构vBCD码(码(BCD:BINary Code Decimal)用二进用二进制形式表示的十进制数,常采用制形式表示的十进制数,常采用8421BCD码。码。常用常用BCD码编码开关码编码开关将将BCD码数据送入码数据送入PLC;PLC常以常以BCD码格式将输出数据送数码显示器显示。码格式将输出数据送数码显示器显示。v浮点数据(标绘
11、值)浮点数据(标绘值)二进制浮点数常用于高精度浮点运算;二进制浮点数常用于高精度浮点运算;十进制浮点数用于实施监视。十进制浮点数用于实施监视。v输入继电器(输入继电器(X)在在PLCPLC内部,与输入端子相连的输入继电器是光电隔离的电子继内部,与输入端子相连的输入继电器是光电隔离的电子继电器,采用电器,采用八进制八进制编号,用无数个常开和常闭触点。编号,用无数个常开和常闭触点。输入继电器不能用程序驱动输入继电器不能用程序驱动。五、软元件(逻辑元件)五、软元件(逻辑元件)Y0COMX0X0COM1Y0X0X1Y0Y0Y0X0X0常开触点常开触点常闭触点常闭触点输入信号输入信号输入端子输入端子梯形
12、图梯形图电源电源公共端公共端输入继电器输入继电器输出继电器输出继电器公共端公共端输出端子输出端子输出负载输出负载Y0COMX0X0COM1Y0X0X1Y0Y0Y0X0X0常开触点常开触点常闭触点常闭触点输入信号输入信号输入端子输入端子梯形图梯形图电源电源公共端公共端输入继电器输入继电器输出继电器输出继电器公共端公共端输出端子输出端子输出负载输出负载v输出继电器(输出继电器(Y)输出继电器采用输出继电器采用八进制八进制编号,有内部触点和外部输出触编号,有内部触点和外部输出触点(继电器触点、双向可控硅、晶体管等输出元件)之点(继电器触点、双向可控硅、晶体管等输出元件)之分,由程序驱动。分,由程序驱
13、动。在在PLCPLC内部,外部输出触点与输出端子相连,向外部负内部,外部输出触点与输出端子相连,向外部负载输出信号,且一个输出继电器只有一个常开型外部输载输出信号,且一个输出继电器只有一个常开型外部输出触点。出触点。输出继电器有无数个内部常开和常闭触点,编程时可随输出继电器有无数个内部常开和常闭触点,编程时可随意使用。意使用。四、软元件(逻辑元件)四、软元件(逻辑元件)v辅助继电器(辅助继电器(M)由内部软元件的触点驱动由内部软元件的触点驱动,常开和常闭触点使用次数不常开和常闭触点使用次数不限,但不能直接驱动外部负载限,但不能直接驱动外部负载,采用采用十进制十进制编号。编号。通用辅助继电器通用
14、辅助继电器M0M0M499M499(500500点)点)掉电保持辅助继电器掉电保持辅助继电器M500M500M1023M1023(524524点)点)特殊辅助继电器特殊辅助继电器M8000M8000M8255M8255(256256点)点)只能利用其触点的特殊辅助继电器只能利用其触点的特殊辅助继电器可驱动线圈的特殊辅助继电器可驱动线圈的特殊辅助继电器通用辅助继电器与掉电保持用辅助继电器的比例,可通过外设设定参数进行调整。四、软元件(逻辑元件)四、软元件(逻辑元件)&只能利用其触点的特殊辅助继电器只能利用其触点的特殊辅助继电器1M8000M8000:运行监控用,运行监控用,PLCPLC运行时运行
15、时M8000M8000接通。接通。1M8002M8002:仅在运行开始瞬间接通的初始脉冲特殊辅助仅在运行开始瞬间接通的初始脉冲特殊辅助继电器。继电器。1M8012M8012:产生产生100ms100ms时钟脉冲的特殊辅助继电器。时钟脉冲的特殊辅助继电器。&可驱动线圈的特殊辅助继电器可驱动线圈的特殊辅助继电器1M8030M8030:锂电池电压指示灯特殊继电器。锂电池电压指示灯特殊继电器。1M8033M8033:PLCPLC停止时输出保持特殊辅助继电器。停止时输出保持特殊辅助继电器。1M8034M8034:止全部输出特殊辅助继电器。止全部输出特殊辅助继电器。1M8039M8039:时扫描特殊辅助继
16、电器。时扫描特殊辅助继电器。v状态(状态(S)状态是对工序状态是对工序步进型步进型控制进行简易编程的内部软元件,控制进行简易编程的内部软元件,采用采用十进制十进制编号。与步进指令编号。与步进指令STLSTL配合使用;配合使用;状态有无数个常开触点与常闭触点,编程时可随意使用;状态有无数个常开触点与常闭触点,编程时可随意使用;状态不用于步进阶梯指令时,可作辅助继电器使用。状态不用于步进阶梯指令时,可作辅助继电器使用。状态同样有通用状态和掉电保持用状态,其比例分配可状态同样有通用状态和掉电保持用状态,其比例分配可由外设设定。由外设设定。四、软元件(逻辑元件)四、软元件(逻辑元件)v状态(状态(S)
17、状态有状态有五种五种类型:类型:初始状态初始状态S0S0S9S9共共1010点点回零状态回零状态S10S10S19S19共共1010点点通用状态通用状态S20S20S499S499共共480480点点保持状态保持状态S500S500S899S899共共400400点点报警用状态报警用状态S900S900S999S999共共100100点点 四、软元件(逻辑元件)四、软元件(逻辑元件)v 定时器(定时器(T)定时器实际是内部脉冲计数器,可对内部定时器实际是内部脉冲计数器,可对内部1ms1ms、10ms10ms和和100ms100ms时钟脉冲进行加计数,当达到用户设定值时,触点动作。时钟脉冲进行加
18、计数,当达到用户设定值时,触点动作。定时器可以用用户程序存储器内的常数定时器可以用用户程序存储器内的常数k k或或H H作为设定值,也作为设定值,也可以用数据寄存器可以用数据寄存器D D的内容作为设定值。的内容作为设定值。普通定时器(普通定时器(T0T0T245T245)100ms100ms定时器定时器T0T0T199T199共共200200点,设定范围点,设定范围0.10.13276.7s3276.7s;10ms10ms定时器定时器T200T200T245T245共共4646点,设定范围点,设定范围0.010.01327.67s327.67s。积算定时器(积算定时器(T246T246T255
19、T255)1ms1ms定时器定时器T246T246T249T249共共4 4点,设定范围点,设定范围0.0010.00132.767s32.767s;100ms100ms定时器定时器T250T250T255T255共共6 6点,设定范围为点,设定范围为0.10.13276.7s3276.7s。四、软元件(逻辑元件)四、软元件(逻辑元件)X0T10当前值Y1设定值加法计数器加法计数器设定值设定值K、H或或D触点动作触点动作TxTx时钟脉冲时钟脉冲驱动驱动T10K123X0T10Y1相等相等比较器比较器普通定时器的工作原理普通定时器的工作原理T10T10T250T250设定值K计数器计数器1100
20、ms时钟脉冲X2X1触点动作触点动作Tx相等相等比较器比较器积算定时器的工作原理积算定时器的工作原理X1X2Y1T250当前值设定值RSTT250K345X1X2T250Y1T250v计数器(计数器(C)计数器可分为通用计数器和高速计数器。计数器可分为通用计数器和高速计数器。16位通用加计数器,位通用加计数器,C0C199共共200点,设定值:点,设定值:132767。设定值。设定值K0与与K1含义相同,即在第一次计数时,含义相同,即在第一次计数时,其输出触点动作。其输出触点动作。32位通用加位通用加/减计数器,减计数器,C200C234共共135点,设定值:点,设定值:-2147483648
21、+2147483647。高速计数器高速计数器C235C255共共21点,共享点,共享PLC上上6个高速计个高速计数器输入(数器输入(X000X005)。)。高速计数器按中断原则运高速计数器按中断原则运行。行。四、软元件(逻辑元件)四、软元件(逻辑元件)&16位加计数器位加计数器1通用型:通用型:C0C99共共100点点 1断电保持型:断电保持型:C100C199共共100点点 16位计数器工作过程示意图位计数器工作过程示意图RSTC0C0K10Y0012345678910X10X11Y0C0当前值设定值也可以间接设定X10X11C0&3232位双向计数器位双向计数器1有两种有两种32位加位加/
22、减计数器,设定值:减计数器,设定值:-2147483648+2147483647。通用计数器:通用计数器:C200C219共共20点点保持计数器:保持计数器:C220C234共共15点点 1计数方向由特殊辅助继电器计数方向由特殊辅助继电器M8200M8234设定。设定。1加减计数方式设定:对于加减计数方式设定:对于C,当,当M8接通(置接通(置1)时,为减计数器,断开(置)时,为减计数器,断开(置0)时,为)时,为加计数器。加计数器。1计数值设定:直接用常数计数值设定:直接用常数K或间接用数据寄存器或间接用数据寄存器D的内容作为计数值。间接设定时,要用元件号紧连的内容作为计数值。间接设定时,要
23、用元件号紧连在一起的两个数据寄存器。在一起的两个数据寄存器。X12X13X14C200M8200C200Y1RSTC200K-5设定值也可以间接设定01234501234-8-7-6-5-4-3-2-1-7-6-5-4-3C200当前值X12X13X14上升下降上升若输出已经接通Y1032位加位加/减计数器工作过程示意图减计数器工作过程示意图v数据寄存器(数据寄存器(D)通用数据寄存器通用数据寄存器D0D199共共200点。点。只要不写入其只要不写入其它数据,已写入的数据不会变化。但是它数据,已写入的数据不会变化。但是PLC状态由状态由运行运行停止时,全部数据均清零。停止时,全部数据均清零。断
24、电保持数据寄存器断电保持数据寄存器D200D511共共312点,只要不改点,只要不改写,原有数据不会丢失。写,原有数据不会丢失。特殊数据寄存器特殊数据寄存器D8000D8255共共256点点 这些数据寄这些数据寄存器供监视存器供监视PLC中各种元件的运行方式用。中各种元件的运行方式用。文件寄存器文件寄存器D1000D2999共共2000点。点。四、软元件(逻辑元件)四、软元件(逻辑元件)v变址寄存器(变址寄存器(V/Z)变址寄存器的作用类似于一般微处理器中的变址寄变址寄存器的作用类似于一般微处理器中的变址寄存器(如存器(如Z80中的中的IX、IY),),通常用于修改元件的通常用于修改元件的编号
25、。编号。V0V7、Z0Z7共共16点点16位位变址数据寄存器。变址数据寄存器。进行进行32位位运算时,与指定运算时,与指定Z0Z7的的V0V7组合,分组合,分别成为别成为(V0、Z0),(),(V1、Z1)(V7、Z7)。)。四、软元件(逻辑元件)四、软元件(逻辑元件)OMRON公司C系列P型机 主要内部器件 1、输入输出继电器 2、内部辅助继电器 3、特殊继电器 4、保持继电器 5、定时器 6、计数器 7、数据存储器P型机指令系统型机指令系统 与一般的计算机语言相比,与一般的计算机语言相比,PLC的编程语言,具有的编程语言,具有明显的特点。它既不同与高级语言,也不同于汇编语明显的特点。它既不
26、同与高级语言,也不同于汇编语言。言。PLC的主要用户是工程技术人员,应用场合是工的主要用户是工程技术人员,应用场合是工业过程。因此,业过程。因此,PLC的编程语言简单,易于编写和调的编程语言简单,易于编写和调试,但应用范围比较窄。试,但应用范围比较窄。目前,各个目前,各个PLC的生产厂家使用的语言互不兼容。的生产厂家使用的语言互不兼容。常用的常用的PLC使用的编程语言有梯形图语言、助记符语使用的编程语言有梯形图语言、助记符语言和计算机高级语言,一般的小型机多使用多使用言和计算机高级语言,一般的小型机多使用多使用梯梯形图语言形图语言或或指令助记符语言指令助记符语言。梯形图语言梯形图语言 梯形图语
27、言是一种图形语言,它是以继电器控制系梯形图语言是一种图形语言,它是以继电器控制系统的电气原理图为基础演变而来的。它沿用了传统的统的电气原理图为基础演变而来的。它沿用了传统的继电器控制中的触点、线圈、串并联等术语和图形符继电器控制中的触点、线圈、串并联等术语和图形符号还加进了许多功能强、使用灵活的指令,使得编程号还加进了许多功能强、使用灵活的指令,使得编程更加容易。更加容易。梯形图语言比较形象、直观,对于熟悉继电器控制梯形图语言比较形象、直观,对于熟悉继电器控制系统的人来说,容易接受。世界上各个系统的人来说,容易接受。世界上各个PLC的生产厂的生产厂家都把梯形图语言作为第一用户编程语言。家都把梯
28、形图语言作为第一用户编程语言。1.1.梯形图的语言格式:梯形图的语言格式:(1 1)梯形图的左边为起始母线,右边为结束母线。)梯形图的左边为起始母线,右边为结束母线。右边结束母线可省略不画。梯形图按从左到右边结束母线可省略不画。梯形图按从左到 右、从上到下的顺序排列,每个继电器线圈右、从上到下的顺序排列,每个继电器线圈 为一个逻辑行,最后是线圈输出,整个图形为一个逻辑行,最后是线圈输出,整个图形 呈阶梯型。呈阶梯型。(2 2)梯形图中的接点(对应触头)有两种:)梯形图中的接点(对应触头)有两种:常开(常开()和和 常闭(常闭()不同的继电器用不同的寄存器编号表示。梯不同的继电器用不同的寄存器编
29、号表示。梯 形图的每个逻辑行必须是触点与母线相连。形图的每个逻辑行必须是触点与母线相连。(4 4)继电器触点作为输入元素可使用无数次,用线)继电器触点作为输入元素可使用无数次,用线 圈驱动的触点可多次用作输入,既可用动合触圈驱动的触点可多次用作输入,既可用动合触 点,又可用动断触点,点,又可用动断触点,(3)输出继电器用输出继电器用 表示,表示,并标出相并标出相 应的应的I/OI/O寄存器编号,输出寄存器只能输出一寄存器编号,输出寄存器只能输出一 次,次,输出前面必须有接点。输出前面必须有接点。1 1:LD LD 取指令取指令2 2:LD NOT LD NOT 取反指令取反指令3 3:AND
30、AND 与指令与指令4 4:AND NOT AND NOT 与反指令与反指令5 5:OUT OUT 输出指令输出指令6 6:OUT NOT OUT NOT 输反指令输反指令7 7:OR OR 或指令或指令8 8;OR NOT OR NOT 或反指令或反指令9 9:AND LD AND LD 块与指令块与指令1010:OR LD OR LD 块或指令块或指令1 11 1:ENDEND(0101)结束指令结束指令三、三、基本指令基本指令格式格式:LD B LD B 符号符号:B B:操作对象。该指令可以使用的继电器区为:操作对象。该指令可以使用的继电器区为IRIR、SRSR、HRHR、ARAR、L
31、RLR、TCTC、TRTR区区(DMDM区不可区不可)。功能:功能:指定一个逻辑开始,指定一个逻辑开始,将将B B的的内容存入结果寄存器内容存入结果寄存器R R中,而结果寄存器中,而结果寄存器R R中的原内容存入堆栈寄存器中的原内容存入堆栈寄存器S S中。中。B结果寄存器R堆栈寄存器S返回1.1.LD LD 取指令取指令格式:格式:LD NOT B LD NOT B 符号:符号:B B:操作对象。:操作对象。该指令可以使用的继电器区为该指令可以使用的继电器区为IRIR、SRSR、HRHR、ARAR、LRLR、TCTC、TRTR区区(DMDM区不可区不可)。功能:指定一个逻辑功能:指定一个逻辑开
32、始开始,将,将B B的内容取反后存入结果寄存的内容取反后存入结果寄存器器R R中,而结果寄存器中,而结果寄存器R R中的原内容存入堆栈寄存器中的原内容存入堆栈寄存器S S中。中。BRS取反2.2.LD NOT LD NOT 指令指令返回地 址指令助记符数 据00000LD0000000001OUT1000000002LD NOT0000100003OUT10001LDLD和和LD NOTLD NOT指令的使用指令的使用00000100000000110001格式:格式:AND B AND B 符号:符号:B B:操作对象。该指令可以使用的继电器区为:操作对象。该指令可以使用的继电器区为IRIR
33、、SRSR、HRHR、ARAR、LRLR、TCTC区(区(DM,TRDM,TR不可不可)。)。功能:将功能:将B B的内容与结果寄存器的内容与结果寄存器R R的内容进行逻辑与操作,的内容进行逻辑与操作,并将结果存入结果寄存器并将结果存入结果寄存器R R中。中。BR与运算R3 3、AND AND 与指令与指令返回格式:格式:AND NOT B AND NOT B 符号:符号:B B:操作对象。该指令可以使用的继电器区为:操作对象。该指令可以使用的继电器区为IRIR、SRSR、HRHR、ARAR、LRLR、TCTC区区 。功能:将功能:将B B的内容取反后与结果寄存器的内容取反后与结果寄存器R R
34、的内容进行逻辑的内容进行逻辑与操作,并将结果存入结果寄存器与操作,并将结果存入结果寄存器R R中。中。B B取反取反R R与与运算运算R R4.4.AND NOT AND NOT 与反指令与反指令返回地 址指令助记符数 据00000LD0000100001AND NOT0000300002OUT1000000003LD NOT0000200004AND0000400005OUT10001ANDAND和和AND NOTAND NOT指令的用法指令的用法000010000310000000020000410001 B B:操作对象。该指令可以使用的继电器区为:操作对象。该指令可以使用的继电器区为I
35、RIR、SRSR、HRHR、ARAR、LRLR、TCTC区区 。功能:将功能:将B B的内容与结果寄存器的内容与结果寄存器R R的内容进行逻辑或操作,的内容进行逻辑或操作,并将结果存入结果寄存器并将结果存入结果寄存器R R中。中。B BR R或或运算运算R R格式:格式:OR BOR B符号:符号:7.OR 7.OR 或指令或指令返回格式:格式:OR NOT B OR NOT B 符号符号:B B:操作对象。该指令可以使用的继电器区为:操作对象。该指令可以使用的继电器区为IRIR、SRSR、HRHR、ARAR、LRLR、TCTC区区 。功能:将功能:将B B的内容取反后与结果寄存器的内容取反后
36、与结果寄存器R R的内容进行逻辑的内容进行逻辑或操作,并将结果存入结果寄存器或操作,并将结果存入结果寄存器R R中。中。B B取反取反R R或或运算运算R R8 8、OR NOT OR NOT 或反指令或反指令返回OROR和和OR NOTOR NOT指令的用法指令的用法指令助记符数 据LD NOT00000OR00001OR NOT00002AND00003OUT100030000010003000010000200003格式:格式:AND LD AND LD 符号:符号:功能:用于逻辑块的串联连接。将堆栈寄存器功能:用于逻辑块的串联连接。将堆栈寄存器S S的内容与结果的内容与结果寄存器寄存器
37、R R的内容进行逻辑与操作,并将结果存入结果寄存器的内容进行逻辑与操作,并将结果存入结果寄存器R R中。中。RS与与运算运算R9.AND LD 9.AND LD 块与指令块与指令返回例例3-23-2:AND LDAND LD的使用的使用的用法的用法LD00000OR00001LD00002OR NOT00003AND LDOUT100000000010000000010000300002程序块程序块LD 00001LD 00001OR NOT 00003OR NOT 00003LD NOT 00002LD NOT 00002OR 00004OR 00004AND LDAND LDLD LD 0
38、0000 00000 OR NOT OR NOT 0000100001AND LDAND LDOUT OUT 01001 01001返回关键是对堆栈寄存器关键是对堆栈寄存器S S中的理解,其操作原则是先入后出。中的理解,其操作原则是先入后出。格式:格式:OR LD OR LD 符号:符号:功能:用于逻辑块的并联连接。将堆栈寄存器功能:用于逻辑块的并联连接。将堆栈寄存器S S的内容与结的内容与结果寄存器果寄存器R R的内容进行逻辑或操作,并将结果存入结果寄存器的内容进行逻辑或操作,并将结果存入结果寄存器R R中。中。RS或或运算运算R10.OR LD 10.OR LD 块或指令块或指令返回LD0
39、0000AND00002LD00001AND NOT00003OR LDOUT100000000010000000010000300002程序块程序块例:例:OROR LD LD的使用的使用LD 00001LD 00001AND NOT 00002AND NOT 00002LD NOT 00003LD NOT 00003AND 00004AND 00004LD NOT 00001LD NOT 00001AND 00006AND 00006OR LD OR LD OR LDOR LDOUT 01001OUT 01001 返回格式:格式:OUT B OUT B 符号:符号:B:操作对象。该指令可以
40、使用的继电器区为操作对象。该指令可以使用的继电器区为IRIR、HRHR、TRTR区(除了区(除了IRIR区中已作为输入通道的位)。区中已作为输入通道的位)。功能:将结果寄存器功能:将结果寄存器R R的内容输出到指定位的内容输出到指定位B B。R RB B5.OUT 5.OUT 指令指令返回格式:格式:OUT ONT B OUT ONT B 符号:符号:B B:操作对象。该指令可以使用的继电器区为:操作对象。该指令可以使用的继电器区为IRIR、HRHR、TCTC区(除了区(除了IRIR区中已作为输入通道的位)。区中已作为输入通道的位)。功能:将结果寄存器功能:将结果寄存器R R的内容取反后输出到
41、指定位的内容取反后输出到指定位B B。R RB B取反取反6.OUT ONT 6.OUT ONT 指令指令返回功能:表示程序结束,功能:表示程序结束,ENDEND指令后的程序将不会被执行。指令后的程序将不会被执行。括号中的括号中的0101为此指令的功能码,这表示用编程器为此指令的功能码,这表示用编程器输入输入ENDEND指令时要用指令时要用FUNFUN键加数字键加数字0101,以下类推。,以下类推。格式:格式:END END 符号:符号:END(01)7 7.END(01).END(01)程序结束指令程序结束指令返回例:输入输出基本指令的使用例:输入输出基本指令的使用 LD 00000LD 0
42、0000OUT 01000OUT 01000OUT NOT 01001OUT NOT 01001LD NOT LD NOT 0000100001OUT 01002OUT 01002 返回C C系列系列P P型机的特殊功能指令型机的特殊功能指令(1)(1)分支指令和分支结束指令分支指令和分支结束指令 a.ILa.IL前面的条件为前面的条件为ONON时,时,IL-ILCIL-ILC之间的程序正常执行。之间的程序正常执行。ILIL前面的条件为前面的条件为OFFOFF时,时,IL-ILCIL-ILC之间的程序不执行。此时,两指之间的程序不执行。此时,两指令间所有输出位被关断,所有定时器被复位,所有计数
43、器、移令间所有输出位被关断,所有定时器被复位,所有计数器、移位寄存器、保持继电器不发生变化。位寄存器、保持继电器不发生变化。ILIL(0202)/ILC/ILC(0303)()(指令后的小括号内的数,指令后的小括号内的数,表示它的指令代号)。表示它的指令代号)。ILIL(0202)总是和总是和ILCILC(0303)一起一起使用,分别位于一段分支程序的首尾处。使用,分别位于一段分支程序的首尾处。几点注意:几点注意:b.b.分支指令分支指令ILIL可以实现程序分支,用于工作方式的切换,可以实现程序分支,用于工作方式的切换,与与LDLD指令连用,作为支路的开始,分支结束指令指令连用,作为支路的开始
44、,分支结束指令ILCILC作为支路作为支路返回信号,返回信号,IL-ILCIL-ILC指令成对使用。指令成对使用。C.C.分支不允许嵌套(如分支不允许嵌套(如IL-IL-ILC-ILCIL-IL-ILC-ILC),),但允许不成但允许不成对出现(对出现(IL-IL-ILCIL-IL-ILC)。)。在程序中使用在程序中使用IL-IL-ILCIL-IL-ILC后,程序后,程序检查时,认为出错,编程器上会显示检查时,认为出错,编程器上会显示“IL-ILC-ERR”IL-ILC-ERR”,但但不影响执行。不影响执行。ILIL和和ILCILC的应用举例的应用举例 00004ILC(01)00001000
45、000000200200000030020100202IL 02地址地址指令指令数据数据00000LD0000000001IL(02)00002LD0000100003AND0000200004OUT0020000005LD0000300006OUT0020100007LDNOT0000400008OUT0020200009ILC(03)(2)(2)暂存指令暂存指令:TRTR 暂存继电器暂存继电器TR0-TR7TR0-TR7用于暂存中间逻辑结果,记录程序分支点的用于暂存中间逻辑结果,记录程序分支点的状态。暂存指令状态。暂存指令TRTR的使用,只是为了方便编程,对程序的执行不产的使用,只是为了方
46、便编程,对程序的执行不产生影响。同一个暂存器在一个程序段中只能使用一次,在不同的程生影响。同一个暂存器在一个程序段中只能使用一次,在不同的程序段中,可重复使用。序段中,可重复使用。0000300201002020000400001TR10000400203000000000200200TR0指令指令数据数据00000LD0000000001OUTTR000002AND0000200003OUT0020000004LDTR000005AND0000300006OUT0020100007LDTR000008AND0000100009OUTTR100010ANDNOT0000400011OUT002
47、O200012LDTR100013AND0000400014OUT00203暂存指令举例暂存指令举例 (3 3)跳转指令:)跳转指令:JMPJMP(0404)/JME/JME(0505)JMPJMP为跳转开始,为跳转开始,JMEJME跳转结束。跳转结束。C200HC200H的跳转指的跳转指令用跳转号令用跳转号n n来区分,来区分,n n的范围为的范围为00-9900-99。几点注意:几点注意:a.JMP na.JMP n前面的条件为前面的条件为OFFOFF时,在时,在JIMPnJIMPn与与JMEnJMEn之间的程序之间的程序不执行。当不执行。当JMPnJMPn前面的条件为前面的条件为ONON
48、时,在时,在JIMPnJIMPn与与JMEnJMEn之间的程之间的程序执行,与没有跳转指令相同序执行,与没有跳转指令相同 b.b.跳转指令跳转指令JMP/JMEJMP/JME与分支指令与分支指令IL/ILCIL/ILC一样,可实现程序一样,可实现程序的分支。两者的区别在于,当输入条件的分支。两者的区别在于,当输入条件OFFOFF时,时,IL/ILCIL/ILC之间的之间的继电器全部释放,而继电器全部释放,而JMP/JMEJMP/JME之间的继电器均为保持。所以之间的继电器均为保持。所以JMP/JMEJMP/JME适用于控制某些需要保持的设备,如气动装置和液压适用于控制某些需要保持的设备,如气动
49、装置和液压系统,而系统,而IL/ILCIL/ILC适用于控制某些不需要输出保持的设备。适用于控制某些不需要输出保持的设备。c.c.跳转号跳转号n n是是00-9900-99之间的任何一个两位数,非零跳转编之间的任何一个两位数,非零跳转编号在程序中只能使用一次,而号在程序中只能使用一次,而JMP00JMP00与与JME00JME00可在程序中多可在程序中多次使用。次使用。d.JMP00d.JMP00与与JME00JME00的程序块在的程序块在JMP 00JMP 00前面的条件为前面的条件为OFFOFF时时,仍需处理,占用扫描时间,当跳转号,仍需处理,占用扫描时间,当跳转号n0n0时,时,JMPn
50、JMPn与与JMEnJMEn之间的程序块在之间的程序块在JMP nJMP n前面的条件为前面的条件为OFFOFF时,不进行处时,不进行处理,不占用扫描时间。理,不占用扫描时间。e.e.可以嵌套使用(如可以嵌套使用(如JMP01-JMP02-JME02-JME01JMP01-JMP02-JME02-JME01)。)。允许允许不成对出现(不成对出现(JMP01-JMP02-JME02JMP01-JMP02-JME02),),这样使用后,程序检这样使用后,程序检查时,认为出错,编程器上会显示查时,认为出错,编程器上会显示“JMP-JME-ERR”JMP-JME-ERR”,但不但不影响执行。影响执行。