嵌入式学习(22)-阿里云物模型透传-下发控制指令
在之前的文章里描述了如何将单片机采集到的数据通过透传上传的阿里云服务器,本篇文章主要介绍阿里云服务器通过透传下发指令控制单片机设备。
·
一、概述
在之前的文章里描述了如何将单片机采集到的数据通过透传上传的阿里云服务器,本篇文章主要介绍阿里云服务器通过透传下发指令控制单片机设备。
嵌入式学习(4)-塔石TAS-LTE-393阿里云物模型透传_阿里云透传-CSDN博客
二、硬件设置


三、服务器处理
在服务器消息解析里面添加以下代码:
function protocolToRawData(json)
{
var method = json['method'];
var id = json['id'];
var version = json['version'];
var payloadArray = [];
var params = json.params;
var ForcedAlarmSwitch=params['ForcedAlarmSwitch'];
var PowerSize=params['PowerSize'];
payloadArray = payloadArray.concat(buffer_int16(0XA55A)); // 指令头字段
payloadArray = payloadArray.concat(buffer_uint8(COMMAND_SET)); // command字段
if (params.hasOwnProperty("ForcedAlarmSwitch")) //判断下发的控制指令
{
payloadArray = payloadArray.concat(buffer_uint8(0X01)); // 控制对象的ID号
payloadArray = payloadArray.concat(buffer_uint8(ForcedAlarmSwitch)); // 控制对象的输入状态
}
if (params.hasOwnProperty("PowerSize")) //判断下发的控制指令
{
payloadArray = payloadArray.concat(buffer_uint8(0X02)); // 控制对象的ID号
payloadArray = payloadArray.concat(buffer_float32(PowerSize)); // 控制对象的输入状态
}
payloadArray = payloadArray.concat(buffer_int16(0X0D0A)); // 指令尾字段
return payloadArray;
}
1、模拟运行:

代码如下:
{
"method": "thing.service.property.set",
"id": "1",
"version": "1.0",
"params": {
// "PowerSize": 5,
"ForcedAlarmSwitch": 1,
}
}
2、运行结果:

四、阿里云下发指令
1、下发指令

2、单片机接收到数据:

目前阿里云服务器就把指令下发到了单片机,下一步就是解析指令、处理指令。
openvela 操作系统专为 AIoT 领域量身定制,以轻量化、标准兼容、安全性和高度可扩展性为核心特点。openvela 以其卓越的技术优势,已成为众多物联网设备和 AI 硬件的技术首选,涵盖了智能手表、运动手环、智能音箱、耳机、智能家居设备以及机器人等多个领域。
更多推荐

所有评论(0)