南山区仪器仪表公司车间贵重仪器仪表借用手续

作者: 应用领域  发布:2020-02-06

  三菱PLC功能指令介绍及应用举例_信息与通信_工程科技_专业资料。三菱PLC功能指令介绍及应用举例

  专题5 PLC功能指令的应用 5.1 用数据传送指令实现电动机的Y-△降压启动控制 5.2 用跳转指令实现选择运行程序段 5.3 算术运算指令与单按钮的功率控制 5.4 字逻辑运算指令及应用 5.5 子程序调用指令及应用 5.6 循环指令及应用 5.7 比较指令的应用与时钟控制程序 5.8 循环移位指令及应用 5.9 数码显示及应用 5.1 用数据传送指令实现电动机的Y-△降压启动控制 5.1.1 位元件与字元件 1.位元件 只具有接通(ON或1)或断开(OFF或0)两种状态的元件称为位元件。 2.字元件 字元件是位元件的有序集合。FX系列的字元件最少4位,最多32位。 表5.1 符 号 KnX KnY KnM KnS T C D V、Z 字元件范围 表 示 内 容 输入继电器位元件组合的字元件,也称为输入位组件 输出继电器位元件组合的字元件,也称为输出位组件 辅助继电器位元件组合的字元件,也称为辅助位组件 状态继电器位元件组合的字元件,也称为状态位组件 定时器T的当前值寄存器 计数器C的当前值寄存器 数据寄存器 变址寄存器 (1)位组件。多个位元件按一定规律的组合叫位组件,例如输出位组件 KnY0,K表示十进制,n表示组数,n的取值为1~8,每组有4个位元件,Y0 是输出位组件的最低位。KnY0的全部组合及适用指令范围如表5.2所示。 表5.2 指令适用范围 KnY0的全部组合及适用指令范围 KnY0 K1Y0 K2Y0 K3Y0 K4Y0 K5Y0 包含的位元件最高位~最低位 Y3~Y0 Y7~Y0 Y13~Y0 Y17~Y0 Y23~Y0 Y27~Y0 Y33~Y0 Y37~Y0 位元件个数 4 8 12 16 20 24 28 32 N取值1~8 适用 32位指令 N取值1~4 适用 16位指令 N取值5~8 只能使用 32位指令 K6Y0 K7Y0 K8Y0 (2)数据寄存器D、V、Z 图5.1 16位与32位数据寄存器 表5.3 通 用 数据寄存器D、V、Z元件编号与功能 停电保持专用(不可 变更) D512~D7999 共7488点 特 殊 用 D8000~D8195 共106点 变 址 用 V7-V0,Z7-Z0 共16点 停电保持用(可用程 序变更) D200~D511 共312点 D0~ D199 共200点 16位数据寄存器所能表示的有符号数的范围为K?32 768~32 767。 32位数据寄存器所能表示的有符号数的范围为K?2 147 483 648~ 2 147 483 647 5.1.2 数据传送指令MOV 表5.4 传送指令 D(32位) P(脉冲型) FNC12 MOV S(源) D(目标) MOV指令 操 作 数 K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z KnY、KnM、KnS、T、C、D、V、Z 图5.2 功能指令格式 功能指令的使用说明: (1)FX2N系列PLC功能指令编号为FNC0~FNC246,实际有130个功能指令。 (2)功能指令分为16位指令和32位指令。功能指令默认是16位指令,加上前缀D是32位指 令,例如DMOV。 (3)功能指令默认是连续执行方式,加上后缀P表示为脉冲执行方式,例如MOVP。 (4)多数功能指令有操作数。执行指令后其内容不变的称为源操作数,用S表示。被刷新 内容的称为目标操作数,用D表示。 5.1.3 数据传送指令应用举例 【例题5.1】 设有8盏指示灯,控制要求是:当X0接通时,全部灯亮;当 X1接通时,奇数灯亮;当X2接通时,偶数灯亮;当X3接通时,全部灯灭。 试设计电路并用数据传送指令编写程序。 【解】 控制线控制线控制关系表 输出位组件 K2Y0 传送数据 H0FF Y7 ● Y6 ● ● Y5 ● Y4 ● ● Y3 ● Y2 ● ● Y1 ● Y0 ● ● X1 X2 X3 ● ● ● ● H0AA H55 H0 图5.4 例题5.1程序图 5.1.4 区间复位指令ZRST 表5.6 区间复位指令 P FNC40 ZRST ZRST指令 操 作 数 D1、D2 操作数范围 Y、M、S、T、C、D 图5.5 区间复位指令ZRST 如图5.5所示,当指令语句“ZRST Y0 Y3”执行时将Y0、Y1、Y2、 Y3全部复位为0状态。 5.1.5 实习操作:电动机Y-△降压启动控制线 Y-△降压启动控制线 Y-△降压启动过程和传送控制数据表 操作元件 SB2 状 态 输入端 口 X2 输出端口/负载 Y3/KM3 0 0 1 Y2/KM2 1 0 0 0 0 Y1/KM1 1 1 1 0 0 Y0/HL 1 1 0 0 1 传送数据 K7 K3 K10 K0 K1 形启动 T0延时10s T0延时到 T1延时1s T1延时到 △形运转 SB1 KH 停止 过载保护 X1 X0 0 0 图5.7 Y-△降压启 动程序梯形图 5.2 用跳转指令实现选择运行程序段 应用跳转指令的程序 结构如图5.8所示。X3是 手动/自动选择开关的信号 输入端。当X3未接通时, 执行手动程序段,反之执 行自动程序段。X3的常开/ 常闭接点起联锁作用,使 手动、自动两个程序段只 能选择其一。 图5.8 手动/自动程序跳转 5.2.1 条件跳转指令CJ 表5.8 条件跳转指令 P FNC0 CJ CJ指令 操 作 数 程 序 步 标号 P0~P127 P63表示跳到END CJ 3步 标号P 1步 1.标号P的说明 (1)FX2N系列PLC的标号P有128点(P0~P127),用于分支和跳转 程序。 (2)标号P放置在左母线的左边,一个标号只能出现一次,如出现两 次或两次以上,程序报错。标号P占一步步长。 2.跳转指令CJ的说明 (1)如果跳转条件满足,则执行跳转指令,程序跳到以标号P为入口 的程序段中执行。否则不执行跳转指令,按顺序执行下一条指令。 (2)多个跳转指令可以使用同一个标号。 (3)如果用M8000作为控制跳转的条件,CJ则变成无条件跳转指令。 5.2.2 条件跳转指令应用举例 【例题5.2】 某台设备具有手动/自动两种操作方式。SB3是操作方式选择开关,当 SB3处于断开状态时,选择手动操作方式;当SB3处于接通状态时,选择自动操作方 式,不同操作方式进程如下: 手动操作方式进程:按启动按钮SB2,电动机运转;按停止按钮SB1,电动机停机。 自动操作方式进程:按启动按钮SB2,电动机连续运转1min后,自动停机。按停止 按钮SB1,电动机立即停机。 图5.9 例题5.2控制线路图 【解】 根据控制要求,设计程序梯形图如图5.10所示。 图5.10 例题5.2程序梯形图 5.3 算术运算指令与单按钮的功率控制 5.3.1 加法指令ADD 表5.10 ADD指令 加法指令 D P FNC20 ADD S1、S2 D 操 作 数 K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z KnY、KnM、KnS、T、C、D、V、Z 1. 加法指令ADD的说明 (1)加法运算是代数运算。 (2)若相加结果为0,则零标志位M8020 = 1,可用来判断两个数是否 为相反数。 (3)加法指令可以进行32位操作方式。 例如指令语句“DADD D0 D10 D20”的操作数构成如图5.11所示。 被加数的低16位在D0中,高16位在D1中;加数的低16位在D10中,高 16位在D11中;“和”的低16位在D20中,高16位在D21中。 图5.11 32位加法指令操作数的构成 2.加法指令ADD举例 图5.12 加法指令ADD的举例1 图5.13 加法指令ADD的举例2 图5.14 加法指令ADD的举例3 5.3.2 减法指令SUB 表5.11 减法指令 D P FNC21 SUB S1、S2 D SUB指令 操 作 数 K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z KnY、KnM、KnS、T、C、D、V、Z 1.减法指令SUB的说明 (1)减法运算是代数运算。 (2)若相减结果为0时,则零标志位M8020 = 1,可用来判断两个数是否 相等。 (3)SUB可以进行32位操作方式,例如指令语句:DSUB D0 D10 D20。 2.减法指令SUB举例 两个数据寄存器中存储的数据相减,程序如图5.15所示。如果X0接 点闭合,成都科达瑞仪器仪表有限公司执行数据传送指令。如果X1接点闭合,执行减法指令,减法运 算的结果差(8?2 = 6)存在D30中。 图5.15 减法指令SUB的举例 5.3.3 乘法指令MUL 表5.12 乘法指令 D P FNC22 MUL S1、S2 D MUL指令 操 作 数 K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z KnY、KnM、KnS、T、C、D、V、Z 1.乘法指令MUL的说明 (1)乘法运算是代数运算。 (2)16位数乘法:源操作数S1、S2是16位,目标操作数D占用32位。 例如乘法指令语句“MUL D0 D10 D20”,被乘数存储在D0,乘数存储在 D10,积则存储在D21、D20组件中。操作数结构如图5.16所示。 图5.16 16位乘法的积占用32位 2.乘法指令MUL举例 运行监控模式的程序梯形图如图5.17所示。如果X0接点闭合,执行数 据传送指令。如果X1接点闭合,执行乘法指令,乘法运算的结果(8×2 = 16)存储在D31、D30目标操作数中。图5.17中D31存储的数据为0,D30存 储的数据为16。 图5.17 乘法指 令MUL的举例 5.3.4 除法指令DIV 表5.13 除法指令 D P FNC23 DIV S1、S2 D DIV指令 操 作 数 K、车间贵重仪器仪表借用手续H、KnX、KnY、KnM、KnS、T、C、D、V、Z KnY、KnM、KnS、T、C、D、V、Z 1.除法指令DIV的说明 (1)除法运算是代数运算。 (2)16位数除法:源操作数S1、S2是16位,目标操作数D占用32位。 除法运算的结果商存储在目标操作数的低16位,余数存储在目标操作数的 高16位中。 (3)32位除法:源操作数S1、S2是32位,但目标操作数却是64位。 除法运算的结果商存储在目标操作数的低32位,余数存储在目标操作数的高 32位。 例如除法指令语句“DIV D0 D10 D20”,被除数存储在D0,除数存储在 D10,商存储在D20,余数存储在D21,操作数的结构如图5.18所示。 图5.18 16位除法的商和余数构成32位目标操作数 2.除法指令DIV举例 运行监控模式的程序梯形图如图5.19所示。如果X0接点闭合,执行 数据传送指令。如果X1接点闭合,执行除法指令。除法运算结果的商7存 储在D30,余数1存储在D31。可以看出,数据除2后根据余数为1或为0可 判断数据的奇偶性。 图5.19 除法指令DIV的举例 5.3.5 加1指令INC 表5.14 加1指令 D P FNC24 INC D INC指令 操 作 数 KnY、KnM、KnS、T、C、D、V、Z 1.加1指令INC的说明 (1)INC指令的执行结果不影响零标志位M8020。 (2)在实际控制中通常不使用每个扫描周期目标操作数都要加1的 连续执行方式,所以,INC指令经常使用脉冲操作方式。 减1指令DEC和加1指令INC执行方式相似。 2.加1指令INC举例 运行监控模式的程序梯形图如图5.20所示。开机初始脉冲M8002将数 据寄存器D10清0。在X0接点闭合的那个扫描周期执行加1指令,D10的数 据被加1后存储,即(D10)+1→(D10)。图中X0共接通5次,D10中存 储的数据由0增加到5。 图5.20 加1指令INC的举例 5.3.6 实习操作:单按钮的功率控制程序 1.单按钮的功率控制线路和控制要求 单按钮的功率控制线所示。控制要求是:加热功率有7个挡 位可调,大小分别是0.5kW、1kW、1.5kW、2kW、2.5kW、3kW和3.5kW。 有1个功率选择按钮SB1和1个停止按钮SB2。第一次按SB1选择功率第1挡, 第二次按SB1选择功率第2挡……第八次按SB1或按SB2时,停止加热。 图5.21 单按钮 的功率控制线.单按钮功率控制的工序 表5.16 输出功率(kW) 0 0.5 1 1.5 2 单按钮功率控制的工序 字元件 K1M0 M3 0 0 0 0 0 M2 0 0 0 0 1 M1 0 0 1 1 0 M0 0 1 0 1 0 按SB1次数 0 1 2 3 4 2.5 3 3.5 0 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 0 5 6 7 8 3.单按钮的功率控制程序 图5.22 单按钮的功率控制程序 5.4 字逻辑运算指令及应用 5.4.1 逻辑字“与”指令WAND 表5.17 字“与”指令 D P FNC26 WAND S1、S2 D WAND指令 操 作 数 K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z KnY、KnM、KnS、T、C、D、V、Z 1.字“与”指令WAND的说明 (1)S1、S2为作相“与”逻辑运算的源操作数,D为存储“与”逻 辑运算结果的目标操作数。 (2)字“与”指令的功能是将两个源操作数的数据,进行二进制按 位相“与”,并将运算结果存入目标操作数。 2.字“与”指令WAND举例 假设要求用输入继电器X0~X4的位状态去控制输出继电器Y0~Y4, 可用字元件K2X0去控制字元件K2Y0。对字元件多余的控制位X5、X6和X7, 可与0相“与”进行屏蔽。程序如图5.23所示。 图5.23 应用字“与”指令的程序 图5.24 字“与”指令的位运算过程 5.4.2 逻辑字“或”指令WOR 表5.18 字“或”指令 D P FNC27 WOR S1、S2 D WOR指令 操 作 数 K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z KnY、KnM、KnS、T、C、D、V、Z 1.字“或”指令WOR的说明 (1)S1、S2为两个相“或”的源操作数,D为存储“或”逻辑结果的目 标操作数。 (2)指令的功能是将两个源操作数的数据,进行二进制按位相“或”, 并将运算结果存入目标操作数。 2.字“或”指令WOR举例 要求用输入继电器组成的字元件K2X0去控制由输出继电器组成的字元 件K2Y0,但Y3、Y4位不受字元件K2X0的控制而始终处于ON状态。可用字 “或”指令屏蔽X3、X4位,程序如图5.25所示。 图5.25 应用字“或”指令的程序 图5.26 字“或”指令的位运算过程 5.4.3 逻辑字“异或”指令WXOR 表5.19 字“异或”指令 D P FNC28 WXOR S1、S2 D WXOR指令 操 作 数 K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z KnY、KnM、KnS、T、C、D、V、Z 1.字“异或”指令WXOR的说明 (1)S1、S2为两个相“异或”的源操作数,D为存储“异或”逻辑 结果的目标操作数。 (2)指令的功能是将两个源操作数的数据,进行二进制按位相“异 或”,并将运算结果存入目标操作数。 2.字“异或”指令WXOR举例 要求用输入继电器组成的字元件K2X0的相反状态去控制由输出继电 器组成的字元件K2Y0,即X某位为“1”时,Y的相应位为“0”;X某位为“0” 时,Y的相应位为“1”。程序如图5.27所示。 图5.27 应用字“异或”指令的程序 图5.28 字“异或”指令运算过程 5.5 子程序调用指令及应用 图5.29 子程序调用与返回结构 5.5.1 子程序指令CALL、SRET与主程序结束指令FEND 表5.20 指令助记符 P FNC1 CALL FNC2 SRET FNC6 FEND CALL、SRET、FEND指令 操 作 数 程 序 步 标号 P0~P62 标号 P64~P127 无 无 CALL 3步 标号P 1步 SRET 1步 FEND 1步 FEND指令表示主程序结束。END是指整个程序(包括主程序和子程序)结束。 一个完整的程序可以没有子程序,但一定要有主程序。 子程序编写在FEND指令的后面,以标号P开头,以返回指令SRET结束。 如果子程序调用条件满足,则中断主程序去执行子程序,标号是被调用子程序 的入口地址。在子程序结束处一定要使用返回指令SRET,意思是返回主程序中断处 去继续执行主程序的下一条指令语句。 在子程序中,使用定时器的范围是T192~T199。 如果在子程序中再调用其他子程序称为子程序嵌套,嵌套总数可达5级。 标号P63相当于END。 子程序调用指令CALL与跳转指令CJ不能使用相同的标号。 5.5.2 实习操作:子程序调用举例 程序功能是:X1、X2、X3 分别接通时,将相应的数据传 送到D0、D10,然后调用子程 序;在子程序中,将D0、D10 存储的数据相加,运算结果存 储在D20,用D20存储数据控制 输出字元件K1Y0。 图5.30 应用子程序调用指令的程序 5.6 循环指令及应用 5.6.1 循环指令FOR、NEXT 指令助记符 操 作 数 K、H、KnX、成都科达瑞仪器仪表有限公司KnY、KnM、KnS、T、C、 D、V、Z 无 程序步 循环开始 循环结束 FNC8 FOR FNC9 NEXT 3 1 1.循环指令FOR、NEXT的说明 FOR、NEXT指令必须成对出现, 缺一不可。位于FOR、NEXT之间 的程序称为循环体,在一个扫描周 期内,循环体反复被执行。FOR指 令的操作数用于指定循环的次数, 只有执行完循环次数后,才执行 NEXT的下一条指令语句。循环指 令的结构如图5.31所示,图中指定 循环次数为10次 。 2.循环指令FOR、NEXT举例 【例题5.3】 求 0+1+2+3+…+100 的和,并将和存入D0。 【解】 用循环指令编写的程序如图5.32所示,D1作为循环增量。 图5.32 应用循环指令求和的程序 【例题5.4】 求 0+1+2+3+…+100 的和,并将和存入 D0。 图5.33 应用循环嵌套求和的程序 循环指令的脉冲执行方式 在本例中,每 按下一次按钮接 通X0时,执行一 次循环指令,数 据寄存器D0中存 储的数据就增加 10。 图5.34 循环指令 的脉冲执行方式 5.6.2 变址寄存器V、Z 图5.35 变址操作举例 5.6.3 实习操作:循环、变址和子程序调用举例 设数据寄存器D0、D1、D2、D3存储数据分别为2,车间贵重仪器仪表借用手续3,?1,7。求它们的代数和, 将运算结果存入D10,南山区仪器仪表公司并用此结果控制输出位组件K1Y0。X0是计算控制端,X1是 清0控制端,操作程序如图5.36所示。 图5.36 应用循环、变址、子程序调用指令求和的程序 5.7 比较指令的应用与时钟控制程序 比较指令是根据运算比较结果,去控制相应的对象。比较类指令包括 三种,即接点比较指令,组件比较指令CMP和区间比较指令ZCP。 5.7.1 接点比较指令 表5.22 FNC编号 224 取 比 较 接 点 225 226 228 229 230 助 记 符 LD= LD LD LD LD= LD= 16位数据接点比较指令表 比较条件 S1=S2 S1S2 S1S2 S1≠ S2 S1≤ S2 S1≥ S2 逻辑功能 S1与S2相等 S1大于S2 S1小于S2 S1与S2不相等 S1小于等于S2 S1大于等于S2 FNC编号 串 联 比 较 接 点 232 233 234 236 237 238 240 助 记 符 AND= AND AND AND AND = AND = OR= 比较条件 S1=S2 S1S2 S1S2 S1≠ S2 S1≤ S2 S1≥ S2 S1=S2 逻辑功能 S1与S2相等 S1大于S2 S1小于S2 S1与S2不相等 S1小于等于S2 S1大于等于S2 S1与S2相等 并 联 比 较 接 点 241 242 244 245 OR OR OR OR= S1S2 S1S2 S1≠ S2 S1≤ S2 S1大于S2 S1小于S2 S1与S2不相等 S1小于等于S2 246 OR= S1≥ S2 S1大于等于S2 图5.37 接点相等比较指令 【例题5.5】 某台设备有两台电动机,受输出继电器Y0、Y1控制;设手动、 自动1、自动2和自动3四挡工作方式;使用X0~X4输入端,其中X0、X1接工作方 式选择开关,X2、X3接启动/停止按钮,X4接过载保护。在手动方式中采用点动操 作,在3挡自动方式中,Y0启动后分别延时10s、20s、和30s后再启动Y1,用接点 比较指令编写程序和分析程序。 【解】 根据题意列出控制关系,如表5.23所示。 表5.23 工作方 式 手动 自动1 自动2 工作方式选择 例题5.5控制关系 输入按钮作用 输出继电器动作过程 Y0、Y1点动 过载 过载 Y0启动后10sY1启动 Y0启动后20sY1启动 X1 0 0 1 X0 0 1 0 X2 点动Y0 启动 启动 X3 点动Y1 停止 停止 X4 自动3 1 1 启动 停止 过载 Y0启动后30sY1启动 图5.38 例题5.5 5.7.2 组件比较指令CMP 表5.24 比较指令 D S1、S2 CMP指令 操 作 数 K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z P FNC10 CMP D Y、M、S 1.组件比较指令CMP的说明 标志位的规则: 若(D0)(D10),则M0置1, M1、M2为0; 若(D0)=(D10),则M1置1, M0、M2为0; 若(D0)(D10),则M2置1, M0、M1为0。 图5.39 组件比较指令CMP应用 2.组件比较指令CMP举例 【例题5.6】 如图5.40所示的传送带输送大、中、小三种规格的工件,用连接X0、 X1、X2端子的光电传感器判别工件规格,然后启动分别连接Y0、Y1、Y2端子的相 应操作机构;连接X3的光电传感器用于复位操作机构。用比较指令CMP编写工件规 格判别程序。 图5.40 传送带工作台 表5.25 工件规格 小 中 工件规格与光电信号转换关系 光电信号输入控制字K1X0 光电转换数据 K1 K3 X3 0 0 X2 0 0 X1 0 1 X0 1 1 大 0 1 1 1 K7 图5.41 传送带工件规格判别程序 5.7.3 区间比较指令ZCP 表5.26 比较指令 D P FNC11 ZCP S1、S2、S3 D Y、M、S ZCP指令 操 作 数 K、H、KnX、KnY、KnM、KnS、南山区仪器仪表公司T、C、D、V、Z 1.区间比较指令ZCP的说明 区间比较指令的格式为“ ZCP S1 S2 S3 D”。 标志位的规则: 若K100 (D0),则M0置 1,M1、M2为0; 若K100≤(D0)≤K500,则 M1置1,M0、M2为0; 若K500 (D10),则M2 置1,M0、M1为0。 图5.42 区间比较指令ZCP应用 2.区间比较指令ZCP举例 【例题5.7】 用如图5.43所示的传送带输送工件,数量为20个。连接X0端子的光电 传感器对工件进行计数。当计件数量小于15时,指示灯常亮;当计件数量等于或大 于15以上时,指示灯闪烁;当计件数量为20时,10s后传送带停机,同时指示灯熄灭。 设计PLC控制线路并用区间比较指令ZCP编写程序。 图5.43 传送带工作台 图5.44 例题5.7传送带的控制线 传送带的PLC控制程序 5.7.5 马路照明灯时钟控制程序 1.时钟专用的特殊辅助继电器和特殊数据寄存器 表5.28 特殊辅助继电器 M8015 M8016 M8017 M8018 M8019 特殊辅助继电器功能 作 用 =1停止显示 上升沿时修正秒数 平时为1 改写时间数据超出范围时=1 功 能 时钟停止和改写 时钟显示停止 秒复位清0 内装RTC检测 内装RTC错误 =1时钟停止,改写时钟数据 表5.29 特殊数据寄存器 D8013 特殊数据寄存器功能 作 秒 用 范 围 0~59 D8014 D8015 D8016 D8017 分 时 日 月 0~59 0~23 1~31 1~12 D8018 D8019 年 星期 公历4位 0~6(周日~周六) 2.设定时钟信息 图5.46 设定时钟信息的程序 3.马路照明灯时 钟控制程序 设马路照明灯由 PLC输出端口Y0、 Y1各控制一半。每 年夏季(7~9月) 每天19时0分至次日 0时0分灯全部开,0 时0分至5时30分开 一半灯。其余季节 每天18时0分至次日 0时0分灯全部开,0 时0分至7时0各开一 半灯。 图5.47 马路照明灯 时钟控制程序 5.8 循环移位指令及应用 5.8.1 循环左移指令ROL 表5.30 循环左移指令 D P FNC31 ROL D n ROL指令 操 作 数 KnY、KnM、KnS、T、C、D、V、Z(Kn位组件中n = 4/8) n≤16(16位指令),n≤32(32位指令) 设(D0)循环前为H1302,则执行“ROLP D0 K4”指令后,(D0)为H3021, 进位标志位(M8022)为1。执行过程如图5.48所示。 图5.48 循环左移指令ROL执行过程 【例题5.8】 循环左移指令ROL的应用举例如图5.49所示。求输出位 组件K4Y0在一个循环周期中各位状态的变化。 图5.49 循环左移指令举例 表5.31 例题5.8各位状态的变化 5.8.2 循环右移指令ROR 表5.32 循环右移指令 D FNC30 ROR D ROR指令 操 作 数 KnY、KnM、KnS、T、C、车间贵重仪器仪表借用手续D、V、Z(Kn位组件中n = 4/8) P n n≤16(16位指令),n≤32(32位指令) 图5.50 循环右移指令ROR执行过程 【例题5.9】 循环右移指令ROR的应用举例如图5.51所示。求输出位组 件K4Y0在一个循环周期中各位状态的变化。 图5.51 循环右移指令举例 表5.33 例题5.9各位状态的变化 【例题5.10】 利用PLC实现流水灯控制。某灯光招牌有24个灯,要求 按下启动按钮X0时,灯以正、反序每0.1s间隔轮流点亮;按下停止按钮X1 时,停止工作。 【解】 由于输出动作频繁,应选择晶体管或晶闸管输出类型的PLC。 流水灯控制需要2个输入端口,24个输出端口。输入、输出端口的分配如表 5.34所示。 表5.34 输 输入继电器 X0 X1 SB1 SB2 入 作 用 输出继电器 Y7~Y0 Y17~Y10 Y27~Y20 启动按钮 停止按钮 输入/输出端口分配表 输 出 控制对象 HL8~HL1 HL16~HL9 H24~HL17 输入元件 图5.52 例题5.10 5.8.3 位左移指令SFTL 表5.35 循环左移指令 S D SFTL指令 操 作 数 X、Y、M、S Y、M、S K、H 1≤n2≤n1≤1024 P FNC35 SFTL n1、n2 1.位左移指令SFTL的说明 (1)S为移位的源操作数的最低位,D为被移位的目标操作数的最低 位。n1为目标操作数个数,n2为源操作数个数。 (2)位左移就是源操作数从目标操作数的低位移入n2位,目标操作 数各位向高位方向移n2位,目标操作数中的高n2位溢出。源操作数各位状 态不变。 (3)在指令的连续执行方式中,每一个扫描周期都会移位一次。在 实际控制中,常采用脉冲执行方式。 位左移指令SFTL的应用示例梯形图如图5.53所示。 图5.53 位左移指令SFTL示例梯形图 图5.54 位左移指令SFTL示例过程 2.位左移指令SFTL举例 【例题5.11】 位左移指令SFTL的程序梯形图如图5.53所示。设Y17~ Y0的初始状态为0,X3~X0的位状态为1011。求数次执行位左移指令 SFTL后,Y17~Y0各位状态的变化。 【解】 Y17~Y0各位状态的变化如表5.36所示。第一次执行左移指令 SFTL后,(K4Y0)= H0B,第二次执行左移指令SFTL后,(K4Y0)= H0BB,依次类推。 表5.36 例题5.11各位状态的变化 5.8.4 位右移指令SFTR 表5.37 循环左移指令 P FNC34 SFTR S D Y、M、S SFTR指令 操 作 数 X、Y、M、S n1、n2 K、H 1≤n2≤n1≤1024 1.位右移指令SFTR的说明 (1)S为移位的源操作数的最低位,D为被移位的目标操作数的最低 位。n1为目标操作数个数,n2为源操作数个数。 (2)位右移就是源操作数从目标操作数的高位移入n2位,目标操作数 各位向低位方向移n2位,目标操作数中的低n2位溢出。源操作数各位状态 不变。 位右移指令SFTR的应用示例梯形图如图5.55所示。 图5.55 位右移指令SFTR示例梯形图 图5.56 位右移指令SFTR示例过程 2.位右移指令SFTR举例 【例题5.12】 位右移指令SFTR的程序梯形图如图5.55所示。设Y17~ Y0的初始状态为0,X3~X0的位状态为1011。求数次执行位右移指令 SFTR后,Y17~Y0各位状态的变化。 【解】 Y17~Y0各位状态的变化如表5.38所示。在未执行位右移指令 SFTR前,(K4Y0)= 0,第一次执行左移指令SFTR后,(K4Y0)= H0B000,第二次执行左移指令SFTL后,(K4Y0)= H0BB00,依次类推。 表5.38 例题5.12各位状态的变化 【例题5.13】 某台设备有8台电动机,为了减小电动机同时启动对电源 的影响,利用位移指令实现间隔10s的顺序通电控制。按下停止按钮时, 同时停止工作。 【解】 控制线个输出端口。输入、输出端口的分配 如表5.39所示。 表5.39 输 输入继电器 X0 X1 入 作 用 输出继电器 Y7~Y0 启动按钮 停止按钮 输入/输出端口分配表 输 出 控制对象 8个接触器 输入元件 SB1 SB2 图5.57 例题5.13 程序梯形图 5.9 数码显示及应用 5.9.1 七段数码显示 1.七段数码管与显示代码 图5.58 七段数码管 表5.40 十进制数字 二进制表示 0 1 2 3 4 5 6 7 8 9 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 十进制数字与七段显示电平和显示代码逻辑关系 七段显示电平 g 0 0 1 1 1 1 1 0 1 1 f 1 0 0 0 1 1 1 1 1 1 e 1 0 1 0 0 0 1 0 1 0 d 1 0 1 1 0 1 1 0 1 1 c 1 1 0 1 1 1 1 1 1 1 b 1 1 1 1 1 0 0 1 1 1 a 1 0 1 1 0 1 1 1 1 1 十六进制 显示代码 H3F H06 H5B H4F H66 H6D H7D H27 H7F H6F 2.数码管应用举例 【例题5.14】 设计一个用数码显示的5人智力竞赛抢答器。某参赛选 手抢先按下自己的按钮时,则显示该选手的号码,同时联锁其他参赛选手的 输入信号无效。主持人按复位按钮清除显示数码后,比赛继续进行。 【解】 控制线 智力竞 赛抢答器控制线 智力竞赛 抢答器程序梯形图 5.9.2 七段编码指令SEGD 表5.42 七段编码指令 P FNC73 SEGD S D SEGD指令 操 作 数 K、H 、KnX、KnY、KnM、KnS、T、C、D、V、Z KnY、KnM、KnS、T、C、D、V、Z 七段编码指令SEGD的说明: (1)S为要编码的源操作组件,D为存储七段编码的目标操作数。 (2)SEGD指令是对4位二进制数编码,如果源操作组件大于4位,只 对最低4位编码。 (3)SEGD指令的编码范围为十六进制数字0~9、A~F。成都科达瑞仪器仪表有限公司 SEGD指令的应用举例如图5.61所示。 图5.61 七段编码指令SEGD应用举例 当X0接通的那个周期,对数字5执行七段编码指令,并将编码H6D存 入输出位组件K2Y0,即输出继电器Y7~Y0的位状态为 0110 1101。 当X1接通的那个周期,对(D0)= 1执行七段编码指令,输出继电 器Y7~Y0的位状态为 0000 0110。 5.9.3 BCD码指令BCD 1.8421BCD编码 例如,十进制数21的二进制形式是0001 0101,对高4位应用SEGD 指令编码,则得到“1”的七段显示码;对低4位应用SEGD指令编码,则得 到“5”的七段显示码,显示的数码“15”是十六进制数,而不是十进制数21。 显然,要想显示“21”,就要先将二进制数0001 0101转换成反映十进 制进位关系(即逢十进一)的0010 0001,然后对高4位“2”和低4位“1”分 别用SEGD指令编出七段显示码。 这种用二进制形式反映十进制进位关系的代码称为BCD码,其中最常 用的是8421BCD码。 表5.43十进制、十六进制、二进制与8421BCD码关系 十进制数 0 1 十六进制数 0 1 二进制数 0000 0001 8421BCD码 0000 0001 2 3 4 5 2 3 4 5 0010 0011 0100 0101 0010 0011 0100 0101 6 7 8 9 6 7 8 9 0110 0111 1000 1001 0110 0111 1000 1001 10 11 12 13 A B C D 1010 1011 1100 1101 0001 0000 0001 0001 0001 0010 0001 0011 14 15 E F 1110 1111 0001 0100 0001 0101 表5.43十进制、十六进制、二进制与8421BCD码关系 16 17 20 10 11 14 1 0000 1 0001 1 0100 0001 0110 0001 0111 0010 0000 50 100 150 258 32 64 96 102 11 0010 110 0100 1001 0110 1 0000 0010 0101 0000 0001 0000 0000 0001 0101 0000 0010 0101 1000 从表中可以看出,8421BCD码从低位起每4位为一组,高位不足4位补0, 每组表示1位十进制数。8421BCD码与二进制数的形式相同,但概念完全不 同,虽然在一组8421BCD码中,每位的进位也是二进制,但在组与组之间 的进位,8421BCD码则是十进制。 2.BCD码转换指令BCD 要想正确地显示十进制数码,必须先用BCD转换指令将二进制形式的 数据转换成8421BCD码,再利用SEGD指令编成七段显示码,最后输出控 制数码管发光。 表5.44 BCD码转换指令 D P FNC18 BCD S D BCD指令 操 作 数 KnX、KnY、KnM、KnS、T、C、D、V、Z KnY、KnM、KnS、T、C、D、V、Z BCD转换指令的说明: (1)S为要转换的源操作数,D为存储BCD编码的目标操作数。 (2)BCD指令是将源操作数的数据转换成8421BCD码存入目标操作 数中。在目标操作数中每4位表示1位十进制数,从低至高分别表示个位、 十位、百位、千位……。16位数据表示的范围为0~9 999,32位数据表示 的范围为0~99 999 999。 BCD指令的应用举例如图5.62所示。当X0接通时,先将K5028存入D0,南山区仪器仪表公司 然后将(D0)= 5028编为BCD码存入输出位组件K4Y0,执行过程如图 5.63所示。 图5.62 BCD转换指令BCD应用举例 图5.63 BCD转换指令BCD应用过程 5.9.4 多位数码显示 【例题5.15】 某停车场最多可停50辆车,用两位数码管显示停车数量。用出 入传感器检测进出车辆数,每进一辆车停车数量增1,每出一辆车减1。场内停车数量 小于45时,入口处绿灯亮,允许入场;等于和大于45时,绿灯闪烁,提醒待进车辆 注意将满场;等于50时,红灯亮,禁止车辆入场。 【解】 停车场PLC控制线 停 车场控制线 停车场PLC程序梯形图 停车场输入、输出器件位置示意图如图5.66所示。 图5.66 停车场输入/输出设备位置示意图 THE END

本文由领航仪器发布于应用领域,转载请注明出处:南山区仪器仪表公司车间贵重仪器仪表借用手续

关键词: