嵌入式智能花盆的设计与实现.docx
- 文档编号:28623330
- 上传时间:2023-07-19
- 格式:DOCX
- 页数:26
- 大小:1.40MB
嵌入式智能花盆的设计与实现.docx
《嵌入式智能花盆的设计与实现.docx》由会员分享,可在线阅读,更多相关《嵌入式智能花盆的设计与实现.docx(26页珍藏版)》请在冰豆网上搜索。
嵌入式智能花盆的设计与实现
分类号:
TN929
密级:
公开
毕业设计
题目:
嵌入式智能花盆的
设计与实现
系别:
物理系
专业年级:
电子信息工程
姓名:
学号:
指导老师:
2016年06月02日
原创性声明
本人郑重声明:
本人所呈交的毕业论文,是在指导老师的指导下独立进行研究所取得的成果。
毕业论文中凡引用他人已经发表或未发表的成果、数据、观点等,均已明确注明出处。
除文中已经注明引用的内容外,不包含任何其他个人或集体已经发表或撰写过的科研成果。
对本文的研究成果做出重要奉献的个人和集体,均已在文中以明确方式标明。
本声明的法律责任由本人承担。
论文作者签名:
日期:
关于毕业论文使用授权的声明
本人在指导老师指导下所完成的论文及相关的资料〔包括图纸、试验记录、原始数据、实物照片、图片、录音带、设计手稿等〕,知识产权归属吕梁学院。
本人完全了解吕梁学院有关保存、使用毕业论文的规定,同意学校保存或向国家有关部门或机构送交论文的纸质版和电子版,允许论文被查阅和借阅;本人授权吕梁学院可以将本毕业论文的全部或部分内容编入有关数据库进行检索,可以采用任何复制手段保存和汇编本毕业论文。
如果发表相关成果,一定征得指导教师同意,且第一署名单位为吕梁学院。
本人离校后使用毕业论文或与该论文直接相关的学术论文或成果时,第一署名单位仍然为吕梁学院。
论文作者签名:
日期:
指导老师签名:
日期:
摘要
伴随着社会经济的快速发展,人们对生活质量的要求日益增高,在家中养花成为一种潮流,但由于工作较忙,买了盆栽后,却没时间照顾盆栽的现象也随之越来越多,针对这一情况我进行了深入分析,并展开了我的毕业设计。
本课题设计了一款基于嵌入式STM32微控制器控制的智能花盆,本课题采用STM32F103RCT6作为主控,融合土壤湿度传感器、温度传感器、光照传感器来实时检测土壤湿度、环境温度和光照,通过操纵舵机、灯珠、风机、语音模块等实现自动浇水、补充光照、降温、播放歌曲等功能,并加入LCD触摸屏,实时显示土壤的湿度,环境温度和光照强度等环境条件,用户可通过触摸屏对温度湿度光照的上下限值进行设定,对是否显示报警信息进行设定,还可通过触摸屏对语音模块进行音量的加减操作,加入红外遥控,使用户可以在较远地方来操控我们的智能花盆,红外遥控器可以对智能花盆的音乐播放和实时日期进行设定。
随着智能花盆逐步走入千家万户,将极大的方便人们照顾盆栽,同时也必将产生更多的对智能花盆的功能方面的要求,所以本课题的研究具有深远的意义。
关键词:
STM32微控制器;土壤湿度传感器;温度传感器;光照传感器
Abstract
Withtherapidsocio-economicdevelopment,people'squalityoflifeincreasinglyhigherdemandsathomegardeninghasbecomeatrend,butmorebusy,buyapot,thepotbutnotimetotakecareofthephenomenonalsowillbemoremoreforthesituationIwasin-depthanalysis,andstartedmygraduation.
ThispaperdesignedaflowerpotbasedonintelligentembeddedSTM32microcontrollercontrol,thispaperusesSTM32F103RCT6asthemaster,theintegrationofsoilmoisturesensors,temperaturesensors,lightsensorstoreal-timedetectionofsoilhumidity,ambienttemperatureandlight,bymanipulatingsteeringgear,lampbeads,fans,voicemoduleforautomaticwatering,supplementarylighting,cooling,playsongsandotherfunctions,andjointheLCDtouch-screen,real-timedisplayofthesoilhumidity,ambienttemperatureandlightintensityandotherenvironmentalconditions,theusercantouchscreentemperatureandhumidityilluminationsetupperandlowerlimitsofthealarminformationisdisplayedset,butalsothroughthetouchscreenvolumeadditionandsubtractionoperationsonthevoicemodule,addinginfraredremotecontrolthatallowsuserstomanipulateusindistantplacesintelligentflowerpot,infraredremotecontrolcanbesmartflowerpotmusicplayerandreal-timedatecanbeset.
Assmartflowerpotgraduallyintomillionsofhouseholds,willgreatlyfacilitatethepeopletotakecareofpottedplants,butalsowillproducesmartpotsrequiremorefunctionality,sotheresearchofthissubjecthasfar-reachingsignificance.
KeyWords:
STM32microcontroller;Soilhumiditysensor;Thetemperaturesensor;Lightsensor
第1章绪论
1.1课题来源及研究意义
伴随着社会经济的迅速发展,许多的人想要去照顾盆栽却没有多余的时间。
而周围环境的变化会影响到植物的正常发育,尤其是温湿度、光照强度等因素。
例如太阳光照过于强烈、室外温度过于高、土壤的湿度过于干燥等因素都会影响盆栽的生长,甚至是造成盆栽的死亡。
因此,使植物种植简单化是大多数家庭所希望的[1]。
针对这一现状,我选择了这一课题,嵌入式智能花盆的设计与实现。
1.2国内外发展状况及研究背景
嵌入式智能花盆是利用传感技术组装的新型盆栽,主要是使用各种传感器技术,实时检测植物生长的周边环境状况,并实现自动盆栽浇水、提醒主人等人性化功能。
早在多年前布鲁内尔大学的学生娜塔莉·金就已经提出这一设计,近几年国外智能花盆已经作为一种常见的装饰品走进许多人的生活。
且价格适中,质量可靠。
而国内在智能花盆这一方面尚处于刚刚出现,正在发展的阶段,价格偏高,限于技术与成本功能尚有许多不完善[2]。
1.3课题研究目标和内容
研究目标:
通过本课题的研究,设计并制作一款智能花盆,实现对温度、湿度、光强等的实时监测与显示,通过触摸屏实现良好人机互动,实现自动浇水、提醒主人植物生长状况等功能[3]。
研究内容:
分析当前社会对智能花盆的需求,通过温度传感器、土壤湿度传感器、光照强度传感器实时采集盆栽所处环境的信息,控制与使用触摸屏、舵机、轴流风机等器件,使用μC/OS-II操作系统实现嵌入式智能花盆传感器检测、信息处理、控制等任务的调度[4]。
第2章系统设计及要求
2.1系统基本功能
(1)检测土壤中湿度,光照强度和温度
(2)显示土壤中湿度,光照强度和温度
(3)控制土壤中湿度,光照强度和温度
(4)用户可设定报警值
(5)可提醒用户植物生长环境状况
2.2系统体系构架
根据对系统基本功能的分析与思考,我们得到了图2-1,从该图中我们可以很容易的看出,系统分为5部分,分别为检测部分、主控部分、显示及设定部分、控制部分与电源部分[5]。
系统电源
图2-1系统体系构架
2.3方案设计与论证
2.3.1控制器部分方案论证
方案一:
采用STC89C52RC作为主控制器,该主控是我们接触时间最长的一款芯片,在大学课程中曾有过对这门课程的讲解。
具有价格低廉,资料丰富,使用容易等优点,但其程序存储空间较小,运行速度不高,接口较少且功耗高。
方案二:
采用STM32F103RCT6作为主控制器,该芯片是一款使用十分普遍的控制器,其具有性能优良,可移植性高,接口丰富等优点。
STM32F103RCT6具有256KB的程序存储空间,具有丰富的硬件资源。
对于实现本系统的功能较为合适[6]。
综合比较以上两个方案,本系统选择方案二。
2.3.2显示及设定部分方案论证
方案一:
采用LCD12864用作显示采集的数据,采用4X4矩阵键盘用作设定参数。
LCD12864液晶模块的接口模式有许多,模块的内部带有简体的中文字库;可以用于显示汉字和一些简单的单色的内容,但是它的显示内容是有限的。
矩阵键盘用作设定键值,可以大量减少对引脚的占用,但考虑到使用矩阵键盘增加了额外开销,且占据了较大的面积,影响到最终成品的大小。
不适用于本系统。
TFTLCD显示屏TFTLCD显示屏是一款常用的TFTLCD显示模块,采用高亮背光,背光亮度好功耗低,采用高质量触摸,高灵敏度高线性。
由于其支持触摸功能,所以显示及设定功能都可以由TFTLCD显示屏来实现,这样便省却了按键模块对空间和资源的浪费,其显示内容较多,价格廉价,资料在网上较多,易于使用,且在所用的主控板上已经留出了该显示屏的接口,接线极其简单,对于本系统来说较为合适[7]。
综合比较以上两个方案,本系统选择方案二。
2.3.3电源部分方案论证
方案一:
采用电源适配器作为电源部分,采用12伏电源适配器为本系统供电,中间通过降压模块降出3.3伏和5伏给各个模块供电。
电源适配器具有价格廉价,使用方便,不需要频繁更换电源的特点,但是考虑到电源适配器必须有外部供电的缺点,不适合于本系统。
方案二:
采用18650锂电池作为电源部分,该电池是生活中常见供电电池中的一种,常用做笔记本电池换芯,充电宝电源等,其寿命可到达充放1000次以上,且价格低廉,易于使用,可充电的优点,适用于本系统[8]。
综合比较以上两个方案,本系统选择方案二。
2.3.4检测部分方案论证
2.3.4.1光照强度检测
方案一:
采用电流型光照传感器SM2160M,该传感器具有容易安装在各种环境,测量的范围较为广泛的特点,适用于生活中各种场所,特别适合农业大棚、城市照明。
但其需要DC24伏的供电电压,且价格较为昂贵。
方案二:
采用光强度检测模块BH1750FVI。
该传感器的供电电源为3-5v,其照度范围较为广泛,该传感器内部配置有16位模数转换器,通过IIC总线直接输出检测数据,其测量之精度完全可以满足本花盆的要求[8]。
综合比较以上两个方案,本系统选择方案二。
2.3.4.2温湿度检测
方案一:
采用DHT11温湿度传感器模块监测温湿度。
该传感器具有较高的抗噪能力、响应快的特点。
其测量之范围为湿度20%到90%度,温度0到50度,其测量范围对于本系统来说过小,且不能检测零下的温度,不满足本系统要求。
方案二:
采用DS18B20温度检测传感器实时检测环境温度,使用土壤湿度检测传感器实时监测土壤湿度,该传感器是常用的温度传感器,其小巧灵活,占用主控引脚少,检测温度的精度较高的优点,其温度测量范围为负55度到正125度。
对于系统要求完全可以满足。
土壤湿度传感器能输出开关信号和模拟信号两种,开关信号的输出条件可由模块上的电位器调节,其输出模拟信号,主控制器件有12位的AD装换器,转换出的值足以满足系统的要求[8]。
综合比较以上两个方案,最终选择方案二。
2.3.5控制部分方案论证
2.3.5.1光照温度湿度控制
方案一:
采用白织灯作为光照控制,采用玩具电机作为温度控制,采用继电器作为湿度控制,白织灯具有亮度高的优点,但其体积过大,且需220伏供电,不适用于本系统。
玩具电机具有价格廉价风力大的优点,但其危险性较大,且需要相应的电机驱动模块,增加了系统成本,不适用于本系统。
继电器具有控制简单的优点,但其不能控制水龙头阀门的大小,不适用于本系统。
方案二:
采用超高亮LED作为光照控制,采用轴流风机作为温度控制,采用舵机作为湿度控制。
超高亮发光二极管成本低廉的优点。
轴流风机具安全,有占用面积较小,风力适中等优点,舵机具有操作简单,可以精确控制转动的角度的优点,适用于本系统。
综合比较以上两个方案,本系统选择方案二。
2.3.5.2语音控制
方案一:
采用ISD1820语音录放模块,该模块可以进行10s的语音录制和播放,其播放录制的语音时具有高质量高复原的优点,具有循环、点动、单遍等功能,价格低廉,但考虑到其录音时间较短,不适用于本系统。
方案二:
采用BY8001-16P语音模块。
该模块可以播放常见的音频格式,该模块可通过更换SD卡中的歌曲进行更换语音内容。
该模块内部具有3W功放,可以直接驱动喇叭完成播放。
适用于本系统,可满足系统所需所有要求。
综合比较以上两个方案,本系统选择方案二。
2.4最终方案
经过反复的方案论证与选择,本课题最终选择如下方案。
检测部分:
(1)采用DS18B20采集温度值
(2)采用土壤湿度检测传感器采集土中湿度值
(3)采用光照传感器BH1750FVI采集光照值
主控部分:
采用STM32F103RCT6作为微控制器
电源部分:
采用18650锂电池作为电源供电
显示及设定部分:
控制部分:
(1)采用超高亮LED白光灯作为光照控制部分
(2)采用轴流风机作为温度控制部分
(3)采用舵机作为湿度控制部分
(4)采用BY8001语音模块播放指定音乐
第3章硬件电路
3.1电路组成框图
如图3-1中,电路由温度传感器、土壤湿度传感器、BH1750FVI光照传感器、2.8寸触摸屏、STM32控制器、继电器、轴流风机、舵机、BY8001-16P语音模块、超高亮LED白光灯及18650锂电池电源供电电路组成[9]。
图3-1电路组成框图
3.2电路各模块介绍
3.2.1DS18B20温度传感器
DS18B20温度传感器是非常实用的一种用于温度实时检测的传感器,在粮仓、电力机房等控制邻域,在汽车空调、冰箱等测温邻域都有较为广泛的使用。
DS18B20温度传感器近几年来使用的较为广泛,由于其具有占用I/O接口较少,操作简单,检测温度实时且较为精准,成本较低,所以使用该传感器的公司和个人较多,网络上因此有相对较为丰富的资料和参考代码,极大的方便了我们的使用。
DS18B20的电源范围较为广泛,一般的5V或者3V的单片机都可以驱动,通常会在数据引脚上上拉一个10K的电阻,加强我们的信号传输质量。
在我们主控的引脚模式设定的时候,设定引脚模式为开漏输出便可,假设是没有接入上拉电阻,在引脚设定的时候则要设定为上拉输入,来保证与传感器能进行正常通讯。
3.2.2土壤湿度传感器
土壤水分传感器适用于土壤水分检测,土壤水分传感器已拓宽了传感领域,能提高传感器的灵敏度。
模块上的电位器是用于调节输出开关信号的阈值,通过顺时针转动和逆时针转动,调节控制的湿度大小;开关信号输出可以与主控直接相连,通过引脚高低电平的检测,判断土壤湿度是否超标。
[11]。
3.2.3BH1750FVI光照传感器
GY-30数字光照强度检测模块,可以直接由我们的主控板上的3.3伏电源供电,通过IIC总线实时输出检测数据,减去了繁琐的计算;且高精度测定可用于宽范围的亮度照度1lx的测定。
BH1750FVI光照传感器模块采用标准NXPIIC通信协议,可通过IIC协议与微控制器进行通讯[12]。
该传感器模块在IIC通信的两个引脚上加了两个10K的上拉电阻,加强了IIC通信的距离与质量。
3.2.4继电器与轴流风机
本系统使用继电器模块为常用继电器模块,该模块上的常开接口的负载上限为交流250V或者是直流30V;继电器模块的工作电压为5伏,在模块上有黄色跳线帽,通过选择跳线帽接高接低来设置高电平或低电平触发;模块电源状态灯为绿发绿LED灯,继电器开关状态灯为红发红LED灯。
继电器输出端no为常开的接口,闭合之前当为悬空,闭合之后当与com短接;com为公共的接口;nc为常闭接口,闭合之前当与com短接,闭合之后当空悬。
继电器模块级触发器选择结束,跨接或低短路或高短接决定低电平触发或高电平触发[13]。
本系统采用的散热装置为小型轴流风机,它的外观尺寸为40毫米×40毫米×10毫米,转速为4000±10%转/分钟,噪音为18分贝,工作电压为12V,工作电流为,红线正极,黑线负极,[14]。
3.2.5辉盛9g舵机
辉盛9g舵机是一种角度伺服的驱动器,适用于需求控制角度且稳定可靠的系统,近年来在遥控玩具,如四旋翼飞行器云台遥控,智能小车转向遥控等中普遍使用。
辉盛9g舵机重量为10g,力矩为1.5kg/cm,工作电压为4.2v到6.0v。
红线正极,褐线负极,橙黄色线为PWM输入控制线[15]。
3.2.6TFTLCD显示屏触摸屏
该模块是一款通用的TFTLCD模块,采用全新LCD模块加原厂触摸屏,质量好,该模块有如下特点:
320×240的分辨率;16位色〔6万5千色〕显示支持;采用高亮背光,背光亮度好功耗低;采用高质量触摸,高灵敏度高线性[16]。
该模块可以直接接入我们的主控板,在主控板上已经留有母排排针接口,直接将显示屏按照主控板上的方向接入即可,在该模块的配套资料中有对应的STM32的程序代码,方便我们的移植与使用。
3.2.7BY8001-16P语音模块
BY8001-16P语音模块是新型的一款插卡式的MP3音乐播放模块。
使用BY8001-16P芯片。
模块上装有TF卡座,可通过更换SD中歌曲来更改卡中语音播放内容,歌曲支持常见的歌曲格式。
该模块内部具有3W功放,可以直接驱动3W的扬声器来播放语言,使用更加的简单和方便。
如图3-2,是该模块的引脚图:
图3-2语音模块引脚图
如图3-3,在本智能花盆系统中的语言模块电路部分采用如下的电路设计,微控制器通过串口通讯的方式与BY8001-16P语音模块进行通讯,从而到达控制语音播放的效果[17]。
图3-3语音模块接线图
3.2.8STM32F103RCT6主控制器
[18]。
MiniStm32开发板板载的主控为Stm32f103rct6芯片,这一款芯片具有丰富的资源,具有256K的程序存储空间,具有丰富的编程资源,对于我的毕业设计来说,足以满足本系统需求[19]。
3.2.918650锂电池电源供电部分
[21]。
第4章软件设计
4.1系统功能模块及系统程序框图
本系统采用μC/OS-II作为操作系统。
μC/OS-II是一种实时多任务并行的操作系统,它可以使智能花盆设计中各个任务独立工作,在本系统中的任务共创建了5个,分别为:
LCD显示、外设控制、MP3播放、传感器检测、触摸屏检测输入等任务。
考虑到本系统须同时采集和处理多个任务,所以加入了μC/OS-II操作系统[22]。
软件编程思路:
先初始化智能花盆系统外接的各种传感器和对主控与操作系统的底层配置等,然后创建多个μC/OS-II任务,通过系统的延时进行任务的切换,最后深入各个任务执行相应的程序[23]。
系统程序框图如图4-1所示。
图4-1系统程序框图
μC/OS-II创建的任务及优先级如下所示:
〔1〕LCD显示任务优先级为7
〔2〕控制任务优先级为6
〔3〕MP3任务优先级为5
〔4〕传感器任务优先级为4
〔5〕触摸屏任务优先级为3
4.2μC/OS-II任务设计
4.2.1LCD显示任务
本系统支持常见的图片格式,在LCD显示任务中,首先为图片显示分配内存,打开SD卡上存储图片的文件夹,记录当前索引,初始化画图,然后调用图片解码函数,解码图片并显示,最后释放存储空间。
4.2.2控制任务
如图4-3所示,在控制任务中,一直在循环执行3个任务,如果土壤湿度的测量值小于用户设定的土壤湿度最小值,则通过PWM控制舵机打开水龙头阀门,实现浇水,否则通过舵机关闭水龙头。
如果光照强度的测量值小于用户设定的最小值,则点亮LED白光灯,否则关闭LED灯。
如果测得的温度值大于用户的最大值,则由继电器开启轴流风机,反之则关闭。
4.2.3语音模块控制任务
在语音模块控制任务中不断检测通过触摸屏设定的MP3标志位,和红外遥控的相应键值,按照对应的键值执行语音模块的播放操作和一些其他专用的用户功能[24]。
4.2.4传感器检测任务
如图4-2所示,在传感器检测任务中,一直在循环执行5个小任务,分别是检测当前光照、检测时间值、检测当前土壤湿度、检测当前环境温度以及判断光照湿度温度测量值是否在用户设定的最大值与最小值范围之内,如果不是,在LCD显示屏上提醒用户。
及时汇报给用户关于盆栽的信息。
4.2.5触摸屏任务
在触摸屏任务中,不断检测触摸是否按下,如果按下,进入调试界面,不断检测触摸按下的位置,来实现界面进入、推出、切换以及各种参数的设定。
当用户触摸屏幕时进入到第一幅界面,第一幅界面中有显示选项卡、温度上下限值设定选项卡、湿度上下限设定选项卡、光照上下限设定选项卡、音乐播放和声音设定选项卡以及退出设定选项卡。
当用户在第一幅界面中点击后,根据用户点击的选项的不同进入到第二幅界面,在第二幅界面中是对各个参数值的具体设定,和一个退出选项[25]。
图4-2传感器检测任务程序流程图
图4-3控制任务程序流程图
第5章系统组装与调试
5.1模块测试
(1)电源模块测试:
用万用表测量锂电池18650两测的电压为3伏,经过充电器充电后,在次测量,锂电池两测的电压为4.2伏,将L2596降压模块与锂电池连接,转动降压模块上的电位器,测量到降压模块的输出电压随着电位器的转动而规律的变化,将降压模块调节到3.3伏的输出,万用表测量输出正常,接到板子上正常。
经测试,电源模块无问题。
(2)MiniSTM32主控板与显示屏测试:
将TFTLCD显示屏插入主控板显示屏接口,将USB数据线与电脑连接通电,板子正常工作,显示屏显示良好,无亮斑,触摸灵敏。
安装好烧写软件,烧写程序正常,经测试,板子与显示屏无问题。
(3)传感器测试:
将DS18B20插入板子的DS18B20温度传感器接口,烧写入相应程序,显示屏显示当前温度与室内实际温度相同,对着DS18B20吹热气,显示屏显示温度上升,停止吹热气后显示屏显示温度下降,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 智能 花盆 设计 实现