原创 CAT1 DTU软硬件设计开源资料分析(TCP协议+GNSS定位版本 )

2024-9-19 11:34 156 1 1 分类: 物联网

一、CAT1 DTU方案简介

远程终端单元DTU,一种针对通信距离较长和工业现场环境恶劣而设计的具有模块化结构的、特殊的计算机测控单元,它将末端检测仪表和执行机构与远程控制中心相连接。
奇迹TCP DTU+GNSS版本DTU,用于将远程现场的传感器和执行器数据传输到中央控制系统或监控中心。DTU通常用于工业自动化、能源管理、环境监测等领域,它可以收集和传输各种类型的数据,如温度、压力、流量、电流、电压等。

二、CAT1 DTU方案的硬件设计分享

1.硬件功能概述

奇迹TCP DTU+GNSS版本DTU具有5*6贴片卡/外置SIM卡/全网通卡功能,支持北斗/GPS定位,支持卡基站定位,内嵌看门狗,掉线自动恢复。标准工业RS232/485接口,可以支持6-20V的宽电压输入。
TCP DTU+GNSS版本DTU为用户提供标准固件以及对应源码,以及对应的TCP透传、GNSS功能、AT指令配置等功能的操作例程。

2.产品硬件定义

2.1 系统框图:
2.2 HaaS框图:
AM430EV5系列SOM板:
AM430EV5 SOM板4(5*6卡/GNSS)Haas框图
AM430EV5 SOM板5(全网通卡/GNSS)Haas框图
AM430EV5 SOM板6(插拔卡/GNSS)Haas框图
REV1主板Haas框图
2.3 SCH原理图拆解分析:
AM430EV5系列SOM板SCH:
详情点击此处(https://rckrv97mzx.feishu.cn/wiki/RjzowrjmiinpOjkoZd6chvCjnVc?fromScene=spaceOverview)。
REV1主板SCH:
详情点击此处(https://rckrv97mzx.feishu.cn/wiki/L24jwIjwKipbO5kvNqtcowb7nQg?fromScene=spaceOverview)。

三、CAT1 DTU方案的软件设计分享

1.软件功能概述

功能概述:
网络通讯功能:为了实现远程控制中心对终端测控单元的控制,DTU首先应该具备联网的能力,通过网络将两者连接起来。实现了网络通讯,就要考虑网络稳定的问题,如果不稳定,需要实现断线重连等。服务器确定设备目前在线
参数配置功能:网络通讯可以选择TCP,MQTT等协议。连接TCP服务器,需要配置TCP服务器地址,端口号等参数;连接MQTT服务器需要配置鉴权信息,订阅和发布的Topic等参数。此外,其它复杂功能,也会涉及到一些参数的配置。
网络参数配置功能:上述功能实现后,可以考虑后期维护过程中,当DTU现场维护不方便,使用网络对其进行配置的方式。配置的方式可以选择多种形式,可以将上面的指令稍微修改,也可以另外写一份协议。
心跳功能:当DTU和远程服务器建立连接后,服务器判断设备是否在线,需要DTU定时发送一串数据给服务器,用通信来确认DTU在线。
定位功能:可以通过软件控制GNSS芯片的电,掉电,可以配置上报的NMEA语句。

2.软件功能定义

2.1 软件实现功能:
  • AT指令配置设备运行参数,包括:服务器连接IP、端口号;心跳包开启/关闭;心跳包内容;注册包模式;注册包内容。以及复位和查询相关配置参数指令。
  • 可随时选择进入、退出透传模式
  • 心跳保持功能,心跳间隔可配置
  • 网络重连功能
  • 理论上可以发送无限长度数据包
  • 波特率固定为115200,可以根据客户需求定制
  • 网络AT指令和JSON协议配置功能,可以通过服务器下发远程AT指令配置
  • 支持远程升级
  • 定位功能
2.2 软件功能模块分析:
按照上面的分析,开发的过程就是实现一个个组件,几个组件完成一个模块,几个模块完成一个项目的开发。
开发过程会从核心组件验证,完整代码详解,调试三个章节来讲,如何使用服务层API或应用层组件中的代码实现组件和模块,从而完成整个项目。
2.3 软件流程图:

3.基开发豆平台开发分析

我们的目的是做一款DTU,根据DTU应该具有的的功能,代码可以分为:数据存储模块,AT指令模块,切卡模块,透传模式切换模块,TCP模块,心跳模块,掉线重连模块,GNSS模块,闹钟模块。
  模块是根据相似的功能,把对应的代码放到同一个源文件中。每个功能算作一个组件,不同组件组合以来,构成了模块的主要功能。
  • 数据存储组件:包括文件创建,初始化,读写,关闭等。
  • AT指令组件:包括串口初始化,串口数据接收,发送,数据分析,AT指令解析
  • 切卡组件:包括GPIO初始化,复位切卡
  • 透传模式切换组件:包括串口初始化,串口数据接收,发送,数据分析,切换模式
  • 掉线重连组件:包括连接状态检测,掉线重连
  • TCP组件:包括参数配置,创建Socket,连接服务器,发送,接收数据
  • 心跳组件:包括参数配置,定时发送
  • GNSS组件:包括参数配置,串口初始化,串口数据接收,数据分析,模式切换,定时上报
    上述模块功能大致是按照依赖顺序来的,下面的模块实现可能要基于上面的组件。
  • AT指令模块
  • 心跳模块
  • TCP网络模块
  • 网络AT模块
  • 主任务模块
  • 升级模块
  • 文件模块
  • 定位模块

四、CAT1 DTU方案成果展示

1.SCH的讲解和Geber文件资料

详情请见飞书奇迹物联知识库

2.Datasheet

详情请飞书奇迹物联知识库

3.AT指令手册

详情请飞书奇迹物联知识库

4.产品BOM

详情请飞书奇迹物联知识库

5.固件下载链接

详情请飞书奇迹物联知识库

五、如何了解更多CAT1 DTU方案

本文章源自奇迹物联开源的物联网应用知识库Cellular IoT Wiki,更多技术干货欢迎关注收藏Wiki:Cellular IoT Wiki 知识库
(https://rckrv97mzx.feishu.cn/wiki/wikcnBvAC9WOkEYG5CLqGwm6PHf)

欢迎同学们走进AmazIOT知识库的世界!

这里是为物联网人构建的技术应用百科,以便帮助你更快更简单的开发物联网产品。 

文章评论0条评论)

登录后参与讨论
我要评论
0
1
关闭 站长推荐上一条 /2 下一条