程序聚合 软件案例 物联网网关

物联网网关

2026-07-03 10:36:43
行业:物联网
载体:嵌入式软件
技术:Keil MDK

业务和功能介绍

本产品旨在解决工业物联网场景下,传感器终端设备数据无法远程采集、设备无法远程管理与配置的痛点。在电力设备在线监测、工业设备状态监控等业务场景中,大量分散部署的传感器需要通过低功耗无线方式将采集数据汇聚上传至云平台,同时接收云平台下发的配置指令、参数调整、固件升级等操作。传统有线采集方案布线成本高、部署不灵活,而纯无线方案又面临数据可靠性、安全性和实时性的挑战。本网关通过 BLE+4G 双模通信架构,实现了传感器数据的高效汇聚与云端同步,填补了工业现场低功耗传感器到云平台之间"最后一公里"的通信链路空白。

项目实现

"我"负责该物联网网关从底层驱动到应用层协议的全栈嵌入式软件开发,核心工作包括:(1)基于STM32WBA52平台完成HAL库外设全驱动配置,涵盖USART+DMA串口通信、GPIO指示灯控制、RTC时钟同步、IWDG独立看门狗、TIM定时器调度、Flash双分区固件存储;(2)基于ST BLE协议栈(STM32_WPAN)实现中央主机模式:从机广播扫描与SN前缀过滤、GATT服务发现与服务特征值枚举、Notification分片拼包及CCCD描述符使能;(3)基于分层状态机架构实现Air780E 4G模块的AT指令8阶段初始化链和MQTT紧凑字节流环形发送队列(50KB,支持断线重连保序、CME ERROR 767退避保护、损坏条目跳过);(4)设计实现自定义二进制应用层协议,包含帧头帧尾四层校验链、命令ID+功能码两级路由、流控帧ACK/NACK序号确认与丢包重传机制;(5)实现SHA-256挑战-应答双向安全认证与白名单Flash持久化;(6)实现系统级容错:HardFault异常寄存器捕获+备份寄存器持久化日志、全API空指针防御宏、IWDG看门狗复位原因诊断、BLE数据锁4状态机防止多从机数据混淆;(7)实现远程OTA升级系统:MCU内部Flash划分为Bootloader区、A区(运行区)和B区(升级区),通过MQTT订阅固件升级Topic接收bin分片数据包,支持分片序号校验、MD5/SHA-256完整性校验,下载完成后写入B区并设置升级标志,复位后Bootloader校验B区固件合法性,合法则跳转B区运行(A/B角色互换),若B区固件校验失败或新固件运行异常(启动超时/连续HardFault),Bootloader自动回滚至A区原固件,保障设备在线升级零风险;(8)实现双平台冗余切换系统:同时维护主MQTT Broker(101.126.154.219)和备用MQTT Broker两套连接上下文,独立管理各自的KeepAlive心跳定时器,主循环中通过MQTT PINGRESP超时检测(默认1.5倍KeepAlive时间)判断主平台是否存活,主平台故障时自动将上行数据发布Topic切换至备用平台、下行订阅Topic同步切换,同时启动主平台恢复探测(周期性尝试重连),主平台恢复后平滑切回;所有上行数据在切换期间零丢失——发送队列在主备切换时保持不变,确保数据最终送达。

示例图片视频


张工
30天前活跃
方向: 后端-C、物联网-物联网、
交付率:100.00%
相似推荐
云桌面系统
1.项目说明: 云桌面系统 2.项目主要模块: a. windows被控端: 采集本机的画面和play声音发送给远端,接收远端的mic声音/鼠标/键盘等控制指令在本机回放 b. windows pc 主控客户端:播放远端桌面的画面和play声音,并采集本机的mic声音/鼠标/键盘等发送给远端 c. webrtc 主控客户端 d. macos 主控客户端 e. 嵌入式Linux 主控客户端:全面接管系统界面,只有客户端界面,功能同windows pc端 f. web设备管理端 3.项目主要功能: 在客户端低延时操作远端的电脑,局域网内实现无感打游戏
可视化3D动画-3D动画
一个 300×300×250 m 的倾斜分层地质体,5 层不同弹性模量岩性(含一个 E=3500 MPa 的弱泥岩层和一个 E=30000 MPa 的强灰岩层),一条正断层,以及一条沿 Y 轴的圆形巷道。剖切面沿 Y 推进,相机同步缓转,逐层揭示 von Mises 等效应力场。黑线为层界,蓝线为断层,黑圈为巷道轮廓。
OPPO自动化查询
通过客户给的网站以及IMEI码,通过自动化加Python脚本完成自动化查询IMEI码,并且保存到TXT文档,完成客户要求核心难点模拟登录,然后过滑块验证,通过正则找到查询后需要保存信息,并且将信息保存到表格文档。核心难点是滑块验证和模拟登录。滑块验证需要通过自动化进行模拟操作
自动化意大利单词翻译
该项目需要将客户发给我的excel表格中意大利单词的每一个单词,放到客户发给我的网站去查询,并且保存该单词的词性、意思以及例句。我通过Python+自动化用脚本代码帮客户自动化查询单词的词性、意思、例句,并且写入excel表格中,完成客户的要求
Windows/IIS 服务器防扫描攻击试探自动封禁系统-BanGuard
1、立项原因:传统服务器依靠人工查看访问日志效率低,难以及时识别爬虫、恶意扫描等异常访问。本系统旨在自动定时解析Web访问日志,按预设规则识别恶意IP并自动封禁,减少人工运维成本,保障网站安全。 2、行业场景:适用于网站运维、服务器安全防护场景。中小Web站点缺少专业WAF防护,依靠该工具自动审计访问日志,拦截高频恶意请求,降低服务器被攻击的风险。
帮助文档   Copyright @ 2021-2024 程聚宝 | 浙ICP备2021014372号
人工客服