当前位置:首页 >> 电力/水利 >>

东北大学罗克韦尔自动化实验室


PLC-5培训教程
?钱晓龙
? ?

qianxiaolong@ise.neu.edu.cn

东北大学罗克韦尔自动化实验室

第1章 可编程序控制器系统概述
?

PLC控制系统的提出 六十年代末期,美国的汽车制造业竞争 激烈,各生产厂家汽车型号不断更新,其加 工的

生产线亦必须随之改变,对整个控制系 统要重新配置,因此,1968年美国通用汽车 公司(GM)公开招标,对控制系统提出具 体要求: (1)编程简单,可在现场修改程序; (2)维修方便,采用模块化结构,即插件式;

第1章 可编程序控制器系统概述
(3)可靠性高于继电器控制系统,能在恶劣 环境下工作; (4)体积小于继电器控制柜; (5)价格便宜,成本应可与继电器控制系统 竞争; (6)输入、输出可以采用市电,电流达到一 定要求(2A以上),可直接驱动继电器 和电磁阀; (7)具有数据通讯功能,数据可直接送入管 理计算机;

第1章 可编程序控制器系统概述
(8)易于系统扩展,在扩展系统时只要很小 变更; (9)用户程序存储器容量至少能扩展到4K以 上。 这些要求实际上提出了将继电器控制系统 的简单易懂、使用方便、价格低的优点与计 算机的功能完善、灵活性、通用性好的特点 结合起来,将继电接触器控制硬接线逻辑转 变为计算机的软件逻辑编程的设想。

第1章 可编程序控制器系统概述
?

PLC的历史 1969年美国数字设备公司(DEC)根 据上述要求,研制出世界上第一台可编 程序控制器,并在GM公司汽车生产线上 首次应用成功。当时人们把它称为可编 程 序 逻 辑 控 制 器 PLC ( Progrmmable Logic Controller),只是用它取代继电接 触器控制,功能仅限于执行继电器逻辑、 计时、计数等。可编程序控制器问世后, 发展极为迅速。

第1章 可编程序控制器系统概述
1971年日本开始生产可编程序控制器; 1973年欧洲开始生产可编程序控制器, 到现在世界各国一些著名的电气制造商 几乎都在生产PLC装置,如美国罗克韦 尔自动化公司的A-B、欧洲的西门子、日 本的三菱、日本的OMROM、美国的GE 等,PLC已作为一个独立的工业设备被 列入生产中,成为当代电控装置的主导。

第1章 可编程序控制器系统概述
?

PLC的定义: 国际电工委员会(IEC)1985年1月对可编 程序控制器作过如下定义:“可编程序控制器 是一种数字运算的电子系统,专为在工业环境 下应用而设计。它采用可编程序的存储器,用 来在内部存储执行逻辑运算、顺序控制、定时、 计数和算术运算等操作的指令,并通过数字式、 模拟式的输入和输出,控制各种类型的机械或 生产过程。可编程序控制器及其有关设备,都 应按易于工业控制系统联成一个整体、易于扩 充功能的原则设计。”

第1章 可编程序控制器系统概述
PLC运行框图:
上电及 内部处理

扫描过程

诊断及 出错处理

第1章 可编程序控制器系统概述
第一部分: 上电及内部处理,上电后对整个系统进 行一些初始化工作,如硬件初始化、I/O 模块配置检查、停电保护设定及其它初 始化处理。 第二部分扫描过程: 实际上包含三个部分。首先是输入扫描, 其次是程序扫描阶段, 最后一个阶段即输出扫描阶段 。

第1章 可编程序控制器系统概述
第三部分是诊断及出错处理: 可编程序控制器每扫描一次,就执行 一次自诊断,检查诸如CPU、电池电压、 程序存储器、I/O通讯是否异常或出错, 如查出错误或异常,CPU面板上的指示 灯就会指示,并在特殊寄存器中存入出 错代码。若出现致命错误,CPU就会被 强制成STOP方式,停止扫描。

第1章 可编程序控制器系统概述
扫描周期:通常规定,从扫描过程的某一 点开始,经过一个循环重新回到该点所需 要的时间称为扫描周期。如果忽略可编程 序控制器的通讯服务时间,忽略更新时钟 及进行自诊断的时间,忽略I/O刷新的响应 滞后时间,扫描周期就是程序执行时间和 I/O扫描时间之和。常用1千条(1K)指令 所需的时间来说明可编程序控制器的扫描 速度(大约1ms~10ms/k指令)。

第1章 可编程序控制器系统概述
四、 可编程序控制器的国内外发状况及发 展趋势 (1)产品规模向大、小两个方向发展 (2)体系结构开放化及通信功能标准化 (3)I/O模块智能化及专用化 (4)编程组态软件图形化 (5)发展集成技术及容错技术

Allen-Bradley PLC的发展历史
?

70年代初,Allen-Bradley收购了3―I‖公司, 并致力开发一种叫可编程序控制器的设备。 当时研制了一种叫PMC的设备: -128 I/O,EPROM内存为256字 -指令也只有常用的:常开、常闭、输出 -定时器和计数器是硬件模块 71年A-B成为第一个PLC制造商 72年开发了连接PLC的计算机接口,引入 源码编辑功能

Allen-Bradley PLC的发展历史(续)
?

1974年生产的1774-PLC成为第一台可 作并行处理的可编程控制器 早期PLC系统最主要竞争对手是继电器, 因为当时只有本地的I/O。 ? 1975年引入远程I/O,减少了接线费用, 但无算术指令。随后相继开发出操作员 接口设备和用于过程控制的模拟量I/O。

Allen-Bradley PLC的发展历史(续)
八十年代出现高性能的分布式I/O系统, 带智能的I/O模块和块传送。相应的产品 是PLC-2,PLC-3。 此时用户注重指令集、处理器的速度、 内存容量及I/O点数。用户需求从单纯代 替继电器,转向带MMI的控制系统。 ? 1985年推出PLC-5/15,引入RI/O的扫描 器和适配器技术。
?

Allen-Bradley PLC的发展历史(续)
?

八十年代末九十年代初推出小型的SLC500系列以及增强型的PLC-5系列,引入 网络技术:以太网、控制网、设备网, 以及许多人机界面的产品:PanelView、 RediPanel、Dataliner、RSView32等。 发展快,而且新产品性能强、价格低。

Allen-Bradley PLC的发展历史(续)
?

PLC发展到今天,主要的技术水准: -网络能力 -人机接口 -过程控制能力 -现场连接 -可选的语言功能 处理器的速度、尺寸、混合I/O和内存已 不再是主要因素

Allen-Bradley PLC的发展历史(续)

Now:

第2章 可编程序控制器处理器及 I/O模块
2.1 概述 一、 可编程序控制器系统的组成 组成:PLC主要由电源、处理器(CPU)、输 入/输 出单元(I/O)、特殊输入/输出单 元及一些外部单元(如编程器等)组成。

第2章 可编程序控制器处理器及 I/O模块
安装:常安装于通用的输入/输出框架上装 有CPU模块的框架称为基本框架,其它 为扩展框架。基本框架与扩展框架之间 如果距离较近(一般不超过30m),可通过 扩展本地I/O(并行)通信口与多个本地扩 展框架相连;如果距离较远(一般少于 3000m),可以通过远程I/O口连接。

第2章 可编程序控制器处理器及 I/O模块
典型结构:
Data Collection and Recipe Management Programming Terminal Plant Ethernet Network ControlLogix Gateway ControlLogix Gateway

ControlNet

RSView

PLC-5C

1771 I/O

PLC-5C

PanelView 1400e

DH+

DH+

PLC-5

SLC

RSView

PLC-5 Pyramid Integrator

SLC

PLC-3

第2章 可编程序控制器处理器及 I/O模块
二、 可编程序控制器的主要性能指标 1、存储容量 :生产厂家在生产可编程序控制器 时,已按照机器型号的不同,设置了不同容量 的存储器,小到1K~几K,大至1~2M 。 2、控制容量:就是I/O容量,也叫I/O能力,通常 以离散量(数字量)个数计。 3、扫描周期 : 4、指令功能及软件支持 5、网络与通信

第2章 可编程序控制器处理器及 I/O模块
2.2 PLC–5系列处理器 1771框架:

第2章 可编程序控制器处理器及 I/O模块
PLC-5处理器类型: 基本型处理器:1771-5/15,-25 增强型处理器 :PLC–5/11,–5/20,–5/30,–5/40, –5/60,–5/80 扩展本地I/O型处理器 :1771-5/60L 控制网型处理器 :1771-5/20C,-5/40C,-5/80C 以太网型处理器 :1771-5/20E,-5/40E,-5/80E

第2章 可编程序控制器处理器及 I/O模块
Memory Size

100K
64K

48K
32K 16K 8K
PLC-5/40 PLC-5/30 PLC-5/20 PLC-5/11
I/O

PLC-5/80 PLC-5/60

第2章 可编程序控制器处理器及 I/O模块
一、增强型PLC–5处理器的共同特性 1. 支持多种编程语言 :梯形逻辑图、结构文本 语言 、顺序功能流程图 (SFC)。 2. 控制性能优越的主控程序:编程人员可以任 意使用顺序功能流程图、梯形图和结构文本 来完成多达16个主控程序,每个主控程序对 应一个实际的设备或功能块,在实际应用中 可使用若干个主控程序。

第2章 可编程序控制器处理器及 I/O模块
3. 支持由定时器和事件驱动的处理器中断子程序, 支持PID算法,通用指令系列包括基本和扩展 的ASCII字符串指令以及包括对数、指数、三 角、统计等浮点运算功能。 4. 内置可组态RS–232/422/423串行口,以及最大 距离可达3048m的DH+网、远程I/O(可组态) 链路通信口。 5. 口令和权限操作保护。

第2章 可编程序控制器处理器及 I/O模块
二、PLC-5/40处理器
Keyswitch (Prog/Rem/Run) Battery Indicator Processor Run/Fault Indicator Force Indicator ASCII Port Status Indicator Channel 2A and 2B Status

Serial Channel
Channel 2A: DH+/RIO Channel 2B: DH+/RIO

Channel 1A and 1B Status Channel 1A: DH+/RIO Channel 1B: DH+/RIO Memory Backup Slot Battery Holder

EEPROM Memory

第2章 可编程序控制器处理器及 I/O模块
1.前面板: (1)钥匙开关 :用来设定可编程序控制器的工作 状态,共 (PROG/REM/RUN)三种状态 . 其中:当开关处于“REM‖即远程(Remote)状 态时,可以通过编程软件设定处理器 工作在“编程”、“调试”或“运 行” 状态。 使用钥匙是为了在调试完毕后使处理器固定 在运行状态,防止程序被意外修改。

第2章 可编程序控制器处理器及 I/O模块
(2).指示灯 电池指示灯“BATT”: 灯(红)亮表示电池盒里的电池该更换了。一 般该指示灯亮后,应在10天内及时更换电池, 否则可能因CMOS RAM的失效而造成程序的 丢失。

第2章 可编程序控制器处理器及 I/O模块
处理器运行/故障(绿/红)指示器灯“PROC”: 显示处理器当前的工作情况 灯(绿)亮:表示运行正常 灯(红)亮:表示处理器故障 强制指示灯 “FORCE”:显示用户有无强制I/O。 灯亮 :表示被强制 输入强制:用户强制输入数据文件中的位; 输出强制:能使用户强制实际的输出模板而 保留其输出数据文件处在原始状态。

第2章 可编程序控制器处理器及 I/O模块
串行口状态指示灯:闪绿表示通信正常 通信口指示灯(1A、1B;2A、2B): 固绿表示通信正常 (3)通信口:串行口:25针支持由EIARS-232C 和RS-423,也与RS-422A兼容 1A、1B口:1A缺省为DH+,1B缺省为RIO 2A、2B口:2A缺省为DH+,2B缺省为RIO 编程口:为8针小型DIN插座,该编程终端 插座是和通道1A和2A的3针插座并联连接的 。

第2章 可编程序控制器处理器及 I/O模块
(4)电池盒 (5)EEPROM模块插槽 : 用于当电池失效是时,通过开关 设定处理器在上电时从EEPROM中读取 程序送到CMOS RAM或在CMOS RAM 失效(程序丢失)时将EEPROM中的内容 传送到CMOS RAM,以避免因维护人 员的疏忽而造成程序的丢失。

第2章 可编程序控制器处理器及 I/O模块
2、侧面板
X X

1785-LXXB
RS -Port Pinout
NAME REV SERIES

S1
OO OO OO OO OO OO OO OO OO OO OO OO

DH+ Address CH. 1A DH+/RIO Switch 0PinoutOFF = OPEN / Settings 1 = CLOSED / ON (S1) RS - Port S2 Set

X

X

S2

Channel 3A

第2章 可编程序控制器处理器及 I/O模块
(1)SW1开关:设定该处理器在DH+网络中的 地址。 (2)SW2开关:设定该处理器串行口协议。 (3)3A口:PLC-5 B系列以上的处理器,还在侧 面板上附加通道3,该通道可作为以太网通信 口(需附加1785-ENET接口模块),使得增强型 PLC-5处理器具备了以太网的连接能力。

第2章 可编程序控制器处理器及 I/O模块
三、其他处理器 1. 以太网PLC-5处理器 增强型PLC-5处理器在侧面都提供了一 个内连连接器,它允许直接与控制处理 器或以太网模块(1771-ENET)相连, 这种连接使处理器可以访问以太网。 “以太网处理器”:是指具备嵌入的 TCP/IP通信能力的PCL-5处理器,其型 号有PLC-5/20E、-5/40E和-5/80E

第2章 可编程序控制器处理器及 I/O模块
Standard PLC-5 1785-ENET Ethernet Interface Sidecar Module

Channel 3 Connector

第2章 可编程序控制器处理器及 I/O模块
2. 控 制 网 PLC-5 处 理 器 (PLC-5/20C 、 -5/40C 、 5/80C) 控制网(ControlNet)是基于开放网络技 术的一种新的解决方案——生产者/客户模式。 生产者/客户模式允许网络上的所有节点同时 从单个的数据源获取相同的数据。这种模式 最主要的特点是:因数据的发送与客户数量 无关而提高了传送效率;因数据可同时到达 网上的每个节点而实现准确的同步化;具有 较高的数据传送率(5Mbps)。控制网的网络刷 新时间(NUT)分预定信息、未预定信息和网 络维护信息时间三个部分.

第2章 可编程序控制器处理器及 I/O模块
Network Address Rotary Switches
BATT Prog R E M Run PROC FOR

COMM

Network Access Port Redundant Coax Cable Connectors
A B AB

A

1 2 1 2

B

Battery PLC-5/40C
Programmable Controller

第2章 可编程序控制器处理器及 I/O模块
3. 扩展本地I/O处理器 (PLC-5/40L或-5/60L) 处理器可以和1771-ALX扩展本地I/O适配器模块组 成扩展本地I/O链以提高I/O刷新速率。注意处理器只 能作为扫描器而不能组态为适配器。扩展本地I/O链 是一条并行链,它使一个PLC-5/40L或-5/60L处理器 最多可扫描16个扩展本地I/O框架。扩展本地I/O框架 数 据 刷 新 时 间 低 于 0.5ms , 框 架 间 连 接 距 离 可 达 30.5m(100英尺)。必须要在最后一块适配器上安装 终结器(1771-CXT)来终结I/O链,否则系统将不能运 行。

第2章 可编程序控制器处理器 及I/O模块
DH+/RIO (2) RIO/DH+ Channels
Dataliner

(1) Local Channel
1771 Chassis with ALX Adapter

Remote I/O

Local I/O

PanelView

Capacity: 32 devices/channel Capacity: 16 devices Devices: 1771 chassis or any Devices: 1771 chassis only Node Adapter device Discrete Update: 48-80-144ms Discrete Update: <8mS (@ 230, 115 and 57.6 kB) Data Transmission: Parallel Data Transmission: Serial Length: 100 cable-ft max Length: 10000 cable-ft @ 57.6 kB 5000 cable-ft @ 115kB 2500 cable-ft @ 230kB

Distributed 1771 I/O

RIO

LIO

第2章 可编程序控制器处理器 及I/O模块
3。I/O模块分类 1771系列:PLC-5的I/O模块,90多种; 1746系列:SLC500系列处理器的I/O模块; 1756系列:ControlLogix 5550处理器的I/O模块; 1769系列:MicroLogix 1500处理器的扩展I/O模块;1794 系列:(Flex I/O)是一种灵活而低成本的模块化I/O 系统,可将现场接线终端与I/O接口组合在 同一位置; 1791系列:块I/O将电源封装在同一模块上,特别适用 点数不多的远程I/O应用场合。

第2章 可编程序控制器处理器 及I/O模块
二、数字I/O模块 (1)数字I/O模块:是直接I/O模块中最基本的 I/O模块,模块中的I/O回路可与按钮或限位开 关的开/关传感器相连、也可与马达启动器的指 示灯或报警器等开关量执行机构相连。 可编程序控制器数据表上相应位的状态直接控 制输出;输入直接控制可编程序控制器数据表 上的相应位。

第2章 可编程序控制器处理器 及I/O模块
(2)1771数字I/O模块:覆盖了10-276V的交/ 直流电气特性,输出模块可连接0-276Vac或0175 Vdc的信号;其接线采用接线臂,故在更 换模块时不必断开接线,模块的点数有8点、 16点和32点。 (3)1771-IAD和1771-OAD:

第2章 可编程序控制器处理器 及I/O模块
模块活动指示器(绿) 各输入状态指示器( 红)

图2.5.4 1771-IAD的面板及接线图

图2.5.5 1771-OAD模块驱动1771-IAD

第2章 可编程序控制器处理器 及I/O模块
指示器状态 (颜色) 模块活动ON (绿) 模块活动ON (绿)而 且输入状态ON (红) 模块活动ON (绿)而 且输入状态OFF 故障描述或系统状态 正常指示 检查输入电压 采取措施 无 如果有电压输入,无须采取措 施;若无电压输入,重新安装 模块。 1. 检查输入设备 2. 如果输入设备正常, 重新安装 模块。 无 1. 检查框架电源与模块输入电 源 2. 如果电源正常, 重新安装模块


输入设备不正常或模块的 输入故障 本无电压加到输入端

模块活动OFF 而且 输入状态ON (红)或 OFF

除非模块活动指示器亮, 否则无效;当活动指示器 不亮,指示器不能反映处理 器状态

第2章 可编程序控制器处理器 及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-VHSC 4通 道高速计数模块

第2章 可编程序控制器处理器 及I/O模块
五、通讯模块 1. 远程I/O扫描器模块 1771-SN PLC-5处理器可以组态成扫描器或适配器 模式,也有专用的扫描器模块1771-SN 2. 远程I/O 适配器模块 1771-ASB 1771-ASB远程I/O适配器模块为PLC扫描 器与多种1747-I/O模块之间提供了通信连接。 适配器支持1/2槽、1槽及2槽寻址模式 。

第2章 可编程序控制器处理器 及I/O模块
RIO Scanner RIO Adapter
DH+ RIO Scanner RIO Scanner RIO Adapter

RIO Scanner

Programming Terminal
Motion Control Third Party Devices

- 1771 I/O

- Block I/O

- PanelView - RediPanel - Dataliner

- Drives - CNC

第3章 可编程序控制器的编程

第3章 可编程序控制器的编程
? ? ? ? ?

?

