西门子PLC指令教程应用指令

合集下载

西门子S7-200 PLC的指令系统及指令应用

西门子S7-200 PLC的指令系统及指令应用

说明: 根据控制要求,程序在 M0.1 处应该输出 Q0.1,在 M0.2 处也应该输出 Q0.1 如果在 M0.1 及 M0.2 处直接输出 Q0.1,则就范了上面程序双线圈错误, 因此在需要输出 Q0.1 的地方,输出不同的中间继电器,然后把中间继电器的常 开点并联起来,再集中输出一个 Q0.1 的线圈,这样就能避免双线圈的问题。 或者下面的程序也能正确的满足控制要求:
分析: 若 A 先按下按钮, 则 Q0.1 灯要亮, 并且一直亮, 直到主持人按下复位按钮 I0.0, 灯才会灭。其他人按下按钮,对应的灯也不会亮。 若 B 先按下按钮, 则 Q0.2 灯要亮, 并且一直亮, 直到主持人按下复位按钮 I0.0, 灯才会灭。其他人按下按钮,对应的灯也不会亮。 同理,C、D 一样 以下程序是分析后得出的:
地址:苏州吴中宝丰路 1 号
咨询: 400-8169-114
苏州天天自动化 PLC 培训中心

触点指令应用案例 3:
用一个按钮(I0.1)来控制三个输出(Q0.1、Q0.2、Q0.3) 。 当 Q0.1、Q0.2、Q0.3 都为 OFF 时,按第一下 I0.1,则 Q0.1 变为 ON, 按第二下 I0.1,则 Q0.1、Q0.2 变为 ON, 按第三下 I0.1,则 Q0.1、Q0.2、Q0.3 都变 ON 按第四下 I0.1,则 Q0.1、Q0.2、Q0.3 都变为 OFF 状态。 按第五下 I0.1,重复执行如上动作。 试用两种不同的程序设计方法设计其梯形图程序。 以下是分析后得出的程序:
上图梯形图中,”N”此条件只有当 I0.0 由接通→断开的瞬间(也就是上面波形 图中的过程 4 这个状态时)才会接通,其他时刻都不会接通。
应用案例 1:每按一下 I0.1 按钮,变量存储器的数值加 1

西门子PLC指令教程 应用指令

西门子PLC指令教程 应用指令
//禁 止
•图5.10 中断调用程序
•第5章 应用指令
3. 中断程序 (1)构成 中断程序必须由三部分构成:中断程序标号、 中断程序指令和无条件返回指令。 (2)要求 (3)编制方法 (4)注意事项
返回本节
•第5章 应用指令
5.2.3 通信
通信指令包括: XMT,自由口发送指令 RCV,自由口接收指令 NETR,网络读指令 NETW,网络写指令 GPA,获取口地址指令
2. 写实时时钟 TODW,写实时时钟指令。用来设定实时时钟。 当使能输入有效时,系统将包含当前时间和日 期,一个8字节的缓冲区将装入时钟。
•第5章 应用指令
时钟缓冲区的格式如表5.2所示。
•表5.2 时钟缓冲区
•第5章 应用指令
程序实例 控制要求: 编写一段程序,可实现读、写实时时钟,并以BCD码显示分钟。时 钟缓冲区从VB100开始。 程序中的子程序SBR_0为写时钟子程序,将当前时间写入从VB100 开始的8字节时间缓冲区,时间设置如下表5.3所示。程序实现:读 写时钟程序如图5.9所示。
//使能输入 //调用子程序 //SBR_1
•图5.4 子程序调用举例
•第5章 应用指令
3. 带参数的子程序调用
(1)子程序参数 ➢变量名 ➢变量类型 ➢数据类型 (2)参数子程序调用的规则 (3)变量表使用 (4)程序实例
•第5章 应用指令
以上面指令为例,局部变量表分配如表5.1所示, 程序段如图5.5所示。
LD CALL
I0.0 SBR_0
//使 能 输 入 //调 用 子 程 序 0 //本 梯 级 为 二 级 //循 环 体 的 功 能 段
NEXT
//循 环 结 束 指 令
LD IN C W

西门子s7-200PLC基本指令

西门子s7-200PLC基本指令
•当输入能流断开时停止计时,同时定时器位被置0、清除 当前值。 •定时器号(Txx)决定了定时器的分辨率。
15:33
14
15:33
15
2、保持型接通延时定器(TONR)
Txx IN TONR PT
•在输入(IN)收到能流时,从当前值开始计时; •当当前值达到预置值(PT)时,定时器位被置1; •当输入能流断开时停止计时,定时器位、当前值保持不变; •必须用复位指令才能清除定时器位和当前值; •定时器号(Txx)决定了定时器的分辨率。
???
② 置位线圈指令
(S) xxx
???位代表位起始地址
当指令收到能流时,则???指定位开始的XXX个位被置1;
当指令没收到能流时,则???指定的位状态不变 。
???
③ 复位线圈指令 (xRxx) ???位代表位起始地址
当指令收到能流时,则???指定位开始的XXX个位被置0;
当指令没收到能流时,则???指定的位状态不变 。
1. 基本逻辑指令 2. 堆栈操作指令* 3. 定时器指令 4. 计数器指令 5. 比较指令
15ห้องสมุดไป่ตู้33
2
一、基本逻辑指令
1、触点指令
???
① 检查闭指令 其中???位代表位地址 当???指定地址的数据为1时, 指令结果接通能流; 否则,指令结果断开能流。
???
② 检查开指令 其中???位代表位地址 当???指定地址的数据为0时, 指令结果接通能流; 否则,指令结果断开能流。
15:33
21
2、减计数器减计数指令(CTD)
Cxx CD CTD LD PV
从当前计数值开始,在每一个(CD)输入状态 的低到高时递减计数。
•当CXX的当前值等于0时,计数器位CXX置位。

S7-200 PLC功能指令及应用

S7-200 PLC功能指令及应用

4
ቤተ መጻሕፍቲ ባይዱ
转换指令
转换指令是指对操作数的类型进行转换,包括数据的类型转换、码的 类型转换以及数据与码直接的类型转换。
1. 数据类型转换指令
2. 编码与译码指令 3. 段码指令 4. ASCII码转换指令 5. 字符串转换指令
1
数据类型转换指令
可编程序控制器中的主要数据类型包括字节、整数、双整数和实数。 主要的码制BCD码、ASCII码、十进制数和十六进制数等等。 不同性质的指令对操作数的类型要求不同。 在指令使用之前需要将操作数转化成相应的类型,这样才能保证指令的正确执行。 (1)字节与整数 字节到整数 指令格式:LAD及STL指令格式如图6-18a所示 功能描述:将字节型输入数据IN转换成整数类型,并将结果送到OUT输出。 字节型是无符号的,所以没有符号扩展位。 数据类型:输入为字节,输出为INT。 整数到字节 指令格式:LAD及STL指令格式如图6-18b所示 功能描述:将整数输入数据IN转换成字节类型,并将结果送到OUT输出。 输入数据超出字节范围(0~255)时产生溢出。 数据类型:输入为INT,输出为字节。
VM104
VM106 VM108 VM110 VM112
1203
4467 9086 3592 222
数据0
数据1 数据2 数据3 将VM200中的数据填入表中
VM114
****
无效数据
2
表取数指令
从表中取出一个字型数据可有两种方式:先进先出式和后进先出式。 一个数据从表中取出之后,表的实际填表数EC值减小1.两种方式的指令在梯形图中有 2个数据端。 (1):先进先出式 FIFO 指令格式:LAD及STL指令格式如图6-17b所示
值为当前的英寸计数值,1英寸=2.54厘米.(VD4)=2.54。

西门子PLC编程指令

西门子PLC编程指令

西门子PLC编程指令1、位逻辑指令(1)-||-常开接点(地址)(2)-|/|-常闭接点(地址)(3)XOR位异或(4)-|NOT|-信号流反向(5)-()输出线圈(6)-(#)-中间输出(7)-(R)线圈复位(8)-(S)线圈置位(9)RS复位置位触发器(10)RS置位复位触发器(11)-(N)-RLO下降沿检测(12)-(P)-PLO上升沿检测(13)-(SAVE)将RLO存入BR存储器(14)MEG地址下降沿检测(15)POS地址上升沿检测2、比较指令(1)CMP?I整数比较(2)CMP?D双整数比较(3)CMP?R实数比较3、转换指令(1)BCD_IBCD码转换为整数(2)I_BCD整数转换为BCD码(3)I_DINT整数转换为双整数(4)BCD_DIBCD码转换为双整数(5)DI_BCD双整数转换为BCD码(6)DI_REAL双整数转换为浮点数(7)INV_I整数的二进制反码(8)INV_DI双整数的二进制反码(9)NEG_I整数的二进制补码(10)NEG_DI双整数的二进制补码(11)NEG_R浮点数求反(12)ROUND舍入为双整数(13)TRUNC舍去小数取整为双整数(14)CEIL上取整(15)FLOOR下取整4、计数器指令(1)S_CUD加减计数(2)S_CU加计数器(3)S_CD减计数器(4)-(SC)计数器置初值(5)-(CU)加计数器线圈(6)-(CD)减计数器线圈5、数据块指令(1)-(OPN)打开数据块:DB或DI6、逻辑控制指令(1)-(JMP)无条件跳转(2)-(JMP)条件跳转(3)-(JMPN)若非则跳转(4)LABEL标号7、整数算术运算指令(1)ADD_I整数加法(2)SUB_I整数减法(3)MUL_I整数乘法(4)DIV_I整数除法(5)ADD_DI双整数加法(6)SUB_DI双整数减法(7)MUL_DI双整数乘法(8)DIV_DI双整数除法(9)MOD_DI回送余数的双整数8、浮点算术运算指令(1)基础指令①ADD_R实数加法②SUB_R实数减法③MUL_R实数乘法④DIV_R实数除法⑤ABS浮点数绝对值运算(2)扩展指令①SQR浮点数平方②SQRT浮点数平方根③EXP浮点数指数运算④LN浮点数自然对数运算⑤SIN浮点数正弦运算⑥COS浮点数余弦运算⑦TAN浮点数正切运算⑧ASIN浮点数反正弦运算⑨ACOS浮点数反余弦运算⑩ATAN浮点数反正切运算9、赋值指令(1)MOVE赋值10、程序控制指令(1)-(Call)从线圈调用FC/SFC(无参数) (2)CALL_FB从方块调用FB(3)CALL_FC从方块调用FC(4)CALL_SFB从方块调用SFB(5)CALL_SFC从方块调用SFC(6)-(MCR<)主控继电器接通(7)-(MCR>)主控继电器断开(8)-(MCRA)主控继电器启动(9)-(MCRD)主控继电器停止(10)-(RET)返回11、移位和循环指令(1)移位指令①SHR_I整数右移②SHR_DI双整数右移③SHL_W字左移④SHR_W字右移⑤SHL_DW双字左移⑥SHR_DW双字右移(2)循环指令①ROL_DW双字左循环②ROR_DW双字右循环12、状态位指令(1)OV-||-溢出异常位(2)OS-||-存储溢出异常位(3)UO-||-无序异常位(4)BR-||-异常位二进制结果(5)==0-||-结果位等于"0"(6)<>0-||-结果位不等于"0" (7)>0-||-结果位大于"0"(8)<0-||-结果位小于"0"(9)>=0-||-结果位大于等于"0" (10)<=0-||-结果位小于等于"0"13、定时器指令(1)S_PULSE脉冲S5定时器(2)S_PEXT扩展脉冲S5定时器(3)S_ODT接通延时S5定时器(4)S_ODTS保持型接通延时S5定时器(5)S_OFFDT断电延时S5定时器(6)-(SP)脉冲定时器线圈(7)-(SE)扩展脉冲定时器线圈(8)-(SD)接通延时定时器线圈(9)-(SS)保持型接通延时定时器线圈(10)-(SF)断开延时定时器线圈14、字逻辑指令(1)WAND_W字和字相"与"(2)WOR_W字和字相"或"(3)WAND_DW双字和双字相"与" (4)WOR_DW双字和双字相"或" (5)WXOR_W字和字相"异或" (6)WXOR_DW双字和双字相"异或“。

S7-200西门子PLC基础教程第6章 PLC的应用指令

S7-200西门子PLC基础教程第6章  PLC的应用指令

② 字的数据块传送指令,当使能输入 端有效时,把从输入IN字节开始的N个字 的数据传送到以输出字OU输 入端有效时,把从输入IN双字开始的N个 双字的数据传送到以输出双字OUT开始的 N个双字的存储区中。
传送指令的数据类型,IN,OUT操作 数据类型为B、W、DW;N(BYTE)的 数据范围0~255。
2.块传送指令的应用
当使能输入有效(I0.1为ON)时,将 VW0开始的连续3个字传送到VW10~ VW12中。梯形图及传送结果如图6-2所示。
图6-2 块传送指令的应用
6.1.3 字节交换/填充指令
字节交换/填充指令格式见表6-3。
1.字节交换指令
字节交换(SWAP)指令用来实现输 入字的高字节与低字节的交换。
1.初始化程序的设计
存储器初始化程序是用于PLC开机运 行时对某些存储器清0或设置的一种操作。 常采用传送指令来编程。若开机运行时将 VB20清0,将VW20设置为200,则对应的 梯形图程序如图6-5所示。
图6-5 存储器的清0与设置
2.多台电动机同时起动、停止的 梯形图程序
设4台电动机分别由Q0.1、Q0.2、 Q0.3和Q0.4控制,I0.1为起动按钮,I0.2为 停止按钮。用传送指令设计的梯形图程序 如图6-6所示。
图6-9 自复位接通延时定时器
2.3台电动机的分时起动控制
当按下起动按钮I0.1时,3台电动机每 隔5 s分别依次起动;按下停止按钮I0.2时, 3台电动机Q0.1、Q0.2和Q0.3同时停止。对 应梯形图程序如图6-10所示。
图6-10 3台电动机分时起动的梯形图程序
6.3 数据移位与循环指令
当使能输入有效时,用来实现输入字 的高字节与低字节的交换。 字节交换指令的应用举例如图6-3所示。

西门子PLC的基本指令及程序设计

西门子PLC的基本指令及程序设计
*
4.逻辑出栈指令
LPP,逻辑弹出栈指令(分支结束或主控复位指令)。在梯形图中的分支结构中,用于将LPS指令生成一条新的母线进行恢复。
注意:使用LPP指令时,必须出现在LPS的后面,与LPS成对出现。
在语句表中指令LPP执行情况如下表所示。
*
5.逻辑读栈指令
在语句表中指令LRD 执行情况如下表所示。
*
图5-9 立即指令的用法
*
图5-10 时序图
上图5-10中,t为执行到输出点处程序所用的时间,Q0.0、Q0.1、Q0.2的输入逻辑是I0.0的普通常开触点。Q0.0为普通输出,在程序执行到它时,它的映像寄存器的状态会随着本扫描周期采集到的I0.0状态的改变而改变,而它的物理触点要等到本扫描周期的输出刷新阶段才改变;Q0.1、Q0.2为立即输出,在程序执行到它们时,它们的物理触点和输出映像寄存器同时改变;而对Q0.3来说,它的输入逻辑是I0.0的立即触点,所以在程序执行到它时,Q0.3的映像寄存器的状态会随着I0.0即时状态的改变而立即改变,而它的物理触点要等到本扫描周期的输出刷新阶段才改变。
01
04
02
03
接通延时定时器TON
接通延时定时器指令用于单一间隔的定时。上电周期或首次扫描,定时器位OFF,当前值为0。使能输入接通时,定时器位为OFF,当前值从0开始计数时间,当前值达到预设值时,定时器位ON,当前值连续计数到32767。使能输入断开,定时器自动复位,即定时器位OFF,当前值为0。
5.1.8 脉冲生成指令
脉冲生成指令为EU(Edge Up)、ED(Edge Down).下表为脉冲生成指令使用说明
*
EU指令对其之前的逻辑运算结果的上升沿产生一个宽度为一个扫描周期的脉冲,如图中的M0.0;ED指令对其逻辑运算结果的下降沿产生一个宽度为一个扫描周期的脉冲,如图中的M0.1。脉冲指令常用于启动及关断条件的判定以及配合功能指令完成一些逻辑控制任务。

PLC功能指令及其应用西门子

PLC功能指令及其应用西门子
不执行“JMP 1”指令,而从网络 2顺序执行手动控制程序段。此时, 因I0.3常闭触点闭合,执行“ JMP 2”指令,跳过自动控制程序段到 标号2处结束。
? (2)自动工作方式:当 SB3处于接通状态时, I0.3常开触点闭合, 执行“JMP 1”指令,跳过网络 2和网络3到网络4标号1处,执行网络 5的自动控制程序段,然后顺序执行到指令语句结束。
电器第0个字节,共 8位。其中第 0位是最低位,第 7位为 最高位。其表示格式如图 4-1所示。
? (1)位
? 位表示格式为:Q [字节地址].[位地址]。如Q0.0表示输出继 电器第0个字节的第0位
? (2)字节
? 字节表示格式为:QB[起始字节地址]。如QB0表示输出继 电器第0个字节,共8位。其中第0位是最低位,第7位为最 高位。其表示格式如图4-4所示
如图4-26所示为LED组成的七段数码管外形和内部结 构,七段数码管分为共阴极结构和共阳极结构。以 共阴极数码管为例,当a、b、c、d、e、f段接高电 平发光,g段接低电平不发光时,显示数字“0”。当 七段均接高电平发光时,则显示数字“8”。
十进制数码 g
f
七段显示电平
e
d
cHale Waihona Puke ba16进制显示 代码
? 【例4.5】某生产线有5台电动机,要求每台电动机间隔5s启动,试用比 较指令编写启动控制程序。
4.3.4 传送带的PLC控制电路与程序
? 1.控制要求 ? 用如图4-20所示的传送带输送工件,数量为20个。连接I0.0
端子的光电传感器对工件进行计数。当计件数量小于15时, 指示灯常亮;当计件数量等于或大于15时,指示灯闪烁; 当计件数量为20时,10s后传送带停止,同时指示灯熄灭。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

//存于 VW100
LDI>= JMP LBL
C30, +500 //判断计数器
//当前值是否
//大于 500
10
//条件满足,跳转
//到标号 10 开始
//的程序段
10
//标志程序段
LD
I0.3
//
S
Q1.0 , 3 //把从 Q1.0 开始的
//3 个输出点置 1
• 5.3
图 程 序 跳 转 实 例
//
•图5.2 停止、结束、看门狗指令
返回本节
5.1.4 跳转
1. 跳转指令 与跳转相关的指令有下面两条:
(1)跳转指令 JMP,跳转指令。使能输入有效时,使程序流程跳到 同一程序中的指定标号n处执行。执行跳转指令时,逻 辑堆栈的栈顶值总是1。 (2)标号指令 LBL,标号指令。标记程序段,作为跳转指令执行时跳 转到的目的位置。操作数n为0~255的字型数据。
(1)数量及编号
高速计数器在程序中使用时的地址编号用HCn来表示(在非程序 中有时用HSCn),HC表编程元件名称为高速计数器,n为编号。
HCn除了表示高速计数器的编号之外,还代表两方面的含义:高 速计数器位和高速计数器当前值。编程时,从所用的指令可以看 出是位还是当前值。
不同型号的PLC主机,高速计数器的数量对应如表5.7所示。
•图5.4 子程序调用举例
3. 带参数的子程序调用
(1)子程序参数 变量名 变量类型 数据类型 (2)参数子程序调用的规则 (3)变量表使用 (4)程序实例
以上面指令为例,局部变量表分配如表5.1所示, 程序段如图5.5所示。
•表5.1 局部变量表例
LD CALL
I0.0
//装入常开触点
(1)中断调用指令
(2)注意事项
(3)程序实例
(3)程序实例
控制要求:
程序实现的功能是调 用 I0.1输 入点 的 上 升 沿中断,若发现I/O错 误,则禁止本中断, 用外部条件可以禁止 全局中断。
程序实现:本程序如 图5.10所示。
LD
I0.4
//使能输入
ATCH ENI
INT_1, 2 //中断调用 //中断程序 //为 INT_1 //事件号为 2 //全局开中断 //
LD O O STOP
SM5.0 SM4.3 I0.3
LD
I0.5
END
//检查 I/O 错误 //运行时刻检查编程 //外部切换开关 //条件满足,由 RUN // 切换到 STOP 方式 // // //外部停止控制 //停止程序执行 // //
LD WDR
A
M0.4
I0.2
//用触点重新触发 //看门狗定时器
•图5.8 与ENO指令
返回本节
5.2 特殊指令
5.2.1 时钟指令 5.2.2 中断 5.2.3 通信 5.2.4 高速计数 5.2.5 高速脉冲输出 5.2.6 PID回路指令
返回本章首页
5.2.1 时钟指令
1. 读实时时钟
TODR,读实时时钟指令。当使能输入有效时, 系统读当前时间和日期,并把它装入一个8字节 的缓冲区。
LD
I0.0
NOP 30
//使能输入 //空操作指令 //标号为 30
返回本节
5.1.2 结束及暂停
1. 结束指令
结束指令有两条:END和MEND。两条指令在 梯形图中以线圈形式编程。
END,条件结束指令。使能输入有效时,终 止用户主程序。
MEND无条件结束指令。无条件终止用户程序 的执行,返回主程序的第一条指令。
SM0.0 VB100
//运行有效 // 从 VB100 //读时钟值
//
// VB104, QB0
//传送指令
//将分钟值 //从 QB0 输出
•图5.9 读写时钟
返回本节
5.2.2 中断
1. 中断源
(1)中断源及种类
中断源,即中断事件发出中断请求的来源。S7200可编程序控制器具有最多可达34个中断源, 每个中断源都分配一个编号用以识别,称为中 断事件号。这些中断源大致分为三大类:通信 中断、输入输出中断和时基中断。
5.1.5 子程序指令
1. 建立子程序 2. 子程序调用 3. 带参数的子程序调用
1. 建立子程序
可 用 编 程 软 件 Edit 菜 单 中 的 Insert 选 项 , 选 择 Subroutine,以建立或插入一பைடு நூலகம்新的子程序, 同时在指令树窗口可以看到新建的子程序图标, 默认的程序名是SBR_n,编号n从0开始按递增 顺序生成,可以在图标上直接更改子程序的程 序名。在指令树窗口双击子程序的图标就可对 它进行编辑。
(3)工作模式及输入点 工作模式
输入端连接
高 速 计 数 器 的 工 作 模 式 共 有 12 种 。 以模式4为例,时序如图5.11所示。
时钟 方向
当前值
6
5
5
4
4
3
2
1
0
A
B
C
D
E
F
G
H
I
•图5.11 模式4操作时序
•选用某个高速计数器在某种工作模式下工作, 高速计数器的输入端不是任意选择,必须按系 统指定的输入点。如表5.9所示。
2. 高速计数指令
高 速 计 数 器 指 令 有 两 条 : HDEF 和 HSC。
(1)HDEF指令
HDEF,定义高速计数器指令。使能 输入有效时,为指定的高速计数器分 配一种工作模式,即用来建立高速计 数器与工作模式之间的联系。梯形图 指 令 盒 中 有 两 个 数 据 输 入 端 : HSC , 高速计数器编号,为0~5的常数,字 节 型 ; MODE , 工 作 模 式 , 为 0~11 的常数,字节型。
LD
T50
SCRT S0.6
SCRE
//延时时间到 //作为切换条件 //步转移 //切换到下一步 //同时关本步 // //本步结束标志
返回本节
5.1.8 与ENO指令
AENO,与ENO指令。ENO是梯形图和功能框 图编程时指令盒的布尔能流输出端。如果指令 盒的能流输入有效,同时执行没有错误,ENO 就置位,将能流向下传递。当用梯形图编程时, 且指令盒后串联一个指令盒或线圈,语句表语 言中用AENO指令描述。
程序中的子程序SBR_0为写时钟子程序,将当前时间写入从VB100 开始的8字节时间缓冲区,时间设置如下表5.3所示。程序实现:读 写时钟程序如图5.9所示。
LD EU CALL
LD TODR
MOVB
I0.4
//装入触点
//上跳沿触发
SBR_0
//调用子程序 //子程序 SBR_0 //作用为写时钟
SBR_0, I0.2, VB20, VD30 // //调用子程序 SBR_0
//含有 3 个参数:
//分别为布尔、字节
//和双字型
•图5.5 带参数的子程序调用
返回本节
5.1.6 程序循环
1. 循环开始 2. 循环结束 3. 程序实例
LD
M0.0 // 使能输入
FOR
VW10, +1, +20 //循环开始
程序实例: 如右图5.3所示。用增减计数器进行计数, 如果当前值小于500,则程序按原顺序执 行,若当前值超过500,则跳转到从标号 10开始的程序执行。
返回本节
LD LD LD CTUD
I0.0
//增计数输入端
I0.1
//减计数输入端
I0.2
//复位输入端
C30, VW100 //增减计数
//设定脉冲数
2. 写实时时钟
TODW,写实时时钟指令。用来设定实时时钟。 当使能输入有效时,系统将包含当前时间和日 期,一个8字节的缓冲区将装入时钟。
时钟缓冲区的格式如表5.2所示。
•表5.2 时钟缓冲区
程序实例
控制要求:
编写一段程序,可实现读、写实时时钟,并以BCD码显示分钟。时 钟缓冲区从VB100开始。
(2)中断优先级
中断优先级由高到低依次是:通信中断、输入 输出中断、时基中断。每种中断中的不同中断 事件又有不同的优先权。
主机中的所有中断事件及优先级如表5.4所示。
•表5.4 中断事件及优先级
2. 中断调用
即调用中断程序,使系统对特殊的内部或外部 事件作出响应。系统响应中断时自动保存逻辑 堆栈、累加器和某些特殊标志存储器位,即保 护现场。中断处理完成时,又自动恢复这些单 元原来的状态,即恢复现场。
(2)中断事件类型
高速计数器的计数和动作可采用中断方式进行控制,与CPU的扫 描周期关系不大,各种型号的PLC可用的高速计数器的中断事件 大致分为3类:当前值等于预设值中断、输入方向改变中断和外部 复位中断。所有高速计数器都支持当前值等于预设值中断。
每个高速计数器的3种中断的优先级由高到低,不同高速计数器之 间的优先级又按编号顺序由高到低。具体对应关系如表5.8所示。
//与第 2 个 NEXT
//之间为一级循环体
LD
M0.1
//使能输入
FOR
VW20, +1, +5
//循环开始
//与第 1 个 NEXT
//之间为二级循环体
•图5.6 程序循环(1)
LD CALL
I0.0 SBR_0
//使能输入 //调用子程序 0 //本梯级为二级 //循环体的功能段
NEXT
//循环结束指令
指令格式:AENO(无操作数)
•AENO指令只能在语句表中使用,将栈顶值和 ENO位的逻辑与运算,运算结果保存到栈顶。程 序如图5.8所示。
LD +I AENO ATCH
相关文档
最新文档