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

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

3天内不再提示

米尔-全志T113-i开发板与modbus设备的连接和操作

发烧电子爱好者 来源:发烧电子爱好者 作者:发烧电子爱好者 2024-03-21 19:42 次阅读

继前面开发环境设置和libmodbus库的移植后,本文主要介绍通过米尔-全志T113-i开发板实现与modbus设备的连接和操作。

一、设备简介

刚好手头有个modbus温度传感设备。

wKgaomX8EOeAR5JAAAKvN_gAOcc390.png

各种参数也挺好,就直接拿来用了。

wKgaomX8EwSAUdPPAAGsM04qiDk282.png

二、程序设计

目标功能就是读取温度传感设备的温度,libmodbus库提供了相关API,跟网络编程的socket一样好用。

wKgaomX8FJiAII_2AAC7-NeaflI048.png

涉及的主要API包括:modbus_new_rtu、modbus_set_slave、modbus_read_registers和modbus_close 以及 modbus_free等接口。顾名思义,各种API的功能都很清晰。

具体程序功能包括周期性读取连接到米尔-全志T113-i开发板上的温度传感器,源码如下:

#include < errno.h >
#include < modbus.h >
#include < stdio.h >
#include < stdlib.h >
#include < string.h >
#include < unistd.h >

int main(int argc, char *argv[])
{
    uint16_t tab_reg[2];
    modbus_t *ctx;
    int i;
    int rc;
    uint32_t *ireal;

    ctx = modbus_new_rtu("/dev/ttyAS4", 115200, 'N', 8, 1);
    if (ctx == NULL) {
        fprintf(stderr, "Unable to allocate libmodbus contextn");
        return -1;
    }
	
    modbus_set_debug(ctx, TRUE);
    modbus_set_slave(ctx, 1);
    if (modbus_connect(ctx) == -1) {
        fprintf(stderr, "Connection failed: %sn", modbus_strerror(errno));
        modbus_free(ctx);
        return -1;
    }

   while(1)
   {
        printf("--------------------n");
        rc = modbus_read_registers(ctx, 0x0000, 1, tab_reg);
        if(rc == -1)
        {   fprintf(stderr,"%sn",modbus_strerror(errno));
            return -1;
        }
      for(i=0; i< 2; i++)
      {
         printf("reg[%d] = %d(0x%x)n",i,tab_reg[i],tab_reg[i]);
      }
	  ireal = (uint32_t *)tab_reg;
	  printf("Resd data %f n", (*ireal)/10.0);
	  
      usleep(1000000);
   }

     modbus_close(ctx);
     modbus_free(ctx);
     return 0;
}

其它Modbus的协议在此不再接受,网络上到处都是。

三、功能执行

首先根据线序连接好温度传感器和米尔-全志T113-i开发板。

wKgZomX8FvyAfJoxAAlLmObiNL4342.jpg

编译好源码。

root@EliteDesk800:~/libmodbus-3.1.10/tests$ make
make  all-am
make[1]: Entering directory '/home/libmodbus-3.1.10/tests'
  CC       mod-client.o
  CCLD     mod-client
make[1]: Leaving directory '/home/libmodbus-3.1.10/tests'
root@EliteDesk800:~

再将编译后的可执行程序SCP至米尔-全志T113-i开发板上,chmod + x后再执行。

wKgaomX8F3uAGJxEAAH2zJflafI026.png

其中的debug信息是modbus_set_debug函数设置的结果打印log。
根据执行结果,读出的温度OK。

四、结论

1、米尔-全志T113-i开发板提供了丰富的接口和稳定的操作系统环境,很适合工业控制软件程序开发;
2、依托libmodbus这个modbus协议库,对于linux应用下的modbus通信开发,简直就是一款神器,能够极大的方便工业控制程序的开发。

审核编辑 黄宇

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

    关注

    27

    文章

    1440

    浏览量

    75693
  • 开发板
    +关注

    关注

    25

    文章

    4434

    浏览量

    94020
