智能宠物家居的设计(附件)【字数:6931】
摘 要为了在无人照看的情况下给宠物提供合适的环境和基础食物,特此设计了一个基于STM32单片机的智能宠物家居。该宠物家居以STM32F103RCT6单片机为核心控制芯片。该设计使用温湿度传感器检测宠物家居的实时温湿度,称重模块检测食物重量,液晶显示模块显示实时数据,继电器模拟加热,风扇模拟降温,电机模拟喂食等功能来实现一个具有温湿度检测控制和智能喂食的智能宠物家居设计。关 键 词STM32;宠物;智能 AbstractIn order to provide a suitable environment and basic food for pets in the situation of unattended, a smart pet home based on STM32 is designed. Stm32f103rct6 is the core control chip of the pet home. The design uses the temperature and humidity sensor to detect the real-time temperature and humidity of pet home, the weighing module to detect the weight of food, the LCD module to display the real-time data, the relay to simulate heating, the fan to simulate cooling, the motor to simulate feeding and other functions to achieve a smart pet home design with temperature and humidity detection control and intelligent feeding.一 、引言 1(一) 课题研究的意义 1(二) 国内外研究现状 1二、智能宠物家居总体设计框架 2三、系统硬件设计 3(一)最小系统电路设计 3(二)温湿度采集电路设计 3(三)重量检测电路设计 4(四)显示电路的设计 4(五)电机驱动电路的设计 5四、系统软件设计 6(一)软件开发环境 6(二)软件整体设计 6(三)主 *好棒文|www.hbsrm.com +Q: &351916072&
程序设计 6(四)键盘扫描子程序的设计 7五、硬件测试 8(一)实物图简介 8(二)初始时间及喂食时间设置检测 9(三)喂食功能检测 9(四)温度范围功能检测 10(五)调试问题 11六、总结与展望 12(一)总结 12(二)展望 12致 谢 13参考文献 14附录一 原理图 15附录二 程序 16一 、引言目前,宠物已成为人们密不可分的伙伴,越来越多的家庭饲养了宠物。养宠物的出发点,也许是需要陪伴,也许只是因为喜爱,但不可否认宠物渐渐地成为当代许多人的精神慰藉和感情依托。如今年轻一代养宠物再也不仅仅满足于把宠物“养活”,而是“养好”,因此,关于怎样养好宠物的一系列问题也随之而来。宠物也需要经常陪伴和关爱,但在繁忙的工作中大多数人就连最基本的喂养宠物都很难抽出时间,因此它们可能会饿肚子也可能会去吃一些不能吃的东西,所以,智能宠物家居也在大家的呼唤中应运而生。现在,借助于智能宠物家居,就算我们不在家也可以轻松的给家中的宠物喂食,解决了养宠的主要难题。此外,由于人们的养宠的需求日益增加,智能宠物家居的市场不容小视,产业前景光明。课题研究的意义本文智能宠物家居的设计,主要是解决养宠一族想要“养好”宠物却因工作或者其它原因无法照看宠物这一难题。本设计由硬件结构与软件设计共同组成,选用STM32系列芯片为主控芯片,温湿度传感器收集当前智能宠物家居的环境的温湿度并实时在LCD液晶屏上显现,通过对按键的调节,设置出合适的宠物家居温度范围,当宠物家居的环境温度低于我们所设置的温度范围最低值时,自动开启继电器模拟加热。当宠物家居的环境温度高于我们所设置温度范围的最高值时,自动打开风扇模拟降温。通过按键也可设置喂养时间,如果到了喂养时间,电机正转投食,重量达到投放的标准后,电机反转停止投食。并且为了人性化也增加了手动喂食功能。国内外研究现状与国外相比,中国的宠物产业和相关产业研究相对较差。国外对宠物饲养、宠物医疗保健、宠物市场趋势以及类似的宠物产品研究都相对侧重。另外,“宠物保险”这样新颖的经济产物也在国外率先出现,“宠物保险”的出现表明了宠物经济走向了拟人化的趋势。我国是世界上宠物用品的进出口大国,目前,我国进口的宠物用品大体可分为两大类,一类是由欧美制造的高价位的宠物用品,另一种是东南亚各国制造的低价位宠物用品。就拿美国比较,如果说美国近十年来的宠物业的发展是“日新月异”,走在了世界的前列。那么我国宠物业的发展可谓是令人“叹为观止”。2019年3月第6届北京国际宠物用品展览会在我国北京国际展览中心举行,从宠物展给出的展示范围可以判断重点在自动智能方面,这也表明了,自动化、智能化还是宠物相关产品的发展重心。展示商家一致认为,自动化、智能化不仅是宠物用品的发展重心也会是我们人类未来的生活用品的发展方向,在产品中装入嵌入式计算机即可使产品“智能化”,使其控制更简单、设备更精巧,也符合“绿色”电子的要求。二、智能宠物家居总体设计框架 /图1智能宠物家居系统框图如图1所示,智能宠物家居系统主要包括由STM32单片机、显示实时数据液晶显示模块、外部输入按键模块、模拟降温风扇驱动模块,模拟喂食电机驱动模块,模拟加热继电器电路模块。按键模块的功能相当的多,可以设置当前的系统时间、自动喂食的时间、以及判断是否打开风扇和继电器的温度上限值和下限值。重量检测模块的功能是检测食物的重量是否达到我们预先设置好的值。当前的温度和湿度由温湿度检测模块采集并在液晶屏上显示。液晶显示电路可以显示当前的一些基本数据。例如温度的上下限、食物重量、喂食的定时时间以及当前温湿度和系统时间。风扇的主要功能是模拟降温,继电器是模拟加热,电机是模拟喂食。三、系统硬件设计(一)最小系统电路设计单片机是设计的核心组件,应具备高速和低功耗的特性。我搭配的是STM32系列中相对常见的STM32F103RCT6芯片。STM32芯片是非常适合嵌入式应用开发的一款芯片,它具有内部资源丰富、性价比高、节约能源等优点。在智能宠物家居上搭载STM32芯片可以更加快速的检测宠物家居的实时数据并在液晶显示单元中显示。STM32最小系统电路如图2所示。/图2 STM32最小系统(二)温湿度采集电路设计本次智能宠物家居设计中,温湿度的采集是用来确定宠物家居中继电器和风扇是否工作的前提,我搭配的温湿度传感器的型号为DHT11,它是一款即可检测温度又可检测湿度传感器,它的数字信号输出被校准过,其测量精度湿度+-5%RH, 温度+-2℃。DHT11传感器主要运用于专用的数字模块收集领域和温湿度传感领域,该产品同时兼具高可靠性和长期稳定的两大优点。DHT11传感器中含有两大核心元件,一个是电阻式的湿敏元件利用湿敏元件的特效测量湿度,另一个是NTC的测温元件利用电阻值随着温度上升而下降的特性测量温度。此产品具有卓越的品质、快速响应、实用性高的特点。由于DHT11的体积很小,而且能源消耗非常低,在智能宠物家居中采用DHT11作为温湿度采集元件是一个不错的选择。DHT11传感器的连接也非常简单,DHT11温湿度检测电路如下图3所示。/图3温湿度检测电路DHT11引脚说明如表1所列表1 DHT11引脚说明/(三)重量检测电路设计本次设计的宠物喂食的食物重量检测部分,我选用了HX711芯片,搭配专用的称重传感器来实现宠物食物重量检测的功能。HX711芯片是一个24位A/D转换芯片,同时它也是专为高精度称重传感器而生的芯片,有了它,我们物喂食的食物重量检测部分会变得非常简便。与其它类型的芯片相比,HX711集成了大多数其它相同芯片所需要的外部电路,包括电源、内部时钟发生器等。此外,芯片本身的稳定电源可以直接为外围传感器供电,这样就不必在系统电路板上添加额外的模拟电源。芯片本身便有时钟振荡器不必外加器件。一旦启动,系统将自动重新,优化了初始步骤。HX711芯片及重量检测电路如下图4所示。//图4 HX711芯片及重量检测电路(四)显示电路的设计显示电路是除STM32芯片外的另一个核心电路,智能宠物家居当前时间的显示、自动喂食的定时、最高温度和最低温度的设置以及食物的重量都需要在LCD液晶显示模块上显示。此次设计使用LCD1602液晶来作为实时数据的显示器件。LCD1602可以通过字母、阿拉伯数字以及基本符号等组成点阵字符位来显示实时数据是一款常见的点阵型显示器件。而且LCD1602芯片内部包含了总线电路、复位模块等细节处理功能模块。配置该款器件到宠物家居控制系统中,不仅可以减少系统组件的成本还可以提高智能宠物家居的性价比。显示电路通过VCC接入电源电压,通电后芯片启动,D0到D7位是数据端,与单片机对应I/O口连接即可,这样液晶显示与系统之间便可进行点对点的数据传输。液晶显示模块及电路如下图5所示。//图5液晶显示模块及电路(五)电机驱动电路的设计电机驱动电路是宠物家居中宠物喂食部分的重要环节,什么时间喂食、当前时间是否喂食,便由此部分控制。本次设计的宠物喂食部分,我选用的采用单极性步进电机28BYJ-48。步进电机是一种可以把电信号转化为角位移的装置。简单地说,步进电机一收到脉冲信号,就会旋转一定角度。我们可以通过控制脉冲信号的个数来控制步进电机旋转的角度从而达到智能宠物家居中自动喂食的目的。步进电机模块如图6所示。/图6 步进电机模块智能宠物家居中的电机驱动电路由一块ULN2003电机驱动板和一个电机组成。ULN2003电机驱动板主要应用于继电器驱动器,显示驱动器,以及逻辑缓冲器等等。要想让单片机通过电机驱动板驱动步进电机进行旋转,ULN2003驱动电机的连接也很清晰明了,只需将步进电机的公共端及COM一起连接到电源正极,再将1到4号接口按原理图接至相应I/0口上即可实现功能。步进电机驱动电路如图7所示。/图7步进电机驱动电路四、系统软件设计(一)软件开发环境在整个程序设计的初期,选择合适的编程语言是很重要的。我们广泛也是最常使用是汇编和C两类语言。汇编语言是低级语言的一种,它有着一定的局限性以及复杂度,使用的人相对较少。而C语言是在二十世纪八十年代出现的一款编译器,最早期的C语言是面向过程的一种编译语言,在它的基础上繁生了C++以及C#这两款面向对象的编程语言。它的出现,很快便被广大电子设计师们接受并在电子设计行业普及。C语言有着十分完善的结构化程序模块,可以在开发软件时使用模组化程序设计方式提供一个很好的平台。本设计的软件编写部分使用uVision5软件。uVision5软件集成了很多开发环境以及库文件,它是基于C语言的一款实用的开发系统,如今在嵌入式的程序设计中Keil uVision5软件深受大家喜爱。(二)软件整体设计智能宠物家居需要实现五大功能分别为使用按键设置智能宠物家居的温度范围,当环境温度低于规定温度最低值时,打开继电器。当环境温度高于规定温度最高值时,打开风扇。温湿度传感器采集当前环境的温湿度并在LCD液晶屏上显示。通过按键设置3个喂食时间。利用压力传感器称出当前食物的重量,如果到了喂食时间,电机正转投食,模拟喂食。重量达到投放的标准后,电机反转停止投食。有手动投食功能。(三)主程序设计主程序流程图如图8所示,它主要包括智能宠物家居系统的初始化、液晶显示以及按键的判断。 /图8主程序流程图(四)键盘扫描子程序的设计按键设置是智能宠物家居程序从外部输入的关键,想要把温度的上下限范围和喂食时间输入系统就要通过键盘实现。按键的功能分别是K1手动喂食。K2定时时间调节。K3定时时间加。K4定时时间减。K5上限温度加。K6上限温度减。K7下限温度加。K8下限温度减。部分子程序如图9所示,详细程序请见附录二。/图9部分子程序五、硬件测试(一)实物图简介通过前四个章节对宠物家居设计系统的构建,该设计的软硬件基本已经完成,接下来的任务是通过对已焊接完成的实物板调试相应的功能来检测我们的设计成果与预期成果是否一致,是否存在硬件或软件设计缺陷。在本次的设计中,实物我选择了在万用板来连接整个硬件设施,这对我来说是一个很大的挑战,因为在平时的训练中我们都是使用已经布线完成的套件,没有使用过需要自己布线的万用板,使用套件时我们只需要把对应的元器件焊接上即可,不需要考虑到走线的问题。但使用万用板焊接就不同了,不仅需要把元器件焊接好,还需要考虑到走线的问题,怎么布线才能让整个硬件看起来美观这个问题困扰了我好几天,好在有学长不厌其烦的指点我,功夫不负有心人,总算是把硬件的实物做的有模有样了。实物如图10所示。/图10 实物图将实物施加电压后,该设计系统实物初始界面如图11所示/图11系统实物初始界面液晶屏显示各个数据如下6:00:表示系统初始时间是6:00,具体时间可以通过时间控制按键修改。52%:表示当前湿度是52%。(15,30):15表示最低下限温度值,室外温度低于此温度将打开继电器,模拟加热。30表示智能宠物家居的最高上限温度,室外温度高于此温度将开启风扇。00 00 00:这三组数据表示我们可以设定的三个宠物喂食的时间。09:表示当前的环境温度为9℃。0000:这组数据表示喂养食物的重量,当到达喂养时间,或者我们按下手动喂食按键,设备电机将旋转90°模拟喂食。我们设定当食物重量达到1000时电机反转,停止喂食。(二)初始时间及喂食时间设置检测当前时间以及喂食时间我们可以通过有外部输入功能的按键模块设置。当我们按下定时时间调节按键时SetTIME1表示我们当前修改的是系统当前时间的时可以通过按键来加减。SetTIME2表示我们当前修改的是系统当前时间的分,另外3个则是我们需要设定喂食时间的时。时间设置界面如下图12所示。/////图12 时间设置图(三)喂食功能检测电机初始状态如图13所示。/图13 电机初始状态当宠物家居系统时间到达设定的喂食时间的时间后,如图14所示电机旋转90°模拟喂食。/图14 模拟喂食通过重量检测电路实时检测食物的重量当食物重量达到我们设定好的预定值后,如图15所示电机自动转回喂食结束。/图15喂食结束(四)温度范围功能检测首先我们先检测加热部分功能是否可以正常工作。智能宠物家居中,模拟加热继电器的测试初始状态如图16所示/图16继电器初始状态由于当前室温只有7°低于所设定最低值15°,继电器指示灯绿灯亮起表明继电器现处于打开状态,由于室温不可控,我们调节最低温度使继电器关闭。如图17所示。当最低温度为6℃时继电器指示灯绿灯未亮起表明继电器现处于关闭状态。/图17继电器关闭经测试,加热功能可以正常工作,下一步便是检测降温功能是否正常。由于室温8℃小于所设定最高温度9℃,风扇默认关闭。如图18所示/图18 风扇初始状态由于室温不可控,这个需要我们手动设置上限温度,把系统的温度上限值调的比室温低点,这样便可测试风扇是否打开,实现降温的功能。经微调节以后,当前的室温8℃高于我们所设定最高温度6℃,风扇打开。如图19所示。/图19风扇开启至此,通过检测可以看出,本设计智能宠物家居的主要功能已经完全实现,虽然实物看起来比较简陋,但不得不说这也是一次自我的突破,在做实物的过程中遇到了很多问题如果没有老师和学长的帮助,靠我自己一个人的力量完成这项设计还是非常吃力的。根据这款智能宠物家居设计可以制作成一个智能的宠物屋,该款宠物屋有环境温湿度智能检测控制和智能喂食的功能,当宠物屋的温度低于我们所设定的温度下限时加热器自动启动,这样便可避免宠物着凉的情况发生。当宠物屋的温度高于我们所设定的温度上限时风扇自动启动,这样便可避免宠物因为炎热异常烦躁的情况发生。智能喂食也可以帮宠物养成一日三餐按时吃的好习惯。通过这款智能宠物屋可以实现宠物的智能管理。(五)调试问题如何编写STM32程序是我遇到最大的困难,之前只是学习了一些简单的51单片机的知识,学得比较浅,想要凭借这点知识就用STM32做出实物,无疑是有点痴心妄想了,所以我在程序编写的过程中总是出现BUG达不到自己预先的效果。但是通过老师和学长的鼓舞和帮助,我自己也潜下心来,找了一些STM32的一些实战教程视频和文档进行深入学习和研究,逐步提高了自己对STM32的理解与运用,改正了程序中的BUG,最终实现预计的全部功能。六、总结与展望(一)总结本次设计,我做了一个智能宠物家居,主要是解决养宠一族想要“养好”宠物却因工作或者其它原因无法照看宠物这一难题。从寻找课题到完成毕业论文这一过程中也遇到了很多问题。其中最让我头疼的就是宠物家居的硬件设计,从硬件设计中我深刻的感受到了我的基础掌握不够扎实,很多问题都是请教老师和学长才得以解决。此次设计不仅锻炼了我的动手能力,也让我在学校学习的知识得到巩固。我明白了知识只记不用是万万不行的,只有将脑海中的知识运用起来与实际相结合这样才是真正掌握。我也清楚的知道了成功的关键是看自己是否真的愿意下苦工。如果遇到困难就退缩,那么永远都别想做好一件事,不努力你就不会知道自己的潜力有多大。还有就是人际关系方面,要学会多与别人合作与沟通。(二)展望在本次的实物设计中,虽然我成功的完成了实物制作与后期测试,但一个人的精力实在有限,我智能宠物家居只是模拟完成了我的设计思路,想要达到在现实生活中使用还需要进一步的优化。但是随着社会上饲养宠物的人逐渐增多,智能宠物家居可以给宠物们提供舒适的环境也可以避免爱宠人士不在家出现宠物无人照看的情况发生给爱宠人士提供了便利,我相信这样的大情况下智能宠物家居一定会运用的更加广泛,宠物相关产品也会越来越智能化,人性化。 致 谢论文得以顺利完成,离不开大家的帮助。首先我要感谢我的指导老师吴冬燕老师,在整个设计过程中,从选器材,开题报告,中期检查,到撰写毕业论文,及最后的反复斟酌,一直得到吴冬燕老师的指导,吴老师严谨的治学态度,开阔的思想,循循善诱的指导一直给我很大的帮助。为此我特向我的指导老师致以诚挚的谢意,感谢您一直以来对我的帮助,感谢您让我在这次毕业设计中顺利完成任务,并从中获得新知识,师恩伟大,无以为报。其次,我要感谢我的学长,学长在论文构思中给了我很多启发和指导,也在实物设计中帮我答疑解惑让我可以顺利完成设计。最后,我要感谢给予我良好的学习和生活的环境,也要感谢辅导员以及各学科老师们,感谢你们在我成长的道路上指引方向。参考文献[1] 高晓斌.基于STM32单片机的智能宠物家居的设计与实现[J].信息系统工程,2018(07):20.[2]邹连生.我国宠物产业发展展望[J].广东畜牧兽医科技,2013,38(01):41-43.[3]朱庆祥,潘锁.家庭智能宠物喂食器造型设计[J].机械设计,2016,33(04):130.[4]郝昱. 自动化、智能化成宠物用品行业发展趋势[N].中国贸易报,2015-04-28(006).[5]应耿宁,陈启东,楼泽华,刘屹行,张志伟.基于STM32的大棚智能通风系统的设计与研究[J].机电工程技术,2019,48(06):149-151.[6]魏印龙,张向阳,孔令扬.基于AT89C51单片机的步进电机控制系统设计[J].科技广场,2016(08):184-189.[7]王语园,孔育琴.基于单片机的步进电机驱动设计与实现[J].福建电脑,2016,32(04):114+133.[8]葛海江.基于HX711的高精度电子称重研究[J].电子测试,2019(10):31-32.[9]罗及红.一种高精度的电子秤设计[J].计算机测量与控制,2010,18(08):1955-1958.[10]幸联星.基于单片机的智能家居环境检测系统设计[J].电子技术与软件工程,2020(01):59-61.附录一 原理图/附录二 程序/////////
Key words: STM32; Pet; Smart 目 录
程序设计 6(四)键盘扫描子程序的设计 7五、硬件测试 8(一)实物图简介 8(二)初始时间及喂食时间设置检测 9(三)喂食功能检测 9(四)温度范围功能检测 10(五)调试问题 11六、总结与展望 12(一)总结 12(二)展望 12致 谢 13参考文献 14附录一 原理图 15附录二 程序 16一 、引言目前,宠物已成为人们密不可分的伙伴,越来越多的家庭饲养了宠物。养宠物的出发点,也许是需要陪伴,也许只是因为喜爱,但不可否认宠物渐渐地成为当代许多人的精神慰藉和感情依托。如今年轻一代养宠物再也不仅仅满足于把宠物“养活”,而是“养好”,因此,关于怎样养好宠物的一系列问题也随之而来。宠物也需要经常陪伴和关爱,但在繁忙的工作中大多数人就连最基本的喂养宠物都很难抽出时间,因此它们可能会饿肚子也可能会去吃一些不能吃的东西,所以,智能宠物家居也在大家的呼唤中应运而生。现在,借助于智能宠物家居,就算我们不在家也可以轻松的给家中的宠物喂食,解决了养宠的主要难题。此外,由于人们的养宠的需求日益增加,智能宠物家居的市场不容小视,产业前景光明。课题研究的意义本文智能宠物家居的设计,主要是解决养宠一族想要“养好”宠物却因工作或者其它原因无法照看宠物这一难题。本设计由硬件结构与软件设计共同组成,选用STM32系列芯片为主控芯片,温湿度传感器收集当前智能宠物家居的环境的温湿度并实时在LCD液晶屏上显现,通过对按键的调节,设置出合适的宠物家居温度范围,当宠物家居的环境温度低于我们所设置的温度范围最低值时,自动开启继电器模拟加热。当宠物家居的环境温度高于我们所设置温度范围的最高值时,自动打开风扇模拟降温。通过按键也可设置喂养时间,如果到了喂养时间,电机正转投食,重量达到投放的标准后,电机反转停止投食。并且为了人性化也增加了手动喂食功能。国内外研究现状与国外相比,中国的宠物产业和相关产业研究相对较差。国外对宠物饲养、宠物医疗保健、宠物市场趋势以及类似的宠物产品研究都相对侧重。另外,“宠物保险”这样新颖的经济产物也在国外率先出现,“宠物保险”的出现表明了宠物经济走向了拟人化的趋势。我国是世界上宠物用品的进出口大国,目前,我国进口的宠物用品大体可分为两大类,一类是由欧美制造的高价位的宠物用品,另一种是东南亚各国制造的低价位宠物用品。就拿美国比较,如果说美国近十年来的宠物业的发展是“日新月异”,走在了世界的前列。那么我国宠物业的发展可谓是令人“叹为观止”。2019年3月第6届北京国际宠物用品展览会在我国北京国际展览中心举行,从宠物展给出的展示范围可以判断重点在自动智能方面,这也表明了,自动化、智能化还是宠物相关产品的发展重心。展示商家一致认为,自动化、智能化不仅是宠物用品的发展重心也会是我们人类未来的生活用品的发展方向,在产品中装入嵌入式计算机即可使产品“智能化”,使其控制更简单、设备更精巧,也符合“绿色”电子的要求。二、智能宠物家居总体设计框架 /图1智能宠物家居系统框图如图1所示,智能宠物家居系统主要包括由STM32单片机、显示实时数据液晶显示模块、外部输入按键模块、模拟降温风扇驱动模块,模拟喂食电机驱动模块,模拟加热继电器电路模块。按键模块的功能相当的多,可以设置当前的系统时间、自动喂食的时间、以及判断是否打开风扇和继电器的温度上限值和下限值。重量检测模块的功能是检测食物的重量是否达到我们预先设置好的值。当前的温度和湿度由温湿度检测模块采集并在液晶屏上显示。液晶显示电路可以显示当前的一些基本数据。例如温度的上下限、食物重量、喂食的定时时间以及当前温湿度和系统时间。风扇的主要功能是模拟降温,继电器是模拟加热,电机是模拟喂食。三、系统硬件设计(一)最小系统电路设计单片机是设计的核心组件,应具备高速和低功耗的特性。我搭配的是STM32系列中相对常见的STM32F103RCT6芯片。STM32芯片是非常适合嵌入式应用开发的一款芯片,它具有内部资源丰富、性价比高、节约能源等优点。在智能宠物家居上搭载STM32芯片可以更加快速的检测宠物家居的实时数据并在液晶显示单元中显示。STM32最小系统电路如图2所示。/图2 STM32最小系统(二)温湿度采集电路设计本次智能宠物家居设计中,温湿度的采集是用来确定宠物家居中继电器和风扇是否工作的前提,我搭配的温湿度传感器的型号为DHT11,它是一款即可检测温度又可检测湿度传感器,它的数字信号输出被校准过,其测量精度湿度+-5%RH, 温度+-2℃。DHT11传感器主要运用于专用的数字模块收集领域和温湿度传感领域,该产品同时兼具高可靠性和长期稳定的两大优点。DHT11传感器中含有两大核心元件,一个是电阻式的湿敏元件利用湿敏元件的特效测量湿度,另一个是NTC的测温元件利用电阻值随着温度上升而下降的特性测量温度。此产品具有卓越的品质、快速响应、实用性高的特点。由于DHT11的体积很小,而且能源消耗非常低,在智能宠物家居中采用DHT11作为温湿度采集元件是一个不错的选择。DHT11传感器的连接也非常简单,DHT11温湿度检测电路如下图3所示。/图3温湿度检测电路DHT11引脚说明如表1所列表1 DHT11引脚说明/(三)重量检测电路设计本次设计的宠物喂食的食物重量检测部分,我选用了HX711芯片,搭配专用的称重传感器来实现宠物食物重量检测的功能。HX711芯片是一个24位A/D转换芯片,同时它也是专为高精度称重传感器而生的芯片,有了它,我们物喂食的食物重量检测部分会变得非常简便。与其它类型的芯片相比,HX711集成了大多数其它相同芯片所需要的外部电路,包括电源、内部时钟发生器等。此外,芯片本身的稳定电源可以直接为外围传感器供电,这样就不必在系统电路板上添加额外的模拟电源。芯片本身便有时钟振荡器不必外加器件。一旦启动,系统将自动重新,优化了初始步骤。HX711芯片及重量检测电路如下图4所示。//图4 HX711芯片及重量检测电路(四)显示电路的设计显示电路是除STM32芯片外的另一个核心电路,智能宠物家居当前时间的显示、自动喂食的定时、最高温度和最低温度的设置以及食物的重量都需要在LCD液晶显示模块上显示。此次设计使用LCD1602液晶来作为实时数据的显示器件。LCD1602可以通过字母、阿拉伯数字以及基本符号等组成点阵字符位来显示实时数据是一款常见的点阵型显示器件。而且LCD1602芯片内部包含了总线电路、复位模块等细节处理功能模块。配置该款器件到宠物家居控制系统中,不仅可以减少系统组件的成本还可以提高智能宠物家居的性价比。显示电路通过VCC接入电源电压,通电后芯片启动,D0到D7位是数据端,与单片机对应I/O口连接即可,这样液晶显示与系统之间便可进行点对点的数据传输。液晶显示模块及电路如下图5所示。//图5液晶显示模块及电路(五)电机驱动电路的设计电机驱动电路是宠物家居中宠物喂食部分的重要环节,什么时间喂食、当前时间是否喂食,便由此部分控制。本次设计的宠物喂食部分,我选用的采用单极性步进电机28BYJ-48。步进电机是一种可以把电信号转化为角位移的装置。简单地说,步进电机一收到脉冲信号,就会旋转一定角度。我们可以通过控制脉冲信号的个数来控制步进电机旋转的角度从而达到智能宠物家居中自动喂食的目的。步进电机模块如图6所示。/图6 步进电机模块智能宠物家居中的电机驱动电路由一块ULN2003电机驱动板和一个电机组成。ULN2003电机驱动板主要应用于继电器驱动器,显示驱动器,以及逻辑缓冲器等等。要想让单片机通过电机驱动板驱动步进电机进行旋转,ULN2003驱动电机的连接也很清晰明了,只需将步进电机的公共端及COM一起连接到电源正极,再将1到4号接口按原理图接至相应I/0口上即可实现功能。步进电机驱动电路如图7所示。/图7步进电机驱动电路四、系统软件设计(一)软件开发环境在整个程序设计的初期,选择合适的编程语言是很重要的。我们广泛也是最常使用是汇编和C两类语言。汇编语言是低级语言的一种,它有着一定的局限性以及复杂度,使用的人相对较少。而C语言是在二十世纪八十年代出现的一款编译器,最早期的C语言是面向过程的一种编译语言,在它的基础上繁生了C++以及C#这两款面向对象的编程语言。它的出现,很快便被广大电子设计师们接受并在电子设计行业普及。C语言有着十分完善的结构化程序模块,可以在开发软件时使用模组化程序设计方式提供一个很好的平台。本设计的软件编写部分使用uVision5软件。uVision5软件集成了很多开发环境以及库文件,它是基于C语言的一款实用的开发系统,如今在嵌入式的程序设计中Keil uVision5软件深受大家喜爱。(二)软件整体设计智能宠物家居需要实现五大功能分别为使用按键设置智能宠物家居的温度范围,当环境温度低于规定温度最低值时,打开继电器。当环境温度高于规定温度最高值时,打开风扇。温湿度传感器采集当前环境的温湿度并在LCD液晶屏上显示。通过按键设置3个喂食时间。利用压力传感器称出当前食物的重量,如果到了喂食时间,电机正转投食,模拟喂食。重量达到投放的标准后,电机反转停止投食。有手动投食功能。(三)主程序设计主程序流程图如图8所示,它主要包括智能宠物家居系统的初始化、液晶显示以及按键的判断。 /图8主程序流程图(四)键盘扫描子程序的设计按键设置是智能宠物家居程序从外部输入的关键,想要把温度的上下限范围和喂食时间输入系统就要通过键盘实现。按键的功能分别是K1手动喂食。K2定时时间调节。K3定时时间加。K4定时时间减。K5上限温度加。K6上限温度减。K7下限温度加。K8下限温度减。部分子程序如图9所示,详细程序请见附录二。/图9部分子程序五、硬件测试(一)实物图简介通过前四个章节对宠物家居设计系统的构建,该设计的软硬件基本已经完成,接下来的任务是通过对已焊接完成的实物板调试相应的功能来检测我们的设计成果与预期成果是否一致,是否存在硬件或软件设计缺陷。在本次的设计中,实物我选择了在万用板来连接整个硬件设施,这对我来说是一个很大的挑战,因为在平时的训练中我们都是使用已经布线完成的套件,没有使用过需要自己布线的万用板,使用套件时我们只需要把对应的元器件焊接上即可,不需要考虑到走线的问题。但使用万用板焊接就不同了,不仅需要把元器件焊接好,还需要考虑到走线的问题,怎么布线才能让整个硬件看起来美观这个问题困扰了我好几天,好在有学长不厌其烦的指点我,功夫不负有心人,总算是把硬件的实物做的有模有样了。实物如图10所示。/图10 实物图将实物施加电压后,该设计系统实物初始界面如图11所示/图11系统实物初始界面液晶屏显示各个数据如下6:00:表示系统初始时间是6:00,具体时间可以通过时间控制按键修改。52%:表示当前湿度是52%。(15,30):15表示最低下限温度值,室外温度低于此温度将打开继电器,模拟加热。30表示智能宠物家居的最高上限温度,室外温度高于此温度将开启风扇。00 00 00:这三组数据表示我们可以设定的三个宠物喂食的时间。09:表示当前的环境温度为9℃。0000:这组数据表示喂养食物的重量,当到达喂养时间,或者我们按下手动喂食按键,设备电机将旋转90°模拟喂食。我们设定当食物重量达到1000时电机反转,停止喂食。(二)初始时间及喂食时间设置检测当前时间以及喂食时间我们可以通过有外部输入功能的按键模块设置。当我们按下定时时间调节按键时SetTIME1表示我们当前修改的是系统当前时间的时可以通过按键来加减。SetTIME2表示我们当前修改的是系统当前时间的分,另外3个则是我们需要设定喂食时间的时。时间设置界面如下图12所示。/////图12 时间设置图(三)喂食功能检测电机初始状态如图13所示。/图13 电机初始状态当宠物家居系统时间到达设定的喂食时间的时间后,如图14所示电机旋转90°模拟喂食。/图14 模拟喂食通过重量检测电路实时检测食物的重量当食物重量达到我们设定好的预定值后,如图15所示电机自动转回喂食结束。/图15喂食结束(四)温度范围功能检测首先我们先检测加热部分功能是否可以正常工作。智能宠物家居中,模拟加热继电器的测试初始状态如图16所示/图16继电器初始状态由于当前室温只有7°低于所设定最低值15°,继电器指示灯绿灯亮起表明继电器现处于打开状态,由于室温不可控,我们调节最低温度使继电器关闭。如图17所示。当最低温度为6℃时继电器指示灯绿灯未亮起表明继电器现处于关闭状态。/图17继电器关闭经测试,加热功能可以正常工作,下一步便是检测降温功能是否正常。由于室温8℃小于所设定最高温度9℃,风扇默认关闭。如图18所示/图18 风扇初始状态由于室温不可控,这个需要我们手动设置上限温度,把系统的温度上限值调的比室温低点,这样便可测试风扇是否打开,实现降温的功能。经微调节以后,当前的室温8℃高于我们所设定最高温度6℃,风扇打开。如图19所示。/图19风扇开启至此,通过检测可以看出,本设计智能宠物家居的主要功能已经完全实现,虽然实物看起来比较简陋,但不得不说这也是一次自我的突破,在做实物的过程中遇到了很多问题如果没有老师和学长的帮助,靠我自己一个人的力量完成这项设计还是非常吃力的。根据这款智能宠物家居设计可以制作成一个智能的宠物屋,该款宠物屋有环境温湿度智能检测控制和智能喂食的功能,当宠物屋的温度低于我们所设定的温度下限时加热器自动启动,这样便可避免宠物着凉的情况发生。当宠物屋的温度高于我们所设定的温度上限时风扇自动启动,这样便可避免宠物因为炎热异常烦躁的情况发生。智能喂食也可以帮宠物养成一日三餐按时吃的好习惯。通过这款智能宠物屋可以实现宠物的智能管理。(五)调试问题如何编写STM32程序是我遇到最大的困难,之前只是学习了一些简单的51单片机的知识,学得比较浅,想要凭借这点知识就用STM32做出实物,无疑是有点痴心妄想了,所以我在程序编写的过程中总是出现BUG达不到自己预先的效果。但是通过老师和学长的鼓舞和帮助,我自己也潜下心来,找了一些STM32的一些实战教程视频和文档进行深入学习和研究,逐步提高了自己对STM32的理解与运用,改正了程序中的BUG,最终实现预计的全部功能。六、总结与展望(一)总结本次设计,我做了一个智能宠物家居,主要是解决养宠一族想要“养好”宠物却因工作或者其它原因无法照看宠物这一难题。从寻找课题到完成毕业论文这一过程中也遇到了很多问题。其中最让我头疼的就是宠物家居的硬件设计,从硬件设计中我深刻的感受到了我的基础掌握不够扎实,很多问题都是请教老师和学长才得以解决。此次设计不仅锻炼了我的动手能力,也让我在学校学习的知识得到巩固。我明白了知识只记不用是万万不行的,只有将脑海中的知识运用起来与实际相结合这样才是真正掌握。我也清楚的知道了成功的关键是看自己是否真的愿意下苦工。如果遇到困难就退缩,那么永远都别想做好一件事,不努力你就不会知道自己的潜力有多大。还有就是人际关系方面,要学会多与别人合作与沟通。(二)展望在本次的实物设计中,虽然我成功的完成了实物制作与后期测试,但一个人的精力实在有限,我智能宠物家居只是模拟完成了我的设计思路,想要达到在现实生活中使用还需要进一步的优化。但是随着社会上饲养宠物的人逐渐增多,智能宠物家居可以给宠物们提供舒适的环境也可以避免爱宠人士不在家出现宠物无人照看的情况发生给爱宠人士提供了便利,我相信这样的大情况下智能宠物家居一定会运用的更加广泛,宠物相关产品也会越来越智能化,人性化。 致 谢论文得以顺利完成,离不开大家的帮助。首先我要感谢我的指导老师吴冬燕老师,在整个设计过程中,从选器材,开题报告,中期检查,到撰写毕业论文,及最后的反复斟酌,一直得到吴冬燕老师的指导,吴老师严谨的治学态度,开阔的思想,循循善诱的指导一直给我很大的帮助。为此我特向我的指导老师致以诚挚的谢意,感谢您一直以来对我的帮助,感谢您让我在这次毕业设计中顺利完成任务,并从中获得新知识,师恩伟大,无以为报。其次,我要感谢我的学长,学长在论文构思中给了我很多启发和指导,也在实物设计中帮我答疑解惑让我可以顺利完成设计。最后,我要感谢给予我良好的学习和生活的环境,也要感谢辅导员以及各学科老师们,感谢你们在我成长的道路上指引方向。参考文献[1] 高晓斌.基于STM32单片机的智能宠物家居的设计与实现[J].信息系统工程,2018(07):20.[2]邹连生.我国宠物产业发展展望[J].广东畜牧兽医科技,2013,38(01):41-43.[3]朱庆祥,潘锁.家庭智能宠物喂食器造型设计[J].机械设计,2016,33(04):130.[4]郝昱. 自动化、智能化成宠物用品行业发展趋势[N].中国贸易报,2015-04-28(006).[5]应耿宁,陈启东,楼泽华,刘屹行,张志伟.基于STM32的大棚智能通风系统的设计与研究[J].机电工程技术,2019,48(06):149-151.[6]魏印龙,张向阳,孔令扬.基于AT89C51单片机的步进电机控制系统设计[J].科技广场,2016(08):184-189.[7]王语园,孔育琴.基于单片机的步进电机驱动设计与实现[J].福建电脑,2016,32(04):114+133.[8]葛海江.基于HX711的高精度电子称重研究[J].电子测试,2019(10):31-32.[9]罗及红.一种高精度的电子秤设计[J].计算机测量与控制,2010,18(08):1955-1958.[10]幸联星.基于单片机的智能家居环境检测系统设计[J].电子技术与软件工程,2020(01):59-61.附录一 原理图/附录二 程序/////////
Key words: STM32; Pet; Smart 目 录
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/dzxx/txgc/382.html