CN102034377A - Modbus网络模拟量采集与显示的实验系统及方法 - Google Patents
Modbus网络模拟量采集与显示的实验系统及方法 Download PDFInfo
- Publication number
- CN102034377A CN102034377A CN 201010580241 CN201010580241A CN102034377A CN 102034377 A CN102034377 A CN 102034377A CN 201010580241 CN201010580241 CN 201010580241 CN 201010580241 A CN201010580241 A CN 201010580241A CN 102034377 A CN102034377 A CN 102034377A
- Authority
- CN
- China
- Prior art keywords
- node
- input
- modbus
- unit
- microprocessor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Small-Scale Networks (AREA)
Abstract
一种Modbus网络模拟量采集与显示的实验系统及方法,该实验系统包括主节点和从节点,主节点和从节点各包括键盘单元、微处理器、显示单元和通信单元;键盘单元的控制数据输出总线端连接所述微处理器的控制数据输入总线端;微处理器的显示数据输出总线端连接所述显示单元的数据输入总线端;通信单元的通信数据输入输出总线端连接所述微处理器的通信数据输入输出总线端;从节点还包括模拟量输入单元;所述模拟量输入单元的模拟量数据输出总线端连接所述微处理器的A/D数据输入总线端;通过调整所述从节点的电位器以得到8路0-5V范围内的DC电压输入;所述通信单元连接在Modbus总线上。本发明能演示工业现场中常见的Modbus网络中模拟量输入采集及通信的功能。
Description
技术领域
本发明涉及一种实验系统及方法,尤其涉及一种Modbus网络模拟量采集与显示的实验系统及方法。
背景技术
随着现场总线技术的发展,以Modbus总线为代表的各种现场总线越来越多地应用于工业现场。Modbus总线具有协议简单、实施容易、性价比高、可靠性高等优点,因而得到了广泛应用。0-5V DC电压信号是工业现场中经常使用的模拟信号。模拟量输入信号对应于Modbus协议中的输入寄存器数据,模拟量信号的通信是Modbus协议中的重要部分。对Modbus网络中的模拟量输入信号进行采集、通信与显示,对于理解Modbus关键技术、设计Modbus相关产品是很有意义的。但是国内外关于如何通过实验手段展示Modbus网络中模拟量数据的采集和通信过程,并加以直观显示,目前尚无文献介绍,这在很大程度上阻碍了Modbus总线技术的教学实验与实际应用工作的展开。
发明内容
本发明的主要目的在于提供一种Modbus网络模拟量采集与显示的实验系统,能演示工业现场中常见的Modbus网络中模拟量输入采集及通信的功能,并能对采集数据和通信报文进行显示,得出的结果直观。
本发明提供了一种Modbus网络模拟量采集与显示的实验系统,包括主节点和从节点,其中,
所述主节点包括第一键盘单元、第一微处理器、第一显示单元和第一通信单元;
所述第一键盘单元的控制数据输出总线端连接所述第一微处理器的控制数据输入总线端;
所述第一微处理器的显示数据输出总线端连接所述第一显示单元的数据输入总线端;
所述第一通信单元的通信数据输入输出总线端连接所述第一微处理器的通信数据输入输出总线端。
所述从节点包括第二键盘单元、第二微处理器、第二显示单元、第二通信单元和模拟量输入单元;
所述第二键盘单元的控制数据输出总线端连接所述第二微处理器的控制数据输入总线端;
所述第二微处理器的显示数据输出总线端连接所述第二显示单元的数据输入总线端;
所述第二通信单元的通信数据输出输入总线端连接所述第二微处理器的通信数据输出输入总线端;
所述模拟量输入单元的模拟量数据输出总线端连接所述第二微处理器的A/D数据输入总线端;
所述从节点的模拟量输入单元有8个通道,每个通道均包括+5V电源、电位器和分压电阻,通过调整所述电位器以得到8路0-5V范围内的DC电压输入;
所述主节点的第一通信单元和所述从节点的第一通信单元均连接在Modbus总线上。
本发明还提供了一种基于上述的实验系统的Modbus网络模拟量采集与显示的实验方法,包括以下步骤:
步骤一:启动系统,初始化主节点和从节点;
步骤二:设置所述主节点和所述从节点的通信参数,该通信参数包括Modbus报文帧模式和波特率参数,所述从节点还需设置从节点地址;
步骤三:所述从节点在主程序中循环读取8路模拟量输入信号的A/D值,该8路模拟量输入信号的A/D值对应于Modbus协议中地址为0-7的输入寄存器数据,并将读取到的该8路模拟量输入信号的A/D值转换为实际的电压值,将该电压值显示在该从节点的第二显示单元上;
步骤四:通过所述主节点的第一键盘单元输入一帧正确的请求报文,该请求报文符合Modbus协议中的读取输入寄存器命令;所述主节点在该请求报文后添加按Modbus协议计算出的2个字节的CRC值,并将请求报文帧发送到Modbus总线上;
步骤五:所述从节点接收到正确请求报文,将输入寄存器数据封装到一帧正常响应报文中发送到Modbus总线上;
步骤六:所述主节点接收到正常响应报文后,将读取到的输入寄存器数据转换为实际电压值,并将响应报文和模拟量输入电压值依次显示在该主节点的第一显示单元上,用户可比较主节点显示单元和从节点显示单元上的模拟量输入电压值;
步骤七:通过所述主节点的第一键盘单元输入一帧错误的请求报文,该报文不符合Modbus协议中的读取输入寄存器命令;所述主节点在该请求报文后添加按Modbus协议计算出的2个字节的CRC值,并将该请求报文帧发送到Modbus总线上;
步骤八:所述从节点接收到错误请求报文,回复一帧异常响应报文;
步骤九:所述主节点接收到该异常响应报文后,将该异常响应报文内容和异常提示字符串依次显示在该主节点的第一显示单元上。
较佳地,所述步骤四中通过所述主节点的第一键盘单元输入的正确请求报文内容的十六进制数依次为01h、04h、00h、00h、00h、08h。
较佳地,所述步骤七中通过所述主节点的第一键盘单元输入的错误请求报文内容的十六进制数依次为01h、04h、00h、08h、00h、08h。
本发明能演示工业现场中常见的Modbus网络中模拟量输入采集及通信的功能,并能对采集数据和通信报文进行显示,得出的结果直观。本发明的报文内容能够体现出正确和错误的情况,有助于掌握Modbus协议中读取输入寄存器的命令,有助于Modbus总线教学实验和培训的开展。它还具有结构简单的优点。
附图说明:
图1是本发明的电路结构示意图。
具体实施方式:
具体实施方式一:结合图1说明本实施方式,本实施方式的系统包括主节点1和从节点2。
所述主节点1主要由第一键盘单元1-1、第一微处理器1-2、第一显示单元1-3、第一通信单元1-4组成;第一键盘单元1-1的控制数据输出总线端连接第一微处理器1-2的控制数据输入总线端;第一微处理器1-2的显示数据输出总线端连接第一显示单元1-3的数据输入总线端;第一通信单元1-4的通信数据输入输出总线端连接第一微处理器1-2的通信数据输入输出总线端。
从节点2主要由第二键盘单元2-1、第二微处理器2-2、第二显示单元2-3、第二通信单元2-4、模拟量输入单元2-5组成;第二键盘单元2-1的控制数据输出总线端连接第二微处理器2-2的控制数据输入总线端;第二微处理器2-2的显示数据输出总线端连接第二显示单元2-3的数据输入总线端;第二通信单元2-4的通信数据输出输入总线端连接第二微处理器2-2的通信数据输出输入总线端;模拟量输入单元2-5的模拟量数据输出总线端连接第二微处理器2-2的A/D数据输入总线端。
从节点2的模拟量输入单元2-5有8个通道,每个通道均包括+5V电源、电位器和分压电阻,调整电位器即可得到8路0-5V范围内的DC电压输入。
主节点1的第一通信单元1-4和从节点2的第一通信单元2-4均连接在Modbus总线上。
本发明所述的Modbus网络模拟量采集与显示的方法步骤如下:
步骤一、启动系统,初始化主节点1和从节点2;
步骤二、通过主节点1的第一键盘单元1-1对第一微处理器1-2的通信参数进行设置,即设置Modbus报文帧模式和波特率参数;
步骤三、通过从节点2的第二键盘单元2-1对第二微处理器2-2的通信参数进行设置,即设置Modbus报文帧模式、波特率参数和从节点2的地址(范围为1-247,这里设置为1),其中从节点2所设置的Modbus报文帧模式、波特率参数与主节点完全一致;
步骤四、从节点2在主程序中循环读取模拟量输入信号的A/D值,并保存在一维数组X中,该一维数组的数据类型为16位无符号整型,数组中有8个元素,该8个元素分别对应于Modbus协议中地址为0-7的输入寄存器数据;
步骤五、从节点2将读取到的该模拟量输入信号的A/D值转换为实际的电压值,并显示在第二显示单元2-3上;
步骤六、通过主节点1的第一键盘单元1-1输入6个字节的请求报文,该请求报文的十六进制数依次为01h、04h、00h、00h、00h、08h;该请求报文含义如下:按Modbus协议,首字节01h(字节1)为地址域,即为从节点的节点地址;字节2为功能域,04h为读输入寄存器功能代码;字节3-字节4为起始地址域,即所要读取的输入寄存器的起始地址;字节5-字节6为寄存器数目域,即所要读取的输入寄存器的数目;另外,主节点1中请求报文的第6字节后添加按Modbus协议计算出的2个字节的CRC值(CRCL、CRCH),即请求报文帧长度为8字节;输入完毕后主节点1将请求报文帧发送到Modbus总线上;
步骤七、从节点接收到该请求报文,解析报文内容,符合Modbus协议中的读取输入寄存器命令,将地址为0-7的输入寄存器数据封装到一帧正常响应报文中发送到Modbus总线上,正常响应报文长度为21字节,内容为01h、04h、10h、REG0_H、REG0_L、...、REG7_H、REG7_H、CRCL、CRCH,含义如下:按Modbus协议,首字节01h(字节1)为地址域,即从节点的节点地址;字节2为功能域,04h为读输入寄存器功能代码;字节3为字节数目域,即输入寄存器数据的字节数目,8个寄存器数据字节数目为10h;字节4-字节19分别为地址0-7的寄存器数据;字节20-字节21为CRC校验值;
步骤八、主节点接收到正常响应报文后,将读取到的输入寄存器数据转换为实际电压值,并将正常响应报文内容和模拟量输入电压值依次显示在显示单元上,用户可比较主节点显示单元和从节点显示单元上的模拟量输入电压值是否一致;
步骤九、通过主节点,主节点1中输入6个字节的请求报文,该请求报文的十六进制数依次为01h、04h、00h、08h、00h、08h,即读取地址为8-15的输入寄存器数据;主节点在请求报文的第6字节后添加按CRC校验算法计算出的2个字节的CRC值(CRCL、CRCH),并发送该报文;
步骤十、从节点2接收到该请求报文,解析报文内容,不符合Modbus协议中的读取输入寄存器命令,回复4个字节的异常响应报文,该异常相应报文的十六进制数依次为84h、02h、CRCL、CRCH,其含义如下:按Modbus协议,首字节(84h)为错误码域,异常响应中的功能码值比正常响应中的功能码值高十六进制80h;字节2(02h)为异常码域,表示数据地址非法;字节3-字节4为CRC校验值;
步骤十一、主节点1接收到异常响应报文后,在第一显示单元1-3上显示异常响应报文内容,并显示“数据地址非法,合法地址应为0-7!”。
以上说明对本发明而言只是说明性的,而非限制性的,本领域普通技术人员理解,在不脱离所附权利要求所限定的精神和范围的情况下,可做出许多修改、变化或等效,但都将落入本发明的保护范围内。
Claims (3)
1.一种Modbus网络模拟量采集与显示的实验系统,其特征在于,包括主节点和从节点,其中,
所述主节点包括第一键盘单元、第一微处理器、第一显示单元和第一通信单元;
所述第一键盘单元的控制数据输出总线端连接所述第一微处理器的控制数据输入总线端;
所述第一微处理器的显示数据输出总线端连接所述第一显示单元的数据输入总线端;
所述第一通信单元的通信数据输入输出总线端连接所述第一微处理器的通信数据输入输出总线端;
所述从节点包括第二键盘单元、第二微处理器、第二显示单元、第二通信单元和模拟量输入单元;
所述第二键盘单元的控制数据输出总线端连接所述第二微处理器的控制数据输入总线端;
所述第二微处理器的显示数据输出总线端连接所述第二显示单元的数据输入总线端;
所述第二通信单元的通信数据输出输入总线端连接所述第二微处理器的通信数据输出输入总线端;
所述模拟量输入单元的模拟量数据输出总线端连接所述第二微处理器的A/D数据输入总线端;
所述从节点的模拟量输入单元有8个通道,每个通道均包括+5V电源、电位器和分压电阻,通过调整所述电位器以得到8路0-5V范围内的DC电压输入;
所述主节点的第一通信单元和所述从节点的第一通信单元均连接在Modbus总线上。
2.一种基于如权利要求1所述的实验系统的Modbus网络模拟量采集与显示的实验方法,其特征在于,包括以下步骤:
步骤一:启动该实验系统,初始化主节点和从节点;
步骤二:设置所述主节点和所述从节点的通信参数,该通信参数包括Modbus报文帧模式和波特率参数,所述从节点还需设置从节点地址;
步骤三:所述从节点在主程序中循环读取8路模拟量输入信号的A/D值,该8路模拟量输入信号的A/D值对应于Modbus协议中地址为0-7的输入寄存器数据,并将读取到的该8路模拟量输入信号的A/D值转换为实际的电压值,将该电压值显示在该从节点的第二显示单元上;
步骤四:通过所述主节点的第一键盘单元输入一帧正确的请求报文,该请求报文符合Modbus协议中的读取输入寄存器命令;所述主节点在该请求报文后添加按Modbus协议计算出的2个字节的CRC值,并将请求报文帧发送到Modbus总线上;
步骤五:所述从节点接收到正确请求报文,将输入寄存器数据封装到一帧正常响应报文中发送到Modbus总线上;
步骤六:所述主节点接收到正常响应报文后,将读取到的输入寄存器数据转换为实际电压值,并将响应报文和模拟量输入电压值依次显示在该主节点的第一显示单元上;
步骤七:通过所述主节点的第一键盘单元输入一帧错误的请求报文,该报文不符合Modbus协议中的读取输入寄存器命令;所述主节点在该请求报文后添加按Modbus协议计算出的2个字节的CRC值,并将该请求报文帧发送到Modbus总线上;
步骤八:所述从节点接收到错误请求报文,回复一帧异常响应报文;
步骤九:所述主节点接收到该异常响应报文后,将该异常响应报文内容和异常提示字符串依次显示在该主节点的第一显示单元上。
3.根据权利要求2所述的Modbus网络模拟量采集与显示的实验方法,其特征在于,所述步骤四中通过所述主节点的第一键盘单元输入的正确请求报文内容依次为01h、04h、00h、00h、00h、08h,所述步骤七中通过所述主节点的第一键盘单元输入的错误请求报文内容依次为01h、04h、00h、08h、00h、08h。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010580241XA CN102034377B (zh) | 2010-12-09 | 2010-12-09 | Modbus网络模拟量采集与显示的实验方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010580241XA CN102034377B (zh) | 2010-12-09 | 2010-12-09 | Modbus网络模拟量采集与显示的实验方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102034377A true CN102034377A (zh) | 2011-04-27 |
CN102034377B CN102034377B (zh) | 2012-07-18 |
Family
ID=43887213
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010580241XA Expired - Fee Related CN102034377B (zh) | 2010-12-09 | 2010-12-09 | Modbus网络模拟量采集与显示的实验方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102034377B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104539502A (zh) * | 2015-01-26 | 2015-04-22 | 北海恒久天成技术开发有限公司 | 一种自定义添加modbus设备的方法 |
CN107748728A (zh) * | 2017-10-09 | 2018-03-02 | 南京云悦欣自动化工程有限公司 | 一种串口通讯分配装置及其通讯方法 |
CN108731705A (zh) * | 2018-02-07 | 2018-11-02 | 大连理工大学 | 一种并行多路Modbus通信协议的传感器模拟装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1913458A (zh) * | 2006-08-22 | 2007-02-14 | 哈尔滨工业大学 | Can的mac帧与llc帧的显示和检测系统及方法 |
CN101051881A (zh) * | 2007-05-15 | 2007-10-10 | 哈尔滨工业大学 | 能产生Modbus CRC错误并对错误进行比较、显示的系统及其方法 |
-
2010
- 2010-12-09 CN CN201010580241XA patent/CN102034377B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1913458A (zh) * | 2006-08-22 | 2007-02-14 | 哈尔滨工业大学 | Can的mac帧与llc帧的显示和检测系统及方法 |
CN101051881A (zh) * | 2007-05-15 | 2007-10-10 | 哈尔滨工业大学 | 能产生Modbus CRC错误并对错误进行比较、显示的系统及其方法 |
Non-Patent Citations (2)
Title |
---|
《仪器仪表学报》 20070430 潘悦等 基于C8051F02x单片机的Modbus实验系统 第304-306页,第327页 1 第28卷, 第4期 2 * |
《电子器件》 20090831 佟为明等 一种体现Modbus主要技术的实验系统 第833-835页,第839页 1 第32卷, 第4期 2 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104539502A (zh) * | 2015-01-26 | 2015-04-22 | 北海恒久天成技术开发有限公司 | 一种自定义添加modbus设备的方法 |
CN104539502B (zh) * | 2015-01-26 | 2018-02-13 | 北海恒久天成技术开发有限公司 | 一种自定义添加modbus设备的方法 |
CN107748728A (zh) * | 2017-10-09 | 2018-03-02 | 南京云悦欣自动化工程有限公司 | 一种串口通讯分配装置及其通讯方法 |
CN107748728B (zh) * | 2017-10-09 | 2020-06-19 | 南京云悦欣自动化工程有限公司 | 一种串口通讯分配装置及其通讯方法 |
CN108731705A (zh) * | 2018-02-07 | 2018-11-02 | 大连理工大学 | 一种并行多路Modbus通信协议的传感器模拟装置 |
Also Published As
Publication number | Publication date |
---|---|
CN102034377B (zh) | 2012-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101309306B (zh) | 在Modbus通信网络中为从节点设备分配地址的方法 | |
CN102034377B (zh) | Modbus网络模拟量采集与显示的实验方法 | |
CN105117464B (zh) | 一种应用推送方法、装置及服务设备 | |
CN104361190B (zh) | 二次系统中虚端子自动化连接的方法及装置 | |
CN102761389A (zh) | 非同步主从式串行通信系统、数据传输方法与控制模块 | |
CN109257367A (zh) | 一种用于工业物联网终端的数据通信协议及实现方法 | |
CN109038824B (zh) | 一种分布式馈线自动化方法 | |
US8694879B1 (en) | Efficient use of CRC with limited data | |
CN107861833A (zh) | 识别码的生成方法和装置、计算机设备、可读存储介质 | |
CN105160282B (zh) | 机型选择系统及机型选择方法及家用电器 | |
CN110460473B (zh) | 组态软件的通信配置方法、装置和计算机可读存储介质 | |
CN203135655U (zh) | 一种电子换向电机接口信号转换子线路板 | |
CN104834276A (zh) | 汽车can总线网络及其从节点和汽车 | |
CN211908850U (zh) | 一种电动车的一线通扩展通讯装置 | |
US9450925B2 (en) | Methods and systems for auto-commissioning of devices in a communication network | |
CN115407744A (zh) | 一种多协议总线故障注入系统及其控制方法 | |
CN105207351B (zh) | 对智能电表进行信息广播的方法 | |
CN113891537B (zh) | 通过电脑模拟数字调光协议时序逻辑的方法、装置及介质 | |
CN210444251U (zh) | 一种编码器兼容电路及系统 | |
CN108632016A (zh) | 一种多吸引子的自治忆阻混沌电路 | |
CN105243807A (zh) | 一种数据传输系统及方法 | |
CN104749549A (zh) | 一种电力计量表安装信息校核系统 | |
CN106610899A (zh) | 一种测试用例生成方法及装置 | |
CN102306444A (zh) | 一种m-bus主站接收电路及数据接收方法 | |
CN112529724A (zh) | 用电量监测方法、系统、移动终端及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120718 Termination date: 20131209 |