本系统利用ESP8266WIFI模块、机智云物联网开发平台及单片机控制系统设计出一种基于手机APP和WIFI网络的智能灯光调节系统。本系统能够通过环境光传感器采集室内光强度,用户使用APP实时调节灯光亮度。1、总体设计本系统采用机智云物联网开发平台提供的技术方案,整个控制系统分为手机控制端、云端以及线下控制端三大部分组成。
手机控制端通过云端发送控制命令和接收单片机反馈的数据;云端采用机智云的平台作为数据交换的中心,负责中转来自手机控制端和线下控制端的数据;线下控制端包含 STM32F103C8T6 最小系统电路、环境光检测电路、WIFI 模块以及 OLED 显示电路。图1:系统的整体结构框图
主控芯片作为整个线下控制端的核心,负责协调各个模块的正常工作,并对采集的数据进行处理分析,最后打包发送出去,同时还要执行来自云端的控制指令。OLED 屏幕显示受控灯光状态以及通过网络实时获取到的时间、天气和温度信息。WIFI无线通信模块作为云端与控制端进行数据交换的桥梁,是整个系统得以通信的核心。
2、硬件电路设计主控部分主控部分包含 STM32F103C8T6 最小系统电路、环境光检测电路、WIFI模块以及OLED 显示电路等。系统利用 TEMT6000 传感器对环境光进行检测、WIFI 模块与手机 APP 通信、加以OLED 显示 , 最终实现受控灯光的自动调节和 APP 手动调节的功能。环境光传感器部分TEMT6000是一个三极管类型的光敏传感器,其光照强度和基极的电流成正比。可以连接该传感器的基极到模拟电压输入,通过检测电压值就可以判断当前的光照强度。当光照强度较低时,系统自动提高灯光亮度, 当光照强度较高时,系统自动减弱灯光亮度。TEMT6000 照度传感器采用的电流输出方式可以方便的将光信号转化为电信号,不需要其他的电路来调节,可以直接与单片机连接。TEMT6000光传感器照度如图 2 所示。
图2:TEMT6000光传感器照度
3、软件系统设计机智云物联网开发平台机智云物联网平台是专门针对个人和企业开发者的一站式智能硬件开发和云端服务平台。机智云为开发者提供了极为简便的自助工具、完善的 SDK 和丰富的 API 服务功能,可以根据开发者自定义产品功能,自动生成可响应的控制页面。开发者在机智云平台开发智能硬件时,可以很方便地使用自动生成的 App 对硬件设备进行调试和验证。此APP 有完整的用户注册、登录和注销流程,并且可以完成机智云智能硬件的配置入网、设备搜索、设备绑定、设备登录、设备控制、远程控制、状态更新、本地远程切换等基本设备操作。GAgent通讯模组GAgent是一款可以提供上层应用到产品设备的双向数据通讯的固件 , 开发者使用 GAgent 固件后,只需要把产品开发的重心放在产品的功能开发上,数据的通讯功能完全由 GAgent 固件承担,极大的降低了开发者开发的难度。GAgent 主要的功能是转发设备采集得到的数据,它是设备端、云端、手机控制端的通信桥梁。
GAgent 有很强的移植性, 可将 GAgent 固件移植到 WiFi 模组、GPRS 模组以及PC 端 等市面上常见的通讯模组上。该系统采用的是 ESP8266 模组,需要在机智云的官方网站上下载 ESP8266 版本通用的 GAgent 固件包,然后通过乐鑫公司提供的配套的 Flash 烧录工具将下载好的 GAgent 固件包写入 ESP8266 模块中, 断电重启后设备自动从 Flash中启动。GAgent 固件的功能框图如图 3 所示。
图3:GAgent 固件的功能框图机智云代码移植到此在机智云开发者平台上的工作基本完成,根据项目的需要选择生成对应开发平台的代码包,代码包实现了机智云通信协议的解析与封包、产品设备数据与通信数据的转换逻辑,并封装成了简单的 API。当设备收到云端的数据后,程序会自动将数据转换成对应的事件并通知到应用层,开发者只需要在对应的事件处理逻辑中添加传感器的控制函数,便可完成产品的开发。从开发平台上下载已经创建好的代码包移植到我们已经创建好的项目工程里面即可。机智云设备接入SDK机智云产品设备访问 SDK 是将手机和机智云智能硬件之间的通信进程,以及电话和云端之间的通信进程胶囊化 ,其中包括网络访问、搜索、连接、控制、心形节点、状态报告和警告。开发人员使用 SDK 可以迅速完成 APP 的开发,只需注意 APP 的UI 和 UE 设计,就可以忽略比较复杂的协议和错误处理。根据开发者项目的要求,APP 应该整合机智云(Gizwits)SDK,以完成复杂的逻辑处理。机智云提供了 iOS 基本款SDK、Android 基本款 SDK、APICloud 交叉平台 SDK 的三种 SDK 包。机智云设备接入 SDK 的流程如图 4 所示。图4:机智云设备接入 SDK 的流程
软件设计部分智能灯光调节系统通过对 STM32F103C8T6 单片机的控制实现 , 程序中初始化各个模块 ( 串口初始化、按键初始化、传感器初始化、协议初始化、定时器初始化 ...) 后通过按键扫描来选择手机控制还是线下控制。图5:软件设计框图线下控制:线下控制可使用按键来调节灯光亮度 , 设置适合自己当前环境的光线强度,还可以根据环境光传感器获取周围环境光强 , 实现灯光亮度的自动调节。
手机控制:手机控制可通过机智云平台跟设备连接 , 将 WIFI 模块连接能上网的路由器 , 并且调整一些配置与机智云平台连接 , 当手机 APP 和 WIFI 模块绑定后即可实现远程控制设备,从而控制系统实现不同的功能,最后在云端获取时间、天气等信息并在 OLED 显示屏上显示。
4、系统总结
本文设计了一款基于机智云的智能灯光控制系统。该设计采用 STM32F103C8T6 单片机进行开发,通过 WIFI 模块 与手机 App 保持信号传输。本系统利用传感器采集技术、无线通信技术,借助机智云物联网开发平台,设计出一套基于手机 App 和 WiFi 网络的智能灯光调节系统,该系统能够对室内灯光进行实时调节,实现了对室内灯光的智能化管理。
-
智能灯光
+关注
关注
0文章
22浏览量
2934
发布评论请先 登录
相关推荐
评论