历史上的今天
今天是:2025年04月03日(星期四)
2018年04月03日 | 基于STC12C5A60S2 单片机的植物智能精确补光系统研制
2018-04-03 来源:eefocus
前 言
在农作物生长过程中,光照条件对农作物的生长速度、产量以及品质都具有重要的影响[1,2]。现阶段我国大部分设施农业仍依靠白炽灯、卤钨灯、高压水银荧光灯、高压钠灯等作为光源对植物进行补光[3 - 4],这些传统的补光方法存在着光谱匹配不理想[5 - 6]、光能利用率低、未考虑其他环境因素的影响等缺点,其能耗过高导致难以在实际生产中形成较高投入产出比。随着半导体技术的发展,采用LED冷光源作为补光灯光源的方案也已被提出[7],可在一定程度解决上述补光光源的问题。但由于大部分研发方案和产品仍采用定光强、定光质的补光方式,未考虑不同植物不同阶段需光量的差异,造成补光不足和补光过度并存的现象,仍未能真正意义上解决低能耗精准化补光的问题[8]。
针对以上问题,本文研发了一种智能、精确、节能的补光系统,该系统充分考虑不同植物在不同阶段不同环境对补光需光量的影响。基于分波段光强检测技术、智能控制技术等现代电子信息技术,采用STC12C5A60S2 单片机作为核心处理器[9],PT4115 为LED 驱动模块[10],根据温度和光强检测结果,实现对各类植物在合适环境下按需分波长定量补光。在满足其生长所需光照前提下,最大程度的提高输出光能的利用率,具有误差低、响应速度快、成本低、维护简单等特点。
1 系统整体设计
本系统采用模块化设计,分为电源模块、检测模块、控制模块、补光模块、用户交互模块,总体结构如图1 所示。其中,电源模块采用太阳能供电,分别提供5V,1 2V 两种供电电压,为整个系统供电; 智能控制模应用STC 系列单片机为核心,根据系统采集到的数据、设置阈值,实现对应PWM 控制信号的占空比计算和两路PWM 控制信号输出; 检测模块分波段检测红、蓝光强和实时温度,并将检测信号进行滤波、放大后传入单片机,实现相关环境信息的检测; 补光模块采用两路带有PWM 电流控制功能的恒流驱动电路,分别控制红、蓝光LED补光阵列灯的亮度,从而实现定量精确补光; 用户交互模块采用液晶屏完成检测结果显示,键盘实现按需阈值修改等功能,完成阈值修改与设置,有效提高系统使用的方便性、扩展性。
2 硬件设计
2. 1 电源模块
本系统电源模块由太阳能电池板、蓄电池和控制电路组成,整个系统利用太阳能电池供电,原理图如图2 所示。其中,控制电路的输入端与太阳能电池连接,输入电压通过LM317 及其外围标准电路对12V蓄电池充电,蓄电池为整个系统供电。蓄电池输出端利用MIC29302 稳压变压模块输出12V 稳压电源信号,并调整匹配电阻产生5V 稳压电源信号,从而提供本系统需要12V 和5V 两个供电电源。其中,单片机、检测模块以及用户交互模块均使用5V 电源供电,LED 补光模块采用12V 电源供电。

图1、电源模块原理图
2. 2 控制模块
控制模块选用STC12C5A60S2 单片机作为核心处理器,采用5V 电源供电,具有8 路10 位A/D 接口、2 路PWM 输出口、Flash 存储空间56K、静态存取内存1 280B、可编程只读存储器1K,完成节点任务调度、数据采集、智能管理、控制信号输出、阈值的调整、数据转储等工作,电路如图3 所示。其中,P0 口连接液晶屏的8 路数据口; P1 口负责与采样信号连接,P1. 0 接入温度检测信号、P1. 1 接入红光检测信号、P1. 2 接入蓝光检测信号,从而完成对传感器监测数据的采集;P2 口连接4 × 4 矩阵键盘,P3. 0,P3. 1 用于单片机与串口连接的数据读写线,完成程序的下载; P3. 2 ~ P3.7 位液晶控制端; P4. 2,P4. 3 为单片机PWM 控制端输出口,其根据单片机计算出与两波段所需补光量对应的PWM 信号占空比,输出PWM 信号对LED 灯组的亮度进行控制。

图:控制模块电路设计
2. 3 检测模块
检测模块利用光照传感器、温度传感器实时检测设施内部光照强度和温度,并将采集数据提供给单片机进行处理,原理图如图4 所示。其中,温度检测模块由温度传感器18B20 及其标准调理电路组成,数据线接入单片机P1. 0 口,实现对温度的采集。光照检测包括红光光强检测和蓝光光强检测,采用波长范围在400 ~ 500nm 的蓝光2BU6 硅光电池和波长范围600 ~ 700nm 的红光2BU6 硅光电池作为检测元件。采用4 路运算放大器LM324 设计运算放大器将硅光电池的微弱模拟信号分别进行转换和放大,最终将模拟信号接入单片机P1. 1,P1. 2 端口进行A/D 转换,从而实现分波段光强检测。

