2023年1月机电技术机电技术基于基于Labview的Modbus监控系统设计监控系统设计*梁长峰贾王纤曹菁陶斯弦雷钧(湖北汽车工业学院电气与信息工程学院,湖北十堰442002)摘要文章设计了基于Labview的Modbus监控系统,以Labview为上位机,单片机为下位机,上位机和下位机之间采用Modbus通信方式,由上位机发送指令进行通信。监控系统工作时,Labview程序首先进行初始化,然后等待用户的指令,根据指令转入到相应程序模块,如数据采集模块,可以采集下位机送入通信串口的数据;数据处理模块,可以解析采集到的数据并在人机交互界面显示;保存模块,可以实时保存采集的数据。关键词Labview;Modbus;通信中图分类号:TP273文献标识码:A文章编号:1672-4801(2023)01-016-04DOI:10.19508/j.cnki.1672-4801.2023.01.005*湖北汽车工业学院大学生创新训练计划项目(DC2022028)作者简介:梁长峰(2002—),男,本科生,从事自动化技术方面的学习与研究。通讯作者:雷钧(1975—),男,教授,研究方向为工业互联与智能制造等。1通信协议设计Modbus通信协议,是一种串行通信协议,是Modicon公司于1979年开发的一种应用层报文传输协议[1]。由于易于部署和维护,可靠性强,因此本文中的单片机与Labview之间采用Modbus通信协议。Modbus通信协议有RTU和ASCII两种传输方式[2]。在相同的速率之下,采用RTU模式时,传送的数据要大于ASCII模式,本文采用RTU模式。文中所设计的系统采用0x10功能码(写多个寄存器),用于向单片机写入参数;以及0x03功能码(读多个寄存器),用于读取单片机采集到的数据。2Labview上位机软件设计为了实现上位机与下位机之间的通信,上位机对采集的数据进行显示、存储等操作,设计了Labview软件程序,主要包含初始化模块、数据接收、发送、处理、保存等功能。主监控系统主要包含数据接收、发送、处理、存储模块。本系统的通信策略是:在通信时打开串口连接,上位机定时循环发送读取命令并接收数据,如果判断通信有错误时不关闭串口连接,而是丢弃读缓冲区的数据以节约通信时间,主程序流程图如图1所示。程序运行后,首先进行初始化操作。初始化完成后,即清空串口数据操作,单片机没有任何返开始打开串口串口是否被占用?提示用户串口打开失败打开串口读取数据判断返回的数据是否正确?丢弃错误数据是否否是读取数据并解析、显示图1LabviewLabview主程序流程图主程序流程图回值,所以不进行数据处理,程序返回“等待命令”状态。若此时点...