上位机利用C#和下位机做Modbus Rtu通讯

[复制链接]
查看51817 | 回复0 | 2024-12-24 16:30:32 | 显示全部楼层 |阅读模式
一、背景

          通常我们在做项目的时候,需要上位机和下位机(PLC、单片机、仪表等)做通讯来采集数据,一般我们都是用各种上位机组态软件来实现,但是如果我们想很灵活的来采集控制,则上位机软件则不那么灵活,今天我们来使用c#来实现这一数据采集的功能。C#目前在工业上使用也越来越多,例如和运动控制卡、仪表、机器视觉(Halcon、Visionpro等)的联合编程使用。

二、工具

     1、vision studio 2013(官网可以下载)

2.Modbus库文件(https://code.google.com/archive/p/nmodbus/downloads?page=3)

三、实现方法

1、



点击“新建项目”

2选择“Windows窗体应用程序”,.net版本选择“.net4.0”;点击“确定”,完成了一个项目的新建。

3、鼠标右键点击项目文件,选择“引用”-“添加引用”



点击确定完成Modbus库的引用,using Modbus.Device

4、添加命名空间引用,如图



5、添加串口控件



将“SerialPort”移动到窗体上,控件会自动添加

6、修改串口空间参数



BaudRate:波特率,默认为9600

DataBits:数据位,默认为8

PortName:串口号,默认为COM1,具体串口号,要根据电脑上的实际物                     理端口号更改设置

StopBits:停止位,默认为1

Parity:奇偶校验位,默认为None

-----通常就该这五个参数就可以了,通讯参数要和下位机保持一样,否则通讯不上。

7、在程序执行前打开串口



8、在窗体上添加一个“Botton”控件,并添加事件



每当点击一次按钮,都会给40200、40201、40202赋值

。。。。。。。。。。。。。。。。。。。。。。

就按照 这个方法就可以和下位机通讯采集数据

当然采集来的数据,可以保存到CSV格式的文件中

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则