图、检测模块原理图
2. 4 补光模块
补光模块包括LED 灯组及其驱动电路,驱动电路采用PT4115 驱动模块电路,红光和蓝光两个模块独立工作,原理图如图5 所示。其中,LED 灯组采用额定功率1W、中心波长为660nm 的窄带红光LED 阵列和中心波长为450nm 的窄带蓝光LED 阵列。由单片机输出的两路PWM 信号分别与红蓝光两路PT4115的DIM 控制端相连,其中红光驱动芯片与P4. 2 产生的PWM 信号接通,蓝光则与P4. 3 产生的PWM 信号接通。利用PWM 的信号控制驱动芯片PT4115 的输出电流,由此实现LED 灯组的定量补光。

图、补光模块原理图
2. 5 用户交互模块
用户交互模块主要包括液晶显示屏和键盘两部分,其中显示屏采用OCM12864 - 3 液晶屏,可实现系统数据的查询显示; 而键盘采用4 × 4 矩阵键盘,实现对系统相关数据的设定及改变。
3 软件设计
该系统软件主要包括传感器解析函数、数据管理与参数设定程序、PWM 信号控制程序和显示程序,实现3 类参数设置、环境因子采集以及对受控灯组的自动控制功能,软件流程如图6 所示。系统工作时,首先需要对温度,红蓝光强阈值进行设置,温度传感器周期对设施内温度监测,判断温度是否超出不利于光合作用的阈值范围,超出则关断 LED 补光灯组。当温度在所设阈值范围内,再分别对红、蓝光进行光强检测,实际光强在阈值之内时,系统进入自动定量补光状态,根据所设阈值与实际值之差计算实际需光量,进而再根据与实际需光量对应的两路PWM 控制信号的占空比,分别产生对应的PWM 信号,达到控制LED 灯的亮度对植物实施精确补光的目的。
4 运行结果分析
该系统充分考虑了植物补光时的各种影响因素,通过对各因素的监测、设置、数据管理和决策程序,精确计算植物所需光照与实际光照总体差值,采用均值方式计算每个LED 的输出光强; 基于LED 驱动电流和输出光强的关系式,系统就可以通过对PWM 输出电流的控制,从而实现对补光量的控制。该系统已于2010 年在西北农林科技大学甜瓜基地投入试用,实现了设计方案中各类部分功能,可长期有效实现定量精确补光,图7 为设备原型界面。

图、软件流程图
5 结论
本文研发了一种基于STC12C5A60S2 单片机的植物智能精确补光系统。该系统利用太阳能供电,根据温度、光照传感器监测结果,通过核心处理器STC12C5A60S2 利用PWM 信号,控制特定波长的红、蓝光两路LED 灯组驱动电流,从而控制光源亮度,解决现有补光设备的不足,实现了对农作物的智能化、精确化补光。系统试验证明其具有良好的稳定性,可满足在不同生长阶段对不同植物进行智能化、精确化的补光要求,作物产品产量、品质提高,耗能明显降低。同时,具有误差低、响应速度快、使用方便、部署灵活、成本低廉、维护简单等特点。
史海拾趣
|
近两年,是安防行业高速发展的时期,城市的现代化建设和经济的快速发展,以及构建和谐社会的要求,对城市各行业系统的安防监控工作提出了许多新的要求和课题。同时,平安城市的建设、奥运会的承办,都为安防行业的发展提供了广阔的平台,促进了 ...… 查看全部问答> |
|
现在情况是这样的 我没有BSP,没有NK工程,想在现有的CE系统下自启动我的程序,我在注册表中添加了 [HKEY_LOCAL_MACHINE\\init] \"Launch70\"=\"\\NandFlash\\application\\execstart.exe\" 发现可以自启动,但是,系统先进入CE ...… 查看全部问答> |
|
[求助] 还是关于linux下读写 gpio端口控制寄存器的问题 前一次发帖问的关于这个问题内容如下: 我用的是s3c2410的开发板,linux操作系统,我知道在arm下读写io要用/dev/port,但是 相应io的控制寄存器如何读写,是否也是用port文件,同样的方法? 下面直接读取的方法应该不行吧: &nbs ...… 查看全部问答> |
|
我用AT24C256存储数据遇到以下问题,请DX们指教 1:按固定顺序依次存储数据,读出数据时,读出数据顺序与写入时顺序不同; 2:在地址(101~9999)内写数据时,会对地址(0~99)内的数据产生影响,给我的感觉是写入了地址(0~99)单元内。undefine ...… 查看全部问答> |
|
项目管理工程师: 年薪10-15万 执行项目计划及维护工程体系(新产品导入及量产) 编制锂离子电芯生产工艺指示 推动工艺分析及改善 提高原材料利用率和产品良率 提高生产效率 改善产品可靠性和安全性 本科五年工作经验/硕士三年工作经验 ...… 查看全部问答> |




