0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Model3C芯片HMI方案:86彩屏中控面板Modbus协议说明

启明智显 2024-06-24 16:55 次阅读

一、概述


Model3C芯片是一款基于RISC-V的高性能、国产自主、工业级高清显示与智能控制MCU,配备强大的2D图形加速处理器、PNG/JPEG解码引擎,并支持工业宽温。基于Model3C芯片的86彩屏中控面板,通过集成Modbus协议,实现了与多种控制设备的通信和数据交换。

wKgZomZ5M5eAVNe-AAdTv-VTtAc965.png


二、Modbus协议简介


Modbus协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其他设备之间可以通信。它已经成为一通用工业标准,使得不同厂商生产的控制设备可以连成工业网络,进行集中监控。

此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。它描述了一控制器请求访问其它设备的过程,如何回应来自其它设备的请求,以及怎样侦测错误并记录。它制定了消息域格局和内容的公共格式。当在一Modbus网络上通信时,此协议决定了每个控制器须要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行动。如果需要回应,控制器将生成反馈信息并用Modbus 协议发出。在其它网络上,包含了 Modbus 协议的消息转换为在此网络上使用的帧或包结构。这种转换也扩展了根据具体的网络解决节地址、路由路径及错误检测的方法。

三、Modbus RTU在Model3C芯片方案中的应用


通信接口:Model3C芯片方案支持RS-485接口,该接口是Modbus RTU常用的串行通信接口之一。通过RS-485接口,86彩屏中控面板可以与其他Modbus设备(如PLC传感器等)进行通信。

通信参数:在Model3C芯片方案中,Modbus RTU通信采用异步通讯模式,具体参数包括1位起始位、8位数据位、1位停止位、无校验位,波特率可根据实际需求进行配置(如常用的9600波特率)。

报文格式:Modbus RTU报文包括设备地址、功能码、数据域和CRC校验码等部分。在Model3C芯片方案中,这些报文格式遵循Modbus协议规范,确保通信的准确性和可靠性。

主从通信:在Modbus RTU通信中,Model3C芯片方案的86彩屏中控面板可以作为主设备(Master)或从设备(Slave)进行通信。作为主设备时,它可以主动发起查询请求;作为从设备时,它可以响应主设备的查询请求并提供相关数据。

功能码:Modbus协议定义了多种功能码(如读取线圈状态、写入线圈状态、读取保持寄存器等),用于实现不同的通信功能。

在Model3C芯片方案中,这些功能码得到了全面支持,使得86彩屏中控面板可以实现与多种Modbus设备的灵活通信和数据交换。

四、rt-thread 使用libmodbus-rtu库


libmodbus是一个与使用Modbus协议的设备进行数据发送/接收的库。该库包含各种后端通过不同网络进行通信(例如,RTU模式下的串口或TCP / IPv6中的以太网)。

wKgZomZ5M6uAHc0oAAEv7NFMnrM986.png


将libmodbus库从软件包里启用, libmodbus是基于select操作的,依赖于文件系统和libc,需要在rt-thread中开启对应的支持。

RS485的话需要指定 modbus_rtu_set_serial_mode(ctx, MODBUS_RTU_RS232); //改为485
modbus_rtu_set_rts(ctx, RS485_RE, MODBUS_RTU_RTS_UP); //指定485控制引脚和电平

#include “modbus_rtu_test.h” #include “modbus.h” #include “stdio.h” #include “string.h” #include #include /* 使用BSD socket,需要包含socket.h头文件 */ #include #include #include #define RS485_RE GET_PIN(G, 8) static void test_thread(void *param) { int slaveaddrs = 3; uint16_t tab_reg[64] = {0}; modbus_t *ctx = RT_NULL; ctx = modbus_new_rtu("/dev/uart2", 9600, ‘N’, 8, 1); modbus_rtu_set_serial_mode(ctx, MODBUS_RTU_RS232); //modbus_rtu_set_rts(ctx, RS485_RE, MODBUS_RTU_RTS_UP); modbus_set_slave(ctx, slaveaddrs); modbus_connect(ctx); modbus_set_response_timeout(ctx, 0, 200000); //50ms int num = 0; while (1) { memset(tab_reg, 0, 64 * 2); int regs = modbus_read_registers(ctx, 0, 20, tab_reg); if (regs == -1) { rt_kprintf(“error addrs %d—\n”, slaveaddrs); if(slaveaddrs == 2) { slaveaddrs = 3; } else { slaveaddrs = 2; } modbus_set_slave(ctx, slaveaddrs); } else { rt_kprintf("-->addrs %d", slaveaddrs); rt_kprintf("[%4d][read num = %d]", num, regs); num++; int i; for (i = 0; i < 20; i++) { rt_kprintf("<%#x>", tab_reg[i]); } rt_kprintf("\n"); if(slaveaddrs == 2) { slaveaddrs = 3; } else { slaveaddrs = 2; } modbus_set_slave(ctx, slaveaddrs); } rt_thread_mdelay(500); } //7-关闭modbus端口 modbus_close(ctx); //8-释放modbus资源 modbus_free(ctx); } static void rtu77(int argc, char **argv) { //rt_pin_mode(RS485_RE, PIN_MODE_OUTPUT); rt_thread_t tid; tid = rt_thread_create(“test”, test_thread, RT_NULL, 2048, 12, 10); if (tid != RT_NULL) rt_thread_startup(tid); return RT_EOK; } MSH_CMD_EXPORT(rtu77, a rtu test);

