0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

采用LabVIEW实现Modbus通讯协议的方式

汽车玩家 来源:今日头条 作者:工控君 2020-01-16 17:22 次阅读

1. Modbus简介

Modbus是Modicon公司(现在已经被施耐德收购成为了施耐德旗下品牌)为其PLC通讯而开发的一种通讯协议,从1979年问世至今,已经成为工业通讯领域的业界标准(De facto),最初的Modbus通讯协议仅支持串口,分为Modbus RTU和ACSII两种信号传输模式(一般基于RS485串口通信媒介),而随着时代进步,Modbus也与时俱进,新增了Modbus TCP版本,可以通过以太网进行通讯,此外,Modbus还有一个Modicon专用的Modbus Plus(Modbus +)版本。和其他工业通信协议相比,Modbus主要的优点包括内容公开没有版权要求,不用支付额外费用、硬件要求简单容易部署、使用广泛便于系统集成。Modbus采用半双工的通讯方式,由1个子站和多个从站组成,允许多个设备连接在同一个网络上进行通讯。

2. LabVIEW实现Modbus通讯的方式

针对Modbus的串口和TCP两种不同的方式,在LabVIEW中通常可以通过以下几种方法实现Modbus通讯。其中一些实现方式需要安装LabVIEW 数据记录与监控(DSC)模块.

Modbus RTU/ASCII的实现方式

通过VISA直接进行串口操作实现

通过LabVIEW DSC模块中的Modbus模块实现

通过LabVIEW DSC模块中的OPC模块实现

Modbus TCP

通过LabVIEW标准的TCP模块实现

通过LabVIEW DSC模块中的Modbus模块实现

通过LabVIEW DSC模块中的OPC模块实现

以下就几种实现方式进行示例与说明。

3. LabVIEW通过VISA实现Modbus串口通信

VISA( Virtual Instrument Software Architecture,虚拟仪器软件架构),是美国国家仪器公司(NI)推出的通用串行通讯软件,最初用于NI公司LabVIEW等软件与串行设备进行通讯,现在已成为工业通讯的标准之一。通过VISA通讯时,软件会自动扫描机器中的串口资源供选择,对于没有串口的笔记本电脑,则通常需要通过USB-RS485的转换线来实现虚拟串口。找到串口后,建立必要的VISA资源,然后在此基础上进行通讯。采用VISA通讯时串口通讯的数据以及CRC校验值等均需要自行计算并保证准确,否则可能导致通讯失败。采用LabVIEW的VISA实现Modbus的程序示例如下图。

4. LabVIEW通过Modbus模块实现Modbus通讯

在安装了DSC扩展包后,在LabVIEW下实现Modbus通讯最方便的方法是采用Modbus模块。这时只需要选择相应的命令模块即可实现通讯与命令,而不需要自行写入相应的字符串命令。采用Modbus模块的时,可方便地在RTU和TCP两种协议中转换,根据需要选择不同协议。这是LabVIEW多态的一个非常好的示例。程序见下图。

5.LabVIEW 采用TCP模块实现Modbus通讯

在没有DSC模块的情况下,或是有特殊要求的时候,也可以直接使用LabVIEW内置的TCP模块编写Modbus通信程序。其过程与采用Modbus模块比较相似,只是在第一步建立连接时要指定Modbus通讯端口参数,默认情况下Modbus TCP使用502端口。如果通讯不上,有必要检查防火墙是否允许该端口通讯。采用TCP模块实现Modbus通讯的程序如下。

6. LabVIEW采用OPC协议实现Modbus通信

OPC全称是OLE for Process Control,用于过程控制的OLE协议。OLE是Object Linking and Embedding,对象连接与嵌入的缩写,这是基于微软的COM技术实现数据交换的一个协议。COM指的不是互联网域名的.com,是Component Object Model(部件对象模型)的缩写——这一段解释真拗口,简言之在OPC协议出现前,工业设备之间的通讯非常繁琐复杂,而OPC将这一过程大大简化,通过OPC协议可以将各种基于不同协议的工业设备连接起来。当然,OPC协议也有一定的代价,通讯速度与可靠性、实时性都没有原生协议好。因此,在可以通过原生协议完成通讯的情况下,应尽量避免采用OPC。

OPC协议的实现要通过两部分完成。首先是OPC服务器,这是软件程序与不同协议下工业设备通讯的中间件,相当于网关。在OPC服务器下设置要连接的工业设备,把需要读/写的变量设置在其中,供OPC客户端访问。通过LabVIEW编程实现的部分相当于OPC客户端,用于从OPC服务器端读写数据。关于LabVIEW下使用OPC协议的通讯办法,NI官方有详细的文档资料。搭建的OPC服务器示意如下。

结语

Modbus协议作为一种通用的工业通讯标准,在业界得到非常广泛的应用,LabVIEW作为NI公司主力产品,同样有着相当广泛的用途,采用LabVIEW实现Modbus通讯协议,在实践中有着非常重要的意义。

采用LabVIEW实现Modbus通讯协议的方式

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • LabVIEW
    +关注

    关注

    1970

    文章

    3654

    浏览量

    323313
  • MODBUS
    +关注

    关注

    28

    文章

    1799

    浏览量

    76950
  • TCP
    TCP
    +关注

    关注

    8

    文章

    1353

    浏览量

    79055
