如何用labview visa串口读取用一个串口同时监视多台plc

Labview实现PC与PLC的实时监控 - LabVIEW论坛 -
中国电子技术论坛 -
最好最受欢迎电子论坛!
后使用快捷导航没有帐号?
林超文手把手教你学!
教你1000种电路设计思路
张飞硬件电路之PFC全集
参与免费送VIP+原创视频
运放、ADC、电磁兼容
Labview实现PC与PLC的实时监控
08:15:34  
Labview实现PC与PLC的实时监控
08:15 上传
点击文件名下载附件
下载积分: 积分 -1 分
252.06 KB, 下载次数: 99, 下载积分: 积分 -1 分
助理工程师
09:18:25  
Labview实现PC与PLC的实时监控
20:22:13  
Labview实现PC与PLC的实时监控
13:39:16  
Labview实现PC与PLC的实时监控
17:52:41  
Labview实现PC与PLC的实时监控
08:22:01  
Labview实现PC与PLC的实时监控
16:11:10  
回复赚积分,学习不怕累,楼主辛苦
15:00:27  
下载下来 看看;& &&&
18:45:14  
Labview实现PC与PLC的实时监控
20:11:11  
很好。。。。。
20:11:41  
回复赚积分,学习不怕累,楼主辛苦
07:06:18  
Labview实现PC与PLC的实时监控
20:40:22  
多谢分享,需要学习一下
多谢分享,需要学习一下
08:52:06  
Labview实现PC与PLC的实时监控
发表于 前天&10:36  
Labview实现PC与PLC的实时监控
林超文手把手教你学!
教你1000种电路设计思路
张飞硬件电路之PFC全集
参与免费送VIP+原创视频
运放、ADC、电磁兼容
Powered by
供应链服务
版权所有 (C) 深圳华强聚丰电子科技有限公司利用CAN-bus实现多台PLC之间的远程配置与实时通信
> 利用CAN-bus实现多台PLC之间的远程配置与实时通信
利用CAN-bus实现多台PLC之间的远程配置与实时通信
摘要:&通过现场总线CAN-bus,可以将多达数十台的中/小型PLC联网,构成一个智能PLC;同时,主控制器可以与指定的远程PLC实现远程配置、控制,以及实现组态环境中的应用。关键词: &PLC;CAN-bus;CAN232MB转换器;PC-CAN接口卡
PLC特点与PLC可编程控制器(PLC)是一种数字控制专用电子计算机,它使用了可修改的程序存储器储存指令,执行诸如逻辑、顺序、计时、计数与演算等功能,并通过模拟和数字输入、输出等功能组件,控制各种机械或工作程序。长期以来,PLC一直在各个行业的自动化控制领域得到广泛的使用,为各种各样的自动化设备提供了非常可靠的控制应用。PLC系统的工作任务相对简单,且需要传输的数据量一般不会太大,所以常见的PLC系统为一层结构。PLC一般应用在小型自控场所,比如设备的控制或少量模拟量的控制及联锁。小范围的集中式控制环境是PLC发挥功能的最佳舞台。目前,只有少量型号的PLC集成有Ethernet或现场总线CAN-bus接口,价格也较贵;一般常见PLC型号没有随本机集成功能,不便于组建多台PLC构成的中型控制网络。但是,随着应用技术的发展,经常会出现一些应用场合,在面积较大的范围内,需要n台PLC协同完成一个系统的综合控制。此时,原有集中控制的单一PLC控制方案就显得力所不及,PLC网络的需求也应运而生。本文提出了一种基于现场总线CAN-bus的PLC网络方案,能够对多台联网的PLC实现远程配置、数据,并能够在投入较低硬件成本的基础上,实现良好的系统运行性能。这个方案也充分发挥了现场总线CAN-bus的特点:实时、可靠、高速、远距离、易维护等。此方案是现场总线技术与集中控制技术的有机结合,联网后的PLC网络可以构成一个性能优秀的DCS系统;用户在同一个主控制器上可以远程监控、改变任何一台联网PLC的程序或状态。
PLC网络的两种方式通用PLC一般都会提供1~2个RS-232或RS-485端口,用于与其他控制设备或主控制器PC通讯;这些集成的通讯端口支持自行规定的通讯协议,或者Modbus协议,实现PLC设备的通讯与配置。构建PLC网络,即利用PLC本机的这一类通讯端口,将其扩展成为能够与多台设备联网,实现多点通讯的现场总线CAN-bus通讯接口。根据网络中主控制器的不同,PLC网络可以分为以下方式:*多台PLC联网,各PLC地位平等,可外扩HMI人机界面。*多台PLC联网,由1台工控PC作为主控制器与操作界面。多台PLC串行联网通过一个RS-232/RS-485转CAN-bus网关进行信号转换,独立PLC就具有了现场总线CAN-bus通讯接口。多台具有现场总线CAN-bus通讯接口的PLC之间相互连接,即可以组建PLC网络。每一台连接PLC单元的RS-232/RS-485转CAN-bus网关都可以设定一个独立的设备ID号,长度为11位或29位,用作为该PLC单元的地址。每一台联网的PLC单元在发送数据时,可设定在数据流中自动添加本地网关的设备ID号;同理,每一台PLC单元在接收数据时,可设定由网关检查数据流中的设备ID号,自动接收符合要求的数据。通过上述方式组建的PLC网络,各台PLC地位平等,任何一台PLC均可以主动发起数据通讯,由CAN-bus网关起硬件自动仲裁作用,保障每一次通讯的数据不丢失;网络中的PLC数量不受限制,数百、上千台PLC都可以连接在同一现场总线CAN-bus网络中。同时,这个PLC网络中还可以连接具有CAN-bus通讯接口的HMI人机界面,或由其中一台PLC通过其他的串行通讯端口连接HMI人机界面。这种方式组建的PLC网络,与选择集成CAN-bus通讯功能的PLC设备相比,具有更加灵活的系统扩展能力,也能够获得更好的性价比。多台PLC与工控PC并行联网工控PC能够深入地配合PLC厂商提供的各种软件,从而实现更多强大的功能,比如系统配置、人机界面、组态开发等,在PLC领域的作用也越来越不可或缺。通常,工控PC与单台PLC通过1个串口连接通讯,实现各种扩展功能;但串口的通讯距离、节点数量都受到了串口本身的性能限制。比如,RS-232标准只可以实现“点-点”通讯,RS-485/422标准能够实现32个节点以内的通讯,但通讯距离、抗干扰能力都比较弱,并不能够满足实际工业现场多台PLC联网应用的需求。工控PC内置PC-CAN接口卡,可以建立起1条或者多条现场总线CAN-bus网络,并通过连接在CAN-bus网络中的网关RS-232/RS-485转CAN-bus转换器,借助于CAN-bus网络配套的“虚拟串口”软件,建立多达2047个标准的串行通讯端口,从而连接多达2047条串行网络。也就是说,可以在同1条普通双绞线上连接多达2047台PLC设备,工控PC访问连接在这条CAN-bus网络上的PLC设备,也与操作标准串口完全一致。这种方式可以充分发挥工控PC的作用,通讯效率也比较高。通过工控PC组建多台PLC网络的系统结构如图 1所示。按这一种方式的建立PLC网络的通讯效率较高,应用灵活,是一般PLC网络建设的主流方向。
图 1& 多台PLC与工控PC并行联网
PLC网络的硬件组成与连接建立PLC网络,除了实现具体功能的PLC设备,还需要一些建立现场总线CAN-bus网络的设备,主要有RS-232转CAN-bus网关、PC-CAN接口卡等。RS-232转CAN-bus网关CAN232MB 转换器是一种常用的RS-232转CAN-bus网关。转换器集成1个RS-232通道、1个CAN-bus 通道,可以很方便地连接到PLC设备的RS-232标准通讯端口,使PLC设备具有与现场总线CAN-bus网络通讯的能力。转换器提供三种工作模式——透明转换、透明带标识转换、Modbus协议转换,分别可以支持不同通讯协议的PLC设备。通过PC配置软件,CAN232MB转换器可设定一个独立的11位或29位设备ID号,可以用作为该网关所连接PLC设备的地址编号,并对往来串口的数据流加以标注或识别。对于只集成RS-485/422通讯端口的PLC设备,可以选择RS-485转CAN-bus网关。PC-CAN接口卡工控PC内置或外接PC-CAN接口卡,可以令工控PC具有现场总线CAN-bus通讯接口,从而成为CAN-bus网络中的一个主要功能节点。根据与PC连接方式的不同,PC-CAN接口卡可以分为很多种不同的类型,常见的型号有PCI-CAN接口卡、ISA-CAN接口卡、PC104-CAN接口卡、USBCAN接口卡、以太网转CAN接口卡等。PC-CAN接口卡一般都提供有CAN-bus测试工具、API开发例程、OPC服务器软件等。配套的“虚拟串口服务器”软件可以在不修改原有PC软件的基础上,开发基于串口通讯的软件项目,比如PLC网络。通讯附件通讯电缆是现场总线CAN-bus网络的重要组件。通讯电缆的合理选择,对CAN-bus网络的通讯距离也有非常重要的影响。使用国标AWG18(截面积为Φ0.75 mm2)的双绞线作为CAN-bus网络的通讯电缆,可以在1Km距离内实现可靠通讯;使用截面积为Φ1.5 mm2的普通双绞线,则可以达到6~7Km的通讯距离。现场总线CAN-bus网络在布线时,必须注意终端电阻的连接。主干线的最远两端必须各连接一个120Ω的终端电阻。另外,CAN-bus网络的分支线不宜过长,当网络通讯速率为20Kbps时,建议每一条连接PLC设备的分支线长度小于100米。应用实例在一个实际的油田控制系统中,需要由超过32台PLC组建一个中型PLC网络。每一台PLC用于控制一套工作井站的现场设备。选用PLC型号为OMRON公司CPM2A系列,不支持现场总线CAN-bus网络,但集成有1个RS-232通讯端口。单台PLC之间的最大距离超过了10Km距离,但这个油田控制系统要求能够在同一个主控制器上,对每一台现场的PLC实时监控。由于各个现场PLC工作点距离很远,主控制器PC不可能实现每一台PLC设备的单独电缆连接。因此,将各台PLC设备通过现场总线CAN-bus网络连接,组建一个地区范围内的PLC网络,从而实现PLC远程维护、数据实时监控,既能够大大提高系统的管理效率,也可以有效地降低网络建设成本。井站的PLC设备集成有1个RS-232串行通讯端口,通过CAN232MB转换器连接到现场总线CAN-bus网络。主控制器PC内置1块PC-CAN接口卡,型号为PCI-9840接口卡,可以使PC成为CAN-bus网络中的节点,能够同时管理4路物理独立的CAN-bus网络。CAN-bus网络现场总线CAN-bus网络的拓扑结构一般使用直线结构。所有CAN-bus设备节点通过短分支线连接至CAN-bus网络的主干线;短分支线不宜过长,一般必须小于30米。如果因网络布线、地理环境等因素,需要改变CAN-bus网络的拓扑结构,则可以通过CANbridge网桥或CANHub集线器。在CAN-bus网络布线中,必须注意终端电阻的连接。CAN-bus主干线的最远两端必须各端接一个120Ω的终端电阻;主干线上的其它任何CAN-bus节点则不用连接终端电阻。设定为5Kbps波特率时,使用截面积为Φ1.5 mm2的双绞线,至少可以达到6~7Km的通讯距离。通常,随着通讯距离的加长,需要适当加大通讯电缆线的截面积。当网络连接设备数量大于110或距离超过10Km时,在合理位置安装CANbridge网桥,就可以使CAN-bus网络延长1倍的通讯距离,并可增加连接220个的CAN-bus节点数目。PLC串行通讯协议OMRON公司CPM系列中小型PLC的串行通讯使用“命令-应答”通信方式,工控PC可通过对串口编程的方式与CPM系列PLC实现数据通信。PC与PLC实现一次数据交换的过程,即传输的命令和应答之数据总和称为一帧,一帧最多可包含131个数据字符。OMRON公司PLC采用HOSTLINK通讯协议。HOSTLINK命令帧格式PC机按HOSTLINK命令帧的格式,向PLC发送命令。HOSTLINK命令帧见图2。
图2 OMRON公司PLC命令帧格式HOSTLINK命令帧的规定如下:*@符号必须置于每个命令的开头;*节点号,用来辨识每一台PLC的节点地址;*读/写,指明PLC的哪个寄存器单元,例读写IR/SR区时它的识别码设置分别为RR和WR,读写DM区分别为RD和WD。*FCS,设置两字符的帧检查顺序码,是一个转换成2个ASCII字符的8位数据,这8位数据为从帧开始到正文结束(即FCS之前)所有数据执行“异或”操作的结果。*终止符设置“*”和回车两字符,表示命令结束。HOSTLINK命令帧可以有最多131个字符长。一个等于或大于132字符的命令必须分成若干帧。命令分段,使用回车定界符(CHR $(13))。HOSTLINK应答帧格式PLC对于接收到的命令帧,都会给予数据响应,发送HOSTLINK应答帧,格式见图3。
图3 OMRON公司PLC应答帧格式识别码、正文取决于PLC接收到的上位机联结命令,结束字表示命令完成的状态(即是否有错误发生),当应答帧的长度超过132字符,它必须分成若干帧。结束字是应答帧中表示PLC应答的信息。结束字代码为00表示正常结束,13表示FCS错误,14表示格式错误,15表示入口码数据错误,18表示帧长度错误,A3表示传输数据时因FCS错误引起终止,A8表示传输数据时,因帧长度错误引起终止。PLC与网关CAN232MB的连接CPM系列PLC集成1个RS-232串行通讯端口,采用DB9孔型插座;CAN232MB转换器集成1个RS-232串行通讯端口,也采用DB9孔型插座。串行通信电缆一端连接CAN232MB转换器,另一端连接CPM系列PLC。注意,通讯电缆的两个DB9端口不可互换。通讯电缆的连接示意如图 4所示。
图4& PLC通信电缆的引脚连接PLC与网关CAN485MB的连接OMRON公司的CXP软件可以在一个RS-485标准的串行通讯端口上连接多达32台CPM2A系列PLC设备;每台PLC设备都需要预先设定一个唯一的5位地址编号,用于在RS-485网络中区分各台PLC设备。 RS-485标准是一种多点网络通讯方式。通过网关CAN485MB转换器,可以建立一个符合RS-485标准的虚拟串口。CPM2A系列PLC可以借助于RS-232转RS-485电平转换器,得到一个RS-485标准的通讯端口。多台预设地址编号的PLC可以通过RS-485串行通讯方式联网,并与CAN485MB转换器组成1~32个节点、1Km距离范围内、RS-485标准的PLC网络。按上述方式,整个地区的PLC网络可以由多个网关CAN485MB转换器构建面成,而每一个网关CAN485MB转换器都可以组建一个RS-485标准的小型PLC网络构成。这样,就可以形成大型的星形PLC 网络。PLC网络的组态开发通过网关CAN232MB/CAN485MB转换器可以建立多个虚拟串口,用于连接PLC设备。虚拟串口的操作方式与PC标准串口完全相同。通常的组态环境(例如昆仑通态MCGS、组态王KingView等)都可以按串行通讯设备驱动的方式支持OMRON公司PLC设备的开发。如果组态环境可以支持按多串口方式扩展的多台PLC设备,同样也可以支持基于现场总线CAN-bus网络的虚拟串口方式构建的串行PLC网络。需要注意的是,串行PLC网络基于现场总线CAN-bus而构建,每一条命令帧/响应帧都需要一定的传输时间。例如,当CAN-bus总线的通讯波特率设置为10Kbps时,传输30字节的命令帧至少约需60mS传输时间;加上响应帧的延迟,PLC网络中的任何一台PLC与工控PC需要约150mS才能够执行1次完整的通讯过程。这一时间即单台PLC通讯周期。按此参数计算,当使用1条现场总线CAN-bus网络,建立有30台PLC设备构成的PLC网络时,工控PC主动查询一遍所有PLC设备的状态,大概需要花费约30倍的单台PLC通讯周期。应用组态环境开发PLC网络时,用户必须重视网络的通讯延迟因素,并在组态环境中设置相关的定时参数;否则,可能会导致组态环境不能够正常运行。我们可以通过一些方法来提高PLC网络的响应速度。解决方法之一是增加CAN-bus网络的数量,由此减少每一个CAN-bus网络中的PLC设备数量;另外,提高CAN-bus网络的通讯波特率也可以获得相同的效果,其代价是会缩短CAN-bus网络的通讯距离。
结语本文介绍的实例“通过现场总线CAN-bus网络对多台PLC进行联网控制”已经通过了实际项目的运行考验,现场作业的网络长度达到7Km以上。在系统的实际运行中,现场总线CAN-bus的稳定性、抗干扰能力得到充分的体现。在这个工程项目中,不需要改变原有的PC控制平台,可以将现有控制设备无缝地嵌入先进的现场总线网络,构成新一代的DCS分布式控制系统。方案以较低的成本投入,换取了现场自动化网络的大跨度提升。
参考文献:1. Bosch, CAN specification, Version 2.0, 1991, Robert Bosch GmbH 2. 《CiA DS 201-207 V1.1, CAN Application Layer for Industrial Applications》,CiA , 1996 3. 夏继强等,现场总线工业控制网络技术,北航出版社,20054. 构建CAN-bus网络中的虚拟串口,周立功公司,2005
数字通信相关文章:
通信相关文章:
双绞线传输器相关文章:
分享给小伙伴们:
我来说两句……
微信公众号二
微信公众号一LabVIEW与永宏PLC通信
查看: 7929|
摘要: PLC通信包括PLC间的通信及PLC与其他智能设备间的通信。随着计算机控制技术的发展,工厂自动化网络发展得很快,各PLC厂商都十分重视PLC的通信功能,纷纷推出各自的网络系统。新近生产的PLC都具有通信接口,通信非常方 ...
通信包括PLC间的通信及PLC与其他智能设备间的通信。随着技术的发展,工厂自动化网络发展得很快,各PLC厂商都十分重视PLC的通信功能,纷纷推出各自的网络系统。新近生产的PLC都具有通信接口,通信非常方便。本章具体介绍LabVIEW与永宏PLC通信的设计过程。
<FONT color=#.1.1 通信硬件连接
图11-1即为永宏PLC的硬件图,其中的硬件通信板可以选择,图11-2所示为选择的RS485与RS232的通信接口。
<FONT color=#.FBS-CB22通信板(Communication Board简称CB)
<FONT color=#.FBS-CB22通信板对应的盖板(每一种通信板都有其对应的盖板)
图11-1& 永宏FBS系列PLC硬件
图11-2 &FBS-CB22 RS232和RS485接口通信板
<FONT color=#.1.2& PLC串口通信原理
PLC各型主机均内建2个通信接口的标准配置,即一个RS232和一个RS485通信接口,其RS232接口主要用于上下载程序或用来与上位机、通信,而RS485接口主要用于组建使用RS485协议的网络,实现通信控制。
<FONT color=#.RS232接口
RS232-C接口连接器一般使用型号为DB-9的9芯插头座,只需3条接口线,即“发送数据”、“接收数据”和“信号地”即可传输数据,其9个引脚的定义如图11-3所示。
图11-3 &RS232-C接口连接器定义
在RS232的规范中,电压值在+3V~+15V(一般使用+6V)称为“0”或“ON”。电压在-3V~-15V(一般使用-6V)称为“1”或“OFF”;计算机上的RS232“高电位”约为9V,而“低电位”则约为-9V。
RS232为全双工工作模式,其信号的电压是参考地线而得到的,可以同时进行数据的传送和接收。在实际应用中采用RS232接口,信号的传输距离可以达到15m。不过RS232只具有单站功能,即一对一通信。
<FONT color=#.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比特的停止位,停止位后面是不定长度的空闲位。停止位和空闲位都规定为高电平,这样就保证起始位开始处一定有一个下降沿,以此标识开始传送数据。
<FONT color=#.1.3& 永宏PLC通信协议
永宏通信协议可以简单通过串口来实现,上位机的具体参数如图11-6所示。
永宏PLC除了拥有自己的永宏标准通信协议以外,还支持Modbus通信协议(Porto除外),具体的通信步骤如下:
Port0(RS232或USB)
通信速率4.8 kbps ~ 921.6 kbps(9.6 kbps)
Port1~Port4
(RS232、RS485或Ethernet)
通信速率4.8 kbps ~ 921.6 kbps(9.6 kbps)
Port1~4可提供永宏或Modbus RTU Master/Slave通信协议
最大联机站数
图11-6& 永宏PLC通信参数
(1)设定外围设备的参数。
— 控制方式(如启动、停止):通信控制。
— 频率给定方式:通信设置。
— 设置通信参数:波特率、数据位、校验方式、停止位、RTU或者ASCII方式。
(2)PLC同该设备的RS485接线。
(3)改变设备的控制地址。找到所需要的控制地址,然后变成永宏Modbus地址。
(4)设定PLC通信接口的通信参数和通信方式,PLC和该设备上配置的参数要一致。
(5)在PLC内写M-BUS指令,并填写所需要的相应的通信表格。
(6)程序写好后,接通,进行调试。
<FONT color=#.1.4& 程序结构
本例程序采用循序结构控制,程序流程框图如图11-7所示,主要由打开串口、设置串口、向串口写命令、读返回值、关闭串口4部分组成。
图11-7& 程序流程
程序中对串口的操作使用的是VISA。
VISA是虚拟仪器软件结构体系(Virtual Instrument Software Architecture)的简称。VISA是在所有LabVIEW工作平台上控制VXI、GPIB、RS232以及其他种类仪器的单接口程序库,是组成VXI Plug & Play系统联盟的35家最大的公司所统一采用的标准。采用VISA标准后,就可以不考虑时间及仪器I/O选择项,驱动软件可以相互兼容。VISA的功能模块包含在LabVIEW Instrument I/O的VISA子模板中。
VISA驻留于计算机系统中,是计算机与仪器之间的软件连接层,用以实现对仪器的控制。VISA对于测试软件开发者来说是一个可调用的操作函数集,它本身不提供仪器编程能力,只是一个高层API(应用程序接口),通过调用低层的驱动程序来控制仪器。NI-VISA的层次如图11-8所示。
VISA的内部结构是一个先进的、面向对象的结构,这一结构使得VISA和在它之前的I/O控制软件相比,在接口无关性、可扩展性和功能上都有很大提高。VISA主要由Config模块、Write模块、Read模块、Close模块组成,下面对这些模块做详细介绍。
VISA Config模块对VISA资源信息如波特率、通信端口名称、数据校验、数据位等进行配置,并通过VISA resource Name端口将打开的VISA资源名称传递给下一个节点。
VISA Write模块把write buffer中的字符串写入VISA session指定的设备中。dup VISA session向下传送相同的session值。在UNIX工作平台上,数据同步写入;在其他工作平台上,数据异步写入。return count返回实际传送的字节数。error in和error out字符串用于说明出错状况。
VISA Read模块读取由VISA session指定设备中的数据。byte count指明读入read buffer中的字节数,当收到的字节数小于read buffer中所指定的字节数时,VISA read 将会一直等待,直到收到的字节数等于read buffer中所指定的字节数。VISA session向下传送相同的session值。同样,在UNIX工作平台上,数据同步读入;其他平台上的数据异步读入。
VISA Close模块关闭由VISA session指定设备的通信过程,释放系统资源。
VISA仪器控制流程见图11-9。图11-10为串口读写程序示意图。
&&&&&&&&&&&&&&&&&&
&& 图11-8 &VISA结构层次&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &&&& 图11-9 &VISA仪器控制流程
图11-10& 串口读写程序
<FONT color=#.1.5& 程序编写
基于LabVIEW的PC与PLC串口通信程序的面板如图11-11所示。
根据永宏PLC的通信协议及数据操作流程,本程序采用顺序结构。顺序结构可实现数据流的顺序流动,首先打开串口和设置串口参数(如图11-12所示),波特率为9600 Bps,串口号为COM1,偶校验(Even),7位数据位,数据停止位为10(如图11-13所示)。
&& 图11-11& 程序面板&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &&& 图11-12& VISA串口配置
图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& 关闭串口
<FONT color=#.1.6& 实例小结
本例运用LabVIEW驱动配置方法通过VISA建立了上位机与永宏PLC通信的程序,对于其他品牌和型号的PLC通信,同样可以使用该方法。同样,Modbus协议的设备间通信也可以使用此类方法。
上一篇:下一篇:
看过《LabVIEW与永宏PLC通信》的人还看了以下文章:
Powered by &
这里是—这里可以学习 —这里是。
栏目导航:

我要回帖

更多关于 labview串口 的文章

 

随机推荐