第8章 通信及网络 8.1 通信及网络概述 8.2 通信实现 8.3 网络通信 8.4 自由口通信
8.1 通信及网络概述 8.1.1 通信方式 8.1.2 网络概述 8.1.3 S7-200通信及网络 返回本章首页
8.1.1 通信方式 1. 基本通信方式 2. 异步串行通信 3. 通信接口
1. 基本通信方式 (1)并行通信 (2)串行通信 (3)串行通信分类
(1)并行通信 并行通信方式一般发生在可编程序控制器的内部各元件之间、主机与扩展模块或近距离智能模板的处理器之间。 并行传送时,一个数据的所有位同时传送,因此,每个数据位都需要一条单独的传输线,信息有多少二进制位组成就需要多少条传输线,如下图8.1所示。
图8.1 并行通信
(2)串行通信 串行通信多用于可编程序控制器与计算机之间,多台可编程序控制器之间的数据传送。传送时,数据的各个不同位分时使用同一条传输线,从低位开始一位接一位按顺序传送,数据有多少位就需要传送多少次,如下图8.2所示。
(3)串行通信分类 按时钟 串行通信按时钟可分为同步传送和异步传送两种方式。 异步传送:允许传输线上的各个部件有各自的时钟,在各部件之间进行通信时没有统一的时间标准,相邻两个字符传送数据之间的停顿时间长短是不一样的,它是靠发送信息时同时发出字符的开始和结束标志信号来实现的,如图8.4所示。 按方向 串行通信按信息在设备间的传送方向又为分单工、半双工和全双工三种方式。分别如图8.3中的(a)、(b)和(c)所示。
图8.3 单工、半双工和双工
图8.4 异步串行传送数据格式
2. 异步串行通信 (1)传送字符数据格式 (2)波特率
3. 通信接口 (1)RS232接口 (2)RS485接口 (3)RS422接口 返回本节
8.1.2 网络概述 网络结构概述 (1)简单网络 (2)多级网络 2. 通信协议 (1)通用协议 (2)公司专用协议
1. 网络结构概述 (1)简单网络 多台设备通过传输线相连,可以实现多设备间的通信,就形成网络结构。下图8.5就是一种最简单的网络结构,它由单主设备和多个从设备构成。
(2)多级网络 现代大型工业企业中,一般采用多级网络的形式,可编程序控制器制造商经常用生产金字塔结构来描述其产品可实现的功能。这种金字塔结构的特点是:上层负责生产管理,底层负责现场检测与控制,中间层负责生产过程的监控与优化。 国际标准化组织(ISO)对企业自动化系统确立了初步的模型,如图8.6所示。
图8.6 ISO企业自动化系统模型
2. 通信协议 (1)通用协议 国际标准化组织ISO(International Standard Organization)于1978年提出了开放系统互联OSI(Open Systems Interconnection)的模型,它所用的通信协议一般为7层,如下图8.7所示。
图8.7 通用协议模型
(2)公司专用协议 低层子网和中层子网一般采用公司专用协议,尤其是最底层子网,由于传送的是过程数据及控制命令,这种信息较短,但实时性要求高。公司专用协议的层次一般只有物理层、链路层及应用层,而省略了通用协议所必须的其他层,信息传送速率快。 返回本节
8.1.3 S7-200通信及网络 1. 字符数据格式 2. 网络层次结构 3. 通信类型及协议 4. 通信设备
1. 字符数据格式 (1)10位字符数据 传送数据由1个起始位、8个数据位、无校验位、一个停止位组成。传送速率一般为9600波特。 (2)11位字符数据 传送数据由1个起始位、8个数据位、1个偶校验位、一个停止位组成。传送速率一般为9600波特或19200波特。
2. 网络层次结构 西门子公司的生产金字塔由4级组成,由下到上依次是:过程测量与控制级、过程监控级、工厂与过程管理级、公司管理级。S7系列的网络结构如右图8.8所示。
图8.8 西门子生产金字塔及网络
3. 通信类型及协议 (1)通用协议 (2)公司专用协议 PPI协议 MPI协议 Profibus协议 自由口协议 (3)通信类型
可编程序控制器常见的有以下类型: 把计算机或编程器作为主站、把操作员界面作为主站和把PLC作为主站等类型,这几种类型又各有两种连接:单主站和多主站。
图8.9 单主站结构网络 图8.10 多主站结构网络
4. 通信设备 (1)通信口 S7-200 CPU主机上的通信口是符合欧洲标准EN 50170中Profibus标准的RS-485兼容9针D型接口。接口引脚如图8.11所示,端口0或端口1的引脚与Profibus的名称对应关系如表8.1所示。
图8.11 RS-485引脚
(2)网络连接器 网络连接器可以用来把多个设备很容易地连接到网络中。网络连接器有两种类型:一种是仅提供连接到主机的接口,另一种增加了一个编程接口。带有编程口的连接器可以把编程器或操作员面板直接增加到网络中,编程口传递主机信号的同时,为这些设备提供电源,而不用另加电源。
(3)通信电缆 网络电缆 PC/PPI电缆 表8.2 各开关与参数关系对应表
(4)网络中继器 网络中继器在Profibus可以用来延长网络的距离、允许给网络加入设备、隔离不同网络段,每个中继器为网络段提供偏置和终端匹配。 每个网络中最多可以有9个中继器,每个中继器最多可再增加32个设备。
用调制解调器可以实现计算机或编程器与PLC主机之间的远距离通信。以11位调制解调器为例,通信连接如下图8.12所示。 (5)调制解调器 用调制解调器可以实现计算机或编程器与PLC主机之间的远距离通信。以11位调制解调器为例,通信连接如下图8.12所示。 返回本节
8.2 通信实现 8.2.1 确立通信方案 8.2.2 参数组态 返回本章首页
8.2.1 确立通信方案 包括根据实际通信需要选择单主站或多主站,同时确定各站的编号;选择实现通信的硬件,如选择用PC/PPI电缆,还是用CP卡、MPI卡、EM 277通信模块或调制解调器等。 这几种通信硬件的性能如表8.3所示。 返回本节
8.2.2 参数组态 1. 通信设置 2. 安装或删除通信接口 3. 参数设置
通信设置 图8.13 通信设置状态
图8.14 通信设置
2. 安装或删除通信接口 (1)安装接口 (2)删除接口 图8.15 安装/删除
3. 参数设置 在图7.14所示的对话框,单击Properties按钮,将弹出参数设置对话框,如图8.16所示。其中有两个选项卡:PPI选项卡和Local Connection选项卡。 图8.16 参数设置(PPI选项卡) 返回本节
8.3 网络通信 8.3.1 控制寄存器和传送数据表 8.3.2 网络指令 8.3.3 应用实例 返回本章首页
8.3.1 控制寄存器和传送数据表 1. 控制寄存器 将特殊标志寄存器中的SMB30和SMB130的低2位置为2#10,其他位为0,即SMB30和SMB130的值为16#2,则可以控制将S7-200 CPU设置为PPI主站模式。 2. 传送数据表 (1)数据表格式 执行网络读写指令时,PPI主站与从站之间的数据以数据表的格式传送。传送数据表的程式描述如表8.4所示。
表8.4 传送数据表格式
(2)状态字节 传送数据表中的第一个字节为状态字节,各位及其的含义如下: E1、E2、E3、E4错误编码。如果执行指令后E位为1,则由这4位返回一个错误码。这4位组成的错误编码及含义如表8.5所示。
表8.5 错误编码 返回本节
8.3.2 网络指令 网络指令有两条:NETR和NETW。 1. NETR指令 8.3.2 网络指令 网络指令有两条:NETR和NETW。 1. NETR指令 NETR,网络读指令。使能输入有效时,指令初始化通信操作,通过通信端口PORT从远程设备上接收数据并形成数据表TBL。 NETR指令最多可从远程站点上读16个字节的信息。 指令格式: NETR TBL, PORT 例: NETR VB200, 0
NETW网络读指令。使能输入有效时,指令初始化通信操作,通过端口PORT将数据表TBL中的数据发送到从远程设备。 指令格式:NETW TBL, PORT 使能流输出ENO为0的出错条件为:SM4.3(运行时间),0006(间接寻址)。 返回本节
8.3.3 应用实例 有一简单网络,结构如下图8.17所示。其中TD200为主站,在RUN模式下,CPU 224在用户程序中允许PPI主站模式,可以利用NETR和NETW指令来不断读写两个CPU 221模块中的数据。
操作要求: 站4要读写两个远程站(站2和站3)的状态字节和计数值(分别放在VB100和VW101中)。如果某个远程站中的计数值达到200,站4将发生一定动作,并将该远程站的计数值清0,重新计数。 CPU 224通信端口号为0,从VB200开始设置接收和发送缓冲区。接收缓冲区从VB200开始,发送缓冲区从VB250开始,内容如表8.6所示。该网络通信用户程序如图8.18所示。
表8.6 缓冲区设置
图8.18 网络程序实例(1)
图8.18 网络程序实例(2) 返回本节
8.4 自由口通信 8.4.1 相关寄存器及标志 8.4.2 自由口指令 8.4.3 应用实例 返回本章首页
8.4.1 相关寄存器及标志 1. 控制寄存器 2. 特殊标志位及中断 3. 特殊存储器字节
1. 控制寄存器 SMB30控制和设置通信端口0,如果PLC主机上有通信端口1,则用SMB130来进行控制和设置。SMB30和SMB130的各位及其的含义如下: (1)PP位:奇偶选择 (2)D位:有效位数 (3)BBB位:自由口波特率 (4)MM位:协议选择
2. 特殊标志位及中断 中断 接收中断:中断事件号为8(口0)和25(口1)。 发送完成中断:中断事件号为9(口0)和26(口1)。 接收完成中断:中断事件号为23(口0)和24(口1)。 特殊标志位 SM4.5和SM4.6:分别用来表示口0和口1发送空闲状态
3. 特殊存储器字节 接收信息时用到一系列特殊功能存储器。对端口0用SMB86到SMB94;对端口1用SMB186到SMB194。各字节及内容描述如下表8.7所示。 返回本节
8.4.2 自由口指令 1. XMT指令 XMT,发送指令。使能输入有效时,指令初始化通信操作,通过通信端口PORT将数据表TBL中的数据发送到远程设备。 发送缓冲区(数据表)TBL的格式如表8.8所示。
RCV,接收指令。使能输入有效时,指令初始化通信操作,通过通信端口PORT从远程设备上接收数据并放到缓冲区(数据表)TBL。 返回本节
8.4.3 应用实例 1. 控制要求 本程序实现的功能是,一台CPU 224作为本地PLC,用另一台CPU 224作为远程PLC,本地PLC接收来自远程PLC的20个字符,接收完成后,信息又发回对方。 要求有一外部脉冲控制接收任务的开始,并且任务完成后用显示灯显示。 2. 参数设置 自由口通信模式。 通信协议为:波特率9600,无奇偶校验,每字符8位。 接收和发送用同一缓冲区,首地址为VB100。 不设立超时时间。
3. 程序 主程序如右图8.19所示。实现的功能是初始化通信口及缓冲区,建立中断联系,并开放全局中断。中断程序INT_0,启动发送指令。如图8.20所示。
图8.19 自由口通信例(主程序)
图8.20 自由口通信例(中断程序)
中断程序INT_1,发结束时输出。如图8.21所示。 图8.21 自由口通信例(中断程序1) 返回本节
THANK YOU VERY MUCH ! 本章到此结束, 谢谢您的光临! 结束放映 返回本章首页