ImageVerifierCode 换一换
格式:DOCX , 页数:41 ,大小:868.23KB ,
资源ID:5844038      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5844038.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第8章PLC的通信功能和应用.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

第8章PLC的通信功能和应用.docx

1、第8章PLC的通信功能和应用第8章 PLC通信功能及应用学习目标理解计算机、文本显示器、人机界面在S7-200系列PLC网络中的作用及PLC与变频器通信的实现方法;理解S7-200系列PLC自由端口通信协议的含义及实现方法;掌握S7-200系列PLC网络通信协议及网络通信的实现方法。随着计算机网络技术的发展,现代企业的自动化程度越来越高。在大型控制系统中,由于控制任务复杂,点数过多,各任务间的数字量、模拟量相互交叉,因而出现了仅靠增强单机的控制功能及点数已难以胜任的现象。所以,各PLC生产厂家为了适应复杂生产的需要,也为了便于对PLC进行监控,均开发了各自的PLC通讯技术及PLC通讯网络。PL

2、C的通讯就是指PLC与计算机之间、PLC与PLC之间、PLC与其它智能设备之间的数据通讯问题。81 S7-200系列PLC的通信协议及通信指令811 S7-200系列PLC的自由端口通信1自由端口通信模式S7-200系列PLC的串行通信口可以由用户程序来控制,这种由用户程序控制的通信方式称为自由端口通信模式。利用自由口模式,可以实现用户定义的通信协议,可以同多种智能设备进行通信。当选择自由端口通信模式时,用户程序可通过发送接收中断、发送接收指令来控制串行通信口的操作。通讯所使用的波特率、奇偶校验以及数据位数等由特殊存储器位SMB30(对应端口0)和SMBl30(对应端口1)来设定。特殊存储器位

3、SMB30和SMB130的具体内容如表8-1所示。表8-1 通信用特殊存储器位SMB30和SMBl30的具体内容端口0端口1内 容SMB30格式SMBl30格式70ppdBbbmm 自由端口模式控制字SM30.7SM30.6SMl30.7SM130.6pp:奇偶校验选择00:无奇偶校验;01:偶校验;10:无奇偶校验;11:奇校验SM30.5SMl30.5d: 每个字符的数据位 d= 0:每个字符8位有效数据d=1:每个字符7位有效数据SM30.4SM30.3SM30.2SMl30.4SM130.3SM130.2bbb:波特率000:38400波特; 001:19200波特; 010:9600

4、波特; 011:4800波特; 100:2400波特; 101:1200波特;110:600波特; 111:300波特SM30.0SM30.1SMl30.0SM130.1mm:协议选择00:点对点接口协议(PPI从机模式);01:自由端口协议10:PPI主机模式;11:保留(默认为PPI从机模式)为了方便的设置自由口通信模式,可参照表8-2直接选取SMB30(或SMB130)的值。表8-2 SM30通信功能控制字节值与自由口通信模式特性选项参照表波特率(bps)38.4KCPU22419.2K9.6K4.8K2.4K1.2K600300说明8位字符无校验01H81H05H85H09H89H0D

5、H8DH11H91H15H95H19H99H1DH9DH两组数任取偶校验41H45H49H4DH51H55H59H5DH奇校验C1HC5HC9HCDHD1HD5HD9HDDH波特率(bp)38.4KCPU22419.2K9.6K4.8K2.4Kl.2K600300说明7位字符无校验21HA1H25H A5H29H A9H2DH ADH31H B1H35H B5H39H B9H3DHBDH两组数任取偶校验61H65H69H6DH71H75H79H7DH奇校验E1HE5HE9HEDHF1HF5HF9HFDH在对SMB30赋值之后,通信模式就被确定。要发送数据则使用XMT指令;要接收数据则可在相应的

6、中断程序中直接从特殊存储区中的SMB2(自由口通信模式的接收寄存)读取。若是采用有奇偶校验的自由口通信模式,还需在接收数据之前检查特殊存储区中的SMB3.0(自由口通信模式奇偶校验错误标志位,置位时表示出错)。注意:只有PLC处于RUN模式时,才能进行自由端口通讯。处于自由端口通讯模式时,不能与可编程设备通讯,比如编程器、计算机等。若要修改PLC程序,则需将PLC处于STOP方式。此时,所有的自由口通信被禁止,通信协议自动切换到PPI通信模式。2. 自由口通信发送接收指令(1)发送/接收数据指令格式与功能(见表8-3)表8-3 发送/接收数据指令格式及功能梯形图LAD语句表STL功 能操作码操

7、作数发送数据指令XMTTBL,PORT当使能输入EN有效时,把TBL指定的数据缓冲区的内容通过PORT指定的串行口发送出去。接收数据指令RCVTBL,PORT当使能输入EN有效时,通过PORT指定的串行通信口把接收到的信息存入TBL指定的数据缓冲区。说明:1)TBL指定接收/发送数据缓冲区的首地址。可寻址的寄存器地址为VB、IB、QB、MB、SMB、SB、*VD、*AC;2)TBL数据缓冲区中的第一个字节用于设定应发送/应接收的字节数,缓冲区的大小在255个字符以内。3)PORT指定通讯端口,可取0或1。 4)对发送XMT指令在缓冲区内的最后一个字符发送后会产生中断事件9(通信端口0)或中断事

8、件26(通信端口1),利用这一事件可进行相应的操作。SM4.5(通信端口0)或SM4.6(通信端口1)用于监视通信口的发送空闲状态,当发送空闲时,SM4.5或SM4.6将置1。利用该位,可在通信口处空闲状态时发送数据。5)对接收RCV指令可利用字符中断控制接收数据每接收完成1个字符,通信端口0就产生一个中断事件8(或通信端口1产生一个中断事件25)。接收到的字符会自动的存放在特殊存储器SMB2中。利用接收字符完成中断事件8(或25),可方便地将存储在SMB2中的字符及时取出。可利用接收结束中断控制接收数据当由TABLE指定的多个字符接收完成时,将产生接收结束中断事件23(通信端口0)或接收结束

9、中断事件24(通信端口1),利用这个中断事件可在接收到最后一个字符后,通过中断子程序迅速处理接收到缓冲区的字符。接收信息特殊存储器字节SMB86SMB94(SMB186SMB194)PLC在进行数据接收通信时,通过SMB87(或SMB187)来控制接收信息;通过SMB86(或SMB186)来监控接收信息。其具体字节含义如表8-4所示。表8-4 通讯用特殊存储器字节SMB86(SMBl86)SMB94(SMB194)的含义端口0端口1字节含义SMB86SMBl8670NRE00TCP接受信息状态字节N=1:用户的禁止命令,使接收信息停止;R=1:因输入参数错误或缺少起始条件引起的接收信息结束;E

10、=1:接收到结束字符;T=1:因超时引起的接收信息停止;C=1:因字符数超长引起的接收信息停止;P=1:因奇偶校验错误引起的接收信息停止: SMB87SMB18770ENSCECILC/MTMRBK0接受信息控制字节EN= 0:禁止接收信息的功能,EN=1:允许接收信息的功能;每当执行RCV指令时,检查允许接收信息位。SC:是否用SMB88或SMB188的值检测起始信息。0=忽略,1=使用;EC:是否用SMB89或SMBl89的值检测结束信息。0=忽略,1=使用;IL:是否用SMW90或SMWl90的值检测空闲状态。0=忽略,1=使用;C/M:定时器定时性质。0=内部字符定时器,1=信息定时器

11、;TMR:是否使用 SMW92或SMWl92的值终止接收。0=忽略,1=使用;BK:是否使用中断条件来检测起始信息。0=忽略,1=使用。SMB88SMB188信息的开始字符SMB89SMB189信息的结束字符SMB90SMB9lSMB190SMB191空闲线时间段。按毫秒设定。空闲线时间溢出后接收的第一个字符是新信息的开始字符。SMB90(或SMBl90)是最高有效字节,而SMB9l(或SMBl91)是最低有效字节。SMB92SMB93SMB192SMB193字符间/信息间定时器超时。按毫秒设定。如果超过这个时间段,则终止接收信息。SMB92(或SMB192)是最高有效字节,而SMB93(或S

12、MBl93)是最低有效字节。SMB94SMB194要接收的最大字符数(1255字节)注:不论何情况,这个范围必须设置到所希望的最大缓冲区大小。(2)发送/接收指令编程举例例1 当输入信号I0.0接通并发送空闲状态时,将数据缓冲区VB200中的数据信息发送到打印机或显示器。编程要点是首先利用首次扫描脉冲,进行自由口通信协议的设置,即初始化自由端口;然后在发送空闲时执行发送命令。对应的梯形图程序如用8-1所示。例2 用本地CPU224的输入信号I0.0上升沿控制接收来自远程CPU224的20个字符,接收完成后,又将信息发送回远程PLC;当发送任务完成后用本地CPU224的输出信号Q0.1进行提示。

13、设置通信参数SMB30=9,即无奇偶检验、有效据数位8位、波特率9600bps、自由口通信模式;不设超时时间,接收和发送使用同一个数据缓冲区,首地址为VB200。对应的梯形图程序如图8-2所示。例3 两个PLC之间的自由口通信。已知有两台S7-224型号PLC甲和乙。要求甲机和乙机采用可编程通信模式进行数据交换。乙机的IB0控制甲机的QB0。对发送和接收的时间配合关系无特殊要求。1)编程要领设乙机发送数据缓冲区首地址为VB200,在方式开关由RUN位置转向TERM位置时,建立自由口通信协议,将IB0的数据送至数据缓冲区,执行XMT指令发送数据;甲机通过SMB2接收乙机发送过来数据,在方式开关由

14、RUN位置转向TERM位置时,建立自由口通信协议,将接收字符中断事件8连接到中断子程序0,在中断服务程序中从SMB2读取乙机数据,然后再送至QB0。2)控制程序乙机的发送程序如图8-3所示,甲机的接收程序如图8-4所示。3)程序说明发送程序 由于指令XMT的格式要求,其PORT端除支持直接寻址方式外,还可支持间接寻址。考虑到该程序对发送数据所存放地址的灵活性,故选用指针方式的间接寻址。指针的内容放在VD300中。通过查表8-3,将SMB30设置为09H表示:自由口通信模式,每字符8位,无奇偶校验,波特率为9600bps等特性。一直将IB0的内容送往发送缓冲区表VB201中,这样可保证乙机的IB

15、0对甲机的QB0的控制作用一直有效。接收程序 同发送程序,先进行通信方式的设定,在主程序中将接收中断(事件号8)与中断子程序0相连接,之后全局开中断。在中断服务程序中只是简单地读取接收缓冲寄存器SMB2的内容送至甲机的QB0即可,这样符合中断程序编制得越短越好的原则。图8-4 甲机接收梯形图程序812 S7-200系列PLC的网络通信1S7-200系列PLC的网络连接形式1)点对点通信网络在这种连接形式中,采用一根PC/PPI电缆,将计算机与PLC连接在一个网络中,PLC之间的连接则通过网络连接器来完成,如图8-5所示。这种网络使用PPI协议进行通讯。PPI协议是一个主/从协议。这是一种基于字

16、符的协议,共使用字符11位:1位起始位,8位数据位,1位奇偶较验位,1位结束位。通讯帧依赖于特定起始位字符和结束字符,源和目的站地址,帧长,以及全部数据和校验字符。这个协议支持一主机多从机连接和多主机多从机连接方式。在这个协议中,主站给从站发送申请,从站进行响应。从站不初始化信息,但是当主站发出申请或查询时,从站才响应。网络上的所有S7-200CPU都作为从站。如果在程序中允许PPI主站模式,一些S7-200CPU在RUN模式下可以作为主站。一旦允许主站模式,就可以利用网络读和网络写指令读写其他CPU。当S7-200CPU作为PPI主站时,它还可以作为从站响应来自其他主站的申请。对于任何一个从

17、站有多少个主站和他通讯,PPI 没有限制,但是在网络中最多只能有32个主站。2)多点网络在计算机或编程设备中插入一块MPI(多点接口卡)卡或CP(通讯处理卡)卡,由于该卡本身具有RS232/RS485信号电平转换器,因此可以将计算机或编程设备直接通过RS-485电缆与S7-200系列PLC进行相连,如图8-6所示。这种网络使用MPI协议通讯。MPI协议可以是主/主协议或主/从协议。协议如何操作有赖于设备类型。如果设备是S7-300CPU,那么就建立主/主连接。因为所有的S7-300CPU都是网络主站。如果是S7-200CPU,那么就建立主/从连接,因为S7-200CPU是从站。MPI总是在两个

18、相互通讯的设备之间建立连接。主站为了应用可以短时间建立一个连接,或无限地保持连接的断开。3)PROFIBUS网络S7-200系列PLC通过EM277 PROFIBUS-DP模块可以方便地与PROFIBUS现场总线进行连接,进而实现低档设备的网络运行,如图8-7所示。PROFIBUS协议设计用于分布式I/O设备(远程I/O)的高速通讯。在S7-200中,CPU222、CPU224和CPU226都可以通过EM277 PROFIBUS-DP扩展模板支持PROFIBUS-DP网络协议。PROFIBUS网络通常由一个主站和几个I/O从站。主站初始化网络并核对网络上的从站设备和配置中的是否匹配。当DP(D

19、istributed Peripheral)主站成功的组态一个从站时,他就拥有该从站,如果网络中有第二个主站,它只能很有限的访问第一个主站的从站。4)IT网络通过CP-243-1 IT通讯处理器,可以将S7-200系统连接到工业以太网(IE)中。通过工业以太网,一台S7-200可以与另一台S7-200、S7-300或S7-400PLC进行通讯,也可与OPC服务器及PC机进行通讯。还可以通过CP-243-1 IT通讯处理器的IT功能,非常容易的与其它计算机以及控制器系统交换文件,可以在全球范围内实现控制器和当今办公环境中所使用的普通计算机之间的连接。这种连接的系统示意图如图8-8所示。2网络读/

20、写通信指令在SIMATIC S7的网络中,S7-200被默认为从站。只有在采用PPI通信协议时,有些S7-200系列的PLC允许工作于PPI主站模式。将PLC的通信端口0或通信端口1设定工作于PPI主站模式,是通过设置SMB30或SMB130的低两位的值来进行的(见表8-1)。所以只要将SMB30或SMB130的低两位取值2#10,就将PLC的通信端口0或通信端口1设定工作于PPI主站模式,就可以执行网络读写指令了。1)网络读指令的格式与功能(见表8-5)表8-5 网络读指令的格式与功能梯形图LAD语句表STL功 能操作码操作数网络读指令NETRTBL,PORT当使能输入EN有效时,通过POR

21、T指定的通信口,根据TBL指定的表中的定义读取远程装置的数据网络写指令NETWTBL,PORT当使能输入EN有效时,通过PORT指定的通信口,根据TBL指定的表中的定义将数据写入远程设备中去说明:(1)TBL指定被读/写的网络通信数据表,其寻址的寄存器为VB、MB、*VD、*AC,其表的格式见表8-5;(2)PORT指定通信端口0或1;(3)NETR(NETW)指令可从远程站最多读入(写)16字节的信息,同时可最多激活8条NETR和NETW指令。例如,在一个S7-200 系列PLC中可以有4条NETR和4条NETW指令,或6条NETR指令和2条NETW指令。2)网络通信数据表的格式在执行网络读

22、写指令时,PPI主站与从站之间传送数据的网络通信数据表(TBL)的格式如表8-6所示。表 8-6 PPI主站与从站之间传送数据的网络通信数据表格式字节偏移地址字节名称描 述0状态字节70DAE0E1E2E3E4D:操作完成位。D=0:未完成;D=1:完成A:操作排队有效位。A=0:无效;A=1:有效E:错误标志位。E=0:无错误;E=1:有错误E1,E2,E3,E4为错误编码。如果执行指令后,E=1,则E1,E2,E3,E4返回一个错误编码,编码及说明见表8-7。1远程设备地址被访问的PLC从站地址2远程设备的数据指针被访问数据的间接指针指针可以指向I,Q,M和V数据区3456数据长度远程站点

