电气控制及PLC技术 电气工程学院 自动化系 杨霞 2018年1月
知识点: 学习重点 : 6 PLC通信与网络 掌握S7-200的通信方式及自由口通信 网络的概念以及通信设备的使用 网络的概念以及通信设备的使用 S7-200通信实现 学习重点 : 本讲是学习PLC通信与网络。重点掌握: 1 掌握S7-200的通信方式及自由口通信 2 S7-200通信实现
6 PLC通信与网络 6.1 通信及网络概述 一、通信方式 二、网络概述 三、S7-200通信及网络
一、通信方式 1. 基本通信方式 2. 异步串行通信 3. 通信接口 (1)并行通信 (2)串行通信 (3)串行通信分类 异步方式又称为起止方式。它在发送字符时,要先发送起始位,然后才是字符本身,最后是停止位。字符之后还可以加入奇偶校验位。 异步传送较为简单,但要增加传送位,将影响传输速率。异步传送是靠起始位和波特率来保持同步的。PLC网络多采用异步方式传送数据。 波特率:在串行通信中,数据是按位进行传送的,因此传送速率用每秒传送格位的数目表示,称为波特率。 1波特=1bps(位/秒) 波特率与时钟频率有关,时钟频率越高,波特率越大。 (1)RS232接口 (2)RS485接口 (3)RS422接口
图 并行通信
串行通信数据的传送是一位一位分时进行的! 图 串 行 通 信
图 异步串行传送
图 单工、半双工和双工
二、网络概述 1.网络结构概述 (1)简单网络 (2)多级网络 2. 通信协议 (1)通用协议 (2)公司专用协议
1. 网络结构概述 (1)简单网络 图 简单网络
(2)多级网络 图 ISO企业自动化系统模型
2. 通信协议 (1)通用协议 图 通用协议模型
(2)公司专用协议 低层子网和中层子网一般采用公司专用协议,尤其是最底层子网,由于传送的是过程数据及控制命令,这种信息较短,但实时性要求高。公司专用协议的层次一般只有物理层、链路层及应用层,而省略了通用协议所必须的其他层,信息传送速率快。 要实现PLC的联网控制,就必须遵循一些网络协议。不同公司的机型,通信软件各不相同。软件一般分为两类,一类是系统编程软件,用以实现计算机编程,并把程序下载到PLC,且监控PLC工作状态。
三、S7-200通信及网络 1. 字符数据格式 2. 网络层次结构 3. 通信类型及协议分类 4. 通信设备
1. 字符数据格式 (1)10位字符数据 (2)11位字符数据 传送数据由1个起始位、8个数据位、无校验位、一个停止位组成。传送速率一般为9600波特。 (2)11位字符数据 传送数据由1个起始位、8个数据位、1个偶校验位、一个停止位组成。传送速率一般为9600波特或19200波特。
2. 网络层次结构 图 西门子生产金字塔
图 SIEMENS公司S7系列PLC网络层次结构 管理层 计算机集合 工业以太网(Ethernet) S7-300 S7-200 及远程I/O 智能模块 AS-1总线 现场设备 现场总线 多点MPI网 图 SIEMENS公司S7系列PLC网络层次结构
3. 通信类型及协议分类 两种连接方式:单主站和多主站
S7系列的通信协议 (1)PPI协议 (2)MPI协议 PPI(Point-to-point-Interface)协议,即点对点接口,是一个主/从协议。协议规定主站向从站发出申请,从站进行响应。从站不能初始化信息。但当主站发出申请或查询时,从站才对其响应。 (2)MPI协议 MPI(Multi-Point Interface)即多点接口,可以是主/主协议或主/从协议,协议如何操作有赖于设备的类型。
(3)PROFIBUS协议 PROFIBUS协议用于分布式I/O设备(远程I/O)的高速通信。该协议的网络使用RS-485标准双绞线,适合多段、远距离通信。PROFIBUS网络常有一个主站和几个I/O从站。主站初始化网络并核对网络上的从站设备和配置中的匹配情况。如果网络中有第三个主站,则它只能访问第一个主站的从站。 (4)自由口协议 在自由口模式下,主机只有在RUN方式时,用户才可以用相关的通信指令编写用户控制通信口的程序。当主机处于STOP方式时,自由口通信被禁止,通信口自动切换到正常的PPI协议操作。
4. 通信设备 (1)通信口 S7-200 CPU主机上的通信口是符合欧洲标准EN 50170中的PRO-FIBUS标准的RS-485兼容9针D型连接器。
(2)网络连接器 网络连接器可以用来把多个设备很容易地连接到网络中。 网络连接器有两种类型:一种是仅提供连接到主机的接口,另一种增加了一个编程接口。 带有编程口的连接器可以把编程器或操作员面板直接增加到网络中,编程口传递主机信号的同时,为这些设备提供电源,而不用另加电源。 网络连接器可以用来把多个设备连接到网络中。网络连接器有两种类型:一种仅提供连接到主机的接口;另一种则增加了一个编程接口。两种连接器都有两组螺丝端子,可以连接网络的输入和输出。
(3)通信电缆 网络电缆 和PC/PPI电缆 ( 5个DIP开关与PC/PPI通信方式 ) (4)网络中继器 网络中继器在Profibus可以用来延长网络的距离、允许给网络加入设备、隔离不同网络段,每个中继器为网络段提供偏置和终端匹配。 每个网络中最多可以有9个中继器,每个中继器最多可再增加32个设备。
(5)调制解调器 用调制解调器可以实现计算机或编程器与PLC主机之间的远距离通信。以11位调制解调器为例 网络中继器在PROFIBUS网络中,可以用来延长网络的距离,允许给网络加入设备,并且提供一个隔离不同网络段的方法。每个网络中最多有9个中继器,每个中继器最多可再增加32个设备。
6.2 通信实现 一、确立通信方案 二、参数组态
一、确立通信方案 包括根据实际通信需要选择单主站或多主站,同时确定各站的编号;选择实现通信的硬件,如选择用PC/PPI电缆,还是用CP卡、MPI卡、EM 277通信模块或调制解调器等。
二、参数组态 1. 通信设置 2. 安装或删除通信接口 3. 参数设置
6.3 网络通信 一、 控制寄存器和传送数据表 二、 网络指令 三、 应用实例
一、 控制寄存器和传送数据表 1. 控制寄存器 将特殊标志寄存器中的SMB30和SMB130的低2位置为2#10,其他位为0,即SMB30和SMB130的值为16#2,则可以控制将S7-200 CPU设置为PPI主站模式。 2. 传送数据表 (1)数据表格式 执行网络读写指令时,PPI主站与从站之间的数据以数据表的格式传送。传送数据表的程式描述如表所示。
D表示操作是否完成,D=1表示完成,D=0表示末完成; A表示操作是否排队,A=1表示排队有效,A=0表示排队无效; E表示操作返回是否有错误,E=1表示有错误,E=0表示无误。 E1、E2、E3、E4错误编码,执行指令后E=1时,则由这4位返回一个错误码。 图 网络读写数据表
表 传送数据表格式
二、 网络指令 网络指令有两条:NETR和NETW。 1. NETR指令 二、 网络指令 网络指令有两条:NETR和NETW。 1. NETR指令 NETR,网络读指令。使能输入有效时,指令初始化通信操作,通过通信端口PORT从远程设备上接收数据并形成数据表TBL。 NETR指令最多可从远程站点上读16个字节的信息。 指令格式:NETR TBL, PORT 例:NETR VB200, 0 2. NETW 指令 NETW网络读指令。使能输入有效时,指令初始化通信操作,通过端口PORT将数据表TBL中的数据发送到从远程设备。 NETW指令最多可向远程站点上写16个字节的信息。 指令格式:NETW TBL, PORT 使能流输出ENO为0的出错条件为:SM4.3(运行时间),0006(间接寻址)。
网络运行指令
三、 应用实例 有一简单网络,结构如下图所示。其中TD200为主站,在RUN模式下,CPU 224在用户程序中允许PPI主站模式,可以利用NETR和NETW指令来不断读写两个CPU 221模块中的数据。 操作要求: 站4要读写两个远程站(站2和站3)的状态字节和计数值(分别放在VB100和VW101中)。如果某个远程站中的计数值达到200,站4将发生一定动作,并将该远程站的计数值清0,重新计数。 CPU 224通信端口号为0,从VB200开始设置接收和发送缓冲区。接收缓冲区从VB200开始,发送缓冲区从VB250开始。
6.4 自由口通信 一、 相关寄存器及标志 二、 自由口指令 三、 应用实例
一、 相关寄存器及标志 1. 控制寄存器 2. 特殊标志位及中断 3. 特殊存储器字节
1. 控制寄存器 2. 特殊标志位及中断 SMB30控制和设置通信端口0,如果PLC主机上有通信端口1,则用SMB130来进行控制和设置。 SM4.5和SM4.6:分别用来表示口0和口1发送空闲状态。 中断 接收中断:中断事件号为8(口0)和25(口1)。 发送完成中断:中断事件号为9(口0)和26(口1)。 接收完成中断:中断事件号为23(口0)和24(口1)。
3. 特殊存储器字节 接收信息时用到一系列特殊功能存储器。对端口0用SMB86到SMB94;对端口1用SMB186到SMB194。
二、 自由口指令 1. XMT指令 XMT,发送指令。使能输入有效时,指令初始化通信操作,通过通信端口PORT将数据表TBL中的数据发送到远程设备。 发送缓冲区(数据表) 2. RCV 指令 RCV,接收指令。使能输入有效时,指令初始化通信操作,通过通信端口PORT从远程设备上接收数据并放到缓冲区(数据表)TBL。
三、 应用实例 1. 控制要求 本程序实现的功能是,一台CPU 224作为本地PLC,用另一台CPU 224作为远程PLC,本地PLC接收来自远程PLC的20个字符,接收完成后,信息又发回对方。 要求有一外部脉冲控制接收任务的开始,并且任务完成后用显示灯显示。 2. 参数设置 自由口通信模式。 通信协议为:波特率9600,无奇偶校验,每字符8位。 接收和发送用同一缓冲区,首地址为VB100。 不设立超时时间。
3. 程序 主 程 序
中断程序
图 利用PC/PPI电缆和几个S7-200 CPU通信 个人计算机PC与S7-200 CPU之间的联网通信 1、链接 2、PC/PPI网络 图 利用PC/PPI电缆和几个S7-200 CPU通信
3.多主机网络(MPI网络) 图 利用MPI或CP卡和S7-200 CPU通信 (1)STEP7-Micro/WIN32(在0号站)可以监视2号站的状态,同时TD 200(5号和1号站)和CPU 224模块(3号站和4号站)可以实现通信。
(2)两个CPU 224模块可以通过网络指令NETR和NETW相互发送信息。 (3)3号站可以从2号站(CPU 222)和4号站(CPU 224)读写数据。 (4)4号站可以从2号站(CPU 222)和3号站(CPU 224)读写数据。
S7-200系列PLC自由口通信 (一)相关的特殊功能寄存器 1.自由端口的初始化 SMB30控制和设置通信端口0,如果PLC主机上有通信端口1,则用SMB130来进行控制和设置。SMB30和SMB130的对应数据位功能相同,每位的含义如下: P D B M
(1)PP位:奇偶选择 (2)D位:有效位数 (3)BBB位:自由口波特率 (4)MM位:协议选择 00和10表示无奇偶校验;01表示奇校验;11表示偶校验。 (2)D位:有效位数 0表示每个字符有效数据位为8位;1表示每个字符有效数据位为7位。 (3)BBB位:自由口波特率 000表示38.4kb/s;001表示19.2 kb/s;010表示9.6 kb/s;011表示4.8 kb/s;100表示2.4 kb/s;101表示1.2 kb/s;110表示600 b/s;111表示300 b/s。 (4)MM位:协议选择 00表示点到点接口PPI协议从站模式;01表示自由口协议;10表示点到点接口PPI协议主站模式;11表示保留(默认设置为PPI从站模式)。
2.特殊标志位及中断事件 (1)特殊标志位 (2)中断事件 3.特殊存储器字节 SM4.5和SM4.6分别表示口0和口1处于发送空闲状态。 字符接收中断:中断事件8(端口0)和25(端口1); 发送完成中断:中断事件9(端口0)和26(端口1); 接收完成中断:中断事件23(端口0)和24(端口1)。 3.特殊存储器字节 接收信息时用到一系列特殊功能存储器。端口0用SMB86到SMB94;端口1用SMB186到SMB194。
N=1 表示用户通过禁止命令结束接收信息操作。 R=1 表示因输入参数错误或缺少起始结束条件引起的接收信息结束。 E=1 表示接收到字符。 (1)接收信息状态字节 状态字节SMB86和SMB186的位数据含义: N R E T C P N=1 表示用户通过禁止命令结束接收信息操作。 R=1 表示因输入参数错误或缺少起始结束条件引起的接收信息结束。 E=1 表示接收到字符。 T=1 表示超时,接收信息结束。 C=1 表示字符数超长,接收信息结束。 P=1 表示奇偶校验错误,接收信息结束。
接收信息控制字节SMB97和SMB187主要用于定义和识别信息的判据,各数据位的含义: (2)接收信息控制字节 接收信息控制字节SMB97和SMB187主要用于定义和识别信息的判据,各数据位的含义: EN SC EC IL C/M TMR BK EN 表示接收允许。=0,禁止接收信息;=1,允许接收信息。 SC 表示是否使用SMB88或SMB188的值检测起始信息。=0忽略;=1,使用。 EC 表示是否使用SMB89或SMB189的值检测结束信息。=0忽略;=1,使用。 IL 表示是否使用SMB90或SMB190的值检测空闲信息。=0忽略;=1,使用。
C/M 表示定时器定时性质。=0,内部字符定时器;=1,信息定时器。 TMR 表示是否使用SMB92或SMB192的值终止接收。=0忽略;=1,使用。 BK 表示是否使用中断条件来检测起始信息。=0忽略;=1,使用。 通过对接收控制字节各个位的设置,可以实现多种形式的自由口接收通信。
(二)自由口发送接收指令 LAB STL 功能描述 XMT TABLE,PORT 发送指令XMT,输入使能端有效时,激活发送的数据缓冲区(TABLE)中的数据。通过通信端口PORT将缓冲区(TABLE)的数据发送出去 RCV TABLE,PORT 接收指令RCV,输入使能端有效时,激活初始化或结束接受信息服务。通过指定端口(PORT)接受从远程设备上传送来的数据,并放到缓冲区(TABLE) ???? XMT EN ENO TBL PORT ???? RVC EN ENO TBL PORT
学习要求 小结:通过本讲的学习,重点掌握通过本章的学习,掌握S7-200的通信方式及自由口通信;了解网络的概念以及通信设备的使用 。