采用51单片机设计的温室测试系统
2014-11-17 来源:ofweek
设施农业是世界现代农业发展的主要方向之一,我国农业正处于从传统也向高产、优质、高效为目的的现代化农业转化新阶段,设施农业是我国今后比较长的时间内农业发展的个主要方向。
环境控制对果树生产的重要作用已经为国内外大量的科学实验和生产的实践所证实。只有在适宜的生长环境下果疏才能充分发挥其高产潜力。多年的有关果树生长环境的研究,不仪知道了农业生产,也为温室环境测控的研究提供了理论和依据。但如何利用传感器技术,白动检测技术,通讯技术,计算机技术的发展和温室栽培的推广研制出对温室温度,湿度,二氧化碳浓度的智能测控系统,为果树提供最佳的生长环境,一直是农业研究者面临的重要课题。
虽然国外采用了全智能控制,但是他们的成本太高,不适合我国国情,国内已有的日光温室主要采用自然能源,虽然造价比较低,但过于简陋,只有少数实现了温度、湿度、光照等单一因素的测控,不能满足日益现代化的农艺要求。本文研制一种价格比较适宜、扩展性较好的多功能温室智能测试系统。
1 系统组成及工作原理
本系统功能由硬件和软件两大部分协调完成,硬件部分主要完成各种传感器信号的采集、转换、各种信息的显示等;软件主要完成信号的处理及控制功能等。
其工作原理是89C51单片机一次查询各传感器的输出信号,然后89C51对输入信号进行相应处理后通过显示模块44780输出,同时还可输出各种报警信号。
2 硬件构成
该系统硬件主要包括以下几个模块:89C51主控模块、传感器模块、A/D转换器、扩展、44780显示模块等。其中89C51主要完成外围硬件的控制以及一些运算功能,传感器完成信号的采样功能,A/D转换器主要完成模/数的转换、存储器主要完成程序和数据的存储、44780显示模块完成字符、数字的显示功能。
主控模块
系统采用ATMEL公司生产的AT89C51单片机,它带有4kB闪速式存储器、128B内存,最大工作频率24MHz,同时,具有32条输入输出线,16位定时/计数器,5个中断源,1个串行口。
2.1 传感器的选取
2.1.1 温度传感器
采用AD590集成温度传感器,此传感器是电流型的,它的特性如表1所列。
测量地表温与土温也可以用AD590集成温度传感器。由于传感器探头要插入土中,所以要将传感器及变换电路封装在金属探棒中。金属探棒可以起到防水、防腐的作用。又因为金属的导热性好,所以金属探棒不会影响传感器对温度的测量。
2.1.2 湿度传感器
采用IH3605电容式集成湿度传感器。其输出电压较高且线性较好。尢需进行信号放大和信号调整,可直接进行A/D转换。其特性表如表2所列。
2.1.3 光照强度传感器
本系统选用北京林业大学生产的光量子传感器,主要由感应元件和匹配滤光片系统组成。感应元件选用硅太阳能电池,在太阳辐射作用下产牛的光电流与辐射强度成线性关系。标准的硅光电池的光谱响应在400nm-1100n。的范围,峰值波长为800nm。光量子传感器是一种灵敏的蓝色硅电池,在近红外区域700nm-1100nm只有相当低的响应,而在可见区域400~700nm比一股硅电池的响应却要高得多,峰值响应在550~-650nm之间。光量子传感器在光的照射下,输山变化十分微弱的电流信号(约几个微安)。所以光合有效辐射的检测电路应选用低漂移,共模抑制比高的集成运算放大器。放大电路采用电流一电压变换放大电路,如图1所示。光电子传感器的电气特性如表3所列。
2.1.4 C02浓度传感器
C02浓度传感器选用红外线气敏传感器。其测量范围宽,达-2000ppm,检测精度可达15%。可以选用这种方法来监测温室空气中C02的浓度。
2.1.5 土壤水分传感器
选用TDR-3型土壤水分传感器。TDR-3土壤水分传感器可测量土壤水分的体积百分比,与土壤本身的机理无关,是目前国际上最流行的土壤水分测量方法。TDR-3型土壤水分传感器是一款高精度、高灵敏度的测量土壤水分的传感器。
2.2 多路开关CD4051
本系统选用了单端8通道模拟多路开关CD4051。它由电平位移电路,带禁止端INH的8选1译码器和由该译码器对各个输出分别加以控制的八个CMOS双向模拟开关组成。其引脚如图2所示。INH为高电平时,八路通道全部不通。A、B、C分别为输入选通地址端,0-7为八路模拟输入信号端,COMMON端为被选通模拟信号的输出端CD4051传送的信号范围从VFE到VDD。由于环境因子的采样信号幅值为0~2V,所以将VEE端与Vss端相连并接地,VDD端接电源端Vcc,使得信号传送范周为O-Vcc,即0~+5V,INH,A,B,C四端连接四根地址线,控制信号的选通,其真倩表见表4。选通的信号从COMMON端送到A/D电路。
2.2.1 通道的分配
七路环境因子的测量信号各占一个通道。通道分配如表5所列。
2.3 A/D转换电路
MC14433采用8位数据输出,转换精度为1/2000,相当于11位二进制A/D转换器的精度。它还具有抗干扰性好、自动校零、自动极性输山、自动量程控制信号输出、单基准电压、外接元件少等特点。MC14433的引脚及外接元件如图3所示。
MC14433的转换速度较慢,不宜用查询方式。系统采用如图3中所示的中断方式。每次A/D转换结束,EOC都输出一个正脉冲,其宽度为0.5个内部时钟振荡周期,如图3所示。将EOC端接入89C51的外部中断1引脚,利用EOC脉冲的下降沿触发中断。单片机处理中断服务程序,接收数据。动态分时输出 BCD码的QO-Q3和DSi-DS;与89C51的PI口相连。
2.4 扩展电路与地址分配
2.4.1 扩展电路
89C51芯片上带有扩展功能引脚。
-EA/VPP端:系统中该引脚接+5V高电平,程序计数器PC先访问内部程序存储器,当PC值超过OFFFH(4k)时,转向
执行外部程序存储器内的程序。
-PSEN端:外部程序存储器读选通信号。本系统未扩展外部程序存储器,此引脚空。
ALE/-PROD端:系统扩展外部存储器时ALE输出锁存信号。
89C51内部有128个字节的RAM存储器。存实时数据采集和处理时,仅靠片内的RAM是不够的,还需要利用89C51的扩展功能扩展外部数据存储器。常用的数据存储器有静态SRAM和动态DRAM。由于DRAM需要不断刷新,设计时要增加刷新电路,电路复杂,可靠性差。因此SRAM在单片机测控系统中应用更普遍。
系统采用常用的2KX8位SRAM6116。它采用CMOS工艺制造,单一+5V电源,典型存取时间200ns。与89C51硬件连接如图4所示。74LS373是带三态门的8D锁存器,用作地址锁存器。
2.4.2 端口及地址分配
端口及地址分配如表6所列。
根据以上端口分配,可以确定外设地址为:
多路开关CD4051:XO-X7对应BOH-B7H;B8H-BFH全不通;
外部扩展RAM:0800-OFFFH,共2k;
执行信号输出依靠P2.5线选锁存器74LS373,后将控制字从PO口输山到74LS373来完成。
2.5 执行信号输出
本系统的执行信号输出电路为试验性的仿真电路。系统模拟八路执行信号,针对七路环境因子信号的监视情况,主控机发出控制指令,控制单片机开启一路或多路执行信号电路,以实现对环境因子状态的调控。执行输出电路由控制字锁存器、发光二极管、电阻组成。各路执行信号所代表的执行机构或系统如表7所列。
2.6 通信方式
本系统是温室群的监控系统,它是由多台前沿机和主控机构成的网络组成的。因此系统的状态监视、环境控制等都是通过网络通信来实现的。所以,前沿机的通信电路是系统重要组成部分。
温室群环境监控系统的实时性要求不高,传输的信息量也不太大,因此串行异步通讯可以满足其通讯需求,并且具有线路简单,易于实现的优点。本系统采异步通讯。温室群环境监控系统要求远距离数据传送,对数据传送速率要求不太高并要有一定的抗干扰能力,因此RS-422最适合系统的要求。适当降低传输速率,如9600bit/s,可以使传送距离达到1200m以上,完全满足系统要求。主控机口通信采用主机板上空闲的标准25芯COM2 口,进行电平转换后挂接RS-422总线。使用这种转换器时可以使用与RS-232相同的通讯软件而无需进行修改。其引脚定义如表8所列。
本系统采用RS-422与TTL电平转换常用芯片:传输线驱动器SN75174;传输线接收器SN75175,SN75174是一具有三态输出的单片四差分线驱动器。SN75175是具有三态输山的单片四差分接收器。它们的设计符合EIA标准RS-422规范,适用于噪声环境中总线线路较长的多点传输。芯片采用+5V电源,与其他芯片一致。通信线路采用标准RS-422九芯插接件。电路如图5所示。
2.7 监控网络
本系统采用总线型监控网络。总线型拓朴结构如图6所示。在总线型控制网络中,主控站通过总线来访问各个前沿机。只有主控站有权控制总线,而各前沿机则不可以,并且各个前沿机之间不能直接进行通信。这种拓朴结构的特点是:数字化的数据通过串行输入/输出总线进行传送;通讯协议采用RS232,RS422,RS485等;系统扩展较为灵活:通信速率较低。
2.8 44780显示模块
本系统采用44780驱动的LCD,HD44780(KS0062)是用低功耗CMOS技术制造的大规模点阵LCD控制器(兼带驱动器),和4bit/8bit微处理器相连,它能使点阵LCD显示大小写英文字母、数字和符号等丰富的信息,同时有较强的通用性应用,使用方便,用户能用少量元件就可组成一个完整点阵LCD系统,送入相关的数据和指令即可实现所需的显示。
44780显示模块有8条数据线,3条控制线,可与微处理器或微控制器相连,通过送入数据和指令,就可使模块正常工作,44780显示模块和89C51单片机连接电路如图7所示。
图7 4478显示模块和89C51接口电路图
2.9 抗干扰设计
在微机测控系统中,系统抗干扰性能的好坏直接影响到整个系统工作的可靠性与安全性。因此,抗干扰设计是系统设计的一个主要内容,本系统采用的是由硬件和软件相结合的抗干扰措施。
2.9.1 系统硬件抗干扰设计
(1) 滤波技术
将电源变压器的进线段加入滤波器,以消弱瞬变噪声干扰;在直流电源线和地线之间接滤波电容,以抑制电源噪声。
(2) 去耦电路
存印刷电路板的各个集成电路的电源线端与地线端之间配置去耦电容。
(3) 屏蔽技术
屏蔽技术主要由电场屏蔽,电磁场屏蔽和磁场屏蔽三类,本系统是电场和电磁场屏蔽的方法。主要使用低电阻材料作为屏蔽材料,把需要隔离的部分保卫起来。磁场屏蔽则应采用高导磁率的材料。
(4) 光电隔离:
再I/O通道上采用光电隔离器,将单片机系统与各种传感器、开关从电器上隔离开来,很大一部分干扰可被阻挡
2.9.2系统软件抗干扰设计
对于微机测控系统,仅仅考虑硬件的抗干扰是远远不够的,采取一定的软件抗干扰措施非常必要,它不仪能降低系统的硬件成本,又可以充分发挥软件的优势,使系统具有自我诊断,自我恢复的能力。本系统采用的软件抗干扰措施主要有以下几种:
(1) 数字滤波技术,采用数字滤波技术除去输入信号中所掺杂的各种随机干扰。
(2) 软件陷阱技术,当系统受剑干扰,PC值发生变化,程序"乱飞"等情况,可以用软件陷阱和看门狗将程序拉回到复位状态。具体的讲,可以在RAM中埋一些标志,在每次程序复位时,通过这些标志,可以判断复位原因并根据不同的标志直接跳到相应的程序。这样可以使程序运行有连续性,用户在使用时也不易察觉到程序被重新复位过。
3 软件设计
该系统软件主要由主程序、中断子程序、数据采集与A/D转换子程序、显示子程序、报警子程序等六大模块组成,因为C语言编写的软件易于实现模块化,生成的机器代码质量高、可读性强、移植好,所以本系统的软件采用C语言编写,再KeilVision3 Demo版本的集成开发环境下进行编译连接。
3.1 主程序设计
主程序主要完成硬件初始化、子程序调用等功能,主程序流程图如图8所示。
3.2 数据采集子程序设计
数据采集与A/D转换子程序根据输入参数对相应的模拟信号进行采样、量化及处理,并将相应信号的数值返回主程序。
3.3 显示子程序设计
显示子程序完成符号、数值的显示输出。
3.4 报警子程序
主要实现异常情况下控制告警信号输山。如当室内温度升高到某一点时,或湿度低于某一规定值时,音频报警装置会发出不同频率的告警信号,同时相应的指示灯亮(点亮报警指示灯的任务由显示子程序来完成),以引起工作人员的主意。
4 仿真与调试
4.1 仿真器选择
本系统选用ME-52单片机仿真开发系统,它实时仿真频率高达33MHz,提供2~24MHz的时钟信号。同时它提供64KB程序代码存储器,支持仿真所有程序和数据地地址空间,支持Franklin V3.XX/Keil 6.xx编译连接工具。具有分别独立控制项目文件的项目管理器。另外具有VC++风格的窗口驻留,窗口动态切分和工作簿模式窗口界面。
4.2 仿真调试
在仿真调试阶段,采用"自底向上逐步集成"的策略,逐模块进行仿真测试,在此基础上逐步集成。譬如可先仿真显示模块、测温子模块、测湿度子模块等,然后将仿真成功的模块逐个加入主程序进行仿真,在仿真过程中发现错误,采用"分块压缩策略",快速找到并改正错误;注意在集成过程中出现问题,大多是由于模块间资源使用冲突引起的。当软件模块仿真成功后,可与硬件一起进行在线仿真,此时在调试中出现的问题大多是由于连接线连接错误、虚焊、布线不合理等原因造成的。 随着电子技术的广泛应用,智能温室控制必将成为一种发展趋势,文中提出利用51单片机和新型传感器对温室环境进行测试,目前原型机己取得成功。调试结果表明,本系统可靠性高、使用方便,下一步将住此基础上开发控制系统,给用户提供更大的方便。