收藏 人收藏

    评论

    相关推荐

    米尔-T113-i开发板试用】米尔-T113-i开发板modbus设备连接操作

    继前面开发环境设置和libmodbus库的移植后,本文主要介绍通过米尔-T113-i开发板
    发表于 03-21 19:39

    米尔-T113-i开发板试用】移植libmodbus库到米尔-T113-i开发板

    for an indication... modbus-pull读寄存器,设备id是demo里面写死的。 米尔-
    发表于 03-05 22:31

    米尔-T113-i开发板试用】米尔-T113-i开发环境搭建

    首先感谢MYIR & ELECFANS给与的使用米尔-T113-i开发板的机会。 一、开发板
    发表于 03-01 21:43

    米尔-T113-i开发板试用】上电+配编译器+编译+运行ruapu测试工具流程视频

    MYC-YT113i核心开发板 真正的国产核心,100%国产物料认证 国产T113-i处理器配备2*Cortex-A7@1.2GHz
    发表于 02-25 22:49

    米尔-T113-i开发板试用】发布opencv-mobile米尔t113i专享预编译包

    MYC-YT113i核心开发板 真正的国产核心,100%国产物料认证 国产T113-i处理器配备2*Cortex-A7@1.2GHz
    发表于 02-25 20:23

    米尔-T113-i开发板试用】3、使用golang获取系统信息

    (duration.Hours()/24)) 程序的整体输出如下 由于golang可以跨平台开发,我们先在X86的电脑上开发,然后交叉编译放到米尔
    发表于 02-22 09:39

    米尔-T113-i开发板试用】基础开发环境配置和opencv-mobile移植测试

    米尔-T113-i开发板试用】基础开发环境配置和opencv-mobile移植测试 MYC
    发表于 01-23 15:13

    米尔-T113-i开发板试用】基础开发环境配置和opencv-mobile移植测试

    米尔-T113-i开发板试用】基础开发环境配置和opencv-mobile移植测试 MYC
    发表于 12-27 20:04

    【飞凌 OK113i-C T113-i开发板】视频编解码测试

    前言本文测试OK113i-S开发板-视频编解码的功能OK113i-S开发板是支持视频的编解码的,下面是官方介绍的编解码功能T113-i 是一
    发表于 12-25 09:41

    飞凌 OK113i-C T113-i开发板初体验

    的PC上进行操作,而且,因为以前在安装过T113-S3的开发环境,所以在编译SDK过程中并没有碰到其他因缺少依赖软件报的错误。 T113-i longan linux
    发表于 12-14 15:33

    T113i全国产核心上市

    产品更加坚固耐用,且开发板引出了尽可能多的处理器核心资源,是工业、电力、交通等关键领域实现国产化降本的优质之选! 01 超高性价比 工规处理器 不同于科技同期推出的T113-S3,
    发表于 11-20 16:32

    米尔-T113-S3开发板- 极致双核A7国产处理器-试用体验】米尔-T113-S3,一块你值得拥有的开发板

    性能和价格都很突出。 先让我们介绍一下米尔-T113-S3开发板: 米尔
    发表于 10-17 20:57

    米尔-T113-S3开发板- 极致双核A7国产处理器-试用体验】初玩T113-S3开发板试跑最高频率测试

    收到米尔-T113-S3开发板后,先了解米尔-
    发表于 09-09 18:07

    米尔-T113-S3开发板- 极致双核A7国产处理器-试用体验】米尔-T113-S3开发板介绍及LED的应用程序(点灯)

    国产核心开发板 SOM: T113处理器;邮票孔+LGA连接,焊接简便,载
    发表于 09-07 22:41

    米尔-T113-S3开发板- 极致双核A7国产处理器-试用体验】米尔-T113-S3开发板初次接触体验感不错

    先来介绍一下米尔-T113-S3开发板
    发表于 08-17 23:59