数据传送和数据比较指令
PLC功能指令—数据处理指令
2. 数据传送指令应用举例
【例题5.1】 设有8盏指示灯,控制要求是:当I0.0接通时,全部灯亮;当I0.1 接通时,奇数灯亮;当I0.2接通时,偶数灯亮;当I0.3接通时,电路图
例题5.1控制关系表
输入继电器
I0.0 I0.1 I0.2 I0.3
Q0.7 ● ●
Q0.6 ●
●
Q0.5 ● ●
输出继电器位
Q0.4 ●
●
Q0.3 ● ●
Q0.2 ●
●
Q0.1 ● ●
Q0.0 ●
●
输出继电器字节
QB0 16#FF 16#AA 16#55
0
例题5.1程序
模块五 功能指令
5.1
数据处理指令
一、转换指令
转换指令是对操作数的类型进行转换,并输出到指 定的目标地址中去。转换指令包括数据的类型转换、数 据的编码和译码指令以及字符串类型转换指令。
1、BCD码与整数之间的转换 2.双字整数转换为实数 3.四舍五入取整指令 4.截位取整指令 5.整数与双整数的转换 6.字节与整数的转换指令
转换指令如图:
二、传送指令
1.数据传送指令MOV
(1)数据传送指令的梯形图使用指令盒形式。指令盒由操作码MOV,数据 类型(B/W/DW),使能输入端EN,使能输出端ENO,源操作数IN和目标操作 数OUT构成。
(2)ENO可作为下一个指令盒EN的输入,即几个指令盒可以串联在一行 ,只有前一个指令盒被正确执行时,后一个指令盒才能执行。
三菱FX_2N系列_PLC的功能指令(最新,言简意赅,绝对实用)
本章要求
– 本章介绍FX2系列PLC功能指令及其编程方法。 功能指令编号为FNC00~FNC99,将其中主要指 令归纳为八大类来讲述,限于篇幅从5.6节起的功 能指令只作简讲。对于FX2系列PLC的功能指令, 将以表格形式归纳其基本的格式、类型及每条功 能指令的使用要素。对于具体的控制对象,选择 合适的功能指令,将使编程更加方便和快捷。要 求掌握各类功能指令及运用功能指令编程的方法。
比较指令:
CMP(比较)
ZCP(区间比较)
35
5.3.1 比较指Байду номын сангаас 1
1.指令用法 比较指令: FNC10 CMP [S1·] [S2·] [D·] 其中[S1·]、 [S2·]为两个比较的源操作数,[D·]为比较 结果标志软组件,指令中给出的是标志软组件的首地址 。 2.指令说明 比较指令的概要如表5.10所示。
5.3.7 多点传送指令 2 图5.30(a)为多点传送指令示例梯形图,对应指令: FMOV D0 D10 K3。
在图5.30(a)中,如X010接通,按K3指定目组件个数 为3,则将D0中的内容传送到D10~D12中去,如图5.30 (b)。传送后D0中的内容不变,而D10~D12内容被 D0内容取代。如果目软组件号超出允许范围,则只对 符合规定的数据进行传送。 FMOV指令没有32位操作 方式,但有脉冲方式:FMOV(P)[S·] [D·] n
果缺操作数,或操作组件超出此表中指定范围等都要引 起出错。清除比较结果,可用RST或ZRST复位指令。
5.3.2 区间比较指令 1
1.指令用法 区间比较指令:FNC11 ZCP [S1·] [S2·] [S3·] [D·] [S1·]和[S2·]为区间起点和终点,[S3·]为另一比较软组件 ,[D·]为标志软组件,给出的是标志软组件的首地址。 2.指令说明 区间比较指令概要如表5.11所示。
第7讲 CPM1A系列PLC的指令系统—数据传送和比较指令
电气控制及可编程序控制器
数据比较指令
指令格式: BCMP (68) CD CB R 梯形图符号: 操作区域:
CD:比较数 CB:比较块的起始通道 R:比较结果通道
湖北工业大学
电气控制及可编程序控制器
数据比较指令
☺ 指令助记符前加@标记为微分型指令 ☺ 微分型指令和非微分型指令区别: ◆ 非微分型指令只要执行条件为ON,则每个循 环周期都要执行一次。 ◆ 微分型指令仅在执行条件由OFF变成ON时执 行一次。
湖北工业大学
电气控制及可编程序控制器
数据传送指令
◆ MOVB指令的应用
湖北工业大学
电气控制及可编程序控制器
数据传送指令
7.数字传送指令MOVD(83)/@MOVD(83) 梯形图符号及操作数取值区域
湖北工业大学
电气控制及可编程序控制器
数据传送指令
☺ 功能:当执行条件为ON时,将S中指定的数字位 (4个二进制位)传送到D中指定的数字位,一 一 次最多可以传送4个数字位。 S中要传送的第一 次最多可以传送4个数字位 个数字位、传送的数字位数、D中接收被传送数 字的第一个数字位由C指定。
数据比较指令
2、双字比较指令CMPL(60) 功能: 将通道Cp1+1、Cp1中的两个4位16进制数连成 一个8位16进制数,将通道Cp2+1、Cp2中的两个4 位16进制数连成另一个8位16进制数,然后比较这 两个8位数的大小,将比较结果送SR区的标志位。 ☺(Cp1+1、Cp1)>(Cp1+2、Cp2),大于标志位25505 ON ☺(Cp1+1、Cp1)=(Cp1+2、Cp2),等于标志位25506 ON ☺(Cp1+1、Cp1)<(Cp1+2、Cp2),小于标志位25507 ON
微机原理常用命令
一、数据传输指令它们在存贮器和寄存器、寄存器和输入输出端口之间传送数据。
1. 通用数据传送指令MOV 传送字或字节.MOVSX 先符号扩展,再传送.MOVZX 先零扩展,再传送.PUSH 把字压入堆栈.POP 把字弹出堆栈.PUSHA 把AX,CX,DX,BX,SP,BP,SI,DI依次压入堆栈.POPA 把DI,SI,BP,SP,BX,DX,CX,AX依次弹出堆栈.PUSHAD 把EAX,ECX,EDX,EBX,ESP,EBP,ESI,EDI依次压入堆栈.POPAD 把EDI,ESI,EBP,ESP,EBX,EDX,ECX,EAX依次弹出堆栈.BSWAP 交换32位寄存器里字节的顺序XCHG 交换字或字节.( 至少有一个操作数为寄存器,段寄存器不可作为操作数) CMPXCHG 比较并交换操作数.( 第二个操作数必须为累加器AL/AX/EAX ) XADD 先交换再累加.( 结果在第一个操作数里)XLAT 字节查表转换.── BX 指向一张256 字节的表的起点, AL 为表的索引值(0-255,即0-FFH); 返回AL 为查表结果. ( [BX+AL]->AL )2. 输入输出端口传送指令.IN I/O端口输入. ( 语法: IN 累加器, {端口号│DX} )OUT I/O端口输出. ( 语法: OUT {端口号│DX},累加器)输入输出端口由立即方式指定时, 其范围是0-255; 由寄存器DX 指定时,其范围是0-65535.3. 目的地址传送指令.LEA 装入有效地址.例: LEA DX,string ;把偏移地址存到DX.LDS 传送目标指针,把指针内容装入DS.例: LDS SI,string ;把段地址:偏移地址存到DS:SI.LES 传送目标指针,把指针内容装入ES.例: LES DI,string ;把段地址:偏移地址存到ES:DI.LFS 传送目标指针,把指针内容装入FS.例: LFS DI,string ;把段地址:偏移地址存到FS:DI.LGS 传送目标指针,把指针内容装入GS.例: LGS DI,string ;把段地址:偏移地址存到GS:DI.LSS 传送目标指针,把指针内容装入SS.例: LSS DI,string ;把段地址:偏移地址存到SS:DI.4. 标志传送指令.LAHF 标志寄存器传送,把标志装入AH.SAHF 标志寄存器传送,把AH内容装入标志寄存器.PUSHF 标志入栈.POPF 标志出栈.PUSHD 32位标志入栈.POPD 32位标志出栈.二、算术运算指令ADD 加法.ADC 带进位加法.INC 加1.AAA 加法的ASCII码调整.DAA 加法的十进制调整.SUB 减法.SBB 带借位减法.DEC 减1.NEC 求反(以0 减之).CMP 比较.(两操作数作减法,仅修改标志位,不回送结果).AAS 减法的ASCII码调整.DAS 减法的十进制调整.MUL 无符号乘法.IMUL 整数乘法.以上两条,结果回送AH和AL(字节运算),或DX和AX(字运算), AAM 乘法的ASCII码调整.DIV 无符号除法.IDIV 整数除法.以上两条,结果回送:商回送AL,余数回送AH, (字节运算);或商回送AX,余数回送DX, (字运算).AAD 除法的ASCII码调整.CBW 字节转换为字. (把AL中字节的符号扩展到AH中去)CWD 字转换为双字. (把AX中的字的符号扩展到DX中去)CWDE 字转换为双字. (把AX中的字符号扩展到EAX中去) CDQ 双字扩展. (把EAX中的字的符号扩展到EDX中去) 三、逻辑运算指令AND 与运算.or 或运算.XOR 异或运算.NOT 取反.TEST 测试.(两操作数作与运算,仅修改标志位,不回送结果).SHL 逻辑左移.SAL 算术左移.(=SHL)SHR 逻辑右移.SAR 算术右移.(=SHR)ROL 循环左移.ROR 循环右移.RCL 通过进位的循环左移.RCR 通过进位的循环右移.以上八种移位指令,其移位次数可达255次.移位一次时, 可直接用操作码. 如SHL AX,1.移位>1次时, 则由寄存器CL给出移位次数.如MOV CL,04SHL AX,CL四、串指令DS:SI 源串段寄存器:源串变址.ES:DI 目标串段寄存器:目标串变址.CX 重复次数计数器.AL/AX 扫描值.D标志0表示重复操作中SI和DI应自动增量; 1表示应自动减量.Z标志用来控制扫描或比较操作的结束.MOVS 串传送.( MOVSB 传送字符. MOVSW 传送字. MOVSD 传送双字. )CMPS 串比较.( CMPSB 比较字符. CMPSW 比较字. )SCAS 串扫描.把AL或AX的内容与目标串作比较,比较结果反映在标志位.LODS 装入串.把源串中的元素(字或字节)逐一装入AL或AX中.( LODSB 传送字符. LODSW 传送字. LODSD 传送双字. )STOS 保存串.是LODS的逆过程.REP 当CX/ECX<>0时重复.REPE/REPZ 当ZF=1或比较结果相等,且CX/ECX<>0时重复.REPNE/REPNZ 当ZF=0或比较结果不相等,且CX/ECX<>0时重复.REPC 当CF=1且CX/ECX<>0时重复.REPNC 当CF=0且CX/ECX<>0时重复.五、程序转移指令1>无条件转移指令(长转移)JMP 无条件转移指令CALL 过程调用RET/RETF过程返回.2>条件转移指令(短转移,-128到+127的距离内)( 当且仅当(SF XOR OF)=1时,OP1<OP2 )JA/JNBE 不小于或不等于时转移.JAE/JNB 大于或等于转移.JB/JNAE 小于转移.JBE/JNA 小于或等于转移.以上四条,测试无符号整数运算的结果(标志C和Z).JG/JNLE 大于转移.JGE/JNL 大于或等于转移.JL/JNGE 小于转移.JLE/JNG 小于或等于转移.以上四条,测试带符号整数运算的结果(标志S,O和Z).JE/JZ 等于转移.JNE/JNZ 不等于时转移.JC 有进位时转移.JNC 无进位时转移.JNO 不溢出时转移.JNP/JPO 奇偶性为奇数时转移.JNS 符号位为"0" 时转移.JO 溢出转移.JP/JPE 奇偶性为偶数时转移.JS 符号位为"1" 时转移.3>循环控制指令(短转移)LOOP CX不为零时循环.LOOPE/LOOPZ CX不为零且标志Z=1时循环.LOOPNE/LOOPNZ CX不为零且标志Z=0时循环.JCXZ CX为零时转移.JECXZ ECX为零时转移.4>中断指令INT 中断指令INTO 溢出中断IRET 中断返回5>处理器控制指令HLT 处理器暂停, 直到出现中断或复位信号才继续.WAIT 当芯片引线TEST为高电平时使CPU进入等待状态.ESC 转换到外处理器.LOCK 封锁总线.NOP 空操作.STC 置进位标志位.CLC 清进位标志位.CMC 进位标志取反.STD 置方向标志位.CLD 清方向标志位.STI 置中断允许位.CLI 清中断允许位.六、伪指令DW 定义字(2字节).PROC 定义过程.ENDP 过程结束.SEGMENT 定义段.ASSUME 建立段寄存器寻址.ENDS 段结束.END 程序结束.七、处理机控制指令:标志处理指令CLC(进位位置0指令)CMC(进位位求反指令)STC(进位位置为1指令)CLD(方向标志置1指令)STD(方向标志位置1指令)CLI(中断标志置0指令)STI(中断标志置1指令)NOP(无操作)HLT(停机)WAIT(等待)ESC(换码)LOCK(封锁)。
菱FX1N基本指令介绍
故障诊断与排除方法
故障诊断
当菱fx1n PLC出现故障时,可以通过观察 PLC的指示灯和报警信息,初步判断故障类 型和原因。然后利用PLC的在线监控功能, 进一步分析故障现象和定位故障点。
故障排除
针对不同的故障类型和原因,可以采取相应 的排除方法。例如,对于电源故障可以检查 电源线路和保险丝是否正常;对于通信故障 可以检查通信接口和通信参数是否设置正确 ;对于程序错误可以检查程序逻辑和变量赋 值是否正确等。在排除故障后,需要重新测 试PLC的功能和性能,确保恢复正常运行。
用于控制电动机反转,即逆时针方向 旋转。反转电路通常包括一个反转按 钮和一个反转接触器。按下反转按钮 时,反转接触器线圈得电并吸合,从 而接通电动机的反转电路。
互锁功能
为了防止电动机同时接通正转和反转 电路而造成损坏,正反转互锁电路采 用了互锁功能。在正转电路中串联一 个反转接触器的常闭触点,在反转电 路中串联一个正转接触器的常闭触点 。这样,当其中一个接触器吸合时, 另一个接触器的电路就会被切断,从 而实现了互锁功能。
数据比较指令
对两个数据进行比较,根据比较结果执行相 应操作。
数据转换指令
实现数据类型的转换,如BCD码与二进制数 之间的转换。
数学运算指令
提供加、减、乘、除等基本数学运算功能。
高速处理指令
高速计数器指令
对外部输入的高速脉冲信号进行计数,实现高精度测量和控制。
高速比较指令
对高速计数器的值与预设值进行比较,输出比较结果。
THANKS
感谢观看
XCH指令
用于交换两个数据寄存器的内容, 常用于在不影响其他寄存器的情 况下交换数据。
比较类指令
ZCP指令
用于比较一个数据与一组数据中的某一个是 否相等,通常用于查找或匹配操作。
高级指令的构成
PLC 03
13
(5)余数的处理 存入特殊数据寄存器中 余数的处理:存入特殊数据寄存器中 余数的处理 存入特殊数据寄存器中。如: DT9015:存放 或四位BCD码除法余数 码除法余数, :存放16bit或四位 或四位 码除法余数 及32bit除法余数的低 位 除法余数的低16位 除法余数的低 码的低四位。 或8位BCD码的低四位。 位 码的低四位 DT9016:存放32bit的高16位或8位BCD码的高四位。 : (6)增1和减 运算 D=D+1,D=D-1. 和减1运算 增 和减 运算:
规定: 规定:
×
×
× H S 中被传送的位 D 中的接收位
DT1, WR0, DT0
×
X0
例:
F5 BTM
设DT1=ACAEH; DT0=E486H; WR0=0E04H 中第4位传送到 中的第14位中去 将DT1中第 位传送到 中第 位传送到DT0中的第 位中去。 中的第 位中去。 DT1中第 位: A=1010 , 即需要传送的内容为0; 中第4位 中第 DT0中的第 位: 接收前:E=1110 中的第14位 中的第 接收后 : 1010 A 传送完成后, ∴传送完成后,DT0=A486H
PLC 03
17
DT0:存放液位的实际高度; :存放液位的实际高度; DT2:液位下限设定值。 :液位下限设定值。 DT4:液位上限设定值。 :液位上限设定值。 要求: 要求 DT0∈[DT2, DT4]. Y0 ON 泄放; 泄放; 当DT0>DT4, R900A ON Y2 ON 进液; 进液; 当DT0<DT2, R900C ON 当DT0∈[DT2, DT4] 时,R900B ON, Y1 ON, ∈ 给出指示, 既不进液,也不排液。 给出指示 既不进液,也不排液。
汇编指令
一、数据传送指令(七种助记符)MOV (Move)对内部数据寄存器RAM和特殊功能寄存器SFR的数据进行传送MOVX (Move External RAM)对外部存储器的数据传送XCH (Exchange)字节交换XCHD (Exchange Low-order Digit)低半字节交换PUSH (Push onto Stack)入栈POP (Pop from Stack)出栈二、算术运算指令(8种助记符)ADD (Addition)加法ADDC (Add with Carry)带进位加法SUBB (Subtract withBorrow)带借位减法DA (Decimal Adjust)十进制调整INC (Increment)加1DEC (Decrement)减1MUL (Multiplication Multiply)乘法DIV (Division Divide)除法三、逻辑运算类指令(10种助记符)ANL (AND Logic)逻辑与ORL (OR Logic)逻辑或XRL (Exclusive-OR Logic)逻辑异或CLR (Clear)清零CPL (Complement)取反RL (Rotate left)循环左移RLC (RL throught the carry flag)带进位循环左移SWAP (Swap)低4位与高4位交换四、控制转移类指令(17种助记符)ACCALL (Absolute subroutine Call)子程序绝对调用LCALL (Long subrout Call)子程序常调用RET (Return from Interruption)子程序返回RET1 (Return from Interruption)中断返回SJMP (Short jump)短转移AJMP (Absolute jump)绝对转移LJMP (Long Jump)长转移CJNE (Compare Jump if Not Equal)比较不等则转DJNZ (Decrement Jump if Not Zero)减1不为0则转JZ (Jump if zero)结果为0则跳转JNZ (Jump if Not Zero)结果不为0则跳转JC (Jump if Not carry flag is set)有进位则转移JB (Jump if the Bit is set)位为1则转移JNB (Jump if the Bit is Not set)位为0则转移JBC (JB and Clear the bit)位为1则转并清除该位NOP (No Operation)空操作五位操作指令(1种助记符)CLR 位清零SETB (Set Bit)位置1八种常用伪指令 16位地址此指令用在原程序或数据块的开始,指明此语句后面目标程序或数据块存放的起始地址2.【标号】DB 字节数据项表:奖项表中的字节数据存放到从标号开始的连续字节单元中。
5第五章 应用指令及高功能指令简介
CP1H机型梯形图
CPM1A机型梯形图
2. MOVB和XFRB指令 和 指令
MOVB根据控制字C的控制,传送指定通道所指定的多个位到目的通道
例
XFRB指令是传送指定通道所指定的多个位 到目的通道
n: 传送位数
m:目的通道开始位 I:源通道开始位
例
3. MOVD和XFER指令 和 指令
例:使用一个按钮,接入0.00端,灯H1、H2、H3分别接入输
出端10.00、10.01、10.02。要求第一次按按钮,灯H1 亮, 再按一次按钮,灯H1、H2同时亮,第三次按按钮,三个灯 都亮,再按一次按钮,灯全灭,依次循环。
2. SFTR指令 指令
左右移位SFTR指令能将数据从低位移向高位,或反向移动。
第二节 数据传送指令
数据传送有: 数据传送有:
传送MOV 倍长传送MOVL 取反传送MVN 倍长取反传送MVNL 位传送MOVB 多位传送XFRB 数字传送MOVD 块传送XFER等。
上述指令在CPM1A和CP1H中基本一致。 上述指令在CPM1A和CP1H中基本一致。 CPM1A 中基本一致
1. MOV、MOVL和MVN、MVNL指令 、 和 、 指令
结果标志 符号地址 实际地址 实际地址 备注 CP1H CPM1A
> P_GT CF005 255.05
= P_EQ CF006, 255.06
< P_LT CF007 255.07
>= P_GE Cபைடு நூலகம்000
<> P_NE CF001
<= P_LE CF002
的数据大于5且小于 例: D1的数据大于 且小于 时,100.00有输出 的数据大于 且小于20时 有输出
传送及比较指令总结
传送及比较指令总结传送指令是计算机系统中常用的一类指令,用于将数据从一个位置移动到另一个位置。
这些指令通常用于数据的复制、转移和重排等任务。
在本文中,我将总结一些常见的传送指令,并比较它们的异同。
1.MOV指令:MOV (Move) 指令用于将数据从一个位置复制到另一个位置。
它可以在寄存器之间、寄存器和内存之间、寄存器和端口之间进行数据的传送。
MOV 指令通常具有两个操作数,一个目标操作数和一个源操作数。
例如,`MOV AX, BX` 将寄存器 BX 中的值复制到寄存器 AX 中。
MOV 指令在大多数计算机体系结构中都是支持的,因为它是一种非常基本和常见的操作。
2.LDR和STR指令:LDR (Load) 和 STR (Store) 指令用于将数据从内存中加载到寄存器或将数据从寄存器存储到内存中。
这些指令主要在ARM架构中使用。
LDR指令将内存中的数据加载到寄存器中,例如,`LDR R0, [R1]` 将 R1 寄存器中的地址所对应的内存单元中的数据加载到 R0 寄存器中。
STR 指令则将寄存器中的数据存储到内存中,例如,`STR R0, [R1]` 将 R0 寄存器中的数据存储到 R1 寄存器中的地址所对应的内存单元中。
3.PUSH和POP指令:PUSH指令用于将数据压入栈中,而POP指令用于从栈中弹出数据。
这两个指令通常用于实现函数调用和中断处理等操作。
PUSH指令将数据放入栈顶,然后栈指针下移;而POP指令则将栈顶数据读取到寄存器中,并将栈指针上移。
例如,`PUSHAX`将AX寄存器中的数据压入栈中,`POPAX`将栈顶数据弹出到AX寄存器中。
4.XCHG指令:XCHG (Exchange) 指令用于交换两个操作数的值。
这个指令可以用于两个寄存器之间的值交换,或者寄存器和内存之间的交换。
例如,`XCHG AX, BX` 将寄存器 AX 和 BX 中的数据进行交换。
XCHG 指令常用于实现数据交换、排序和互斥访问等场景。
PLC传送和比较指令的用法使用案例详细说明
PLC 传送和比较指令的用法使用案例详细说明
1、比较指令CMP
CMP 指令有三个操作数:两个源操作数[S1.]和[S2.],一个目标操作数[D.],该指令将[S1.]和[S2.]进行比较,结果送到[D.]中。
CMP 指令使用说明如图所示。
2、区间比较指令ZCP
ZCP 指令是将一个操作数[S.]与两个操作数[S1.]和[S2.]形成的区间比较,且[S1.]不得大于[S2.],结果送到[D.]中。
ZCP 指令使用说明如图所示。
3、传送指令MOV
MOV 指令将源操作数的数据传送到目标元件中,即[S.]→[D.]。
MOV 指令的使用说明如图所示。
当X0 为ON 时,源操作数[S.]中的数据K100 传送到目标元件D10 中。
当X0 为OFF,指令不执行,数据保持不变。
4、移位传送指令SMOV。
6.2.1比较指令与数据传送指令
3. 双字整数比较
➢双字整数IN1和IN2的寻址范围:VD、ID、QD、MD、SD、SMD、LD、 HC、AC、*VD、*AC、*LD和常数。双字整数比较是有符号的,双字整 数范围为16进制数,取值范围为80000000和7FFFFFFF之间。
指令格式例:LDD= VD10, VD14 AD<> MD0, MD8 OD<= AC0, 1160000
4. 实数比较 ➢实数IN1和IN2的寻址范围:VD、ID、QD、MD 和 常 数 。 实 数 比 较 是 有 符 号 的 , 负 实 数 范 围 为 1.175495E-38和-3.402823E+38,正实数范围为+1.175495E-38和 +3.402823E+38 指令格式例:LDR= VD10, VD18
目录
01 比较指令与数据传送指令
• 在语句表中使用LD指令进行编程时,当比较式为真时,主机将栈顶 置1。使用A/O指令进行编程时,当比较式为真时,则在栈顶执行A/O 操作,并将结果放入栈顶。
• 比较指令的类型有:字节比较、整数比较、双字整数比较和实数比 较。
• 比较运算符有:=、>=、<=、>、<和<>(<>表示不等于)。
AR<> MD0, MD12 OR<= AC1, 1160.478
数据传送指令
单一传送指令
字节传送指令MOVB 传送字节立即读指令BIR 传送字节立即写指令BIW 字传送指令MOVW 双字传送指令MOVD 实数传送指令MOVR
块传送指令
28功能指令: MOV(传送)、CMP(比较)指令
CMP指令使用说明 CMP指令使用说明
X000
CMP M0
[S1.] [S1
K100
[S2.] [S2
C20
[D.] [D.
M0
K100 > C20当前值,M0 = ON 20当前值 当前值,
M1
K100 = C20当前值,M1 = ON 20当前值 当前值,
M2
K100 < C20当前值,M2 = ON 20当前值 当前值,
ZCP指令使用说明 ZCP指令使用说明
X000
ZCP M3
[S1] [S1
K100
[S2] [S2
[S.] [D.] [S. [D.
K120 C30 M3
K100 > C30当前值时,M3 = ON 30当前值时 当前值时,
M4
K100 ≤ C30当前值≤K120时,M4 = ON 30当前值 120时 当前值≤
M5
K120 < C30当前值时,M5 = ON 30当前值时 当前值时,
比较结果的清除
用复位指令
3. 触点形比较指令: 是使用触点符号进行数据比较 触点形比较指令: 的指令,根据比较结果确定触点是否允许能流通过。 的指令,根据比较结果确定触点是否允许能流通过。
触点形比较指令的说明
[S1.] [S1
位元件
传送比较类指令及应用
传送比较指令说明
1. 比较指令(CMP): 比较指令是将源操作数 、 比较指令( 比较指令是将源操作数S1、 ) S2的数据, 按照代数规则进行大小比较 , 并将比较结 的数据, 的数据 按照代数规则进行大小比较, 果送到目的操作数D中 果送到目的操作数 中,驱动目的操作数及相邻的位元 件。
FX5U PLC的基本指令及应用
17
Date: 2023/8/26
Page: 17
二、算术运算指令
• 增量/减量指令
指令 属性
18
Date: 2023/8/26
Page: 18
二、算术运算指令
• 增量/减量指令
指令应用
19
Date: 2023/8/26
Page: 19
二、算术运算指令
• 增量/减量指令
指令应用
20
Date: 2023/8/26
46
Date: 2023/8/26
Page: 46
30
Date: 2023/8/26
Page: 30
三、数据传送指令
• 位数据传送指令
指令应用
31
Date: 2023/8/26
Page: 31
三、数据传送指令
• 数据交换指令
指令 属性
数据交换指令包括16位数据交换指令XCH/ XCHP、32位数据交换指令DXCH/DXCHP。
32
Date: 2023/8/26
FX5U PLC的基本指令及应用
一、比较计算指令 二、算术运算指令 三、数据传送指令 四、逻辑运算指令 五、数据转换指令
1
Date: 2023/8/26
Page: 1
一、比较计算指令
• 概述
三菱FX5U PLC的基本指令主要包括比较运算、算术运算、数据 传送、逻辑运算、位处理及数据转换指令,可用于实现数据运 算、数据处理等方面的要求。指令按照操作数的数据长度可分 为16位数据指令和32位数据指令(用D标记);按照操作数有无 符号可分为无符号指令(用_U标记)和有符号指令;按照指令 的执行方式可分为连续执行型和脉冲执行型(用P标记)。
5第五章 应用指令及高功能指令简介
1.SBS、SBN、RET指令
子程序将大的控制任务分成较小的控制任务,使用户能重复使用一给定的指令组。
功能/有关标志
指令
名称
梯形图符号
SBS NO.
主程序 SBS 000
SBS
子程序调用
调用指定的子程序 NO.:000~049 (CPM1A) 000~255 (CP1H)
子程序开始 子程序结束
SBN 012
CP1H特有
常用: 比较、 符号比较 时刻比较
1.比较指令
对2组数据或常数进行比较,将比较结果反映到状态标志中
无符号比较CMP(单字) 无符号倍长比较CMPL(双字) 带符号比较CPS(单字)
带符号倍长比较CPSL(双字)
结果标志 符号地址 实际地址 实际地址 > P_GT CF005 255.05 = P_EQ CF006, 255.06 < P_LT CF007 255.07 >= P_GE CF000 <> P_NE CF001 <= P_LE CF002 CP1H CPM1A 备注
主程序
SBN 000 子程序 RET SBN 001 子程序 RET END
SBN RET
子程序进入 子程序返回
SBN 010
SBN NO.
RET SBN 011 SBS 012 RET
SBS 010
SBS 011 RET
RET
子程序的嵌套
子程序的调用
子程序的工作过程
0.01 闭合 闭合 闭合 闭合, 3s后断开 断开
执行子程序
例:使用MCRO指令实例及等效梯形图
200CH→232CH 201CH→233CH 202CH→234CH 203CH→235CH 210CH←236CH 211CH←237CH 212CH←238CH 213CH←239CH 202CH→232CH 203CH→233CH 204CH→234CH 205CH→235CH 215CH←236CH 216CH←237CH 217CH←238CH 218CH←239CH
PMC功能指令
种类设定时间范围备注1msec 1msec~32.7秒8msec 8msec~262.1秒定时器9以上初始值10msec 10msec~327.7秒48msec 48msec~1572.8秒定时器1~8初始值100msec 100msec~54.6分1秒1秒~546分1分1分~546小时定时器的定时器精度,对应存储在T9000~T9499中,设值含义如下:0 :缺省(8msec/48msec)1 :1msec2 :10msec3 :100msec4 :1秒5 :1分【输出】W1 :ACT接通后,经过定时器设定的时间后,输出即接通为1。
【使用范例】X0.0接通后再经过100ms,R0.0就接通为1。
“精度”由T9000~T9499来决定,每个计数器占两个字节,同时也对应T9000~T9499的相应两字节为“精度”设定地址,依次类推。
对于1号计数器,对应为T9000~T9001设定精度,如果T9000~T9001为0,则精度按缺省处理,为48ms。
范例中T9000=3,即精度等级为100,在此条件下,“设定时间”必须是100的倍数。
【使用范例】·X0.0接通3秒之后,R0.0输出为1。
·在任意时间一旦X0.0为0,R0.0马上为0。
延时定时器(上升沿触发):SUB54/TMRC定时器精度范围扩展为以分为单位,可作为长时间定时器使用。
在控制参数中可以自由的指定定时器设定时间地址,所以没有定时器个数限制。
【控制条件】ACT =0 : 定时器输出W1为0=1 : 启动定时器【控制参数】定时器精度 : 种类 定时器精度设定时间范围 1msec 5 1msec~32.7秒 8msec 0 8msec~262.1秒 10msec 6 10msec~327.7秒 48msec 1 48msec~1572.8秒 100msec 7 100msec~54.6分 1秒 2 1秒~546分 10秒 3 10秒~91小时 1分4 1分~546小时SUB54 TMRCACT定时器精度定时器设定时间地址 定时器寄存器地址W1设定时间ACTW1【定时器设定时间地址】:指定用于存储定时器设定值2字节长地址的首地址。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
20000 MOV(21) LR00 HR00
可编辑ppt
7
指令MOV几种使用方法的区别
00000
@MOV(21)
LR00 HR00
(a)
25315
MOV(21)
LR00 HR00
(b)
00000 DIFU(13) 20000
20000 MOV(21) LR00
可编辑ppt
1
数据传送指令
数据比较指令
数据传送和数据比较指令有两个以上操作数 要注意指令微分和非微分形式时用法的区别 要注意这些指令的操作数的含义及其范围 这些指令多数都有微分和非微分两种形式
可编辑ppt
2
一、 数据传送指令
单字传送指令MOV 块传送指令XFER 块设置指令BSET 位传送指令MOVB
执行@BSET指令将0050传送 到TIM000中,TIM000的当 前值立即变为0050。
自此,TIM000的当前值从 0050开始,每隔0.1秒减1, 一直减到为0000为止。
可编辑ppt
00000
@MOV(21)
# 0100 HR00
@ BES1)
S St E
@BSET(71)
S St E
S :源数据(通道或十六进制数 )
St :开始通道 功能
E:结束通道号
在执行条件为ON时,将S传送到从St到E的各通道中。
可编辑ppt
13
使用BEST指令举例 分析程序的功能,写语句表
00000
@MOV(21)
(c) HR00
(a)与(c)相同,指令MOV都只在00000 OFF→ON时执 行一次。
(b ) 指令MOV只在PLC上电后的第一个扫描周期执 行一次。
可编辑ppt
8
使用MOV指令举例(4) 分析程序的功能
从PLC上电开始,每个扫描 周期里,都将HR00中的内 容传送到LR00中。
25313
MOV(21)
# 0100 HR00
TIM000 HR00
TIM000
01000
00001
@BSET(71)
# 0050
TIM000
LD
00000
@MOV(21)
#0100
HR00
TIM
000
HR00
AND
TIM000
OUT
01000
LD
00001
@BSET(71)
#0050
TIM 000
TIM 000
TIM000
可编辑ppt
11
执行块传送指令时数据传送如下所示:
… … …
S 1 2 34
S+1 8 2 AC
S+2 9 0 B6
S+N-1 0 D FE
D 1 2 34
D+1 8 2 AC
D+2 9 0 B6
D+N-1 0 D FE
可编辑ppt
12
3. 块设置指令BEST(71)/ @ BEST(71)
BEST(71 ) S St E
★ 改变计数器设定值的操作:
25315 00001
MOV(21)
#0100 200
@MOV(21)
#0200 200
●断开00000,闭合一次触点 00002, 使CNT000复位;
00000 25502
00001
CNT000
●使00001OFF→ON,将0200 传送到200通道中;
●此后计数器按设定值200计数
可编辑ppt
25315 00002
200
10
2. 块传送指令XFER (70 )/ @ XFER(70 )
XFER(70 ) @ XFER(70 )
N
N
S
S
D
D
XFER(70)
N S D
@XFER(70)
N S D
N :通道数(BCD数 )
S :源数据块首通道 功能
D:目的通道首通道
在执行条件为ON时,将几个连续通道中的数据传 送到另外几个连续通道中。
HR00
在PLC上电的第一个扫描周期,把0198传送到HR00中
在此后的各扫描周期,不再执行MOV指令。
可编辑ppt
5
使用MOV指令举例(2)
分析程序的功能:
00000 DIFU(13) 20000
只要0000 OFF→ON, 20000 MOV(21)
就执行一次MOV 指令。
LR00
把LR00中的内容传送到
HR00 LR00
与上述几种MOV指令使用方法的区别是: 本程序中,每个扫描周期指令MOV都执行!
请注意MOV指令各种用法的区别
可编辑ppt
9
使用MOV指令举例(5) 分析程序的功能
PLC上电时,将0100传送到200 通道中,作为CNT000的设定值
自00000 ON开始, CNT000按设 定值100开始计数(或定时)。
数字传送指令MOVD 单字分配指令DIST 数据调用指令COLL 数据交换指令XCHG
可编辑ppt
3
1. 单字传送指令MOV(21)/ @MOV (21)
MOV (21) S D
@ MOV (21) S D
MOV(21)
S D
@MOV(21)
S D
S:源数据(通道或十六进制数 ) D:目的通道号
功
非微分:在执行条件为ON时,将S传送到D中 (每个扫描周期都执行)。
能
微 分:在执行条件OFF→ON时,将S传送到D中 (只在条件满足时刻执行一次)。
可编辑ppt
4
使用MOV指令举例(1)
分析程序的功能,并写出语句表.
25315
MOV(21)
# 0198 HR00
LD
25315
MOV (21) #0198
可编辑ppt
14
功能
① @BSET指令的第二、第三操作 数都是TIM000,即执行@BSET指 令,只把数据传送到TIM000中。
②在00001OFF、00000 OFF→ON 时,执行一次MOV指令,将 #0100传送到通道HR00中。
③自此TIM 000以设定值10秒定时。
④ 经过10秒,定时器TIM000 ON, 线圈01000 ON 。
HR00
HR00中。
LR00中的内容在变
使用DIFU指 令有何作用?
化,必要时将其传 送到HR00中。
可编辑ppt
6
使用MOV指令举例(3) 分析程序的功能
只要00000 OFF→ON, 就执行一次MOV 指令。
把LR00中的内容传送到 HR00中。
与举例(2 )功能相同。
00000 @MOV(21) LR00 HR00
00000
@MOV(21)
# 0100 HR00
TIM000 HR00
TIM000
01000
00001
@BSET(71)
# 0050
TIM000
TIM000
可编辑ppt
15
⑤当需要改变定时器TIM000 的当前值时,可通过执行 @BSET指令来实现。
例如,在TIM000的当前值为 0089时,令00001 ON一次: