第6章plc技术与应用

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

• 3字节交换指令 • 字节交换SWAP(swap Bytes)指令交换输人 字(IN)的高字节与低字节。 • 4宇节立即读写指令 • 字 节 立 即 读 MOV—BIR(Move Byte Immediate Read)指令读取IN输入端给出的 1个字节的物理输入点(IB),并将结果写入 OUT。 • 字 节 立 即 写 MOV BIW(Move Byte Immediate Write)指令将输入(IN)给出的1字 节数值写入OUT端给出的物理输出点(0B)。 两条指令的IN和OUT都是字节变量。
INC_D EN ENO IN OUT
VB0
IN
INCB OUT
INCW OUT
INCD OUT
• 6.减一指令
DEC_B EN ENO IN
OUT
DEC_W EN ENO IN
OUT
DEC_D EN ENO IN
OUT
INCB OUT
INCW OUT
INCD OUT
均为32位双字,如:VD*,AC0~4
实数加法、减法、乘法、除法--------双字
• 例: DIV VW10, VD100 • /I VW20, VW200 • 两条指令的编程及执行情况比较如图4.26所示。
LD DIV I0.0 //使能输入端
VW10, VD100 //完全除法 // VW102/VW10=VD100
LD /I
I0.1
移位与循环指令
1.字节、字、双字右移位和左移位指令 2.字节、字、双字循环右移位和循环左移 位指令 3.移位寄存器指令。
EN
SHR_B VB0
SHR_B---右移指令
SHL_B---左移指令
VB20 5
IN N
OUT
SHR_W
SHR_DW
SHL_W
SHL_DW
左右被移走的位填0
ROR_B---循环右移指令
• 7.开平方指令 SQRT
EN ENO OUT
9.指数函数指令 EXP
EN ENO OUT
IN
IN
SQRT
IN,OUT
EXP
IN,OUT
• 8.自然对数指令 10.三角函数指令(弧度)
LN EN ENO IN OUT SIN EN ENO IN OUT COS EN ENO IN OUT TAN EN ENO IN OUT
A
I0.2
//
•图
停止、结束、看门狗指令
返回本节
4、 循环指令
计数值 初值 1.循环开始FOR 终值 每执行一次循环计数值 加1,当计数值大于 终值,则循环终止。 2.循环结束 NEXT 3. 程序实例
FOR
EN INDX INIT ENO
FINAL
(NEXT)
LD FOR
M0.0 // 使能输入 VW10, +1, +20 //循环开始 //与第 2 个 NEXT //之间为一级循环体
//使能输入端
VW20, VW200 //整数除法 //VW200/VW20=VW200
图4.26
除法指令应用
对于完全除法指令:
2003
对于除法指令:
2003
返回本节

