[入门教程]用OneNET下发指令

查看: 75|回复: 0

[入门教程] 用OneNET下发指令

[复制链接]
现在我们就用TinkerNode连接OneNET进行一个小实验

所需硬件
所需软件
TinkerNode开发板驱动,具体安装方法参考TinkerNode Wiki

首先我们先登录OneNET账号,并进入控制台(物联网平台更新频繁,本文适用于旧版控制台)

1、创建产品
协议选择MQTT(旧版),然后点击右上角的 添加产品,在弹出页面中,按照提示填写产品的基本信息,进行产品创建。
请您按照提示尽可能完整、全面地填写相应内容,这样更方便您后期对产品进行管理
202010203598..png
点击 确定,完成产品创建。
2添加设备
接下来点击我们新建的产品,进入产品详情
202010201178..png
点击左侧 设备列表,进入设备列表,点击右侧 添加设备
202010208425..png
在新建的设备中,只有带*的数据为必填项,其他可以不填
202010202076..png
3编写代码
将LED模块插在TinkerNodeD4引脚上,然后将TinkerNodeUSB线连接。
在示例>DFRobot_NBIOT>BC20_MQTT>OneNET>Subscribe_Topic路径运行demo
将下列参数替换为OneNET产品列表的参数。
202010206281..png
其中ProductID是产品概况中的产品IDApiKeyMaster-APIkey
202010201461..png
DeviceId是设备列表中的设备ID
202010204475..png
然后将callback函数改为下面控制LED的代码。
202010207419..png
[C++] 纯文本查看 复制代码
void callback(char * topic, byte * payload, unsigned int len){
  Serial.print("Recevice [");
  Serial.print(topic);
  Serial.print("] ");
  for (int i = 0; i < len; i++){
    Serial.print((char)payload[i]);
  }
  if (payload[0] == 49)
      digitalWrite(D4, HIGH);
  else
      digitalWrite(D4, LOW);

  Serial.println();
}
这段代码是对订阅数据的响应,当接收到云端的数据为1ascii码为49)时,将引脚置为高电平,点亮LED灯,当接收到0时,引脚置为低电平,熄灭LED
最后,将代码上传代码到Tinker-Node中,连接成功后设备显示为上线状态

4、添加数据流
点击左侧的数据流模板,再点击右侧的添加数据流模板
202010209776..png
5、用ONENET控制LED灯
接下来我们将做一个开关用来控制我们的LED
点击左侧应用管理,再点击右侧的添加应用
然后点击应用,进入应用详情
202010208857..png
点击编辑应用,开始为应用添加功能
202010204293..png
我们先添加一个开关
202010204502..png
选中开关,在右侧关联设备LED1关联数据流LED1
202010206680..png
最后点击预览,尝试点击ONOFF控制LED开关
LED预览.gif
测试完成后,点击保存>发布即可上线应用


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2020 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail