(W009A)多通道数字量采集
提示
以下仅提供了必要的关键信息,如果不知道怎么使用,请参考 (S000A)温湿度(范例) 即可,整个操作十分简单。
一、LoRa节点上报格式
{"LrAddr":1,"Dev":"RS485","Data":{"C1":0,"C2":1,"C3":1,"C4":0,"C5":0,"C6":0,"C7":1,"C8":0},"Err":null}
二、代码替换:ModbusToJson() 函数
--读取RS485中盛 多通道数字量采集器
--获取到的Json数据形如:{"C1":0,"C2":1,"C3":1,"C4":0,"C5":0,"C6":0,"C7":1,"C8":0}
--以上Json示例中的C1(通道1)的输入状态 = 0(未触发) ,C2(通道2)的输入状态 = 1(已触发),其他的以此类推
function ModbusToJson()
--配置RS485 Modbus转Json功能,并设置Json字符串最大长度为150字节
LIB_ModbusToJsonConfig(150)--必须小于255
--例如:通道1离散输入状态值寄存器地址0x0000,BIT类型,0个小数,Json名称"C1"
LIB_ModbusToJsonAdd(0x0000,"BIT",0,"C1")--通道1状态(0:未触发,1:已触发)
LIB_ModbusToJsonAdd(0x0001,"BIT",0,"C2")--通道2状态(0:未触发,1:已触发)
LIB_ModbusToJsonAdd(0x0002,"BIT",0,"C3")--通道3状态(0:未触发,1:已触发)
LIB_ModbusToJsonAdd(0x0003,"BIT",0,"C4")--通道4状态(0:未触发,1:已触发)
LIB_ModbusToJsonAdd(0x0004,"BIT",0,"C5")--通道5状态(0:未触发,1:已触发)
LIB_ModbusToJsonAdd(0x0005,"BIT",0,"C6")--通道6状态(0:未触发,1:已触发)
LIB_ModbusToJsonAdd(0x0006,"BIT",0,"C7")--通道7状态(0:未触发,1:已触发)
LIB_ModbusToJsonAdd(0x0007,"BIT",0,"C8")--通道8状态(0:未触发,1:已 触发)
--参数设置(38400,无校验,1位停止位,功能码"02",从机地址默认0x01,应答最长等待1000ms,包与包最短间隔100ms)
LIB_ModbusToJsonSend("BAUDRATE_38400","NoneParity","StopBit_1","02",0x01,1000,100)
end
三、传感器资料及采购来源
传感器说明书位于: flexluadisk
->Spec
-> M009A
文件夹中。
采购来源:可根据传感器说明书的厂家信息,联系厂家采购。
四、硬件连线
将 CMA 底板的 485 接口(A/B/6-24V/GND)的四个引脚和传感器连接即可。