嵌入式技术分享

Embedded Technology Sharing

基于STM32和LabVIEW的Modbus TCP/IP通信项目

《基于STM32和LabVIEW的Modbus TCP/IP通信项目》

Modbus概述

  • Modbus是一种串行通信工业协议,于1979年开发,旨在实现自动化设备之间的通信;
  • Modbus协议可用于串口、以太网等通信链路;
  • Modbus协议有ModbusRTU(二进制表示数据方式)和ModbusASCII(文本可读)两种通信格式,常用RTU格式;
  • Modbus协议分主从,总线网络中只能有一个主,支持大约240从;
  • 在数据采集与监控系统中,Modbus常用来链接监控计算机和远程终端控制系统(RTU).

Modbus应用举例

  • 1.电子秤
  • 2.多功能数据采集仪
  • 3.点阵显示系统
  • 4.略

摘要

  • 作为工业用协议,STM32的普及使得Modbus在各大工控产品上得到了最大限度的应用;
  • 而在常规的教学中,并没有相关的案例(Demo)让初学者很好的去接触Modbus协议;
  • 网络上普遍是枯燥的Modbus原理讲解,相关书籍也是寥寥,目前市面上针对Modbus协议开发的书籍只有《Modbus软件开发实战》一书,其几乎是纯软件的Modbus编程和Modbus相关原理介绍,并没有涉及Modbus设备方面的开发介绍。
  • 为了消除这一困扰,博主将自己的STM32与LabVIEW上位机Modbus通信项目(Demo)开源,方便广大STM32爱好者更好地学习和开发Modbus相关产品。

项目简介

  • 项目基于正点原子STM32F4探索者开发板和LabVIEW开发的上位机软件进行Modbus协议通信;
  • 项目采用TCP/IP通信方式,移植freeModbus协议到STM32,利用LabVIEW Modbus库,编写配套上位机读取开发板按键、AD值,并可通过上位机设置开发板LED、DAC状态。

功能简介

  • 线 圈 :led控制
  • 离散输入 :按键读取
  • 保持寄存器:ADC读取
  • 输入寄存器:DAC设置

代码下载

注意事项

  • 1.开发板与运行上位机的PC需要连入同一局域网;
  • 2.编译代码前需要修改静态IP参数,需与您的局域网网段一致;
  • 3.开发板需要插入LCD显示屏;
  • 4.PC需要安装高于LabVIEW2013的开发环境,并将NI Modbus库解压到对应文件夹;
  • 5.运行LabVIEW上位机前,填入开发板的静态IP;
  • 6.不熟悉LabVIEW的同学可以使用ModbusPoll调试工具进行学习。

视频教程

其他

  • 待补充

上位机效果图

《基于STM32和LabVIEW的Modbus TCP/IP通信项目》

如果文章对您有帮助,欢迎移至上方按钮打赏博主;

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注