王媛媛, 段敏杰, 童 军
(西安科技大学 电气与控制工程学院 微电子创新实验室,陕西 西安 710054)
FPGA的室内空气质量检测与调节系统
王媛媛, 段敏杰, 童 军
(西安科技大学 电气与控制工程学院 微电子创新实验室,陕西 西安 710054)
提出了一种基于现场可编程门阵列(FPGA)的无线室内空气质量检测与调节系统设计方法,并对数据采集、蓝牙通信、步进电机驱动控制原理和系统方案进行了全面分析。实验结果证明:系统实现了对室内温度等质量信息的采集、LCD显示、通信、上位机远程调节处理等功能,保证了室内空气质量检测数据的实时性、可靠性。系统适用于智能、绿色家居,以及蔬菜种植大棚等需要对空气质量进行评价的场所。
现场可编程门阵列; 蓝牙; 步进电机; 空气检测
随着社会进步和经济的发展,人们越来越崇尚优越、舒适、安全的室内环境,但各类建材、家用电器、天然气等进驻室内,给人们带来方便,同时它们所造成的室内污染、危害也令人担忧[1]。室内空气污染给社会、家庭和个人带来巨大的损失[2]。因此,研究设计室内空气质量检测系统以提高人们生活的质量,保障安全有着非常重要的意义。
同时,在数字电路设计中,FPGA发挥着越来越重要的作用,从简单的接口电路设计到复杂的状态机甚至系统级芯片(system on chip,SoC), 现场可编程门阵列(FPGA)所扮演的角色越来越不容忽视。目前,PFGA已跃居成为电子应用(包括通信、自动控制、计算机等)领域广受欢迎的实用化技术,成为数字系统的科研实验、样机试制、小批量产品实现的最佳途径[4]。
针对室内空气质量问题,本文基于现场可编程门阵列(field programmable gate array,FPGA)开发平台,采用数字传感技术,设计了智能室内空气质量检测与调节系统,系统具有操作简单,实时性、可靠性高,方便维护、升级,智能化、网络化[5]等特点。
系统硬件为Cyclone系列FPGA开发平台,软件开发环境为Quartus II 13.0,采用硬件描述语言(VHDL)完成数据流描述。
基于FPGA的无线智能室内空气检测与调节系统结构如图1所示。
图1 系统结构框图Fig 1 Structure block diagram of system
传感器数据采集模块包含温度传感器、烟雾传感器等,
其将采集到的温度以及CO,CO2,PM2.5等数据信息传送给FPGA主控单元,FPGA将获得的数据进行处理,送LCD液晶模块进行显示,同时通过蓝牙无线传输将信息发送给手机,用户可根据手机显示信息,通过手机界面控件对调节机构发出调节命令,执行机构将完成比如电风扇的开关、风速控制、室内室外空气交换等操作。
2.1 数据采集模块
数据采集模块的主要功能就是利用传感器获得各类室内空气质量信息数据,比如温度以及CO,CO2,PM2.5等,然后将数据传送给FPGA主控器进行处理。本系统中使用到的传感器有:温度传感器、烟雾传感器、PM2.5检测传感器。其中温度传感器采用的是1线器件DS18B20—数字温度传感器,它可以提供9~12位的数据来表示不同的温度,位数越高,测量温度的精度越高,且具有体积小,适用电压宽、经济等特点[6]。
2.2 通信模块
通信采用HC—06从机蓝牙模块,主要用于短距离的数据无线传输领域,可以方便的和PC机或带蓝牙功能的设备相连,也可以两个模块之间进行数据互通。避免繁琐的线缆连接,能直接替代串口线,配对后只需当成固定波特率的串口一样使用即可。系统采用该蓝牙模块实现了手机终端和FPGA之间的通讯。
2.3 上位机界面设计
基于智能手机的广泛使用,及携带方便、实时性好等特点,系统上位机采用手机APP界面,作为用户监测室内空气质量、进行相应调节的操作平台。主要完成与下位机通信并将通信得到的如系统工作模式、风扇当前的档位、当前室内温度等信息进行显示,以及用户可根据显示信息,通过手机界面按键完成相应的调节,如根据温度信息进行风扇转速的调节,根据室内空气质量信息,控制滤网开合,实现向室内送风或往外排风等。上位机操作界面如图2(a)所示,具体按键功能如下:‘1’,‘3’,‘0’为保留按键,‘2’风扇转速加,‘4’,‘5’风扇转向设定,‘5’风扇工作模式切换,‘7’,‘9’增/减定时时间,‘8’风扇转速减。下位机状态返回界面如图2(b)所示,返回的数据是ASCLL量,表示当前室内温度、风扇工作模式、档位等,上位机显示字符量,以保证通信内容的可靠性。
图2 上位机操作界面和下位机状态返回界面Fig 2 Operation interface of upper PC and state-return interface of lower PC
2.4 FPGA数据处理模块设计
FPGA数据处理模块是控制系统的主控器—核心单元,属于系统软件部分,采用模块化设计思想及VHDL硬件描述语言,实现了算法及数据处理。主要包括室内空气质量信息采集处理模块、蓝牙数据处理模块、计时显示模块、步进电机驱动模块、按键消抖模块等。实现了对从各类传感器获得的数据进行转换处理,室内空气质量信息的字符转换与显示,步进电机驱动程序设计等功能。
2.4.1 蓝牙数据处理模块
该模块是FPGA与上位机通信的桥梁,采用状态机进行设计,其接收模块状态转换过程如图3所示。
图3 蓝牙接收状态机Fig 3 State machine of Bluetooth receiving
蓝牙模块和FPGA通信采用串口方式,当没有数据采集和发送时,状态机处于空闲(idle)状态,当RXD接收信号引脚接收到低电平时,状态机转换至adjust状态并判断此信号是属于干扰信号还是起始位,如果是起始位,则状态进入接收(receive)状态,否则转回idle状态等待;当进入receive状态时,处理完一帧数据后将其并行输出,同时转至发送(trans)状态,将数据发送给上位机,并转入idle状态,等待下一次传送。
2.4.2 步进电机驱动模块
步进电动机是一种将电脉冲信号转换成相应角位移或线位移的电动机,它的运行需要专门的驱动电源,驱动电源的输出受外部的脉冲信号控制。每一个脉冲信号可使步进电机旋转一个固定的角度,这个角度称为步距角,本设计中将步距角设置为45°。脉冲的数量决定了旋转的总角度,脉冲的频率决定了电动机旋转的速度,改变绕组的通电顺序可以改变电机旋转的方向[7,8]。
系统通过对步进电机转向的控制来驱动风扇、滤网等调节机构完成室内外空气交换处理,实现改善室内空气质量的目的,步进电机的驱动电路采用VHDL进行设计,该电路模块端口设计为:一个系统时钟(clk)输入信号;两个按键输入分别为key1和key2,实现脉冲个数的增减以控制电机的转向;4路输出驱动信号(a,b,c和d),分别驱动步进电机的4个线圈A,B,C,D。
2.5 电机控制模块设计
2.5.1 电机控制模块原理
电机控制原理如图4所示,光电开关将轴流风机的实时转速反馈给FPGA控制器,FPGA内部将实现以下功能:1)将实时转速送LCD进行显示;2)输入的设定值与反馈信号进行比较;3)对速度偏差进行比例积分微分(proportion integration differentiation,PID)调节,校正步进电机驱动脉冲,使电机以给定转速稳定运转。
图4 电机控制系统结构图Fig 4 Structure diagram of motor control system
2.5.2 PID控制算法设计
PID调节器是一种线性调节器,它将给定值与实际值偏差的比例、积分、微分三者通过线性组合构成控制量,对被控对象进行控制,是控制系统中应用最为广泛的一种控制规律,控制原理如图5所示。
图5 PID控制原理Fig 5 Principle of PID control
PID算法是将描述连续过程的微分方程转换为差分方程,然后根据差分方程编写程序进行控制计算。PID算法表达式为:
第k时刻的输出量
(1)
第k-1时刻的输出量
e(k-2)]
(2)
第k时刻输出增量为
Δu(k)=kpΔe(k)+kIe(k)+kd[Δe(k)-Δe(k-1)]
(3)
式中 kp为比例系数;kI为积分系数;kd为微分系数。
输出控制量的增量Δu(k)与系统采样周期以及kp,kI,kd有关[9],设计采用硬件描述语言VHDL实现了式(3)增量式PID算法,然后根据电机实际运行情况,进行参数整定,得到最佳取值。
2.6 液晶显示模块
显示模块用于显示传感器采集到的温度等信息,选用了1 602液晶显示屏,它能够同时显示16×02即32个字符,是一种专门用来显示字母、数字、符号等的点阵型液晶模块。由若干个5×7或者5×11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用。主程序采用状态机形式编写,采用计数进行延时,并且省略了忙状态的读取,直接用延时来代替忙检测,将送进来的数据进行动态显示。
系统在实验室条件下,基于FPGA开发平台(主芯片:EP4CE6F17C8N),选用了轴流风机及步进电机,搭建了相应的外围电路,完成了软硬件联合调试验证,验证结果表明,系统能够实现以下功能:1)实现了对室内空气温度、PM2.5等数据的采集与显示;2)实现了手动及自动对风扇的开启、转速的实时显示与调节;3)实现了对步进电机转向的控制;4)实现了通过手机对室内空气质量进行实时监测与远程操控。
本文基于FPGA开发平台,结合数字传感技术及蓝牙通信技术,设计了无线智能空气质量检测与调节系统,实现了对室内温度等质量信息的采集、显示、通信、上位机远程调节处理等。系统具有可靠性高、移植性好、智能化、网络化等特点,保证了室内空气质量监测的实时性,对保护人们的健康和安全有着现实意义。本系统除可以应用于智能家居外,还可以用于办公场所、蔬菜种植大棚、化工生产车间等需要对空气质量进行评价的场所。
[1] 李 萍.基于ARM的室内空气质量监测系统的设计[D].成都:西南交通大学,2010.
[2] 郭威彤,宋海声,杨鸿武,等.一种便携式室内空气质量快速检测仪设计[J].传感器与微系统,2015,34(4):92-94.
[3] 陆重阳,卢东华.FPGA技术及其发展趋势[J].微电子技术,2003,31(1):5-7.
[4] 陈欣波.AlteraFPGA工程师成长手册[M].北京:清华大学出版社,2012:28-105.
[5] 范奥博,铁治欣,吴铭程,等.室内空气质量监测系统的设计[J].浙江理工大学学报:自然科学版,2015,33(3):382-387.
[6] 汤锴杰,栗 灿,王 迪,等.基于DS18B20的数字式温度采集报警系统设计[J].传感器与微系统,2014,33(3):99-102.
[7] 陈俊硕,刘景林,张金萍.基于FPGA的直流电机PWM控制器设计[J].微电机,2009,42(10):23-24.
[8] 顾瑞娟,王 宇,张善从.基于FPGA步进电机驱动控制系统设计[J].计算机工程与设计,2012,33(1):111-114.
[9] 刘雪薇,李志俊,凡胡荣,等.基于FPGA的直流电机转速控制系统设计[J].武汉理工大学学报:信息与管理工程版,2013,35(5):650-653.
Detecting and adjusting system for indoor air quality based on FPGA
WANG Yuan-yuan, DUAN Min-jie, TONG Jun
(Micro Electronics Innovation Laboratory,College of Electrical and Control Engineering,Xi’an University of Science and Technology,Xi’an 710054,China)
A way to detect and adjust indoor air quality by wireless is proposed based on field programmable gate array(FPGA),and data collection, Bluetooth communication,drive and control principle for stepping motor are analyzed.Experimental results show that the system realizes functions of information collection of temperature indoor,display on LCD,communication and remote adjustment and processing by upper PC.It assures detect real time and reliability of indoor air quality detecting data.The system can be used in place which air quality is hoped to be evaluated,such as green smart home,vegetable planting greenhouse and so on.
field programmable gata array(FPGA); Bluetooth; stepping motor; air detection
10.13873/J.1000—9787(2016)12—0140—03
2016—03—05
TN 99
A
1000—9787(2016)12—0140—03
王媛媛(1980-),女,陕西榆林人,硕士,工程师,从事集成电路设计与FPGA应用设计实践教学工作。