• I0.4 5.加一指令 INC_B
EN ENO OUT VB10
INC_B EN ENO IN OUT
INC_W EN ENO IN OUT
ROL_B---循环左移指令
ROR_W
ROR_DW
ROL_W
ROL_DW
右移N位,移出的位送最左边
左移N位,移出的位送最右边
• 自定义移位指令 • N>0由低向高位移,反之向低移
I0.1 P I0.2 V10.0 4 EN DATA S_BIT N 移位前 I0.1 SH RB EENNOO 正跳变 I0.2
S_BIT
7 7
VB10.0
0 1 0 0 1
0 0 0 1 1
LD EU SHRB
I0.1 I0.2,V10.0,4
移位一次后
VB10.0
I0.2
SM1.1 溢出位 1
6.5 数学运算指令
1.加法指令
ADD-I ADD-DI ADD-R
EN ENO IN1 IN2 OUT
EN ENO IN1 IN2 OUT +D IN1,OUT
LD O O STOP
SM5.0 SM4.3 I0.3
//检查 I/O 错误 //运行时刻检查编程 //外部切换开关 //条件满足,由 RUN // 切换到 STOP 方式 // //
LD END
I0.5
//外部停止控制 //停止程序执行 // //
LD WDR
M0.4
//用触点重新触发 //看门狗定时器
1. 结束指令
• 结束指令有两条:END和MEND。两 条指令在梯形图中以线圈形式编程。
• END,条件结束指令。使能输入有效 时,终止用户主程序。 • MEND无条件结束指令。无条件终止 用户程序的执行,返回主程序的第一 条指令。 • 指令格式:END(无操作数)
2. 停止指令
• STOP,暂停指令。使能输入 有效时,该指令使主机CPU的 工作方式由RUN切换到STOP 方式,从而立即终止用户程序 的执行。 • STOP指令在梯形图中以线圈 形式编程。指令不含操作数。 • 指令格式:STOP(无操作数)
6.4 数据处理指令
6.4.1比较指令
字节比较 整数比较 双字整数比较 实数比较
比较关系符有: 等于=,大于>,小于<,不等<>,大于等于>=, 小于等于<=。
6.4.2 数据传送指令
• 1字节、字、双字和实数的传送 • 将输人的数据(IN)传送到输出(OUT),传送 过程中不改变数的大小。 • 2字节、字、双字的块传送指令 • 将从输入地址(JN)开始的N个数据传送到 输出地址(OUT)开始的N个单-元,N=l 255, N为字节变量
LD FOR
M0.1
//使能输入 //循环开始 //与第 1 个 NEXT //之间为二级循环体
VW20, +1, +5
•图1
程序循环(1)
LD CALL
I0.0 SBR_0
//使能输入 //调用子程序 0 //本梯级为二级 //循环体的功能段
NEXT
//循环结束指令
LD INCW
SM0.0 VW100
5、跳转与标号指令
(1)跳转指令 JMP,跳转指令。使能输入有效时,使 程序流程跳到同一程序中的指定标号n 处执行。 (2)标号指令 LBL,标号指令。标记程序段,作为跳 转指令执行时跳转到的目的位置。操作 数n为0~255的字型数据。
程序实例:
• 某生产线对产品进行加工处理,同时用增 减计数器对成品进行计数,如果检测到100 个成品就要跳过某些控制程序直接进入小 包装控制程序;若检测到900个成品,则程 序跳转到大包装控制程序。 • 程序如下:
EN IN N
ENO OUT
IN,OUT
IN,OUT
பைடு நூலகம்MOVDW IN,OUT
数据块传送指令把 从输入(IN)指定 地址的N个连续字 节、字、双字的内 容传送到从输出( OUT)指定地址开 始的N个连续字节 、字、双字的存储 单元中去。
3.传送字节立即读、写指令
传送字节立即读(BIR)指令,读取输入端(IN)指定字节地址的物理输入 点(IB)的值,并写入输出端(OUT)指定字节地址的存储单元中。
• 图 程 序 跳 转 实 例
6.3子程序的编写与调用
1. 子程序建立
(1)从“编辑”菜单,选择插入→子程序;
(2)从“指令树”,用鼠标右键单击“程序 块”图标,并从弹出菜单选择插入→子程序; (3)从“程序编辑器”窗口,用鼠标右键单 击,并从弹出菜单选择插入→ 子程序。
2. 子程序调用
(1)子程序调用和返回指令 子程序调用 SBR 子程序条件返回 CRET
EN ENO IN1 IN2 OUT +R IN1,OUT
+I
IN1,OUT
2.减法指令
SUB-I SUB-DI SUB-R
EN ENO IN1 IN2 OUT
EN ENO IN1 IN2 OUT -D IN2,OUT
EN ENO IN1 IN2 OUT -R IN2,OUT
-I
IN2,OUT
3.乘法指令
整数 除法
16位整 数商
DIV-I DIV-DI DIV-R DIV
整数完 全除法
EN ENO IN1 IN2 OUT EN ENO IN1 IN2 OUT /R IN2,OUT
EN ENO IN1 IN2 OUT
EN ENO IN1 IN2 OUT
DIV IN2,OUT
/I
IN2,OUT
/D
IN2,OUT
• 字逻辑运算包括: 字与、字或、字异或、字取反
• 双字逻辑运算包括: 双字与、双字或、双字异或、双字取反
1.数据传送指令
MOV-B EN ENO IN OUT
MOV-W EN ENO
IN
MOV-DW EN ENO IN
OUT
MOV-R EN ENO IN OUT
OUT
MOVB
IN,OUT
MOVW
IN,OUT
MOVDW IN,OUT
MOVR
IN,OUT
例:
VW100
MSB
LSB
I0.1
10
MSB
46
LSB
END
//停止程序执行 //
3. 看门狗复位指令 //
• WDR,看门狗复位指令。当使 能输入有效时,执行WDR指令, 每执行一次,看门狗定时器就 LD M0.4 //用触点重新触发 被复位一次。用本指令可用以 WDR //看门狗定时器 延长扫描周期,从而可以有效 A I0.2 // 避免看门狗超时错误。 • 指令格式:WDR(无操作数)
LN
IN,OUT
SIN
IN,OUT
COS
IN,OUT
TAN
IN,OUT
6.5.3逻辑运算指令
• 1. 逻辑与指令(WAND) • 2. 逻辑或运算 (WOR) • 3. 逻辑异或指令(WXOR) • 4. 取反指令(INV)
运算规则:


