现代电子技术
Modern Electronics Technique
Aug.2023Vol.46No.16
2023年8月15日第46卷第16期
0引言
为了愉悦心情或排遣寂寞,越来越多的人喜欢喂养宠物,宠物成为了一种精神寄托[1]。到目前为止,宠物喂养主要依靠人工,然而由于工作、外出、疫情等原因,主人可能无法及时对宠物进行喂养,而且也无法了解宠物在家的具体情况,宠物的饮食与实时监控成为了人们担忧的问题,且宠物走失情况也时有发生,宠物一旦走失,回的概率很低。为此,本文基于小程序设计并制作了一套智能宠物管家系统[2⁃3]。相比APP 等方案,小程序不仅使用简便,而且内存占用更少,避免了下载
应用程序的繁杂步骤。用户使用时直接在平台打开小程序进行操作,使用结束时直接退出小程序即可[4⁃5]。
1
系统总体设计
1.1系统结构
智能宠物管家系统结构[6]如图1所示。
1.2
功能划分本文的目的是设计一种集喂养、监控、防走失为一体的宠物智能管家系统,系统的主要功能如下:实现宠物智能喂食功能、实时定位宠物功能以及宠物实时监控功能。定位器系统利用GPS 模块[7]对宠物进行定位,并
DOI :10.16652/j.issn.1004⁃373x.2023.16.027
引用格式:万涛,吴杰,葛晶晶,等.智能宠物管家系统的设计[J].现代电子技术,2023,46(16):155⁃159.
智能宠物管家系统的设计
万
涛1,吴
杰1,2,葛晶晶1,诸虹宇1,刘媛媛1
(1.华东交通大学信息工程学院,江西南昌330013;2.安徽大学计算机科学与技术学院,安徽合肥
230000)
摘
要:文中设计一种集喂养、监控、防走失为一体的智能宠物管家系统。该系统硬件由喂食器、监控器和定位器三部
分组成。喂食器以NodeMCU 为主控,以ESP8266为网络接入模块,以直流电机为驱动,搭载各种传感器采集数据;定位器以STM32F103RBT 为核心,搭配GPS 天线和4G 模块;监控器由ESP32⁃CAM 模块与SG90舵机组成。用户通过小程序实现远程宠物喂食、按计划自动喂食、查看喂食记录和喂食反馈。宠物主人外出时,可通过监控器观察宠物的实时状态。当宠物
意外走失时,可通过定位器查看宠物所在位置。
关键词:智能宠物管家系统;智能喂食;实时监控;余粮预警;GPS 定位;MQTT 服务器;小程序中图分类号:TN967⁃34;TP273
文献标识码:A
文章编号:1004⁃373X (2023)16⁃0155⁃05
Design of intelligent pet housekeeper system
WAN Tao 1,WU Jie 1,2,GE Jingjing 1,ZHU Hongyu 1,LIU Yuanyuan 1
(1.School of Information Engineering,East China Jiaotong University,Nanchang 330013,China;
2.School of Computer Science and Technology,Anhui University,Hefei 230000,China)
Abstract :An intelligent pet housekeeper system integrating feeding,monitoring and anti ⁃lost is designed.The system hardware is composed of feeder,locator and monitor.The feeder is mainly controlled by NodeMCU,with ESP8266as the network access module,driven by a DC motor,and equipped with various sensors to collect data.Taking STM32F103RBT as the control core,the locator is equipped with GPS antenna and 4G module.The monitor is composed of ESP32⁃CAM module and
SG90steering engine.Users can remotely feed their pets,automatically feed according to plan,view feeding records,and provide feedback by WeChat mini programs.A pet owner can see the real⁃time status of the pet by means of the monitor while he is away.In case a pet is missing,the pet owner can track the pet by means of the locator.Keywords :intelligent pet housekeeper system;intelligent feeding;real ⁃time monitoring;surplus grain warning;GPS
location;MQTT server;WeChat applet
收稿日期:2022⁃12⁃05修回日期:2023⁃01⁃28
基金项目:国家自然科学基金项目(61962022);江西省教育科学“十四五”规划课题(22YB067)
155
现代电子技术
2023年第46卷
将定位到的位置数据[8]
发送至STM32单片机,由单片机
完成数据的串行处理,再由4G 模块无线传输至服务器。通过小程序订阅MQTT 服务器[9]的指定topic ,获得定位信息,并将其位置信息显示在地图上。喂食器系统采用MQTT 协议发送控制命令,实现小程序远程自动喂食。监控器系统采用ESP32⁃CAM [10]进行拍照并上传至服务器,
在小程序中显示达到视频监控的效果。
图1智能宠物管家系统总体结构
基于小程序的宠物智能管家系统的具体功能模块包括:
1)定位模块。本文系统采用的GPS 模块集成在
EC20模块中,并使用4G 模块进行数据传输。利用此控制器设计一种定位终端,可以在小程序上实现对宠物
的定位。
2)实时监控模块。本文系统采用ESP32⁃CAM 模块实现与软件的双向数据通信。将画面以jpeg 图传的方式发送到服务器,小程序通过获取服务器的图片
数据显示监控画面。
3)自动喂食模块。该模块接收来自小程序的控制命令,驱动L298N 芯片控制直流电机正反转,通过驱动推送螺旋管转动实现粮食的送出,同时配有压力传感器
的模拟输入接口,可计算与记录宠物的喂食数据。4)余粮预警模块。通过传感器获取余粮的数据,再
将数据通过WiFi 发送到服务器,小程序获取数据并在页面上显示。当储存粮食的容器粮食不足时,该
模块会自动在小程序上提醒宠物主人添加粮食。
系统功能框架如图2
所示。
图2系统功能框架图
2系统硬件设计
本文系统主要分为喂食器、定位器、监控器三部分,
且各自独立工作,硬件电路设计包括NodeMCU 、HX711压力传感器、ESP32⁃CAM 、SG⁃90舵机、STM32单片机、EC20以及其他电子元件。系统硬件电路如图3所示。2.1
喂食器模块
喂食器的MCU 主要工作是:对温湿度传感器、水位传感器、压力传感器的数据进行处理,以及接收微
信小程序发送的喂食指令来驱动推送螺旋管转动,实现粮食的送出。传感器将采集的数据通过数据引脚发送给MCU 的8、11、12、16号引脚,然后MCU 通过ESP⁃8266连接WiFi ,将传感器采集到的数据发送给MQTT 服务器;14和15号引脚连接直流电机,当接收到小程序下发的命令时,两个引脚电平发生变化,实现电机的正反转。
2.2
定位器模块
GPS 数据采集引脚为RX 和TX 引脚。在STM32单
片机中编写程序,使EC20模块与服务器通信成功,将经纬度数据直接通过4G 模块[11]发送给MQTT 服务器。当
STM32单片机传输GPS 坐标数据时,第一步判断数据字符串,假如是准确的,则传输数据,处理数据格式,将其转换成为字符串显示[12]。否则向GPS 系统报告并再次
传输数据。STM32传输坐标数据的流程如图4所示。2.3
监控器模块
监控器模块主要使用esp32⁃cam 模块,通过esp_camera_fb_get ()函数调用摄像头进行拍照,将获取到的jpeg 图片的hex 格式文件存进缓冲区,以UDP 传输协议将缓冲区的图片数据发送到服务器,小程序从服务器获取图片数据后解析并在页面上显示监控画面。将esp32⁃cam 模块与云台连接,使用舵机控制摄像头,接收小程序下发的旋转角度数据,将旋转角度传递给脉冲函数servopulse (),即可控制舵机旋转指定角度。
156
第16
期
图4单片机处理数据流程
3
系统软件设计
3.1
软件开发流程
本文软件部分以小程序为研究对象,具体的开发过程如图5所示。首先申请小程序的开发权限[13],其次申请MQTT 服务器,最后获得腾讯地图API 的权限后,可以编写登录页面、地图页面、喂食器页面和监控页面的相关代码。3.2
小程序界面与功能设计
1)宠物定位显示定位页面设计通过调用腾讯地图的API 来实现,使用属性latitude 和longitude 来显示定位坐标,定位功能主要是通过定位器终端GPS 定位实现,然后将定位的相
关信息通过与MQTT 服务器建立连接之后进行传输,小程序获取传输的数据并对其解析实现定位。小程序每隔一段时间就对定位器端进行一次服务器数据获取,而且可以点击“刷新”
按钮手动获取定位数据。开源mqtt服务器
图5小程序开发流程
2)宠物实时监控
宠物监控功能主要是将获取的ESP32⁃CAM 模块拍摄的照片在小程序端进行实时显示,监控器显示画面最初显示默认画面,当点击“开关”打开监控器后,显示视频画面。控制监控器旋转功能主要是通过小程序发送控制命令,即发送旋转角度给MQTT 服务器,监控器终端获取下发的命令,驱动舵机旋转从而带动摄像头旋转,以便能实现任意角度监控。
3)宠物智能喂食
喂食功能主要是通过小程序发送控制命令给MQTT 服务器,
喂食器终端获取下发的命令驱动直流电
图3系统硬件电路图
万涛,等:智能宠物管家系统的设计157
现代电子技术
2023年第46卷
机推送螺旋管转动,实现粮食的送出。
喂食计划采用队列结构,将喂食份数与喂食时间发送给喂食器硬件,喂食器硬件使用操作系统为每一次喂食计划创建一个任务,喂食时间采用格式化的日期格式,喂食器轮询查当前时间并与之匹配,如果到达对应时间则驱动喂食器工作。
喂食记录页面主要显示各个时间段的喂食份数与喂食日期,页面数据显示主要采用堆栈结构,最近一次的喂食记录将显示在第一条,采用数组存储喂食信息。
4)余粮不足预警
余粮监测主要是监听MQTT 服务器传输过来的数据,并对其进行判断,如果余粮低于阈值则发出弹窗进行提醒。
4
系统测试
4.1
宠物定位显示测试
将手机定位功能开启之后,在上打开宠物智能管家小程序并在下方功能栏中点击定位功能,在定位界面能够看见刷新出的地图,如图6所示,并且能够
看到当前宠物定位器所在位置。
图6开启定位权限后的地图界面
4.2
宠物智能喂食测试
点击界面右上角的开关,点击“开机”让喂食器处于
工作状态,选择喂食份数点击“喂食”按钮即可远程为宠物喂食,界面显示如图7所示。
进入喂食计划添加页面,点击“添加”按钮就可以添加下一次的喂食时间,并且最近一次的喂食计划会显示在喂食器页面,添加喂食计划界面如图8、图9
所示。
图7喂食器开始工作界面
图8添加喂食计划界面
在完成自动喂食以及用户手动远程喂食之后,在喂食记录页面都能够查看历史喂食记录,以便了解宠物的喂食情况。查看喂食记录界面如图10
所示。
图9喂食计划添加成功界面图10查看喂食记录界面
当喂食器的余粮到达报警值时,小程序页面会出现报警提醒,提醒宠物主人添加粮食。余粮不足报警界面如图11所示。4.3
宠物实时监控测试
将监控器连接电源,连接上WiFi 后便可对其进行
操作。点击小程序的监控页面,未开机显示默认画面,点击右上角的开关键,等待成功连接服务器便可看见监控器传送过来的画面,从而达到监控宠物的目的;点击画面下方按钮可以控制摄像头的旋转。监控画面显示如图12所示。
5结语
所设计的智能宠物管家系统集喂养、监控、防走失为一体,以小程序为上位机软件,借助各种物联网
158
第16期
技术实现智能宠物喂养的目的,满足了人们的一些养宠
需求。系统运行稳定,具有广阔的应用价值和一定的社
会经济效益。
图11
余粮不足报警界面
图12监控器显示画面
参
考
文
献
[1]孟艳艳,陈伟海,贾长洪,等.智能宠物喂食喂水系统研究与设
计[J].中国高新科技,2020(21):137⁃141.
[2]SUFFIAN M,ZAINI A,JAMALI A,et al.Reliable smart pet
feeding machine using arduino uno starter kit [J].IOP conference series:materials science and engineering,2021,1101(1):012033.
[3]刘惠惠.基于共生理论的智能宠物喂食器设计研究[D].西安:
西安工程大学,2018.
[4]张杨帆,郝钰鑫,李隐峰,等.基于图像识别的失物招领小
程序设计[J].电子科技,2022,35(10):33⁃38.[5]雷文礼,张鑫,包佳伟,等.基于平台的智能浇花系统设计[J].现代电子技术,2022,45(11):73⁃76
[6]蒲小年,戚慧珊,李智豪,等.基于小程序的宠物自动喂食
系统[J].物联网技术,2018,8(9):79⁃81.[7]杨锋.物联网终端宠物定位器的解决方案及实践研究[D].南京:南京邮电大学,2018.
[8]林志舟,任凯,叶傲斌.基于MQTT 的智能宠物追踪系统[J].计
算机系统应用,2020,29(2):124⁃128.
[9]KUMAR S,SHARMA K,RAJ G,et al.Arduino and ESP32⁃
CAM ⁃based automatic touchless attendance system [C]//Proceedings
of
the
3rd
International
Conference
on
Communication,Devices and Computing.Singapore:Springer,
2022:104⁃110.
[10]刘立勋,蔡斯伦.基于AGPS 定位系统的宠物定位项圈[J].科
技创新与应用,2019(19):46⁃47.
[11]胡瑞强,陈晶,李成伟.基于4G 通信的多参数空气质量监测
系统设计[J].自动化与仪器仪表,2022(4):142⁃145.[12]范整整,万涛,赵诗婷.基于小程序的特殊体防走失定位系统[J].物联网技术,2021,11(1):7⁃9.[13]邱睿.基于小程序的家校通系统开发与实现[D].上海:上海师范大学,2019.
[14]薛阳阳,吴宇航,廖席沆.新型数字化语音实时监控平调系统
的组成及技术应用[J].铁路通信信号工程技术,2022,19(9):
54⁃58.
[15]赵伟,王蓓,张士祁,等.基于Prometheus 的openGauss 监控系
统的关键技术及验证[J].郑州大学学报(理学版),2022,54
(6):74⁃81.
作者简介:万
涛(1975—),女,江西南昌人,博士,硕士生导师,研究方向为物联网安全、无线传感器网络。吴
杰(2000—),男,江西丰城人,硕士,研究方向为无线传感器网络。
葛晶晶(2000—),男,江西赣州人,硕士,研究方向为物联网安全、协议分析与设计。诸虹宇(2001—),男,四川广安人,研究方向为无线传感器网络。
刘媛媛(1978—),女,江西永新人,硕士,硕士生导师,研究方向为无线传感器网络、机器学习。
万涛,等:智能宠物管家系统的设计
159
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论