《PLC应用技术(三菱)》课件.数据处理类应用指令.ppt_第1页
《PLC应用技术(三菱)》课件.数据处理类应用指令.ppt_第2页
《PLC应用技术(三菱)》课件.数据处理类应用指令.ppt_第3页
《PLC应用技术(三菱)》课件.数据处理类应用指令.ppt_第4页
《PLC应用技术(三菱)》课件.数据处理类应用指令.ppt_第5页
已阅读5页,还剩84页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第五单元数据处理类应用指令 任务一用PLC应用指令实现电动机的Y 启动控制 任务二用PLC实现闪光灯的闪光频率控制 任务三密码锁 任务四简易定时报时器 任务五外置数计数器 任务六四则运算应用 任务七彩灯控制电路 任务九步进电动机控制 任务八流水灯光控制 任务十用单按钮实现五台电动机的启停控制 任务十一外部故障诊断电路 任务一用PLC应用指令实现电动机的Y 启动控制 一 任务提出本任务将利用应用指令实现电动机的Y 起动控制 任务要求如下 按电动机Y 启动控制要求 通电时电动机Y形启动 当转速上升到一定程度 电动机 形运行 另外 启动过程中的每个状态间应具有一定时间的间隔 二 原理分析为了实现任务 设置起动按钮为X0 停止按钮为Xl 电路主 电源 接触器KMl接于输出口Y0 电动机Y接法接触器KM2接于输出口Y1 电动机 接法接触器KM3接于输出口Y2 如图5 1所示 输入输出点分配表见表5 1 图5 1电动机的Y 启动控制电路 表5 1输入输出点分配表 按照电机Y 起动控制要求 通电时Y0 Y1应为ON 传送常数为1 2 3 电动机Y形启动 当转速上升到一定程度 断开Y0 Y1 接通Y2 传送常数为4 然后接通Y0 Y2 传送常数为1 4 5 电动机 形运行 停止时 各输出均为OFF 应传送常数为0 另外 启动过程中的每个状态间应有时间间隔 时间间隔由电机起动要求决定 这里假设起动时间为8s Y 转换时间为2s 设计出梯形图如图5 2所示 图5 2用PLC应用指令实现电动机的Y 启动的梯形图 三 知识链接1 位元件和字元件输入继电器X 输出继电器Y 辅助继电器M 状态继电器S等编程元件在可编程控制器内部反映的是 位 的变化 称为 位元件 各种数据存储器 一定量的位软元件组合在一起也可用作数据的存储 定时器T 计数器C的当前值寄存器也可用于数据的存储 上述这些能处理数值数据的元件统称为 字元件 2 位组合元件位组合元件是一种字元件 位组合元件表达为KnX KnY KnM KnS等形式 式中Kn指有n组这样的数据 如KnX0表示位组合元件是由从X0开始的n组位元件组合 若n为1 则K1X0指由X3 X2 X1 X0四位输入继电器的组合 若n为2 则K2X0是指X7 X0八位输入继电器组合 若n为4 则K4X0是指X17 X10 X7 X0十六位输入继电器的组合 3 应用指令的格式FX2N系列PLC在梯形图中使用功能框表示应用指令 图5 3a是应用指令的梯形图示例 指令的功能是 当M8002接通时 十进制常数123将被送到辅助继电器M7 M0中去 相当于用基本指令实现的程序如图5 3b 图5 3用应用指令与基本指令实现同样任务的比较 编号应用指令用编号FNC00 FNC294表示 并给出对应的助记符 例如FNC12的助记符是MOV 传送 FNC45的助记符是MEAN 平均 助记符指令名称用助记符的形式 应用指令的助记符是该指令的英文缩写词 如传送指令 MOVE 简写为MOV 采用这种方式容易了解指令的功能 如图5 4中的助记符MOV DMOVP 其中DMOVP中的 D 表示数据长度 P 表示执行形式 图5 4说明助记符的梯形图 数据长度应用指令按处理数据的长度分为16位指令和32位指令 其中32位指令在助记符前加 D 助记符前无 D 符号的为16位指令 例如 MOV是16位指令 DMOV是32位指令 执行形式应用指令有脉冲执行型和连续执行型 在指令助记符后标有 P 的为脉冲执行型 无 P 的为连续执行型 例如 MOV是连续执行型16位指令 MOVP是脉冲执行型16位指令 而DMOVP是脉冲执行型32位指令 脉冲执行型指令在执行条件满足时仅执行一个扫描周期 这点对数据处理有很重要的意义 比如一条加法指令 在脉冲执行时 只将加数和被加数做一次加法运算 而连续型加法运算指令在执行条件满足时 每一个扫描周期都要相加一次 操作数操作数是应用指令涉及或产生的数据 有的应用指令没有操作数 大多数应用指令有1到4个操作数 操作数分为源操作数 目标操作数及其他操作数 源操作数是指令执行后不改变其内容的操作数 用 S 表示 目标操作数是指令执行后将改变其内容的操作数 D 表示目标操作数 m与n表示其他操作数 其他操作数常用来表示常数或者对源操作数和目标操作数作出补充说明 K为十进制常数 H为十六进制常数 图5 5应用指令格式 四 任务实施1 按图5 1连接PLC与输入按钮 并连接PLC的电源 确保无误 2 输入图5 2的梯形图 检查无误后运行程序 3 按下与X0相连接的按钮SB1 模拟Y 启动的启动信号 仔细观察输出继电器Y0 Y2的状态变化是否符合Y 启动的要求 4 按下与X1相连接的按钮SB2 模拟Y 启动的停机信号 仔细观察输出继电器Y0 Y2的状态变化是否符合Y 启动的停机要求 任务二用PLC实现闪光灯的闪光频率控制 一 任务提出利用PLC应用指令构成一个闪光信号灯 改变输入口所接置数开关可改变闪光频率 即信号灯亮ts 熄ts 二 原理分析4个置数开关 按钮 分别接于X0 X3 X10为启停开关 启停开关X10选用带自锁的按钮 信号灯接于Y0 输入输出点分配表见表5 2 表5 2输入输出点分配表 PLC接线图如图5 6a 梯形图如图5 6b所示 图中第一行为变址寄存器清零 上电时完成 第二行从输入口读入设定开关数据 变址综合后送到定时器T0的设定值寄存器D0 并和第三行配合产生D0时间间隔的脉冲 图5 6闪光信号灯的闪光频率控制 三 知识链接1 编程元件 数据寄存器 D 数据寄存器 D 是用于存储数值数据的字元件 其数值可通过应用指令 数据存取单元 显示器 及编程装置读出与写入 这些寄存器都是16位 最高位为符号位 可处理数值范围为 32 768 32 767 的 如将2个相邻数据寄存器组合 可存储32位 最高位为符号位 可处理数值范围为 2 147 483 648 2 147 483 647 的数值数据 数据寄存器有以下几类 通用数据寄存器 D0 D199共200点 通用数据寄存器一旦写入数据 只要不再写入其他数据 其内容就不会变化 但是在PLC从运行到停止或停电时 所有数据被清除为0 如果驱动特殊辅助继电器M8033 则可以保持 断电保持数据寄存器 D200 D7999共7800点 只要不改写 无论PLC是从运行到停止 还是停电时 断电保持数据寄存器将保持原有数据而不丢失 以上的设定范围是出厂时的设定值 数据寄存器的掉电保持功能也可通过外围设备设定 实现通用 断电保持或断电保持 通用的调整转换 特殊数据寄存器 D8000 D8255共256点 特殊数据寄存器供监控机内元件的运行方式用 在电源接通时 利用系统只读存储器写入初始值 例如 在D8000中 存有监视定时器的时间设定值 它的初始值由系统只读存储器在通电时写入 要改变时可利用传送指令写入 如图5 7所示 图5 7特殊数据寄存器数据写入 文件寄存器 D1000 D7999 文件寄存器以500点为单位 可被外部设备存取 文件寄存器实际上被设置为PLC的参数区 它与断电保持数据寄存器是重叠的 保证数据不丢失 2 编程元件 变址寄存器 V Z 变址寄存器V Z和通用数据寄存器一样 是进行数值数据读 写的16位数据寄存器 主要用于运算操作数地址的修改 FX2N的V和Z各8点 分别为V0 V7 Z0 Z7 进行32位数据运算时 将两者结合使用 指定Z为低位 组合成为 V Z 如图5 8所示 变址寄存器应用如5 9 执行该程序时 若X0为ON 则D15和D26的数据都为K20 图5 8变址寄存器 V Z 的结合 5 9变址寄存器应用 四 任务实施1 按图5 6a连接PLC与4个带自锁的按钮 输出闪光灯 并连接PLC的电源 确保接线无误 2 输入图5 6b的梯形图 检查无误后运行程序 3 程序运行时分别设置拨码开关的值为0 9 仔细观察输出继电器Y0的状态变化是否符合闪光灯的要求 任务三密码锁 一 任务提出利用PLC实现密码锁控制 密码锁有3个置数开关 12个按钮 分别代表3个十进制数 如所拨数据与密码锁设定值相符合 则3s后开启锁 20s后 重新上锁 二 原理分析用比较指令实现密码锁的控制系统 置数开关有12条输出线 分别接入X0 X13 其中X0 X3代表第一个十进制数 X4 X7代表第二个十进制数 X10 X13代表第三个十进制数 密码锁的控制信号从Y0输出 输入输出点分配见表5 3 表5 3输入输出点分配表 密码锁的密码由程序设定 假定为K283 从K3X0上送入的数据应和它相等 这可以用比较指令实现判断 密码锁的开启由Y0的输出控制 梯形图如图5 12 图5 12密码锁梯形图 三 知识链接1 比较指令CMP比较指令CMP是比较二个源操作数 S1 和 S2 的代数值大小 结果送到目标操作数 D D 2 中 CMP指令的说明如图5 13 图5 13CMP指令的说明 使用CMP指令时应注意 CMP指令中的 S1 和 S2 可以是所有字元件 D 为Y M S 当比较指令的操作数不完整 若只指定一个或两个操作数 或者指定的操作数不符合要求 例如把X D T C指定为目标操作数 或者指定的操作数的元件号超出了允许范围等情况 用比较指令就会出错 如要清除比较结果 要采用复位RST指令 如图5 14所示 在不执行指令 需清除比较结果时 也要用RST或ZRST复位指令 图5 14比较指令清除比较结果 2 区间复位指令ZRST区间复位指令ZRST将 Dl D2 指定的元件号范围内的同类元件成批复位 目标操作数可取T C和D 字元件 或Y M S 位元件 D1 和 D2 指定的应为同一类元件 D1 的元件号应小于 D2 的元件号 如果 D1 的元件号大于 D2 的元件号 则只有 D1 指定的元件被复位 虽然ZRST指令是16位处理指令 Dl D2 也可以指定32位计数器 如图5 15所示 将M0 M100的101位全部清0 图5 15ZRST指令说明 3 传送比较指令的基本用途 用来获得程序的初始工作数据 用来进行机内数据的存取管理 用来运算处理结果并向输出端口传送 用来比较指令以建立控制点 四 任务实施1 12个带自锁的按钮分别连接到PLC的X13 X0 输出用指示灯代替 并连接PLC的电源 确保无误 2 输入图5 12的梯形图 检查无误后运行程序 3 先不操作输入按钮 观察输出继电器Y0的状态有无变化 4 设置输入开关的值为十进制数K283 二进制数000100011011 即X10 X4 X3 X1 X0为ON 其余为OFF 仔细观察输出继电器Y0的状态变化是否符合密码锁的要求 5 设置输入开关的值为除了十进制数K283 二进制数000100011011 外的任何数 仔细观察输出继电器Y0的状态变化 密码锁是否能打开 任务四简易定时报时器 一 任务提出利用计数器与比较指令 设计24h可设定定时时间的住宅控制程序 每15min为一设定单位 则24h共有96个时间单位 要求实现如下控制 早上6点半 闹钟每秒响一次 10s后自动停止 9 00 17 00 启动住宅报警系统 晚上6点打开住宅照明 晚上10点关闭住宅照明 二 原理分析设X0为起停开关 X1为15min快速调整与试验开关 X2为格数设定的快速调整与试验开关 时间设定值为钟点数 4 使用时 在0 00时启动定时器 输入输出点分配见表5 4 表5 4输入输出点分配表 梯形图如图5 16所示 图中 C0为15min计数器 当按下X0时 C0当前值每过1s加1 当C0当前值等于设定值K900时 即为15min C1为96格计数器 它的当前值每过15min加1 当C1当前值等于设定值K96时 即为24h 另外十进制常数K26 K36 K68 K72 K88分别为6 30 9 00 17 00 18 00和22 00的时间点 梯形图中X1为15min快速调整与试验开关 它每过10ms加1 M8011 X2为格数设定的快速调整与试验开关 它每过100ms加1 M8012 图5 16简易定时报时器梯形图 三 知识链接1 区间比较指令ZCP区间比较指令ZCP是将一个数据 S 与两个源数据 S1 和 S2 间的数据进行代数比较 比较结果在目标操作数 D D 2 中表示出来 说明如图5 17所示 图5 17ZCP指令的说明 使用ZCP指令时应注意 CMP指令中的 S1 和 S2 可以是所有字元件 D 为Y M S 源 S1 的内容比源 S2 的内容要小 如果 S1 比 S2 大 则 S2 被看作与 S1 一样大 如要清除比较结果 要采用复位RST指令 在不执行指令 需清除比较结果时 也要用RST或ZRST复位指令 2 触点型比较指令FX2N系列比较指令除了前面使用的比较指令CMP 区间比较指令ZCP外 还有触点型比较指令 触点型比较指令相当于一个触点 执行时比较源操作数 S1 和 S2 满足比较条件则触点闭合 源操作数 S1 和 S2 可以取所有的数据类型 以LD开始的触点型比较指令接在左侧母线上 以AND开始的触点型比较指令与别的触点或电路串联 以OR开始的触点型比较指令与别的触点或电路并联 各种触点型比较指令见表5 5 表5 5各种触点型比较指令 在图5 18a中 当C10的当前值等于20时 Y0被驱动 D200的值大于十进制数K 30且X0为ON时 Y1被SET指令置位 在图5 18b中 当X10为ON且D100的值大于十进制数K58时 Y0被RST指令复位 X1为ON或十进制数K10大于C0的当前值时 Y1被驱动 图5 18触点型比较指令说明 四 任务实施1 将PLC的X0 X2外接3个自锁按钮 输出继电器Y0 Y2的驱动设备用3个指示灯代替 并连接PLC的电源 确保无误 2 输入图5 16的梯形图 检查无误后运行程序 3 按下X2 利用格数设定的快速调整与试验开关调试程序 观察输出继电器Y0 Y2的状态变化情况 再按下X2 停止格数设定的快速调整与试验 4 按下X1 利用15min快速调整与试验开关调试程序 观察输出继电器Y0 Y2的状态变化情况 再按下X1 停止15min快速调整与试验 5 在0 00点时 按下X0 启动定时报时器工作 任务五外置数计数器 一 任务提出在一些工业控制场合 希望计数器能在程序外由现场操作人员根据工艺要求临时设定 这就需要一种外置数计数器 本任务利用比较传送类应用指令设计这样一种外置数计数器 二 原理分析输入输出点分配见表5 6 二位拨码开关接于X0 X7 通过它可以自由设定数值在99以下的计数值 X10为计数脉冲 X11为起停开关 Y0为计数器C0的控制对象 当计数器C0的当前值与由拨码开关设定的计数器设定值相同时 Y0被驱动 表5 6输入输出点分配表 梯形图如图5 19所示 C0计数值是否与外部拨码开关设定值一致 是借助比较指令实现的 须注意的是 拨码开关送入的值为BCD码 要用二进制转换指令进行数制的变换 因为比较操作只对二进制数有效 图5 19外置数计数器梯形图 三 知识链接1 二进制数与BCD码变换指令 BCD码到二进制数变换指令 BIN BIN指令的使用如图5 20a所示 当X0 ON时 将源元件K2X0中BCD码转换成二进制数送到目标元件D10中去 二进制数到BCD码变换指令 BCD BCD变换指令的说明如图5 20b所示 当X0 ON时 源元件D10中的二进制数转换成BCD码送到目标元件Y7 Y0中去 图5 20二进制与BCD码变换指令说明 2 数据交换指令XCH数据交换指令XCH在指定的目标软元件间进行数据交换 如图5 21所示 当X0为ON时 将十进制数20传送给D0 十进制数30传送给D1 所以D0和D1中的数据分别为20和30 当X1为ON时 执行数据交换指令XCH 目标元件D0和D1中的数据分别为30和20 即D0和D1中的数据进行了交换 图5 21数据交换指令XCH说明 3 块传送指令BMOV块传送指令BMOV是从源操作数指定的软元件开始的n点数据传送到指定的目标操作数开始的n点软元件 如果元件号超出允许的元件号范围 数据仅传送到允许的范围内 如图5 22所示 如果指令执行前D0到D2中的数据分别为十进制数100 200 300 则当X0为ON时 执行块传送指令BMOV 目标元件D10到D12中的数据也分别为100 200 300 即将D0 D2中的数据传送给了D10 D12 图5 22块传送指令BMOV说明 使用BMOV指令时应注意 BMOV指令中的源操作数与目标操作数是位组合元件时 源操作数与目标操作数要采用相同的位数 如图5 23a所示 在传送的源操作数与目标操作数的地址号范围重叠的场合 为了防止输送源数据没传送就被改写 PLC自动确定传送顺序 如图5 23b中的 顺序 利用BMOV指令可以读出文件寄存器 D1000 D7999 中的数据 图5 23块传送指令使用说明 4 多点传送指令FMOV多点传送指令FMOV是将源操作数指定的软元件的内容向以目标操作数指定的软元件开头的n点软元件传送 n点软元件的内容都一样 如图5 24a所示 将D0 D99共100个软元件的内容全部置为0 图5 24FMOV指令说明 5 移位传送指令SMOV移位传送指令SMOV将4位十进制源数据 S 中指定位数的数据 传送到4位十进制目的操作数中指定的位置 如图5 24b所示 将源数据 二进制数 的BCD码变换值从其第4位 m1 4 起将低位的2位部分 m2 2 作为目标的第3位 n 3 的开头传送 并将其变为二进制数 假设SMOV指令执行前 D1中的内容为0011100001110110 D2中的内容为1001000100100100 则当X0为ON时SMOV指令执行 将D1中的第4位0011起将低位的2位部分即00111000作为目标D2的第3位的开头传送 所以D2的内容变为1001001110000100并将其变为二进制数 图5 24SMOV指令说明 6 取反传送指令CML取反传送指令CML将源元件 S 中的数据逐位取反 1 0 0 1 并传送到指定目标 D 如图5 24c所示 若D0中的数据在CMP指令执行前为1001000100100100 则当X0为ON时 Y3 Y0的数据变为1011 图5 24CML指令说明 四 任务实施1 将二个拨码开关连接到PLC的X7 X0 若无拨码开关 可用带自锁的按钮替代 计数脉冲 由函数发生器产生 连接到X10 起停开关连接到X11 输出用指示灯代替 如图5 25所示 并连接PLC的电源 确保无误 2 输入图5 19的梯形图 检查无误后运行程序 3 先不操作拨码开关或输入按钮 观察输出继电器Y0的状态 4 按下X11 分别设置拨码开关的值为BCD码10和90 仔细观察输出继电器Y0的状态变化 体会外置数计数器的设定值 图5 25外置数计数器PLC接线图 任务六四则运算应用 一 任务提出用PLC完成以下算式中加 乘 除的运算 二 原理分析能进行四则运算是计算机的基本功能 可编程控制器当然也应具备四则运算的能力 上式中 X 用输入端口K2X0表示 代表送入的二进制数 运算结果输送到输出口K2Y0 用X20为起停开关 输入输出点分配见表5 7 表5 7输入输出点分配表 梯形图如图5 27所示 图5 27四则运算梯形图 三 知识链接1 二进制加法指令ADD加法指令ADD是将指定的源元件中的二进制数相加 结果送到指定的目标元件中去 如图5 28所示 当执行条件 0为ON时 D10 D12 D14 2 二进制减法指令SUB减法指令SUB是将指定的源元件中的二进制数相减 结果送到指定的目标元件中去 SUB减法指令的说明如图5 28表示 当执行条件 1由OFF ON时 D0 一K119 D0 图5 28二进制加法 减法指令说明 3 二进制乘法指令MUL乘法指令MUL是将指定的源元件中的二进制数相乘 结果送到指定的目标元件中去 MUL乘法指令分16位和32位两种情况 如图5 29所示为16位运算 执行条件X0由OFF ON时 D0 D2 D5 D4 源操作数是16位 目标操作数是32位 当 D0 8 D2 9时 D5 D4 72 4 二进制除法指令DIV除法指令DIV是将指定的源元件中二进制数相除 S1 为被除数 S2 为除数 商送到指定的目标元件 D 中去 余数送到 D 的下一个目标元件 D 1 DIV除法指令使用说明如图5 29所示 它也分16位和32位两种情况 当为16位运算 执行条件X1由OFF ON时 D6 D8 商在 D2 余数在 D3 当 D6 19 D8 3时 D2 6 D3 1 图5 29二进制乘法 除法指令说明 四 任务实施1 将代表输入置数的8个按钮连接到PLC的X7 X0 启停开关连接到X20 输出用指示灯代替 并连接PLC的电源 确保接线无误 2 输入图5 27的梯形图 检查无误后运行程序 3 输入置数先设置为0 按下启停开关开始算术运算 观察输出继电器Y0 Y7的状态 是否完成了算术运算功能 再按下启停开关停止 4 改变输入置数 重复第3步 观察算术运算的结果 任务七彩灯控制电路 一 任务提出经常看到许多广告灯光 舞台灯光以各种方式闪烁 例如 有12盏彩灯正序亮至全亮 反序熄至全熄再循环控制 本任务就是利用PLC控制灯光闪烁 二 原理分析彩灯共12盏 分别由Y13 Y10 Y7 Y0输出 X0为彩灯控制的启停开关 输入输出点分配见表5 8 表5 8输入输出点分配表 本彩灯功能用加l 减1指令及变址寄存器完成 彩灯状态变化的时间单元为1s 用M8013实现 梯形图如图5 30所示 图5 30彩灯控制梯形图 三 知识链接1 加1指令 INC 加1指令的说明如5 31a所示 当X0由OFF ON时 由 D 指定的元件D10中的二进制数自动加1 若用连续指令时 每个扫描周期加1 2 减1指令 DEC 减1指令的说明如图5 31b所示 当X1由OFF ON变化时 由 D 指定的元件D10中的二进制数自动减1 若用连续指令时 每个扫描周期减l 图5 31INC DEC指令说明 3 逻辑字 与 指令 WAND 逻辑字与指令的说明如图5 32a所示 当X0为ON时 S1 指定的D10和 S2 指定的D12内数据按各位对应 进行逻辑字与运算 结果存于由 D 指定的元件D14中 图5 32WAND指令说明 4 逻辑字 或 指令 WOR 逻辑字或指令的说明如图5 32b所示 当X1为ON时 S1 指定的D10和 S2 指定的D12内数据按各位对应 进行逻辑字或运算 结果存于由 D 指定的元件D14中 图5 32WOR指令说明 5 逻辑字 异或 指令 WXOR 逻辑字异或指令的说明如图5 32c所示 当X2为ON时 S1 指定的D10和 S2 指定的D12内数据按各位对应 进行逻辑字异或运算 结果存于由 D 指定的元件D14中 图5 32WXOR指令说明 6 求补指令 NEG 求补指令NEG只有目标操作数 如图5 33所示 它将 D 指定的数的每一位取反后再加1 结果存于同一元件 求补指令实际上是绝对值不变的变号操作 FX系列PLC的负数用2的补码的形式来表示 最高位为符号位 正数时该位为0 负数时该位为1 将负数求补后得到它的绝对值 图5 33求补指令NEG说明 四 任务实施1 将1个带自锁的按钮连接到PLC的X0 将12个彩灯连接到PLC的Y13 Y10 Y7 Y0 并连接PLC的电源 确保接线无误 2 输入图5 30的梯形图 检查无误后运行程序 3 先不按下输入按钮 观察彩灯是否有变化 理解M8034的作用 4 按下输入按钮 观察彩灯的点亮情况是否符合彩灯控制电路的要求 任务八流水灯光控制 一 任务提出利用PLC实现流水灯光控制 某灯光招牌有L1 L8八个灯接于K2Y0 要求当X0为ON时 灯先以正序每隔ls轮流点亮 当Y7亮后 停3s 然后以反序每隔1s轮流点亮 当Y0再亮后 停3s 重复上述过程 当X1为ON时 停止工作 二 原理分析流水灯光控制需要2个输入点 8个输出点 输入输出点分配见表5 9 表5 9输入输出点分配表 本任务用循环移位指令实现 梯形图如图5 36所示 图5 36流水灯光控制 三 知识链接1 循环右移指令 ROR 循环移位是指数据在本字节或双字内的移位 是一种环形移动 而非循环移位是线性的移位 数据移出部分会丢失 移入部分从其他数据获得 移位指令可用于数据的2倍乘处理 形成新数据 或形成某种控制开关 循环右移指令ROR使16位数据 32位数据向右循环移位 如图5 37a所示 当X4由OFF ON时 D 内各位数据向右移n位 最后一次从最低位移出的状态存于进位标志M8022中 若用连续指令执行时 循环移位操作每个周期执行一次 若 D 为指定位软元件 只有K4 16位指令 或K8 32位指令 有效 如图5 36中的K4Y0 图5 37循环移位指令 右移 2 循环左移指令 ROL 循环左移指令ROL使16位数据 32位数据向左循环移位 如图5 37b所示 当X1由OFF ON时 D 内各位数据向左移n位 最后一次从最高位移出的状态存于进位标志M8022中 若用连续指令执行时 循环移位操作每个周期执行一次 若 D 为指定位软元件 只有K4 16位指令 或K8 32位指令 有效 图5 37循环移位指令 左移 3 带进位的右循环移位指令 RCR 带进位的右循环移位指令RCR的操作数和n的取值范围与循环移位指令相同 如图5 38a所示 执行时 各位的数据与进位位M8022一起 16位指令时一共17位 向右循环移动n位 在循环中移出的位送入进位标志 后者又被送回到目标操作数的另一端 图5 38带进位循环移位指令 RCR操作 4 带进位的左循环移位指令 RCL 带进位的左循环移位指令RCL的操作数和n的取值范围与循环移位指令相同 如图5 38b所示 执行时 各位的数据与进位位M8022一起 16位指令时一共17位 向左循环移动n位 在循环中移出的位送入进位标志 后者又被送回到目标操作数的另一端 图5 38带进位循环移位指令 RCL操作 四 任务实施1 按图5 39连接PLC与输入开关 输出指示灯 并连接PLC的电源 确保接线无误 2 输入图5 36的梯形图 检查无误后运行程序 3 按下X0的输入按钮 观察L1 L8的状态变化 欣赏流水灯光 4 按下X1的输入按钮 结束程序运行 图5 39流水灯光控制PLC接线图 任务九步进电动机控制 一 任务提出本任务利用PLC控制步进电动机 步进电动机是一种利用电磁铁将电脉冲信号转换为线位移或角位移的电动机 如图5 40所示是步进电动机工作原理示意图 通过顺序切换开关 使电动机每机绕组轮流通电 电动机转子按照顺时针方向一步一步地转动 以三相三拍电动机为例 用PLC位移指令实现步进电动机正反转和调速控制 脉冲列由Y10 Y12 晶体管输出 送出 作为步进电动机驱动电源功放电路的输入 如图5 41所示 图5 40步进电动机工作原理 图5 41步进电动机驱动电路 按任务要求 设置X0为启停按钮 X1为正反转切换开关 X1为OFF时 正转 X1为ON时 反转 X2为减速按钮 X3为增速按钮 脉冲序列通过Y10 Y12 晶体管输出 送出 输入输出点分配表见表5 10 表5 10输入输出点分配表 由此设计出的梯形图如图5 42所示 其中采用积算定时器T246是脉冲发生器 在此作为移位脉冲产生环节 其设定值为K2 K500 定时值为2ms 500ms 则步进电动机可获得500步 s 2步 s的变速范围 T0为脉冲发生器设定值调整时间限制 二 原理分析 1 初始化程序程序开始运行时 D0设置初始值为K500 M1 M0 Y11置为ON 2 步进电动机正转当按下X0时 启动定时器T246 D0初始值K500作为定时器T246的设定值 X1为OFF时 每当T246完成一次定时时 按照M0的值形成正序脉冲序列 101 011 110 101 011 110 可见在T246的作用下最终形成101 011 110的三拍循环 3 步进电动机反转X1为ON时 每当T246完成一次定时时 按照M0的值形成反序脉冲序列 101 110 011 101 110 011 即在T246的作用下最终形成101 110 011的三拍循环 4 减速调整X2为减速按钮 当按下X2时 定时器T246的设定值D0增加 即T246定时值增加 每秒步数减小 步进电动机转速变小 5 增速调整X3为增速按钮 当按下X3时 定时器T246的设定值D0减小 即T246定时值减小 每秒步数增加 步进电动机转速变大 图5 42步进电动机控制电路梯形图 三 知识链接1 位右移指令SFTR位右移指令SFTR对nl位 D 所指定的位元件进行n2位 S 所指定位元件的位右移 n2 nl 1024 如图5 43所示 每当X10由OFF ON时 D 内 M0 M15 各位数据连同 S 内 X0 X3 4位数据向右移4位 即 M3 M0 溢出 M7 M4 M3 M0 M1l M8 M7 M4 M15 M12 Mll M8 X3 X0 M15 M12 图5 43位右移指令SFTR说明 2 位左移指令SFTL位左移指令SFTL对nl位 D 所指定的位元件进行n2位 S 所指定位元件的位左移 n2 nl 1024 如图5 44所示 每当X10由OFF ON时 D 内 M0 M15 各位数据连同 S 内 X0 X3 4位数据向左移4位 图5 44位左移指令说明 说明 位右或左移指令用脉冲执行型指令时 指令执行取决于X10由OFF ON变化 而用连续指令执行时 移位操作是每个扫描周期执行一次 3 字右移指令WSFR字右移指令WSFR是对 D 所指定的nl位字的字元件进行 S 所指定的n2位字的右移 n2 nl 512 如图5 45所示 每当X0由OFF ON时 D 内 D10 D25 16字数据连同 S 内 D0 D3 4字数据向右移4位 即 D13 D10 溢出 D17 D14 D13 Dl0 D2l D18 D17 D14 D25 D22 D2l D18 D3 D0 D25 D22 图5 45字右移指令说明 4 字左移指令WSFL字左移指令WSFL是对 D 所指定的nl位字的字元件进行 S 所指定的n2位字的左移 n2 nl 512 如图5 46所示 每当X0由OFF ON时 D 内 D10 D25 16字数据连同 S 内 D0 D3 4字数据向左移4位 图5 46字左移指令说明说明 用脉冲执行型指令时 指令执行是X0由OFF ON变化决定 而用连续指令执行时 移位操作每个扫描周期执行一次 5 移位寄存器写入指令SFWR移位寄存器又称为FIFO 先入先出 堆栈 堆栈的长度范围为2 512个字 移位寄存器写入指令SFWR是先进先出控制的数据写入指令 如图5 47所示 当X0由OFF ON时 将 S 所指定的D0的数据存储在D2内 D 所指定的指针D1的内容成为1 若改变了D0的数据 当X0再由OFF ON时 又将D0的数据存储在D3中 D1的内容成为2 依此类推 D1内的数为数据存储点数 如超过n 1 则变成无处理 进位标志M8022动作 图5 47FIFO写入指令说明 6 移位寄存器读出指令SFRD移位寄存器读出指令SFRD是先进先出控制的数据读出指令 如图5 48所示 当X0由OFF ON时 将D2的数据传送到D20内 与此同时 指针D1的内容减1 D3 D10的数据向右移 当X0再由OFF ON时 即原D3中的内容传送到D20内 D1的内容再减1 依此类推 当D1的内容为0 则上述操作不再执行 零标志M8020动作 图5 48FIFO读出指令 四 任务实施1 将两个带自锁的按钮分别连接到PLC的X0 X1 另两个无自锁功能的按钮连接到X2 X3 电脉冲输出用指示灯代替 并连接PLC的电源 确保接线无误 2 输入图5 42的梯形图 检查无误后运行程序 3 按下X0的输入按钮 观察正序脉冲 4 按下X1的输入按钮 观察反序脉冲 5 按下X3的输入按钮 调整脉冲频率 再观察正 反序脉冲 6 按下X2的输入按钮 调整脉冲频率 再观察正 反序脉冲 任务十用单按钮实现五台电动机的启停控制 一 任务提出用单按钮控制五台电动机的启停 将五台电动机编号 按下按钮一次 保持1s以上 1号电动机启动 再按按钮 1号电动机停止 按下按钮二次 第二次保持1s以上 2号电动机启动 再按按钮 2号电动机停止 依次类推 按下按钮五次 最后一次保持1s以上 5号电动机启动 再按按钮 5号电动机停止 二 原理分析启停按钮接到X0 五台电动机接到Y0 Y4 输入输出点分配见表5 11 表5 11输入输出点分配表 图5 51单按钮控制五台电动机梯形图 梯形图如图5 51所示 输入电动机编号的按钮接于X0 电动机号数使用加1指令记录在K1M10中 DECO指令则将K1M10中的数据译码并令M0右侧和K1M10中数据相同的位元件置1 M9及T0用于输入数字确认及停车复位控制 三 知识链接1 译码指令 DECO 译码指令相当于数字电路中译码电路的功能 译码指令DECO有两种用法 如图5 52所示 当 D 为位元件时 如图5 52a所示 以源 S 为首地址的n位连续的位元件所表示的十进制码值为N DECO指令把以 D 为首地址目标元件的第N位 不含目标元件位本身 置l 其他位置0 图5 52译码指令 D 为位元件时 如图5 52a所示的源数据与译码值的对应关系见表5 12 源数据N 1 2 3 则从M10开始的第3位M13为1 当源数据N 0 则第0位 即M10 为1 表5 12源数据与译码值的对应关系 2 当 D 是字元件时 以 S 所指定字元件的低n位所表示的十进制码为N DECO指令把以 D 所指定目标字元件的第N位 不含最低位 置1 其他位置0 如图5 52b所示 源数据N 1 2 3时 D1的第3位为1 当源数据为0时 D1的第0位为l 若n 0时 程序不执行 n是0 4之外的数据时 出现运算错误 若n 4时 D 位数为2的平方 16 驱动输入X4为OFF时 不执行指令 上一次解码输出置1的位保持不变 图5 52译码指令 D 为字元件时 2 编码指令 ENCO 编码指令相当于数字电路中编码电路的功能 与译码指令DECO一样 编码指令ENCO有两种用法 如图5 53所示 1 当 S 是位元件时 以源 S 为首地址 长度为2n的位元件中 最高置1的位置被存放到目标 D 所指定的元件中去 D 中数值的范围由n确定 如图5 53所示 源元件的长度为2n 8位M10 M17 其最高置1位是M13 即第3位 将 3 10 011 2 则D10的低3位为011 当源数据的第一个 即第0位 位元件为1 则 D 中存放0 当源数据中无1 出现运算错误 图5 53编码指令 S 为位元件时 2 当 S 为字元件时 可作同样的分析 图5 53编码指令 S 为字元件时 四 任务实施1 将输入连接到PLC的X0 输出用指示灯代替 并连接PLC的电源 确保接线无误 2 输入图5 51的梯形图 检查无误后运行程序 3 按下X0一次 观察各输出继电器的状态 注意按键时间 再按X0一次 观察各输出继电器的状态 4 按下X0二次 观察各输出继电器的状态 注意按键时间 再按X0一次 观察各输出继电器的状态 5 按下X0三次 观察各输出继电器的状态 注意按键时间 再按X0一次 观察各输出继电器的状态 6 按下X0四次 观察各输出继电器的状态 注意按键时间 再按X0一次 观察各输出继电器的状态 7 按下X0五次 观察各输出继电器的状态 注意按键时间 再按X0一次 观察各输出继电器的状态 任务十一外部故障诊断电路 一 任务提出在生产实际中 经常需要一些监测手段来提示异常信息 例如 某生产机械发出向前运行命令时 检测装置在一定时间内 如1s 检测不到向前运动时 就要报警 又例如 机械在某个区间内运行 上 下限位开关在一定时间内 如2s 均不动作时 就要报警 等等 二 原理分析本任务设置6个输入点 3个输出点 输入输出点分配见表5 13 表5 13输入输出点分配表 由此设计出的梯形图如图5 54所示 状态标志S900 S999是信号报警器 在ANS和ANR指令中使用 作外部故障诊断的输出 特殊辅助继电器M8049是报警器有效指示 若将其驱动 则表示监视有效 PLC将S900 S999中的动作状态的最小地址号存储在特殊数据寄存器D8049内 特殊辅助继电器M8048是报警器接通指示 若M8049被驱动 状态S900 S999中任何一个动作 则M8048动作 图5 54外部故障诊断电路梯形图 图5 54中M8000的常开触点一直接通 使M8049的线圈通电 特殊数据寄存器D8049的监视功能有效 当按下X3时 Y0为ON 驱动机械前进 在驱动机械前进1秒以内 若往前运行检测端X0不工作 则表示机械没有往前运动 S900动作 指示故障 若ANS指令的输入电路断开 定时器T0复位 而S900仍保持为ON 当按下X4时 Y1为ON 驱动机械上下运行 在驱动机械上下运行2秒以内 若上 下运行检测端X1或X2没有一个工作 则表示机械没有上下运动 S901动作 指示故障 若S900 S999中的某一个接通 则M8048动作 故障指示输出Y10工作 用复位按钮X5将外部故障诊断程序所造成的动作状

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论