五、Modbus RTU布线


Modbus RTU使用串行通信,通常使用RS-232或RS-485接口。

RS-232:这是一种点对点的通信方式,每个设备都需要单独的串行线连接到主控器。它使用9针或25针的D-sub连接器,但通常只用到其中的少数几个引脚,如TX(发送)、RX(接收)、GND(地线)。
RS-485:这是一种多点通信方式,允许多个设备共享同一对双绞线。RS-485使用一对双绞线(通常标记为A和B),并使用终端电阻来匹配线路。每个设备都有一个数据发送器(TX)和数据接收器(RX)引脚,以及一个公共地线(GND)。


六、Modbus RTU特点

以RS-485或RS-232作为其物理层实现。它使用总线式拓扑结构,允许多个设备共享同一通信线路,实现成本效益和简单的布线需求。Modbus RTU的数据传输采用二进制编码,每个数据帧包含地址码、功能码、数据和校验码,通过CRC校验确保数据的准确性。这种协议特别适合于短距离通信和成本敏感的应用场景。

七、总结

wKgaomZ5M7SAUVjqAAhNrw8TRjc840.png


基于Model3C芯片的86彩屏中控面板通过集成Modbus RTU协议,实现了与多种控制设备的通信和数据交换。其高性能的通信接口和丰富的通信功能使得该中控面板在工业控制、智能建筑等领域具有广泛的应用前景。

Model系列芯片芯片基于RT-Thread进行开发,而RT-Thread可以通过集成第三方库来支持Modbus RTU,因此Model系列芯片完全可以支持Modbus RTU协议

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    453

    文章

    50387

    浏览量

    421786
  • MODBUS
    +关注

    关注

    28

    文章

    1760

    浏览量

    76834
  • HMI
    HMI
    +关注

    关注

    9

    文章

    584

    浏览量

    48454
