王媛媛, 段敏杰, 童 軍
(西安科技大學 電氣與控制工程學院 微電子創新實驗室,陜西 西安 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應用設計實踐教學工作。