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

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

3天内不再提示

红豆Cat 1开源 项目四: 从0-1设计一款TCP版本DTU产品的软硬件全过程

jf_94171069 来源:jf_94171069 作者:jf_94171069 2024-07-12 14:43 次阅读

引言

本文为奇迹物联量产 DTU 产品设计资料分享,主要针对嵌入式 C 语言物联网开发爱好者学习交流。可帮助以下人员降低物联网产品开发门槛:

物联网Cat 1产品开发初学者: 本文将介绍产品的软硬件定义、硬件设计分析、软件设计分析,并详细讲解单一功能点功能模块的验证过程和测试验证方法。通过学习本内容,初学者可以在 1-2 天内完成一款 Cat 1 DTU产品的开发全过程,快速提升物联网产品开发的实践能力。本文也是红豆开源产品的一个实战讲解项目。

负责开发类似DTU(Cat 1 版本)功能定义的产研人员:通过本案例,你将全面了解 DTU的设计全部功能模块拆解分析,并结合红豆开源平台(开源硬件+RTOS 开源资料),快速进行微改动,完成自己的物联网产品项目研发设计。

需要设计一款DTU产品的项目负责人:本案开源了产品设计软硬件全部设计资料,以及产品手册、AT指令手册、JSON通信协议等开发成果,可以直接转为自己量产产品设计资料,节省开发成本。

TCP版本DTU产品项目概述

远程终端单元( Remote Terminal Unit,DTU),一种针对通信距离较长和工业现场环境恶劣而设计的具有模块化结构的、特殊的计算机测控单元,它将末端检测仪表和执行机构与远程控制中心相连接。

产品定义&功能描述

硬件功能概述

TCP DTU,用于将远程现场的传感器和执行器数据传输到中央控制系统或监控中心。DTU通常用于工业自动化、能源管理、环境监测等领域,它可以收集和传输各种类型的数据,如温度、压力、流量、电流、电压等。

TCP DTU具有5*6贴片卡/外置SIM卡/全网通卡功能,支持卡基站定位,内嵌看门狗,掉线自动恢复。标准工业RS232/485接口,可以支持6-20V的宽电压输入。

TCP DTU为用户提供标准固件以及对应源码,以及对应的TCP透传、AT指令配置等功能的操作例程。

软件功能概述

网络通讯功能:为了实现远程控制中心对终端测控单元的控制,DTU首先应该具备联网的能力,通过网络将两者连接起来。实现了网络通讯,就要考虑网络稳定的问题,如果不稳定,需要实现断线重连等。服务器确定设备目前在线

参数配置功能:网络通讯可以选择TCP,MQTT等协议。连接TCP服务器,需要配置TCP服务器地址,端口号等参数;连接MQTT服务器需要配置鉴权信息,订阅和发布的Topic等参数。此外,其它复杂功能,也会涉及到一些参数的配置。

网络参数配置功能:上述功能实现后,可以考虑后期维护过程中,当DTU现场维护不方便,使用网络对其进行配置的方式。配置的方式可以选择多种形式,可以将上面的指令稍微修改,也可以另外写一份协议。

心跳功能:当DTU和远程服务器建立连接后,服务器判断设备是否在线,需要DTU定时发送一串数据给服务器,用通信来确认DTU在线。

产品硬件定义

系统框图:

暂时无法在飞书文档外展示此内容

HaaS框图:

SOM板Haas框图

AM430EV5 SOM板1(5*6eSIM卡)Haas框图

暂时无法在飞书文档外展示此内容

AM430EV5 SOM板2(全网通SIM卡)Haas框图

暂时无法在飞书文档外展示此内容

REV1主板Haas框图

暂时无法在飞书文档外展示此内容

wKgaomaQ0I6AKmWWADOOGkXn9tw728.jpg

也可以购买标准硬件进行软件开发,购买链接:

https://item.taobao.com/item.htm?id=768412868192&spm=a1z10.1-c-s.w4004-25306266394.3.7c4517edPbkQLY

产品软件功能定义

开源项目实现功能:

AT指令配置设备运行参数,包括:服务器连接IP、端口号;心跳包开启/关闭;心跳包内容;注册包模式;注册包内容。以及复位和查询相关配置参数指令。

可随时选择进入、退出透传模式

心跳保持功能,心跳间隔可配置

网络重连功能

理论上可以发送无限长度数据包

波特率固定为115200,可以根据客户需求定制

网络AT指令和JSON协议配置功能,可以通过服务器下发远程AT指令配置

支持远程升级

软件功能模块分析:

按照上面的分析,开发的过程就是实现一个个组件,几个组件完成一个模块,几个模块完成一个项目的开发。

开发过程会从核心组件验证,完整代码详解,调试三个章节来讲,如何使用服务层API或应用层组件中的代码实现组件和模块,从而完成整个项目。

软件流程图:

根据上面的讲解,我们可以轻松画出每个模块的流程图:

暂时无法在飞书文档外展示此内容

基开发豆平台开发分析(用了哪些应用层组件和服务层组件)

