目录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。产品创建成功后,单击“详情”进入产品详情,在模型定义页面,定义相关属性和命令。在左侧导航栏选择“设备”,单击“注册设备”,在弹出的对话框中,填写设备信息,注册设备。设备初始化设备接入平台
本篇文章是对之前的补充。开启密码验证编辑配置文件:vim /etc/mosquitto/mosquitto.conf将 allow_anonymous 设置为 false,禁止匿名登录。指定密码存储文件:password_file /etc/mosquitto/pwfile保存配置,随后创建密码存储文件。touch /etc/mosquitto/pwfile接下来添加一个用户。mosquitto_passwd -b /etc/mosquitto/pwfile 用户名 密码重启 mosquitto 服务。systemctl restart mosquitto使用TLS加密进入 /etc/mosquitto 目录。cd /etc/mosquitto创建一个名为 key 的文件夹,用于存储证书。mkdir key cd key生成 CA 的证书和密钥:生成 CA 密钥openssl genrsa -des3 -out ca.key 2048这里需要设置密码,请牢记,该命令将生成 ca.key 文件。生成 CA 证书openssl req -new -x509 -days 3650 -key
前言本篇篇幅较少,主要介绍使用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 绘图等多方面操作。设备管理页显示已连接到平台的设备列表,展示其在线状态。同时前端向后端轮询设备在线状态,实时更新。前端轮询后端接口设备详情页显示设备基本信息。下发命令平台向设备下达命令,同时保存记录。设备监控监控设备状态。基于设备上报的数
Scott Sloan