-
1 知识介绍
-
2 PPT
-
3 学习视频
-
4 讨论
-
5 匠人匠心
一、系统构成
智能安防系统的拓扑图如

二、系统数据通信协议分析
在RS-485网络1中,从机节点可连接三种类型的传感器:开关量、模拟量和数字量。另外,需要对从机节点的地址与传感器类型编号进行配置,它们的数据类型为数字量。
根据前面Modbus功能码的相关基础知识,可规划本系统的功能码、寄存器地址与传感器的对应关系如表所示。
功能码 | 寄存器地址 | 传感器(数据)类型 | 传感器(数据)名称 |
0x02读离散输入状态 | 0x0000 | 开关量 | 人体红外传感器 |
0x0001 | 声音传感器 | ||
0x0002 | 红外传感器 | ||
0x03读保持寄存器 | 0x0000 | 数字量 | 温湿度传感器 |
0x0001 | 本节点地址 | ||
0x0002 | 节点连接的传感器类型 | ||
0x04读输入寄存器 | 0x0000 | 模拟量 | 光敏传感器 |
0x0001 | 空气质量传感器 | ||
0x0002 | 火焰传感器 | ||
0x0003 | 可燃气体传感器 | ||
0x06写单个保持寄存器 | 0x0001 | 数字量 | 配置(写)节点地址 |
0x0002 | 配置(写)传感器类型 |
传感器类型 | 温湿度 | 人体检测 | 火焰 | 可燃气体 | 空气质量 | 光敏 | 声音传感器 | 红外传感器 | 心率传感器 |
代号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
RS-485网络1的主机需要将采集到的传感器数据通过网关节点上报至云平台。

根据本案例需求,制订如
组成部分(缩写) | 帧起始符(START) | 地址域(ADDR) | 命令码域(CMD) | 数据长度域(LEN) | 传感器类型(TYPE) | 数据域(DATA) | 校验码域(CS) |
长度 | 1 Byte | 2 Byte | 1 Byte | 1 Byte | 1 Byte | 2 Bytes | 1 Byte |
内容 | 固定为0xDD | DstAddr | 见本表格说明 | Length | 见本表格说明 | Data | CheckSum |
举例 | 0xDD | 0x0002 | 0x02 | 0x09 | 0x01 | 0x180x40 | 0x51 |
帧起始符:固定为0xDD;地址域:为发送节点的地址;数据长度域:固定为0x09,即:9个字节;传感器类型:1温湿度传感器,2人体检测传感器,3火焰传感器,4可燃气体,5空气质量传感器,6光敏二极管,7声音传感模块,8红外传感模块,9心率传感器,10其他。
数据域:2个字节,高8位和低8位。如:对应温湿度传感器,高8位为温度值,低8位为湿度值。则温度24℃对应0x18,湿度64%对应0x40;校验码域:采用和校验方式,计算从“帧起始符”到“数据域”之间所有数据的累加和,并将该累加和与0xFF按位与而保留低8位,将此值作为CS的值;命令码域:0x01代表上报CAN网络的数据,0x02代表上报RS-485网络的数据。
三、系统工作流程分析
(1)RS-485 网络 1 的主机每隔 0.5 秒发送一次查询从机传感器数据的 Modbus 通信帧;(2)RS-485 网络 1 中的从机收到通信帧后,解析其内容,判断是否发给自己的。然后根 据功能码要求采集相应的传感器数据至主机;(3)主机收到从机的传感器数据后,通过 RS-485 网络 2 上报至网关;(4)网关通过 TCP/IP 协议将传感器数据上传至云平台。

