abplc程序基础.ppt_第1页
abplc程序基础.ppt_第2页
abplc程序基础.ppt_第3页
abplc程序基础.ppt_第4页
abplc程序基础.ppt_第5页
已阅读5页,还剩223页未读 继续免费阅读

下载本文档

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

文档简介

ab可编程序控制器系统 slc500 micrologix 关于罗克韦尔 罗克韦尔品牌包括艾伦 布拉德利allen bradley的控制产品和工程服务 道奇品牌的机械动力传输产品 瑞恩电气relianceelectric 制造的电机和驱动产品以及罗克韦尔软件rockwellsoftware生产的工控软件 罗克韦尔总部位于美国威斯康星州的密尔沃基市 公司通过提供艾伦 布拉德利 罗克韦尔软件以及一些瑞恩电器品牌的控制器 输入 输出 i o 系统 驱动器 传感器 动力装置 成包控制产品 人机界面 软件产品和服务向客户提供集成顺序控制 运动控制 传动系统 过程控制和应用信息等产品和服务 1985年 为了获得多样性的投资 罗克韦尔以16 5亿美金的价格将allen bradley收购 通过16亿美金收购relianceelectric瑞恩电器 rockwell增加了电机 机械传动系列产品 allen bradleyplc发展历程 1979年左右 allen bradley推出datahighway网络 dh网络 1981年左右 allen bradley基于amd微处理器的plc 3面世 1986年左右 allen bradley基于摩托罗拉68000芯片的plc 5面世 1991年左右 allen bradleyslc500小型控制器面世 1993年左右 allen bradley产品提供以太网产品 支持tcp ip协议1993 1994年 allen bradley推出devicenet 设备网 开放式网络 1994年 allen bradley软件部门与icom合并成立罗克韦尔软件公司1995年 allen bradley推出micrologix1000控制器和flexi o产品 1998年 1999年 allen bradley推出controllogixplc a bslc500系列簡介 slc 500中小型plc 90年代初期 控制點16 960點使用1746系列i o模組micrologix1000固定型 內置rs232 10 6in 4out 16 10in 6out 32 20in 12out slc 500系列可程式控制器组成 slc 500主機採單一模組化 各種機型尺寸相同安裝於1746i o框架通訊機能 rs232 dh485 dh 採內建式輸入 輸出模組 每片模組提供8 16 32及多種電壓可供選用1746i o框架4槽 7槽 10槽 13槽i o框架可供選用最多三組框架 最多30i o模組i o模組可安裝在任何i o槽位主機置於最左槽位 佔一i o槽位電源供應模組 第2章可编程序控制器处理器及i o模块 1 前面板 1 钥匙开关 用来设定可编程序控制器的工作状态 共 prog rem run 三种状态 其中 当开关处于 rem 即远程 remote 状态时 可以通过编程软件设定处理器工作在 编程 调试 或 运行 状态 使用钥匙是为了在调试完毕后使处理器固定在运行状态 防止程序被意外修改 第2章可编程序控制器处理器及i o模块 2 指示灯电池指示灯 batt 灯 红 亮表示电池盒里的电池该更换了 一般该指示灯亮后 应在10天内及时更换电池 否则可能因cmosram的失效而造成程序的丢失 第2章可编程序控制器处理器及i o模块 处理器运行 故障 绿 红 指示器灯 proc 显示处理器当前的工作情况灯 绿 亮 表示运行正常灯 红 亮 表示处理器故障强制指示灯 force 显示用户有无强制i o 灯亮 表示被强制输入强制 用户强制输入数据文件中的位 输出强制 能使用户强制实际的输出模板而保留其输出数据文件处在原始状态 第2章可编程序控制器处理器及i o模块 slc5 04cpu run flt batt force slc5 04cpu dh rs232 rs232 dh rem run prog 工作狀態選擇開關 第2章可编程序控制器处理器及i o模块 1746系列數位輸入模組型號點數操作電壓信號延遲onoffmsia4485 132vac3545ia88 3545ia1616 3545im44170 265vac3545im88 3545im1616 3545ib8810 30vdcsink88ib1616 88ib3232 33itb1616 0 30 5iv8810 30vdcsource88iv1616 88iv3232 88itv1616 0 30 5ig16164 5 5 5vdcsource0 250 5in161610 30vdcsink 10 30vac15 2515 25 第2章可编程序控制器处理器及i o模块 1746系列數位輸出模組型號點數操作電壓信號延遲onoffms電流aoa8885 265vac1111oa1616 1110 5ob8810 50vdcsource0 111ob1616 0 110 5ob32325 50vdcsource0 110 1obp161620 4 26 4vdcsource0 111 5ov8810 50vdcsink0 111ov1616 0 110 5ov32325 50vdcsink0 110 1ovp161620 4 26 4vdcsink0 111 5og16164 5 5 5vdcsink0 250 50 024ow445 265vac 5 125vdc接點輸出10101 2 5ow885 265vac 5 125vdc接點輸出10101 2 5ow16165 265vac 5 125vdc接點輸出10101 2 5ox885 265vac 5 125vdc獨立接點10101 5 1746系列數位輸入輸出混合模組 型號輸入點數輸出點數操作電壓io42285 132vacio8445 265vac 5 125vdcio12665 265vac 5 125vdc 1746系列類比模組 型號輸入點數輸出點數操作電壓ni440 10vdc或 20manio4i22電流 10vdc或 20manio4v22電壓 10vdc或 20mano4i040 21mano4v04 10vdcnt440熱電偶j k t e n r s b 50 100mvnr440rtd電阻式 第2章可编程序控制器处理器及i o模块 第2章可编程序控制器处理器及i o模块 4 slc500系列小型可编程处理器 1 固定式slc500控制器 将电源 输入与输出以及处理器集中在一个单元 并提供一个2槽的扩展框架 2 模块式slc控制器 分slc5 01 5 02 5 03 5 04及5 05 第2章可编程序控制器处理器及i o模块 模块式slc处理器及1746i o框架 第2章可编程序控制器处理器及i o模块 slc500系列内存 i o容量及内置通信口 第2章可编程序控制器处理器及i o模块 5 micrologix系列微型可编程序控制器micrologix1000 为固定式处理器 为满足用户各种i o点数少于32点的控制要求而设计 micrologix1500 采用了两块式组合结构 包括处理器和带导轨的基座 两者通过导轨滑槽装配 处理器和基座两模块形成一个完整的控制器单元 处理器可单独从基座中拆卸 第2章可编程序控制器处理器及i o模块 1000系列 水平放置的输入 顶部 和输出 底部 端子 易于接线 安装孔 rs 232通道 连接编程设备 位于中间的leds显示i o状态及诊断信息 第2章可编程序控制器处理器及i o模块 1500系列处理器模块 扩展i o模块 基座 1抽取式接线终端块2扩展i o接口和可移动esd屏障3输入led4输出led5通信口6状态指示led7内存模块 实时时钟 可选 8后备电池 可选 9电池10终端盖和标签11数据存取仪 可选 12工作模式开关 第2章可编程序控制器处理器及i o模块 3 micrologix1200 4 pico 第2章可编程序控制器处理器及i o模块 6 logix5550处理器 第2章可编程序控制器处理器及i o模块 二 数字i o模块 1 数字i o模块 是直接i o模块中最基本的i o模块 模块中的i o回路可与按钮或限位开关的开 关传感器相连 也可与马达启动器的指示灯或报警器等开关量执行机构相连 可编程序控制器数据表上相应位的状态直接控制输出 输入直接控制可编程序控制器数据表上的相应位 第2章可编程序控制器处理器及i o模块 第2章可编程序控制器处理器及i o模块 三 模拟量i o模块模拟量i o模块 在模拟量信号和可编程序控制器数据表之间进行a d或d a转换 包括标准模拟量的输入 输出及直接热电阻和热电偶输入 这些模块可用软件设置信号滤波 可对每个i o设置有效范围 隔离措施有输入信号与电源噪声隔离 输入回路之间信号隔离 a d转换器 分辨率有8位 12位等不同精度 模拟量输入 输出方式可设定为电流型和电压型 第2章可编程序控制器处理器及i o模块 四 特殊i o模块 除了通用的i o模块之外 可编程序控制器还有许多特殊的i o模块 应用于特定的场合 这些模块往往能自己处理输入量 对输出进行控制 属智能模块 如线性定位模块 伺服控制模块 力矩控制模块 高速计数模块等等 如步进定位装置 1771 qa 1771 vhsc4通道高速计数模块 第3章可编程序控制器的编程 第3章可编程序控制器的编程 可编程序控制器的编程方式可编程序控制器的输入 输出寻址可编程序控制器的内存组织可编程序控制器的编程软件rslogix500的使用可编程序控制器的通信软件rslinx的使用可编程序控制器的仿真软件rsemulate500的使用及联机仿真 第3章可编程序控制器的编程 可编程序控制器指令系统模拟量及其编程热备系统及其编程编程练习 第3章可编程序控制器的编程 3 1可编程序控制器的编程方式slc 5系列处理器支持2种编程方式 梯形图 ladder 文本指令 asciiediting 第3章可编程序控制器的编程 一 梯形图 ladder 梯形图的描述 是一种最典型 也是最基本的编程方式 它采用图形符号 沿用了继电器的触点 线圈 串联等术语和图形符号 并增加了一些继电接触控制没有的符号 适用于顺序逻辑控制 离散量控制 定时 计数控制等 第3章可编程序控制器的编程 梯形图的组成 梯形图一般由多个不同的阶梯 rung 组成 每一阶梯由输入及输出指令组成 在一个阶梯中 输出指令应出现在阶梯的最右边 输入指令则出现在输出指令的左边 第3章可编程序控制器的编程 梯形图举例 第3章可编程序控制器的编程 并行分支的运行 当处理器将每一分支的每一步扫描一次之后 而且公用转换为真时 处理器才结束执行并行分支 当处理器运行并行分支时 按从左到右 从上到下的顺序扫描分支 但看起来 处理器似乎是在同时执行每一条路径 第3章可编程序控制器的编程 一 有关寻址的几个概念1 物理地址物理地址也就是i o模块在物理框架中的位置 常以第几框架第几槽中的第几个端子表示 如第0个框架中的1号槽放了一个32点输入模块 要指出其5号端子 其物理地址就是0框架1号槽5号端子 第3章可编程序控制器的编程 slc500i o定址i o依所在槽位決定其位址 採用10進制編號 i o位址格式 i xxx x xxo xxx x xx 表型式 輸入 input 或輸出 output 槽位編號 1 30 因第0槽固定為主機 word編號 0 31 i o點編號 00 15 若此槽位插一16點之輸入模組則位址為i 002 00 i 002 15若此槽位插一8點之輸入模組則位址為i 002 00 i 002 07若此槽位插一32點之輸入模組則位址為i 002 00 i 002 15及i 002 1 00 i 002 1 15 1746 a1313槽框架 13141516171819202122 電源模組 1746 a1010槽框架 類比輸入 1746 ni44組類比輸入位址為i 010 0 i 010 3 類比混合型 1746 nio4v為二組輸入 二組輸出位址為i 013 0 i 013 1及o 013 0 o 013 1 數位輸入 i 002表i 2 0 i 2 15整個word 第3章可编程序控制器的编程 3 3可编程序控制器的内存组织概述可编程序控制器处理器除了微处理器以外 还包括存贮器 其中一部分是用户存贮器 用户存贮器中的程序存贮器用来存放用户程序文件 而数据存贮器文件用来存放数据文件 第3章可编程序控制器的编程 一 程序文件1 程序文件 程序文件用以存贮用户程序 slc 500可以有256个程序文件 用编号0 255 十进制数 表示 其中0号文件是用来存放系统信息的 属系统文件 1号文件一般预以保留 而2 255号文件则可以由用户定义 它们可以是梯形图程序 第3章可编程序控制器的编程 二 数据文件及其寻址1 数据文件概述 1 数据文件的作用处理器所检查和修改的所有数据均存贮在内存中的数据文件中 它们可以存贮 1 从输入模块接收的数据 2 发送到输出模块的数据 这些数据表示了程序运行的最终结果 3 程序运算的中间结果 4 预先装入的数据 5 与指令有关的状态信息 6 与处理器操作有关的信息等 第3章可编程序控制器的编程 数据文件结构slc500用户内存有数据文件和程序文件组成 缺省数据文件从3到8 而9到255可以被配置为位 计时器 计数器 控制 整型 浮点 ascii和字符串文件 第3章可编程序控制器的编程 3 缺省的数据文件类型文件类型标识符文件号输出o0输入i1状态s2位b3计时器t4计数器c5控制r6整数n7浮点f8 第3章可编程序控制器的编程 4 可定义的数据文件类型文件类型 标识符 编号文件允许的最大尺寸位 二进制 b9 9991000字计时器t9 9991000个3字元素计数器c9 9991000个3字元素整数n9 9991000字浮点f9 9991000个单字元素 每字32位 第3章可编程序控制器的编程 5 数据文件的一般寻址格式 数据文件的地址 由文件名称 文件号 元素号 字号及位构成 相互之间用一定的定界符分开 如一个计时器文件是一个三字元素 可表示为 tf e w b位号 0 15 数据文件从元素构成的字数可以分为 单字元素 一个元素一个字 三字元素 一个元素三个字 多字元素 一个元素多个字 第3章可编程序控制器的编程 2 数据文件类型及直接寻址 1 输入 输出文件i o输入 输出文件 表征了物理框架中的i o模块在i o映象表中的存贮位置 寻址输入 输出文件 就是用逻辑地址来表示物理地址 它是一个单字元素 如i 1 0 01 该输入映象表地址的含义是 1号机架 第0字 1号端子上的输入 o 2 1 00 该输出映象表地址的含义是 2号机架 第1字 0号端子上的输出 第3章可编程序控制器的编程 2 状态文件s系统状态文件向用户提供与用户程序中所使用的各种指令有关的信息 状态文件指示次要错误和主要错误的诊断信息 处理器方式 扫描时间 波特率 系统节点地址和各种其它数据 其寻址格式为 s e b常用的如 processormodes 1 0 1 4overflows 0 1firstpasss 1 15batterylows 5 11dates 39 37times 40 42 第3章可编程序控制器的编程 3 位文件b位文件的作用 主要用在继电器逻辑指令 移位寄存器指令及顺序器指令 其中的每一位都可作为一个中间继电器来使用 在系统中 数据文件的3号文件缺省为位文件 用b3表示 第3章可编程序控制器的编程 位文件的编址 是一个单字元素 可以通过两种方法来对位文件中的位进行编址 第一种是通过设定元素号和在元素内的位号 00 15共16位 进行编址 如 bf e b 第二种是通过整个位文件依次从00开始对位进行编号 如 bf b例子 b3 1 00与b3 16指的是同一位 都是指1号字中的00位 第3章可编程序控制器的编程 4 计时器文件t计时器文件 用在计时器指令中 系统将4号文件缺省为计时器文件 用t4表示 计时器是3字元素 字0是控制字 字1存贮预置值 字2存贮累积值 计时器元素 字0 15141312111009080706050403020100enttdn内部使用 不能编址字1 预置值pre字2 累积值acc 第3章可编程序控制器的编程 4 计时器文件t 续 计时器的编址 tf e s b其最小可寻址到位 当然可以寻址到字 元素 而且允许用助记符寻址 可编址的位可编址的字en 位15 有效位pre 预置值tt 位14 计时器计时位acc 累积值dn 位13 计时器完成位 第3章可编程序控制器的编程 4 计时器文件t 续 计时器编址的例子 a t4 0 0 15与t4 0 15与t4 0 en的含义是一样的 都是指计时器文件第0个计时器的有效位 或叫使能位 b t4 0 1与t4 0 pre是一样的 t4 0 2与t4 0 acc也是指同一个字 第3章可编程序控制器的编程 5 计数器文件c计数器文件 用在计数器指令中 系统将5号文件缺省为计数器文件 用c5表示 计数器也是3字元素 字0是控制字 字1存贮预置值 字2存贮累积值 计数器元素字0 15141312111009080706050403020100cucddnouun仅内部使用 不能编址字1 预置值pre字2 累积值acc 第3章可编程序控制器的编程 5 计数器文件c 续 计数器的编址 cf e s b计数器最小可寻址到位 当然可以寻址到字 元素 而且允许用助记符寻址可编址的位可编址的字cu 位15 加数有效位pre 预置值cd 位14 减数有效位acc 累积值dn 位13 完成位ov 位12 上溢位un 位11 下溢位 第3章可编程序控制器的编程 5 计数器文件c 续 计数器编址的例子 a c5 0 0 15与 c5 0 15与c5 0 cu的含义是一样的 都是指计数器文件第0个计数器的加计数有效位 使能位 b c5 0 1与c5 0 pre是一样的 c5 0 2与c5 0 acc是一样的 第3章可编程序控制器的编程 6 控制文件r控制文件 用在需要文件操作 不是位操作 也不是字操作 的一些指令上 如移位寄存器指令 文件指令 顺序器指令 系统将6号文件缺省为控制文件 用r6表示 这是一个3字元素 字0是状态字 字1是指明存贮数据的长度 字2指明目前指令正在操作的数据的位置 控制字元素字0 15141312111009080706050403020100endnerulinfd仅内部使用 不能编址字1 位阵列或文件长度len字2 位指针或位置pos 第3章可编程序控制器的编程 6 控制文件r 续 可编址的位可编址的字en 位15 有效值len 长度dn 位13 完成位pos 位置er 位11 出错位ul 位10 转储位 仅移位指令用 in 位9 禁止位fd 位8 发现位 in与fd仅在文件搜索与比较时用 第3章可编程序控制器的编程 6 控制文件r 续 控制文件的编址 rf e s b与计时器及计数器文件一样 控制文件可寻址到元素 字 直至位 同样允许用助记符寻址 第3章可编程序控制器的编程 7 整数文件n描述 整数文件用于放置一个16位的字 系统将7号数据文件缺省为整数文件 用n7表示 整数文件可在元素及位上进行编址 寻址 如 nf e b整数文件编址的例子 n7 2n7 2 08n10 36 第3章可编程序控制器的编程 8 浮点文件f浮点文件的描述 浮点文件用于放置一个32位的字 系统将8号数据文件缺省为浮点文件 用f8表示 浮点文件一般就寻址到元素 浮点文件的编址如下 ff e浮点文件寻址的例子 f8 0 f11 1 第3章可编程序控制器的编程 2 数据文件的间接寻址 变址寻址及符号寻址plc 5可编程序控制器除了支持直接寻址外 也支持间接寻址 变址寻址及符号寻址 1 间接寻址间接寻址描述 所谓间接寻址 就是用另外一个地址的值来代替某一逻辑地址中的寻址单元 如文件号 元素号 位号等 替代地址 必须是下列类型的数据文件之一 n t c r b i o或s 任何t c或r三字元素的地址必须是子元素 即字 的地址 例如 t4 0 acc 替代地址写在括号 内 第3章可编程序控制器的编程 1 间接寻址 续 间接寻址的例子 n n7 0 0文件号存于整数地址n7 0中n7 c5 7 acc 元素号为计数器5 元素7的累加值b3 i 017 位号放在输入文件的1机架7号输入字中n n7 0 n9 1 文件及元素号文件号在整数地址n7 0中 元素号存在整数地址n9 1中 第3章可编程序控制器的编程 2 变址寻址变址寻址的描述所谓变址寻址 就是实际地址为用户选择的元素地址加上一个偏移量 偏移量放在处理器状态文件的偏移量字 s 24 中 因此处理器是在基地址加上偏移量后形成的地址上开始操作 变址寻址用变址符 直接放在文件类型标识符前面来识别 如 n7 5 第3章可编程序控制器的编程 变址寻址 应遵循下述原则 保证变址值 正或负 不能引起变址地址超出文件类型的界限 当指令使用变址地址多于两个时 对每一变址地址处理器均使用同一个变址值 在使用变址地址的指令使能前 应立即对变址值设定偏移量 变址寻址的例子 对于 n7 10 假设偏移值为10 放在s 24 中 则处理器实际操作的源地址是n7 20 第3章可编程序控制器的编程 3 符号寻址符号寻址的描述符号寻址 就是用一个名称代替一个地址 因此地址就可同实际应用联系起来 例如 可以用lsi名称代替输入映象表中的i 3 10 第3章可编程序控制器的编程 当采用符号寻址时 遵循下列原则 名称用一字母字符开头 不是数字 最多可包含十个下列字符 a z 大小写 0 9 下画线和 也可用符号地址替代数据类型的地址 元素 位 记录所定义的符号及相应的逻辑地址 这个可以由软件完成 软件会生成一个能列出现行定义的所有符号的报表功能 第3章可编程序控制器的编程 符号寻址的例子 地址类型逻辑地址符号地址输入映象i 15 00ls1i 15 03auto1i 15 06sw1输出映象o 13 00m1o 13 02cl1o 13 04l1元素f10 0calc 1f10 1calc 2 第3章可编程序控制器的编程 4 程序常数在一些指令中 可以将整数或浮点常数 例如参考值 直接输入到梯形图程序中 而不通过数据表 一旦输入 程序常数便不能由梯形图程序处理 但可以通过在线或离线编程修改它们 其数值范围为 整数 32768到 32767 占一个16位字 浮点数 1 1754944e 38到 3 4028237e 38 占一个32位字 可编程序控制器的指令系统 第3章可编程序控制器的编程 3 4可编程序控制器的指令系统一 继电器指令继电器指令的作用 继电器指令用于监控数据表中的位状态 如输入位 输出位或者计时器控制字的位 继电器指令的分类 输入指令 检查闭合 xic 检查断开 xio 输出指令 输出激励 ote 输出锁存 otl 输出解锁 otu 立即输入 iin 立即输出 iot 利用这些指令 用户可以寻址存贮器所有空间上的位 第3章可编程序控制器的编程 1 检查闭合xicxic的描述 xic属输入指令 若相应位地址中的数据是 1 on 则表示该指令的逻辑为真 true 否则该指令的逻辑为假 false 它类似于常开开关 如果位地址使用了输入映象表的位 则其状态必须与相应地址实际输入设备的状态相一致 xic的指令形式 第3章可编程序控制器的编程 2 检查断开xioxio的描述 属输入指令 若相应位地址中的数据是 1 on 则表示该指令的逻辑为 假 false 否则该指令的逻辑为真 true 它类似于一常闭开关 xio的形式 第3章可编程序控制器的编程 3 输出激励oteote的描述 属输出指令 用于控制存贮器中的位 若该位对应输出模块上的一个端子 则当该指令使能时 连接到该端子上的设备被接通 反之 设备不动作 若ote指令前面的阶梯条件为真 则处理器使能ote指令 若ote指令前面的阶梯条件为假 则不使能ote 相应的设备不接通 一条ote指令如同一个继电器的线圈 ote指令由它前面的输入指令控制 而继电器的线圈由硬触点控制 第3章可编程序控制器的编程 ote的形式 在该指令中 若阶梯条件为真 则该指令使处理器把输出映象表中的0 013 01置为on状态 数值为1 若阶梯条件为假 则置为off状态 数值为0 地址o 013 01与01号i o机架3号i o组相应的输出模块的01号端子对应 第3章可编程序控制器的编程 4 输出锁存otlotl的描述 属输出指令 并且是保持型指令 也就是说 当阶梯条件是真时 otl指令使处理器置位某一地址位 然后该位保持置位 此后即使阶使阶梯条件变假 该位依然保持置位 若要复位 则需要在另一阶梯中使用解锁指令otu对同一地址的位解锁 otl的形式 在该指令中 若阶梯条件为真 则使处理器把输出映象表中的o 013 01置位 直至用otu对其解锁 第3章可编程序控制器的编程 5 输出解锁 otu out描述 属保持型输出指令 常用以复位由otl指令锁存的位 otl otu应使用相同的地址 当阶梯条件为真时 对相应的位复位 以后即使阶梯条件变假 该位依然保持复位 置0 除非采用另一指令对该位重新置位 otu的形式 其含义与otl对应 第3章可编程序控制器的编程 6 立即输入 iim iim描述 属输出指令 当其使能时 即阶梯条件为真时 在下次正常的输入映象刷新之前更新输入映象表中的一个字 此时程序扫描将被中断 直至对输入状态刷新完毕 对于iin指令 用户只需输入i o机架号和i o组号 不必输入文件号 否则会出错 iim的形式为 001 iom 在该指令中 若阶梯条件为真 处理器立即更新对应于机架号1组号1的输入映象字 第3章可编程序控制器的编程 7 立即输出 iom iom描述 是一条输出指令 当其使能时 在下一次正常的输出映象刷新之前更新输出映象表的一个字 此时程序扫描被中断 直至输出状态刷新完毕 对于iot指令 用户也只需输入i o机架号和i o组号 不必输入文件号 001iot的形式 iom 在该指令中 若阶梯条件为真 处理器立即更新对应于机架号0组号1的输出映象字 第3章可编程序控制器的编程 8 继电器指令编程举例按上按钮i 3 0 灯o 4 0 o 4 1亮 断开按钮i 3 0 灯o 4 0熄灭 o 4 1仍亮 按上按钮i 3 1 灯o 4 1也熄灭 第3章可编程序控制器的编程 二 计时器 计数器指令计时器和计数器指令用于控制基于时间和事件计数的操作 属于输出指令 包括 计时器指令 通延时计时器 ton 断延时计时器 tof 保持型计时器 rto 计数器指令 加计数 ctu 减计数 ctd 复位指令 计时器 计数器复位 res 第3章可编程序控制器的编程 1 通延时计时器tonton的描述 利用ton指令在预置时间内完成延时去控制输出的接通或断开 当阶梯为真时 ton指令开始累加计时 直至下列条件之一发生为止 1 累加值 预置值 2 阶梯变假 3 复位计时器 4 相关的sfc步变无效 第3章可编程序控制器的编程 ton的格式 可见每一个ton必须使用一个计时器元素 如t4 0 并提供下列参数 第3章可编程序控制器的编程 ton的参数 1 时基 timerbase 分1s和0 01s 0 2s3种 它决定了计时器的精度 2 预置值 present 用以设置预定时间 以一个16位的整数值放置 范围0 32767 实际的延时 预定 时间 预置值 时基 3 累加值 accum 是一个动态值 告诉用户目前已经延时的数值 计时器复位时 其值为0 第3章可编程序控制器的编程 ton的操作及状态 第3章可编程序控制器的编程 2 断延时计时器toftof的描述 tof指令在阶梯条件变假时开始累加计时 以0 01s或1s或0 1s的间隔 直至下列条件之一产生 1 累加值 预置值 2 阶梯条件变为真 3 相关的sfc变为无效一旦阶梯条件变真 不论计时器是否到时 处理器复位累加值 第3章可编程序控制器的编程 tof的格式 各参数的含义与ton相同 第3章可编程序控制器的编程 tof的操作及状态 第3章可编程序控制器的编程 3 保持型计时器rtorto指令的描述 rto指令在阶梯条件为真时 开始按一定的时间间隔 0 01s或1s 计时 直到累加值达到预置值为止 下列条件发生时 rto指令保持其累加值 1 阶梯变假 2 用户改变到编程方式 3 处理器出错或断电 4 相关的sfc步无效 第3章可编程序控制器的编程 rto指令的特点 当处理器重新运行或阶梯变真时 计时器从保持的值开始继续计时 由于保持累加值 所以在阶梯为真的时间内 保持型计时器测量了累加时间 如果rto阶梯条件变假后 要复位其累加值和状态位 用户需在另一条阶梯中编写具有相同地址的复位指令res 第3章可编程序控制器的编程 rto指令的格式 各参数的含义与ton相同 除了累积值能保持外 其它的操作与状态也与ton相同 第3章可编程序控制器的编程 4 加计数ctuctu指令的描述 在 32768 32767范围内向上计数 每一次阶梯条件由假变真 ctu指令以一个单位增加累积值 当累积值等于或超过预置值时 ctu指令置位完成位dn 用户可以在程序中使用它来初始某些动作 如控制一个存贮位或一个输出设备 计数器内的累加值是保持的 直到被与计数器具有相同的地址的复位指令复位为止 第3章可编程序控制器的编程 ctu指令的格式 可见每一个ctu必须使用一个计数器 如c5 0 并提供下列参数 第3章可编程序控制器的编程 ctu指令的参数 1 预置值 present 用户定义需计数的值 范围 32768 32768 预置值以16位整数存放 负数以补码形式存放 2 累积值 是一个动态值 告诉用户目前已经计数到的数值 第3章可编程序控制器的编程 ctu指令的状态位 在ctu指令中 有三个状态位是非常重要的 用户可以通过检测这些状态位以触发某些事件 1 加计数使能位 cu 位15 当阶梯变真时 置位 cu位以表示计数器加计数使能 当阶梯变假或执行res指令时 复位 cu位 第3章可编程序控制器的编程 2 加计数完成位 dn 位13 当累加值达到预置值时置位 dn位 而且当累加值超过预置值时 dn位保持置位 可用res指令复位 dn 3 加计数溢出位 ov 位12 计数器超过上限 32767时处理器对它置位 而且累加值被约束到 32768 计数器从这里开始计数 可用res指令复位 ov位 第3章可编程序控制器的编程 ctu梯形图的例子 第3章可编程序控制器的编程 5 减计数ctdctd的描述 1 ctd指令是在 32767 32768范围内向下计数 2 阶梯每一次由假变真 ctd指令把累加值减少1 无论多长时间 当累加值大于或等于预置值时置位完成位 dn 当累加值小于预置值时 复位完成位 dn 用户可以在程序中使用它来初始某些动作 如控制一个存贮位或一个输出设备 3 计数器内的累加值是保持的 直到被与计数器具有相同地址的复位指令res复位为止 第3章可编程序控制器的编程 ctd的格式 其参数与含义与ctu相同 第3章可编程序控制器的编程 ctd指令的状态位 在ctd指令中 也有三个状态位 用户可以通过检测这些状态位以触发某些事件 1 减计数使能位 cd 位14 当阶梯变真时 置位减计数使能位 cd 表示减计数使能 当阶梯变假时或使用res复位指令时 则复位 cd位 第3章可编程序控制器的编程 2 减计数完成位 dn 位13 当累加值大于或等于预置值时 置位减计数完成位 dn位 当累加值在预置值以下时 复位 dn位 dn位可以由res指令复位 3 减计数器下溢出位 un 位11 当减计数器超过下限 32768时 处理器置位下溢出位 un位 而且被控制到 32767 ctd指令从这里开始向下计数 可用res指令复位 un位 第3章可编程序控制器的编程 ctd梯形图的例子 第3章可编程序控制器的编程 6 计时器和计数器的复位指令resres的描述 res指令用以复位计时器 除tof 和计数器 当阶梯为真时 执行res指令 复位的内容在前面的指令中已有叙述 第3章可编程序控制器的编程 res的格式及例子 第3章可编程序控制器的编程 7 计时器和计数器指令的编程思考题前10秒指示灯o 4 00亮 o 4 01熄灭 后10秒指示灯o 4 01亮 o 4 00熄灭 以后循环 第3章可编程序控制器的编程 三 比较指令比较指令用于比较表达式或进行指定比较指令的值的比较 它属输入指令 包括 比较 cmp 等于 equ 大于等于 geq 大于 grt 小于等于 leq 小于 les 极限测试 lim 屏蔽相等比较 meq 不等于 neq 若比较成立 则该指令的逻辑为真 第3章可编程序控制器的编程 1 比较指令 cmp 比较指令 cmp 的描述 cmp指令用以完成用户指定表达式的算术比较操作 当处理器发现表达式为真时 阶梯为真 否则阶梯为假 一条cmp指令的执行时间比其它比较指令 如 grt leq等 的执行时间要长 在用户程序文件中 一条cmp指令比相应的比较指令占用的字也要多 第3章可编程序控制器的编程 比较指令 cmp 的格式及例子 第3章可编程序控制器的编程 比较指令 cmp 的表达式 它定义了用户要完成的操作 表达式由操作符 地址或程序常数组成 1 操作符 符号 定义操作功能 如比较操作中的等于 不等于 小于 小于等于 大于 大于等于 算术运算中的加 减 乘 除 平方根 sqr 指数 以及转换中的bcd转换成二进制 frd 二进制转换成bcd tod 等等 第3章可编程序控制器的编程 2 地址 可以是直接地址 间接地址或变址地址 必须是字水平 3 程序常数 可以是整数也可是浮点数 如是八进制 在数据后加标注 o 如是十六进制 在数据后加标注 h 如是二进制 在数据后加标注 b 例如 ah是一个十六进制数a 相当于十进制10 表达式最长允许有80个字符 包括空格与括弧 第3章可编程序控制器的编程 2 等于 equ 等于 equ 的描述 equ指令用以检测两个值是否相等 源操作数a和b sourcea和sourceb 可以是数值 也可以是包含数值的地址 如两个值相等 该指令的逻辑为真 否则为假 第3章可编程序控制器的编程 等于 equ 的格式及例子 该例子表明 若n7 5的值等于n7 10的值 置位o 013 01 第3章可编程序控制器的编程 3 大于或等于 geq 大于或等于 geq 的描述 grt指令比较一个值 sourcea 是否大于另一值 sourceb sourcea和b既可以是数值 也可是包含数值的地址 大于或等于 geq 的例子 该例子表明 若n7 5的值大于n7 10的值 置位o 013 01 第3章可编程序控制器的编程 4 大于 grt 大于 grt 的描述 grt指令比较一个值 sourcea 是否大于另一值 sourceb sourcea和b既可以是数值 也可是包含数值的地址 大于 grt 的例子及格式 该例子表明 若n7 5的值大于n7 10的值 置位o 013 01 第3章可编程序控制器的编程 5 小于或等于 leq 小于或等于 leq 的描述 leq指令比较一个值 sourcea 是否小于或等于另一值 sourceb sourcea和b既可以是数值 也可以是包含数值的地址 小于或等于 leq 的格式及例子 该例子表明 若n7 5的值小于或等于n7 10的值 置位o 013 01 第3章可编程序控制器的编程 6 小于 les 小于 les 的描述 les指令比较一个值 sourcea 是否小于另一个值 sourceb sourcea和b既可以是数值 也可以是包含数值的地址 小于 les 的格式及例子 该例子表明 若n7 5的值小于n7 10的值 置位o 013 01 第3章可编程序控制器的编程 7 极限测试 lim 极限测试 lim 的描述 lim用以测试一个值是否在某一范围之内 若比较测试值在一定的范围之内时 该指令的逻辑为真 否则为假 用户可以使用lim指令去比较一个模拟量输入值是否在指定的限制内 第3章可编程序控制器的编程 极限测试 lim 的的格式 该指令中 lowlim 低限值 test 测试值 highlim 高限值 既可以是数值 也可以是包含数值的地址 而且允许高限低于低限 在例中 假设低限值小于高限值 且三个参数均以地址形式表示 其含义是 当n7 15的数值大于或等于n7 10的数值 且小于或等于n7 20的数值时 该指令的逻辑为真 第3章可编程序控制器的编程 8 相等的屏蔽比较 meq 相等的屏蔽比较 meq 的描述 meq指令将源地址 source 内的值与一个比较地址 compare 内的数据作比较 并且部分数据允许被屏蔽 如果源地址中的数据和比较地址中的数据除了被屏蔽的位之外每位相同 则指令为真 一旦检测到不相同的位 则指令为假 其中源 source 比较 compare 屏蔽 mask 都可以是程序常数 16位 或包含一个数值的地址 若屏蔽值中的某一位是1 则允许数据通过 是0 则不让数据通过 因此编程时必须把要比较数据的屏蔽位置1 不要比较数据的屏蔽位置0 第3章可编程序控制器的编程 meq的格式及例子 其中 n7 5 0101010101011111n7 6 1111111111110000n7 10 010101010101 表示数据随意在例子中 因为源 n7 5 与比较 n7 10 的低四位不被比较 所以此指令为真 置位o 013 01 第3章可编程序控制器的编程 9 不等于 neq 不等于 neq 的描述 neq指令比较两个值是否相等 sourcea和b既可以是数值也可以是包含数值的地址 不等于 neq 的格式及例子 该例子表明 若n7 5的值不等于n7 10的值 置位o 013 01 第3章可编程序控制器的编程 10 比较指令的编程例子 第3章可编程序控制器的编程 四 计算指令计算指令用于计算表达式或用指定的算术指令进行算术运算 它包括 计算 cpt 反余弧 acs 加法 add 除法 div 自然对数 ln 乘法 mul 常用对数 log 取反 neg 正弦 sin 平方根 sqr 排序 srt 标准偏差 std 正切 atn x的y次幂 xpy 计算指令是输出指令 当阶梯条件成立 进行计算 第3章可编程序控制器的编程 1 计算 cpt 计算 cpt 的描述 cpt指令可以完成拷贝 算术 逻辑和转换等操作 计算 cpt 的格式 该指令完成表达式中用户定义的操作 并且把结果输入到目的地址 数据类型也自动转化为目的地址的类型 第3章可编程序控制器的编程 计算 cpt 中的表达式 表达式是用户定义的操作 由运算符 地址或程序常数完成 最终可达80个字符 复杂表达式 其中 运算符 符号 定义了操作性质 地址可以是直接和间接地址 程序常数可以是整数或浮点数 而用在表达式中任一操作数为浮点数 那么整个表达式就以浮点数形式进行运算 第3章可编程序控制器的编程 cpt完成的功能 1 拷贝 若在表达式项中输入源地址 在目的地址中输入目的地址 就可以把源地址的数据拷贝到目的地址 2 清零 若在表达式项中输入数据零 则可以将目的地址的数据清零 3 算术运算 cpt的表达式中下列运算都是有效的 加 减 乘 除 竖条 求反 平方根 sqr 幂 自然对数 ln 常用对数 log 余弦 cos 正弦 sin 正切 tan 反余弦 acs 反正弦 asn 反正切 atn 等 注意三角函数采用弧度制 第3章可编程序控制器的编程 4 逻辑运算 与 and 或 or 异或 xor 非 not 5 转换 bcd转换成整数 frd 整数转换成bcd tod 弧度转换成度 deg 度转换成弧度 rad cpt的执行时间 一般来说 cpt指令的执行时间大于一条算术逻辑指令 如add and 的执行时间 运算的结果保留六位有效数字 执行后更新数据表状态文件中的算术标志状态 s 0 0 s 0 3 所有计算指令都如此 第3章可编程序控制器的编程 2 反余弦 acs acs指令的描述 acs指令将源操作数 source 求反余弦并且把结果以弧度形式存放在目的地址中 acs指令的格式 其中source的绝对值应 1 destination的结果在0 之间 source可以是地址 也可以是常数 destination为地址 16位的字 若source的绝对值大于1 则目的地址内的结果为 nan 第3章可编程序控制器的编程 3 反正弦 asn asn指令的描述 asn指令将源操作数 source 求反正弦且把结果以弧度形式存放在目的地址中 asn指令的格式 其中源的绝对值应 1 dest的结果在 2 2之间 源可以是存有数值的地址 也可以是常数 dest为地址 放16的数值 若源的绝对值大于1 则目的地址内的结果为 nan 第3章可编程序控制器的编程 4 反正切 atn 反正切指令的描述 反正切指令求一个数值 源操作数 的反正切且把结果 弧度 放在目的地址中 反正切指令的格式 其中目的地址中的值在 2 2之间 源 source 可以是存有数值的地址 也可是常数 第3章可编程序控制器的编程 5 余弦 cos 余弦 cos 的描述 cos指令求一个值 源操作数 以弧度表示 的余弦值 结果存放在目的地址 dest 内 余弦 cos 的格式 其中源的绝对值应 205887 4 最好 2 以求高精度 不然目的操作数的结果为 inf 目的操作数的结果总是在 1和 1之间 第3章可编程序控制器的编程 6 正弦 sin sin指令的描述 sin指令求一个值 源操作数 弧度表示 的正弦值 结果放在目的地址 dest 内 sin指令的格式 其中源的绝对值应 205887 4 最好 2 以求高精度 不然目的操作数的结果为 inf 目的操作数的结果总是在 1和 1之间 第3章可编程序控制器的编程 7 正切 tan 正切 tan 的描述 tan指令求一个值 源操作数 弧度表示 的正切值 结果放在目的地址 dest 内 正切 tan 的格式 其中源的绝对值应 102943 7 最好 2 以求高精度 不然目的地址内的结果为 inf 目的地址内的结果是一个实数 第3章可编程序控制器的编程 8 清零 clr 清零 clr 的描述 清零指令 clr 将一个字的所有位都设定为零 目的操作数必须是一个字地址 清零 clr 的格式 第3章可编程序控制器的编程 9 加法 add 加法 add 的描述 加法 add 指令将一个数值 sourcea 和另一个数值 sourceb 相加 结果放在目的地址 dest 内 sourcea和b既可以是数值 也可以是含有数值的地址 加法 add 的格式 第3章可编程序控制器的编程 10 减法 sub 减法 sub 的描述 减法 sub 指令将一个数值 sourcea 减去另一个数值 sourceb 结果放在目的地址 dest 内 sourcea和b既可以是数值也可

温馨提示

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

评论

0/150

提交评论