版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于单片机的恒温恒湿孵化器系统设计摘要温度和湿度是工农业生产和自动控制过程中最常见的参数,精确的温湿度检测和控制对提高产品质量、增加生产效率、节约生产资源等至关重要。近年来随着单片机的快速发展,以单片机为核心控制器的温湿度检测和控制系统正向着数字化、微型化、集成化、网络化的方向发展。基于简约便捷化的理念,本课题设计了一种小型家用的恒温恒湿孵化系统。该孵化系统的设计利用仿生学原理,模拟家禽种蛋自然孵化发育所需的温湿度及氧气浓度条件,提供胚胎发育所适宜的孵化环境。本文首先阐述了国内外温湿度检测和控制方面发展现状,并了解了有关家禽孵化方面的相关知识,以此制定了相应的技术指标。合理的温湿度控制,可以提高家禽幼雏的成活率,还可以提高幼雏的健康率。本设计使用Atmel公司生产的AT89C51型单片机,传感器选用DHT11温湿度传感器和氧气浓度传感器,它将孵化环境温湿度和氧浓度信息采集并送往单片机,经单片机处理通过液晶显示。同时单片机将所检测温湿度和氧气浓度值与所设定的上下限对比,从而判断继电器控制的输出设备是否启动以实现孵化器内温湿度的恒定。该孵化器的具有外形小巧、操作简便、成本较低、实用性强等特点,适合普通家用和小型孵化养殖场。关键词:温湿度控制;单片机;孵化器;液晶显示器目录TOC\o"1-3"\h\u159551.绪论 .绪论1.1恒温恒湿孵化器系统的研究意义随着科技的飞速发展和生活质量的提高,人们对食品质量的要求和食品安全的意识也有了相应的提高,人们更加追求肉类和蛋类食品的健康性和美味性。因此提高家禽孵化的成活率和健康率就尤为重要。传统的家禽孵化设备需要专人看守,甚至使用水银温度计进行温度测量,人为的进行温度控制,这样控制的缺点是:控制不够精确,且人为控制无法实现实时监控的目的。随着电力电子技术的不断发展,现代的温湿度测量系统逐渐向微型化、集成化、数字化、智能化、微功耗、多参数测量的测量系统转变。计算机能够对孵化器中的多个数据采集点进行实时检测和控制。[1]同时兼顾到经济性的因素,当前市面上功能先进的孵化器要十几万到几十万不等,而对于小型的孵化加工厂和普通家庭用户,价格过于昂贵,因此在该设计中,以单片机为核心控制器设计出一种可以实现智能温湿度和氧气浓度控制小型家禽孵化器,兼顾了效益性和经济性的要求,具有广泛的应用前景和实际意义。1.2孵化器温湿度控制系统的发展现状国外的温度测控技术的研究于20世纪70年代起步。最早是由人工对现场温度进行测量并进行人为控温,随着微电子技术和自动控制理论的发展,在80年代末期出现了分布式控制系统,自此,国外恒温控制技术飞速发展,美国、德国、日本在温控技术上居于领先位置。我国在温度的测量和控制领域的研究较晚,基于对国外温控技术研究的基础上,研发出了微机温控技术,但是该技术仅适用于温度单项环境因子的控制,对于时变、滞后、控制因子复杂的温度测控难于实现。在高控制要求的场合下,国内的技术还十分不成熟。国外对于湿度的控制技术的研究很早,该技术已经成熟地应用于气象、农业、养殖业、制造业等。从手动控制到自动控制再朝着微型化、智能化的方向发展。随着嵌入式技术的迅速发展,单片机对湿度控制技术以其低成本、高性能的优势得以广泛应用。目前,湿度的控制一般有如下几种:恒定湿度自动控制法:经过微处理器和必要的硬件电路的设计,并经过比较电路或者软件的判断语句来比较设定湿度值与当前环境湿度值的关系,进而对系统的采取必要的措施,来控制开关的通断。PID控制智能控制以温湿度控制系统的发展为衍生产物在各个领域广泛涌现,其中对于温湿度要求较高的家禽幼雏孵化器就是其中一种。国外在上个世纪八十年代已经有了中大型的孵化设备,随后向自动化、配套化、标准化的方向发展,近年来的国外的孵化设备更是朝着完全自动化和生产安全规范化的产业标准推进。国内随着技术的不断成熟和养殖业的迅速发展,我国的孵化设备也有了跨越式的发展,从70年代的传统孵化法的下出雏和旁出雏孵化器,到80年代现代式中小型孵化设备的出现,再到80年代末大中型孵化设备的广泛使用,近年来更是出现了巷道型孵化器,目前国内的小型智能孵化设备多采用单片机控制。1.3主要研究内容该孵化系统的设计目标是实现实时采集孵化器内的温湿度和氧气浓度数据并在显示器同步显示,同时,用户也可根据实际要求设定孵化器内温湿度上下限、氧气浓度下限阈值,此时系统将采集的孵化器内的温湿度和氧浓度值与用户设定的值进行比较,通过差分算法得出实际温度、湿度、氧浓度与理想值的偏差值,并以此进行改变控温、控湿和增氧装置输出功率的大小来减小孵化器内实际温湿度、氧浓度值与理想值的偏差值,来达到孵化器内恒温恒湿的理想条件。1.4主要技术指标目前,我国有关家禽孵化的给温方式主要有恒温和变温孵化两种,基于该课题定位和可操作性,我们选择恒温孵化。该设计的主要技术指标有:温度可显示范围:5~50℃,温度测量精度:±1℃;湿度可显示范围:0~99%RH,控湿精度:±5%RH;氧浓度范围≥21%;电源电压:220KV±10%50Hz;消耗功率:<20W;输出路数:6路(低温、超温、控温、控湿、低氧、报警);输出电流:控温和低温均为10A,其他为1A;工作温度:10~35℃;环境温度:10~70℃。1.5家禽孵化相关知识(1)种蛋的选择和保存种蛋的品质直接会直接影响孵化的成功率和家禽幼雏的成活率,种蛋的选择需要注意以下情况:春季时种蛋的保存不宜超过10天,夏季则不超过5天,保存种蛋的最适温度为10~15℃,新鲜种蛋表面附着一层粉状物,色泽鲜艳。不同家禽的种蛋质量一般不同,鸡蛋的重量一般在55~60g,鸭蛋的重量在80~90g,蛋壳因保持无破壳、裂皮等情况。(2)孵化禽蛋的几种基本条件温度:为家禽孵化提供适宜的温度是孵化过程中首要考虑的条件,家禽的正常体温是40.5~42℃,自然孵化时传体温导种蛋上面为38.5℃左右,因此种蛋孵化较为适宜温度是38℃~39℃。湿度:家禽种蛋孵化过程中湿度也起着十分重要的作用,但胚胎发育对湿度的要求相对较低,适宜的湿度条件能够使孵化初的禽蛋胚胎受热均匀,使发育更加良好。通风:胚胎的发育需要不断地植入氧气,有氧呼吸是动植物生存所必需的条件。翻蛋:即将种蛋定时翻转,使种蛋均匀受湿受热,且不会让胚胎与蛋壳内壁粘连,更有利于家禽发育。照蛋:是为了检测种蛋受精情况,剔除无用的死精蛋、无精蛋和散黄蛋。正常的受精蛋,其胚胎卵黄囊血管网可以看到血管均匀分布,颜色发红,蛋黄下沉。出雏后管理:刚出雏的家禽幼雏可在24小时内不进行投食投饮,以使其消化系统产生一定的抵抗力,之后可以喂一些玉米粉等细小的食物并补充水分。
2.总体方案设计2.1设计要求DHT11传感器对孵化环境温湿度进行实时监测;氧传感器对孵化环境内氧浓度实时监测;按键设置温湿度上下限和氧浓度下限阈值,超出设定范围蜂鸣器报警;液晶显示器对温湿度和氧浓度数值进行实时显示;超出设定环境温湿度和氧浓度范围,对应继电器控制的输出设备工作,指示灯亮,以维持孵化器内恒温恒湿和相对充足氧气含量的孵化环境。2.2方案选择2.2.1系统控制器的选择方案一:系统核心控制器采用DSP芯片。DSP(DigitalSignalProcessing),即数字信号处理器,它是一种强大的微处理器,具有完整的指令系统。DSP芯片的内部使用数据和程序分开的改进哈佛结构,它具有其独特的硬件乘法器,可快速实现各种数字信号处理算法。其优点是温度等外界环境因素对其性能影响较小,有较高的集成度;它将模拟信号转换为数字信号,用于专用处理器的高速实时处理和频率非常低的信号处理,同时具有灵活、可编程、低功耗等优点。但也存在一些缺点,如受采样频率的限制,处理频率的范围有限,数字系统是由有源器件组成,没有无源设备的可靠性高,且DSP硬件电路设计复杂,价格,较为昂贵。方案二:采用单片机作为系统核心控制器。单片机以其优异的性价比、集成度高、体积小、可靠性高、控制功能强大和低功耗等优势而在各个领域得到了十分广泛的应用。综上分析,可见DSP芯片虽然强大,但对于本系统的设计单片机已经可以满足要求,且其价格低,软件编程易于实现,因此拟采用方案二,使用AT89C51单片机作为系统控制器。2.2.2传感器的选择温湿度传感器的选择方案一:选用DS18B20温度传感器和HS1101湿度传感器作为系统的温湿度传感器,智能温度传感器DS18B20的数据传输应用的是“1-wire”(一线总线)技术,该传感器与中央控制器进行数据传输时只需要一条数据线。其测量温度范围在-55℃—125℃,误差为±0.5%。最高精度可达0.0625℃。HS1101湿度传感器采用固态聚合物结构,无需校准完全相互性。在电路中等效为一个电容器C。可测相对湿度范围在0%—100%RH,其电容的容量范围在160pF到200pF,其误差在±2%RH以内,响应时间低于5S。方案二:温湿度传感器选用DHT11型传感器,DHT11是一种具有已校准数字信号输出的温度和湿度度复合型传感器,其包括了一个NTC测温元件和一个电阻式感湿元件。有超快相应、体积较小、强抗干扰性、功耗极低等优点。可测20—95%RH湿度的湿度区间,一般条件下误差为±5%RH,温度在0—50℃时,误差范围为±2℃。综上可见,尽管选择方案一可实现较高程度的温湿度测量精度和范围,但是对于本系统孵化器内温湿度的检测,选取方案二的DHT11温湿度传感器已经能够满足对孵化环境内温湿度的测量,且DHT11传感器集温湿度测量于一体,经济性优越,因此选择DHT11传感器。氧浓度传感器的选择方案一:氧气浓度传感器选用O2-A2型氧气传感器,该传感器可测氧气浓度范围为(%):0~30vol,线性度(ppm):<0.6,具有体积小,质量轻,寿命较长等优点,广泛使用在医疗、工业制造等领域。方案二:氧气浓度传感器使用电化学氧气传感器ME2-O2,该传感器的测氧浓度量程为(%):0~25vol,寿命为2年。该传感器具有低功耗、高灵敏度、线性范围宽、抗干扰性强等优点。经过对比,两款氧浓度传感器具有相近的测量精度,但基于性能对比和经济性考虑,选择方案二的电化学氧气传感器。2.3恒温恒湿孵化器的工作过程设定氧气浓度阈值。根据家禽孵化过程中对氧浓度的需求,可设定氧浓度的下限值为21%vol。按下“设置”键进入调节模式,1602LCD液晶第一页为氧浓度下限值设定界面,按下“加”和“减”可分别增加或减少设定值。设定温度范围。根据家禽种蛋的孵化周期设定合适的预期温度范围。表2-1以鸡雏孵化为例给出了不同周期适宜的孵化温度:表2-1不同时期种蛋的适宜孵化温度孵化天数(天)适宜的孵化温度(℃)1~1837.5~37.719~2136.1~37.2在步骤(1)的基础上按下“设置”键进人第二页温湿度上下限设置界面,显示器第一行“SetTemp”显示温度范围,温度下限低位数值显示,如果温度想增加1摄氏度则按下“加”按键,想减少1摄氏度则按下“减”按键,可实现温度下限的设定;继续按下“设置”键可切换到温度上限的设定,操作流程如上。设置湿度范围。根据种蛋孵化的所需湿度条件设定合适的预期湿度范围,按下“设置”开关,进入调节状态,显示屏上第二行“Humi”显示湿度范围,连续按下“设置”键可切换到湿度上下限调节功能上,调节方法同温度调节。再次按下设置键可退出调节模式。温湿度和氧浓度的采集与计算。51单片机通过数字温湿度传感器DHT11和氧浓度传感器,获取孵化器内实时环境温度、湿度和氧浓度信息,并将所获取的信息在LCD1602显示。信息数据进行计算转换为摄氏温度的形式进行储存。氧浓度比较和氧浓度调节。单片机将从氧浓度传感所接收的孵化器内氧浓度值与所设定的下限值进行比较,若低于下限值,则蜂鸣器报警,增氧设备启动,对应的指示灯亮。当氧浓度增加至高于设定阈值时,增氧设备停止工作。温度比较和温度调节。单片机将接收的DHT11传感器所采集的实时温度数值与所设定的温度上下限进行比较,如果当前环境温度高于所设定的温度区间上限,即超温,则降温模块二极管亮,蜂鸣器发出警报,降温系统开始工作;温度降至设定温度区间,降温系统停止工作。若温度低于设定温度区间下限,即低温,升温系统二极管亮,蜂鸣器报警,升温系统开始工作,直至温度升至设定温度区间。湿度比较和湿度调节。51单片机将采集的实时湿度信息与所设定的湿度区间进行比较:若孵化器内实时湿度低于所设的湿度区间下限,则增湿设备工作,环境湿度高于湿度区间上限,除湿设备开始工作,直至满足所需湿度条件。需要说明的是,温湿度和氧浓度任一条件不满足时,报警系统均发出报警。(9)设置温湿度和氧浓度显示。温湿度和氧浓度区间设置为一定值并保存后,退出调节模式,LCD显示器显示实时氧含量和温湿度信息:“O2”表示当前氧浓度信息,“T”表示当前孵化器内温度,“H”表示当前湿度信息。2.4系统框图图2-1系统总体结构图3.系统的硬件电路设计本课题所设计的孵化器恒温恒湿度控制系统硬件结构组成主要有单片机AT89C51最小系统、液晶显示电路、温度、湿度、氧气浓度采集电路、独立键盘输入电路、继电器控制输出的降温、升温、增湿、除湿和增氧电路、电源电路以及其它辅助电路。单片机AT89C51是整个系统的核心控制器,协调系统各个部分的工作。本章将对各模块电路设计进行详细介绍。3.1最小系统模块3.1.1AT89C51单片机说明(1)概述图3-1AT89C51单片机AT89C51单片机是由美国Atmel公司生产的51系列单片机[2],如图3-1所示。AT89C51是一种拥有可编程可擦除性能的性能且带有4K字节闪烁的只读存储器(FPEROM),同时是一种供电电压较低、高性能的CMOS8位微处理器。该单片机采用Atmel公司的高密度,非易丢失性的存取技术生产,可兼容工业标准的MCS-51指令系统和输出管脚。片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大[3]。51系列单片机芯片上包含了CPU、定时器\计数器、可编程I/O口等微型计算机的主要组成部件。AT89C51单片机以其高性价比的优势广泛应用在工业控制、智能仪器仪表、家用电器、通信、军备制造等多种场合。其主要特性有:与MCS-51芯片兼容、数据保留时间为10年、全静态工作0Hz~24Hz、可寻址64KB的片外程序存储器和片外数据存储器控制电路等。管脚说明MCS-51系列单片机多采0脚双列直插封装(DIP),其外部引脚排列如图3-2所示:图3-2AT89C51单片机引脚图其中,该单片机各引脚功能总结如表3-1所示:表3.180C51单片机引脚功能表引脚标号引脚名称功能描述电源引脚40VCC接+5V电源输入20GND电源地端晶振引脚19XTAL1片内振荡电路输入端18XTAL2片内振荡电路输出端控制引脚9RESET高电平有效,复位信号输入端29PSEN低电平有效,读外部程序存储器选通信号30ALE对P0口输出的低8位地址进行锁存,实现地址数据分离;对片内EPROM编程时,作编程脉冲输入31EAEA=1,访问内部存储器;EA=0,访问外部存储器多功能I/O口引脚32~39P0.0~P0.7漏级开路的双向I/O口,共8位。每脚可吸收8TTL门电流。P0口具有双重工作方式,既可作普通I/O口,又可作地址、数据总线使用1~8P1.0~P1.7准双向口(三态),内部提供上拉电阻21~28P2.0~P2.7准双向I/O口,内部提供上拉电阻。当单片机扩展外部存储器时作高8位地址总线,与P0口输出的低8位地址构成16位地址,用于寻址64KB的地址空间10~17P3.~P3.7准双向I/O口,内部提供上拉电阻。是具有双重功能的I/O口上表中P3口有双重功能,作第一功能使用时,其功能相当于普通I/O口,但当作第二功能使用时,每条引脚有其特殊功用,如表3.2所示:表3.2P3口特殊用途表3.1.2单片机最小系统电路AT89C51单片机最小系统电路如图3-3所示,该最小系统由三个系统组成:电源电路、晶振电路和复位电路。为系统设计电源供电模块对一个完整的电路设计是首要问题。该最小系统中的供电电源可由计算机的USB、手机充电器、移动电源供给,也可由外部稳定的5V供电模块供给。晶振电路包含了2个30pF的电容C2和C3和12M的晶振X1。电容的作用在这里是起振作用,取值范围是15-50pF。晶振的数值也可设置为24M,晶振的取值越高,单片机的执行速度越快。在进行电路设计的时,需将晶振部分尽可能靠近单片机。单片机的复位和置位,目的是将电路初始化为一个特定状态。在单片机系统运行过程中,受到外界因素的干扰而出现程序运行出错,或出现死机、停机等情况时,进行复位操作可使单片机内烧录的代码重新执行。复位一般分为自动复位和按键复位,该设计采用手动按键复位的方式,从而简化编程。AT89C51单片机的P0脚为开漏输出,无上拉电阻,因此本设计中P0脚作为输出端口,需增加一个上拉电阻以增大输出能力,该上拉电阻使用一10K的排阻。图3-3单片机最小系统3.2DHT11传感器电路3.2.1DHT11传感器简介(1)DHT11传感器概述图3-4DHT11传感器DHT11是一款温湿度数字传感器,包括一个电阻式测湿元件和一个NTC测温元件,内部与一个8位单片机相连接[5]。通过与微处理器的电路连接可实现温湿度数据的采集。DHT11与单片机之间采用单总线(仅需一个I/O口)的方式进行通信,是系统集成变得简单快捷,信号传输距离可达20m以上。它具有超小的体积和极低的功耗,使其成为各种应用场合甚至复杂条件下的最佳选择。3.2.2DHT11传感器接口说明(1)接口说明建议当连接线长度小于20m时使用阻值为5K上拉电阻,大于20m时则根据不同情况选择其相匹配的上拉电阻。图3-5DHT11典型连接图(2)引脚说明DHT11引脚说明如表3-2所示表3.3DHT11引脚说明引脚编号引脚名称引脚说明1VDD供电3~5.5VDC2DATA串行数据,单行线3NC空脚,请悬空4GND接地,电源负极单片机与DHT11之间的通信采用单总线数据格式,即使用单个数据引脚可完成输入输出双向数据传输,一次通信时间为4ms左右,数据分整数部分和小数部分。数据格式:8位湿度整数数据+8位湿度小数数据+8位温度整数数据+8位温度小数数据+8位校验和。[6]DHT11通信的流程图如下:图3-6DHT11传感器通信过程通过分析DHT11传感器电路的通信过程可知,DHT11作为被动的从机需要从单片机主机发来的触发信号,DHT11再发出相应的信号,并且送出数据。其详细步骤如下:总线空闲时处于高电平状态,单片机拉低总线等待DHT11响应,保证DHT11能检测到起始信号。此过程不得低于18ms,然后把总线拉高20~40ms,完成信号的发送。DHT11拉低总线80μs,被拉低的总线由单片机检测;然后DHT11拉高总线80μs,被拉高的总线由单片机检测。如果以上信号检测均为正常,则单片机等待数据到来。单片机接收来自DHT11传感器的5B数据,对接收的数据进行检验。注意:最后一位数据传送结束时,DHT11拉低总线50μs后总线由上拉电阻拉高进入空闲状态。与单片机等数字器件所表示的0和1的方式不同,DHT11传感器发送的每一位数据都是50μs低电平开始,之后的高电平长短决定数据位是0还是1.数字0和1的表示方法如下图所示: 图3-7数字0的信号表示 图3-8数字1的信号表示3.2.3DHT11模块电路图DHT11的模块电路图如下图所示:图3-9DHT11模块电路图3.3氧浓度检测电路3.3.1电化学氧气传感器ME2-O2简介图3-10ME2-O2实物图ME2-O2型氧气传感器与电化学原电池的工作原理相同,待测气体(02)在原电池阴极发生电化学还原反应,在阳极发生氧化反应,氧化还原反应释放电荷从而在阴阳两极产生电流。产生电流的大小取决于氧化反应的速度(正比例关系),即遵循法拉第定律,这样就可通过测量产生电流的大小来间接测量氧气浓度。其实物如图3-10所示。3.3.2ME2-O2传感器特点高灵敏度,10~30mA;优异的稳定性和选择性;线性范围宽抗干扰性能好3.4AD转换电路模块3.4.1ADC0832简介ADC0832由美国国家半导体公司生产,是使用非常普遍的8位双通道的A/D转换芯片,对一般的模数转换可满足要求。它具有转换速度较快、稳定性较强等特点,同时独立的使能输入使得多器件挂接易于实现。转换原理A/D转换即将模拟量转换为数字量的过程,模数转换的类型较多,在集成电路中大多采用逐次逼近型,其结构框图如下所示:图3-11逐次逼近型结构图由图可知逐次比较型A/D转换器是由一个比较器和D/A转换器组成,使用逐次比较逻辑。基本原理是从高位向低位逐次试探比较,取一个数字量Vref加在内置的D/A转换器上,经D/A转换输出一个模拟量V0,与待转换的模拟量V1比较,若相等,则得到与模拟量V1相对应的数字量,若不等,则经过多次比较直到找出相应的数字量,即完成了AD转换。引脚排列及功能图3-12ADC0832引脚排列图ADC0832引脚图如图3-12所示,引脚CS_的功能是低电平片选使能,CH0和CH1分别为模拟量输入通道0和1,DI/DO引脚分别为数据信号的输入/输出通道,CLK为时钟输入,VCC/REF为电源输入及参考电压输入端。氧浓度检测AD转换电路图3-13氧浓度检测AD转换电路氧浓度检测的AD转换电路如图3-13所示,氧浓度传感器采集模拟信号,在Proteus中使用滑动变阻器的与ADC0832的模拟量输入通道0连接所表示,滑动变阻器可改变输入模拟量的大小。芯片未开始工作时,CS端为高电平,芯片禁用;当进行模数转换时,应将使能端置为低电平并保持至A/D转换结束。DO与DI口与单片机的接口是双向的,因此可将这两个引脚共联在一条线路与单片机P1.7引脚相接。3.4液晶显示电路3.4.11602液晶电路简介液晶显示器是一种电子显示器件,具有体积小、功耗低、显示内容丰富等诸多优点。本系统使用的是LCD1602型显示模块,该液晶显示器可显示字母、数字、符号等。LCD1602可显示两行字符,每行最多可显示可显示16个字符。它是由若干个5×7或者5×10的点阵字符位组成。广泛使用于小型家电、通信系统、自动化仪表等领域。其实物图如下图所示:图3-14LCD1602实物图1602LCD主要技术参数:◆显示容量:16×2个字符◆工作电流:2.0mA◆工作电压:5V左右◆字符显示尺寸:2.95×4.35(W×H)mm3.4.21602LCD的引脚定义引脚说明:VSS接电源地VDD接+5VVL时液晶将显示偏压信号,为液晶显示器对比度调整端,使用时可接一个阻值为10K的电位器来进行对比度调节。RS是数据/命令的选择引脚,RS=1时,选数据寄存器;RS=0时,选指令寄存器。RW是读写信号线。RW=1时,对1602进行读操作,RW=0时,对1602进行写操作。如果不进行读写操作,将其直接与VSS端连接即可。E为执行命令的使能引脚,接单片机的一个I/OD0~D7,8位双向输入/输出引脚,单片机P0~P3的任意8个I/O口可与其相接。若接P0口时,则应在该口接阻值为4.7~10K的上拉电阻,如果是4线并行驱动,只需接4个I/O口A背光负极,接一个10-47Ω的限流电阻到VDDK背光负极,接VSS3.4.3LCD1602的基本操作1602的基本操作分为4种:读状态:输入RS=0,RW=1,E=高脉冲;输出D0-D7为状态字;读数据:输入RS=1,RW=1,E=高脉冲;输出D0-D7为数据;写命令:输入RS=0,RW=0,E=高脉冲;输出:无;写数据:输入RS=1,RW=0,E=到脉冲;输出:无;读操作时序图如下所示:图3-15读操作时序图写操作时序图如下所示:图3-16写操作时序图3.4.4LCD1602指令LCD1602有11个控制指令,如下表:表3.4LCD1602的模块控制指令指令功能清屏清DDRAM和AC值归位AC=0,光标、画面回HOME位输入方式设置设置光标、画面移动方式显示开关控制设置显示光标及闪烁开关光标画面位移光标、画面移动,不影响DDRAM功能设置工作方式设置(初始化指令)CGRAM地址设置设置CGRAM地址,A5~A0=0~3FHDDRAM地址设置DDRAM地址设置读BF及AC值读忙标志BF值和地址计数器AC值写数据数据写入DDRAM或CGRAM内读数据从DDRAM或CGRAM数据读3其中:DDRAM:显示数据RAM,待显示的字符或代码由此寄存;CGROM:字符发生存储器;CGRAM:用户自定义的字符图形RAM。这里介绍几种LCD1602编程时所用到的常见指令:清屏指令表3.5清屏指令功能表RSR/WDB7DB6DB5DB4DB3DB2DB1DB00000000001功能:对液晶显示器进行清屏操作,即,将“空白”的ASCII码2OH填入DDRAM的内容;光标归位;设置AC=0。显示开关控制指令表3.6显示开关控制指令功能表RSR/WDB7DB6DB5DB4DB3DB2DB1DB00000001DCB功能:控制显示器的开或关状态,光标的显示或关闭,以及光标是否需要闪烁。其中:D表示显示开关,D=1为开,D=0为关;C表示光标开关,C=1为开,C=0为关;B表示闪烁开关,B=1为开,B=0位关。[8]光标、画面位移指令表3.7光标、画面位移指令功能表RSR/WDB7DB6DB5DB4DB3DB2DB1DB0000001S/CR/L**功能:将光标或整个显示屏幕移动位置,不影响DDRAM。功能设置指令表3.8功能设置指令功能表RSR/WDB7DB6DB5DB4DB3DB2DB1DB000001DLNF**功能:设置工作方式,其中:DL=1,8位数据接口;DL=0,4位数据接口N=1,两行显示;N=0,一行显示F=1,5×10点阵字符;F=0,5×7点阵字符3.3.5液晶显示模块电路液晶显示模块电路图如图3-13所示,1602显示器的管脚与单片机管脚连接。该模块电路采用了8位数据接口,也可用4位数据接口来用。液晶显示器的1脚和2脚分别与51单片机的GND和VCC脚,是1602的电源输入脚。3脚与单片机地端连接,中间串接一个10K的电位器,通过该电位器可调节液晶显示器的对比度。4脚与单片机的P12脚相接,是1602的寄存器控制脚。5脚与单片机的P13脚相接,是1602的读写控制脚。6脚是液晶的使能脚,与单片机P14脚相接。7~14脚是1602的8位地址/数据总线,与单片机P0口相接。15脚和16脚是1602液晶的背光电源脚,与系统VCC和GND之接相连。图3-171602液晶与单片机的连接图3.4蜂鸣器模块蜂鸣器是一种可以将警示电信号转化为人耳可感知的声音信号的发音器件,直流方式供电。在家用电器、报警系统、汽车设备等有广泛应用。蜂鸣器按照结构可分为压电式蜂鸣器和电磁式蜂鸣器两种类型,在电路中一般用英文字母H或HA表示。其中,压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器、及共鸣箱、外壳等组成。[9]压电蜂鸣片是将高压极化后的压电陶瓷片粘贴于振动金属片上,当蜂鸣片加入交流电压后,压电效应产生机械形变使金属片振动而发出声音。电磁式蜂鸣器主要由电磁线圈、振动片、磁铁等构成。当线圈电流通过时,振动膜片由于变化磁场能量变化而使其位置发生变化,从而振动发声。本系统中蜂鸣器使用电磁式蜂鸣器。蜂鸣器按照控制方式的不同也可分为有源蜂鸣器和无源蜂鸣器。其中有源蜂鸣器内部自带振荡,直接接上电源即可发声,而无源蜂鸣器内部不具由振荡电路,所以需要外部提供PWM来控制发声,又因为本身呈感性,在电平进行高低切换时,电流无法突变,因此需要一个续流二极管来泄放电流。本设计采用的是有源蜂鸣器。一般的蜂鸣器驱动电流是在100mA左右,而常用的MCU的IO口的驱动电流在15mA~20mA之间,无法直接进行驱动,因此需要一个三极管来控制蜂鸣器的驱动。设计的电路图如图3-14所示,三极管选用的是PNP型三极管S8550,PNP型三极管的上电I/O口默认为高电平,因此上电后蜂鸣器不进行蜂鸣。当BUZ1为高电平时,三极管Q1的1脚电压约等于BUZ1电压>0.7V。三极管导通,蜂鸣器开始工作;当BUZ1为低电平时,三极管的1脚电压为0,此时三极管关断,蜂鸣器停止发声。图3-18蜂鸣器电路图3.5按键输入模块电路键盘是人机交互的主要设备。按键输入作为一个最基本的输入方式,是电子系统的重要组成部分,可以用于输入系统参数,调整系统的工作状态等。键盘按其接口分为编码键盘和非编码键盘。编码键盘内置可实现接口功能的硬件电路,按键的识别可以通过其本身的硬件实现。不仅可以自动检测按下的键,也可以完成防串键、抖动等功能。编码键盘具有结构复杂,功能强大等特点。如我们常用的计算机键盘就是编码键盘。非编码键盘是利用按键直接与单片机相连的,一般只是简单的提供按键开关的行列矩阵,而其他功能则都是通过软件来完成,如按键识别、键码的确定和去抖动等。该类键盘的使用通常是所需按键数量较少,所需处理的任务简单的系统。非编码键盘硬件简单,成本低,电路设计也得以简化。但是按键的键号信息必须通过软件来实现,软件编程量大。设计所使用的是非编码键盘,非编码键盘又可分为独立键盘和矩阵键盘两种[10]。矩阵键盘由行线和列线组成,其中一组为行线,另一组为列线,按键位置处于行线和列线的交叉点上。矩阵键盘适用于按键数量较多的场合,如4×4矩阵键盘,共有16个键,仅需8根IO线,如果一个按键占用一根IO线,则16个按键需占用16个IO线,用矩阵的方式连线可减少I/O口的使用。矩阵键盘的缺点是电路复杂,编程比独立键盘复杂。独立键盘的每个按键各接一条I/O线,各独立键盘之间互不影响,则通过检测输入线的电平状态来判断按键的按下与否。设计中采用的按键数量为3个,使用独立键盘,按键设置分别为“设置”、“减”、“加”。按键的连接图如3-15所示:图3-19按键电路因为51单片机的有些I/O口是准双向口而不是准双向口,如果要让I/O具有输入功能,则需将I/O口置1,然后按键按下时I/O口的电平会被拉低,即置0,当检测到I/O口为低电平时可判断出该按键被按下。按键在闭合和断开时触点会存在抖动的过程(弹片会抖动),时间为5~10ms。因为单片机检测I/O口的速度非常快,超过了弹片抖动的频率,所以会影响单片机对按键是否真正按下或者释放的准确识别。按键抖动示意图如图3-16所示:图3-20按键抖动示意图3.6温湿度控制电路继电器是一种当输入量(电、磁、声、光、热)达到一定值时,输入量将发生跳跃式变化的自动控制器件。[11]它的应用十分广泛,主要用在电力保护、生产过程自动化及各种自动、远动、测量、遥控、通讯等自动化装置中,是现代自动化系统中最基本,最常用的电子器件之一。继电器的两个特性:一是当输入量(或激励量)增多(或减少)到某确定值时,继电器才可以做出通或断的响应,而且当输入量持续增加(或减少)或保持不变时,继电器维持通或断的状态不变。只有当输入量减少(或增加)到某一规定值时,继电器通或断的状态才会发生“跳跃式”地改变。另一种特性是输入参量与输出参量是相互隔开的,即两者之间没有直接的电气联系。这也称为继电器的继电特性。可以用图3-17表示:图3-21继电器的继电特性常用的继电器有很多分类,按照工作原理和结构,大致可将继电器分为电磁继电器、温度继电器、时间继电器、极化继电器、声继电器、热继电器、霍尔效应继电器等。本设计中使用的电磁继电器。电磁继电器的电磁机构是由线圈和闭合磁路(包括铁芯、衔铁、触点簧片、气隙)等组成的能够实现电磁转换的组件。下面对本设计中使用的继电器原理进行说明,如图3-18所示:图3-22继电器原理图图中,1、2不供电时,3、4、5脚之间是断开的(没有直接电气联系),3是公共端;当1、2脚供5V电压时,继电器内线圈流过电流,产生磁性,衔铁4将开关5吸引。其中1、2脚时控制部分,3、4、5脚是开关部分。本设计采用继电器控制输出部分由降温、升温、除湿、增湿四个部分组成,其原理如图3-19所示:图3-23继电器控制输出设备原理图图中,LED4连接51单片机,若单片机输出0V,三极管Q2导通,VCC导通,电流经线圈形成回路,衔铁将开关吸引过去,VCC对B1进行供电,B1开始工作。二极管D5起保护作用:当VCC断开时,由于线圈是感性元件,会形成反电动势,该反电动势如果不消除的话会对其他元件造成干扰甚至损害,因此加上D5二极管形成一个逆向回路,将该部分电动势消耗掉,避免对其他元件造成损害。LED(D4)是指示灯,当继电器闭合,即B1开始工作时,指示灯亮,反之,通5V电压时,继电器断开,B1不工作,指示灯不亮,是一种同步关系。B1是相应的控制输出的元件,其中,考虑到该设计的成本和便于实现性,降温设备使用风扇,加热设备使用了一个加热片,Proteus仿真中使用加热炉OVEN,除湿设备也采用风扇,增湿设备采用一个小型雾化器,考虑到仿真中没有相应的雾化器和增氧设备仿真元件,采用风扇代替。各控制输出部分电路图如下所示:图3-20继电器电路
4.软件设计4.1程序语言及开发环境一个成熟的家禽孵化系统要想孵化出品质良好的家禽幼雏,必须要有安全可靠的硬件设备,也要有相对强大的软件系统进行支撑其功能实现。计算机语言的发展阶段可分为三个:起初的计算机使用的是0和1组合成的一串指令,属于机器语言阶段;后来人们设计了以英文字母和符号来替代机器语言的二进制代码,属于汇编语言阶段;但是由于汇编语言助记符太多且繁琐难于记住,其开发又过度依赖于硬件系统,给开发者带来了诸多不便,因此人们又设计出了格式和语法类似于英文的更加高级的语言,它的开发不依赖于硬件,可直接操作,属于高级语言阶段。本次设计所使的程序语言为C语言。C语言是一种计算机编程语言,它集合了高级语言和汇编语言的优点。它是由Ken.Thompson和同事于1972年在美国的贝尔实验室提出,目的是写UNIX系统。本次设计的软件开发环境为KeilC51,它是目前功能最完善的单片机C语言集成开发环境。与以往的汇编语言相较而言,C51语言在功能、结构、可读性、可维护性上具有其独特的优势,缩短了开发周期,大大简化了工作,C51语言是高效、简洁的51单片机使用的高级编程语言已经被广泛认可。目前,KeilC51已被完全集成到一个功能强大的全新集成开发环境(IntegratedDevelopmentEnvironment.IDE)KeiluVision5中,德国KeilSofeware公司推出的KeiluVision5是一款用于51单片机的Windows的集成开发环境,提供了对基于8051内核的各种型号单片机的支持,为51单片机软件开发提供了全新的C语言开发环境。4.2程序流程图设计4.2.1主程序流程图系统的核心控制器件使用的是AT89C51单片机,Dht11温湿度传感器和氧气传感器将孵化环境温湿度和氧浓度信息进行实时采集存储并送到液晶显示器进行显示。根据设定值和采集的数据进行对比,根据对比的结果启动相应的指令进行控制输出。系统的主程序流程图如图4-1所示:图4-1主程序流程图4.2.2LCD1602液晶显示程序设计LCD中一个字符的是8×8或6×8的点阵组合而成的,这就使得其显示较为困难。这需要找到液晶上某几个区域所对应的RAM区8字节,也需要每个字节的不同位为1,其他的为0,为“1”的点亮,为“0”的不亮。这样便可以组成一个字符。但是对于内置字符发生器的控制器来说,可让控制器工作在文本方式,可据LCD上所显示的行数和列数精准找出RAM显示的位置,设置光标,并送上该字符所对应的代码即可。1602显示器的程序流程图如图4-2所示:图4-21602程序流程图这里需要说明的是,显示一个字符时,只会在开始的时候对字符位进行定位行列坐标,之后每次显示结束后会自动跳转下一位置,不需要再定位。4.2.3温湿度读取子程序在温湿度传感器DHT11进行数据测量之前,单片机会先给传感器发送一个起始信号,DHT11在接收到该信号后,由低功耗模式被唤醒,开始读取环境温湿度信息,并将温度、湿度、检验字节依次传送给单片机。单片机对所接收信息进行计算处理,对于有错误的检测结果进行忽略,对未出错的数据进行保存并送往液晶进行显示。温湿度传感器流程图如图4-3所示:图4-3温湿度传感器程序流程图
5.系统功能调试及结果5.1软件调试该系统的软件部分的程序由KeilC51进行编写和调试,但其仿真的实现还需要在Proteus中进行孵化器原理图的元器件模拟搭建,并对相应的元器件的参数按照孵化要求进行设置,然后进行联合仿真进行其软件功能的模拟实现。其原理是将KeilC51中所编写的C语言源程序进行编译后转换成Proteus可识别的机器语言,然后进行仿真。5.1.1Proteus软件本设计仿真所使用的Proteus软件是英国LabcenterElectronics公司开发推出的EDA工具软件,具有强大的单片机仿真功能。[12]包括了ISIS、ARES、EXE等,ISIS的主要功能是原理图的设计和电路原理图的交互仿真,ARES则主要用于印刷电路板的设计。[13]图5-1仿真电路图Proteus具有如下的特点:(1)完善的系统电路原理图绘制功能,可将单片机和SPICE的电路仿真组合。(2)支持主流单片机的系统仿真[14],目前支持的单片机的类型有51系列、AVR系列、PIC系列等多种系列单片机以及各种外围芯片。(3)提供软件调试功能。总而言之,Proteus是一款功能及其强大的单片夹软件仿真开发工具。开发的一般步骤是,设计系统硬件电路,并在Proteus环境下绘制,编写相应的软件程序,添加到Proteus后仿真实现功能,再按照仿真的结果进行实际的硬件设计。最后,将可实现功能的程序向单片机进行烧录,再将单片机安装到用户样板机硬件板。调试完的软件可将机器代码固化在程序存储器中,进行后续的投入运行。该系统的Proteus仿真图如上图5-1所示:5.2KeilC51软件本设计软件开发环境KeilC51的简介在第四章已作介绍,这里不再赘述。双击打开Keil软件,在工具栏点击Project新建一个项目工程。输入文件名,点击保存按钮,此时系统将自动弹出一个选择单片机型号的对话框,选择我们所需要的单片机型号,由于本设计所采用的的单片机是AT89C51单片机,则选择Atmel公司系列下的相应单片机即可。新建一个.c源文件,点击“File”选项进行新建,并完成源程序的编辑。完成后将源程序的文件名命名为“之前所建立项目文件名.c”,并保存。再将新建的.c源文件添加到工程里面,与所建立工程产生联系。点击左边Project的二级菜单中的“Target”前的“+”号,在展开的菜单中选择“SourceGroup1”,鼠标右键单击选择“AddExistingFilestoGroup‘SourceGroup1’...”选项,单击刚才新建的.c源文件,再点击“Add”按钮进行添加,则已将.c源文件添加到工程里了。完成后系统自动开始源程序的编译,同时,对应的编译指示灯亮。图5-2HEX文件生成图编译完成后启动主菜单栏中的Project,选择二级菜单中的“Target1”,在弹出的菜单中选择“OptionsforTarget‘Target1’...”,设置晶振的振荡频率为12MHz,在“Output”中勾选生成Hex文件的选项。如上图5-2所示,完成整个程序的编译则生成了Hex文件。5.2.1Proteus与Keil的联合仿真调试启动Proteus,打开之前所绘制的仿真电路图,双击51单片机,将所保存的HEX文件导入到单片机内,点击运行,仿真结果如图5-3所示,从结果来看,其温湿度的显示精度符合要求,仿真结果初步达到设计目标。图5-3仿真结果图5.3元件的焊接与组装本次设计的元器件主要有:单片机、电阻、电容、按键、开关、二极管、蜂鸣器、传感器、液晶、继电器等。其中AT89C51单片机使用STC89C52单片机代替,其功能和引脚相同。在焊接之前,应该详细了解各元件的性能及正负极特性,电阻电容值的大小等。焊接时要注意不要发生短路、虚焊等问题,每次焊接完都要依照电路图检查是否焊接正确,避免在所有元件焊接完成后很难检查出问题所在。焊接完成后需检查是否存在短路、虚焊等问题,可用万用表检测。确保检测无误后通电调试,电路板实物图如图5-4所示: 图5-4电路板实物图5.4硬件电路的调试5.4.1程序下载本设计的程序的下载使用的是progisp程序下载器,该下载器支持所有AVR芯片编程的下载。其编程下载的步骤是:计算机通过USB接口连接好下载目标芯片,找到Keil软件所生成的HEX文件,打开Progisp下载器,选择“调入Flash”,调用需要下载的HEX文件,选择自动完成的设置,点击“自动”按键,待提示下载成功,则表示系统将程序已经烧录到单片机了。5.4.2上电测试电路检查无误后上电检测,使用USB接口对设备供电,按下开关键,待设备初始化后,屏幕显示当前环境温湿度信息,环境温度为23℃,环境是21%RH。如图5-5所示:图5-5温湿度测试图设置相应的孵化温湿度控制区间,温度区间为38℃~39℃,湿度区间为60%RH~70%RH,由于当前温湿度均不在设定区间内,设置完成后会发现蜂鸣器报警,增温系统工作,发热片开始启动加热
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 昆明市2025中国地质调查局昆明自然资源综合调查中心招聘56人(云南)笔试历年参考题库典型考点附带答案详解
- 文山壮族苗族自治州2025云南文山州富宁县人大常委会办公室考察调(流)动工作人员2人笔试历年参考题库典型考点附带答案详解
- 9 煤 石油 天然气教学设计小学科学六年级下册青岛版(六三制2024)
- 2025-2030新加坡财富管理中心竞争力评估与家族办公室新政
- 桥梁现浇箱梁施工方案
- 2026年黄桃保鲜技术突破与创新报告
- 充电桩工程照明布置方案
- 民用爆破器材买卖合同(12篇)
- 磷硫综合回收项目风险评估报告
- 绿色氢气生产项目竣工验收报告
- 2025清华附中小升初分班考试说明+真题节选(语数英)
- 2026海南万宁市总工会招聘工会社会工作者11人(第1号)笔试参考题库及答案详解
- 2025重庆渝富高质产业母基金私募股权投资基金管理有限公司招聘10人笔试历年参考题库附带答案详解
- 2026年东风汽车校招人才测评题库
- (2026版)肺癌脑转移中国治疗指南课件
- 广西壮族自治区2024广西民族博物馆编外人员招聘笔试历年参考题库典型考点附带答案详解
- 2026年高校图书馆招聘考试笔试试题(含答案)
- 2025年子宫颈机能不全临床诊治中国专家共识解读
- 6《会摇尾巴的狼》 公开课一等奖创新教学设计
- 水利水电工程混凝土防渗墙施工技术规范
- 人才积分制管理暂行办法
评论
0/150
提交评论