可编程序控制器的编程方式 可编程序控制器的输入/输出寻址 可编程序控制器的内存组织 可编程序控制器的编程软件RSLogix5的使用 可编程序控制器的通信软件RSLinx的使用 可编程序控制器的仿真软件RSEmulate5的使 用及联机仿真

第3章 可编程序控制器的编程
可编程序控制器指令系统 ? 模拟量及其编程 ? 热备系统及其编程 ? 编程练习
?

第3章 可编程序控制器的编程
3.1 可编程序控制器的编程方式 PLC-5系列处理器支持三种编程方式: ——梯形图(Ladder) ——结构文本及(Struct Text) ——顺序功能图(SFC)

第3章 可编程序控制器的编程
一.梯形图(Ladder)
?

梯形图的描述:是一种最典型、也是最基本的 编程方式,它采用图形符号,沿用了继电器的 触点、线圈、串联等术语和图形符号,并增加 了一些继电接触控制没有的符号。适用于顺序 逻辑控制、离散量控制、定时/计数控制等。

第3章 可编程序控制器的编程
?

梯形图的组成:梯形图一般由多个不同的阶梯 (RUNG)组成,每一阶梯由输入及输出指令 组成。在一个阶梯中,输出指令应出现在阶梯 的最右边,输入指令则出现在输出指令的左边。
输入 指令 输出 指令

第3章 可编程序控制器的编程
?

梯形图举例:

第3章 可编程序控制器的编程
二. 结构文本(Struct Text)
?

结构文本描述: 结构文本类似于BASIC编程,利用它可以很方 便地建立、编辑和实现复杂的算法,特别在数 据处理、计算存储、决策判断、优化算法等涉 及描述多种数据类型的变量应用中非常有效。

第3章 可编程序控制器的编程
结构文本支持的结构: – 赋值(=):赋一个整数或浮点值给一个数据 单元。
? –

非保持型位赋值(=):赋一个二进制数给一 个位单元,当处理器工作模式从编程方式到运 行方式时或当顺序功能图(SFC)的步被扫描 后,这些位被清零。

第3章 可编程序控制器的编程
结构文本支持的结构:(续) – 保持型位赋值 RETAIN:赋一个二进制数给一 个位单元,当处理器工作模式从编程方式到运 行方式时或当SFC的步被扫描后,这些位并不 被清零。 – IF-THEN-ELSE:有条件的执行一段程序
? –

FOR-NEXT:重复执行一段程序。

第3章 可编程序控制器的编程
结构文本支持的结构:(续) – REPEAT:重复执行一段程序直至某输入表达 式为真 – EXIT:在处理器到达正常结束条件之前退出循 环结构(REPEAT,FOR或WHILE)。 – CASE:根据一个数学表达式或操作数据的值 有条件地执行一段程序。
?

第3章 可编程序控制器的编程
结构文本支持的结构:(续) – ;; :相当于一个无操作指令NOP。
? –

梯形图功能:可调用任一梯形图程序或指令。

第3章 可编程序控制器的编程
结构文本的例子: IF (!T4:0.DN) THEN; TON (T4:0, 0.01, 100,0); ELSE RES(T4:0); END_ IF;

第3章 可编程序控制器的编程
三.顺序功能图SFC
顺序功能图SFC的描述 – SFC是一种顺序控制语言,用这种语言可以对 一个控制过程进行控制,并显示该过程的状态。 对于用户的应用,可将逻辑分成易于处理的步 和转换来替代较长的梯形图或结构文本。
?

第3章 可编程序控制器的编程
顺序功能图SFC的基本结构 – 步: SFC中的步对应于一个控制任务(实际上 是一段为了完成某一个控制任务的程序,该程 序可以是梯形图、结构文本、SFC的任一形 式),用方框表示,方框中的号,代表了该步 的梯形图逻辑的程序文件号,如007。每步可 允许有多个动作(Action),对于增强型PLC 每步最多允许有8个动作,一个动作即一个步 的子集(subset)。
?

第3章 可编程序控制器的编程
?

步的例子

第3章 可编程序控制器的编程
顺序功能图SFC的基本结构(续) – 转换条件:步与步之间有转换条件(也是一段 程序)以水平线表示,通过对该条件的检测来 决定处理器什么时候开始执行下一步。在转换 条件中,号码也代表一个程序文件号。当一个 以EOT指令结尾的梯级为真时则转换为真。
?

第3章 可编程序控制器的编程
?

转换的例子

第3章 可编程序控制器的编程
简单SFC的例子
007

006
008 007
007

010

第3章 可编程序控制器的编程
顺序功能图SFC的基本结构(续) – 选择分支: 选择分支的功能:选择分支中包含多个可供处 理器选择的路径,这相当于 一个“或”结构。 选择分支的画法:是连接到一根单横线上的并 行路径。注意转换应放在框 界之内,而且在每个并行路 径的顶部。
?

第3章 可编程序控制器的编程
选择分支的运行:
当处理器运行一个选择分支时,处理 器按程序扫描顺序从左到右,扫描每个路 径前面的转换条件,直至找到第一条转换 为真的路径,程序就执行该路径的步和转 换。如果在选择分支中同时有多条路径为 真,处理器选择最左面的转换为真的路径。

第3章 可编程序控制器的编程
选择分支的容量:
(1)普通PLC-5(如PLC-5/10,-5/15, -5/25))可以定义多达7条选择分支; (2)增强型PLC-5(PLC-5/30,-5/40,-5/60 及以后产品)则可定义多达16条选择分 支。

第3章 可编程序控制器的编程
选择分支的例子:

第3章 可编程序控制器的编程
顺序功能图SFC的基本结构(续) – 并行分支: 并行分支的功能:并行分支中包含有多个至少被 处理器扫描一次的路径,这相当于一个“与” 结构,处理器完成并行分支之后转向下一步。 并行分支的画法:是连接在双横线上的并行路径。 注意,路径的公用转换在分支的外面。
?

第3章 可编程序控制器的编程
并行分支的运行:当处理器将每一分支的每一步
扫描一次之后,而且公用转换为真时,处理器 才结束执行并行分支。当处理器运行并行分支 时,按从左到右、从上到下的顺序扫描分支。 但看起来,处理器似乎是在同时执行每一条路 径。

第3章 可编程序控制器的编程
含有并行分支的例子:

第3章 可编程序控制器的编程
-典型的SFC并行分支扫描例子 :

第3章 可编程序控制器的编程
-当一转换为真时扫描并行分支的例子 :

第一步:

第3章 可编程序控制器的编程
第二步:

第3章 可编程序控制器的编程
第三步:

第3章 可编程序控制器的编程
并行分支中的“虚”步:并行分支时,可在每个路径的
末端加一个“虚”步,以协调并行动作,此“虚”步 仅仅是在移到转换之间维持每个路径的执行(直到所 有路径都执行了)。

第3章 可编程序控制器的编程
3.2 可编程序控制器的输入/输出寻址
1. 最简单的PLC-5可编程序控制器系统 : 包括一个PLC-5处理器、一个电源模块及一 些I/O模块,它们放置在同一个框架中。

第3章 可编程序控制器的编程
2. PLC-5系统I/O框架 类型: -4槽框架(目录号1771-A1B) -8槽框架(目录号1771-A2B) -12槽框架(目录号1771-A3B,-A3B1) -16槽框架(目录号1771-A4B) 带有内装电源和远程I/O适配器的框架: -1槽框架(目录号1771-AM1) -2槽框架(目录号1771-AM2)。

第3章 可编程序控制器的编程
3. PLC-5系统模块的放置 (1)PLC-5处理器或I/O适配器模块总是放在 框架的最左槽,并不占槽号。 (2)电源模块一般放在框架的最右槽,当然 也可以采用框架外电源 。 (3) I/O模块放置时的次序与模块的电气特性 有关,还与该框架的寻址方式有关 。

第3章 可编程序控制器的编程
(4)I/O模块放置次序与模块的电气特性 (从左到右)
-块传送模块 -直流输入模块,按电压由低到高从左到右放置 -直流输出模块,按电压由低到高从左到右放置 -交流输入模块,按电压由低到高从左到右放置 -交流输出模块,按电压由低到高从左到右放置

第3章 可编程序控制器的编程
一、有关寻址的几个概念 1. 物理地址 物理地址也就是I/O模块在物理框架中的位 置,常以第几框架第几槽中的第几个端子表示。 如第0个框架中的1号槽放了一个32点输入模块, 要指出其5号端子,其物理地址就是0框架1号 槽5号端子。

第3章 可编程序控制器的编程
2. 逻辑地址 逻辑地址是对应于内存中的地址,常以第 几号机架(rack)第几号I/O组(Group)的第 几位来表示。其中一个机架由8个I/O组组成。 一个I/O组对应于一个输入映象表字(16 位)和一个输出映象表字(16位),相当于16 个输入端子和16个输出端子。如输入映象表中 I:021/12中的I代表输入模块,02代表2号机架, 1代表1号I/O组,斜杆后的12代表12号端子。

第3章 可编程序控制器的编程
3. 物理地址与逻辑地址的关系 地址方式 寻址单位(从大到小) 物理地址 框架 槽 端子号 逻辑地址 机架 I/O组 位号

第3章 可编程序控制器的编程
二、PLC-5的寻址方式
1. 2槽寻址: (1)概念 2槽寻址就是由两个I/O模块槽组成一个I/O 组,也就是说每一物理的2槽I/O模块对应于输 入映象表中的一个字(16位)和输出映象表中 的一个字(16位)。采用不同密度(8点、16 点)的模块决定了在映象表中每个字使用的位 的数目。

第3章 可编程序控制器的编程
(2)两个8点离散量模块组成一个I/O组: a. 两个8点离散量输入模块组成一个I/O组时输 入/输出映象表中使用位的情况。

第3章 可编程序控制器的编程
b. 一个8点离散量输入模块和一个8点离散量输 出模块组成一个I/O组时输入/输出映象表中使 用位的情况。

第3章 可编程序控制器的编程
c. 问题:两个8点离散量输出模块组成一个I/O 组时映象表中使用位的情况 如何?
8点 输 出 模 块 8点 输 出 模 块

PLC 或 ASB

第3章 可编程序控制器的编程
d. 结论:8点I/O模块在I/O框架中是可以按任意
次序放置的

第3章 可编程序控制器的编程
(3)两槽寻址中采用16点离散量的模块

分析:
a. 由于每个16点模块使用了整个映象表中的整个字, 因此,一个16点的输入模块槽(放在偶数槽)要与相 邻的另一个模块槽组成一个2槽I/O组时,另一个模块 必须是8点或16点的输出模块,形成互补(即输入和输 出相互互补)。 b. 由于所有的块传送模块(如模拟量模块)都是双向 作用的(既占用输入映象表,又占用输出映象表), 所以不能用来互补输入或输出模块。

第3章 可编程序控制器的编程
例子:一个16点离散量输入模块和一个16点离
散量输出模块组成一个I/O组时输入输出映象表 中使用位的情况 :(见下页)

第3章 可编程序控制器的编程
问题:(1)一个8点离散量输入模块和一个16
点离散量输出模块组成一个I/O组时输入输出映 象表中使用位的情况 如何? (2)两槽寻址的框架中能否采用32点的 模块 ?不能!!!

第3章 可编程序控制器的编程
2.1槽寻址 (1)概念 1槽寻址就是一个I/O模块槽组成一个I/O组, 也就是说,在框架中的每一个物理的槽对应于 一个输入和输出映象表字。 ( 2)使用8点或16点模块 放置:在PLC框架中可以任何的次序混用8 点或16点模块

例子:带16点I/O模块的1槽寻址及其I/O映象表

第3章 可编程序控制器的编程
(3)1槽寻址中使用32点I/O模块 分析: 1槽寻址中使用32点I/O模块时,必须 从偶数槽I/O槽开始,在I/O槽的2个相邻槽(奇 /偶对)中成对地安装一块输入模块和一块输 出模块。如果不能按此规定把模块配对,那么 一对槽中的一个槽必须空置。

第3章 可编程序控制器的编程
例子:如果0号槽插有一块32点输入模块,那么,
1号I/O槽必须插8点、16点或32点输出模块(或 一块只使用背板电源、不占I/O点的模块),否 则,这个槽必须空置。带有两块32点I/O模块的 1槽寻址 情况:

第3章 可编程序控制器的编程
3.1/2槽寻址 (1)概念 1/2槽寻址就是半个I/O模块槽组成一个I/O 组,也就是说,在框架中的每一个物理槽对应 于两个输入和两个输出映象表字。 (2)I/O模块的放置 因为在处理器映象表中,对每个I/O槽有32 个输入位和32个输出位,所以可以在I/O框架中 以任意次序混用8点、16点和32点I/O模块。

(3)例子a:带32点I/O模块的1/2槽寻址及其对 应的I/O映象表

(3)例子b:1/2槽寻址的概念

第3章 可编程序控制器的编程
三、 机架号的分配机架号的分配:
?

在一个框架中的机架数取决于框架的大小和寻址方式 框 架 尺 寸 2槽寻址 1槽寻址 1/2槽寻址 4槽 1/4机架 1/2机架 1机架 8槽 1/2机架 1机架 2机架 12槽 3/4机架 3/2机架 3机架 16槽 1机架 2机架 4机架

第3章 可编程序控制器的编程
?

机架分配 的一般原则:

(1)处理器驻留框架中分配一个(128个输入和 128个输出)至4个机架。; (2)不能将处理器驻留本地I/O机架分解成两个 或多个框架; (3)不能将不使用的处理器驻留本地I/O组分配 给远程I/O机架; (4)不能以同一机架号来寻址扩展本地I/O和远 程I/O框架。

第3章 可编程序控制器的编程
?

机架分配的例子:
一个8槽的扩展本地I/O框架设置为I/O机架2 的I/O组0~3,则一个8槽的远程I/O框架就不能 设置为I/O机架2的I/O组4~7 。

?

处理器驻留框架的机架首址:
缺省为0,对于PLC-5/30、-5/40、-5/60处理 器可以通过改变处理器控制字S:26(S是状态 文件,26为字号)中的第2位,将缺省值改为1。

第3章 可编程序控制器的编程
1.远程I/O机架 ? 寻址远程I/O机架的一般规则 : (1)一个远程I/O机架可以是一个框架的一部分, 也可以是一个满框架,甚至是多个框架。 (2)将远程I/O机架数限制在所选用PLC-5处理 器能够支持的最大机架数之内(最大机架数= 处理器的I/O能力(I/O点数)/每个机架的I/O 点数(128点))。

第3章 可编程序控制器的编程
?

寻址远程I/O机架的一般规则 (续)

(3)PLC-5处理器和1771-ASB适配器模块会自 动将下一个更高编号的机架分配给框架中剩余 的I/O组。例如,如果在处理器驻留框架中选择 1/2槽寻址,并且使用的是16槽框架,那么处理 器会在这个框架中寻址机架0,1,2,3。

第3章 可编程序控制器的编程
?

远程I/O机架分配的例子:

第3章 可编程序控制器的编程
2.扩展本地I/O机架 PLC-5/40L或PLC-5/60L处理器的通道2是一 个扩展本地I/O扫描器。一个PLC-5/40L或PLC5/60L处理器既可用于扫描扩展本地I/O机架, 又可用于扫描远程I/O机架(通道1A或1B设定 为远程I/O扫描方式)时。 ? 分配扩展本地I/O链的机架号时,应遵守如下规 则:

第3章 可编程序控制器的编程
?

分配扩展本地I/O链机架号的规则:

(1)远程I/O和扩展本地I/O机架两者的总数必 须不能超过处理器所允许的最大机架数(PLC5/40L为16个机架,而PLC-5/60L为24个机架)。 (2)不要在扩展本地I/O和远程I/O之间分解机 架号。例如,如果将机架的部分用作远程I/O, 就不能将机架的剩余部分用作扩展本地I/O。

例子:具有16个机架寻址能力的PLC5/40L处理器

第3章 可编程序控制器的编程
分配扩展本地I/O链机架号的规则(续): (3)可以将扩展本地I/O机架分配给扩展本地I/O 母线上的多个框架,如图3.2.12示。 (4)在PLC-5系统中,可以对每个扩展本地I/O 框架选择不同的硬件寻址方法。
?

例子:分配给多个I/O框架的扩展本地I/O 机架号

第3章 可编程序控制器的编程
3.3 可编程序控制器的内存组织
?

概述 可编程序控制器处理器除了微处理器以外,还 包括存贮器,其中一部分是用户存贮器。用户 存贮器中的程序存贮器用来存放用户程序文件, 而数据存贮器文件用来存放数据文件。

第3章 可编程序控制器的编程
一、程序文件 1.程序文件:程序文件用以存贮用户程序,PLC-5可
以有1000个程序文件,用编号0~999(十进制数)表示。 其中0号文件是用来存放系统信息的,属系统文件,1 号文件一般预以保留(如普通PLC-5是作为顺序功能图 文件预以保留的),而2~999号文件则可以由用户定义, 它们既可以是梯形图程序,也可以是SFC,甚至结构 文本(有些处理器支持这种编程方式)。

第3章 可编程序控制器的编程
2.主控程序(MCP) (1)描述:用户程序可以具有多于16个主程序文件,
每一个程序文件完成一特定的功能,这些主程序中的 每一个叫做主控程序(MCP)。定义这十六个主控程 序时可以任意混用SFC和梯形图程序,并且所有MCP 使用的是一个数据表(也就是说,每个MCP没有一个 独立的数据表)。16个主控文件可分别用编号A,B, C,D……P来表示,这同时也是各MCP运行的次序, 每个编号所代表的主控文件的文件号可以在编程软件 的处理器组态屏幕上指定。

第3章 可编程序控制器的编程
2.主控程序(续) (2)MCP的执行方式:可以有两种 -第一种MCP的执行方式:是完成了一个 MPC之后,先进行I/O映象表的刷新(I/O扫描) 和内务处理,然后进行下一个MCP的执行,最 进行I/O扫描和内务处理,依次类推,直至完成 最后的MCP及I/O扫描和内务处理,所有的 MCP又以同样的顺序重复执行。

第一种运行方式的示意图

第3章 可编程序控制器的编程
-第二种MCP的执行方式:另外一种执行方式是 可以通过软件有选择地来禁止MCP之间的I/O 扫描,禁止一次I/O扫描可以节省2~3ms的程序 扫描时间,从而达到减少整个用户程序的扫描 时间

第二种运行方式的示意图

第3章 可编程序控制器的编程
(3)主控程序(MCP)的禁止
如果想保持某一功能的状态,而不管转换 条件如何,就可以禁止一个MCP(例如,故障 时)。禁止一个MCP有助于缩短扫描时间。状 态文件中的S:79的每一位(共16位)就分别 代表了16个主控程序的禁止位,若对这些位置 位(置1),其相应的MCP就被禁止,直至禁 止位被复位(置0)。例如,欲对A主控程序禁 止,只要对S:79的第0位置位即可。

第3章 可编程序控制器的编程
3.程序中使用的优先等级:
.故障子程序 .处理器输入中断子程序(PII) .可选定时中断(STI) .MCP 因此在执行一个MCP期间出现一个中断,处理器将停 止MCP的执行,先执行中断程序,然后再返回到MCP 的停止点。除非使用禁止用户中断(UID)和启动用 户中断(UIE)指令来保护MCP的重要部分免遭中断。

第3章 可编程序控制器的编程
二、数据文件及其寻址
1.数据文件概述 (1)数据文件的作用 处理器所检查和修改的所有数据均存贮在内存中的 数据文件中,它们可以存贮:

(1)从输入模块接收的数据;(2)发送到输出模块 的数据,这些数据表示了程序运行的最终结果;(3) 程序运算的中间结果;(4)预先装入的数据;(5) 与指令有关的状态信息;(6)与处理器操作有关的信 息等。

第3章 可编程序控制器的编程
(2)数据文件在PLC-5中的定义: 在PLC-5中可以定义1000个数据文件(用文件 号0~999表示),为编址的方便,每个文件均 由一个字母(标识符)和一个文件号(0~999) 来标识。一般,0~8号文件是系统为用户建立 的缺省文件。如果需增加数据文件,用户可以 通过设定适当的识别符及从9开始的文件号 (9~999)来建立各种文件.

第3章 可编程序控制器的编程
(3) 缺省的数据文件类型 文件类型 标识符 输出 O 输入 I 状态 S 位 B 计时器 T 计数器 C 控制 R 整数 N 浮点 F 文件号 0 1 2 3 4 5 6 7 8

第3章 可编程序控制器的编程
(4) 可定义的数据文件类型 文 件 类 型 (标识符) 编 号 位 (二进制) B 9~999 计时器 T 9~999 计数器 C 9~999 整数 浮点 N F 9~999 9~999 文件允许的最大尺寸 1000字 1000个3字元素 1000个3字元素 1000字 1000个单字元素 (每字32位)

第3章 可编程序控制器的编程
(4) 可定义的数据文件类型(续) 文 件 类 型 (标识符) 编 号 文件允许的最大尺寸 ASCⅡ A 9~999 1000字 BCD D 9~999 1000字 块传输 BT 9~999 1000个6字元素 控制 R 9~999 1000个3字元素 信息 MG 9~999 585个56 PID PD 9~999 399个82字元素 其它还有SFC状态 (SC)文件和ASCII串( ST)文件等

第3章 可编程序控制器的编程
(5) 数据文件的一般寻址格式: -数据文件的地址:由文件名称、文件号、元素号、字 号及位构成,相互之间用一定的定界符分开。如一个 计时器文件是一个三字元素,可表示为: T f :e .w / b 位号(0~15)
?

数据文件从元素构成的字数可以分为:
-单字元素:一个元素一个字 -三字元素:一个元素三个字 -多字元素:一个元素多个字

第3章 可编程序控制器的编程
2.数据文件类型及直接寻址 (1)输入/输出文件I/O 输入/输出文件,表征了物理框架中的I/O模块在I/O映 象表中的存贮位置,寻址输入/输出文件,就是用逻 辑地址来表示物理地址。它是一个单字元素。如 I:0 1 7 / 0 1 ---该输入映象表地址的含义是:1 号机架、7号I/O组,1号端子上的输入. O:02 6 / 0 0 ----- 该输出映象表地址的含义是:2 号机架,6号I/O组,0号端子上的输出。

第3章 可编程序控制器的编程
?

注意:(1)输入/输出文件I/O的机架 号、I/O组号,端子号全部用 八进制表示!! (2)其他数据文件的元素号、字 号及位 号用十进制表示!!

第3章 可编程序控制器的编程
(2) 状态文件S 系统状态文件向用户提供与用户程序中所使用的各种 指令有关的信息。状态文件指示次要错误和主要错误 的诊断信息、处理器方式、扫描时间、波特率、系统 节点地址和各种其它数据。其寻址格式为: S:e / b (a)S:0 算术标志字,在算术逻辑或传送等指令执 行后改变。其中位0(S:0/0)表示进位;位1(S:0/1) 是溢出位;位2(S:0/2)是零位;位3(S:0/3)是符 号位;S:0/4~ S:0/5被保留不用。

第3章 可编程序控制器的编程
(2) 状态文件S(续) (b) S:1 处理器的状态和标志字,它表征处理器的运 行方式(S:1/0~ S:1/4五位)、强制标志(S:1/5表 示强制有效位,S:1/6表示强制建立位)等。 (c) S:2 表示开关设置信息。其各位的含义如下: 00~05这6位表示DH+站号:最多可表示64个(00~63) 用二进制数表示。 06位表示处理器的工作方式:该位为1,表示是扫描器 方式;若该位为0,表示是适配器方式。 07~09位保留。

– – –

第3章 可编程序控制器的编程


– – –

(2) 状态文件S(续) 11~12位:这两位表示硬件的寻址方式。具体含义为: 位12 位11 寻址方式 0 0 无效 1 0 1/2槽寻址 0 1 1槽寻址 1 1 2槽寻址 13位:该位置位时,表示从E2PROM装载。 14位:该位置位时,表示没有配置RAM备份。 15位:该位置位时,表示存贮器没有保护。

第3章 可编程序控制器的编程
(2) 状态文件S(续) – (d)S:3~S:6 表示有效的站点,若该站点在DH+ 网上,则其对应的位被置1,否则置0。 每一位与站号之间的关系如下: 字 位 表示的DH+站号 3 0~15 00~17 4 0~15 20~37 5 0~15 40~57 6 0~15 60~77 含义:S:3/0,代表站号是00的站点;S:3/1代表站号为 01的站点,以此类推。位用十进制表示,而站号用八进 制表示。
?

第3章 可编程序控制器的编程
? –

(2) 状态文件S(续) (e) S:8~S:9 表示程序扫描时间。S:8表示最后一次 程序扫描时间,S:9表示最大的程序扫描时间。



(f) S:12~S:14 表示故障状态。S:12表示故障代码, S:13表示发生故障的程序文件号,S:14表示发生故
障的阶梯号。



(g) S:18~S:23 表示系统时间,S:18~S:23依次代
表时钟、年、月、日、时、分、秒。

第3章 可编程序控制器的编程
?

(2) 状态文件S(续) (h) S:27、S:33、S:35 表示机架控制位,通过复 位或禁止命令可以控制I/O 。其中: S:27的低8位表示I/O机架0~7号机架的禁止位,高8位 表示I/O机架0~7号机架的复位位; S:33的低8位表示I/O机架10~17号机架的禁止位,高8 位表示I/O机架10~17号机架的复位位; S:35的低8位表示I/O机架20~27号机架的禁止位,高8 位表示I/O机架20~27号机架的复位位。

第3章 可编程序控制器的编程
? –



(2) 状态文件S(续) 禁止机架: 是指如果用户打开禁止位(置1),则处理器停止 对给定的I/O机架所在的框架的I/O扫描,直到关闭禁止 位(置0)。在I/O框架不被扫描的时间内,它的输出 保持最后的状态。 复位机架: 是指如果用户打开复位位(置1),则处理器每次 对相应机架的I/O框架的I/O扫描结果是断开那些框架的 输出(不管每个框架内最后状态开关的设定)。这些 输出保持在断开状态直到关闭复位位(置0)。

第3章 可编程序控制器的编程
?

(2) 状态文件S(续) (i) S:79 表示了MCP的禁止位,从S:79/00~S:79/15 依次表示A、B、C……P等16个主控程序的禁止位。当 禁止位置1时就表示该位对应的MCP被禁止。 (j) S:80~S:127 共48个字,每三个字表示一个主控 程序MCP的文件号、扫描时间及最大扫描时间。例如S: 80表示第一个MCP A的文件号,S:81表示该MCP的 扫描时间,S:82表示该MCP的最大扫描时间;后面以 此类推。

第3章 可编程序控制器的编程
(3)位文件B
位文件的作用: 主要用在继电器逻辑指令、移位寄存器指 令及顺序器指令,其中的每一位都可作为一个 中间继电器来使用。在系统中,数据文件的3 号文件缺省为位文件,用B3表示。

第3章 可编程序控制器的编程
位文件的编址:
是一个单字元素,可以通过两种方法来对位文件中 的位进行编址。 第一种是通过设定元素号(0~999共1000个字)和 在元素内的位号(00~15共16位)进行编址,如:B f: e / b; 第二种是通过整个位文件依次从00开始对位进行编 号,如: B f/ b 例子: B3:1/00与B3/16指的是同一位,都是指1号字中的 00位。

第3章 可编程序控制器的编程
(4)计时器文件T




计时器文件:用在计时器指令中,系统将4号文件缺省 为计时器文件,用T4表示。计时器是3字元素:字0是 控制字,字1存贮预置值,字2存贮累积值。 计时器元素: 字0:15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 EN TT DN 内部使用,不能编址 字1: 预置值PRE 字2: 累积值ACC

第3章 可编程序控制器的编程
(4)计时器文件T(续)


计时器的编址: T f: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:15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 CU CD DN OU UN 仅内部使用,不能编址 字1: 预置值PRE 字2: 累积值ACC

– 计数器元素

第3章 可编程序控制器的编程
?


(5)计数器文件C(续)
计数器的编址:C f: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:15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 EN DN ER UL IN FD 仅内部使用,不能编址 字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(续)
控制文件的编址: R f:e.s / b 与计时器及计数器文件一样,控制文件可寻址到元素、 字,直至位,同样允许用助记符寻址。

第3章 可编程序控制器的编程
(7)整数文件N




描述:整数文件用于放置一个16位的字,系统将7号数 据文件缺省为整数文件,用N7表示。整数文件可在元 素及位上进行编址、寻址,如: N f:e/ b 整数文件编址的例子:N7:2 N7:2/08 N10:36

第3章 可编程序控制器的编程
(8)浮点文件F


浮点文件的描述:浮点文件用于放置一个32位的字。 系统将8号数据文件缺省为浮点文件,用F8表示。浮点

文件一般就寻址到元素。浮点文件的编址如下: F f: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:[C5:7.ACC] 文件号存于整数地址N7:0中 元素号为计数器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:007/10。

第3章 可编程序控制器的编程


当采用符号寻址时,遵循下列原则: ? 名称用一字母字符开头(不是数字); ? 最多可包含十个下列字符:A-Z(大小写)、0 -9、()、下画线和@; ? 也可用符号地址替代数据类型的地址:元素、位; ? 记录所定义的符号及相应的逻辑地址,这个可以 由软件完成。软件会生成一个能列出现行定义的 所有符号的报表功能。

第3章 可编程序控制器的编程
符号寻址的例子:
地址类型 输入映象 逻辑地址 I : 015/00 I : 015/03 I : 015/06 O : 013/00 O : 013/02 O : 013/04 F10 : 0 F10 : 1 符号地址 LS1 AUTO1 SW1 M1 CL1 L1 Calc-1 Calc-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.检查闭合XIC XIC的描述:XIC属输入指令,若相应位地址中的 数据是“1‖(ON),则表示该指令的逻辑为真 (true),否则该指令的逻辑为假(false)。它类似于 常开开关,如果位地址使用了输入映象表的位,则其 状态必须与相应地址实际输入设备的状态相一致。 XIC的指令形式 :

第3章 可编程序控制器的编程
2.检查断开XIO XIO的描述:属输入指令,若相应位地址中的数据 是“1‖(ON),则表示该指令的逻辑为“假” (false),否则该指令的逻辑为真(true),它类似于 一常闭开关。 XIO的形式:

第3章 可编程序控制器的编程
3.输出激励OTE OTE的描述:属输出指令,用于控制存贮器中的位。 若该位对应输出模块上的一个端子,则当该指令使能时, 连接到该端子上的设备被接通,反之,设备不动作。若 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.输出锁存OTL OTL的描述:属输出指令,并且是保持型指令,也就 是说,当阶梯条件是真时,OTL指令使处理器置位某 一地址位,然后该位保持置位,此后即使阶使阶梯条 件变假,该位依然保持置位;若要复位,则需要在另 一阶梯中使用解锁指令OTU对同一地址的位解锁。 OTL的形式:

在该指令中,若阶梯条件为真,则使处理器把输 出映象表中的O:013/01置位,直至用OTU对其解锁

第3章 可编程序控制器的编程
5.输出解锁(OTU) OUT描述:属保持型输出指令,常用以复位由OTL指 令锁存的位,OTL、OTU应使用相同的地址。当阶梯 条件为真时,对相应的位复位;以后即使阶梯条件变 假,该位依然保持复位(置0),除非采用另一指令对 该位重新置位。 OTU的形式:

其含义与OTL对应。

第3章 可编程序控制器的编程
6.立即输入(IIN) IIN描述:属输出指令。当其使能时(即阶梯条件为 真时),在下次正常的输入映象刷新之前更新输入映 象表中的一个字,此时程序扫描将被中断,直至对输 入状态刷新完毕。对于IIN指令,用户只需输入I/O机架 号和I/O组号,不必输入文件号,否则会出错。 IIN的形式为:

在该指令中,若阶梯条件为真,处理器立即更新对 应于机架号1组号1的输入映象字

第3章 可编程序控制器的编程
7.立即输出(IOT) IOT描述:是一条输出指令。当其使能时,在下一次 正常的输出映象刷新之前更新输出映象表的一个字, 此时程序扫描被中断,直至输出状态刷新完毕。对于 IOT指令,用户也只需输入I/O机架号和I/O组号,不必 输入文件号。 001 IOT的形式: (IOT) 在该指令中,若阶梯条件为真,处理器立即更新对应于 机架号0组号1的输出映象字。

第3章 可编程序控制器的编程
8。继电器指令编程举例 按上按钮I:000/00,灯O:001/00、O:001/01亮; 断开按钮I:000/00,灯O:001/00熄灭、O:001/01仍亮; 按上按钮I:000/01,灯O:001/01也熄灭

第3章 可编程序控制器的编程
二。计时器/计数器指令 计时器和计数器指令用于控制基于时间和事件计数 的操作,属于输出指令,包括: 计时器指令: 通延时计时器(TON); 断延时计时器(TOF); 保持型计时器(RTO); 计数器指令: 加计数(CTU);减计数(CTD); 复位指令: 计时器/计数器复位(RES)

第3章 可编程序控制器的编程
1.通延时计时器TON TON的描述: 利用TON指令在预置时间内完成延时去控制输出 的接通或断开。当阶梯为真时,TON指令开始累加计 时,直至下列条件之一发生为止: (1)累加值=预置值 (2)阶梯变假 (3)复位计时器 (4)相关的SFC步变无效

第3章 可编程序控制器的编程
TON的格式:

可见每一个TON必须使用一个计时器元素(如T4:0), 并提供下列参数。

第3章 可编程序控制器的编程
TON的参数: (1)时基(Timer Base):分1S和0.01S两种,它决定了计时 器的精度。 (2)预置值(Present):用以设置预定时间,以一个16位 的整数值放置,范围0~32767。实际的延时(预定)时 间=预置值×时基。 (3)累加值(Accum):是一个动态值,告诉用户目前 已经延时的数值,计时器复位时,其值为0。

第3章 可编程序控制器的编程
TON的操作及状态:
阶梯条件 EN (有效 位) 0 TT (计时 位) 0 DN (完成位 ) 0 说 明



不计时



1

1

0

正在计时,累积值小于预置 值

真 用复位指令 RES

1

0

1

累积值大于或等于预置值, 计时完成
ACC=0, PRE不变,计时器复 位

0

0

0

第3章 可编程序控制器的编程
2.断延时计时器TOF TOF的描述: TOF指令在阶梯条件变假时开始累加计时(以0.01S 或1S的间隔)直至下列条件之一产生: (1)累加值=预置值 (2)阶梯条件变为真 (3)相关的SFC变为无效 一旦阶梯条件变真,不论计时器是否到时,处理器复位 累加值。

第3章 可编程序控制器的编程
TOF的格式:

各参数的含义与TON相同。

第3章 可编程序控制器的编程
TOF的操作及状态:
阶梯条 件 EN (有效 值) TT(计时 位)

DN(完成位)





真 假 假

1 0 0

0 1 0

1 1 0

计 时 器 不 计 时 ,ACC=0, 计 时器复位 累积值小于预置值,正在计 时 累积值=预置值,计时完成

第3章 可编程序控制器的编程
3.保持型计时器RTO RTO指令的描述: RTO指令在阶梯条件为真时,开始按一定的时间间 隔(0.01S或1S)计时,直到累加值达到预置值为止。 下列条件发生时,RTO指令保持其累加值: (1)阶梯变假 (2)用户改变到编程方式 (3)处理器出错或断电 (4)相关的SFC步无效

第3章 可编程序控制器的编程
RTO指令的特点: 当处理器重新运行或阶梯变真时,计时器从保持的 值开始继续计时。由于保持累加值,所以在阶梯为真 的时间内,保持型计时器测量了累加时间。如果RTO阶 梯条件变假后,要复位其累加值和状态位,用户需在 另一条阶梯中编写具有相同地址的复位指令RES。

第3章 可编程序控制器的编程
RTO指令的格式:

各参数的含义与TON相同,除了累积值能保持外, 其它的操作与状态也与TON相同。

第3章 可编程序控制器的编程
4.加计数CTU CTU指令的描述: 在-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.减计数CTD CTD的描述: (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.计时器和计数器的复位指令RES RES的描述: RES指令用以复位计时器(除TOF)和计数器。当阶 梯为真时,执行RES指令。复位的内容在前面的指令 中已有叙述。

第3章 可编程序控制器的编程
RES的格式及例子:

第3章 可编程序控制器的编程
7。计时器和计数器指令的编程思考题 前10秒指示灯O:001/00亮,O:001/01熄灭; 后10秒指示灯O:001/01亮,O:000/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 (Source A和Source B)可以是数值,也可以是包含数 值的地址。如两个值相等,该指令的逻辑为真,否则 为假。

第3章 可编程序控制器的编程
等于(EQU) 的格式及例子:

该例子表明,若N7:5的值等于N7:10的值,置位O:013/01。

第3章 可编程序控制器的编程
3.大于或等于(GEQ) 大于或等于(GEQ)的描述: GRT指令比较一个值 (Source A)是否大于另一值(Source B)。Source A 和B既可以是数值,也可是包含数值的地址。 大于或等于(GEQ)的例子:

该例子表明,若N7:5的值大于N7:10的值,置位O:013/01。

第3章 可编程序控制器的编程
4.大于(GRT) 大于(GRT)的描述:GRT指令比较一个值(Source A)是否大于另一值(Source B)。Source A和B既可 以是数值,也可是包含数值的地址。 大于(GRT)的例子及格式:

该例子表明,若N7:5的值大于N7:10的值,置位O:013/01。

第3章 可编程序控制器的编程
5.小于或等于(LEQ) 小于或等于(LEQ)的描述: LEQ指令比较一个值 (Source A)是否小于或等于另一值(Source B)。 Source A和B既可以是数值,也可以是包含数值的地址。 小于或等于(LEQ)的格式及例子:

该例子表明,若N7:5的值小于或等于N7:10的值,置位O:013/01。

第3章 可编程序控制器的编程
6.小于(LES) 小于(LES)的描述: LES指令比较一个值(Source A)是否小于另一个值(Source B)。Source A和B既 可以是数值,也可以是包含数值的地址。 小于(LES)的格式及例子:

该例子表明,若N7:5的值小于N7:10的值,置位O:013/01。

第3章 可编程序控制器的编程
7.极限测试(LIM) 极限测试(LIM)的描述: LIM用以测试一个值是否在某一范围之内。若比 较测试值在一定的范围之内时,该指令的逻辑为真, 否则为假。用户可以使用LIM指令去比较一个模拟量输 入值是否在指定的限制内。

第3章 可编程序控制器的编程
极限测试(LIM)的的格式:

该指令中,Low Lim(低限值)、Test(测试值)、High LIM(高限值)既可以是数值,也可以是包含数值的地址,而且 允许高限低于低限。 在例中,假设低限值小于高限值,且三个参数均以地址形 式表示,其含义是,当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: 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 N7:6: 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 N7:10:0 1 0 1 0 1 0 1 0 1 0 1 ? ? ? ? ?:表示数据随意 在例子中,因为源(N7:5)与比较(N7:10)的低四位不被 比较,所以此指令为真,置位O:013/01。

第3章 可编程序控制器的编程
9.不等于(NEQ) 不等于(NEQ) 的描述:NEQ指令比较两个值是否 相等。Source A和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)指令将一个数 值(Source A)和另一个数值(Source B)相加,结果 放在目的地址(Dest)内。Source A和B既可以是数值, 也可以是含有数值的地址。 加法(ADD)的格式:

