基于FPGA的智能温室控制系统的研制

2012-08-14 03:25柳爱珍汪小旵
中国蔬菜 2012年18期
关键词:执行机构测控上位

柳爱珍 汪小旵

(南京农业大学工学院,江苏省智能化农业装备重点实验室,江苏南京 210031)

在温室的测控系统中,涉及核心控制器、测控技术和决策支持系统的研究,从最初的有线连接发展到现在普遍使用无线传感网络进行组网连接,无线传感网络又涉及GPRS(刘会忠 等,2010)、WIFI(曾欢和刘毅,2008;马增炜 等,2011)、蓝牙技术(LI & LIU,2006)以及 ZigBee(BAO,2008)技术等;核心控制器囊括了单片机(戴勇 等,2009),工控机(金钰,2000)、PLC(唐立伟和刘理云,2009)、DSP(吴卫明 等,2007)、ARM(王石磊 等,2008)等;决策支持系统涵盖了经典控制理论中的 PID控制(李纪文 等,2009),智能控制理论中的模糊控制(邱小花和王民,2008;倪军 等,2009)和神经网络控制(彭捍东和张敏,2004)等。

但上面提及的核心控制器都是基于软件的,诸如基于单片机的测控系统,单片机时钟频率较低,而且软件运行时间在整个采样周期中也占很大比例(赵泓扬,2009)。因此科技工作者开始将眼光从基于软件的温室系统研究转移到基于硬件的温室系统研究上来。笔者提出了一种基于FPGA(Field Programmable Gate Array)的温室测控系统的研究方法,FPGA即现场可编程门阵列,是一种基于硬件电路的设计方法,此种方法开发周期短,集成度高,功耗低,工作效率高,设计费用低,编程配置灵活;另外它可以在 FPGA内部进行采集控制、缓冲、处理、传输控制等,这些都是由 FPGA逻辑实现,无需添加额外的硬件资源,所以在温室中进行使用、维修或是升级的时候只需更改其硬件资源,简单方便,减少了成本,故可以广泛应用。

1 系统的设计

1.1 系统的组成

FPGA的一个主要设计技巧就是模块化设计,它能够使一个大型设计分工协作,仿真测试更加容易,使代码维护或升级更加便利(吴厚航,2010)。

根据这一设计技巧,将整个系统分为以下模块:输入输出模块、异步串行通信模块、人机交互模块以及其他模块,具体测控系统框图如图1所示。

输入模块由传感器和A/D调理电路组成,输出模块即为继电器接触控制电路和温室内执行机构。人机界面使用LCD液晶实时显示温室内环境信息。FPGA与上位机使用串口的无线模块实现连接,使系统更加简洁。因为FPGA是基于RAM的,掉电信息丢失,所以设计添加SDRAM模块,如此上电以后,信息可以自行配置。另外,数据从 FPGA缓存中传输给上位机进行存储的时候,利用FIFO先入先出的特性,有序、高效地进行数据的传输。

1.2 系统设计

1.2.1 数据采集显示部分 在前面介绍的测控结构中,输入模块即为数据的采集模块,其中包括传感器模块、调理转换模块、主控模块和显示模块。其结构框图如图2所示。

传感器中包括温湿度传感器和光照度传感器,温湿度传感器为 DHT21。调理电路可以对采集到的波形进行滤波放大。A/D转换芯片采用ADC0809芯片,将采集到的模拟信号转换为数字信号。FPGA主控芯片采用Altera公司的CycloneⅡ系列的EP2C8Q208C8芯片。此芯片是整个系统的核心,它采用PQFP的封装形式,有208个引脚。FPGA主控模块与上位机使用串口的无线模块实现通信。人机界面即为LCD图形液晶显示模块和蜂鸣器超限报警模块。FPGA开发板上有对应于LCD的接口,只需将其接入到FPGA开发板上,LCD显示模块采用128×64的图形液晶。

图1 测控系统结构

图2 数据采集显示系统结构

在此款FPGA芯片上,共预留了56个I/O口供用户自己定义,DHT21有3个引脚,一个电源引脚(引脚1),一个为数据输入和输出引脚(引脚2),最后一个为接地引脚(引脚3)。引脚2为温湿度采集信号的输出脚,通过拉高或拉低此引脚的电平对芯片发送指令。在程序设计中,先是拉高引脚2(此为空闲状态),通讯开始时,先将此引脚拉低500 μs,继而拉高20~40 μs开始检测DHT21的响应信号,这部分操作要求引脚2为输入引脚。在DHT21的响应中,此引脚又变为输出引脚,因而在程序设计中要将此引脚设计为inout类型。此部分的接口定义如下。

module acquire_drive

input clk,

input rst_n,

inout one_wire, //One-Wire总线

output [15:0] rh_data_out, //输出湿度值,高四位为零

output [15:0] t_data_out, // 输出温度值,其最高四位为其符号位

output [15:0] RH_data,

