温室大棚要求温度保持在某规模内,这个规模温度是动植物成长的最佳环境温度,因而有必要对动植物成长的环境温度进行监测和操控,使其合适动植物的成长,以进步产值和质量。本规划便是对温室的温度操控要求进行全面剖析,归纳考虑体系精度和经济性多方面要素后,规划一种依据单片机的温度主动操控体系。本体系能够完结对温室大棚温度的主动监控,能够经过按键输入设定温度等操控指令,并且使温室温度保持在设定值的规模内,完结监控体系的作业。
1 体系总体计划
本体系以AT89C52单片机为主操控器,加外围的温度收集模块、键盘模块、显现电路模块、加热模块和降温模块构成,体系结构框图如图1所示。温度收集模块首要收集温度值,A/D转化后送入AT89C52单片机处理,处理后的温度值在显现器上显现。别的由键盘设定动植物成长所需的抱负温度值,并送到单片机中,单片机选用PID算法比较设定的温度值和收集的温度值后宣布操控信号到继电器,继电器驱动电扇降温或加热片加热,直到与设定的温度值共同就中止作业。
2 体系硬件规划
2.1 温度收集模块
现在,温度收集设备常选用热电偶,因热电偶输出为模仿量电压,且输出电压很小,只要几毫伏,有必要经过信号扩大,到5伏左右进行A/D转化,转化后送给单片机处理。此计划的长处在于丈量温度规模大,从-100℃到上千摄氏度,且精度高,但体系硬件杂乱,抗干扰能性较低。数字式温度传感器弥补了热电偶的缺陷,DS18B20便是一款单总线数字式温度传感器,无需外接其他电路,直接输出便是数字量,写入DS18B20的信息或从DS18B20读出的信息仅需求一根线,DS18B20与单片机的衔接电路如图2,因而运用DS18B20可使体系结构更趋简略,抗干扰才能增强。DS18B20的测温规模从-55~+125℃,增量值为0.5℃,可在1 s内将温度改换成数字。
DS18B20接收到单片机宣布的温度开端转化指令后,DS18B20发动转化。转化后的温度值以16位带符号的二进制补码方式存储在暂存存储器的0和1字节中。单片机经过单总线接口读到该数据,读取时低位在前,高位在后。温度值格局如表1,其间“S”为符号位,当高字节的前5位S=0时,代表正数,直接将高字节的低3位和低字节的二进制位转化成十进制便是对应的温度值;当高字节的前5位S=1时,代表负数,高字节的低3位和低字节的二进制位代表负数的补码,需先将补码改换成原码,再核算十进制值才是对应的温度值。
2.2 继电器电路模块
因为本体系要操控加热片加热或电电扇降温,功率较大,因而要凭借功率电路。假如选用可控硅操控完结能够到达很高的操控精度,但需加光耦合阻隔器材,电路稍显杂乱。选用继电器操控能够很简略完结经过较高的电压和电流,并且无需外加光耦,电路简略牢靠。因而,本规划选用继电器操控电扇和加热片,其电路如图3所示。
当实测温度低于或高于设定温度的下限或上限值时,由单片机输出高电平信号,NPN三极管9014导通,继电器驱动加热器开端加热或电电扇开端降温。为了避免继电器频频动作,在程序中对温度丈量准确到小数点后两位,而在温度设守时只取整数。继电器线圈周围反方向并联一个二极管,二极管起到维护三极管的效果,避免三极管击穿。
2.3 键盘和显现模块
本体系需用4个LED数码管,别离显现温度的十位、个位和小数点后两位,当经过按键设定温度时,LED数码管中止显现当时温度,显现设定温度值,设定结束后,持续显现当时的收集温度值。动态显现组合式数码管只需求较少的引脚个数,以4位一体组合式数码管为例,需求8+4=12个引脚。而假如每个数码管都要独自引脚,至少需求4*9=36个引脚。引脚数削减使得PCB板布线变得更为简略,因而,在需求运用多位数码管时,一般都用动态显现组合式。本规划选用四位一体的共阳极数码管,单片机PO口操控数码管的段a–dp,P2.4–P2.7经过4个9012 PNP型三极管接数码管的COM端。
温度的设置选用按键来完结,经过按键修正温度的上限值和下限值。按键选用独立式键盘,经上拉电阻别离接单片机的P1.1、P1.2和P1.3引脚上,其与单片机的衔接如图4所示。先按一次操控键,然后每按上调或下调键一次,设定温度值增1或减1,再按一次操控键代表设定结束。
3 体系软件规划
本体系的软件选用汇编语言规划,主程序中首要初始化,然后循环调用读温度、温度处理、显现、键盘和继电器操控子程序,完结温度操控的功用。
3.1 主程序流程图
主程序流程图如图5所示。
3.2 读温度模块子程序
DS18B20操作时都要严厉依照DS18B20作业进程规则的协议进行。DS18B20应遵从以下作业协议:DS18B20复位->履行ROM指令->履行功用指令->数据处理,读取温度的子程序流图如图6所示。
3.3 数据处理子程序
因为DS18B20转化后的16位数据并不是实践的温度值,所以要进行数据处理。温度高字节中的高5位是用来表明温度的正负,高字节的低3位和低字节用来保存温度值。其间低字节的低4位用来保存温度的小数位。因为,1/24=0.062 5,所以,DS18B20的温度精度是0.062 5 ℃。用低字节的低4位数值乘以0.062 5,有可能是多个小数位,本规划要求温度值保存小数点后两位,所以采纳四舍五入,得到真实的两位小数。详细算法是首要程序判别温度值是否为负,假如是,则DS18B20保存的是温度的补码值,需求先求其原码。处理往后的温度存储到单片机的RAM中,然后将RAM中的十六进制码转化成BCD码。数据处理子程序流程图如图7所示。
3.4 键盘扫描子程序
按键选用3个按键,别离表明操控键、加1键和减1键,键盘子程序流程图如图8所示。
4 体系调试
本规划制作了硬件什物,体系选用的是分模块焊接与调试,意图是为了避免悉数焊接调试困难,若一次不成功,查找过错费事。分步调试后,最终进行联调,因为条件约束,在本规划中选用室内温度进行测验,若设定温度高于当时温度值,加热器模仿灯展亮,可是室内温度不会改变那么快,选用体温来完结温度的快速升高,到达设定值,加热器灯灭。由此可见,该体系具有较高的操控精度。
5 结束语
该温度操控器能够实时监测温室大棚的温度,差错小于0.1℃;能够设定农作物成长的抱负温度,依据当时温度与设定温度之间的不同,加热器或许电扇将主动发动,直至到达设定温度中止作业。经改善后,该体系能够广泛地应用在饲养大棚等场所的温度操控,确保农作物抱负的成长温度,进步产值。