第3章 可编程序控制器的编程
10.减法(SUB) 减法(SUB)的描述:减法(SUB)指令将一个数值 (Source A)减去另一个数值(Source B),结果放在 目的地址(Dest)内。Source A和B既可以是数值也可以 是存有数值的地址。 减法(SUB)格式:

第3章 可编程序控制器的编程
11.乘法(MUL) 乘法(MUL)的描述:乘法指令(MUL)将两个数 (Source A和B)相乘,结果放在目的地址(Dest)内。 Source A和B既可以是数值也可是含数值的地址。 乘法(MUL)的格式:

第3章 可编程序控制器的编程
12.除法(DIV) 除法(DIV)的描述:除法(DIV)指令将一个值 (Source A)除以另一个值(Source B),结果放在目的 地址(Dest)内。Source A和B既可以是数值也可以是含 有数值的地址。 除法(DIV)的格式:

第3章 可编程序控制器的编程
13.平方根(SQR) 平方根(SQR)的描述:平方根(SQR)指令计算一 个数值(Source)的平方根,结果放在目的地址(Dest) 内,Source既可以是一个数值也可以是存有数值的地址。 平方根(SQR)格式:

第3章 可编程序控制器的编程
14.指数xy(XPY) 指数xy(XPY)的描述:指数(XPY)指令计算一个 数值(Source A)的指数(幂次为Source B)函数值, 结果存放在目的地址(Dest)中。如果Source A的值为 负,则幂指数(Source B)应当是一个整数值;如果幂 指数不是整数(如是一个浮点数),则置位溢出位并且 在计算中使用底的绝对值。 指数xy(XPY) 格式:

第3章 可编程序控制器的编程
15.自然对数(LN) 自然对数(LN)的描述:自然对数(LN)指令求 Source A中值的自然对数,结果放在目的地址(Dest) 中,如果Source中的值为0,则目的地址中的结果是!INF!,如果Source中的值小于0,则目的地址中的结果 是!NAN!。目的地址中的结果值总是大于或等于87.33655并且小于或等于88.72284。 自然对数(LN)格式:

第3章 可编程序控制器的编程
16.常用对数(LG) 常用对数(LG)的描述:LOG指令计算Source A中 数值的常用对数,结果放在目标地址(Dest)中,如果 Source中的值为0,则目的地址中的结果是!-INF!如果 Source中的值小于0,则目的地址中的结果是!NAN!。目 的地址中的结果值在-37.92978与38.53184之间。 常用对数(LG)格式:

第3章 可编程序控制器的编程
17。取反(NEG) 取反(NEG)的描述:取反(NEG)指令改变一个数 (Source)的符号,结果放在目标地址(Dest)中,如果 源中的值是一个负数,求反的结果为正;如果源中的值 是一个正数,求反的结果为负。 取反(NEG) 的格式:

第3章 可编程序控制器的编程
18.求平均值(AVE) 求平均值(AVE)的描述:求平均值指令(AVE)用 以计算一组数的平均值。 求平均值(AVE) 的格式:

第3章 可编程序控制器的编程
18.求平均值(AVE)(续) 求平均值(AVE)的变量: (1)File(文件):是表示要计算的一组数的数据文件, 用“#”号加该一组数的第一个数的地址表示,如# N7:10,说明要计算的是从N7:10开始的几个数据;该数 据文件可以是整数也可以是浮点数; (2)Dest(目的地址):是存放指令执行结果的地址, 可以是整数也可以是浮点数; (3)Control(控制元素):可用一个控制元素(如 R6:10)来存放该指令的信息(状态、长度、位置)。

第3章 可编程序控制器的编程
18.求平均值(AVE)(续) 求平均值(AVE)的变量: (4)Length(长度):是整个需要计算的数据文件的长 度(用字数表示,可以是0~1000)。 (5)Position(位置):指示指令当前正在操作的字。 AVE指令在阶梯由假变真时,将文件中各个数相加, 再除以数据个数(文件长度),结果放在目标地址 (Dest)中;同时更新算术状态标志(S:0/0~S:0/3)。

第3章 可编程序控制器的编程
18.求平均值(AVE)(续) AVE的例子:

在计算指令中,还有标准偏差指令(STD),用以计 算一组数值的标准偏差;排序文件(SRT)指令,将一组 数排列成递增顺序。

第3章 可编程序控制器的编程
五。 逻辑指令AND,NOT,DR,XOR 逻辑指令用于逻辑操作,包括: 与操作(AND); 或操作(OR) 非操作(NOT); 异或操作(XOR)。 逻辑指令是输出指令,当阶梯条件是真时,执行逻 辑指令。用户输入的参数是程序常数或直接的逻辑地 址,指令执行后,更新算术状态标志。

第3章 可编程序控制器的编程
1。与操作(AND) 与操作(AND)的 格式及例子:

当阶梯条件为真时,处理器对源A(N9:3)和源B(N10:4 )进行位对位的与操作,结果放在目标地址(N12:10) 中。

第3章 可编程序控制器的编程

第3章 可编程序控制器的编程
2。或操作(OR) 或操作(OR)的 格式及例子:

当阶梯条件为真时,处理器对源A(N9:3)和源B (N10:4)的二进制数进行位对位的或操作,结果放在目 标地址(N12:10)中。

第3章 可编程序控制器的编程

第3章 可编程序控制器的编程
3。非操作(NOT) 非操作(NOT)的格式及例子:

当阶梯条件为真时,处理器对源(N9:3)进行每位的 非操作(1变0,0变1),结果放在目标地址(N10:4)中。

第3章 可编程序控制器的编程

第3章 可编程序控制器的编程
4。异或操作(XOR) 异或操作(XOR)的格式及例子:

当阶梯条件为真时,处理器对源A(N9:3)和源B (N10:4)的二进制数进行位对位的异或操作,结果存放 在目标地址(N12:3)中。

第3章 可编程序控制器的编程

第3章 可编程序控制器的编程
六。转换指令 转换指令用于整数与BCD之间的相互转换及度与弧 度之间的相互转换,包括: 整数转换成BCD码(TOD); 从BCD码转换成整数(FRD); 弧度转换成度(DEG);度转换成弧度(RAD)。 转换指令是输出指令,当阶梯条件是真时,执行转换 指令。用户输入的参数可以是程序常数或逻辑地址, 程序执行后,更新算术状态标志,

第3章 可编程序控制器的编程
1。 整数转换成BCD码(TOD) 整数转换成BCD码(TOD)的格式及例子:

当阶梯条件为真时,把源(N7:3)的值由整数转换成 BCD格式,结果放在目标地址(D9:3)中。

第3章 可编程序控制器的编程
2。从BCD码转换成整数(FRD) 从BCD码转换成整数(FRD)的格式及例子:

当阶梯条件为真时,把源(D9:3)的值由BCD码转换 成整数格式,结果存放在目标地址(N7:3)中。

第3章 可编程序控制器的编程
3。弧度转换成度(DEG) 弧度转换成度(DEG)的格式及例子:

当阶梯条件为真时,把源(F8:7)的值由弧度转换成 度,结果存放在目标地址(F8:8)中。

第3章 可编程序控制器的编程
4。度转换成弧度(RAD) 度转换成弧度(RAD)的格式及例子:

当阶梯条件为真时,把源(N7:9)的值由度转换成弧度 ,结果存放在目标地址(F8:10)中。

第3章 可编程序控制器的编程
七。 位处理和传送指令 位处理和传送指令用于位调整和位传送,包括: 位分配(BTD) 字传送(MOV) 屏蔽传送(MVM) 它们都是输出指令。

第3章 可编程序控制器的编程
1。位分配(BTD) 位分配(BTD)的描述: 位分配(BTD)指令用以 字内或字间多达16位数据的移动。当阶梯条件变真时, 执行该指令,其中源数据保持不变,目的地址用指定的 位复盖写入。如果位区域的长度伸到目的地址的字之外, 则处理器不存贮溢出的位。这些溢出的位就丢失掉,它 们也不能加入到下一字中。

第3章 可编程序控制器的编程
位分配(BTD)的格式:

位分配(BTD)的变量: Source:是用来存放二进制或整数的源数据地址。 Source Bit(源位):是源数据中开始传送的位(最低的 位号)。

第3章 可编程序控制器的编程
位分配(BTD)的变量(续): Dest(目的):是用来存放二进制或整数的目的数据的 地址,指令把数据复盖写入到早已存放 在目的地址的数据中。 Dest Bit(目的位):目的地址内处理器开始从源数据中 拷贝的起始位(最低的位号)。 Length(长度):要传送的位的长度。

第3章 可编程序控制器的编程
位分配(BTD)的例子: (1)利用BTD指令实现字内传送

第3章 可编程序控制器的编程
位分配(BTD)的例子: (1)利用BTD指令实现字间传送

第3章 可编程序控制器的编程
2。字传送(MOV) 字传送(MOV)的描述:字传送指令(MOV)把源值 (Source)传送给目的地址(Dest),源可以是常数也可 以是存放数据的地址,该指令当阶梯条件为真时,把源 (N7:0)的值拷贝并传送到目的地址(N7:2)中。这将 复盖原来目的地址中的值,但源值不变。 字传送(MOV)的格式:

第3章 可编程序控制器的编程
3。屏蔽传送(MVM) 屏蔽传送(MVM) 的描述:屏蔽传送(MVM)指 令将源值拷贝到目的地址中并且允许部分数据被屏蔽。 源(Source)可以是常数也可以是存放数据的地址, 目的(Dest)应是地址。源和目的地址的数据类型应该是 相同的,因为该指令不进行类型转换。 屏蔽传送(MVM)的格式:

第3章 可编程序控制器的编程
屏蔽传送(MVM)的变量: 源值(Source):是将要拷贝的数值。可以是常数或存 放数值的地址。 MASK(屏蔽):是屏蔽值,可以是十六进制数或二进 制数,也可以是存放数值的地址,当 其中的一位是“1‖时,允许数据通过, 覆盖目的地址中的数据;屏蔽位是“0‖ 时,不允许数据通过,目的地址内的 相应位不变。 Dest(目的):用以存放操作结果的地址。

第3章 可编程序控制器的编程
MVM传送数据的例子:

第3章 可编程序控制器的编程
八。 文件指令 文件指令的描述:文件指令用于文件数据的运算 和文件数据的比较,包括:文件算术和逻辑指令 (FAL);文件检索和比较指令(FSC)文件拷(COP) 指令;文件填入(FLL)指令。 它们都是输出指令。文件指令用以对文件的操作, 因而是对多个字的操作,文件数据常用文件指示符 “#”号加文件数据的起始字地址表示,如#N7:0, 表示的是一个从N7:0开始的连续多个字的文件数据, 其长度可由另一参数(Length)定义。

第3章 可编程序控制器的编程
1。文件算术和逻辑指令(FAL) 文件算术和逻辑指令(FAL)的描述: 文件算术和逻辑(the File Arithmetic and logical)指令 可以在文件数据上完成拷贝、清零、算术、逻辑和转换 等操作。FAL指令可以完成类似计算(CPT)指令的操作 ,不同之处在于FAL指令可以处理文件数据(多个字), 而CPT指令仅处理单个字。当阶梯条件为真时,FAL指令 完成用户在表达式中写入的源地址和运算符等所定义的 操作,结果放在目的地址中,并把数据类型自动转换成 目的地址指定的数据类型。

第3章 可编程序控制器的编程
文件算术和逻辑指令(FAL)的格式:

第3章 可编程序控制器的编程
文件算术和逻辑指令(FAL)的变量: (1)Control(控制):应输入一个控制元素(如 R6:0),它包括三个字:状态字(STATE)、文件长 度(LEN)(1~1000个字)、位置(.POS)表示处理 器正在操作的字的位置。为了正确使用FAL,梯形图程 序必须检测并控制在控制元素中的状态位,如使能 位.EN(位15)、完成位.DN(位13)、错误位.ER(位 11)。 (2)Length(长度):是文件指令处理的文件数据的 长度(字数),可输入1~1000之间的任意十进制数。 (3)Position(位置):是处理器正在访问的文件数据 中字的位置。用户只需输入0,即从文件的起始字开始。

第3章 可编程序控制器的编程
文件算术和逻辑指令(FAL)的变量(续): (4)Mode(方式):是每次程序扫描指令将操作的字 的数量。通过定义文件操作方式可以告诉处理器如何把 文件操作分配给一次或多次程序扫描。文件操作有下列 几种方式: 所有元素方式:如果想在一次程序扫描中完成文件 指令的操作,应选择所有元素方式,此时MODE(方式) 参数应输入ALL。 数字方式:如想在几次程序扫描中完成文件操作, 应选择数字方式,此时方式参数上应输入每次扫描的 数目(1~1000),该数目应小于或等于文件长度。

第3章 可编程序控制器的编程
递增方式:如果想使文件操作在每次阶递由假变真 时仅处理一个字,应选择递增方式,此时方式参数输 入INC。 注意:所有元素方式及数字方式的整个文件操作只需 在阶梯的一次由假变真的转换后就可完成,而递增方式 必须每一次操作都要求一个由假到真的阶梯转变。因此 在方式参数中输入1(数字方式)和输入INC(递增方式) 含义是不一样的。

第3章 可编程序控制器的编程
文件算术和逻辑指令(FAL)的变量(续): (5)Dest(目的):是处理器存放操作结果的地址。 指令会把数据转换成目的地址中指定的类型。 (6)Expression(表达式):由操作符(运算符)、 地址、程序常数组成,表示要完成的操作。

第3章 可编程序控制器的编程
文件算术和逻辑指令(FAL)的例子: (1)利用FAL指令完成由文件到字拷贝的例子 :该例子 采用递增方式,阶梯条件由假到真,做一次拷贝,共做 五次。

第3章 可编程序控制器的编程
文件算术和逻辑指令(FAL)的例子: (2)利用FAL指令进行文件数据加法 :

第3章 可编程序控制器的编程
(2)利用FAL指令进行文件数据加法 (续):

在例中,当阶梯变真时,处理器把文件#N11:0中的100个值与文 件#N12:0中的100个对应值相加,且采用每次扫描10个字的数字方

式。10次扫描完成运算,结果存放在文件#N13:0中。

FAL指令编程练习

?

数据文件#N7:10的长度为10,将# N7:10中的数据加5,转换成BCD码, 用递增方式传送到数据文件#B3:0。 试编一程序实现之。

第3章 可编程序控制器的编程
2.文件搜索与比较(FSC) 文件搜索与比较(FSC)的描述: 文件搜索和比较(File Search and Compare) (FSC)指令完成搜索和比较操作。FSC完成的功能类 似包括复杂表达式的比较(CMP)指令,不同之处在于 FSC指令完成的是关于文件的逻辑操作,而CMP指令仅 是关于字或元素的操作。另外,FSC指令是一条输出指 令,而CMP指令是一条输入指令。

第3章 可编程序控制器的编程
文件搜索与比较(FSC)的格式:

该指令中的Length、Position、Mode的含义与FAL的相同, Expression(表达式)是完成比较操作的表达式。

第3章 可编程序控制器的编程
文件搜索与比较(FSC)的操作: (1) 该指令中,当阶梯条件为真时,完成表达式 中指定的逻辑操作(比较操作)。 (2)当指令发现指定的比较是真时,便置位发现 位(found bit):.FD(控制元素中状态字的位8)且记 录下发现比较是真的位置.POS(控制元素中的字2); 置位禁止位(Inhibit bit).IN(控制元素中状态字 的位9)以防止进一步的文件搜索。 ( 3 ) 因 此 在 程 序 中 必 须 检 测 发 现 位 .FD 和 位 置 字.POS以便采取恰当的动作。梯形图程序必须复位禁 止位.IN以便指令继续执行下一次的文件搜索与比较。

第3章 可编程序控制器的编程
文件搜索与比较(FSC)的例子: (1)用FSC完成搜索不等的例子 :

第3章 可编程序控制器的编程
例子说明:当阶梯条件为真时,处理器以每次程序 扫描比较10个字的方式(数字方式)对源文件B4和B5 之间进行字不等的比较,每个文件从字0开始。当处理 器发现一个对应的源元素不等(例中的B4:4和B5:4) 时 , 处 理 器 便 停 止 执 行 并 且 置 位 发 现 位 .FD 和 禁 止 位.IN以便用户梯形程序去采取适当的动作。要想继续 搜索比较,必须复位.IN位。

第3章 可编程序控制器的编程
3.文件拷贝(COP)与文件填充(FLL) (1)文件拷贝(COP) COP指令将源文件中的值拷贝到目的文件中去,源 文件保持不变。

第3章 可编程序控制器的编程
(2)文件填充(FLL) FLL指令将源值(可以是常数,也可以是某一地址 中的数值)向文件中填充。

第3章 可编程序控制器的编程
九、移位指令BSL,BSR 移位指令的描述: 移位指令经常用来模拟部件和信息的运动或流 动,包括: 位左移(BSL);位右移(BSR); 先入先出装入(FFL);先入先出卸出(FFU); 后入先出装入(LFL);后入先出卸出(LFU), 它们都是输出指令 。

第3章 可编程序控制器的编程
1.位左移(BSL) 位左移(BSL)的描述:位左移(BSL)指令在阶梯 每次由假变真时,将指定地址所有的位都左移一个位的 位置。 位左移(BSL)的格式:

第3章 可编程序控制器的编程
位左移(BSL)的变量: (1)File(文件):是BSL(BSR)指令要操作的位 队列的地址,它必须是以16位字的边界为起点安排队列, 例如,使用字1、2、3等的位00。可以在小于15,999的任 意号位上终止队列,但不能使用在这个特定字中的其余 位值,因为指令已使之无效。

第3章 可编程序控制器的编程
位左移(BSL)的变量(续): (2)Control(控制):用一个控制元素(如R6:0,是三 字元素)用来贮存状态字(字0),队列的大小(Length: 位数)和位指针(.POS)。在状态字中,位15是使能 位.EN,位13是完成位.DN,位11是出错位.ER,位10是卸 载位.UL,卸载位用于存放BSL或BSR指令执行时位队列 最左或最右边所移出的位的状态。

第3章 可编程序控制器的编程
位左移(BSL)的变量(续): (3)Bit Address:是源位的地址,指令把此位的状态输 入到BSL队列中的第一个位置,或者BSR队列的最后一 个位置。 (4)Length(长度):是位队列的位数。可从1~16000 位,其值放在控制元素中的.LEN字里。

第3章 可编程序控制器的编程
位左移(BSL)的例子:用BSL指令实现位左移

第3章 可编程序控制器的编程
问题:如何实现循环左移 ? 只需将源位地址(Bit Address)设为队 列的最后一位的位地址即可 。

第3章 可编程序控制器的编程
2.位右移(BSR) 位右移(BSR)的描述:位右移指令在阶梯每次由假 变真时,将指定地址所有的位都右移一个位置。它的操 作与BSL类似。

第3章 可编程序控制器的编程
位右移(BSR)的例子:

移位指令编程练习

?

O:001 的 初 始 状 态 为 1111000000000000 (由数据设置完成),试编一程序,令其 前20秒,按每秒一次的速度进行循环左移; 后20秒,按每秒一次的速度循环右移,周 而复始地进行。

第3章 可编程序控制器的编程
十。 程序控制指令
程序控制指令用以改变梯形图程序执行的方向,它 包括: (1)用以关断某段程序中的非保持型输出的主控复位 (MCR)指令; (2)用以跳过某段不总是需要执行的程序的跳转 (JMP)和标号(LBL)指令; (3)用以循环某一段程序的FOR、NXT循环或BRK中 断指令;

第3章 可编程序控制器的编程
程序控制指令(续) (4)用来控制子程序执行的跳转到子程序(JSR)、 子程序(SBR)和返回(RET)指令; (5)用以调试程序用的暂时结束(TND)指令和恒假 (AFI)指令; (6)用以一次启动(初始化)的一次启动(ONS)、 上升沿一次启动(OSR)、下降沿一次启动(OSF)指令。

第3章 可编程序控制器的编程
程序控制指令(续) (7)用以复位顺序功能图的SFR指令; (8)用以结束转换文件的转换结束(EOT)指令; (9)用以允许或禁止用户中断的UIE和UID指令。

第3章 可编程序控制器的编程
1.主控复位(MCR) 主控复位(MCR)的描述:主控复位指令(MCR)是 成对使用的一条输出指令,它可以让处理器根据用户应 用程序允许或禁止某一段用户程序区。 主控复位(MCR)的格式:

MCR指令不存在指令参数

第3章 可编程序控制器的编程
主控复位(MCR)的操作: 编程时用一条带条件的MCR指令启动这一程序区。当 MCR阶梯为假时,不管每一阶梯的条件如何,复位所有 MCR区内的非保持型输出(即不执行该段程序);当MCR 阶梯为真时,按照程序区内梯级各自的输入条件执行, 就象该区域不存在一样。编程时用一条无条件的MCR指令 结束该区域。

第3章 可编程序控制器的编程
主控复位(MCR)编程时的注意点: (1)不能在一个MCR区中嵌套另一个MCR区; (2)不能跳转到MCR区中,如果该区MCR条件为假,跳 转到此区会使从标号(LBL)开始至该区域结束的区域起 作用; (3)另外如果MCR区连接到梯形图的结尾,就不必编 写另一条MCR指令结束此MCR区。

第3章 可编程序控制器的编程
主控复位(MCR)的例子:

第3章 可编程序控制器的编程
2.跳转(JMP)和标号(LBL) 跳转(JMP)和标号(LBL)的描述: 成对使用跳转(JMP)和标号(LBL)指令,可以 跳转到程序的某一部分。JMP是输出指令,LBL是输入指 令,在含有JMP的阶梯为真时跳转到含LBL的阶梯继续执 行,JMP与LBL应使用同一标号。可用三位数(000~255) 表示,说明增强型PLC-5可以最多放256个标号。

第3章 可编程序控制器的编程
跳转(JMP)和标号(LBL)的格式:

跳转可以向前跳也可向后跳。向前跳省略了某段程 序,故可以节省扫描时间,向后跳重复某段程序,直到 满足条件为止。但向后跳的次数不宜过多,以免引起监 视计时器超时从而引起处理器故障。

第3章 可编程序控制器的编程
跳转(JMP)和标号(LBL)的例子:

第3章 可编程序控制器的编程
3.FOR、NXT循环或BRK中断指令 描述:FOR、NXT和BRK指令用于生成一段可以控制 循环次数的程序,它们都是输入指令。 格式:

第3章 可编程序控制器的编程
3.FOR、NXT循环或BRK中断指令(续) 变量: (1)Label Number:是指明FOR指令位置的唯一标号, 增强型PLC-5支持000~255; (2)Index:是指令存贮变址值(指令计算)的逻辑地址; (3)Initial Value(起始值):是代表循环起始值的一个 整数值或整数地址。 (4)Terminal Value(终值):是代表循环结束值的一个 整数值或整数地址。 (5)Step Size(步长):它指明变址值增加的数量,可 以在程序中改变此步长。

第3章 可编程序控制器的编程
3.FOR、NXT循环或BRK中断指令(续) 操作:当启动FOR指令时,处理器使变址值等于起始 值,随后每经一次扫描变址值(Index)就变成起始值与 累加步长(扫描次数×步长)相加之和。只要变址值小 于或等于终值,则当FOR指令的阶梯为真时,程序就扫描 FOR和NXT指令之间的阶梯,直到变址值大于终值或者由 BRK指令中断此操作,才跳到NXT指令之后的梯阶上继续 执行。

第3章 可编程序控制器的编程
3.FOR、NXT循环或BRK中断指令(续) 编程:(1)BRK指令可以中断FOR指令的操作,放在 FOR指令和NXT指令之间的任何地方,无论何时其所在阶 梯条件为真,它都使处理器返回到下一个更高的循(如 果有嵌套循环的话)中,或者跳到主程序中相应NXT指令 之后的阶梯。 (2)NXT指令必须编程在一个无条件的阶梯中 ,此阶梯是反复执行的FOR-NXT循环中的最后一个阶梯 。NXT指令使处理器返回到相应的FOR指令上(由NXT指 令中的标号指定)。 注意:不要在一个程序扫描中使用循环次数过多,否则, 会引起监视计时器超时,进而造成处理器故障。

第3章 可编程序控制器的编程
4.跳转到主程序(JSR),子程序(SBR),返回 (RET) 描述:JSR、SBR和RET指令使得处理器跳到指 定的子程序文件(由文件号指定)。如果需要,可定义 传送到子程序文件或子程序文件接收的参数。可选的SBR 指令是存贮输入参数的标题指令,只有当需要传送参数 的时候才须用SBR指令。RET指令结束子程序,如果需要, 可存贮要返回到主程序中JSR指令的参数。

第3章 可编程序控制器的编程
调用子程序的格式



第3章 可编程序控制器的编程
调用子程序的参数: 其中JSR、RET是输出指令,而 SBR是输入指令。参数当中,Program file number(程 序文件号)是含有子程序的程序文件号;Input Par (JSR)(指令JSR中的输入变量)是要传送到子程序的 程序常数或参数地址;Input Par(SBR)(指令SBR中的 输入变量)是子程序存贮接收数据的地址;Return Par (JSR)(指令JSR中的返回变量)是存贮来自子程序的 数据的地址;Return Par(RET)(指令RET中的返回变 量)是要返回到主程序中JSR指令的程序常数或参数地址。

第3章 可编程序控制器的编程
输入参数注意: (1)用户的输入及返回参数之和不能多于8个; (2)传送到子程序的JSR输入参数的个数应大于或等于 在SBR中定义的输入参数的地址个数,否则会引起运行时 间错误。 (3)RET的返回参数的个数应大于或等于JSR指令中能 接收的返回参数的个数,否则会引起运行时间错误。

第3章 可编程序控制器的编程
子程序调用

:PLC-5的程序文件中允许嵌套8个子程序

第3章 可编程序控制器的编程
编程注意: 在编程时,若需传送参数,SBR指令必须是子程序 第一个阶梯的第一条指令,而且此阶梯必须含有一个输 出指令。RET指令结束子程序的执行。RET指令使处理器 返回到相应JSR之后的指令上,它还可以返回数据到调用 此程序的主程序。PLC-5允许在子程序的中间使用一带条 件的返回(RET)指令(有参数),则此阶梯为真时,处 理器仅执行子程序的一部分,此时必须为子程序的结束 编一条无条件的RET指令,以确保前面的RET指令为假时 能够有效地返回主程序。

第3章 可编程序控制器的编程
调用子程序的例子 :

第3章 可编程序控制器的编程
5.暂时结束(TND)指令和恒假(AFI)指令 暂时结束(TND)指令使处理器停止扫描当前程 序的剩余部分,是输出指令。 恒假指令(AFI)指令禁止其所在的阶梯(该阶梯 总为假),是输入指令。 这两条指令常用来调试程序

第3章 可编程序控制器的编程
暂时结束(TND)指令的格式:

当阶梯条件为真时,执行TND指令,处理器复位监视计时 器为零,并更新I/O,然后在主程序的第一条指令处开始运行 用户程序.在调试或查找程序故障时,可插入TND指令,它只 允许程序运行到它所在的程序为止 。

第3章 可编程序控制器的编程
恒假指令(AFI)指令的格式:

AFI是一条输入指令,当它编在阶梯的条件侧时,使此 阶梯为假,在调试程序时,可用AFI指令暂时禁止某个阶梯。

第3章 可编程序控制器的编程
6.一次启动(ONS)、上升沿一次启动(OSR)和下降 沿一次启动(OSF) (1)一次启动(ONS) 描述:一次启动(ONS)指令是输入指令,当程序 中ONS指令所在阶梯前边的条件由假变真时,它使阶 梯为真,但仅保持一个扫描周期。使用ONS指令可启 动由按钮触发的事件,如从拔码开关上取值。

第3章 可编程序控制器的编程
一次启动的格式和例子



输入条件从假变真时,ONS指令限制此梯级,以便 输出为1且保持一个扫描周期,在以后连续的扫描中输出 为零,直到输入由假到真再次跳变。

第3章 可编程序控制器的编程
(2)上升沿一次启动(OSR) 描述:OSR指令为一输出指令,它使某事件只出一 次。 格式:

第3章 可编程序控制器的编程
上升沿一次启动(OSR)的变量: (1)Storage Bit(存储位):用以放置存贮位状态 的地址,如B3/17; (2)Output Bit(输出位):用以放置输出位状态地 址的位置,如5;Output Word(输出字)用以放置输出 位状态的字地址,如N7:0 上升沿一次启动(OSR)的操作:当含有OSR指令的 阶梯由假变真时(上升沿),执行OSR指令,置位输出 位.OB,且保持一个扫描周期;而存贮位.SB跟随阶梯状 态的变化而变化。

第3章 可编程序控制器的编程
(3)下降沿一次启动(OSF) 描述:OSF指令为一输出指令,它使某事件只出现一 次。

格式:

第3章 可编程序控制器的编程
下降沿一次启动(OSF)的操作: OSF的变量含义与OSR一致,只是在含有OSF的阶梯由 真变假(即下降沿)时,才执行OSF命令,同时置位输出 位.OB并保持一个扫描周期;存贮位.SB跟限阶梯状态的 变化而变化。

第3章 可编程序控制器的编程
7.顺序功能图复位(SFR)与转换结束(EOT) (1) SFR指令: 描述: SFR指令用以复位顺序功能图中的逻辑, 属输出指令。当SFR所在的阶梯为真时,处理器对所选文 件(SFC程序)所有执行的步和动作完成一次扫描后,在 下一个程序扫描中复位SFC逻辑。只要SFR指令为真, SFC就不被扫描。一旦SFR变假,则重新执行对应的SFC。 利用SFR指令常用来处理复位机器等情况。

第3章 可编程序控制器的编程
SFR指令的格式:

SFR指令的变量: (1)Program file Number(程序文件)是一个有效的 SFC程序文件号; (2)Restart at Step(重新启动)是下一次启动SFC时 的起始步。它可以是一个有效的步参考数(0~3276), 输入零则以起始步重新起动,也可以只存有步参考数的 整数地址或是存有步参考数整数地址的地址符号(间接 寻址)。

第3章 可编程序控制器的编程
(2)转换结束(EOT) EOT指令:是一个SFC转换条件文件中的最后一个阶梯, 如果转换文件中不编入EOT指令,处理器总是判断转换文 件为真。编程时,用一个无条件的阶梯(EOT是输出指 令)。

第3章 可编程序控制器的编程
8.用户中断禁止(UID)和用户中断使能(UIE) 描述:UID指令可暂时禁止可选定时中断(STI)、过 程输入中断(PII)等中断程序,但UID指令不禁止用户 故障程序。 操作:当含UID指令的阶梯为真时,执行UID指令,使 其后的一段阶梯不允许中断,直至用UIE指令使程序再允 许中断(STI或PII)。所以UID与UIE是成对使用的,它 们属输出指令。

第3章 可编程序控制器的编程
用户中断禁止(UID)和用户中断使能(UIE)的例子:

第3章 可编程序控制器的编程
十一。 过程控制指令PID 1。 PID液位控制的例子

第3章 可编程序控制器的编程
2。PID指令 的特点: PLC-5具有专门的PID指令,用以处理器监视和控制诸如 压力、温度、液位等过程回路。它具有如下特点: (1)PID方程可由ISA(标准方程)或独立增益方程表示 (有四种方程可供选择); (2)输入输出范围为0~4095(12位的模拟量); (3)可按工程单位整定输入信号; (4)可设定死区; (5)可选择微分项(用过程变量还是偏差作微分项);

第3章 可编程序控制器的编程
2。PID指令 的特点(续) (6)可选择正向或反向控制(偏差E=设定值SV-过程变量 PV,还是E=PV-SV); (7)设定输出报警; (8)进行输出限幅; (9)可采用手动方式操作; (10)可进行前馈或输出补偿; (11)可显示和监视PID值。

第3章 可编程序控制器的编程
3、PID 方程 在PID指令中,处理器给出了四种PID算法供选择: a.具有相关增益的标准方程:

Output ? Kc[(E) ? 1/ Ti ? t0 (E)dt ? Td * d (PV ) / dt] ? Bias
b. (2)具有偏差微分的标准方程:

其中:Kc=比例增益 1/Ti=复位增益(重复次数/分钟) Td=比率增益(分钟)

第3章 可编程序控制器的编程
3、PID 方程(续) c. 独立增益方程:

Output ? Kp( E) ? Ki ? t0 ( E)dt ? Kd * d ( PV ) / dt ? Bias
d.具有偏差微分的独立增益方程:

Output? Kp( E) ? Ki ? ( E)dt ? Kd * d ( E) / dt ? Bias
t 0

其中:Kp=比例增益 Ki=积分增益(1/秒) Kd=微分增益(秒)

第3章 可编程序控制器的编程
3、PID 方程(续) 用在算法中的其它变量包括: Output=控制输出 Bias=输出补偿或前馈(0~4095) E=偏差(可选用SP-PV,或PV-SP) PV=过程变量(已定标) SP=设定变量(已定标)

第3章 可编程序控制器的编程
3、PID 方程(续) 标准增益常数与独立增益常数的互相转换 : Kp=Kc(无单位) Ki=Kc/(60?Ti)(1/秒) Kd=Kc?(60?Td)(秒) 4、 PID 指令的格式:

第3章 可编程序控制器的编程
5、PID 指令的变量 a)Control Block(控制块):是一个数据文件,可 用整数文件,也可以用PID数据文件(PD),用来存贮 PID状态、控制位、常数、变量和内部使用的参数。若使 用PID文件时,对于增强型PLC-5,字0、1是状态字,字 2~80存贮PID值。状态字0中第15位(PD.EN表示)是使 能位,在阶梯由假变真时置位,表示允许PID指令执行。

第3章 可编程序控制器的编程
5、PID 指令的变量(续) b)Process Variable(过程变量):是存贮过程输 入值的字地址。 c)Tieback(手动返回):使用手动控制站时使用, 它是来自手动控制站BTR(块读)指令的输出。 d)Output(输出控制):是字地址,PID指令将计 算的PID输出值送到此地址中。

第3章 可编程序控制器的编程
6、PID 指令的使用 PID指令使用时相对比较复杂,各种功能的选择、 控制块文件中各个字的含义及设定,可在编程软件 Rslogix5中PID的监视屏幕中设定,若有不明白之处, 也可参看Rslogix5中有关PID指令的HELP(帮助)。另 外对于PID各个增益的整定,罗克韦尔软件公司 (Reckwell Software)有一个专门的软件Rsturn来实现 。

第3章 可编程序控制器的编程
十二。 块传送指令BTR和BTW 1、块传送指令功能: 使用块传送指令,可以针对本地或远程I/O框架的 一个块传送模块(如模拟量模块)一次传出或读回64 个字。当某处理器配置成适配器方式时(见第四章), 此处理器可针对监控处理器一次传去或读回最多64个 字。

第3章 可编程序控制器的编程
1、块传送指令功能(续) (1)处理器配置为扫描器方式时的数据传送: 若要传送数据 使用 至块传送I/O模块 --- ----- BTW(块传送写) 从块传送I/O模块 ------- - BTR(块传送读)

第3章 可编程序控制器的编程
1、块传送指令功能(续) (2)处理器配置为适配器方式时的数据传送: 若要传送数据 使用 从监控处理器-------------------------BTR(块传送读) 至监控处理器------------------------ BTW(块传送写)

注意:两个处理器同时进行相反的块传送指令

第3章 可编程序控制器的编程
2.块传送读(BTR)
块传送读(BTR)的描述:当阶梯条件为真时,BTR 指令告知处理器从本地或远程I/O框架上的块传送模块中 读出数据,或者当处理器被配置成适配器方式时从监控 处理器中读出数据,并存贮到数据文件里。 块传送读(BTR)的格式:

第3章 可编程序控制器的编程
块传送读(BTR)的变量: (1)Rack(机架):是目标I/O模块所在的机架号 (00~27,八进制)。 (2)Group(组):是I/O组号(0~7),它指明目标I/O 模块在I/O框架中的位置. (3)Module(模块):是I/O组内的槽号(0或1),0槽 是位置顺序低的槽,1槽是位置顺序高的槽。使用1槽或 1/2槽寻址,此处应输入0。

第3章 可编程序控制器的编程
块传送读(BTR)的变量(续): (4)Control Block(控制块):是块传送控制文件 (BT)或一个包含5个字的整数文件(N),它控制指令 的操作。输入文件地址时不用#符号,它不属于控制文 件(R)。控制块中的0是状态字,字1(.RLEN)是要传 送的数据文件长度,字2(.DLEN)是实际传送的字数, 指令执行后应与.RLEN一样,字3(.FILE)是数据文件号 (存贮要传送的数据文件的文件号,如N7:20的文件号为 7),字4(.ELEM)是数据文件中的起始字(如N7:20中 ,元素号为20)。

第3章 可编程序控制器的编程

第3章 可编程序控制器的编程
块传送读(BTR)的变量(续): (5)Date file(数据文件):是一整数文件地址处 理器可把数据传送到这里(BTR)或从此地址传出数据 (BTW)。此文件地址不用#号 (6)Length:是要传送的数据字数(长度)。若设定 长度为0,则表示块传送模块传送它能处理的最大数量 (64个字)的数据;若设定长度为1~64,则按指定的数 量进行传送。

第3章 可编程序控制器的编程
块传送读(BTR)的变量(续): (7)Continuous(连续):决定操作方式。 若指定为Yes,则表明是连续操作方式,此时一旦阶梯 由假变真,就开始执行块传送,块中的数据全部被更新, 以后程序每扫描一次就执行一次块传送,而不管处理器 是否继续扫描指令所在的阶梯,也不管阶梯条件如何; 若要停止连续传送,可以将控制块状态字中的位11(.Co) 复位并让阶梯条件为假,或者在编辑块传送指令时,指 定其它的块传送指令的操作方式为NO。

第3章 可编程序控制器的编程
块传送读(BTR)的变量(续): 若操作方式指定为NO,表明是非连续操作方式,此 时只有在阶梯条件每次由假变真时,执行块传送,块中 的全部数据都被更新。因此,当要控制块传送发生的时 刻或次数时,可用非连续操作方式。