我们的目的是做一款RTU,根据RTU应该具有的的功能,代码可以分为:数据存储模块,AT指令模块,切卡模块,透传模式切换模块,TCP模块,心跳模块,掉线重连模块,GNSS模块,DI模块,DO模块,AI模块,JSON模块,闹钟模块,Modbus模块。

模块是根据相似的功能,把对应的代码放到同一个源文件中。每个功能算作一个组件,不同组件组合以来,构成了模块的主要功能。

数据存储组件:包括文件创建,初始化,读写,关闭等。

AT指令组件:包括串口初始化,串口数据接收,发送,数据分析,AT指令解析

切卡组件:包括GPIO初始化,复位切卡

透传模式切换组件:包括串口初始化,串口数据接收,发送,数据分析,切换模式

掉线重连组件:包括连接状态检测,掉线重连

TCP组件:包括参数配置,创建Socket,连接服务器,发送,接收数据

心跳组件:包括参数配置,定时发送

上述模块功能大致是按照依赖顺序来的,下面的模块实现可能要基于上面的组件。

AT指令模块

心跳模块

TCP网络模块

网络AT模块

主任务模块

升级模块

IO模块

文件模块

审核编辑 黄宇

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

    关注

    2916

    文章

    45232

    浏览量

    380143
  • TCP
    TCP
    +关注

    关注

    8

    文章

    1389

    浏览量

    79625
  • DTU
    DTU
    +关注

    关注

    3

    文章

    444

    浏览量

    25517
