历史上的今天
返回首页

历史上的今天

今天是:2025年01月16日(星期四)

正在发生

2021年01月16日 | 单片机在温室智能控制系统中的应用

2021-01-16 来源:eefocus

引言


随着社会的进步和工农业生产技术的发展,许多产品对生产和使用环境的要求越来越严,人们对温度、湿度、光强、二氧化碳浓度、灰尘等环境因素的影响越来越重视了。为此,本文以农业技术发展为目的开发了一种智能控制系统。


众所周知,光、温度、湿度是农业生产不可缺少的因素,所以本设计将其作为重点数据来处理,而目前市场上普遍存在的温度检测仪器大都是单点测量,而且温度信息传递不及时,精度达不到要求,不利于农业控制者根据温度变化及时做出决定。而湿度传感器价格昂贵,大多使用进口元件,但事实上,农用精度要求并不高,现在国产湿度传感器完全可以适用。为此,本设计开发了一种能够同时测量多点,并实时性高、精度高,能够综合处理多点温度信息,并能进行光控和湿度控制的测控系统就。


本设计以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 结束语


当今科技发展迅速,单片机嵌入式开发有着光明的前景。由于单片机经济实用、开发简便,因而依然在工业控制、农业自动化、家电智能化等领域占据了广泛的市场。本文介绍的系统设计有一定的实用性,但该系统在设计过程中仍有很多漏洞。还需要在智能化方面加以改进。特别是语音告警、节省功耗,提高稳定度等方面。


推荐阅读

史海拾趣

City_Technology公司的发展小趣事

随着市场的不断变化和需求的日益增长,City Technology并未满足于已有的成就。在1980年代末至1990年代初,公司积极扩展产品线,相继开发了电化学有毒气体传感器和可燃气体传感器。这些新产品的推出,不仅丰富了公司的产品线,也进一步巩固了其在气体传感领域的领先地位。同时,公司还不断对已有产品进行优化升级,以满足客户日益多样化的需求。

Hirosugi-Keiki公司的发展小趣事

随着市场的不断变化和需求的日益增长,City Technology并未满足于已有的成就。在1980年代末至1990年代初,公司积极扩展产品线,相继开发了电化学有毒气体传感器和可燃气体传感器。这些新产品的推出,不仅丰富了公司的产品线,也进一步巩固了其在气体传感领域的领先地位。同时,公司还不断对已有产品进行优化升级,以满足客户日益多样化的需求。

长园维安(CYGWAYON)公司的发展小趣事

长园维安始终关注环保和可持续发展。公司积极推行绿色制造和循环经济模式,降低生产过程中的能耗和排放。同时,长园维安还注重产品环保性能的研发和改进,为客户提供更加环保、节能的产品。这些努力使长园维安在电子行业中树立了绿色发展的典范。

芯茂微电子公司的发展小趣事

芯茂微电子始终坚持以创新驱动发展,不断投入研发资源,推动技术创新和产品升级。同时,公司积极寻求与国内外知名企业和研究机构的合作,共同开展技术研发和市场拓展。通过与合作伙伴的紧密合作,芯茂微电子在集成电路设计、制造工艺、封装测试等方面取得了重要进展,进一步提升了公司的核心竞争力和市场地位。

长江微电(cjiang)公司的发展小趣事

2022年8月,美国商务部出台了一项断供禁令,禁止向中国出售用于芯片设计的特定类型的EDA软件。这一制裁措施对中国的半导体行业造成了巨大冲击。然而,长江微电并未因此气馁,反而借此机会加大了对电感产品的研发力度。通过自主创新,公司成功开发出了一系列高性能、高品质的电感产品,满足了国内外客户的需求。这一成就不仅彰显了长江微电应对国际制裁的勇气和智慧,也为中国半导体行业的发展注入了新的活力。

Communications公司的发展小趣事

在通信行业的细分市场中,一家名为“精准通信”的公司凭借其专业的技术和精准的市场定位,逐渐崭露头角。他们专注于为特定行业提供定制化的通信解决方案,如工业自动化、医疗信息化等领域。

通过深入了解行业需求和痛点,“精准通信”成功开发出了多款具有针对性的通信产品,有效解决了行业内的通信难题。他们的产品和服务得到了客户的广泛认可,市场份额也逐年攀升。

问答坊 | AI 解惑

我对3G的理解(转)

经过与各方的沟通,我的理解: (1) 中国在选择3G技术的原则:实用,不贵,等待; (2) 中国不是在刻意等待TD-SCDMA的成熟:已经有了CDMA2000技术,导致在选择WCDMA时非常犹豫,因为要和欧洲搞好关系。 (3) 我们国家差的不仅是3G,还有别的很多方 ...…

查看全部问答>

一本开关电源经典书籍

这本书籍详细地讲解设计正激式和反激式开关电源设计的各个细节,包含了电感量计算和磁心选择等各方面,非常适合刚入门开关电源的工程师。…

查看全部问答>

请教这两个二极管的作用,型号如何选?

请教这两个二极管的作用,如何选择型号…

查看全部问答>

UltraEdit里unicode编码格式的代码用arm-elf-gcc编译的问题,求镞

问题比较复杂,只好从头说起。     我们希望在LCD上能显示日文,韩文字符,所以要用unicode编码,我们现用的开发工具是MDK(Keil3)+arm-elf-gcc,但MDK不支持unicode编码,还好我们找到好几款能编辑unicode编码的编辑器,我们打算选用 ...…

查看全部问答>

52单片机中断优先级的问题

单片机型号是AT89LS52 串口中断优先级最高,即IP寄存器中的串口位置为1,其他位置为0. 请问当计时器0的中断服务函数运行时(中断优先级低于串口),来了一个串口中断请求,这时候高优先级的串口中断是否可以打断正在执行的计时器0的中断服务函数 ...…

查看全部问答>

求救~~~

    各位大侠:U盘 插进去电脑以后,电脑会自动检测,识别,而且提示新硬件可以使用了,但是接着 就跳出警告:无法识别的设备?      试过好多部电脑都是这样?      现在关键是:U盘里面的 ...…

查看全部问答>

stm家园接受香水城和广大stm使用者的监督

                                 现在论坛已经设置成 自由下载了  因为技术问题 以前给大家带来了很多不便和误解   ...…

查看全部问答>

STM32中断优先级修改以及屏蔽的问题,急求版主主

1. 如何修改 systick 的优先级2. 我使用的中断group 2.        Io中断  先占优先级 2  从优先级 1        如何屏蔽比他低的优先级.          &nbs ...…

查看全部问答>

ModelSim-Altera仿真时出现的问题。

今天再做一个BCD码转GRAY码的实验时,用ModelSim-Altera仿真时,出现了如下图所示的现象:     一:想请教大家图中红色标记类似于“毛刺”(不知道这样叫合不合适)的东东是怎么产生的?是不是我的逻辑设计有误?如何解决该问题呢? ...…

查看全部问答>

【求助】 430自带ADC12一问

对一个固定电压采样,采样值有+/-1LSB的噪声,请问是电路问题还是AD自身的误差?…

查看全部问答>