摘要:为了更方便地照顾宠物,笔者设计一款基于STM32单片机的智能宠物屋。该智能宠物屋以STM32F103ZET6单片机控制器为核心,通过压力传感器、空气质量传感器、红外测温传感器、靠近传感器、温湿度传感器和电机驱动等模块,实现了智能喂养、空气净化和宠物排泄物清理等功能。系统利用ESP-01SWiFi模块接入机智云平台,将传感器收集的信息实时传输到手机App,实现对宠物的远程控制和管理。
引言 随着我国经济的快速发展,人们的生活水平不断提高,饲养宠物已经成为一种潮流。目前,市场上出现了很多类似智能宠物屋的产品,但大多数功能比较单一,不能很好地解决宠物喂食和居住环境等相关方面的问题[1-3]。针对这些问题,本文设计了基于STM32单片机的智能宠物屋。
1智能宠物屋的工作原理
智能宠物屋主要由STM32单片机、ShineBlink、传感器模块、继电器模块、舵机模块、电机驱动模块及WiFi模块等部分构成。STM32单片机主要用于控制继电器模块、电机驱动模块、舵机模块,ShineBlink、云平台和手机App通过esp8266WiFi模块进行通信,用户可通过手机App进行远程操作。传感器包括红外测温传感器、温湿度传感器、压力传感器、空气质量传感器以及靠近传感器等。继电器模块用来控制电机以及喷雾器的工作状态,舵机模块用来控制投放不同种类的食物,电机用来控制粪便清理器,完成清理宠物排泄物的操作[4-6]。
2智能宠物屋功能设计
2.1智能喂食 用户通过压力传感器实时检测宠物粮盆的重量,并实时与系统设定值进行比较,并且通过靠近传感器检测宠物是否停留在粮盆附近,如果宠物未停留在附近,那么投食器将会自动投食。当宠物停留在粮盆附近,为不惊吓宠物,即使粮盆重量低于系统的设定值,也不会进行投食,只有当宠物离开粮盆附近后,投食器才会自动补充食物。
2.2空气净化与宠物排泄物清理 宠物屋内放置有清理宠物排泄物功能的自制工具和空气质量传感器,当宠物排便后,若出现臭味或其他异味时,空气质量传感器会将数据传输给STM32单片机,然后通过串口通信协议传输到ShineBlink,再传输到云平台将数据反馈给手机App,用户便能通过手机启动空气清新剂喷雾装置,喷出对宠物无伤害的气体来净化空气,确保宠物所在环境没有异味,改善宠物的居住环境。同时,用户可以在手机App端随时控制粪便清理器工作,实现清理宠物排泄物的功能[7-9]。
2.3环境温湿度测控
用户可以使用温湿度传感器实时监测宠物屋内的温湿度,并将单片机采集的实时数据传输到云平台,而后将数据反馈给手机App,用户可远程实时查看宠物屋内环境的温湿度。
2.4红外体温检测
系统通过红外测温传感器检测宠物的体温。当宠物想进食或者进入宠物屋内休息时,红外传感器将会实时地检测宠物体温,用户通过手机App能实时观察宠物当前的体温状态,并作出调整。
2.5远程操控和互动
用户可以通过手机App实时查看系统的检测数据,实时了解宠物当前的情况,根据实际情况决定是否需要投食或者净化空气。同时,用户可以远程操作粪便清理器清理宠物排泄物,或者远程控制逗猫棒、激光笔之类的玩具与宠物进行互动,使宠物即使待在笼子里也不会孤独,既解决了宠物的生活问题,又能够适时调整宠物的精神状态,非常适用于家中宠物无人照顾的场景[10]。
3系统硬件设计
系统框图如图1所示,由于本系统的功能模块较多,功能模块采用多种串口通信,为了满足这些模块的通信接口需求,采用SMT32F103ZET6开发板和ShineBlink物联网开发板处理数据。ShineBlink与ESP8266WiFi模块、云平台相连,STM32F103ZET6与压力传感器模块、温湿度传感器、电机驱动等模块相连。
STM32F103ZET6与ShineBlink物联网开发板之间通过串行外设接口(UniversalAsynchronousReceiverTransmitter,UART)通信。UART是一种串行异步收发协议,仅使用两条数据线发送数据,有助于正确地发送和接收数据。
3.1STM32F103ZET6最小系统设计
STM32F103ZET6是一种嵌入式-微控制器的集成电路,芯体尺寸是32位,主频是72MHz,拥有丰富的通用I/O端口。该芯片采用ARMCortex-M3的处理器内核,具有高性能、低成本、低功效的优点。系统中的压力传感器、空气质量传感器、红外测温传感器、空气质量传感器、靠近传感器、温湿度传感器、电机驱动模块及舵机模块都与该芯片相连。STM32F103ZET6芯片用于采集宠物的体温、宠物是否停留在粮盆附近、宠物屋内空气质量等数据,并传输到手机App。
3.2 ShineBlink最小系统设计 ShineBlink最小系统选用ShineBlinkCore开发板芯片作为控制核心。ShineBlink芯片内置编译器,无需安装任何开发环境,使用较少代码即可实现WiFi组网通信,大大降低了与云平台建立连接的难度。
4软件系统设计
系统上电后首先初始化单片机设备,初始化完成后便进入模式选择,模式选择分为自动模式和手动模式。自动模式指各类传感器自动进入工作状态,若工作状态异常,则会进入持续识别工作模式,直到工作状态正常,系统才会进入工作状态。手动模式指用户通过手机App向系统发送命令,然后观测每个传感器传回的数据,若数据传输发生异常会进入持续传输数据模式,直到数据传输正常。
图1系统框图
机智云平台是一站式智能硬件开发与物联网云服务平台,全品类设备联网支持,“软件+硬件+数据+算法”一体化解决方案,全方位智能化服务体系。可以实现设备接入、远程控制、数据采集、数据存储、数据分析、设备管理及用户管理等功能。用户利用手机App与喂养装置和清理粪便装置进行通信,在手机App上可以随时观察宠物的活动状态。为了实时监控宠物的状态,该系统采用WiFi无线通信方式,将硬件系统各层中的协议和接口相结合,形成物联网网络体系。
4.2机智云物联网平台开发 根据需求定义数据点,数据点是设备产品的功能抽象,用于描述产品功能及其参数。创建数据点后,便可确定设备与云端通信的数据格式,设备、机智云可以互相识别设备与机智云互联互通的数据。
4.3嵌入式软件开发
图2手机应用端界面
本系统采用机智云平台中的MCUSDK开发嵌入式软件。自动生成的软件开发工具包(SoftwareDevelopmentKit,SDK)实现了机智云通信协议的解析与封包,并封装成了简单的应用程序接口(ApplicationProgrammingInterface,API)。当设备收到云端或者App端的数据后,开发者只需要在对应的事件处理逻辑中添加传感器的控制函数,便可完成产品的开发。
4.4手机App开发
手机App在机智云官网提供的移动应用里进行开发,可以设计App的页面配置、图标、颜色以及关联的产品。手机应用端界面如图2所示。硬件系统通过WiFi连接模式创建数据点,通过App连接硬件,实现终端控制,能够显示宠物的状态及宠物屋的相关数据信息。
5结语
基于STM32单片机的现代智能宠物屋,能够自动进行数据采集、传输及处理,实现了智能喂食、远程清理宠物排泄物、检测环境温湿度、检测宠物体温、远程互动和净化空气等功能。用户通过手机App可选择不同种类的食物进行投放,很好地解决了宠物无人照顾的问题,该智能宠物屋拥有广阔的发展前景。
|