第3章 可编程序控制器的编程
3.块传送写(BTW) 块传送写(BTW)的描述:当阶梯条件变真时,BTW 指令告知处理器把存贮在数据文件中的数据写到指定 的本地或远程I/O框架上的块传送模块中,或者当处理 被配置成适配器方式时,将数据写到监控处理器去。 块传送写(BTW)的格式:

BTW指令中的所有参数的 含义与BTR含义一样。

第3章 可编程序控制器的编程
4。利用BTR和BTW对同一模块进行读写的例子

第3章 可编程序控制器的编程
十三。 信息指令MSG 信息指令MSG的描述: 信息指令(MSG)可通过DH+网、Ethernet网(以 太网),从某一处理器中取出数据或向此处理器发送 数据。可把MSG指令编写在处理器的梯形图逻辑中, 以便由阶梯条件来启动。 MSG指令可传送多达1000个数据元素。每一元素的 大小依赖于所指定的数据表区和所使用的信息命令类 型。

第3章 可编程序控制器的编程
信息指令MSG的描述(续) MSG指令以数据包的形式传送数据。在DH+网上 每个数据包最多包含120个字,若信息传送的字比一个 数据包所容纳的字(120)个多,则传送要求更多的数 据包来实现操作。要传送的数据包越多,传送花费的 时间越长。在以太网上每个数据包最多可包含709个字 ,这样提供了一个更有效的网络选择。

第3章 可编程序控制器的编程
信息指令MSG的格式:

在第一次输入MSG指令时,需要指定控制块地址。 随后,编程软件会自动地显示数据输入屏幕,从中可输 入指令参数,这些参数将存贮在控制地址中。也可用数 据监视屏幕(Date Monitor)为MSG指令编程选择参数。

第3章 可编程序控制器的编程
信息指令MSG的控制块



(1)对于标准PLC-5(如PLC-5/10,-5/12,-5/15,5/25)等,控制块可用整数文件(N),而且不用#符号。 例如,N7:0便是一个有效的MSG控制块地址。 (2)对于增强型以上的PLC-5(例如PLC-5/30,-5/40等 )信息控制块地址可使用整数文件或信号文件(MG)类 型,如MG10:0就是一个有效的控制块地址。应该注意的 是,使用MG文件类型,控制块的大小固定在56个字 。

第3章 可编程序控制器的编程
信息指令MSG的控制块 (续): (3)如果使用SLC读写命令发送信息给SLC500处理器, 或者是在1A以外的通道口发送信息,必须采用MG型控制 块。 (4)在以太网上使用信息指令时需要使用两个连续的 控制块元素:第一个包含有关信息的资料,第二个包含 目标地址。例如:如果定义MG10:0为控制块,则软件实 际上使用了MG10:0和MG10:1两个控制块用于以太网信息 指令。正因为以太网信息指令需要两个连续的控制块, 因此,在定义控制块时必须从偶数开始。

第3章 可编程序控制器的编程
组态MSG指令需要做很多的工作,其中的变量各有各 的含义,操作也分连续和非连续两种,有关MSG指令更 详细的信息可参见有关资料及编程软件Rslogix5的帮助 (HELP)。 PLC-5除了上述介绍的指令外,还有用于控制具有连 续和重复操作特性的自动流水线上的顺序器指令(如顺 序器输入SQI,顺序器输出SQO,顺序器装入SQL);用 于检测用户程序的诊断指令,以及ASCII指令等。大量的 指令使用户在开发程序时,可以选取合适的指令,从而 大大节省开发时间。

第3章 可编程序控制器的编程
3.5 编程举例
一、模拟量输入模块(1771-IFE)及其编程 1、模拟量输入模块1771-IFE的一般特性 模拟量输入模块1771-IFE是一块智能的块传送模块, 它将模拟量输入信号与任何具有块传送能力的A-B PLC接口,并将模拟量(如温度、压力等)转换成一 个成比例的12位二进制数或一个4位BCD的值,转换后 的值存贮在模块的存贮器中,由块传送指令发送到 PLC。

第3章 可编程序控制器的编程
1771-IFE 的特点: (1)高密度: 每一模块可以组态成最多16个的单端输入或8个差 动输入,一个特定的输入模块必须是全部单端或全部 差动,其组态包括硬件的组态(插头组态)和软件的 组态。

第3章 可编程序控制器的编程
1771-IFE 的特点: (2).每个通道的输入方式及范围是可选的:输入信号可 以是电压方式也可以是电流方式,由硬件的插头组态 来完成,其数值范围则由软件来选择。1771-IFE提供 了五种电压范围和三种电流输入范围,它们是: 1~5VDC , 4~20mA 0~5VDC , 0~20mA -5~5VDC , -20~+20mA -10~+10VDC 0~10VDC

第3章 可编程序控制器的编程
1771-IFE 的特点: (3).可选的实时采样(RTS):采样周期的缺省值为 25ms(单端输入)或13ms(差动输入),用户可选的 范围是100ms?3.1s,这由软件来组态。 (4).对工程单位的可选定标:包括最小定标值和最大 定 标值,每个通道的范围是(-9999?+9999),一般可把最 大定标值置成+4095(即212-1),最小定标值置成000或4095。

第3章 可编程序控制器的编程
1771-IFE 的特点: (5).可选择的数字滤波:数字滤波能够用来减少电噪 声对模拟输入信号的影响。可通过选择合适的滤波时间 常数来尽可能地减少电噪声。数字滤波的方程为:

0.02 Yn ? Yn -1 ? ( X n - Yn -1 ) 0.1 ? Ta
其中:Yn为当前的滤波输出;Yn-1为上次的滤波 输出;0.02是模块通道校正时间(s);Ta为数字滤波时 间常数(s),其范围为0.00~0.99(s);Xn是当前未滤 波的输入值。

第3章 可编程序控制器的编程
1771-IFE 的特点: 6.不需要外部电源:因为模拟量输入模块装在PLC的 I/O框架中,因此其电源由I/O框架基板提供,每块模 块要求+5VDC、750mA。

第3章 可编程序控制器的编程
2、模拟量输入模块1771-IFE与PLC的通讯 PLC与模拟量输入模块通信的信息流程图 :

第3章 可编程序控制器的编程
PLC与模拟量输入模块的通信步骤: 1.通过一个块传送写指令(BTW)把组态数据从处理 器传送给输入模块。 2.外部装置产生的模拟信号被传送到输入模块。 3.输入模块把模拟信号转换成一个二进制或BCD格式 值,然后存贮这些值直至处理器请求一个数据传送。 4.执行程序指令,处理器通过块传送读(BTR)指令将 模拟量数值读入并将它们存入数据表。程序应确定传送 没有错而且值是在指定范围内。 5.在没有新的数据被读入之前,程序可以使用这些数据。

第3章 可编程序控制器的编程
3、对模拟量输入模块1771-IFE编程 从模拟量输入模块1771-IFE与PLC的通讯流程可知, 首先应通过块传送写(BTW)指令将一些组态信息从 数据表传送给模拟量输入模块,然后利用块传送读指 令将诊断及输入状态信息(包括各通道的模拟量数据) 从输入模块读到PLC处理器数据表。 (1).组态输入模块

第3章 可编程序控制器的编程
其中: 字1:对通道1到8的范围选择; 字2:对通道9到16的范围 选择 字4:最小定标值的符号位; 字5:最大定标值的符号位; 字6:通道1的最小定标值; 字7:通道1的最大定标值; 字8:通道2的最小定标值; 字9:通道2的最大定标值; 字10:通道3的最小定标值; …………………………; ………………………… ; 字37:通道16的最大定标值。

第3章 可编程序控制器的编程
a.组态表中的第1、2两个字 组态表中的第1、2两个字用以组态每个通道的范围选 择,每两位代表一个通道,例如字1中的01、00位代表第

0个通道的范围选择,其具体的含义见表3.5.2。 b.组态表中的第3个字 组态表中的第3个字的低8位00~07用以输入滤波时间 常数,用BCD码表示,因此其范围为0.00~099s (BCD码表 示的十进制数乘0。01秒,如01000010表示滤波时间0.42 秒)

第3章 可编程序控制器的编程
位10:用来选择单端输入还是差动输入 位10的值为0表示整个输入模块都是单端输入, 位10的值为1表示整个输入模块都是差动输入; 位11、12:两位表示从模板读取的数据格式 位12(字3) 位11(字3) 数据格式 0 0 BCD 0 1 不使用 1 0 二进制补码 1 1 带符号的二进制

第3章 可编程序控制器的编程
位13~17:共5位用以输入实时采样时间(RTS) 从高位到低位的数值为00000时表示无实时采样, 若有值时,二进制值对应的十进制数乘以100ms就是 RTS,如00001意味着RTS为100ms,因此RTS可选择的范 围为100ms~3.1s, 缺省时表示RTS为25ms(单端输入)或13ms(差动输 入)。

第3章 可编程序控制器的编程
c.组态表中的第4个字和第5个字 组态表中的第4个字和第5个字分别表示每一个通道最小 定标值和最大定标值的符号,一位代表一个通道,例 如字4的00位和字5的00位分别用以表示第一个通道的 最小定标值和最大定标值的符号位,当位中的值为0时 表示符号位为“+”,位中的值为1时表示符号位为

“-”。

第3章 可编程序控制器的编程
d.组态表中从第6个字开始,一直到第37个字为止,每 两个字表示一个通道的定标值,其中低号字表示该通道 的最小定标值,高号字表示该通道的最大定标值。例如 第6个字表示通道1的最小定标值,第7个字表示通道1的 最大定标值,以此类推。 总结:在模拟量输入模块1771-IFE中,组态表的前5个 字是公用的,而每激活一个通道,则还应增加两个字, 因此在BTW指令中组态字的长度视激活通道的数目可 以在7(激活1个通道)和37(激活16个通道)之间变化 。

第3章 可编程序控制器的编程
2.从模块中读出数据 利用BTR指令可在一次I/O扫描中将最多20个字的诊 断及输入状态信息(包括每一通道的数据)从输入模块 读到PLC处理器的数据表. 20个字的分配情况见下表

第3章 可编程序控制器的编程

第3章 可编程序控制器的编程
其中: 字1:诊断 字2:通道1到16的低量程数据极限位; 字3:通道1到16的高量程数据极限位: 字4:通道1到16的数据符号位; 字5:通道1的输入;字6:通道2的输入; 字7:通道3的输入;……………………; …………………… ;字20:通道16的输入。

第3章 可编程序控制器的编程
BTR中的第1个字 第1个字是诊断字,其中: 00位:为起动位,它在模块第一次起动时置1,在执行完 第一个BTW之后复位为“0‖; 01位:是一个极限测试位,它在任一通道的数值超过最 大或最小定标值时置“1‖; 02位:是非法定标数据位,一旦非法数据进入最小/最 大定标字(BTW中的字6~37)的任何地方,它被 置“1‖,同时相应BTR的输入通道字被置成0000, 另外,如果输入一个非法数字滤波值(如1F), 02位也置“1‖。
a.

第3章 可编程序控制器的编程
b. BTR中的第2个字 BTR中的第2个字提供每一通道(最多16个,每位代表 一个通道,00位对应于通道1,01位对应于通道2,以此 类推)的低量程数据极限(即下限)的测试,若特定通 道的数据超出下限,关联位置置“1‖,回到范围之内复 位 为“0‖。 c. BTR中的第3个字 BTR中的第3个字提供每一通道(最多16个,每位代表 一个通道,00位对应于通道1,01位对应于通道2,以此 类推)的高量程数据极限(即上限)的测试,若特定通 道的数据超出上限,关联位置置“0‖,回到范围之内复 位为“0‖。

第3章 可编程序控制器的编程
d. BTR中的第4个字 BTR中的第4个字提供每一通道(最多16个,每位代表 一个通道,00位对应于通道1,01位对应于通道2,以此 类推)的输入数据的符号,0代表符号为正,1代表符号 为负。 e. BTR中的第5~20个字 BTR中从第5个字开始到第20个字为止,每一个字对应 于一个通道的输入值,第5个字代表通道1的输入,第6个 字代表通道2的输入,以此类推,显然在BTR指令中,数 据表的长度视激活通道的数目可以在5(激活一个通道) 和20(激活16个通道)之间变化。

第3章 可编程序控制器的编程
3.模拟量输入模块1771-IFE的编程

第3章 可编程序控制器的编程
二、模拟量输出模块(1771-OFE)及其编程 1、模拟量输出模块1771-OFE的一般特性 模拟量输出模块1771-OFE是一块智能的块传送模块 ,它具有4个通道输出,在每一通道上可将二进制或4位 BCD码转换成模拟量信号,以便驱动相应的模拟量输出 设备,它具有以下特点: ( 1 ).具有4路相互隔离的差动输出

第3章 可编程序控制器的编程
(2).1771-OFE有多种输出模块: 1771-OFE1为电压型输出模块,通过组态插头 提供三种电压输出范围:1~5VDC、0~10VDC和– 10~+10VDC;1771-OFE2为电流型输出模块(在工厂配 置好),提供4~20mA电流输出范围。 (3).对工程单位的可选择定标: 与1771-IFE定标方法一样。 (4).插在1771 I/O框架上,占一个I/O槽,因此不需 要外部电源,由1771 I/O框架背板供电。

第3章 可编程序控制器的编程
2、模块量输出模块1771-OFE与PLC的通讯 下图是一个PLC与模拟量输出模块通讯时的信息流 程图,从图中可以看出PLC与模拟量输出模块通讯时分以 下几步依次进行:

第3章 可编程序控制器的编程
2、模块量输出模块1771-OFE与PLC的通讯(续) ? 通过执行程序中的块传送写(BTW)指令,将数 据发送到输出模块。 ? 输出模块在其输出通道上将BCD或二进制码转换 成模拟信号。 ? 模拟信号用以驱动相应的模拟量输出设备。 ? 通过执行程序中的块传送读(BTR)指令,将输 出模块中的诊断信息传回PLC中。 ? 由PLC中的输入模块或由程序生成数据留待备用。

第3章 可编程序控制器的编程
3、对模拟量输出模块1771-OFE编程 (1)。从1771-OFE与PLC的通讯流程可知,处理器 首先应通过块写(BTW)指令将一些组态信息及各通 道的数据传送给1771-OFE,以便1771-OFE进行D/A 变换。在BTW中最多可有13字长,其分配情况见下表 。 (2)。其次通过执行程序中的块传送读(BTR)指令, 将输出模块中的诊断信息传回PLC中。在BTR中最多 可有5个字长

第3章 可编程序控制器的编程
a.

b.

c.

前4个字分别代表每一通道的实际的二进制数或BCD 码,1771-OFE将这个数据实现D/A变换。 从第6个字开始到第13个字为止,每两个字为1个通 道,用以写入每个通道的最小、最大定标值,其含 义与1771-IFE是一样的。 第5个字为组态字,其中前4位分别代表每一个通道 的数据的极性即符号位,如00位表示第一通道数据 的符号值;01位表示第2通道数据的符号位;以此类 推,符号位值为0表示数据为正,符号位值为1表示 数据为负;

第3章 可编程序控制器的编程
c.第5个字(续): 位04~位13共8位:每两位表示一个通道,低号位表示 该通道最小定标值的符号、高号位表示该通道最大定标 值的符号,例如位04与位05表示第1通道,04位是第1 通道最小定标值的符号位,05位是第1通道最大定标值 的符号位,符号位的值为0表示定标值为正,符号位为 1表示定标值为负; 位14~16:留待以后使用; 位17:表示数据格式,其值为0时表示数据格式为BCD码, 其值为1时表示数据格式为二进制数。

第3章 可编程序控制器的编程
(3)、PLC-5对1771-OFE进行编程 的例子

第3章 可编程序控制器的编程

第3章 可编程序控制器的编程
三、常用电路的编程 1.瞬时输入延时断开电路 2.闪烁电路

3.三相鼠笼式异步电动机Y-?起动

第4章 可编程序控制器的网络系统
可编程序控制器系统的规模发展: 可编程序控制器是一种新型有效的工业控制装置, 它已从单一开关量控制功能发展到顺序控制、模拟量控 制、运算处理、连续PID控制等多种功能;从小型整体式 结构发展到大中型模块式结构;从独立单台运行,发展 到数台连成PLC网络。 可编程序控制器的网络 :PLC网络既可作为独立集散 系统运行,也可作为大型集散系统的子网运行。

第4章 可编程序控制器的网络系统
4.1 概述 一、 PLC网络的主要形式 (1)简易集散系统:以个人计算机为主站,多台同型号 的可编程序控制器为从站。 特点:在这种系统中,个人计算机充当操作站,实 现显示报警、监控、编程及操作等功能,而多台PLC负责 控制任务。 (2)主从式PLC网络:以一台可编程序控制器作为主站 ,其它多台同型号PLC作为从站,构成主从式PLC网络。 特点:在主站PLC上配置彩色显示器、打印机等,以 便完成操作站的各项功能。

第4章 可编程序控制器的网络系统
一、 PLC网络的主要形式 (续) 两者区别:从理论上看,这种全部由PLC组成的主从 式PLC网络与个人计算机为主站组成的PLC网络并没有本 质差别。若从实现角度看两者却有很大差别。全部由 PLC组成的PLC网络,在用户编制通信程序时,不必知 道其通信协议,只要按用户说明书规定的格式书写就 行了。而在以个人计算机为主站的PLC网络中,用户必 须知道通信协议,才能在上位机中编写通信程序。

第4章 可编程序控制器的网络系统
一、 PLC网络的主要形式 (续) (3) PLC子网:把PLC网络通过特定的网络接口连入 大型集散系统中去,成为它的子网。 (4)专用PLC网络:有些公司还为自己生产的可编程 序控制器设计了专用的PLC网络,例如AB公司的DH, DH+高速数据通道、控制网 、设备网;SIEMENS公司 的SINES-L1,SINEC-H1网络,三菱公司的MELSECNET与MELSEC-NET/MINI网络,GE公司的GENET 等。

第4章 可编程序控制器的网络系统
二、PLC通信的特点 从通信原理上看,PLC网络与集散系统的通信网络是一 样的。但PLC通信有其特殊之处,主要表现为下列几点。 (1)由于PLC采用梯形图及其它方式编程,因此其通信 程序也必须用梯形图或其它方式编写。而在上位机中的 通信程序则是用C语言、BASIC语言等高级语言或汇编语 言编写,必须符合PLC中的通信协议。

第4章 可编程序控制器的网络系统
(2)生产PLC的厂家为了使自己生产的可编程序控制器 连网的适应性强一些,对通信协议的物理层通常配置好 几种接口标准,如RS-232C,RS-422等,其数据异步传送 的格式也有两种以上,用户可根据应用需要,用硬件开 关或向指定单元写入控制字的方法进行选择。 (3)在大型集散系统的通信网络中已很少使用集中式 (主从式)存取控制方法,而在PLC网络中主从式存取控 制方法仍在使用,因为主从式存取控制方法简单,实现 方便。不过随着PLC网规模的不断增大及标准化进程,符 合MAP规约的PLC及PLC网络愈来愈多。

第4章 可编程序控制器的网络系统
(4)PLC网络中的过程数据多数是触点的开通与关断, 数据更短,而且若受干扰出错就整个错了,因此对差错 控制要求较高。在可编程序控制器中可使用“异或码” 进行 校验。

