Skip to content

温度监测系统实现案例

下面通过使用AT固件与小机云开发温度检测系统,远程控制等功能,快速了解AT固件与小机云的使用方法

准备工作

  • 确保已经在小机云的项目中已经创建设备,且该小机云控制台上设备的SerialNo与小机云硬件的IMEI号一致。

  • 确保小机云设备绑定的是默认控制页(创建后默认使用该页,不用修改)。控制页样式如下:

  • SIM卡可以上网。随硬件赠送的SIM已经开通,插入硬件中即可使用。正常开机联网后,SIM卡会绑定硬件,该SIM卡只能在该设备上使用

硬件结构

从机:小机云4G RTU,型号XGC-RG448

主机:STM32F103C8T6核心板

附件材料:

  • 串口转RS232转接板:用于stm32串口与RTU的RS232连接。UART与RS232的默认波特率为115200,RS485的默认波特率为9600

  • usb转串口:用于stm32串口打印日志到PC

  • stm32仿真器:stm32固件下载仿真

STM32引脚功能对应界面组件
PA2/3日志打印串口 TX/RX
PA9/10小机云通讯串口 TX/RX
PA6PWM1灯光亮度滑动条
PA7PWM2暂无
PB3控制IO灯光选择1(红灯)
PB4控制IO灯光选择2(绿灯)
PB5控制IO灯光选择3(蓝灯)
PB6中断阀门1
PB7中断阀门2
PB8控制IO开关1
PB9控制IO开关2
PC13状态
小机云硬件引脚功能对应界面组件
In1输入电平检测3~30V阀门3
In2输入电平检测3~30V阀门4
Out1继电器开关1
Out2继电器开关2

优化建议:

  1. 请确保小机云硬件的天线连接。尽量保持天线在空旷位置,无金属,墙壁等遮挡,保证硬件的信号强度

  2. 尽量使用单片机硬件,减少控制小机云内部IO,以减少串口通讯的频率,可提高稳定性。

  3. 使用多线程多并发的嵌入式系统

  4. 如果需要更高的即时性,请使用模块二次开发的方式实现功能,更灵活,更高效

配置项目信息

  1. 在项目卡片中,点击设置图标,查看项目ID(ProjectId)与项目密钥(ProjectSecret)

image.png

  1. 在源码中填入上面得到的ProjectId与ProjectSecret

    c
    //xgc_cmd.c
    //填入小机云项目的ProjectId与ProjectSecret
    char project_id[] = "xxxxxxxxxxxxx";
    char project_secret[] = "xxxxxxxxxxxxxxxx";
  2. 配置ProjectId和ProjectSecret后,烧录到单片机,并重启单片机。单片机会自动与小机云硬件握手初始化,小机云硬件与小机云连接成功后会出现下面回复。单片机日志都会在打印串口中输出,可在PC中的串口工具查看

    $XGC_ACK#GET_DTU_STATE#SerialNo#0#mqtt-connected&#CheckCode#

效果测试

源码分析

重要的两个文件,更多具体的内容请看源码,源码有详细的注释

xgc_handler.c:收到指令后的解析处理工作

xgc_cmd.c:小机云常用的文本协议指令