摘 要: 描述了一種運用多普勒效應(yīng),基于ARM處理器實現(xiàn)的智能燈光控制系統(tǒng)。該系統(tǒng)利用ARM處理器的定時器輸入捕獲功能測量信號的多普勒頻率,通過計算模型獲得移動物體的速度,并預(yù)測其位置,控制燈光的點亮和持續(xù)時間,從而達到智能燈光照明控制,在提供照明的同時又可以節(jié)約電能,并可通過顯示屏顯示動態(tài)測量結(jié)果。
關(guān)鍵詞: 多普勒效應(yīng); 多普勒頻率; ARM微處理器; 智能燈控系統(tǒng)
中圖分類號: TN911.23?34 文獻標識碼: A 文章編號: 1004?373X(2016)11?0133?03
Abstract: An intelligent lighting control system based on Doppler effect and ARM processor is described in this paper. The system uses the timer′s input capture function of the ARM processor to detect the signal′s Doppler frequency, acquires the speed of moving target through the calculation model and predicts its location, and controls the startup time and duration time of the lights to realize the intelligent lighting control. The system can provide lighting, save the electric energy, and display the dynamic measurement results through the display screen.
Keywords: Doppler effect; Doppler frequency; ARM processor; intelligent lighting control system
近年來,隨著中國經(jīng)濟的高速發(fā)展,道路交通網(wǎng)絡(luò)越來越完善,汽車逐漸普及,城市的交通問題已經(jīng)成為人們關(guān)注的焦點,城市道路照明的重要性也日益增大。我國大部分城市的路燈照明都采用恒定的光照度進行照明,這種方式不能很好地節(jié)約城市的用電量,不符合低碳經(jīng)濟的原則,部分城市采用光控和時控方式,只是按照不同時間段分次變化路燈的光照度,或采用ZigBee組網(wǎng)技術(shù)進行光照度的智能控制[1]。多普勒智能燈控系統(tǒng)能根據(jù)行駛車輛的相應(yīng)速度對路燈進行開關(guān)的智能控制,節(jié)約電能。
1 多普勒測速原理
多普勒效應(yīng)是普遍的波動現(xiàn)象,當信號源相對接收者有徑向運動時,接收信號的頻率將改變[2]。系統(tǒng)采用的多普勒模塊不停地向外發(fā)出探測信號,如果探測信號接觸到移動的物體,探測信號的頻率升高或者降低的數(shù)值為多普勒頻率。
2 多普勒測速系統(tǒng)電路設(shè)計
系統(tǒng)采用HB100多普勒微波傳感器,當HB100檢測到物體的運動,微波頻率將產(chǎn)生偏移[5],但是HB100檢測到的信號不能直接被微處理器處理。檢測到的信號要經(jīng)過一個信號調(diào)理系統(tǒng)[6],經(jīng)過放大和整形后才能接入微處理器,從而利用微處理器對信號進行處理,再計算出所需的結(jié)果。
多普勒智能燈光控制電路主要由探測電路、晶體管放大電路、555整形電路以及以ARM Cortex?M3處理器為核心的處理電路組成,如圖1所示。IF 的輸出幅度與物體的大小、距離有關(guān),由于從HB100的IF端口輸出的信號只有微伏級別,不利于實現(xiàn)信號的探測處理,所以必須經(jīng)過放大、濾波以及整形處理。最后,信號再經(jīng)過由ARM Cortex?M3內(nèi)核的開發(fā)板組成的處理電路計算出人或車輛經(jīng)過的時間,確定亮燈時間,LED就按照確定的亮燈時間被點亮。
3 多普勒測速系統(tǒng)的軟件設(shè)計
3.1 控制模塊及定時器輸入捕獲功能
STM32F103RBT6是基于ARM Cortex?M3內(nèi)核的微處理器。ARM Cortex?M3內(nèi)核具有高性價比、開發(fā)門檻底、易于使用、成本低、功耗小的優(yōu)點。在處理器中加入了中斷控制器(NVIC)功能,使得可以輕易地配置中斷處理,常用于工業(yè)控制動力設(shè)備,工廠自動化及控制以及樓宇家庭智能控制等領(lǐng)域[7?8]。STM32F103RBT6產(chǎn)品中內(nèi)置3個同步的標準定時器,任意一個標準定時器都能用于產(chǎn)生PWM輸出,每個定時器都有獨立的DMA請求機制,輸入捕獲模式可以用來測量脈沖寬度或者測量頻率。
3.2 主程序設(shè)計
系統(tǒng)軟件采用Keil軟件開放平臺,利用C語言進行編程。在主程序中,對各個要應(yīng)用到的模塊進行初始化配置并允許使用相應(yīng)的功能。串口的初始化可以使ARM處理器與計算機進行通信。通過在計算機端安裝串口軟件,能便利地在計算機上查看測量的結(jié)果。時鐘是處理器工作的重要條件之一,時鐘的中斷設(shè)置關(guān)系到程序能否正常運行。對于GPIO管腳的設(shè)置,在程序中設(shè)置了三個板載的LED燈以及定時器的輸入管腳。對于測量的結(jié)果,既可以利用串口,通過計算機觀察,又可以利用開發(fā)板具有的顯示屏來觀察。在對測量結(jié)果顯示前,要對顯示器初始化。最后是配置定時器,可以設(shè)置定時器的自動重載值、時鐘分頻、通道、觸發(fā)信號、輸入預(yù)分頻等參數(shù)。
這一系列的設(shè)置都完成后,程序就進入一個檢測狀態(tài)。不斷地檢測PA7管腳的電平狀態(tài)。當PA7的電平大于2 V,程序進入定時器中斷;反之,繼續(xù)檢測PA7的電平狀態(tài)。主程序流程圖如圖2所示。
3.3 定時器中斷子程序設(shè)計
定時器中斷為電平觸發(fā)方式,當PA7管腳有2~3.3 V的脈沖輸入時,進入定時器中斷程序[9]。定時器記錄接收到第一個上升沿的時間,當檢測到第二個上升沿時,定時器再記錄一次時間,這樣就可以知道輸入脈沖的頻率。
進入定時器中斷子程序后,首先將中斷標志位清除以免不能跳出中斷。將定時器之前記錄的時間賦值給IC2變量。然后對IC2進行檢測,當IC2等于0,跳出定時器中斷子程序。當IC2不等于0,則根據(jù)IC2計算出信號的頻率,再利用本系統(tǒng)的測速算法得出被測物體的速度。點亮LED,延遲LED燈的點亮?xí)r間。這里的延時是被測物體以當前速度經(jīng)過20 m距離的時間。最后,將測量的結(jié)果用開發(fā)板的TFT LCD屏幕顯示出來,然后跳出定時器中斷,返回主程序,如圖3所示。
3.4 計算模塊設(shè)計
在式(1)中,發(fā)射頻率取決于多普勒探測模塊,對于本系統(tǒng)使用的HB100多普勒模塊,其發(fā)射頻率為10.525 GHz,c為光速,為0°,多普勒頻率由處理器測量。因此多普勒頻率為未知變量,只要將多普勒頻率測出來就可以知道物體移動的速度。
3.5 亮燈模塊設(shè)計
在STM32F103RBT6板中,GPIO最常用來控制LED的亮滅、產(chǎn)生PWM信號和驅(qū)動蜂鳴器等。通過軟件的配置可以將GPIO端口的每個位設(shè)置成多種模式。每個GPIO端口位可根據(jù)需要來編程,但是在訪問GPIO端口寄存器時一定要按32 B。GPIO輸入輸出速度有2 MHz,10 MHz,50 MHz三種。在開發(fā)板中,配備了3個LED指示燈,由GPIO管腳控制LED的亮滅,當GPIO管腳輸出為低電平時,LED指示燈亮。反之,當GPIO管腳輸出為高電平時,LED指示燈滅。
3.6 延時模塊設(shè)計
SysTick定時器是ARM Cortex?3內(nèi)核的一部分。SysTick實際就是系統(tǒng)滴答定時器,主要是為系統(tǒng)提供一個硬件上的中斷。SysTick部分內(nèi)容屬于NVIC控制部分,可以為系統(tǒng)提供一個時基,同時SysTick的精確定時也可以用來作為延時。
3.7 顯示模塊設(shè)計
在STM32F103RBT6主板上外接2.8寸TFTLCD屏幕,采用ILI9320控制器,LCD屏為320×240分辨率,16位真彩顯示。ILI9320控制器利用帶有262 144種顏色的單芯片SoC驅(qū)動,利用LCD顯示屏將測量到的數(shù)據(jù)顯示在屏幕上,方便查看結(jié)果。
4 實驗測試結(jié)果
利用信號發(fā)生器的TTL輸出對硬件電路的輸入信號進行模擬。信號發(fā)生器輸出的是2.5 V的高電平,而且是頻率可調(diào)節(jié)的信號。將TTL信號接入處理器的PA7管腳。TTL信號如圖4所示,輸入TTL信號時處理器顯示的數(shù)據(jù)如圖5所示。顯示屏上依次顯示輸入信號的頻率、該頻率對應(yīng)的速度和LED燈的亮燈時間。其中亮燈時間是根據(jù)所測速度通過20 m距離的時間確定的。
在軟件測試時不斷地改變TTL輸入信號的頻率,并記錄處理器測量的結(jié)果。將測量到的數(shù)據(jù)畫成頻率數(shù)據(jù)折線圖,如圖6所示。在軟件測試過程中,處理器可測到35 Hz~80 kHz之間的頻率。在測速系統(tǒng)中,只需要準確測到35~3 500 Hz之間的頻率,這個頻率范圍對應(yīng)的速度是0.5~50 m/s,即1.8~180 km/h。
5 結(jié) 語
本文著重介紹了多普勒測速系統(tǒng)的硬件和軟件設(shè)計。由以上實驗結(jié)果可知,處理器能準確測到35 Hz~3 500 Hz的頻率,對應(yīng)的速度為0.5~50 m/s。在實際的路面交通情況中,這個速度范圍已經(jīng)足夠。系統(tǒng)采用微波測速方法,測量精度較高。多普勒智能燈控系統(tǒng)符合低碳經(jīng)濟的原則,而且有利于達到節(jié)能減排的目的。結(jié)合ARM處理器高性能、廉價、耗能低的特點,該系統(tǒng)具有良好的應(yīng)用價值。
參考文獻
[1] 張艷.基于ZigBee的LED路燈智能控制系統(tǒng)設(shè)計[J].電子技術(shù)與軟件工程,2014(9):89.
[2] 劉廣生,李慧.多普勒效應(yīng)及其應(yīng)用[J].南陽師范學(xué)院學(xué)報,2006(6):37?38.
[3] 彭登,徐建閩,曾翼.基于ARM920T內(nèi)核的雷達測速儀設(shè)計與算法研究[J].計算機工程與設(shè)計,2011,32(1):99?102.
[4] 辛紅偉,唐慧強,彭樹生.多普勒路燈智能控制器及其應(yīng)用方案研究[J].電力電子技術(shù),2007,41(10):31?33.
[5] 孫靜.城市交通區(qū)間測速算法研究[J].赤峰學(xué)院學(xué)報(自然科學(xué)版),2012(18):15?16.
[6] 閻平,藍天,李翠玲,等.激光多普勒測速實驗系統(tǒng)的信號處理[J].光學(xué)技術(shù),2000,26(4):377?382.
[7] 陳致遠,朱葉承,周卓泉,等.一種基于STM32的智能家居控制系統(tǒng)[J].電子技術(shù)應(yīng)用,2012,38(9):138?140.
[8] 李漢.基于ARM7的精確測速系統(tǒng)設(shè)計[J].電氣自動化,2010,32(2):82?85.
[9] 王耿,王金明,張鵬.一種基于ARM和DSP的信號處理平臺[J].軍事通信技術(shù),2011,32(1):50?54.