第4章 可编程序控制器的网络系统
三、网络系统结构 在一个开放式自动化系统结构中,通常包含有三个 网络层:即设备层、控制层以及信息层 : ? 设备层:将低层的设备直接联接到车间控制器上,这种 联接无需通过I/O模块。即用方便而快速的链路采集各种 各样的、来自不同厂商的、距离远近不同的现场设备 (如传感器、驱动器等)的数据,对其进行配置和监视。

第4章 可编程序控制器的网络系统
? 控制层:各个PLC之间及其与各智能化控制设备之间 ,进行控制数据的交换、控制的协调、网上编程和程序 维护、远程设备配置和查、排错误,也可以连接各种人 机界面产品进行监控。 ? 信息层:提供上层计算机系统,以便通过以太网访问 车间级的数据,主要为全厂范围控制系统的数据汇集和 监视。数据量大而实时性要求不高,它的开放性协议使 各种主计算机和不同厂商的PLC可以互连,在必要时也 可以进行一些控制和协调。这一层采用符合公共标准 TCP/IP协议的以太网。

第4章 可编程序控制器的网络系统
4.2 以太网 信息层采用以太网结构,以太网是最著名的几种局网之 一,应用范围很广,不仅是一种主要的办公自动化局 网,在工业控制网中也得到一定的应用。Ethernet实验 性局网是由美国Xerox公司于1975年开发成功的。 以太网的数据传输速率为10MBPS,采用了CMSA/CD 存取控制技术,控制协议为TCP/IP。

第4章 可编程序控制器的网络系统
一、 以太网(Ethernet)网络结构 由于在PLC网络中采用了以太网网络技术,许多PLC 产品都支持以太网的TCP/IP通信协议,它们能将控制系 统与监视和信息管理系统集成起来,通过以太网网络, 使用于监控的可编程序控制器、工业计算机工作站以及 商业计算机系统可以存取车间级的数据。这样的数据能 用于数据采集、监控、计算管理、统计质量控制、设备 维护管理、生产流程以及物料跟踪,同时TCP/IP协议可 以使计算机访问使用结构化询问语言(SQL)的开放型数 据库。

第4章 可编程序控制器的网络系统

第4章 可编程序控制器的网络系统
二、 以太网的通信模式 以太网在结构上可分为物理层和数据链路层 。 三、 以太网用于工业控制网 以太网在工业控制网络结构中有两种不同类型的应用: (1)把Ethernet网用在系统复合型结构的通信网络中 作为管理子网,传送生产管理信息。 (2)把Ethernet网当作控制网络使用即把所有的工作站 (PLC)直接挂在以太网上用来传送过程数据。

第4章 可编程序控制器的网络系统
四、 以太网络通信产品 1、直接的以太网PLC-5处理器模块(PLC-5/20E, 40E,80E); 2、 PLC-5以太网接口模块,可以使PLC-5处理器上 增加一个以太网端口。这个端口提供了嵌入式TCP/IP通 信能力,可让一个PLC-5处理器与其他带以太网端口的 PLC-5处理器和主计算机进行通信。在PLC-5处理器上增 加这个以太网端口,提供了将A-B公司的网络结构集成到 工业标准TCP/IP网络的手段,提供了灵活的开放性网络 的解决方法。

第4章 可编程序控制器的网络系统

第4章 可编程序控制器的网络系统
4.3 控制网(Control NetTM) 一、 控制网网络概述 1、网络结构 Control NetTM网络功能:是90年代及以后的自动化及 控制网络,该网络集数种网络的优点于一身,它拥有 I/O、PLC互锁、对传信息传输以及在同一网上编程等 功能。 控制网网络的传输数据: (1)一种是对时间要求苛刻的、高速的、确定性的数 据

第4章 可编程序控制器的网络系统
(2)它允许传送无时间苛求的报文数据,但不会对有时 间苛刻要求数据传送造成冲击。 它为对等通信提供实时控制和报文传送服务。作为 控制器和I/O设备之间的一条高速通信链路,综合了现 有的远程I/O和DH+链路的功能。

第4章 可编程序控制器的网络系统

第4章 可编程序控制器的网络系统
2、网络能力 ? 高吞吐量-5mbit/sec的数据传送率用于改善I/O、控制 器互锁以及对等通信报文传送的性能。 ? 将I/O控制与编程置于同一物理介质链路上进行。 ? 日益增强的诊断能力,使得网络易于组态和维护。 ? 数据发送具有确定性和可重复性。 ? 在同一链路上,采用多控制器控制相互独立的I/O。 ? 在链路上所有控制器之间,实现预定的对等通信互锁。 ? 多信道广播-多控制器共存输入数据,多控制器共享 对等通信互锁数据,以便实现 更强的功能和减少编程 要求。

第4章 可编程序控制器的网络系统
3、网络特性 (1)减少安装费用 控制网安装简易且成本低、效益高。采用标准的RG-6 同轴电缆和连接器;用带有完整支线的分接器进行节点 连接,分接器间无任何空间要求。 (2)简化编程和网络组态 (3)灵活的结构 :采用了CAN总线技术

第4章 可编程序控制器的网络系统
二、 控制网的通信模式 控制网是基于开放网络技术的一种新发明的解决方 案——生产者/客户(Producer / Consumer)模式。 生产者/客户模式允许网络上的所有节点,同时从 单个的数据源存取相同的数据。这种模式最主要的特点 是提供了下述功能:更强的系统功能;提高了效率,因 为数据的发送与客户的数量无关;精确的同步化,因为 数据同时到达每个节点。

第4章 可编程序控制器的网络系统
1、生产者/客户模式网络的特点 传统的点对点通信方式(源/目的source / destination) 和生产者/客户方式 的比较:
CTRL1 1# CTRL2 HMI

2# 传 感 器 驱 动 1 器 驱 动 2 器 驱 动 3 器

第4章 可编程序控制器的网络系统
通讯要求: #1信息要传给CTLR1,2以及HMI。 #2信息要传给Drive1,2,3及HMI。

传统的源/目的地方式 :要完成以上2个任务,信息 共要发送7次,而且每个目的(节点)接收到信息的时间 是不同步的,信息发送的次数与网上的节点数有关。 生产者/客户的方式 :要完成以上2个任务,信息只需 发送2次,网上每个目的地(节点)接收信息的时间是同 步的,而且与网上的节点数多少无关。

第4章 可编程序控制器的网络系统
传统的源/目的网络模式处理的数据包格式:

第4章 可编程序控制器的网络系统
传统的源/目的网络模式特点: ? 需要多个数据包传送相同的信息到多台设备; ? 数据到达不同的目的地的时间不同; ? 产生附加的网络通信量,影响网络性能; ? 报文发送和对时间有苛求的I/O数据,需要使用不同的 网络。

第4章 可编程序控制器的网络系统
生产者/客户网络模式的数据包 的格式:

P

P:提供

C:使用

C

第4章 可编程序控制器的网络系统
生产者/客户网络模式的数据包的特点: ? 多个节点能够从单个生产者(数据源)接收相同的数 据; ? 节点能够同步化(多信道广播); ? 优化的带宽潜力能用于增强系统功能; ? 使用同一网络进行编程和I/O信息传送。 基于生产者/客户模式网络的优点: ? 提高效率——数据源一旦发送数据,多个节点能 同时接收数据。报文是通过目录来识别的。 ? 精确的同步化——更多的设备能够加到网络上,但 不需要增加网络的通信量,并且所有节点的数据同时到 达。

第4章 可编程序控制器的网络系统
生产者/客户模式支持下述功能 : ? 系统可组成主/从、多主或对等通信结构; ? 混合系统结构(主/从、多主和对等设备与任意混合); ? 在一条链路上信息类型的任意混合(显示报文发送、 I/O数据)。

第4章 可编程序控制器的网络系统
1、数据类型及传送方式 控制网链路的功能 : (1)传送对时间有苛刻要求的控制信息(即I/O状态和控 制互锁)。 (2)其它的信息(即无时间苛求的信息,列如程序的装 载和下载)也能传送,但因为控制网的独特的时间限制 算法,它们不会影响对时间苛求信息的传送。