output [15:0] temp_data, //此两个输出,是温湿度的十倍值

output [1:0] led,

output enout //成功采集到信号的标志位

);

Clk和rst_n为时钟信号和异步复位信号,因为系统频率高达50 MHz,所以需要使用PLL(Phase-Locked Loop),即锁相环对其进行分频;one_wire连接到引脚2的温室数据采集端,为双向 I/O口,在使用 verilog编程时定义为wire类型,通过ctrl位使能信号,ctrl为高电平时为输入,低电平时为输出,Verilog HDL的语言描述为assign one_wire=ctrl?1'd0∶1'dz。此模块经过QuartusⅡ软件编译后,生成的RTL(Register-Transfer-Level)图如图3所示。

图3 数据采集模块的RTL图

另外,由于传感器的工作电压是5 V,而FPGA的引脚的正常工作电压是3.3 V,所以需要使用升压芯片将此电压升至5 V。在本设计中使用的升压芯片是SYS1.2,它可将1.2~5.0 V的电压升至3.3 V或是5.0 V,由使能端控制其具体输出。

蜂鸣器报警模块是为防止温室内温度过高或是过低,并且执行机构发生故障中断运行时发出警报。查阅资料后将温度的上下限分别设为40 ℃和5 ℃(王丽艳 等,2008)。其接口定义如下。

module alert_drive

Input clk,

Input rst_n,

Input enout,

Input〔15:0〕 temp_data,

output fm

);

Temp_data为数据采集模块所获得的温度值,在顶层模块中,将其定义为 wire类型,就可以在任意底层模块中被调用。Fm为蜂鸣器输出,它在时钟复位后一直保持高电平,当上述限制条件满足时,就被拉低,发出报警声。

数据采集之后存储在FPGA芯片的缓存模块SDRAM中,进行到这一步,已经完成了数据的采集任务,下一步就是将数据送至LCD和上位机显示。LCD选用128×64的图形液晶,同样,它也是依靠 FPGA实现其全部逻辑,包括初始化、写指令和写数据等,使用有限状态机进行设计。其结构框图如图4所示。

图4 LCD控制逻辑

其步骤如下:使RW=0,始终为写操作,因为 LCD的指令寄存器和数据寄存器是复用的,所以令RS为零,为写指令操作,对液晶屏的片选信号、状态信号、数据信号和使能信号进行初始化;之后将RS置为1,进入写数据操作,将要显示的字符送至 LCD显示。转换控制即为FPGA主控芯片。时钟驱动为FPGA的分频信号。其接口定义如下。

module lcd12864_drive

Input clk,

Input rst_n,

input〔23:0〕 t_val,

input〔23:0〕 rh_val,

output lcd_rw,

output lcd_en,

output reg lcd_rs,

output reg〔7:0〕 lcd_data

);

128×64 LCD液晶显示器可以通过选择设置页地址显示8页的内容,所以,系统上电以后首先显示的是欢迎界面,开始采集后,就进行温室数据的实时显示。设计时使用 FPGA自带的IP核——ROM模块。使用画图软件设计出128×64 bit的黑白图片,借助字模提取软件提取字模,通过KEIL软件生成.HEX文件,再将其添加到此模块的目录文件下,程序中调用此ROM模块就可以显示设计的界面了。在显示中不需要变化的部分都是通过此方法实现的,需要刷新显示的部分在顶层模块中给出。

LCD实现的是数据的实时显示,液晶屏上会显示当前的时刻以及采集到的环境因子信息,要实现数据的存储,仅依靠 FPGA的缓存是远远不够的,所以需要不定期地将采集到的数据传输至上位机进行存储,上位机也可以编写监控界面,实现温室的远程监控。图5为LCD的温湿度显示。

上位机界面采用VC++编程实现,使用串口进行数据传输,其RTL级图如图6所示。界面上不仅实时显示环境因子的值,还可对往期信息进行查询。另外,监控界面上还有对温室执行机构的控制按钮,最后实现的效果就是在监控室内也可以对温室进行远程控制。

1.2.2 温室控制部分 在温室控制方面,本系统使用的是分段式控制,即当温室内的温度或是湿度达到某一设定范围时,就控制某一个或是两个执行机构进行动作。另外借助于串口继电器的无线模块设计,以实现无线控制。

在上位机监控界面上,除了显示有温室内采集的环境因子信息,还有当前对应各个执行机构的开关按钮以及其当下处于的状态。对于控制部分最后要实现的效果就是:(1)自动控制,即系统将采集到的温室内环境因子的信息,与设定的分段式控制的温湿度等信息进行对比,达到其中的任一范围时就自动控制温室中的某一个或是几个执行机构进行动作。(2)手动控制,即在监控室内,也可人为地通过监控界面上的按钮,控制温室内的执行机构进行动作。在设计中,为温室安装 CCD摄像头,可以在观察作物长势的同时观察执行机构是否运行良好。

