目录SDK 版本SDK 简介准备工作创建产品模型并注册设备设备初始化命令下发平台消息下发属性上报SDK 版本版本说明1.00提供对接 IoT Platform 平台的能力。SDK 简介SDK 提供对接 IoT Platform 的能力,开发者通过调用 SDK 接口,便可实现设备与平台之间的上下行通讯。当前SDK支持的功能有:支持设备消息、属性上报、命令下发准备工作已安装 Python 3.9 及以上已安装 paho-mqtt 库,且版本为 1.6.0 (必需)已安装 schedule 库 (必需)创建产品模型并注册设备访问 IoT Platform,进入设备接入控制台。查看 MQTT 设备接入地址,保存该地址。 在设备接入控制台选择“产品”,单击“创建产品”按钮,在弹出的对话框中,填写“产品名称”、“协议类型”、“数据格式”、“设备类型”等信息,创建产品。协议类型选择 MQTT。数据格式选择 JSON。产品创建成功后,单击“详情”进入产品详情,在模型定义页面,定义相关属性和命令。在左侧导航栏选择“设备”,单击“注册设备”,在弹出的对话框中,填写设备信息,注册设备。设备初始化设备接入平台
前言本篇篇幅较少,主要介绍使用GPIO接口控制LED灯的开关。准备工作LED发光二极管。连接LED灯LED灯长针为正极,短针为负极,为方便区分,长针连红线,短针连黑线,如图所示。对照开发板的针脚图,将LED灯连接到开发板上。红线连接任意一个GPIO接口,黑线连接GND接口。这里我连接的是GPIO3_D3。注意不要将正负极接反,否则可能会烧坏发光二极管和开发板。控制LED灯OrangePi 3B 官方系统中已经预装了wringOP,直接使用以下命令查看GPIO接口使用情况gpio readall 执行结果如图所示。由图可知,GPIO3_D3所对应的wPi编号为25,当前模式为IN。首先将25号接口模式改为输出模式OUT。gpio mode 25 out此时25号口输出为低电平,自然LED灯是不会亮的。接下来将25号口设置输出高电平。gpio write 25 1执行后,LED灯成功点亮,如图所示。若要关闭LED灯,将25号口设置输出低电平即可。gpio write 25 0使用 Python 控制使用 os.system() 执行命令即可。# 开 os.system("gpio
前言本篇我们实现 AHT10 温湿度传感器采集周围环境数据,并设置定时采集功能,将数据上报至物联网平台。准备工作在上一篇文章中只是简单提了一下设备侧的硬件,下面补上实物图,以供参考。OrangePi 3B 开发板,这里我已经装好了底座,接上了天线。AHT10 温湿度传感器,这里我已经焊接好了。杜邦线。连接传感器取四根杜邦线,接到 AHT10 上,如图所示。参照开发板引脚图,一一对应连接。这里我选择的是I2C4,其中传感器的VIN口连接开发板上3.3V接口。注意不要接错了,以免烧坏传感器和开发板。连接完成后如图所示。启用I2C配置安装传感器后,上电开机。由于系统默认关闭I2C接口,需要我们手动开启。执行以下命令(普通用户请加 sudo 权限):sudo orangepi-config然后选择 System,如图所示。然后选择 Hardware,如图所示。移动方向键,选取要启用的 I2C 配置。这里我启用的是 I2C4。保存后返回,随后重启系统。sudo reboot测试连接使用 i2cdetect 命令检测设备是否连接到 i2c4。sudo i2cdetect -y 4如果能检测到设备地
前言上一篇文章中我们实现了 MQTT 的基本通讯,地基已经打好,那么接下来我们正式开始搭建我们的物联网系统,首先,我们先为系统画一张蓝图,明确接下来的开发工作。服务端服务端相当于一个指挥中枢,管理所有接入的设备,统一下达命令,并接收设备上报的数据,是我们物联网系统的核心。设计思路在物联网平台中,某一类具有相同能力或特征的设备的合集被称为一款产品。而产品模型是用来描述设备能力的文件,通过JSON的格式定义了设备的基本属性、上报数据和下发命令的消息格式。定义产品模型,即在物联网平台构建一款设备的抽象模型,使平台理解该款设备支持的属性信息。(Copy 自华为云)本物联网平台各功能模块展示如下:主界面本网站使用 Python + Flask 搭建,涉及 MySQL,Redis 数据库读写,前后端交互,Flask-login 用户鉴权,数据分析,ECharts 绘图等多方面操作。设备管理页显示已连接到平台的设备列表,展示其在线状态。同时前端向后端轮询设备在线状态,实时更新。前端轮询后端接口设备详情页显示设备基本信息。下发命令平台向设备下达命令,同时保存记录。设备监控监控设备状态。基于设备上报的数
前言上篇文章我们介绍了 mosquitto 服务的部署,整个过程比较简单,且 mosquitto 服务内存占用低(不到5MB),非常适合在服务器内存资源比较紧张的情况下搭建。这篇文章将继续介绍基于 Python 实现基本的 MQTT 通讯,作为我们物联网搭建的根基。安装 paho-mqtt 库paho-mqtt 是目前 Python 中使用较多的 MQTT 客户端库,它在 Python 2.7 或 3.x 上为客户端类提供了对 MQTT v3.1 和 v3.1.1 的支持(现在还支持 MQTT v5.0)。它还提供了一些帮助程序功能,使将消息发布到 MQTT 服务器变得非常简单。使用 pip 安装 paho-mqtt 库。pip install paho-mqttpaho-mqtt 库的使用导入 Paho MQTT 客户端import paho.mqtt.client as mqtt设置 MQTT 服务器连接参数设置 MQTT Broker 的地址、端口以及 topic,同时生成随机的 client_id。这里用的我服务器上部署的 mosquitto,请根据实际情况修改 broker
Scott Sloan