论坛专区
在线教育
 

LabVIEW与永宏PLC通信

放大字体  缩小字体 发布日期:2016-04-16  来源:互联网  作者:工控资料窝  浏览次数:519
    PLC通信包括PLC间的通信及PLC与其他智能设备间的通信。随着计算机控制技术的发展,工厂自动化网络发展得很快,各PLC厂商都十分重视PLC的通信功能,纷纷推出各自的网络系统。新近生产的PLC都具有通信接口,通信非常方便。本章具体介绍LabVIEW与永宏PLC通信的设计过程。
    11.1.1通信硬件连接
    图11-1即为永宏PLC的硬件图,其中的硬件通信板可以选择,图11-2所示为选择的RS485与RS232的通信接口。1.FBS-CB22通信板(CommunicationBoard简称CB)2.FBS-CB22通信板对应的盖板(每一种通信板都有其对应的盖板)图11-1永宏FBS系列PLC硬件图11-2FBS-CB22RS232和RS485接口通信板

    11.1.2PLC串口通信原理
    PLC各型主机均内建2个通信接口的标准配置,即一个RS232和一个RS485通信接口,其RS232接口主要用于上下载程序或用来与上位机、触摸屏通信,而RS485接口主要用于组建使用RS485协议的网络,实现通信控制。
    1.RS232接口
    RS232-C接口连接器一般使用型号为DB-9的9芯插头座,只需3条接口线,即“发送数据”、“接收数据”和“信号地”即可传输数据,其9个引脚的定义如图11-3所示。图11-3RS232-C接口连接器定义在RS232的规范中,电压值在+3V~+15V(一般使用+6V)称为“0”或“ON”。电压在-3V~-15V(一般使用-6V)称为“1”或“OFF”;计算机上的RS232“高电位”约为9V,而“低电位”则约为-9V。RS232为全双工工作模式,其信号的电压是参考地线而得到的,可以同时进行数据的传送和接收。在实际应用中采用RS232接口,信号的传输距离可以达到15m。不过RS232只具有单站功能,即一对一通信。
    2.RS485接口
    RS485采用正负两根信号线作为传输线路。两线间的电压差为+2V~6V表示逻辑“1”:两线间的电压差为-2V~6V表示逻辑“0”。RS485为半双工工作模式,其信号由正负两条线路信号准位相减而得,是差分输入方式,抗共模干扰能力强,即抗噪声干扰性好;实际应用中其传输距离可达1200米。RS485具有多站能力,即一对多的主从通信。在串行通信中,数据通常是在两个站之间传送,按照数据在通信线路上的传送方向可分为3种基本的传送方式:单工、半双工和全双工,如图11-4所示。图11-4单工、半双工和全双工通信单工通信使用一根导线,信号的传送方和接收方有明确的方向性。也就是说,通信只在一个方向上进行。若使用同一根传输线既作为接收线路又作为发送线路,虽然数据可以在两个方向上传送,但通信双方不能同时收发数据,这样的传送方式称为半双工。采用半双工方式时,通信系统每一端的发送器和接收器,通过收发开关分时转接到通信线上,进行方向的切换。当数据的发送和接收,分别由两根不同的传输线传送时,通信双方都能在同一时刻进行发送和接收操作,这样的传送方式就是全双工。在全双工方式下,通信系统的每一端都设置了发送器和接收器,因此,能控制数据同时在两个方向上传输。全双工方式无须进行方向的切换。串行通信可分为两种类型,一种是同步通信,另一种是异步通信。采用同步通信时,将所有字符组成一个组,这样,字符可以一个接一个地传输,但是,在每组信息的开始要加上同步字符,在没有信息要传输时,填上空字符,因为同步传输不允许有空隙。采用异步通信时,两个字符之间的传输间隔是任意的,所以,每个字符的前后都要用一些数据位来作为分隔位。比较起来,在传输率相同时,同步通信方式下的信息有效率要比异步方式高,因为同步方式的非数据信息比例比较小。但是,从另一方面看,同步方式要求进行信息传输的双方必须用同一个时钟进行协调,正是这个时钟确定了同步串行传输过程中每一个信息位的位置。这样一来,如果采用同步方式,那么,在传输数据的同时,还必须传输时钟信号。而在异步方式下,接收方的时钟频率和发送方的时钟频率不必完全一样,而只要比较相近,即不超过一定的允许范围就行了。在数据传输中,较为广泛采用的是异步通信,异步通信的标准数据格式如图11-5所示。图11-5异步通信数据格式从图11-5所列格式可以看出,异步通信的特点是一个字符一个字符地传输,并且每个字符的传送总是以起始位开始,以停止位结束,字符之间没有固定的时间间隔要求。每一次有一个起始位,紧接着是5~8个的数据位,再后为校验位,可以是奇检验,也可以是偶校验,也可不设置,最后是1比特,或1比特半,或2比特的停止位,停止位后面是不定长度的空闲位。停止位和空闲位都规定为高电平,这样就保证起始位开始处一定有一个下降沿,以此标识开始传送数据。
    11.1.3永宏PLC通信协议
    永宏通信协议可以简单通过串口来实现,上位机的具体参数如图11-6所示。永宏PLC除了拥有自己的永宏标准通信协议以外,还支持Modbus通信协议(Porto除外),具体的通信步骤如下:
 
Port0(RS232USB) 通信速率4.8 kbps ~ 921.6 kbps(9.6 kbps)  
Port1~Port4(RS232RS485Ethernet) 通信速率4.8 kbps ~ 921.6 kbps(9.6 kbps) Port1~4可提供永宏或Modbus RTU Master/Slave通信协议
最大联机站数 254  
 
    图11-6永宏PLC通信参数(1)设定外围设备的参数。—控制方式(如启动、停止):通信控制。—频率给定方式:通信设置。—设置通信参数:波特率、数据位、校验方式、停止位、RTU或者ASCII方式。—站号。(2)PLC同该设备的RS485接线。(3)改变设备的控制地址。找到所需要的控制地址,然后变成永宏Modbus地址。(4)设定PLC通信接口的通信参数和通信方式,PLC和该设备上配置的参数要一致。(5)在PLC内写M-BUS指令,并填写所需要的相应的通信表格。(6)程序写好后,接通电源,进行调试。
    11.1.4程序结构
    本例程序采用循序结构控制,程序流程框图如图11-7所示,主要由打开串口、设置串口、向串口写命令、读返回值、关闭串口4部分组成。图11-7程序流程程序中对串口的操作使用的是VISA。VISA是虚拟仪器软件结构体系(VirtualInstrumentSoftwareArchitecture)的简称。VISA是在所有LabVIEW工作平台上控制VXI、GPIB、RS232以及其他种类仪器的单接口程序库,是组成VXIPlug&Play系统联盟的35家最大的仪器仪表公司所统一采用的标准。采用VISA标准后,就可以不考虑时间及仪器I/O选择项,驱动软件可以相互兼容。VISA的功能模块包含在LabVIEWInstrumentI/O的VISA子模板中。VISA驻留于计算机系统中,是计算机与仪器之间的软件连接层,用以实现对仪器的控制。VISA对于测试软件开发者来说是一个可调用的操作函数集,它本身不提供仪器编程能力,只是一个高层API(应用程序接口),通过调用低层的驱动程序来控制仪器。NI-VISA的层次如图11-8所示。VISA的内部结构是一个先进的、面向对象的结构,这一结构使得VISA和在它之前的I/O控制软件相比,在接口无关性、可扩展性和功能上都有很大提高。VISA主要由Config模块、Write模块、Read模块、Close模块组成,下面对这些模块做详细介绍。VISAConfig模块对VISA资源信息如波特率、通信端口名称、数据校验、数据位等进行配置,并通过VISAresourceName端口将打开的VISA资源名称传递给下一个节点。
VISAWrite模块把writebuffer中的字符串写入VISAsession指定的设备中。dupVISAsession向下传送相同的session值。在UNIX工作平台上,数据同步写入;在其他工作平台上,数据异步写入。returncount返回实际传送的字节数。errorin和errorout字符串用于说明出错状况。VISARead模块读取由VISAsession指定设备中的数据。bytecount指明读入readbuffer中的字节数,当收到的字节数小于readbuffer中所指定的字节数时,VISAread将会一直等待,直到收到的字节数等于readbuffer中所指定的字节数。VISAsession向下传送相同的session值。同样,在UNIX工作平台上,数据同步读入;其他平台上的数据异步读入。VISAClose模块关闭由VISAsession指定设备的通信过程,释放系统资源。VISA仪器控制流程见图11-9。图11-10为串口读写程序示意图。图11-8VISA结构层次图11-9VISA仪器控制流程图11-10串口读写程序
    11.1.5程序编写
    基于LabVIEW的PC与PLC串口通信程序的面板如图11-11所示。根据永宏PLC的通信协议及数据操作流程,本程序采用顺序结构。顺序结构可实现数据流的顺序流动,首先打开串口和设置串口参数(如图11-12所示),波特率为9600Bps,串口号为COM1,偶校验(Even),7位数据位,数据停止位为10(如图11-13所示)。图11-11程序面板图11-12VISA串口配置图11-13开串口和设置串口参数第二步写入命令。先要对命令进行判断,看其是否合法,后面板程序如图11-14所示。然后,判断写入的命令是否超长,并将合法的数据组合成可写入的命令,后面板程序如图11-15所示。图11-14检查输入的命令合法性图11-15根据通信协议进行数据组合串口写入过程需要时间,所以在这一步之后需要延时250ms,如图11-16所示。接下来就是读串口返回值。通过VISA读取返回的数值(如图11-17所示),然后进行分析检验,判断所接收的数据是否正确。图11-16将数据写入PLC的R0寄存器检验数据之后这个操作流程就结束了,可以关闭VISA串口(如图11-18所示)。图11-17读串口返回值图11-18关闭串口



 
    11.1.6实例小结
    本例运用LabVIEW驱动配置方法通过VISA建立了上位机与永宏PLC通信的程序,对于其他品牌和型号的PLC通信,同样可以使用该方法。同样,Modbus协议的设备间通信也可以使用此类方法。



 
 
关键词: PLC
 
 
[ 大学堂搜索 ]  [ 加入收藏 ]  [ 告诉好友 ]  [ 打印本文 ]  [ 关闭窗口 ]

0条 [查看全部]  相关评论

 
按分类浏览
PLC基础知识 (2046)
PLC编程 (477)
三菱PLC (678)
西门子PLC (954)
欧姆龙PLC (209)
AB PLC (35)
松下PLC (137)
永宏PLC (20)
台达PLC (36)
LG PLC (12)
富士PLC (13)
日立PLC (8)
点击排行
 
展会
微信公众号
qq群
 
工控网 | 工控文库 | 工控视频 | 工控软件 | 在线教育 | 用户使用指南 | 关于我们 | 联系方式 | 使用协议 | 版权隐私 | 网站地图 |手机版 | 广告服务

本网站所有文档及文件资料,除特别标明本站原创外,均来自互联网及网友上传,如有涉及版权问题,请联系我们,我们将第一时间处理。
我们保留版权,任何涉嫌侵犯本站版权的行为,本站保留追究其法律责任的权利。

Copyright © 2018-2020 www.gkwo.net  滨州新大新机电科技有限公司 版权所有 鲁ICP备11011731号-4