图5 LCD显示温湿度

图6 串口传输模块RTL级图

2 实证试验

在系统设计完成之后,将此装置安放在南京农业大学工学院实验楼楼顶的温室里进行实证试验,该温室长16 m,宽8 m。试验分两个步骤进行,首先是采集显示部分的试验,将设计好的采集装置置于温室中,可手动设定其采集周期,查看在上位机和LCD上是否能按要求进行显示,当然这些试验的前提都要在仿真编译软件上,将其进行仿真编译通过以后才进行的,出现问题以后再逐个解决。第二部分是控制部分的试验,开始使用有线控制,因为无线控制容易受外部信号的干扰,可能会出现工作不稳定的状态。在确保有线控制能取得预期控制效果的前提下,将有线控制部分,用串口的无线收发模块代替,再进行调试,直到取得预想的控制效果。图7为2012年6月25日将此系统应用在温室中控制后的温湿度曲线图。

图7中温湿度均为实际值的10倍。由图7可知,在7:00以后,太阳辐射逐渐增强,温室中的温度开始缓慢上升,伴随着湿度缓慢下降。在12:00的时候,首次达到控制的设定值,所以温室打开喷淋进行降温,同时温室湿度上升;同理,在14:00、15:00和临近17:00的时候,分别进行了3次喷淋降温,从图7上可以看出,降温效果明显,达到了控制的要求。

图7 温湿度控制曲线

3 结语

不同于众多使用软件实现温室测控的设计,本系统使用了基于 FPGA的温室测控系统的设计。使用EP2C8Q208C8芯片作为主控芯片,借助ADC0809实现数据的数模转换,同时在LCD图形液晶上显示温室内实时的环境因子信息。在上位机上除显示有环境因子信息外,还设计了主控界面,可以实现对温室的手动控制。此种基于硬件电路的设计方法时钟频率高,响应及时,能够完成对温室内温湿度的采集、显示,以及对温室的控制。此外,这套系统价格并不昂贵,硬件成本在2 000元左右,适用于一般的中小型温室。

戴勇,周建平,梁楚华.2009.基于AT89S52单片机的多功能智能温室测控系统.农机化研究,(5):135-139.

金钰.2000.工业控制计算机在自动化温室控制中的应用.工业控制计算机,13(1):16-18.

李纪文,骆德渊,刘荣.2009.数字PID在温室环境自动控制中的应用.农机化研究,(1):205-207.

刘会忠,吴修文,冯晓霞,魏富奎.2010.GPRS技术在温室大棚环境监控中的应用.农业装备与车辆工程,(4):52-54.

马增炜,马锦儒,李亚敏.2011.基于WIFI的智能温室监控系统设计.农机化研究,(2):154-158.

倪军,毛罕平,程秀花.2009.基于FPGA的联合收获机脱离滚筒模糊控制系统.农业机械学报,40(7):83-87.

彭捍东,张敏.2004.温室环境神经网络建模与自适应模糊控制算法研究.曲阜师范大学学报,30(3):11-13.

邱小花,王民.2008.基于FPGA的粮食干燥过程模糊预测控制系统.农机化研究,(4):114-116.

唐立伟,刘理云.2009.基于PLC的智能温室综合控制系统的研发.自动化技术与应用,(7):106-108.

吴厚航.2010.深入浅出玩转FPGA.北京:北京航空航天大学出版社:34.

吴卫明,黄晓鹏,万芳新.2007.基于DSP的模拟温室环境监控系统.滁州学院学报,(3):51-54.

王丽艳,邱立春,郭树国.2008.温室黄瓜经济最优目标的试验研究.北方园艺,(11):75-76.

王石磊,郭艳玲,付志刚.2008.基于ARM的温室环境控制系统研究.林业机械与木工设备,(36):19-21.

赵泓扬.2009.基于FPGA的数据采集系统的设计.常州工学院学报,22(1/2):34-36.

曾欢,刘毅.2008.嵌入式WiFi技术在温室环境监测系统中的应用.林业机械与木工设备,36(2):49-53.

BAO MingJun.2008.Research on the application of ZigBee technology in monitoring and control system of greenhouse.Journal of Agricultural Mechanization Research,2:184-187.

LI Li,LIU Gang.2006.Design of greenhouse environment monitoring and controlling system based on bluetooth technology.Transaction of the Chinese Society for Agricultural Machinery,37(10):97-100.

猜你喜欢
执行机构测控上位
中寰气动执行机构
昆山祺迈测控设备有限公司
气动执行机构技术分析
要攻城略地关键要有好筹码,这匹水产动保“黑马”如何能迅速上位?
特斯拉 风云之老阿姨上位
基于现代测控技术及其应用分析
基于ZigBee和VC上位机的教室智能监测管理系统
虚拟仪器技术在农业装备测控中的应用
向着新航程进发——远望7号测控船首航记录
弹道修正执行机构综述