版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
豆芽机智能控制系统设计目录TOC\o"1-1"\h\u11211豆芽机智能控制系统设计 132399关键词:单片机;传感器;显示模块 1164641引言 1112822设计预期目标及概要 2307633系统硬件设计 2159871、主控制器模块: 286542、温度采集模块: 3295263、显示模块: 3290231、主控制器模块: 3120534、驱动模块:加热模块接单片机的P3.3端口,降温模块接单片机的P3.2端口,定 5244352.系统软件设计 779404系统软件设计 717275仿真运行 10212376制作调试 13164017小结 13摘要:本设计是以单片机作为主控元器件的豆芽机智能控制系统,它能够通过传感器检测出当前豆芽生长环境的温度数据,然后把采集到的温度数据传给单片机。温度数据经过单片机的处理,准确的通过显示模块显示出来,同时单片机将采集到的温度数据与系统设置好的温度数值上下限进行对比,做到环境温度低于设置的温度范围会自动加热,高于设置范围会自动降温。并且可以通过对单片机的设定,使整个系统具有定时喷水功能。关键词:单片机;传感器;显示模块 引言1.1背景和意义自古以来,豆芽一直在中国人的食谱中占据着举足轻重的地位。它不仅仅只在中国受到欢迎,在日本、韩国等许多国家也受到广大居民的喜爱。豆芽作为我国的一种传统室生蔬菜,具有营养丰富,鲜嫩可口,价格便宜,生长周期较短等优点,凭借这些优点,豆芽在今后将会得到更多人的亲睐。经典的豆芽种植方法对温度的依赖性较强。一般豆芽的生长最佳温度在20℃—25℃之间。低于这个范围时豆芽的生长速度较为缓慢,生长周期变长,对于种植户而言种植成本增加;高于这个温度范围时会加快豆芽生长过程中霉菌等细菌的滋生速度从而导致豆芽根部腐烂。因此,在豆芽的整个生长过程中,控制好温度对生长出优质豆芽至关重要。传统豆芽种植一般是在春秋季种植,它受季节的温度因素影响较大,不能实现对温度的实时控制,具有很多的不便之处。因此,设计出一款可以智能控制温度和定时喷淋的家庭豆芽机就很有必要,利用所设计的这款豆芽机人们即使在家里也能很方便的种出自己想要的黄豆芽、绿豆芽等豆芽来。它与传统的经典豆芽种植方法相比,具有很大的优点。如可以获得高质量的豆芽;可以改变豆芽按季节供应的模式,延长其供应期,使豆芽在一年四季不论什么季节都可以优质生长,大大消除了平常想吃豆芽却受到季节限制而吃不到的苦恼;还可以使居民在家中就可以随时地吃到自己种植的豆芽,方便人们的日常生活。设计预期目标及概要2.1设计的预期目标1)能够实现对环境温度的检测。2)可以预设温度的调节范围。3)能够实现定时喷淋功能。2.2设计概要本设计要求具有温度的测量和控制以及定时喷水功能,由于豆芽的生长环境依靠于大量的水分,其所处环境中的湿度在80%—90%。在传统的经典豆芽种植方法中,一般是采用潮湿的棉布等放在豆子的下面以保证豆芽生长环境中有足够的水分;本文所设计的豆芽机是采用封闭式的容器,通过喷水系统定时向容器内喷水,以保证满足豆芽生长所需要的湿度条件,因此在本设计中只需要实现对温度的采集和控制以及定时喷水就可以了。整个过程是先由温度采集模块来采集当前环境中的温度数据,传感器采集到的温度信息是模拟量,模拟量经过传感器内部处理后变为数字信号,然后传感器将这个数字信号传送给控制器。控制器将收到的数字信号经过处理后送给显示模块,显示模块将显示当前环境的温度信息,并且控制器会将收到的温度数据的大小和系统设定好的温度数值的上下限做比较。若测量到的温度数据在设定的温度数值范围内,则系统正常工作;若超出设定的温度数值范围,则会触发相应的调节驱动电路。除此之外,不论当前环境的温度如何变化,系统的喷水模块都会间隔一小时工作一分钟(本设计中设计为每隔20秒工作2秒)。本设计中所有外设均采用继电器和LED小灯泡来模拟。图1为设计的系统功能框图。图1系统功能框图图1系统功能框图系统硬件设计3.1主要模块元器件的选择主控制器模块:方案一:采用STM32单片机。STM32单片机有大量的外设端口。具有高性能、低功耗等特点,目前在生活中大量应用于遥控汽车、人工智能、微型四旋轴飞行翼等行业中,但是STM32的价格较高,内部结构复杂,不易短时间内入手学习。方案二:采用STC89C51单片机。我们对STC89C51单片机较为熟悉,它运行速度快,可以与其它C51系列的单片机兼容,上手简单,稳定性强,价格便宜,使用方便,有关资料丰富等。并且本设计系统要实现对温度的采集和控制以及定时喷水的功能,使用51单片机就完全可以实现。结合本设计的实际需要,考虑到经济性和方便性,决定采用STC89C51单片机。2、温度采集模块:方案一:采用SHT11传感器。SHT11的温度测量范围是-25℃—85℃,外部封装有八个引脚且采用的是贴片封装,这会导致后期焊接的时候难度较大,不易焊接。并且它的第二引脚是数据引脚,容易受到第三引脚时钟引脚的高低电平的影响,第二引脚仅在第三引脚上的时钟信号为高电平时有效,使用起来较为麻烦。方案二:采用DHT11温度传感器。DHT11数字温度传感器是一款含有数字信号输出的复合传感器,应用专用的数字模块采集技术和温度传感技术,较为稳定。温度的测量范围为0-50℃,测温精度是±QUOTE2℃。对比发现,SHT11传感器的测温范围远远超过豆芽生长环境的温度,使用时与DHT11相比还需要多接一个时钟引脚,使用不方便并且它的价格过于昂贵,不适合用于本系统设计。因此,决定使用DHT11传感器。3、显示模块:方案一:采用LED数码管显示。LED数码管外部封装结实,不会轻易损坏,坚固耐用。工作时损耗较小,寿命长。LED灯的颜色种类丰富,大量的LED数码管组合在一起可以实现各种图像。但是LED数码管体积较大,对于本设计系统而言美观性较差,并且LED数码管只能显示数字,不能显示英文及汉字。LED数码管驱动电流较大而单片机的端口电流较小,使用时还需要外加驱动电路才能使数码管导通。方案二:采用LCD1602液晶显示。LCD1602采用的是并口传输,速度较快。它内部具有16*2个字符,可以识别英文字母和阿拉伯数字等,使用方便。采用5V供电,具有低功耗、寿命长、可靠性高等特点。由于本设计的显示部分要求实时地显示出当前环境的温度数据,还需要在显示模块上显示和可调温度的上下限。因此,决定采用方案二。3.2模块电路的设计1、主控制器模块:STC89C51单片机外部有丰富的引脚接口,方便外设与单片机之间的数据通信。内部具有定时器1和定时器0两个定时/计数器,可以通过对定时器0的设定,完成本设计系统要实现的定时喷水功能。图2单片机外部引脚图图2单片机外部引脚图单片机最小系统设计:单片机最小系统是指单片机能正常工作的最基本的电路。本设计系统的单片机最小系统包括电源、单片机、复位电路和晶振电路。本设计系统采用的是系统上电复位,没有使用手动复位。对于晶振电路而言,它的主要作用是能够产生时钟信号,形成单片机系统的机器周期。本设计中采用12MHz的晶振和两个30pf的电容组成。虽然单片机中含有一个晶振,但是它受外部温度因素的影响较大,产生的信号不稳定,适合用于那些对于定时或者时间要求不高的甚至是不涉及到时间定时这方面的系统。由于本系统的设计需要定时进行喷水功能,这涉及到用单片机内部的定时器功能,对时钟信号的稳定性要求比较高,单片机内部晶振满足不了要求。因此就选择了放弃使用单片机内部的晶振改为采用在外部接入12MHz的晶振。为了使系统能够快速起振并且振荡的频率较为稳定,选择采用两个30pf的电容。如图3所示。图3单片机最小系统图图3单片机最小系统图2、按键模块:设置的四个按键分别对应着调整、加一、减一、确认四个命令,分别接到单片机的P2.0、P2.1、P2.2、P2.3端口,另外一端统一接地。当按键按下时,相当于电路导通,电路通过按键给单片机送回去一个低电平0,单片机采集到这个信息后根据不同的按键作出相应的响应。通过按下第一个按键可以进入调整系统的温度上下限页面。第二个按键和第三个按键是用来调整温度上下限的功能。其中,第二个按键对应的是增加温度的上限数值,按键每按下一次温度的上限数值就会在原来的数值上增加一;第三个按键对应着减小温度的下限数值,按键每按下一次温度的下限就会在原来的数值上减一。第四个按键对应着确认,当已经设置好了所要的温度上下限的时候按下第四个按键,显示模块上更新信息并正常显示当前环境的温度。如图5所示。图4按键模块图图4按键模块图3、温度采集模块:温度传感器DHT11共有4个外部引脚。它的第一引脚是供电引脚VDD。第二引脚是数据采集引脚DATA,接线时第二引脚与单片机P1.7端口相连,负责将外部的环境温度数据传输给单片机,并且第三引脚还需要接一个上拉的10k电阻,这是因为51单片机的上拉能力不够,为了防止灌电流过大烧毁元器件。第三引脚是悬空引脚NC,接线时该引脚不接任何端口,直接悬空。第四引脚是接地引脚GND,接线时让其接地。如图5所示。图5温度采集模块图图5温度采集模块图在本设计系统中最主要的是要保证从外部采集到的温度数据安全可靠,不受到其他一些因素的干扰,万一受到干扰,那么测得的环境温度数据就可能会变得很大,从而扰乱了设计系统的正常工作,使降温电路一直处于工作状态,导致豆芽的生长环境温度较低,不利于豆芽的生长。为了解决这个问题,防止温度数据受到干扰,还需要选择一个较为可靠的数据存储器来存放数据。本设计系统选择的是24C02芯片。芯片的SCL引脚是是串行时钟引脚,在它的输入时钟信号为上升沿的时候,单片机将数据送入24C02中存储,在下降沿的时候将数据读出。SDA是串行数据地址引脚,负责器件所有数据的发送和接收。SCL和SDA引脚各接一个10K的上拉电阻,用来稳定信号。当WP引脚连接到VCC时,外部只能读取24C02的数据,不能向它里面输入数据;当WP接地时,外部既能读取芯片内部的数据同时也能向芯片里输入数据。如图6所示。图624C02图图624C02图4、驱动模块:加热模块接单片机的P3.3端口,降温模块接单片机的P3.2端口,定时喷水模块分别接单片机的P3.4和P3.6端口。每个模块都由继电器、二极管、三极管和LED灯组成。为了防止豆芽机存在喷洒死角,导致部分豆芽不能被水冲洗或者受到冲洗的水量较少,因此,决定采用两个定时喷水系统。当开始喷水时,两个喷水系统同时开始工作,尽可能的保证所有豆芽都能被冲洗干净。继电器和LED小灯泡是用来模拟设计系统的外设。在每个继电器的两端都并联了一个反向二极管,这是因为当三极管导通时继电器开始工作,由于继电器的线圈呈现电感特性,电流在线圈流过时,会在其两端产生感应电动势。但是当三极管关断时,继电器中电流消失但感应电动势不会立即消失,而会产生反向电动势。这个反向电动势很大,如果加在三极管两端,会把三极管击穿。因此就需要一个反向并联的二极管作为释放的通道,反向电动势经二极管、继电器形成的闭合电路一直被消耗,直至完全被消耗掉。反向并联的二极管称为续流二极管,起到保护三极管,保护电路的作用。在这个模块中用到三极管主要是起到放大电流的作用。本设计采用的是SRS-05VDC-SL型继电器,该继电器的工作电流为80mA左右,而单片机的端口输出电流很小,约为20mA左右,远远达不到启动继电器所需要的工作电流,因此就需要使用三极管来对电流进行放大,使继电器能够正常启动,内部的衔铁可以被吸合。本设计采用的是9012PNP型三极管,三极管的发射极经过继电器接电源的正极,基极通过一个阻值为1k欧姆的限流电阻接单片机的I/O端口,通过单片机端口的高低电平来控制三极管的开通与关断,集电极直接接地。LED二极管还要串联一个阻值为2.2k欧姆的电阻,目的的为了分压,LED二极管的额定电压是3V,因此要将多余的电压分在电阻上。如图7所示。图7驱动模块图图7驱动模块图显示模块:本设计采用LCD1602液晶显示作为显示模块。15、16引脚是负责显示器的背光亮度显示,15引脚接+5V的电源,16引脚接地。第3引脚是负责调节显示字符的对比度,在电源和地之间接入阻值为1.5k的电阻R5和阻值为10k的电阻R6,根据串联分压原理,3引脚和1引脚之间的电压值会根据电阻R5、R6阻值的不同而不同。第3引脚负责采集这两个电阻之间的电压信号从而根据这个电压信号的强弱来决定需要显示的字符在LCD中的清晰度。对于R5电阻来说,一般阻值为220欧姆至1.5K欧姆之间都可以。选取不当的话会导致液晶无显示或者较为模糊。P00-P07为8位双向数据线接口,用于液晶显示器与单片机之间的数据传输通信。如图8所示。图8显示模块图图8显示模块图供电模块:供电模块使用外部+5V直流电源供电,由USB接口接入,负责给整个豆芽机智能控制系统供电。如图9所示。图9供电模块图图9供电模块图在对系统的各个模块设计完成后,又加入了报警系统。环境温度高于或者低于最佳温度范围后,对应的驱动电路开始工作并且蜂鸣器也开始工作,系统报警。在报警电路中设置了一个拨码开关SW1,当不需要报警功能的时候将拨码开关关闭,使报警电路断路不工作。系统的完整原理图如图10所示。图10总体原理图图10总体原理图系统软件设计系统软件设计采用C语言编程。在主程序中,首先对主程序进行初始化,完成对各个模块数据初始值的设定。然后温度传感器开始工作,检测当前环境温度数据并实时将采集到的温度数据送给单片机进行处理,单片机一边处理并送给显示模块1602进行显示,另一边还要实时地与单片机内部设定的温度数值范围进行比较。除此之外,单片机内部还有一个定时器功能,每隔20秒就要使喷水系统工作一次,时长2秒。4.1主程序流程图:图11主程序流程图图11主程序流程图4.2温度采样采样子程序流程图:图12温度采样子程序流程图图12温度采样子程序流程图4.3显示模块子程序流程图:图13显示模块子程序流程图图13显示模块子程序流程图仿真运行5.1电路图的绘制Proteus软件是我们进入大学以来常用的用来绘制和仿真电路的软件,它具有强大的元器件仿真库,几乎包含了所有的元器件,并随着版本的不断升级,库元器件数量也在不断增加。并且该软件还支持在线仿真功能,通过将Keil中编译好的软件程序直接下载到电路图上的单片机中,具有可以在线查看电路图的功能正确与否的优点。将Proteus和Keil两款软件相结合就可以完成对这次设计的豆芽机智能控制系统的仿真结果进行在线实验和调试。根据前面硬件部分的设计,可以很方便的在Proteus的元件库中完成对需要的元器件的选择,在器件列表中拖出需要的器件摆放在合适位置然后开始进行仿真电路图的设计搭建。在全部绘制好电路图之后还需要再对元器件进行标号检查,对电阻、电容等元器件进行赋值。再检查完接线是否正确完好、元器件标号等问题后,才算是完全绘制好电路图。其整体的电路如图14所示。图14总体电路图图14总体电路图5.2仿真结果仿真采用Proteus软件。在仿真软件中首先给系统供电,点击开始运行按钮就开始给系统上电了。程序的初始值是与豆芽生长的最佳环境温度相同的,是20℃-25℃。系统上电后先由温度采集模块中的DHT11采集豆芽生长环境的温度,温度传感器DHT11测得的环境温度为22℃,符合豆芽生长的最佳环境温度。经过单片机对当前环境温度与设置的温度上下限进行比较后,20℃<22℃<25℃,因此驱动模块不做任何响应。仿真结果如图15所示。图15仿真结果图图15仿真结果图当环境温度发生改变时,温度传感器DHT11测得环境的温度为18℃,低于豆芽生长最佳设定的最低温度是20℃。当环境温度低于20℃时,经过单片机的程序处理,通过它的P3.3口给加热模块发出低电平,三极管导通,加热模块开始工作,对豆芽生长的环境开始加热直到环境温度达到豆芽生长的最佳温度范围,单片机才会给P3.3端口送高电平使三极管关断停止加热。如图16所示。图16加热模块工作图图16加热模块工作图当环境温度发生改变,高于设定的最高温度25℃时,温度过高,经单片机程序处理之后,通过它的P3.2端口给降温模块送低电平,三极管导通,降温模块开始工作对豆芽生长的环境开始降温直到环境温度达到豆芽生长的最佳温度范围,单片机才会给P3.2端口送高电平使三极管关断停止降温。如图17所示。图17降温模块工作图图17降温模块工作图在豆芽生长的整个过程中,需要间隔固定的一段时间来对豆芽进行喷水处理,一方面是为了保持豆芽生长环境有足够的湿度,另一方面是需要对新生长出来的豆芽进行洗涤,去除豆芽生长过程中根部滋生的霉菌的,防止豆芽腐烂。本设计系统设定的时间时约20秒来进行一次时长2秒的喷洗动作,用于模拟豆芽机实物的约间隔1小时进行1分钟的喷水。在单片机内部有一个定时器,可以设定定时功能,设定时间为20秒,当20秒时间到了的时候,单片机通过P3.4和P3.6口发出低电平,此时三极管导通,喷水系统开始工作。一旦2秒钟时间到了,单片机P3.4和P3.6口就会发出高电平使三极管关断,喷水系统停止工作。以定时喷水1为例,如图18所示。图18喷水模块工作图图18喷水模块工作图制作调试在Proteus上绘制好电路仿真图后确定程序可以正常运行,现象符合预期要求后再使用AltiumDesigner软件绘制电路图和转换成PCB文件。在绘制PCB文件的过程中要考虑到元器件有无对应的封装,对于没有封装的元器件需要自己去寻找或者自己画出来然后才能使用。PCB画好之后需要对各个元器件进行合理的排版,使各个元器件分布均匀,电路板看起来不是杂乱无章的,然后需要对各个元器件之间进行布线,虽然可以直接使用软件中的自动布线功能来完成PCB的不限,但是自动布线也有一些弊端,它可能会使布出来的线较乱或者跳线较多,影响电路板的布局和不利于后期在电路板上的焊接工作。因此只有自己亲自去布线,使之能够最大限度的方便后期焊接。在印制好电路板之后就可以按照电路图上元器件的分布来进行一步步的焊接,首先将每个元器件对应到电路板上的相应位置。然后在焊接过程中需要特别注意二极管、电解电容和LED小灯泡的正负极之分,防止这些元器件的引脚电路板上的焊孔位置相反,出现问题。接着焊接完成后需要对各个焊点进行检查,看看是否有漏焊、虚焊等。在确认无误后,对电路板上电,接+5V的直流电源,打开供电模块的开关,对整个系统通电,调试系统检查是否符合仿真时的要求,是否能出现正确的预期现象。在第一次打好板子进行焊接的时候发现继电器的封装出现了问题。在画电路原理图的时候,没有注意到继电器的封装的大小,导致电路板上的继电器部分的引脚间距小于元器件实物的间距,只能采用导线将继电器连接在电路板上。焊接完成后,对电路板通电,发现并没有出现预期的现象,只能又重新拿着万用表检查线路和有无虚焊、漏焊等问题。最后发现是在绘制原理图的时候有两根导线被我粗心的给连接错了,所以就导致最后生成的PCB文件上的连线也跟着出了问题。在经历了第一次的失败经验后,我吸取了深刻的教训,在对原理图进行大量的更改,学习用分块加引脚标注的方法对各个部分全部进行分块和需要用到的引脚进行引脚标注这样这样就避免了各个元器件之间因为导线连接错而发生问题了。除此以外,对原理图进行分块还能够使得原理图看上去条例清晰,显得很规整。对原理图更改完成之后我又替换了继电器的分装,改用了本设计使用的SRS-05VDC-SL型继电器的封装。都做好这些工作后,开始进行PCB的转换与打板,然后就是按照电路板上元器件的位置与标注的信息逐个进行焊接元器件。需要注意的是在焊接51单片机、20c02和DHT11的时候需要在芯片各自加一个底座,目的是为了防止烙铁的高温对芯片内部的功能造成影响和损坏,造成焊接工作的失败,从而造成不能出现正确的设计现象。小结首先,本毕业设为豆芽机智能控制系统设计,其基本的任务是要求能够实现温度控制和定时喷淋功能。本设计已经满足了对温度的控制和实现定时喷淋功能。实现了当温度低于豆芽生长最佳温
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 标准合伙合同范例
- 艺术家工作室转让合同样本
- 武馆中心会员合同范例
- 样品进口 合同范例
- 农业技能培训合同模板
- 校园活动导演聘用协议
- 中药库房药品配送社会责任
- 按次上门维修合同范例
- 通信设施安装工人合同
- 影视制作与特效服务协议
- 火力发电厂施工图设计内容深度规定
- 污水处理厂EPC项目建设方案
- 酒店经理管理酒店运营
- AI在农业领域的应用
- 汽车eps行业国内外市场发展前景分析与投资风险预测报告
- 短视频运营实战:抖音短视频运营
- DB35T 2061-2022 村庄规划编制规程
- 园长进班指导制度方案及流程
- HG-T 20583-2020 钢制化工容器结构设计规范
- 监理工作中变更管理的规范与应对措施
- 郑州人才公寓策划方案
评论
0/150
提交评论