智能家居的OneNet云平台

一、声明

        该项目只需要创建一个产品,然后这个产品里面包含几个设备,而不是直接创建几个产品

        注意:传输数据使用到了不同的power,还有一定要手机先联网才能使用云平台

二、OneNet云平台创建

(1)Temperature

这个传输数据使用的是power1

第一步:OneNet网站登录,然后进入开发者中心

第二步:在产品开发里面选择创建产品,注意联网方式是wifi,开发方案是自定义方案

第三步:在刚刚创建好的产品里面进入设备管理界面,这个里面就是添加温湿度,MQ135等设备

               记得!!!这个里面的设备名称就是需要用英文的!!!也就是MQTT协议里面用到的设备ID!!!

第四步:在创建好的设备里面的详情去获取我们需要的信息

设备名称:Temperature

设备密钥:TDAzWkQ0a2tJSDh6SFMwRW94T1plREYzdnh5d0NQSVQ=

产品ID:CyrQo3xWu9

(下面这两个是通用的,然后有一个工具需要在官网去下载,这个可以看之前的CSDN)

url:mqtts.heclouds.com

端口号:1883

时间戳:2052911776

password:version=2018-10-31&res=products%2FCyrQo3xWu9%2Fdevices%2FTemperature&et=2052911776&method=md5&sign=Iz06IS0Xri3A7tDgdOoUZQ%3D%3D

订阅:$sys/CyrQo3xWu9/Temperature/thing/property/post/reply

发布:$sys/CyrQo3xWu9/Temperature/thing/property/post

第五步:最重要的是要建立一个物模型,在产品开发里面

第六步:串口调试(这一步可以判断设备有没有调试好,没问题了就可以直接上单片机了)

AT
 
AT+RST
 
AT+CWMODE=1
 
AT+CWDHCP=1,1
 
AT+CWJAP="iPhone","123456789"
 
AT+MQTTUSERCFG=0,1,"Temperature","CyrQo3xWu9","version=2018-10-31&res=products%2FCyrQo3xWu9%2Fdevices%2FTemperature&et=2052911776&method=md5&sign=Iz06IS0Xri3A7tDgdOoUZQ%3D%3D",0,0,""
 
AT+MQTTCONN=0,"mqtts.heclouds.com",1883,1
 
AT+MQTTSUB=0,"$sys/CyrQo3xWu9/Temperature/thing/property/post/reply",1
 
AT+MQTTPUB=0,"$sys/CyrQo3xWu9/Temperature/thing/property/post","{\"id\":\"123\"\,\"params\":{\"power1\":{\"value\":25\}}}",0,0

(2)Humidity

这个传输数据使用的是power2

设备名称:Humidity

设备密钥:UUVGSFo1bWhNZlNlaWFJRXA5bXZOeWlFaERaamdRMzM=

产品ID:CyrQo3xWu9

(下面这两个是通用的,然后有一个工具需要在官网去下载,这个可以看之前的CSDN)

url:mqtts.heclouds.com

端口号:1883

时间戳:2052911776

password:version=2018-10-31&res=products%2FCyrQo3xWu9%2Fdevices%2FHumidity&et=2052911776&method=md5&sign=etUYV40%2BWltrLWDYj5diDQ%3D%3D

订阅:$sys/CyrQo3xWu9/Humidity/thing/property/post/reply

发布:$sys/CyrQo3xWu9/Humidity/thing/property/post

AT
 
AT+RST
 
AT+CWMODE=1
 
AT+CWDHCP=1,1
 
AT+CWJAP="iPhone","123456789"
 
AT+MQTTUSERCFG=0,1,"Humidity","CyrQo3xWu9","version=2018-10-31&res=products%2FCyrQo3xWu9%2Fdevices%2FHumidity&et=2052911776&method=md5&sign=etUYV40%2BWltrLWDYj5diDQ%3D%3D",0,0,""
 
AT+MQTTCONN=0,"mqtts.heclouds.com",1883,1
 
AT+MQTTSUB=0,"$sys/CyrQo3xWu9/Humidity/thing/property/post/reply",1
 
AT+MQTTPUB=0,"$sys/CyrQo3xWu9/Humidity/thing/property/post","{\"id\":\"123\"\,\"params\":{\"power2\":{\"value\":25\}}}",0,0

(三)单片机发数据

 

        

### 星火一号开发板与RT-Thread操作系统的智能家居项目开发 #### 使用星火一号开发板结合RT-Thread操作系统进行智能家居项目的开发涉及多个方面,包括硬件选型、软件配置以及云端对接。 #### 硬件准备 为了构建一个完整的智能家居系统,需要选择合适的外设和传感器来满足特定需求。对于温度、湿度、光照强度等重要参数的监控,可以采用如下设备组合: - **主控制器**:选用STM32F407星火开发板作为核心控制单元[^1]。 - **环境感知组件**: - 温湿度传感器用于测量空气中的温湿条件; - 光照强度传感器负责检测光线水平; - CO₂传感器用来监测室内二氧化碳含量; - PM2.5粉尘传感器则帮助评估空气质量状况; 这些传感装置能够实时获取周围环境的数据变化情况,并通过IIC/SPI/UART接口与主控相连通信。 #### 软件工具链搭建 针对上述提到的硬件平台,在软件层面推荐使用RT-Thread Studio集成开发环境完成整个项目的编码工作。此IDE不仅提供了便捷的操作界面和支持多种编译器的选择,还内置了大量的中间件库资源可供调用,极大地方便了开发者快速上手并高效地开展编程实践。 #### 功能实现逻辑 整体的工作流程大致分为以下几个部分: 1. 初始化各个外围模块(如Wi-Fi模组初始化),建立网络连接至OneNet服务器端口; 2. 定期读取各类型号传感器返回的信息值; 3. 将收集到的数据打包成JSON格式并通过HTTP POST请求发送给远端API接口地址; 4. 接收来自云服务平台下发的任务指令或反馈消息; 5. 根据实际应用场景执行相应的动作响应机制(比如当检测到异常高温时触发警报通知)。 以下是简单的代码片段展示如何利用RTT API函数向OneNet上传数据包的过程: ```c #include <rtthread.h> #include <stdio.h> // 假定已经完成了WiFi联网过程... void send_data_to_onenet(float temp, float humi) { char post_url[] = "http://api.heclouds.com/devices/<device_id>/datapoints"; // 构造POST body字符串 char json_body[64]; snprintf(json_body,sizeof(json_body), "{\"temp\":%.2f,\"humi\":%.2f}",temp,humi); // 发送HTTP POST请求 rt_kprintf("Sending data to OneNet...\n"); http_client_post(post_url,json_body,strlen(json_body),"Content-Type: application/json\r\n",""); } ``` 请注意替换`<device_id>`为真实的设备ID编号,并确保提前注册好对应的API密钥以便认证鉴权之用。 #### 配置说明 为了让程序顺利运行起来还需要做些额外设置: - 修改`board.h`文件定义相关引脚映射关系; - 编辑`.config`菜单选项开启必要的驱动支持和服务功能; - 设置正确的无线网SSID名称及其密码信息方便自动连线上线; - 添加OneNet SDK库路径至工程属性里头去。 以上就是关于基于RT-Thread OS平台上运用星火一号单片机打造智慧家庭解决方案的一个简单介绍[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值