2.1硬件系统总体设计方案
本系统采用DS18B20芯片进行温度采集同时进行模拟量与数字量的相互转换,然后输出的数字量,不需要信号放大,并只需要一根口线,最终显示数码管上。本设计采用4X4矩阵式键盘,一开始是扫描键盘,判断是否有键按下,若有,就要判断出是那个键,键值确定后,再进行输入,把最后设定的温度值送到数码管显示。温度值设定完之后,不需要再按任何键,若设定的温度值不合理,还可以重新设定温度值,使用软件编程设定温度的上下限,如此便完成了对温度的总体设置。关于数码管显示模块,运用的是动态显示,程序设计过程中也要运用动态显示进行编写。第一步是拆分设定值(或采集到)数据的十进制数,分别算出它的个位、十位、百位,然后送至数码管显示出来。通过按键切换来决定显示设定值或者实际值。温度控制模块的第一步是把采集的数据和温度设定值的上下限进行比较,不在设定值的区域内,则触发蜂鸣器报警,对比实际温度和设定温度,判断是否加热和加热时间的长短。 单片机软件编程具有高灵活性、高自由度,软件编程还可以实现多种控制算法和逻辑控制,不需要扩展存外部储器,系统整体结构更为简洁。信号传输路经短,大大提高了系统的精度。
2.2硬件系统的方案选择来~自^优尔论+文.网www.youerw.com/
该系统应用DS18B20的优势相当明显,减少了单片机的I/O口线,缩短了数据传送路径,提高了精确度,大大减少成本,故选择该方案。此方案以单片机为该系统的控制核心。温度的检测部分为DS18B20、AT89C51单片机及数码管组成的硬件电路完成对温室温度的即时检测与显示,键盘设定温室温度,比较温度的设定值与实测值,然后单片机发出信号,调节光电耦合器与双向可控硅通断,再调节PTC加热器的通断,完成温室温度的恒温控制。报警则是一个3V的有源蜂鸣器。DS18B20直接转化温度为串行数字信号送达微机处理,每片DS18B20都有特有的识别号码,存储在它的ROM中,在完成较大温度测控系统时,单线上要连接多个DS18B20芯片,一个I/O口可以挂载多少片DS18B20,依赖于单片机性能。DS18B20读写信息只需要一根口线,它读写和温度变换功率由数据总线决定,若该总线向DS18B20提供电源,则不必再接外部电源,DS18B20提供9-12位温度读数,默认是12位,不需要任何外围硬件即可组成温度检测系统。
单片机所要完成的任务如下:
1、连续获取温室温度的测量值,显示温室的实际温度在数码管上;
2、键盘设定温室温度值,并显示在数码管上。设定温度范围室温至125℃;达到恒定控制温室的目的,例如如设定温度值为50℃,就要让实际值与50℃相接近。