《{电气工程管理}工厂电气与可编程序控制器应用技术yy9》由会员分享,可在线阅读,更多相关《{电气工程管理}工厂电气与可编程序控制器应用技术yy9(40页珍藏版)》请在金锄头文库上搜索。
1、第9章 PLC的网络通讯,9.1 PLC网络通讯概述 9.2 S7200系列PLC与计算机设备的通信 9.3 S7-200系列PLC自由口通信 9.4 网络通信运行,9.1.1 网络通讯的基本概念,1.网络结构 (1)链接结构 链接结构按信息在设备间的传送方向可分 为单工通信、半双工通信、全双工通信三种,(2)联网结构,2. 并行通信与串行通信,并行通信是指所传送数据的各位同时发送或接收 .特点是数据传送速度快。但是传输线的根数多,成本高,一般用于近距离的数据传送。 串行通信是指所传送的数据按顺序一位一位地发送或接收远的场合特点是通信线路简单,需要的信号线少,最少的只需要两根线(双绞线),故成
2、本低,但是传送速度比并行通信慢,适用于距离较远的场合,3传输速率,数据在网络中的传输速度称为波特率,波特率测量在某一特定时间内传输的数据量。它用每秒传送的二进制位数表示,其符号为bits或bps。通常以千波特(kbps)、兆波特(Mbps)为单位。,9.1.2 网络配置,1硬件配置 (1)通信接口 RS232接口 RS422接口 RS485接口 (2)通信介质 数据传送的介质主要有双绞线、同轴电缆和光 缆,如果传送距离较远,还可以利用电话线,其他介质如电磁波、红外线、微波等应用较少。,2软件配置 软件一般分为两类,一类是系统编程软件,用以实现计算机编程,并把程序下载到PLC,且监控PLC的工作
3、状态。如西门子公司的STEP7-MicroWIN编程软件。另一类为应用软件,各用户根据不同的开发环境和具体要求,用不同的编程语言编写的通信程序。,92 S7200系列PLC与计算 机设备的通信,9.2.1 S7-200系列CPU的通信性能 1.SIEMENS公司的网络层次结 2.S7-200系列的通信协议 3.通信设备 (1)通信端口 (2)网络连接器 (3)通信电缆,(1)PPI协议(点对点接口协议) PPI(Point-to-PointInterface)协议是SIEMENS公司专门为S7-200系列PLC开发的通信协议,是主/从协议,即主站可对网络中的其他设备发出初始化请求,从站只是响应
4、来自主站的初始化请求,不能对网络中的其他设备发出初始化请求。 (2)自由口协议 自由口协议是指通过编写用户程序来控制CPU通信端口的操作模式,可以用自定义的通信协议连接多种智能设备。,PLC与计算机通信示意图 (a)计算机与PLC的连接 (b)PC/PPI电缆上的DIP开关 (c)DIP开关的设置,922 个人计算机与S7-200CPU之间的联网通信,1建立通信方案 (1)主站与从站之间的连接形式:单主站还是多主站,可通过软件组态进行设置 (2)站号:站号是网络中各个站的编号,网络中的每个设备(PC,PLC,HMI等)都要分配惟一的编号(站地址)。 2参数组态 在自动控制领域中指控制系统硬、软
5、件的配置过程。在编程软件STEP 7 MicroWIN32中,对通信硬件参数进行设置,即通信参数组态,9.3 S7-200系列PLC自由口通信,9.3.1 相关的特殊功能寄存器 1.自由端口的初始化 2.自由口通信时的中断事件,(1)中断标志位 SM45和SM46分别表示H O和H I处于发送空闲状态。 (2)中断事件 在S7-200的中断事件中,与自由口通信有关的中断事 件如下。 中断事件8:通信端口0单字符接收中断。 中断事件9:通信端口0发送完成中断。 中断事件23:通信端口0接收完成中断。 中断事件25:通信端口1单字符接收中断。 中断事件26:通信端口1发送完成中断。 中断事件24:
6、通信端口1接收完成中断。,9.3.2.自由口通信指令,1.数据接收指令RCV 在梯形图中,数据接收指令以功能框的形式表示,指令名称为RCV。在语句表中,数据接收指令的指令格式为:RCV TBL,PORT,可以通过中断的方式接收数据,在接收字符数据时,有如下两种中断事件产生。 (1)利用字符中断控制接收数据 (2)利用接收结束中断控制接收数据 注意:如果出现超时和奇偶校验错误,则自 动结束接收过程。,2数据发送指令XMT 在梯形图中,数据发送指令以功能框的形式编程,指令的名称为XMT。在语句表中,数据接收指令的指令格式为:XMT TABLE,PORT。,9.3.3自由口通信的应用举例,如图所示,
7、用 S7-200CPU222接收来自条码阅读器的数据,通信要求 来自条码阅读器的数据(ASCII码),经条码解码器翻译后,通过自由口通信模式将数据传送到CPU222,以便程序调用。 在CPU222内设置两个数据接收缓冲区:缓冲区0和缓冲区1,用于存储条码信息。在接收到回车键的字符(编码为16#10)后,向另一个缓冲区存储新读入的条码信息。 用Q0.0和Q0.1指示新读入的条码所在的缓冲区。 通信参数设定:波特率为9600bps,无奇偶校验,每个字符8位。,程序框图如图所示 主程序:初始化程序。 子程序0:SBR0接收条码信息。 中断程序0:INT0在数据缓冲区0接收。 中断程序1:INTl在数
8、据缓冲区1接收。,主程序的STL为: LD SM0.1 第一次扫描SM0.1=1 CALL 0 调子程序0 LD SM0.7 如果工作方式开关在TERM位置,则设置PPI通信协议 = SM30.0 如果工作方式开关在RUN位置,则设置自由口通信协议 MEND 主程序结束,子程序0的STL为: SBR0 准备接收条码 MOVB +9,SMB30 设置通信参数:9600bps,无奇偶校 验,8位字符 MOVD &VBl00,VD50 指针指向数据缓冲区0 MOVD &VB200,VD60 指针指向数据缓冲区l MOVD VD50,VD56 VD56也指向缓冲区0 MOVW +0,VW54 清除数据
9、缓冲区0的字符计数器(VW54作为字符计数器) ATCH +0,8 建立单字符接收中断事件8与中断程序0的连接 MOVB +1,QB0 置Q0.1=0,Q0.0=1 ENI 开中断 RET 结束子程序0,中断程序0的STL为; INT 0 数据缓冲区0接收 MOVB SMB2,*VD56 字符装入缓冲区0 1NCD VD56 指针加1 1NCW VW54 字符计数器加1 LDB= SMB2,16#10 如果字符是LF(回车符,编码为16#10),则 MOVD VD60,VD66 使指针VD66指向数据缓冲区1 MOVW +0,VW64 清除数据缓冲区1的字符计数器(VW64作为字符计数器) A
10、TCH +1,8 建立单字符接收中断事件8与中断程序1的连接 MOVB +2,QB0 置QO.1=1,Q0.0=0 RETI 中断程序0结束,中断程序1的STL为: INT 1 数据缓冲区1接收 MOVB SMB2,*VD56 字符装入数据缓冲区1 1NCD VD66 指针加1 1NCW VW64 字符计数器加1 LDB= SMB2,16#10 如果字符是LF,则 MOVD VD50,VD56 使指针VD56指向数据缓冲区0. MOVW +0,VW54 清除数据缓冲区0的字符计数器 ATCH +0,8 建立单字符接收中断事件8与中断程序0的连接 MOVB +1,QB0 置Q0.1=0,Q0.0
11、=1 RETI 中断程序1结束,9.4 网络通信运行,9.4.1 控制寄存器和传送数据表 1控制寄存器 2传递数据表的格式及定义,在S7-200的特殊继电器SM中,SMB30(SMBl30)用于设定通信端口0(通信端口1)的通信方式。由SMB30(SMBl30)的低2位决定通信端口0(通信端口1)的通信协议(PPI从站、自由口、PPI主站)。只要将SMB30(SMBl30)的低2位设置为2#10,就允许该PLC主机为PPI主站模式,可以执行网络读写指令。,9.4.2网络运行指令,说明: (1)数据表最多可以有16个字节的信息,同时最多可激活8条NETR和NETW指令 (2)操作数类型: TAB
12、LE:VB,MB,*VD,*AC; PORT:0,1 (3)设定ENO=0的错误条件:SM43(运行时间),0006(间接寻址错误)。,9.4.3 网络读写举例,1系统功能描述 如图所示,某产品自动装箱生产线将产品送到4台包装机中的一台上,包装机把每10 个产品装到一个纸板箱中,一个分流机控制着产品流向各个包装机(4个)。CPU 221模块用于控制打包机。一个CPU 222模块安装了TD 200文本显示器,用来控制分流机,2操作控制要求 站点6要读写4个远程站(站2、站3、站4、站5)的状态字和计数值。CPU222通信端口号为00从VB200开始设置接收和发送缓冲区。接收缓冲区从VB200开始,发送缓冲区从VB 300开始,具体分区见表 CPU 222用NETR指令连续地读取每个打包机的控制和状态信息。每当某个打包机装完100箱,分流机(CPU222)会用NETW指令发送一条信息清除状态字。下面以站2打包机为例,编制其对单个打包机需要读取的控制字节、包装完的箱数和复位包装完的箱数的管理程序。分流机CPU 222与站2打包机进行通信的接受发送缓冲区划分见表,3程序设计 网络站6通过网络读写指令管理站2的程序及其注释,