收藏 人收藏

    评论

    相关推荐

    串口屏Modbus通讯协议详解

    Modbus是一种开放的通信协议,广泛应用于工业自动化领域。它定义了消息结构和设备间的通信方式,支持多种物理层网络,如RS-232、RS-485等。本文将详细介绍如何在串口屏上实现
    的头像 发表于 10-20 14:23 1455次阅读

    Profibus PA转Modbus RTU协议网关

    捷米特JM-RTU-PA网关将Profibus PA和Modbus RTU专用通讯协议桥接的协议转换设备。符合Modbus RTU
    的头像 发表于 09-25 11:47 299次阅读
    Profibus PA转<b class='flag-5'>Modbus</b> RTU<b class='flag-5'>协议</b>网关

    LABVIEW串口通讯

    labview实现串口通讯
    发表于 08-19 14:37 6次下载

    labview实现tcp通讯

    labview实现tcp通讯
    发表于 08-19 14:26 15次下载

    Modbus、楼宇自控、电力协议Modbus协议网关BL120ML支持一键对接LabVIEW

    Modbus楼宇自控电力协议Modbus协议网关BL120ML在LabVIEW中的实际应用中,我们首先需要理解LabVIEW
    的头像 发表于 08-10 10:40 402次阅读
    <b class='flag-5'>Modbus</b>、楼宇自控、电力<b class='flag-5'>协议</b>转<b class='flag-5'>Modbus协议</b>网关BL120ML支持一键对接<b class='flag-5'>LabVIEW</b>

    如何通过Modbus、楼宇自控与电力协议Modbus协议网关实现楼宇设备集成至MES?

    楼宇自控和电力系统中也常采用特定的协议实现设备的监控和管理,而将这些协议转换为Modbus协议网关在MES中的应用,能够极大地提升系统的兼
    的头像 发表于 08-08 17:34 320次阅读
    如何通过<b class='flag-5'>Modbus</b>、楼宇自控与电力<b class='flag-5'>协议</b>转<b class='flag-5'>Modbus协议</b>网关<b class='flag-5'>实现</b>楼宇设备集成至MES?

    使用Modbus、楼宇自控、电力协议Modbus协议网关实现生产设备的远程监控和管理

    Modbus网关BL120ML的下行采集协议支持Modbus RTU、DLT645、BACnet MS/TP、Lonworks协议、IEC104、IEC61850、BACnet IP
    的头像 发表于 08-08 17:29 370次阅读
    使用<b class='flag-5'>Modbus</b>、楼宇自控、电力<b class='flag-5'>协议</b>转<b class='flag-5'>Modbus协议</b>网关<b class='flag-5'>实现</b>生产设备的远程监控和管理

    钡铼协议网关轻松实现Modbus转MQTT协议

    效的数据交换。本文从Modbus协议转换为MQTT协议的必要性为出发点,分析钡铼Modbus转MQTT网关BL101的优势。 一、Modbus协议的局限性
    的头像 发表于 07-23 15:51 349次阅读
    钡铼<b class='flag-5'>协议</b>网关轻松<b class='flag-5'>实现</b><b class='flag-5'>Modbus</b>转MQTT<b class='flag-5'>协议</b>

    钡铼如何实现Modbus转OPC UA协议

    实现高效的数据交换 。 一、Modbus和OPC UA简介   Modbus是一种通信协议,广泛应用于工业自动化领域。Modbus RTU
    的头像 发表于 07-11 10:35 487次阅读
    钡铼如何<b class='flag-5'>实现</b><b class='flag-5'>Modbus</b>转OPC UA<b class='flag-5'>协议</b>?

    Modbus协议转Profibus协议网关接温控表与PLC通讯

    Modbus协议转Profibus协议网关(XD-MDPB100)则是实现这一通讯的重要工具。Modbus转Profibus网关的主要功能是
    的头像 发表于 06-21 11:31 1908次阅读
    <b class='flag-5'>Modbus协议</b>转Profibus<b class='flag-5'>协议</b>网关接温控表与PLC<b class='flag-5'>通讯</b>

    通讯协议转换Modbus转Profinet网关

    Modbus转Profinet网关是工业通信转换设备,能够实现Modbus协议与Profinet协议之间的有效转换和稳定传输。通过该网关,工业设备之间可以
    的头像 发表于 06-13 14:07 473次阅读
    <b class='flag-5'>通讯</b><b class='flag-5'>协议</b>转换<b class='flag-5'>Modbus</b>转Profinet网关

    Modbus转Profinet协议转换网关:快速配置实践指南

    Modbus转Profinet协议转换网关(XD-MDPN100/300/600)是一种设备,用于实现Modbus通讯
    的头像 发表于 06-13 09:56 595次阅读
    <b class='flag-5'>Modbus</b>转Profinet<b class='flag-5'>协议</b>转换网关:快速配置实践指南

    Modbus-RTU通讯协议是什么?

    Modbus-RTU通讯协议是一种串行通讯协议,它可以用于连接不同类型的设备,以实现远程监控和控
    的头像 发表于 05-23 15:06 588次阅读

    罗克韦尔AB的PLC实现ModbusTCP和ModbusRTU协议标签方式通讯

    本文是通过IGT-DSER智能网关读写AB罗克韦尔Compact、Control系列PLC的标签数据缓存并转为Modbus从站协议,与上位机通讯的案例。打开智能网关的参数软件(在附件中),通过
    发表于 02-22 18:00

    Modbus转Profinet网关解决设备通讯不稳的问题

    /2000)具有抗干扰功能,采用映射方式进行数据传输,支持多种通信接口和网络协议,配置简单易上手。网关能够实现Modbus协议和Profin
    的头像 发表于 12-25 19:18 429次阅读
    <b class='flag-5'>Modbus</b>转Profinet网关解决设备<b class='flag-5'>通讯</b>不稳的问题