第4章 可编程序控制器的网络系统
控制网链路上信息的传送: 是通过建立节点间的连接来实现的。由生产者发送的 每个报文包含一个连接标识符(CID)。已经组态的节点 识别CID接收报文,因而变成为一个客户。 网络的介质存取 :是通过时间限制存取算法来控制, 即用并行时间域多路存取(CTDMA)方法,每个网络刷新 间隔(NUI)内调节节点的传送信息机会。客户通常选择 ms的网络刷新时间(NUT)来组态NUI重复的频繁程度。 客户能够指定最小的NUT为2ms。网络刷新时间(NUT划分 为三个部分

第4章 可编程序控制器的网络系统
NUT包含的时间 允许工作内容

预定的时间

每个预定的节点(在一个循环的顺序次序的基础上)保证有 一个机会进行传送信息。 有时间苛求的信息必须在这段时间传送出去。

未预定的时间

所有的节点按一种顺序进行循环传送信息。 这种循环不断重复,一直到分配给这部分的时间用完为止。 提供给未预定部分的时间决定于预定部分的通信量。在这个 段内,控制网保证至少有一个节点有机会传送非预定数据。 没有传送时间约束的信息应该在这个时间段内传送。 用地址最低的节点所传送的信息,以保证其他节点同步化。 这个时间将从NUT中自动扣除。

维护时间

第4章 可编程序控制器的网络系统
完整的NUT是预定信息、未预定信息和维护信息传送 时间的总和。客户要组态在NUT中某个节点要传送信息 类型(预定和未预定的),维护时间将自动引出。

第4章 可编程序控制器的网络系统
网络时间带的利用 :时间被划分成时间片段1,2, 3……,每一段又有三个部分组成
Network Interral #1 #2

#3

#4

#5 Time

预 定 的时间

未预定 的时间

维护 时间

第4章 可编程序控制器的网络系统
预定的 时 间 未预定 的时间
?

预定的 时 间

未预定 的时间

?

1 2 3

1 2345

4
5

6712345 6

1 2 3

2 3 4 5 6712345

4
5

6

Interval #2 Interval #1

第4章 可编程序控制器的网络系统
在网络时间段#1: 预定传送——在这个时间段的预定时间带中,所有已经 组态的设备都得到机会传送数据(I/O更新和点对点连 锁)。 未预定传送——具有网络地址为“X‖(1)的设备第1个 得到机会传送未预定数据(最大的数据包大小为510字 节),只要时间段时间允许存读设备2,3,4等也得到 机会传送数据,设备6也得到一个机会传送数据,在这 个时间段中,设备6还可能得到第2个机会。当然也有 可能它一次机会也得不到。 维护——维护时间带传送网络维护数据包。

第4章 可编程序控制器的网络系统
在网络时间段#2: 预定传送:与时间段#1相同 未预定传送:具有网络地址为“X+1‖(2)的设备第一 个得到传送未预定数据的机会,接下去的存取过程类 似时间段#1。 维护:与上述维护时间段相同。

第4章 可编程序控制器的网络系统
2、PLC-5传送预定数据 用户应组态一个最大预定的节点,该节点是最高地址 节点。它可在网络刷新时间的预定部分能传送数据。 对于用户指定的直到最大预定点地址的所有节点,控 制网将在预定时间内保留带宽。对于一种高效率的网络 而言,指定节点地址的顺序从01开始,并且设定用户最 大预定节点地址为需要传送预定数据的最高节点号。

第4章 可编程序控制器的网络系统

第4章 可编程序控制器的网络系统
控制网的预定数据传送: ? 是连续的 ? 传送是与梯形逻辑程序的扫描异步 ? 以一个与用户在I/O映象表中所设定的通信速率相等或 更快的速率传送预定数据传 送时,进行如下刷新: ? 所收集的输入映象由专用内存的缓冲区传送到处理器输 入映象文件中,供下次逻辑 扫描时使用。 ? 输出映象文件的数据放入专用内存缓冲区,在下一次预 定通信时送出

第4章 可编程序控制器的网络系统
3、传送未预定数据 当不需要进行确定性的数据传送时,控制网链路可让用 户采用非预定报文发送。非预定操作包括: ? 非预定的非离散数据传送——通过在PLC梯形程序中的 控制网I/O传送指令(CIO) 进行。 ? 对等报文发送——通过在PLC梯形程序中的报文指令 (MSG)进行。

第4章 可编程序控制器的网络系统
非预定传送:是在网络刷新时间间隔的非预定时间段 中完成的。 在控制网网上的非预定报文发送是非确定性的。用户的 应用和用户的组态——节点数、应用程序、网络刷新 时间(NUT)等,决定了非预定报文传送需要的时间。 控制网组态软件(RSNetWork),在每个网络刷新 间隔(NUI)中至少保留一个最小化的非预定传送时间 。对于非预定报文发送所需时间,取决于在每个NUI中 ,每个节点是否有机会发送非预定数据。

第4章 可编程序控制器的网络系统
4、发送立即数

第4章 可编程序控制器的网络系统
四、 控制网(ControlNet)介质 控制网网络介质的组成 :

第4章 可编程序控制器的网络系统
五、 控制网网络通信产品 1.RS-232-C/并行接口( 1770-KFC15,-KFCD15 ) 2.ISA/EISA总线接口 (1784-KTCX15) 六、 控制网组态软件RSNetWorx for ControlNet RSNetWorx(9357-CNETL3)控制网软件,是用来支 持1.5版本或更新版本的、32位图形网络组态工具支持 软件。RSNetWorx的网络定位视图,提供了控制网网络 组态所需要的信息和工具。RSNetWorx提供一个图形化 的网络视图,改善带宽利用率的调度,并具有在线和离 线组态的能力。

第4章 可编程序控制器的网络系统

第4章 可编程序控制器的网络系统
4.4 设备网 一、设备网 网络概述 在设备层采用设备网(DeviceNetTM)网络是一种低 层网络,它在简单的工业设备(例如传感器和传动装置 等)和高层设备(例如PLC和计算机)之间提供连接, 无需通过硬线将它们与I/O模块连接。设备网网络是一 种柔性的、开放型的网络,可以运行多种销售商行生产 的设备。

第4章 可编程序控制器的网络系统
1、网络结构

第4章 可编程序控制器的网络系统
2、网络的能力 设备网网络为简单设备网络提供了一个高性能价格 比的解决方案;它们从各种销售商的智能传感器/调节 装置中获取数据;提供主控/从属和对等通信能力;另 外设备网以控制器局域网络技术(CAN)为基础,CAN 开放式协议定义了一个介质访问控制方法(MAC)以及 物理信号,还提供冗余循环检验(CRC)、错帧检验、 几种其它错误检查方法和保护机制。

第4章 可编程序控制器的网络系统
3、网络特性 一个集成控制系统的功能费用是由如何简单、有效地 组装系统元部件来决定的,设备网网络正是为迎合这些 要求而设计的,它为用户的控制系统增加了灵活性,提 高了效率,具体表现在如下几点: ? (1)设备相互可操作性:设备网网络提供不止一个协 议技术条件。它的相互可操作性所根据的标准有: -敞开型和密封型的设备连接器 -诊断指示器(LED) -设备的“行规”(profiles) ?。

第4章 可编程序控制器的网络系统
(2)设备可互换性:各个销售商所生产的符合设备网 网络和设备行规标准的简单装置(例如按钮、电动机起 动器、光电传感器、限位开关等等)都可以互换,为用 户提供灵活性和选择性。 ? (3)一种公用的网络:一个开放型的设备网网络标准提 供一般终端用户的解决方案。它降低了网络销售商必须支 持各种各样的设备的要求。

第4章 可编程序控制器的网络系统
(4)以一个公认的标准为基础:设备网网络标准基于 被公认的、著名的CAN技术,它有助于保证最终用户和工 业界双方广泛的理解和接受。 (5)改善生产率:一个开放型的设备网标准有助于改善 整体生产,它给予最终用户更多的选择和鼓励设备革新, 因此可以改善精度、提供诊断和增加处理数据的总量。 ? (6)有助于减少维修费用:设备可以在不需要切断其它 设备电源的情况下拆卸和更换,也不需要编程工具。

第4章 可编程序控制器的网络系统
二、 设备网的传输特性 设备网网络与控制网一样是基于生产者/客户网络模 式,这是最现代化的网络技术,这种模式使控制数据同 时到达操作的每一单元,可以更有效地利用网络的频带 宽度,同时可以显著地减少网络通信量。因为它允许状 态切换的报文发送以作出更快的响应。周期性的报文发 送,以提供更好的确定性。对等通信允许数据和状态信 息在设备间进行交换,这些优点如更快的响应、更好的 确定性,增强的灵活性最优化所有这些可产生更高的生 产率。

第4章 可编程序控制器的网络系统
设备网的技术参数
传输速率 使用电缆

干线长度

最大支线长度

最大节点数

累计支线长度

125k bit/s

500m(1,640ft)

156m(512ft)

250k bit/s

250m(820ft)

6m(20ft)

64

78m(256ft)

500k bit/s

100m(328ft)

39m(128ft)

第4章 可编程序控制器的网络系统
三、 设备网物理介质 用户可以连接64个逻辑节点(2048个设备)到一个设 备网网络 。 设备网的电缆系统采用一种主干/支线设计,它的部 件始于设备与设备网网络的连接点。通常将设备(或节 点)连接到支线或多端口分接器,然后通过一个密封式、 敞开式或多端的分接器与主干线相连。

第4章 可编程序控制器的网络系统

图4.4.2 设备网-电缆系统图

第4章 可编程序控制器的网络系统
艾伦-布拉德利(A-B)公司为设备网网络的连接和通信 需要,提供完整系统的物理介质产品,包括主干线、支 线、终端、快速拆卸的插件和分接器,用于设备网网络 的连接和通信。其典型的结构 :

第4章 可编程序控制器的网络系统
四、 设备网网络通讯产品 1、设备网RS-232-C个人计算机接口(1770-KFD,KFDG) 2、设备网PC插卡(1784-PCD)

第4章 可编程序控制器的网络系统
五、 设备网网络组态软件RSNetwork for Device Net

第4章 可编程序控制器的网络系统
4.5 其它网络 一、 DH+工业局域网

所有的增强型PLC-5及SLC5/04可编程序控制器都有 内置的DH+通讯口。 1、DH+网络的每个链路最多可以连接64个设备 2、DH+网的基本传输速率为57.6kbit/s,最大距离是 10,000ft。如果距离缩短为2500ft,传输速率可达到 230.4kb bit/s。

第4章 可编程序控制器的网络系统

第4章 可编程序控制器的网络系统
1、DH+网的数据传送方式 DH+网在令牌传送协议下工作,即只有持有令牌的站 才能发送数据,工作时,令牌沿着物理链路单向地依次 逐站传送,传递顺序与节点在链上物理分布顺序有关。 因此在这种工作方式下,有许多因素会影响到DH+链的 功能,它们包括:站数、信息的大小和数量、信息的目 标、内部处理时间。

第4章 可编程序控制器的网络系统
2、DH+链的连接方式 DH+链的连接方式通常有两种:雏菊链和主干/支干

第4章 可编程序控制器的网络系统
3、DH+网通信产品 (1).PCMCIA通信接口( 1784-PCMK) ( 2).处理器通信模块1784-KT (3).通信接口卡(1784-KTX.-KTXD.-KTS)

第4章 可编程序控制器的网络系统
二、 通用远程I/O链路(Universal Remote I/O Link) 通用远程I/O链路将SLC和PLC处理器与远程I/O机 架和一批智能设备,如操作员界面和交流,直流拖动 装置连接,I/O机架和其它设备则可以安装到远离SLC 或PLC处理器10,000英尺的地方。

第4章 可编程序控制器的网络系统
1、特点 (1) 利用收发器在一个单独的通道上进行通信。 (2)应用标准PVC双绞线电缆(目录号1770-CD)作 为传输介质。 ? ( 3 ) 采 用 菊 花 链 路 连 接 方 式 , 最 大 长 度 3048 米 (10,000 英尺)(57.6kbit/s情况下),不同通信速率情况下的允 许 网络长度见表4.5.2。 ?

第4章 可编程序控制器的网络系统
通信速率 距离米(英尺) 终端电阻

57.6k bit/s

3,048(10,000)

150? 1/2W 或82.5? 1/2W
150? 1/2W 或82.5? 1/2W 82.5? 1/2W

115.2k bit/s

1,524(5,000)

230.4k bit/s

762(2,5000)

第4章 可编程序控制器的网络系统
(4)以下面技术参数中列出的数据速率运行。为清除反 射,在干线每个端头上需要有一个1/2W终端电阻,错误校 验是用标准CRC16校验法。 (5)建立在主-从模式之上。可编程序控制器的扫描器是 “主”而I/O机架或适配器设备是“从”。当“主”站告知时 “从”站 只作出响应。 ? (6)在每个I/O扫描期中,向或从每个I/O机架的每个I/O 模块传送一个单元(8,16,32位)的I/O映象数据,传送单元 的大小取决于在I/O机架上所选的I/O寻址密度。它也可向 一个单独的I/O模块提供最大64个字的块传送(应用1747SN的情况除外)。

第4章 可编程序控制器的网络系统
(7) 可让远程I/O扫描器在一个单独的链路,最
? ? ? ? ? ? ?

多 连接32个I/O机架或其它适配器式的设备。按照最早 的通用远程I/O规格制作的设备与按照新的规格制作 的设备是兼容的。但是,如果其中任何一个设备是按 照最早的规格制作的,则在一个单独的链路上的设备 限制在16个。在任何情况下,对一个特定的扫描器, 适配器式的设备的数量是受该扫描器的I/O逻辑机架 寻址能力的限制。如需了解详细规则,请看PLC-5设计 手册,出版物1785-6.21。

第4章 可编程序控制器的网络系统
三、典型应用

第4章 可编程序控制器的网络系统
三、 DH-485工业局域网络 DH-485是一个工业局域网络(LAN),设计来用于 工厂级的应用。DH-485能够连接多达32个设备,包括 SLC 500和MicroLogix 1000可编程序控制器、彩色视图系 统和个人计算机。DH-485链路的辅助SR-232-C(DF1协 议)链路连接起来形成DH-485网络。

第4章 可编程序控制器的网络系统
典型的结构

第4章 可编程序控制器的网络系统
技术参数
电缆类型 干线长度 传输额定波特率 介质访问方法 Belden 9842 最大4000ft 最大19.2k bit/s 令牌传递

第4章 可编程序控制器的网络系统
六、 交互网络的通信 ControlLogixTM 网关让用户的控制和信息数据有一个 通过A-B公司的控制网,以太网和DH+网络的网桥和路 由。 用户能将网关组态成: (1)从一个DH+网络的节点将信息发送到另一个DH+ 网络的节点 。 (2)从一个控制网网络的节点将信息发送到另一个 控制网网络的节点 。

第4章 可编程序控制器的网络系统
(3)从一个DH+网络的节点将信息发送到一个控制网 或以太网网络的节点 。 (4)从一个控制网网络的节点将信息发送到一个DH+ 或以太网网络的节点。 (5)从一个以太网网宏观节点将信息发送到一个DH+ 或控制网网络的节点 。

第4章 可编程序控制器的网络系统
ControlLogix网关的特点: ? 让用户将通信模块放在逻辑机架的任何一槽而不需要 处理器 ? 让用户根据增加网络模块的需要而扩展系统 ? 让用户决定网络模块的型式和数目,可以是全部相同 或不同的模块 ? 提供一个工业标准的网关解决方案 ? 集成以太网,控制网和DH+网络在一起

第4章 可编程序控制器的网络系统
典型配置

第5章 可编程序控制器系统的软件

编程练习
?

试编一程序,要求0:000,具有如下状态,且周 而复始进行: 时 间 高8位(每位) 低8位(每位) 第一个10s 全1 全0 第二个10s 全0 全1 第三个10s 全1 全1 第四个10s 全0 全0

编程软件RSLogix 5 的使用
?

拖放编辑功能可以很方便地将数据表元素从一个 文件移到另一个文件,将一个梯级从一个子程序 或项目文件中移到别处,或在一个项目文件内将 指令从一处移到另一处。

编程软件RSLogix 5 的使用
一、 RSLogix 5 编程软件综述
?

RSLogix 5是PLC-5处理器的梯形逻辑编程软件包,是 一个32位 的 Windows软件。工作在Microsoft?Windows 95 与 Windows NT 环 境 下 的 RSLogix 5 与 使 用 WINtelligent Logic 5、PLC-5 A.I. (Advanced Interface) 系列以及6200系列PLC-5编程软件生成的程序兼容。 RSLogix 5软件的功能包括:
? ?

自由格式的梯形图编辑器。 功能强大的项目校验器可以建立错误信息列表,以利于编 程人员浏览和修改。

编程软件RSLogix 5 的使用
?

RSLogix 5软件的功能包括:
? ?

?

? ?

?

搜索和替代可以快速改变地址或符号。 一个称为项目树(project tree)的界面使编程人员可以访问项 目包含的所有文件夹和文件。 一个自定义数据监视器(custom data monitor)用于将分开的 数据放在一起便于查看。 柱状图功能,以文本或时间图表形式监视数据表的位或字。 有着与梯形逻辑编辑器一样简单地进行拖放操作的基于 IEC 1131-3标准的SFC和结构文本编辑器。 用 于 存 取 或 恢 复 梯 形 逻 辑 图 部 分 的 PC5 库 , 在 任 意 Rockwell Software的PLC-5编程软件产品中通用。

编程软件RSLogix 5 的使用
二、RSLogix 5对系统的要求
1. 硬件要求
个人计算机至少有: ? 一个Intel Pentium、Pentium兼容的或486微处理器 ? 32 MB RAM (推荐64MB及5/60或5/80处理器) ? 12 MB可用硬盘空间(或更大,视应用程序需要而定) ? 一个3.5英寸、1.4 MB磁盘驱动器 ? 16色 VGA图形适配器,640 x 480或更高分辨率(最好256色 800 x 600) ? 任何与Windows兼容的定点设备

编程软件RSLogix 5 的使用
2. 软件要求
操作系统必须是Microsoft Windows 95或Microsoft Windows NT v.4.0 。 另 : 因 RSLogix 5 依 赖 RSLinx 与 A-B 处 理 器 通 信 , 所 以 RSLogix 5软件包括一个RSLinx Lite软件的拷贝。

编程软件RSLogix 5 的使用
三、离线编程
? ? ?

创建新工程或打开已有的工程文件 组态处理器;组态MCP;组态中断 增加框架或I/O(硬件配置)
(1)框架表格 (2)加入或再定义框架 (3)组态I/O适配器 (4)增加I/O模块 (5)组态I/O模块(离散量模块和模拟量模块)

编程软件RSLogix 5 的使用
组态通信通道 ? 创建程序文件和数据文件 ? 输入逻辑程序 ? 给逻辑程序加入文本说明 ? 校验逻辑程序 ? 查找与替换操作 ? 打印报告 ? 不同程序文件之间的互换
?

编程软件RSLogix 5 的使用
四、在线操作
? ? ?
– –

组态系统通信 下载/进入在线方式 监控数据文件
交叉应用 强制 用户数据监控表 柱状图 趋势图


– –

?

进行在线编辑

通信软件RSLinx 的使用
一、 RSLinx — 32位通信软件综述
RSLinx for Allen-Bradley Programmable Controllers(以下称RSLinx)是在Microsoft? Windows NT?、Windows 95?以及Windows 98? 操作系统下建 立工厂所有通信方案的工具。它为A-B的可编程序控制 器与各种Rockwell Software及A-B应用软件诸如 RSLogix5/500?、RSView32?、RSBatch?、 PLC-5? A.I.系列Ladder Logistics?以及PanelBuilder?等软件之 间建立通信联系。

通信软件RSLinx 的使用
二、RSLinx对系统的要求
与RSLogix 5对系统的要求一致

三、RSLinx的主要功能
1. 组态一个驱动程序。 2. 组态一个主题。先创建一个RSLinx项目(Project),再组态一个 主题(Topic)。 3. 拷贝一个DDE链到剪贴板。在建立好项目和主题后,即可将 DDE链拷贝到剪贴板,使RSLinx作为DDE服务器。 4.大部分Windows应用程序支持Paste Link操作,这一特点一般位 于Edit菜单。

仿真软件RSEmulate 5的使用及联机仿真
一、RSEmulate的综述
RSEmulate是一个排除故障与调试工具, RSEmulate 5 能够仿真Allen-Bradley PLC-5系列处理器的许多操作。该软件在 计算机上执行梯形图逻辑,更新程序的数据表,使编程人员大致 了解自己的程序下载到实际的处理器后将会发生什么情况。虽然 RSEmulate5对于校验程序的完整性非常有用,但我们仍不能完全 依赖它作程序的最后校验。处理器功能的变化(这种改变视处理器 的系列与修订版本号而定)决定了最后校验必须适应实际系统中的 处理器和I/O。

仿真软件RSEmulate 5的使用及联机仿真
二、RSEmulate 5具有以下主要性能:
?

?
?

可以连续扫描梯形逻辑,或一次扫描一个梯级, 或一次扫描一个程序 限定程序扫描一个特定的梯级块 在梯形逻辑中设置断点,在一个特定的事件(例 如当一个重要的数值超出范围时)发生时停止程 序执行,保持引发断点时的环境。

可编程序控制器系统的设计

第六章 可编程序控制器系统的设计
6.1 概述 一、 系统的分类 1、集中控制系统 定义:集中控制系统是一种分级的或星形的系统, 系统中整个过程的控制都集中到一个控制处理器中 。 例子:

第六章 可编程序控制器系统的设计

第六章 可编程序控制器系统的设计
2、分散控制系统 定义:分散控制是这样一种系统,系统的控制和管理 功能分散于整个工厂中,多个处理器一起完成控制和管 理功能,并通过网络或总线系统来进行通信。

第六章 可编程序控制器系统的设计

第六章 可编程序控制器系统的设计
设计可编程序控制器需要考虑的五条基本规则: 1.PLC将用于集中控制系统中还是分散控制系统中? 2.PLC将要控制的生产过程是何种类型? 3.PLC除用作生产过程外,还将控制什么过程? 4.对PLC系统的环境和安全有何要求? 5.明确PLC系统的流程和功能是什么? 二、 系统设计的基本流程

确定系统设计

选择硬件

放置系统硬件

确定寻址方式(针对PLC-5系列) 机架和组

选择通信

计划系统程序

选择中断子程序

第六章 可编程序控制器系统的设计
三、 系统设计开发过程

第六章 可编程序控制器系统的设计
1、功能说明 这个说明表就是控制系统的一个轮廓。用这个表来决定: ? 控制方式 ? 硬件选择、布局和寻址方式 ? 主控程序(MCP) ? 顺序功能流程图(SFC) ? 特殊编程手段 ? 梯形图逻辑要求

第六章 可编程序控制器系统的设计
2、细节分析 3、程序开发与调试 4、完成检查

第六章 可编程序控制器系统的设计
6.2 硬件配置
选择处理器

选择I/O模块

选择I/O框架

选择电源模块

选择处理器选项

硬件的选择
1. ?

?

?

选择处理器应考虑以下因素: I/O的要求 过程控制需要多少个I/O; 内存要求 控制过程需要多少内存; 通信要求 系统中需要何种通信口。

硬件的选择
例子:系统有2000个I/O点,50K内存,并 要求有以太网口。 1. PLC-5/40以上的处理器均能满足I/O点 (2048点); 2. PLC-5/60以上能满足内存的要求; 3. 根据通信口的要求只能选择PLC-5/80E才 能同时满足以上各要求。

硬件的选择
2. 选择适配器模块 1771-ASB RI/O 1771-ALX 扩展本地 1771-ACN(R) 控制网

硬件的选择
3. ? ? ? ?

I/O模块 1771系列I/O:模拟量、开关量、特殊; 1794系列I/O(Flex I/O):对于分散型的应 用是一种灵活的、低成本的模块化I/O系统; 1746系列I/O:提供多种接口选项,在经济 和空间上都很有效; 1791系列Block I/O:以小封装的形式提供 最低廉的离散I/O。

硬件的选择
4. 选择I/O框架 ? PLC-5系统 SLC-500系统 1771-A1B(4槽) 4槽 1771-A2B(8槽) 7槽 1771-A3B(12槽) 10槽 1771-A4B(16槽) 13槽 ? R I/O适配器框架 1771-AM1 、 1771-AM2

硬件的选择
5. 电源模块 ? 电源 模块的输入电压; ? 计算I/O模块全部背板电流值; ? 未来I/O模块的背板电流值; ? 电源模块的空间

硬件的选择
6. 处理器选项 ? 如何备份处理器内存; ? 当发生错误或掉电时应该做什么; ? 用C 、 BASIC或汇编语言编程; ? 考虑是否需要协处理器模块,便于执行: 复杂的运算、替代控制编程、数据记录、 趋势、协议转换等。

硬件的选择
7. 系统集成产品: 应用的特殊要求; 8. 编程软件: 平台、媒体类型; 9. 选择操作员接口: RSView32、VersaView、PanelView等。

第六章 可编程序控制器系统的设计
6.3 程序之筹划 在计划和开发用户应用程序时,可以采用第一节中 所述的程序开发方法,使用功能说明表来确定编程方 法。这种说明表是用户应用的一个概念性的映象用于 决定在采用主控程序(MCP)、顺序功能流程图(SFC) 和梯形图逻辑方面的要求。

程序之筹划
?

MCP 在增强型的处理器中有多达16个有效 控制程序,这每一个程序就叫做一个主 控程序。可以按用户过程中每种特定的 机器或功能来确定一个MCP,这样就可 以将SFC和梯形图逻辑分开,把用户过程 更好地结构化,并易于故障的排除。

程序之筹划
?

SFC 一种顺序控制语言,可以对一个过程 进行控制,并显示该过程的状态。它将 用户应用的逻辑分成步和转换条件来代 替一个长的梯形图程序,这些步和转换 条件的显示使用户可以看到在某个给定 时间中机器过程处于什么状态。

程序之筹划
中断子程序 1)上电子程序: 对一个受控的起动步骤建立的一个独立文件; 2)可选定时中断STI: 建立一个独立的程序文件并指定中断时间间隔; 3)事件驱动的中断PII: 当一个事件发生时,处理器输入中断; 4)故障子程序: 对一个主要故障的响应建立的一个独立的程序。
?

热备系统及其编程
?

PLC-5热备系统的基本概念 ? 热备通讯模块1785-BCM的硬件组件 ? PLC-5热备系统的安装 ? 热备扩展模块1785-BEM ? 热备系统的操作 ? 热备系统的切换考虑 ? 热备系统的编程技术 ? 热备系统的错误诊断

PLC-5热备系统的基本概念
典型的PLC-5热备系统的配置 – PLC-5处理器模块 – 1785-BCM模块 – 1785-BEM模块(需要时采用) – 电源 – 本地框架
?

PLC-5热备系统的基本概念

PLC-5热备系统的基本概念

PLC-5热备系统的基本概念
? –

PLC-5 热备的工作 数据传输: 一般,主系统将远程I/O数据和数据表送至从系统, 以便系统切换到从系统时,使从系统具有与主系统一 样的数据。其中: (1)远程I/O数据自动地通过HSSL传送; (2)其它数据则通过编程块传送指令进行传送 传送的示意图见下页:

PLC-5热备系统的基本概念

PLC-5热备系统的基本概念

?

切换(Switchover): 一旦主处理器出错,将在最大50ms内切换到从处 理器。当切换发生时,远程I/O上的数据将保持在切换 时的最后状态直至在从处理器的控制下重新得到数据。 应注意:主从PLC-5的程序扫描时有可能不同步,在编 程时应加以考虑。

PLC-5热备系统的基本概念
?

1785-BCM 的作用: 作为热备系统的组成部分,1785-BCM可以在两个 PLC-5处理器建立高速通讯,并允许从处理器保证实现 过程控制。另外1785-BCM还提供了: (1)将数据表的数据从主处理器高速传送给从处理器 ,使从处理器的数据表数据是主处理器的拷贝; (2)一个4K字的数据缓冲器用于数据表数据; (3)交换主处理器和从处理器的状态信息; (4)


相关文章:
PLC实验指导书
PLC实验指导书 暂无评价 62页 2下载券 东北大学罗克韦尔自动化... 514页 免费...张翼成 广东石油化工学院 罗克韦尔自动化实验室 2013 年 5 月 1 目录 目录.....
罗克韦尔实习报告
罗克韦尔自动化实训实验室 实验室简介 Rockwell Automation Northeastern University Qinhuangdao HOTT Lab 罗克韦尔自动化实训实验室罗克韦尔自动化, 东北大学东北大学...
自动控制系统课程设计
32 2 课程设计报告 2012-7-1 单闭环系统的 PID 调节 第一章 摘要 1、课程设计地点:东北大学罗克韦尔自动化实验室 2、实验室简介:1999 年 9 月,东北大学与...
东北大学研究生导师一览(1)
电子邮箱:jingyuanwei@ise.neu.edu.cn 李鸿儒,男,1968 年 3 月出生,现任自动化研究所教授,东北大学罗克韦尔自动化实验室主任。1991 年毕业于东北工学院自动化专业...
罗克韦尔实验指导
东北师大附中理科学霸高...1/2 相关文档推荐 罗克韦尔自动化实验室综... 90页...东北大学罗克韦尔自动化... 514页 免费罗​克​韦​尔​实​验​指...
自动化专业生产实习报告
东大秦皇岛分校北戴河校区罗克韦尔实训实验室 罗克韦尔自动化——东北大学秦皇岛分校实训实验室于 2004 年 10 月在东大秦皇岛分校 北戴河校区落成. 它是罗克韦尔自动化...
认识实习实验指导书
东北大学罗克韦尔自动化... 514页 免费认​识​实​习​实​验​指...罗克韦尔实验室 编写 罗克韦尔实验室 1 第一章 认识实习目的任务及要求一、 ...
罗克韦尔培训
东北大学罗克韦尔自动化... 514页 免费 RSLogix5000 软件应用 28页 1下载券 罗克韦尔...ControlLogix 基础培训手册 罗克韦尔自动化 自动控制及信息产品集团 中国.北京 ...
大学生职业规划模
学校现有实验室 43 个,其中,2005 年 6 月 1 日在该校北戴河校区建成“罗克韦尔自动化东北大学秦皇岛实训实验 室”,该实验室罗克韦尔自动化公司在中国北方地区...
生产实习报告
三、实习内容及企业概况 1、罗克韦尔实验室 1)实验室简介 罗克韦尔自动化-东北大学秦皇岛分校动手实验室于 2004 年 10 月在东北大学 秦皇岛分校北戴河校区建成。该...
更多相关标签:
罗克韦尔自动化实验室 | 罗克韦尔自动化 | 罗克韦尔自动化公司 | 罗克韦尔自动化官网 | 罗克韦尔自动化待遇 | 上海罗克韦尔自动化 | 罗克韦尔自动化招聘 | 罗克韦尔自动化面试 |