基于labview的modbus上位机程序-读写寄存器-避坑指南
labviw本身的modbus程序其实并是不很难,在官方给我们的例程中修改后既可以使用,但是modbus环境的配置我称之为大坑,因为网上没有很详细的环境配置教程和例程函数的使用方法,故想写这篇文章方便后人避坑,所用文件均在网盘中。
目录
MB Serial Master Query Read Holding Registers (poly).vi
MB Serial Master Query Write Multiple Registers (poly).vi
0.前言
labviw本身的modbus程序其实并是不很难,在官方给我们的例程中修改后既可以使用,但是modbus环境的配置我称之为大坑,因为网上没有很详细的环境配置教程和例程函数的使用方法,故想写这篇文章方便后人避坑,所用文件均在网盘中。
1.环境配置(大坑)
安装modbus库
在我们安装labview的时候会自动安装VI Package Manager (VIPM)这个软件,打开这个软件搜索modbus安装即可
安装NI
在使用modbus例程的时候,我们会发现根本无法选择COM口,这是因为电脑里少装了一个程序,才导致COM口无法选择,解压网盘链接中的ni_79778.zip,之后解压光盘文件79778.zip,按照提示安装NI.License完成即可找到COM口了
Modbus Slave
这是一个从机模拟软件,在进行调试时,可以使用该软件模拟你的从机进行调试,也就是可以脱离单片机进行调试(SN2文件中有破解序列号)
该软件使用方便,通过COM端口与labview进行通信,所以要创建虚拟串口进行通信(虚拟串口在下边),可以通过Connection Setup进行配置
ID代表从机的地址,在之后例程讲解中会讲到使用方法,左侧的0-9的数字代表寄存器,右侧数值代表寄存器的值
VSPD虚拟串口软件
使用该软件可以方便的创建一组虚拟串口,用于连接labview程序和Modbus Slave连接,对程序进行调试。
选择添加端口即可添加一组虚拟串口,也可以通过删除端口删除创建的端口
Modbus Poll
这是一款主机模拟器,可以直接实现对单片机的控制,即实现寄存器的读取和写入,该软件使用方法与Modbus Slave基本相同,治理便不在赘述
2.modbus例程讲解及使用
进行modbus的寄存器读写,其实我们只需要使用以下几个操作即可
MB Serial Init.vi
MB Serial Master Query Read Holding Registers (poly).vi
MB Serial Master Query Write Multiple Registers (poly).vi
网盘链接中附有例程文件夹和帮助文档机翻版本,操作讲解会基于labview Modbus.zip中的NI.Modebus.llb进行讲解
MB Serial Init.vi
该函数为对modbus的初始化,具体功能都在图片中标注,如果需要进行逻辑操作,直接在后面板中修改对应变量的逻辑即可,这里就不再介绍,按需编写即可
MB Serial Master Query Read Holding Registers (poly).vi
该函数用于读取寄存器的值。从机地址要与所设置的ID值相同.Starting Address为开始的寄存器地址,Quantity是要读取的数量,例如:Starting Address=0,Quantity=2,即读取寄存器0,1两个寄存器的值,并且存入Holding Registers数组中,便可以通过该数组的值执行后续操作
MB Serial Master Query Write Multiple Registers (poly).vi
该函数用于写入一组寄存器的值。从机地址要与所设置的ID值相同.Starting Address为开始的寄存器地址,Registers是要写入的数组值。例如:Starting Address=0,Registers[0]=501,数值501就被写入寄存器0中了。
3.百度网盘链接
链接:https://pan.baidu.com/s/1GafVmx8TPnXnC9Z1SevaRQ?pwd=on4u
提取码:on4u
更多推荐
所有评论(0)