收藏 人收藏

    评论

    相关推荐

    0元购”智元灵犀X1机器人,软硬件全套图纸和代码全公开!资料免费下载!

    和开发指南分别上线GitHub和智元机器人官网,“站式”开源软硬件全套图纸和代码,大幅降低了机器人技术开发的门槛,推动了全球机器人技术的普及与创新,让“人形机器人人人造”理想照进现实。 官方介绍,在
    发表于 10-25 15:20

    CAT1 RTU软硬件设计开源资料分析 TCP协议+GNSS定位版本

    01 CAT1 RTU方案简介: 远程终端单元( Remote Terminal Unit,RTU),种针对通信距离较长和工业现场环境恶劣而设计的具有模块化结构的、特殊的计算机测控单元,它将末端
    的头像 发表于 10-11 15:05 409次阅读
    <b class='flag-5'>CAT1</b> RTU<b class='flag-5'>软硬件</b>设计<b class='flag-5'>开源</b>资料分析 <b class='flag-5'>TCP</b>协议+GNSS定位<b class='flag-5'>版本</b>

    CAT1 RTU软硬件设计开源资料分析(TCP协议+Modbus协议+GNSS定位版本

    CAT1 RTU方案简介 : 远程终端单元( Remote Terminal Unit,RTU),种针对通信距离较长和工业现场环境恶劣而设计的具有模块化结构的、特殊的计算机测控单元,它将末端
    的头像 发表于 09-20 17:19 589次阅读
    <b class='flag-5'>CAT1</b> RTU<b class='flag-5'>软硬件</b>设计<b class='flag-5'>开源</b>资料分析(<b class='flag-5'>TCP</b>协议+Modbus协议+GNSS定位<b class='flag-5'>版本</b> )

    NB DTU/RTU软硬件设计开源资料分析(TCP协议+MQTT协议+GNSS定位)

    、系统综述 1 项目综述 NB DTU/RTU开源产品,使用奇迹的AM21EV5/V6模组作
    的头像 发表于 09-20 16:44 828次阅读
    NB <b class='flag-5'>DTU</b>/RTU<b class='flag-5'>软硬件</b>设计<b class='flag-5'>开源</b>资料分析(<b class='flag-5'>TCP</b>协议+MQTT协议+GNSS定位)

    Lora转4G Cat1网关软硬件设计开源资料分享(HTTP协议版本

    ,例如企业、大型工厂、智慧农业、远程抄表、智慧井盖、管廊、办公楼、智能巡检、智能家居、智慧灯杆、智慧供热等等。 二、lora转4G网关 方案的硬件设计分享 1.硬件功能概述 奇迹的 AP6000E_AM430EV5 Lora 网
    的头像 发表于 09-18 17:38 742次阅读
    Lora转4G <b class='flag-5'>Cat1</b>网关<b class='flag-5'>软硬件</b>设计<b class='flag-5'>开源</b>资料分享(HTTP协议<b class='flag-5'>版本</b>)

    Lora转4G Cat1网关软硬件设计开源资料分享(MQTT协议版本

    ,例如企业、大型工厂、智慧农业、远程抄表、智慧井盖、管廊、办公楼、智能巡检、智能家居、智慧灯杆、智慧供热等等。 二、lora转4G网关 方案的硬件设计分享 1.硬件功能概述 奇迹的 AP6000E_AM430EV5 Lora 网
    的头像 发表于 09-18 16:08 678次阅读
    Lora转4G <b class='flag-5'>Cat1</b>网关<b class='flag-5'>软硬件</b>设计<b class='flag-5'>开源</b>资料分享(MQTT协议<b class='flag-5'>版本</b>)

    请问OPA可以放大0-1之间的倍数吗?

    请问OPA可以放大0-1之间的倍数吗?如果这样做会不会导致放大器不稳定? 有没有一款放大器可以在0-1之间放大并且稳定的
    发表于 08-23 06:05

    国产精密信号链产品完整解决方案,软硬件兼容TI和ADI

    国产精密信号链产品完整解决方案,软硬件兼容TI和ADI
    的头像 发表于 08-19 09:58 683次阅读
    国产精密信号链<b class='flag-5'>产品</b>完整解决方案,<b class='flag-5'>软硬件</b>兼容TI和ADI

    红豆Cat 1开源 项目三: 0-1设计一款HTTP版本RTU 支持GNSS 产品软硬件全过程

    硬件设计分析、软件设计分析,并详细讲解单功能点功能模块的验证过程和测试验证方法。通过学习本内容,初学者可以在 1-2 天内完成一款
    的头像 发表于 07-12 14:31 398次阅读
    <b class='flag-5'>红豆</b><b class='flag-5'>Cat</b> <b class='flag-5'>1</b><b class='flag-5'>开源</b> <b class='flag-5'>项目</b>三: <b class='flag-5'>从</b><b class='flag-5'>0-1</b>设计<b class='flag-5'>一款</b>HTTP<b class='flag-5'>版本</b>RTU 支持GNSS <b class='flag-5'>产品</b>的<b class='flag-5'>软硬件</b><b class='flag-5'>全过程</b>

    红豆Cat 1开源 项目二: 0-1设计一款MQTT版本DTU 支持GNSS 产品软硬件全过程

    软硬件定义、硬件设计分析、软件设计分析,并详细讲解单功能点功能模块的验证过程和测试验证方法。通过学习本内容,初学者可以在 1-2 天内完
    的头像 发表于 07-12 14:30 444次阅读
    <b class='flag-5'>红豆</b><b class='flag-5'>Cat</b> <b class='flag-5'>1</b><b class='flag-5'>开源</b> <b class='flag-5'>项目</b>二: <b class='flag-5'>从</b><b class='flag-5'>0-1</b>设计<b class='flag-5'>一款</b>MQTT<b class='flag-5'>版本</b><b class='flag-5'>DTU</b> 支持GNSS <b class='flag-5'>产品</b>的<b class='flag-5'>软硬件</b><b class='flag-5'>全过程</b>

    红豆Cat 1开源 项目0-1设计一款TCP版本RTU 支持Modbus+GNSS 产品软硬件全过程

    软硬件定义、硬件设计分析、软件设计分析,并详细讲解单功能点功能模块的验证过程和测试验证方法。通过学习本内容,初学者可以在 1-2 天内完
    的头像 发表于 07-10 17:36 560次阅读
    <b class='flag-5'>红豆</b><b class='flag-5'>Cat</b> <b class='flag-5'>1</b><b class='flag-5'>开源</b> <b class='flag-5'>项目</b><b class='flag-5'>一</b>: <b class='flag-5'>从</b><b class='flag-5'>0-1</b>设计<b class='flag-5'>一款</b><b class='flag-5'>TCP</b><b class='flag-5'>版本</b>RTU 支持Modbus+GNSS <b class='flag-5'>产品</b>的<b class='flag-5'>软硬件</b><b class='flag-5'>全过程</b>

    红豆开箱上手必读

    什么是红豆红豆开源平台是由奇迹物联发布并主导维护的 LTE Cat1 物联网产品开发平台,它是基于
    的头像 发表于 07-10 17:15 505次阅读
    <b class='flag-5'>红豆</b>开箱上手必读

    开源芯片系列讲座第20期:基于RISC-V向量扩展的开源GPGPU软硬件设计

    在当前国际科技竞争日益激烈的情势下,我国急需要建立个采用开源指令集GPGPU架构,构建起统软硬件生态。相关参与方共同努力,共同建设起我国自主可控的GPGPU产业,服务于我国电子信
    的头像 发表于 05-20 16:27 451次阅读
    <b class='flag-5'>开源</b>芯片系列讲座第20期:基于RISC-V向量扩展的<b class='flag-5'>开源</b>GPGPU<b class='flag-5'>软硬件</b>设计

    开源项目!设计一款智能手语翻译眼镜

    这个项目一款创新的智能手语翻译眼镜,它能够实时地将手语转换为听得见的语音。这款眼镜采用了VIAM平台和树莓派Zero 2 W,能够帮助聋人或听力受损的人士更自由、独立地与他人交流,减少对第三方
    发表于 05-20 15:59

    永磁同步电机全速域矢量控制的全过程介绍

    直都想知道永磁同步电机的转速零增加到极限这个过程会发生什么,这篇文章介绍下永磁同步电机全速域矢量控制的全过程,即电机的转速从零开始逐渐
    的头像 发表于 03-15 09:29 1673次阅读
    永磁同步电机全速域矢量控制的<b class='flag-5'>全过程</b>介绍