产品模块
什么是产品
FastBee提供了一种渐进式的设备接入模式,如果您只需要简单的设备数据上报和消息下发,则并不需要创建产品,也可以运行良好。
而一旦您希望建立自己的物联网产品或解决方案,并使用 FastBee 提供的高级功能,则需要创建设备类型。
产品不仅可以对设备进行功能定义和消息合法性验证,还可以将一系列增强的能力附加给绑定到设备类型的所有设备。
产品定义了如下内容:
- 产品分类
- 设备类型
- 通讯协议
- 传输协议
- 联网方式
- MQTT认证方式
- 产品物模型
- Modbus配置
- 固件管理
创建产品
创建产品时,有如下几个选项需要了解。
选择产品分类
产品分类是产品的一个品类,如智能开关属于一个品类,银尔达智能开关是一个产品。
设备类型
表示设备通过哪种方式接入云平台,有以下四种类型:
- 直连设备:设备自带网络模组,例如:WiFi模组、4G模组等,可直接通过互联网接入云平台。
- 网关子设备:设备无法直接连接物联网,而需要通过网关来间接接入云平台。
- 网关:独立的网关设备,充当网关子设备和云平台的桥梁,实现各类协议解析和消息转发。
- 监控设备:视频监控设备,支持如海康摄像头,萤石云等国标协议设备
通讯协议
指的是硬件设备的通讯报文,云平台只关心设备与平台交互的通讯协议。
如:4G/WIFI模组、DTU等通过485接口接入子设备,如果DTU支持协议转换,
如Modbus转Json,那么与云平台交互的协议就是就是DTU定义的JSON协议
如DTU,模组是进行透传,则与云平台交互的协议就是Modbus协议。
协议类型大致可分为:
通用协议
私有协议
DTU转换JSON协议
传输协议
是指网络传输协议
目前支持:
- MQTT
- TCP
- COAP
- GB28281
- HTTP
设备通信方式
这里的设备通信方式主要指设备连接物理层协议,例如:WiFI、2G/3G/4G/5G、BLE(低功耗蓝牙)、Zigbee、LoRa、RS485、以太网等。
在一些情况下,选择通信方式并不影响正常运行,但对于一些需要配网或特定网关来实现接入的设备,需要选择正确的通信方式
MQTT认证方式
FastBee平台,基于MQTT协议客户端连接平台的认证方式
一般使用:简单认证 方式
客户端认证连接的方式可以在设备详情-右下角认证方式获取
产品物模型
1.物模型的定义
物模型是物联网平台为产品定义的数据模型,用于描述产品的功能。
2.物模型功能
物模型是物理空间中的实体(如传感器、网关、楼宇、工厂等)在云端的数字化表示。从属性、服务和事件三个维度,分别描述了该实体是什么、能做什么、可以对外提供哪些信息。定义了物模型的这三个维度,即完成了产品功能的定义。
2.1 物模型的属性
用于描述设备运行时具体信息和状态。例如,环境监测设备所读取的当前环境温度、智能灯开关状态、电风扇风力等级等。属性可分为读写和只读两种类型。读写类型支持读取和设置属性值,只读类型仅支持读取属性值。
2.2 物模型的服务
指设备可供外部调用的指令或方法。服务调用中可设置输入和输出参数。输入参数是服务执行时的参数,输出参数是服务执行后的结果。相比于属性,服务可通过一条指令实现更复杂的业务逻辑,例如执行某项特定的任务。服务分为异步和同步两种调用方式。
2.3 物模型的事件
设备运行时,主动上报给云端的信息,一般包含需要被外部感知和处理的信息、告警和故障。事件中可包含多个输出参数。例如,某项任务完成后的通知信息;设备发生故障时的温度、时间信息;设备告警时的运行状态等。事件可以被订阅和推送。
Modbus配置
当设备类型的接入协议选择 Modbus RTU 透传 时,便可以在产品详情页中显示 Modbus 配置,用于将设备属性和 Modbus 寄存器进行绑定,实现设备属性和 Modbus 消息之间的自动转换,例如:
- 当云平台对设备下发一个DI DO属性,由于这个属性绑定了一个设备上的读写类 IO 寄存器,那么实际下发到设备的消息,是一个 Modbus 写入寄存器的消息报文。
- 当云平台通过任务向设备下发 Modbus 查询消息后,设备立即回应 Modbus 响应消息,这时候云平台通过配置好的 Modbus 寄存器,将自动解析 Modbus 消息,生成相应的属性值。
1.配置默认属性
包含:
- 设备状态判断:设备数据/网关
- 采集方式:云端轮训/边缘采集
- 默认子设备地址
2.IO寄存器
IO 寄存器包括线圈、离散寄存器,可以和开关量属性绑定
- 属性:即是产品的物模型
- 从机地址:该产品的子设备从机地址
- 寄存器地址:modbus寄存器地址值
- 是否只读:只读对应功能码02、 读写对应功能码01
- 位偏移量:是针对数据寄存器,存储16位BIT数据,需要解析成为16个位IO的情况,例如寄存器01的值,对应16个IO值
数据寄存器
数据寄存器包括输入寄存器、保持寄存器,可以和数值型属性绑定
- 属性:即是产品的物模型
- 从机地址:该产品的子设备从机地址
- 寄存器地址:modbus寄存器地址值
- 是否只读:只读对应功能码04、 读写对应功能码03
- 数据类型:参考下图:数据肌醇奇遇数据类型关系
- 读取个数:该物模型对应值,读取寄存器的个数。如该数值需要转32位浮点数,则需要读取两位寄存器值,2个字节
数值寄存器数据类型
FastBee对 Modbus 数值寄存器进行消息生成和自动解析时,支持以下数据类型:
数据类型 寄存器个数 字节数 位数 支持字节序 16 位整数 1 2 16 AB/BA 16 位无符号整数 1 2 16 AB/BA 32 位整数 2 4 32 ABCD/CDAB 32 位无符号整数 2 4 32 ABCD/CDAB 32 位浮点数 2 4 32 ABCD/CDAB 寄存器读写类型
在配置寄存器时,需要为寄存器选择准确的读写类型,那么如何选择呢?
- 对于 IO 寄存器,读写类型表示以下含义:
读写类型 寄存器类型 读取功能码 写入功能码 用途 只读 离散输入状态寄存器 02 不支持 读取开关输入状态,例如:行程开关、按键开关。 读写 线圈状态寄存器 01 05 读取继电器状态,控制继电器通断。 - 对于 数据寄存器,读写类型表示以下含义:
读写类型 寄存器类型 读取功能码 写入功能码 用途 只读 输入寄存器 04 不支持 读取传感器数值,例如:温湿度、大气压、光照强度。 读写 保持寄存器 03 06 写入或读取配置数值,例如:修改温度恒定值、本地报警阈值。 固件管理
OTA升级固件管理,下个版本补充