【毕业设计】基于机智云的智能晾衣控制系统
时间:2022-07-16 01:00:00
Android手机是人机交互终端STMicroelectronics STM32F103C8T以机智云 为核心控制终端物联网平台设计了一套嵌入式智能控制系统,用户可以通过互联网有效地操作家里的衣架,避免了人们不在家时衣服被弄湿的问题。 该系统的开发来自于智能云开发人员的完成。它有两种手动和自动控制模式,以实现对衣架的合理控制。一旦控制端与服务器失去连接,它将自动切换到自动模式。控制端采用FreeRTOS实时操作系统实时性能好,与机智云服务器通信性能稳定性高。 引言 烘干衣服是日常生活的一部分。目前,市场上有各种各样的衣架,包括手动和电动。然而,大多数电动智能烘干衣服仍然需要用户站在旁边,按下按钮进行操作,这只是为用户节省精力[1]。因此,如何通过Internet,实现智能控制和远程控制具有现实意义[2]。智能云物联网平台是开发者的自动软硬件开发平台 (Paa S)[3]基于机智云物联网平台,本文设计了一套手机APP,远程控制家中衣架的系统。 1 系统总体简介 STM32F103C8T6单片机是核心控制器,通过光强传感器、雨滴传感器、温度传感器、湿度传感器收集环境数据,然后通过PWM通过控制电机的运行状态,将衣架伸出阳台或收回阳台。同时,通过 esp8266WiFi通过模块上传到机智云服务器,用户端通过APP该状态可以实时获得,用户可以在自动控制和手动控制之间任意切换,实现对整个系统的有效控制。图1为智能干衣控制系统的原理框图。 2 智能控制系统硬件设计 2.1 主控制器模块 STMicroelectronics公司生产的cotex-M3系列的STM32F103C8T6微控制器。它有20多个KB的SRAM及64KB闪存程序存储器能完全满足系统的控制要求;功耗低,工作电压3.3 V,能有效驱动大部分现有模块设备,适用于嵌入式控制端; GPIO口及各种常用外设,如:UART(Universal AsynchronousReceiver/Transmitter,通用异步收发传输器),SPI (Serial Periphera Interface, ,I2C (Inter-Integrated Circuit, ,定时器,AD、DA能与各种传感器交互良好的 2.2 环境数据采集模块 DHT11温湿度传感器模块NTC温度测量元件很好地集成到温湿度传感器中,并由嵌入式微控制器分析感湿元件和温度测量元件收集的数据。DHT11湿度精度为±5%RH,温度为±2℃,检测到的环境温到的环境温度和湿度DATA以数字形式向外输出数据引脚。STM32F103C8T在6微控制器的硬件连接中,需要温湿度传感器DATA引脚通过5kΩ为了提高驱动力,驱动力。如图2所示 TSL2560传感器获取。作为性能优异的第二代周边环境光强度传感器,可以为烘干控制系统收集足够精度的环境光强度数据。其内部结构框图如图3所示。通道0和通道1连接光敏二极管,其中通道0的光敏二极管可以敏感地感知可见光和红外线,而通道1只能敏感地感知红外线。通过光敏二极管的电流通过积分式A/D转换器的积分,被转化成了数字量,并且,转换结束后其结果被存入相应的寄存器中。整个积分、转换过程完成后,A/D下一个转换过程将重复积分转换器。STM32F103C8T6可通过I2C总线协议访问其寄存器以获得光强度。 TSL内部结构图2560 AO模拟量输出口输出雨滴收集板上的雨滴量对应的模拟值,将其AO口与STM32F103C8T6的AD输入引脚连接,通过AD转换后的数字量可以获得雨滴数据。 2.3 电机驱动电路 STM32F103C8T6用脉冲宽度调制 (Pulse Width Modulation,PWM) ,控制直流电机。PWM与模拟电流控制相比,控制模式具有功耗低、抗噪能力强等特点。PWM信号由STM32F103C8T6的GPIOA0引脚输出,输入电机正极,微控制器GPIOA1引脚与电机负极连接,控制电机正反转。GPIOA当1引脚向外输出低电时,控制器生成PWM信号使电机正向运转,反之亦然GPIOA1当引脚输出高电时,电机反向运行,以控制衣架的伸出和回收。 2.4 WiFi通信电路 通信模块由乐信公司开发ESP8266无线Wi Fi该模块高度集成射频balun、天线开关、过滤器、低噪声放大器、功率放大器和电源管理模块嵌入32位TensilicaL106单片机最高可达160MHz时钟下有16位RSIC和极低的运行功耗。实时操作系统可以使用,只有20%MIPS被它的Wi Fi使用协议栈时,用户可以开发和编程剩余的80%。 通过配置寄存器,还可以实现深度睡眠模式、睡眠模式和激活模式三种不同的操作模式,从而更好地控制其功耗。STM32F103C8T6的UART1与ESP8266模块进行数据交互,实现数据从控制端上传到智能云平台的服务器,并从智能云平台服务器获取相应的控制信息。 33 智能控制系统软件设计 3.1 控制程序设计 控制程序将采用FreeRTOS实时操作系统, 该系统是一个轻量级的、可抢占的实时操作系统, 提供了任务管理、互斥锁、信号量、消息队列等功能, 任务由系统轮询进行调度, 分别具有就绪态、运行态、挂起状态等。每个任务都具有优先级, 当系统调度时, 已经处于就绪态的高优先级的任务会优先被系统调用执行,从而保证了紧急任务的实时性。本系统的流程框图如图4。
图4 系统流程图
当控制板开机运行时,首先执行FreeRTOS实时操作系统的初时化,紧接着初始化各个外设, 然后将系统运行的任务创建出来,最终执行任务,此时,FreeRTOS实时操作系统会根据设定的参数,对任务进行相应的调度执行。其中,通信协议处理任务为最高优先级,它负责处理从机智云服务器端接收到的请求, 包括心跳、控制指令、系统状态查询、重启MCU、在线升级等。
对于外设的控制,需要根据其datasheet来编写相应的驱动实现对其正确的访问控制[4]。
对于对时序要求较高的模块(如DHT11温湿度传感器模块)进行控制时,本控制系统在操作该类前, 让FreeR-TOS进入临界量状态 (关闭所有中断),以保证时序的准确性。执行完成后,需要退出临界量状态,使系统恢复至原状态,才能实时响应外界中断。
3.2 机智云物联网平台设置
机智云平台提供了面向控制端及Android手机APP的应用程序编程接口 (Application ProgrammingInterface, API) ,开发者能够很轻松地进入机智云平台的开发者中心, 添加本控制系统的外设的设备节点,平台则会自动生成相应的通信协议, 按照此通信协议, 即可与机智云平台进行数据交互, 从而达到通过Internet即可在远程对本晾衣系统进行方便的控制。图5是在机智云物联网平台后台获取到的设备运行数据情况。
图5 服务器后台数据
3.3 手机APP程序设计
手机APP端采用机智云物联网平台提供的SDK包进行二次开发, 开发者只需对Active进行修改[5], 即可为用户提供友好的界面, 提高用户体验。在需要提供额外后台功能时, 可对后台进行改动。图6为本系统开发的APP界面。humi后面的数值表示控制板上传的环境湿度, temperature后面的数值为环境温度, light为光强, 三者都为只读状态,由控制板上传数据。
motor开关为晾衣控制开关, 当处于开启状态时, 晾衣架将伸出, 关闭时, 晾衣架将在电机控制下缩回。is_automatic为自动手动切换按钮, 开启时, 控制板将自动根据环境数据进行判别,决定是否晾衣,关闭时,为手动模式,可由用户进行控制。
图6 APP界面图
4 结论
本晾衣控制系统依托机智云AIoT平台, 通过Android手机APP与用户交互, 以STM32F103C8T6为控制板主控芯片, 实现了通过Internet网络对家中的晾衣架控制系统的有效控制, 具备自动、手动两种模式, 纵使用户身在异地, 依然能够对家中的晾衣架进行控制, 使得衣物免遭雨淋。
并且一旦控制端与网络失去连接, 该系统将自动切换至自动控制模式, 保证了系统的安全性与稳定性。经过测试, 系统控制效果良好,能实时地响应用户端的控制指令来驱动电机,环境数据采集准确。手动模式下实时性高, 自动模式下自动分析控制准确, 满足日常使用。断网测试时, 能正确执行异常处理, 切换至自动模式。
|