功能指令
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
LD N ORxx IN1 IN 2
比较触点的“或”
Software
Hardware Software Workshop
比较指令—字符串比较
❖ 字符串比较指令用于比较两个ASCII字符串IN1 和IN2的大小。
❖ 比较类型包括: IN1 = IN2、IN1 <> IN2。
❖ 比较条件成立时,触点就闭合,否则断开。
STL
LAD
说明
LDSxx IN1 IN 2
比较触点接起始母线
LD N ASxx IN1 IN 2
比较触点的“与”
LD N OSxx IN1 IN 2
比较触点的“或”
Software
Hardware Software Workshop
实例1
❖ 调整模拟调整电位器0,改变SMB28字节数值, 当SMB28数值小于或等于50时,Q0.0输出, 其状态指示灯打开;当SMB28数值大于或等于 150时,Q0.1输出,状态指示灯打开。
Hardware Software Workshop
功能指令概述
❖ 梯形图中的网络与指令
– 网络就是程序中独立的段。一个网络中只能有一个独 立的电路,否则编译会出错。
– 指令表程序可不使用网络,但只有按网络划分指令表 程序,才能正确地被转换成梯形图。
Software
Hardware Software Workshop
Software
Hardware Software Workshop
数据传送指令
2.字节立即读写指令
– 字节立即读指令(MOV-BIR):读取实际输入端IN 给出的1个字节的数值,并将结果写入OUT所指定的 存储单元,但输入映像寄存器未更新。
– 字节立即写指令(MOV-BIW):从输入IN所指定的 存储单元中读取1个字节的数值并写入(以字节为单 位)实际输出OUT端的物理输出点,同时刷新对应 的输出映像寄存器。
Software
Hardware Software Workshop
Software
Hardware Software Workshop
数据传送指令
4.字节交换指令
– 字节交换指令用来交换输入字IN的最高位字节和最低 位字节。
Software
Hardware Software Workshop
数据传送指令
1.字节、字、双字和实数的传送
– 将字节、字、双字和实数(IN)移至输出(OUT), 不改变原来的数值。
MOVB IN,OUT
MOVD IN,OUT
MOVW IN,OUT
MOVR IN,OUT
Software
Hardware Software Workshop
字传送举例
❖ 将变量存储器VW10中内容送到VW100中。
Hardware Software Workshop
移位/循环指令举例二
• 用I0.0控制接在Q0.0~Q0.7上的8个彩灯循环移位,从右 到左以0.5s的速度依次点亮,保持任意时刻只有一个指 示灯亮,到达最左端后,再从右到左依次点亮。
Software
Hardware Software Workshop
❖ 比较类型包括: IN1 = IN2、IN1 >= IN2、IN1 <= IN2、 IN1 > IN2、IN1 < IN2或IN1 <> IN2。
❖ 比较条件成立时,触点就闭合,否则断开。
STL LDWxx IN1 IN 2
LAD
说明 比较触点接起始母线
LD N AWxx IN1 IN 2
比较触点的“与”
– 全局符号自动加“”,局部变量加“#”。 – 表示需要能流连接; 表示可选能流连接。 – 表示需要输入位地址; 表示需要输入地址或
数值。
Software
Hardware Software Workshop
数据处理指令
❖ 比较指令 ❖ 数据传送指令 ❖ 移位与循环指令 ❖ 数据转换指令 ❖ 表功能指令 ❖ 读写实时时钟指令 ❖ 字符串指令
❖ 比较条件成立时,触点就闭合,否则断开。
STL
LAD
说明
LDDxx IN1 IN 2
比较触点接起始母线
LD N ADxx IN1 IN 2
比较触点的“与”
LD N ODxx IN1 IN 2
比较触点的“或”
Software
Hardware Software Workshop
比较指令—实数比较
❖ 实数比较指令用于比较实数值IN1和IN2的大小。
Software
Hardware Software Workshop
比较指令
字节比较 整数比较 双整数比较 实数比较 字符串比较
Software
Hardware Software Workshop
比较指令—字节比较
❖ 字节比较指令用于比较字节值IN1和IN2的大小。
❖ 比较类型包括: IN1 = IN2、IN1 >= IN2、IN1 <= IN2、IN1 > IN2、IN1 < IN2或IN1 <> IN2。
❖ 比较类型包括: IN1 = IN2、IN1 >= IN2、IN1 <= IN2、IN1 > IN2、IN1 < IN2或IN1 <> IN2。
❖ 比较条件成立时,触点就闭合,否则断开。
STL
LAD
说明
LDRxx IN1 IN 2
比较触点接起始母线
LD N ARxx IN1 IN 2
比较触点的“与”
Software
Hardware Software Workshop
功能指令概述
❖ 使能输入与使能输出
– 盒子(功能块) – 使能输入端EN – 使能输出端ENO
可以将几个功能块串联在一起
只有前一个功能块被正确执行,后面的功能块才 能被执行。
EN、ENO的数据类型为BOOL型
Software
功能指令概述
❖ 与能流相关的规则
– 能流只能从左向右流动,梯形图中不能有短路、开路 和反方向的能流。
– 大多数指令不能直接与左侧电源线相连,必须有条件 输入指令,如果需要无条件执行,则可使用SM0.0驱 动,有些指令与能流无关,如标号指令或SCR指令 等,应将它们直接接左侧电源线。
– 有些指令不能级联,如LBL、SCR、定时器及计数 器指令等,它们无ENO输出。
– 如果执行移位操作,移位的最后一位数值被复制至溢 出位(SM1.1)。如果移位操作结果为0,零标志位 (SM1.0)被置1。
Software
Hardware Software Workshop
Software
Hardware Software Workshop
移位/循环指令举例一
Software
使用以下等式计算"移位寄存器"最高位地址(MSB.b): MSB.b = [(S_BIT字节) + ([N] - 1 + (S_BIT位)) / 8] . [被8除的余数] 例如:如果S_BIT是V33.4和N 是14,以下计算显示 MSB.b是V35.1。 MSB.b = V33 + ([14] - 1 +4)/8
❖ 比较条件成立时,触点就闭合,否则断开。
STL
LAD
说明
LDBxx IN1 IN 2
比较触点接起始母线
LD N ABxx IN1 IN 2
比较触点的“与”
LD N OBxx IN1 IN 2
比较触点的“或”
Software
Hardware Software Workshop
比较指令—整数比较❖ 整数比较令用于比较有符号整数值IN1和IN2的大小。 (16#7FFF > 16#8000)
Software
Hardware Software Workshop
第5章 功能指令
Software
Hardware Software Workshop
功能指令概述
❖ 数据操作类指令
– 数据传送、数据比较、移位、数学运算、逻辑运算
❖ 高级应用指令
– 子程序、中断、高速计数、位置控制、闭环控制、通 信
– 在输入语句表指令时,必须使用英文标点符号,否则 会出错。
Software
Hardware Software Workshop
功能指令概述
❖ 其它规约
– SIMATIC程序编辑器中的直接地址由存储器区标识符 和地址组成,例如I0.0。IEC程序编辑器用%表示直 接地址,如%I0.0。
– 可以使用符号地址代替绝对地址,编译下载时会自动 转换成绝对地址。
Software
Hardware Software Workshop
Software
Hardware Software Workshop
❖ 按下I1.2,将VB100中存储的数据左移2位送到 VB200中,按下I1.3将VB100中存储的数据右 移2位送到VB300中。
Software
Hardware Software Workshop
– 在“移位加”(N为正)中,输入数据(DATA)移 入移位寄存器的最低位中(由S_BIT指定),并移出 移位寄存器的最高位。移出的数据被放置在溢出内存 位(SM1.1)中。
– 移位寄存器的最大长度为64位(无论正负)。
Software
Hardware Software Workshop
移位寄存器最高位地址MSB.b
移位/循环指令
2.循环左移和循环右移指令
– 将输入IN的字节、字、双字数值循环向右或向左移动 N位,并将结果载入输出字节(OUT)。
– 如果移位数N大于或等于允许值(字节8、字16、双字 32), 执行循环移位前先对位数N进行取模操作(求 余数),使位数在0~7之间。如果移动位数为0,则不 执行移位操作,同时置位零标志位(SM1.0) 。
移位/循环指令
3.移位寄存器指令
– 将DATA数值移入移位寄存器。S_BIT指定移位寄存 器的最低位。N指定移位寄存器的长度和移位方向 (移位加 = N,移位减 = -N)。
– SHRB指令移出的每个位被放置在溢出内存位 (SM1.1)中。
– 在“移位减”(N为负)中,输入数据(DATA)移 入移位寄存器的最高位中,并移出最低位(S_BIT)。 移出的数据被放置在溢出内存位(SM1.1)中。
Software
Hardware Software Workshop
实例2
❖ 整数字比较若VW0 > +10000为真,Q0.2有输 出。双字比较若VD2 >-150000000为真, Q0.3有输出。实数比较若VD6>5.001E-006, Q0.4有输出。
Software
Hardware Software Workshop
字节交换指令举例
LD I0.1 SWAP VW50
Software
Hardware Software Workshop
移位/循环指令
1.左移位和右移位指令 2.循环左移和循环右移指令 3.移位寄存器指令
Software
Hardware Software Workshop
移位/循环指令
1.左移位和右移位指令
实例3
❖ 用通电延时定时器和比较指令组成占空比可调 的脉冲发生器。
Software
Hardware Software Workshop
数据传送指令
1.字节、字、双字和实数的传送 2.字节立即读写指令 3.字节、字、双字的块传送指令 4.字节交换指令
Software
Hardware Software Workshop
Software
Hardware Software Workshop
数据传送指令
3.字节、字、双字的块传送指令
– 将N个数目的字节、字、双字从输入地址(IN)移至 输出地址(OUT)。N的范围为1至255。
Software
Hardware Software Workshop
块传送指令举例
❖ 将变量存储器VB20开始的4个字节(VB20VB23)中的数据,移至VB100开始的4个字节 中(VB100-VB103)。
– 将输入IN的字节、字、双字数值向右或向左移动N位, 并将结果载入输出OUT地址中。
– 如果移动位数N大于允许值(字节8、字16、双字 32),实际移位的位数为最大允许值。
– 移位操作是无符号的,如果是有符号数,符号位也被 移位。
– 如果移位数目大于0,溢出内存位(SM1.1)保存最 后一次移出位数值。如果移位操作结果为0,零标志 位(SM1.0)被置1。
LD N OWxx IN1 IN 2
比较触点的“或”
Software
Hardware Software Workshop
比较指令—双整数比较
❖ 双整数比较指令用于比较有符号双字整数值IN1和IN2的 大小。(16#7FFFFFFF > 16#80000000)
❖ 比较类型包括: IN1 = IN2、IN1 >= IN2、IN1 <= IN2、 IN1 > IN2、IN1 < IN2或IN1 <> IN2。