引言
随着社会的进步和工农业生产技术的发展,许多产品对生产和使用环境的要求越来越严,人们对温度、湿度、光强、二氧化碳浓度、灰尘等环境因素的影响越来越重视了。为此,本文以农业技术发展为目的开发了一种智能控制系统。
众所周知,光、温度、湿度是农业生产不可缺少的因素,所以本设计将其作为重点数据来处理,而目前市场上普遍存在的温度检测仪器大都是单点测量,而且温度信息传递不及时,精度达不到要求,不利于农业控制者根据温度变化及时做出决定。而湿度传感器价格昂贵,大多使用进口元件,但事实上,农用精度要求并不高,现在国产湿度传感器完全可以适用。为此,本设计开发了一种能够同时测量多点,并实时性高、精度高,能够综合处理多点温度信息,并能进行光控和湿度控制的测控系统就。
本设计以AT89C51单片机为核心来对多点温度进行实时巡检。各检测单元(从机)能独立完成各自功能,同时能根据主控机的指令对温度进行定时采集。测量结果不仅能在本地显示,而且可以利用单片机的串行口和RS-485总线通信协议将采集的数据传送到主控机,以进行进一步的存档、处理。主控机负责控制指令的发送,以控制各个从机的温度采集,收集测量数据,并对测量结果(包括历史数据)进行整理、显示和存储。主控机与各从机之间也能够相互联系、相互协调,从而达到系统整体统一、和谐的效果。
1 系统整体目标
本系统能够同时检测2路温度,检测温度范围-55℃~+125℃。根据实际需要,检测点数可以扩展。系统采用的湿度传感器湿度检测范围为20%~90%RH。可通过LM555芯片和光电耦合器接入单片机,其检测精度为±5%。系统中的感光元件可通过LM555芯片和继电器来控制电动机的正反转,从而实现遮阳网的打开和收回。由于使用了RS-485串行总线进行传输,并选用MAX485驱动芯片进行电平转换,因此,其传送距离可大于1200 m,且抗干扰能力很强。
此外,本系统还应具有如下功能:
(1) 主控机统可设置系统时间和温度修正值。
(2) 主机、从机均具有温度报警上下限设置和声光报警功能。
(3) 具有定时、整点收集各从机数据功能,并可使用I2C串行E2PROM保存各从机以往24小时的数据,同时应具有数据更新与掉电保护功能。
(4) 具有数据存储功能,可查询各从机以往24小时的温度、湿度情况。
(5) 自带+5 V和+12 V直流稳压电源。
2 系统方案
本方案以AT89C51单片机系统为核心来对温度、湿度进行实时控制和巡检。各检测单元(从机)能独立完成各自功能,并根据主控机的指令对温度进行实时或定时采集。测量结果不仅能在本地储存和显示,而且可通过RS-485总线及通信协议将采集的数据传送到主控机。以便进行进一步的分析、存档、处理。主控机负责控制指令的发送,并控制各个从机进行温度采集,收集测量数据,同时对测量结果(包括历史数据)进行整理、显示和打印。主控机与各从机之间能够相互联系、相互协调,从而达到系统整体统一和谐的控制效果。图1所示是本系统的结构框图。
该方案主控机和从机完全由单片机实现,采用该方案完全可满足农业上部分需求。在图1中,从机部分实现的功能几乎和主机是对等的,但会接受主机发送过来的命令。
图2所示是该系统从机部分的结构框图。该方案采用数字式DS18B20作为温度传感器,该芯片在采集温度信号时,具有大范围、高精度、数字量输出的特点。CHR-01湿度传感器采集的信号可利用LM555振荡器将电流信号转化成频率信号。选用CHR-01国产元件主要是其价格便宜。
3 信号获取与放大电路
3.1 DS18B20的测温原理
DS18B20的测温原理如图3所示,图中,低温度系数晶振的振荡频率受温度的影响很小,主要用于产生固定频率的脉冲信号并送给减法计数器1,高温度系数晶振在温度变化时,其振荡频率有明显改变,它所产生的信号可作为减法计数器2的脉冲输入,图中隐含着的计数门打开时,DS18B20即对低温度系数振荡器产生的时钟脉冲进行计数,进而完成信号采集。
在DS18B20中,DQ为数字信号输人/输出端;GND为电源地;VDD为外接供电电源输入端。图4是DS18B20的引脚排列图。
DS18B20在光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码,这样就可以实现一根总线上挂接多个DS18B20的目的。
有两种方法可确保DS18B20在有效转换期内得到足够的电源电流。第一种方法是在温度变换时,在I/O口接一个强的上拉。第二种是将其连到VCC外部电源,这样就不用在I/O口接强上拉,也可在温度变换期间使口线保持高电平。以在变换时间内允许其它数据在单总线上传输。也可使用外部电源通过发跳过ROM命令和变换命令T来完成温度变换。需要注意的是:在工作状态,GND不能悬空。
3.2 CHR-01湿度传感器
CHR-01湿度探测振荡电路由电阻型高分子膜湿敏电阻、LM555集成芯片及相关的电子元件组成,并采用AT89C51单片机作为处理器。由于高分子湿敏元件的电阻会随着环境湿度的变化,因而该振荡电路会产生不同的振荡频率。将该信号通过光电耦合和接口元件传送到单片机的计时器中,就可完成信号采集。图5所示是CHR-01测湿电路结构框图。
由于不可能事先测定每个标准湿度值所对应的频率值(那样会大大增加工作量,并且也没有必要),所以只对其中某些特定的湿度值进行测量和记录即可。比如在图6所示的湿度传感器特性中,实际的湿度/频率曲线T0(如图6所示)在应用中只需标定A、B、C、D、E五个点的标准值,然后运用数值方法来实现对AB、BC、CD、DE各区间段湿度的近似测量。在此需要强调的是,由于湿敏元件的阻抗是随着温度变化的,这会导致不同温度下的不同湿度/频率曲线(如T1℃下对应的曲线T1;T2℃时对应的曲线T2),故要分别对不同温度下的湿/频曲线进行测定。
DS18B20正好可以完成对温度的标定。因为本测试装置只需标定15℃、20℃、25℃、30℃四条曲线,然后根据数值方法并利用软件便可对15℃~30℃之间任意温度下的湿度进行准确测量。
本传感器振荡电路的参数最优化问题是指选择合适的电子元件(Cq和R)来保证湿度传感器的灵敏度和测量数据的单调性。高分子湿敏元件与LM555组成的振荡电路如图7所示。经研究表明,湿敏元件的等效电阻电容混合复杂二端网络在一定频率下可等效为电阻与电容串联结构(如图7所示的Rh和Ch)。其中,Uo表示输
出电平,Cq微积分电容。该振荡器的振荡包括:放电和充电两个过程。当送入电压VCC时,Ch和Cq的总压降为零,TR和TH端口电压均小于VCC/3,输出端Uo为高电平1。电源通过电阻R对Ch和Cq充电,以使TH和TR口电压Uo逐渐升高。当其升高到2VCC/3时,LM555内部发生翻转使输出端变低,此后LM555定时器内的放电管导通。Ch和Cq通过Rh和放电管放电。当TR和TH端口电压下降到VCC/3时,输出端又变高。其输出波形如图8所示。若湿敏电阻选CHR-01则R可取2 kΩ,Cq取68 pF。
3.3 PX-625型光控电路
PX-625型光控电路由电阻型薄膜光敏电阻、LM555集成芯片及相关的电子元件组成,它利用三极管的导通和截止来控制电动机的正反转,并将控制信息传给单片机。图9所示是PX-625型光控电路原理图。
4 软件程序设计
4.1 程序流程
本系统软件主要由主控机程序和从机程序两部分构成。主程序主要实现系统的初始化、数据显示、从机相关信息设定及通信的处理。系统的初始化包括寄存器的初始化(控制寄存器、堆栈、中断寄存器等),通信初始化(串口的初始化,MAX485的初始化,通信缓冲区的初始化),数码管初始化,输出端口的初始化,以及采集、累计数据的初始化。数据显示则包括各类参数、测量数据等的读取和显示屏的刷新。
通信的处理主要是针对主空机与从机的信息交换与处理。主机程序流程图如图10所示。
从机程序主要由温/湿度信号采集程序、光控指示程序、报警程序、温度存储程序和响应主机命令程序组成,该从机采样流程图如图11所示。从机响应主机的程序实际上是一个中断处理程序。从机在工作过程中,当检测到主机发送来的命令时,它将停止温度信号采集程序,转而去响应主机的请求。主机命令或请求有以下四种:报警查询、设置从机时间、设置报警阈值和巡检温度。
4.2 主机与从机的通讯帧结构
由于温室智能控制系统的温度、湿度、光强的检测和控制都用到了通讯,本系统选用RS-485总线通讯并采用通讯帧结构。并约定数据的第一个字节为现场信息,当现场信息为SOH时才是合法的;第二个字节用来判断是主机处理器发送的数据还是从机检测器发送的数据;三、四两个字节为从机检测器的ID号,每一台检测器的ID号都是不同的:五、六、七三个字节为功能码;第八个字节为STX;后面的数据(DATA)为测试信息,其长度根据各功能码而有所不同,也可以为零;倒数第二个字节为通讯结束标志,当其为ETX时才合法;最后一位为通讯校验码(BCC)。
5 结束语
当今科技发展迅速,单片机嵌入式开发有着光明的前景。由于单片机经济实用、开发简便,因而依然在工业控制、农业自动化、家电智能化等领域占据了广泛的市场。本文介绍的系统设计有一定的实用性,但该系统在设计过程中仍有很多漏洞。还需要在智能化方面加以改进。特别是语音告警、节省功耗,提高稳定度等方面。