收藏 人收藏

    评论

    相关推荐

    Modbus协议网关简介

    ,在工业控制系统占据了重要地位。然而,随着工业自动化技术的不断发展,不同设备间通信协议的多样性成为了一个亟待解决的问题。Modbus协议网关作为这一背景下的产物,成为了连接不同协议
    的头像 发表于 09-23 14:51 198次阅读
    <b class='flag-5'>Modbus协议</b>网关简介

    【技术分享】CAN总线相关知识探讨以及Model3C两路CAN的应用

    CAN总线相关知识,以个位数价格的工业级HMI芯片Model3C为例, 2路CAN的应用
    的头像 发表于 09-05 10:59 472次阅读
    【技术分享】CAN总线相关知识探讨以及<b class='flag-5'>Model3C</b>两路CAN的应用

    利用MODBUS、楼宇自控、电力协议MODBUS协议网关使暖通空调顺利对接HMI

    Modbus RTU、Modbus TCP协议的高效通信需求而精心设计的设备,它可以对接各种上位机系统。今天咱就来说说这款网关设备是如何利用其强大的协议转换功能来实现暖通空调对接
    的头像 发表于 08-08 17:32 322次阅读
    利用<b class='flag-5'>MODBUS</b>、楼宇自控、电力<b class='flag-5'>协议</b>转<b class='flag-5'>MODBUS协议</b>网关使暖通空调顺利对接<b class='flag-5'>HMI</b>

    个位数价!工业级HMI芯片Model3C点亮智能烹饪机4.3寸触摸彩屏

    ,自动烹饪机发展也越来越成熟,想要产品具备竞争力,就要不断推陈出新,打造产品特色。基于此,我们推出了基于Model3C芯片的4.3寸TFT触摸彩屏应用于自动烹饪机的
    的头像 发表于 08-08 08:37 307次阅读
    个位数价!工业级<b class='flag-5'>HMI</b><b class='flag-5'>芯片</b><b class='flag-5'>Model3C</b>点亮智能烹饪机4.3寸触摸<b class='flag-5'>彩屏</b>

    Profibus协议Modbus协议网关模块在船舶的应用

    本文主要介绍了Profibus协议Modbus协议网关模块(XD-MDPB100)在船舶的应用。 Profibus转Modbus网关能实现Profibus总线和
    的头像 发表于 06-27 17:25 454次阅读
    Profibus<b class='flag-5'>协议</b>转<b class='flag-5'>Modbus协议</b>网关模块在船舶<b class='flag-5'>中</b>的应用

    工业级HMI芯片Model3C详解(三)通信接口

    显示设备连接,实现快速数据传输和稳定通信,可以与各种工业设备和系统进行无缝对接,为用户提供了更加灵活的解决方案。本文将从Model3C的互联接口出发,详细介绍Mod
    的头像 发表于 06-21 17:01 473次阅读
    工业级<b class='flag-5'>HMI</b><b class='flag-5'>芯片</b><b class='flag-5'>Model3C</b>详解(三)通信接口

    工业级HMI芯片Model3C详解(二)图像显示

    Model3C芯片国产自主的工业级高清显示与智能控制MCU,配备强大的2D图形加速处理器、PNG/JPEG解码引擎,可以满足多种交互设计场景和多媒体互动需求,具备高可靠性、高开放性,可广泛应用于工业
    的头像 发表于 06-21 11:24 308次阅读
    工业级<b class='flag-5'>HMI</b><b class='flag-5'>芯片</b><b class='flag-5'>Model3C</b>详解(二)图像显示

    Model3C工业级HMI芯片详解系列专题(一):芯片性能

    宽温,具有高可靠性、高开放性,可广泛应用于工业自动化控制、串口屏等智慧工业和智慧家居领域。Model3C芯片功能框图:Model3C功能框图强大的图形能力JPEG
    的头像 发表于 06-20 17:48 356次阅读
    <b class='flag-5'>Model3C</b>工业级<b class='flag-5'>HMI</b><b class='flag-5'>芯片</b>详解系列专题(一):<b class='flag-5'>芯片</b>性能

    用图片带你了解HMI芯片Model3

    Model3是一款高性能的工业级HMI(人机界面)核心板,也是一款纯国产HMI方案,工业级标准,稳定、可靠; 工业级HMI
    的头像 发表于 05-11 16:28 644次阅读
    用图片带你了解<b class='flag-5'>HMI</b><b class='flag-5'>芯片</b><b class='flag-5'>Model3</b>

    技术分享|Model 3C芯片86彩屏开发板:ESP32-C3助力,3MB波特率OTA升级更便捷!

    在物联网快速发展的今天,彩屏显示作为人机交互的重要一环,其显示效果和升级便利性成为了衡量产品竞争力的关键指标。而Model 3C(以下简称M3C芯片
    的头像 发表于 04-12 10:11 706次阅读

    Modbus协议网关是什么?Modbus协议网关的功能

    Modbus协议网关是一种专门用于工业自动化环境的网络设备,其主要功能是实现不同通信协议之间的转换,尤其是将基于Modbus协议的设备或系统与使用其他
    的头像 发表于 04-11 15:51 709次阅读

    modbus协议功能码分类 modbus协议功能码是什么,有什么作用

    Modbus协议是一种用于工业领域常见的通信协议,它基于主从结构,用于在不同设备之间实现数据交换。Modbus协议的功能码是决定数据交换类型和操作的重要部分。下面将详细介绍Modbus协议
    的头像 发表于 01-31 14:47 6487次阅读

    modbus协议与485协议区别

    Modbus协议与485协议是工业通信领域中常用的两种协议,它们在不同的层面上具有不同的功能和设计理念。本文将对Modbus协议与485协议
    的头像 发表于 01-11 11:06 2.1w次阅读

    在消防预警系统Modbus协议和EthernetIP协议都发挥着重要的作用

    Modbus协议是一种串行通信协议,最初是为PLC(可编程逻辑控制器)之间的通信而设计的。如今,Modbus协议在消防预警系统应用广泛。它可以实现主从通信,主设备发送请求,从设备则根
    发表于 01-02 19:34

    modbus协议应用指南

    modbus协议
    发表于 12-04 09:45 5次下载