异或 取反
• 字节逻辑运算包括:
字节与、字节或、字节异或、字节取反
PLC 技术及应用
第六章 可编程序控制器的功能指令
• 概述 • 为了满足工业控制的需要,PLC生产厂家 为PLC 增添了过程控制,数据处理和特殊 功能指令,这些指令我们称为功能指令。 • 类型:传送、移位及填充指令;算术运算 及逻辑运算指令;数据转换指令;高速处 理指令;通信指令;PID指令。
6.2 程序控制类指令
MOV-BIR EN ENO IN OUT MOV-BIW EN ENO IN OUT
传送字节立即写(BIW)指令, 将从输入端(IN)指定字节地址的 内容写入输出端(OUT)指定字节 地址的物理输出点(QB)。
BIR
IN,OUT
BIW
IN,OUT
不受扫描周期影响
传送字节立即读
传送字节立即写
6.4.3
整数 乘法
*I
MUL-I MUL-DI MUL-R MUL
整数完 全乘法
EN ENO IN1 IN2 OUT
EN ENO IN1 IN2 OUT *D IN1,OUT
EN ENO IN1 IN2 OUT
EN ENO IN1 IN2 OUT MUL IN1,OUT
IN1,OUT
*R
IN1,OUT
4.除法指令
整数完全除法指令,把输入端(IN)指定的两个16位整数相除,产生一个32位 结果,并送到输出端(OUT)指定的存储单元中去。其中高16位是余数,低16 位是商。
整数加法、减法、乘法、除法------字
双整数加法、减法、乘法、除法-----------双字
整数完全乘法、除法----------输入位字,输出为双字
MOV-W EN ENO
VW100 IN VD10
OUT AC0
AC0
10
46
MOVW VW100,AC0
若I0.1=1,则将VW100的数据传送到AC0
2.数据块传送指令
BLKMOV-B BLKMOV-W BLKMOV-DW
EN IN N MOVB
ENO OUT
EN IN N MOVW
ENO OUT
//使能输入 //字增指令 //每执行一次一级 //循环体,VW100 //的值增 1
NEXT
//循环结束指令
•图2
程序循环(2)
返回本节
• • • •


FOR指令表示循环的开始,NEXT指令表示 循环的结束, 注意事项: (1)如果启动了FOR/NEXT循环,除非在循 环内部修改了结束值,否则循环就一直进行, 直到循环结束。 (2)再次启动循环时,它将初始值INIT传送到 指针INDX中。 FOR指令必须与NEXT指令配套使用。允许 循环嵌套,最多可嵌套8层。(图6-3)
相关文档
最新文档