23、上被访问数据的字节数7数据字节0数据字节1数据字节15收或发送数据区:对NETR,执行NETR后,从远程站点读到的数据存放在这个数据区中;对 NETW,执行NETW前,要发送到远程站点的数据存放在这个数据区822表 8-7 网络通信指令错误编码表E1E2E3E4错误码含 义00000无错误00011时间溢出错误:远程站无响应00102接收错误:校验错误,或检查时出错00113离线错误:站号重复或硬件损坏01004队列溢出出错:激活超过8个NETR/NETW框01015违反协议:没有在SMB30中使能PPI,却要执行NETRNETW指令01106非法参数:NETR/NETW的表中含有非法的或无效

24、的值01117没有资源:远程站忙10008Layer7错误:应用协议冲突10019信息错误:错误的数据地址或数据长度不正确10101111AF未用,为将来的使用保留3)网络读/写指令编程举例例4 要求A机用网络读指令读取B机的IB0的值后,将它写入本机的QB0,A机同时用网络写指令将它的IB0的值写入B机的QB0中。在这一网络通信过程中,B机是被动的,它不需要编写通信程序。所以只要求设计A机的通信程序。假定A机的网络地址是2,B机的网络地址是3。对应的网络通信数据表如表8-8所示,对应的梯形图程序如图8-9和图8-10所示。表8-8 网络通信数据表字节意义状态字节远程站地址远程站数据区指针读写

25、的数据长度数据字节NETR缓冲区VB200VB201VD202VB206VB207NETW缓冲区VB210VB211VD212VB216VB217图8-9 A机通信与控制程序82 PLC与变频器之间的通讯PLC与变频器之间的通讯在西门子产品中是分以下几个步骤来完成的:首先要在STEP7-MicroWIN编程软件上对变频器的控制通过USS协议指令进行各种设定,然后将其设定下载到PLC,最后连接变频器与PLC。当PLC进入运行状态后,就会根据USS协议指令的要求与变频器进行通信,实现对变频器的控制。1USS协议指令1)USS_INIT初始化指令(见表8-9)表8-9 USS_INIT初始化指令格式

26、及功能梯形图LAD语句表STL功 能操作码操作数CALL USS_INITMode,Baud,Active,Error用于允许和初始化或禁止Micro Master变频器通信指令格式及功能中各输入输出端子名称、功能及寻址的寄存器如表8-10所示。表8-10 USS_INIT初始化指令的输入输出端子说明符号端子名称状态作 用可寻址寄存器EN使能端1USS_INIT指令被执行,USS协议被启动Mode通讯协议选择端字节为1时,将PLC的端口0分配给USS协议,并允许该协议VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常数为0时,将PLC的端口0分配给PPI协议,并禁止U

27、SS协议Baud通讯速率设置端字可选择的波特率为1200、2400、4800、9600或19200VW,QW,IW,MW,SW,SMW,LW,T,C,AIW,AC,*VD,*AC,*LD,常数Active变频器激活端双字用于激活需要通信的变频器,双字寄存器的位表示被激活的变频器的地址(范围031)VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD,常数Done完成USS协议设置标志端位当USS_INIT指令顺利执行完成时,Done输出接通,否则出错I,Q,M,S,SM,T,C,V,LErrorUSS协议执行出错指示端字节当USS_NIT指令执行出错时,Error输出错误代

28、码。其可能的错误类型如表8-11所示VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD表8-11 执行USS协议可能出现的错误出错代码说 明出错代码说 明0没有出错11变频器响应的第一字符不正确1变频器不能响应12变频器响应的长度字符不正确2检测到变频器响应中包含加和校验错误13变频器错误响应3检测到变频器响应中包含奇偶校验错误14提供的DB-PTR地址不正确4由用户程序干扰引起的错误15提供的参数号不正确5企图执行非法命令16所选择的协议无效6提供非法的变频器地址17USS激活;不允许更改7没有为USS协议设置通信口18指定了非法的波特率8通信口正忙于处理指令19没有通信;变频器没有激活9输入的变频器速率超出范围20在变频器中响应中的参数和数值有错10变频器响应的长度不正确2) USS_CTRL驱动变频器指令(见表8-12)表8-12 USS_CTRL驱动变频器指令格式及功能梯形图LAD语句表STL功 能操作码操作数CALL USS-CTRLRUN,OFF2,OFF3,F_ACK,DIR,Drive,Speed_SP,Resp_R,Error,Status,Speed,Run_EN,D_Dir,

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1