劉立軍
(遼寧機(jī)電職業(yè)技術(shù)學(xué)院 華孚儀表學(xué)院,遼寧 丹東 118009)
基于AVR單片機(jī)風(fēng)板控制系統(tǒng)的設(shè)計(jì)
劉立軍
(遼寧機(jī)電職業(yè)技術(shù)學(xué)院 華孚儀表學(xué)院,遼寧 丹東 118009)
以AVR單片機(jī)作為控制核心,設(shè)計(jì)并制作了一種能夠控制風(fēng)板的自動(dòng)控制系統(tǒng), 該系統(tǒng)利用角度傳感器實(shí)時(shí)測(cè)量風(fēng)板旋轉(zhuǎn)的角度、電機(jī)驅(qū)動(dòng)并結(jié)合軟件的算法實(shí)現(xiàn)風(fēng)板的轉(zhuǎn)角測(cè)試。該系統(tǒng)能夠通過LCD1602液晶顯示器實(shí)時(shí)顯示相關(guān)參數(shù),風(fēng)扇的轉(zhuǎn)速能夠?qū)崟r(shí)控制并伴有聲光提示等功能,該系統(tǒng)軟件設(shè)計(jì)簡(jiǎn)單、計(jì)算量小、測(cè)試角度誤差小,風(fēng)板能夠較快且較準(zhǔn)確地達(dá)到預(yù)定設(shè)置角度,并具有較好的穩(wěn)定性。通過測(cè)試數(shù)據(jù)表明,該系統(tǒng)具有一定的理論研究意義和工程實(shí)用價(jià)值。
AVR;風(fēng)板;LCD1602;轉(zhuǎn)角測(cè)試
在搖動(dòng)帆式風(fēng)力發(fā)電系統(tǒng)中,通過帆板的往復(fù)擺動(dòng)所產(chǎn)生的動(dòng)能可以驅(qū)動(dòng)發(fā)電機(jī)發(fā)電,同時(shí)這種發(fā)電系統(tǒng)具有發(fā)電效率高和良好的低風(fēng)速發(fā)電特性和優(yōu)異的耐強(qiáng)風(fēng)性特點(diǎn)。隨著智能控制技術(shù)的不斷發(fā)展,風(fēng)板控制系統(tǒng)的發(fā)展方向是數(shù)字化、智能化、高性能。風(fēng)力的大小可以利用風(fēng)板角度控制系統(tǒng)準(zhǔn)確地測(cè)量出來,這樣風(fēng)板偏轉(zhuǎn)的角度就可以準(zhǔn)確地計(jì)算出來,風(fēng)力的大小就被準(zhǔn)確地計(jì)算出來。通過大量的研究發(fā)現(xiàn),風(fēng)板角度控制系統(tǒng)已經(jīng)成為測(cè)量風(fēng)力大小的典型控制器。文章設(shè)計(jì)了一種采用AVR單片機(jī)作為主控芯片的風(fēng)板控制系統(tǒng),當(dāng)風(fēng)板垂直角度在一定范圍內(nèi)變動(dòng)時(shí),在設(shè)定的時(shí)間內(nèi),風(fēng)板控制系統(tǒng)通過按鍵設(shè)定風(fēng)板完成預(yù)置角度并完成規(guī)定動(dòng)作,系統(tǒng)對(duì)控制過程中的相關(guān)數(shù)據(jù)用LCD1602液晶顯示器進(jìn)行實(shí)時(shí)顯示[1]。
風(fēng)板控制系統(tǒng)用AVR單片機(jī)作為控制核心部件,采用高精度三軸角加速度傳感器ADXL345對(duì)風(fēng)板旋轉(zhuǎn)角實(shí)時(shí)檢測(cè),單片機(jī)對(duì)采集到的角度信號(hào)加以分析判斷處理,同時(shí)將此信號(hào)轉(zhuǎn)換成角度數(shù)據(jù)與預(yù)置角度進(jìn)行比較運(yùn)算,生成導(dǎo)通角控制量值,并通過單片機(jī)將處理結(jié)果傳送給電機(jī)驅(qū)動(dòng)器件,使其能夠控制驅(qū)動(dòng)電機(jī)調(diào)節(jié)風(fēng)扇的轉(zhuǎn)速。用獨(dú)立按鍵和液晶顯示器LCD1602作為人機(jī)交互界面,用于手動(dòng)輸入和相關(guān)參數(shù)的實(shí)時(shí)顯示。
系統(tǒng)由電源、AVR單片機(jī)、電機(jī)驅(qū)動(dòng)芯片、LCD1602液晶顯示器與聲光報(bào)警電路、輸入電路和角度檢測(cè)電路構(gòu)成[2,3],系統(tǒng)總體框圖如圖1所示。
2.1單片機(jī)控制和顯示電路
控制系統(tǒng)的核心處理芯片選用AVR系列單片機(jī)中的ATmega16[4],在風(fēng)板控制系統(tǒng)中單片機(jī)主要完成以下處理功能:1)ADXL345三軸角加速度傳感器信號(hào)的數(shù)據(jù)采集處理與信號(hào)補(bǔ)償。2)產(chǎn)成電機(jī)驅(qū)動(dòng)信號(hào)用于調(diào)節(jié)風(fēng)扇的轉(zhuǎn)速。3)控制LCD1602液晶顯示電路,用于實(shí)現(xiàn)字符、數(shù)據(jù)的實(shí)時(shí)顯示和聲光報(bào)警電路的控制。4)按鍵狀態(tài)信息的讀取,用于實(shí)現(xiàn)預(yù)置參數(shù)的設(shè)置、存儲(chǔ),控制電機(jī)的啟動(dòng)和停止等操作。
選用LCD1602液晶顯示電路,它是一款專門用于顯示字母、數(shù)字、符號(hào)的點(diǎn)陣試LCD,顯示字符為16字*2行。在本系統(tǒng)中,LCD1602要顯示的內(nèi)容包括預(yù)置參數(shù)、風(fēng)板的實(shí)時(shí)轉(zhuǎn)動(dòng)角度、控制過程完成時(shí)間和導(dǎo)通角等參數(shù)。
單片機(jī)實(shí)時(shí)顯示電路如圖2所示,AVR單片機(jī)的時(shí)鐘電路由C6、C7和8 MHz晶振構(gòu)成,顯示電路由芯片IC1、IC7和電位器R5等外圍電子元件來構(gòu)成,復(fù)位電路由R2、C8和按鍵S1組成,S1是手動(dòng)復(fù)位鍵。
2.2角度檢測(cè)電路
角度傳感器選用三軸角加速度傳感器ADXL345[5],其輸出數(shù)據(jù)為16位二進(jìn)制補(bǔ)碼格式,數(shù)據(jù)可通過SPI(3線或四線)總線或I2C總線方式訪問。角加速度傳感器ADXL345固定安裝在風(fēng)板控制系統(tǒng)的轉(zhuǎn)軸上,它隨著轉(zhuǎn)軸一起轉(zhuǎn)動(dòng),AVR單片機(jī)作為控制核心,實(shí)時(shí)采集ADXL345傳感器中的角度數(shù)據(jù),經(jīng)過運(yùn)算處理補(bǔ)償后轉(zhuǎn)換成相應(yīng)的角度值,在LCD1602顯示器上實(shí)時(shí)顯示數(shù)據(jù)。對(duì)于角度數(shù)據(jù)的處理采用累積10次采樣結(jié)果、再對(duì)其取平均值的方法進(jìn)行數(shù)據(jù)處理,這種數(shù)據(jù)處理的方法能夠有效解決風(fēng)板在擺動(dòng)過程中狀態(tài)不穩(wěn)的難題。單片機(jī)根據(jù)實(shí)時(shí)采集的角度值與預(yù)置角度值進(jìn)行比較運(yùn)算,最后產(chǎn)生調(diào)節(jié)風(fēng)扇電機(jī)轉(zhuǎn)速的導(dǎo)通角量值。
ADXL345與AVR單片機(jī)采用I2C模式進(jìn)行通信,角度檢測(cè)電路由IC1、IC8、R6、R7構(gòu)成,電路如圖3所示。
2.3電機(jī)控制電路
電機(jī)控制電路見圖4,由過零檢測(cè)電路和觸發(fā)脈沖與驅(qū)動(dòng)電路構(gòu)成[6]。過零檢測(cè)電路由變壓器、整流橋、R20、C20構(gòu)成,接入單片機(jī)PA7口,確定基準(zhǔn)點(diǎn),判斷導(dǎo)通角零點(diǎn)。兩路觸發(fā)脈沖與驅(qū)動(dòng)電路由光耦、驅(qū)動(dòng)三極管、固態(tài)繼電器等器件構(gòu)成。觸發(fā)脈沖由單片機(jī)PD4、PD5口輸出。通過對(duì)固態(tài)繼電器導(dǎo)通角的控制,調(diào)節(jié)風(fēng)機(jī)的轉(zhuǎn)速。風(fēng)機(jī)MG1、MG2采用交流220V、38W軸流風(fēng)機(jī)。
2.4輸入和聲光報(bào)警電路
在風(fēng)板控制系統(tǒng)中按鍵的主要功能是控制電機(jī)的啟動(dòng)與停止和設(shè)置風(fēng)板的轉(zhuǎn)角數(shù)值,其電路如圖5 所示。各按鍵功能為:S2:加十,執(zhí)行加十子程序;S3:加一,執(zhí)行加一子程序;S4:減十,執(zhí)行減十子程序;S5:減一,執(zhí)行減一子程序;S6:確認(rèn)。
聲光報(bào)警電路由R13、R14、發(fā)光二極管D8、三極管Q1和揚(yáng)聲器LS1等器件來組成。當(dāng)風(fēng)板轉(zhuǎn)軸旋轉(zhuǎn)到預(yù)置角度參數(shù)時(shí),由AVR單片機(jī)控制聲光報(bào)警電路工作,用于產(chǎn)生持續(xù)的聲光報(bào)警信號(hào)。
3.1控制單元及中斷服務(wù)子程序
控制單元主程序流程主要包括系統(tǒng)初始化、是否啟動(dòng)按鍵、是否產(chǎn)生聲光報(bào)警信號(hào)和設(shè)置參數(shù)的判斷與處理等子程序。
1)系統(tǒng)初始化:系統(tǒng)的初始化主要包括AVR單片機(jī)引腳的初始化和相關(guān)參數(shù)的初始化等操作。
2)聲光報(bào)警信號(hào):風(fēng)板轉(zhuǎn)到預(yù)置參數(shù)時(shí),執(zhí)行聲光報(bào)警子程序,產(chǎn)生聲光報(bào)警信號(hào)。
3)設(shè)置參數(shù)的判斷與處理:判斷按鍵是否按下,執(zhí)行相關(guān)參數(shù)設(shè)置子程序。
在風(fēng)板控制系統(tǒng)軟件設(shè)計(jì)中還有2個(gè)定時(shí)器中斷服務(wù)程序,分別是定時(shí)器1和定時(shí)器2中斷。定時(shí)器1中斷服務(wù)子程序主要用于實(shí)現(xiàn)對(duì)LCD1602液晶顯示器的各種字符、相關(guān)數(shù)據(jù)的實(shí)時(shí)顯示。定時(shí)器2中斷服務(wù)子程序主要是實(shí)時(shí)采集三軸角加速度傳感器ADXL345的角加速度數(shù)據(jù),采集完成后,置位每次數(shù)據(jù)采集完成的標(biāo)志位。
3.2風(fēng)板控制系統(tǒng)軟件流程設(shè)計(jì)
軟件采用模塊化程序設(shè)計(jì)的構(gòu)建方法。下面分別闡述兩個(gè)單元的主程序的架構(gòu)及兩個(gè)中斷服務(wù)子程序的作用[7]。主程序流程如圖6所示,主程序主要包括風(fēng)板控制系統(tǒng)的初始化、角度實(shí)時(shí)檢測(cè)、按鍵啟動(dòng)和停止的判斷與處理、聲光報(bào)警信號(hào)的產(chǎn)生和相關(guān)參數(shù)設(shè)置等。角度檢測(cè)程序流程如圖7所示,主要包括系統(tǒng)檢測(cè)程序的初始化、角度參數(shù)的實(shí)時(shí)采集與顯示、角度參數(shù)的相關(guān)數(shù)據(jù)處理、累計(jì)判斷、生成導(dǎo)通角量值等。
風(fēng)板控制系統(tǒng)的初始化主要包括單片機(jī)引腳及功能的初始化、A/D模數(shù)轉(zhuǎn)換程序初始化、相關(guān)變量參數(shù)初始化、I2C通信模式設(shè)置和定時(shí)器中斷服務(wù)等相關(guān)初始化操作;在采集風(fēng)板轉(zhuǎn)軸角度過程中首先是要檢測(cè)角度采集標(biāo)志位的狀態(tài),在中斷服務(wù)子程序中完成三軸角加速度傳感器數(shù)據(jù)的實(shí)時(shí)采集,每次數(shù)據(jù)采集完成后都將采集標(biāo)志位置位;當(dāng)角度數(shù)據(jù)采集完成后,將采集標(biāo)志位清零,對(duì)每次采集到的數(shù)字量進(jìn)行數(shù)據(jù)處理,通過查表的方式對(duì)角度數(shù)據(jù)進(jìn)行補(bǔ)償,同時(shí)將補(bǔ)償后的數(shù)據(jù)變成能夠反映實(shí)際角度的度數(shù)值,用于顯示角度值用,將操作結(jié)果進(jìn)行累計(jì),當(dāng)累計(jì)的角度值達(dá)到10次以后,對(duì)采樣值取平均值,產(chǎn)生最終可以調(diào)節(jié)風(fēng)扇電機(jī)轉(zhuǎn)速的信號(hào)。
按測(cè)試要求,預(yù)置風(fēng)板控制角度在45°~135°之間設(shè)定,由起點(diǎn)開始啟動(dòng)裝置,控制風(fēng)板達(dá)到預(yù)置角度,過渡過程時(shí)間不大于10 s,控制角度誤差不大于5°,在預(yù)置角度上的穩(wěn)定停留時(shí)間為5 s,誤差不大于1 s,動(dòng)作完成后風(fēng)板平穩(wěn)停留在初始位置上。
風(fēng)板控制系統(tǒng)測(cè)試時(shí)選用主要儀器包括示波器、數(shù)字萬用表、量角器、刻度尺等測(cè)試儀器。測(cè)試風(fēng)板實(shí)際角度與角度傳感器角度的測(cè)量表如表1所示,導(dǎo)通角量值數(shù)據(jù)如表2所示,風(fēng)板控制系統(tǒng)可以很好地完成預(yù)置風(fēng)板角度,完成規(guī)定動(dòng)作,且有臨界聲光提示,角度顯示。過渡過程時(shí)間≤10 s,控制角度誤差≤5°。在預(yù)置角度上的穩(wěn)定停留時(shí)間為5 s,誤差≤1 s。
根據(jù)上述測(cè)試數(shù)據(jù),隨著晶閘管導(dǎo)通角控制程度的增大,風(fēng)機(jī)的風(fēng)速逐漸加大,風(fēng)板設(shè)定的角度能維持3~5 s,由此可以得出以下結(jié)論:
1)風(fēng)機(jī)的轉(zhuǎn)速與晶閘管導(dǎo)通角的控制程度成比例關(guān)系。
2)風(fēng)板實(shí)際角度與傳感器檢測(cè)的角度誤差2°,當(dāng)穩(wěn)定時(shí)角度誤差小于5°波動(dòng)。
以AVR單片機(jī)作為控制核心,設(shè)計(jì)并制作了一種能夠控制風(fēng)板的自動(dòng)控制系統(tǒng), 該系統(tǒng)利用角度傳感器測(cè)角度、電機(jī)驅(qū)動(dòng)并結(jié)合軟件的算法實(shí)現(xiàn)風(fēng)板的轉(zhuǎn)角測(cè)試。利用LCD1602液晶顯示器對(duì)測(cè)量的角度等參數(shù)進(jìn)行實(shí)時(shí)顯示,并對(duì)風(fēng)扇的轉(zhuǎn)速實(shí)時(shí)控制,同時(shí)并伴有聲光提示等功能。該系統(tǒng)使得風(fēng)板能夠較快且較準(zhǔn)確地達(dá)到設(shè)定角度,并具有較好的穩(wěn)定性。
表1 風(fēng)板實(shí)際角度與角度傳感器角度比較
表2 導(dǎo)通角量值數(shù)據(jù)
該系統(tǒng)具有軟件設(shè)計(jì)簡(jiǎn)單、計(jì)算量小、測(cè)試角度誤差小等特點(diǎn)。通過測(cè)試數(shù)據(jù)表明,該設(shè)計(jì)具有一定的理論研究意義和工程實(shí)用價(jià)值。
[1] 喬之勇,王榮海.基于AT89S52的帆板控制系統(tǒng)[J]. 兵工自動(dòng)化,2013(2):88-90.
[2] 求是科技.單片機(jī)典型模塊設(shè)計(jì)實(shí)例導(dǎo)航[M].第2版.北京:人民郵電出版社, 2006.
[3] 李小琴.帆板角度控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 電子科技, 2013(2):107-113.
[4] 耿進(jìn)飛,左慢慢,陸靜.基于ATmega16可編程增益的模擬信號(hào)測(cè)量系統(tǒng)[J].儀表技術(shù)與傳感器,2012(8):46-47.
[5] 王學(xué)水,池金波,馬建玲.基于重力加速度傳感器的三維高斯計(jì)的設(shè)計(jì)[J].儀表技術(shù)與傳感器,2015(8):23-25.
[6] 薛劭申,許海平,方程,等.多相永磁同步電機(jī)PWM技術(shù)[J].哈爾濱工業(yè)大學(xué)學(xué)報(bào),2014(4):122-128.
[7] 張永紅,高曉梅.遮風(fēng)板角度控制系統(tǒng)設(shè)計(jì)及優(yōu)化[J].電子設(shè)計(jì)工程,2012,20(7): 83-88.
DesignofWindPlateControlSystemBasedonAVRSingleChipMicrocomputer
LIU Li-jun
(School of Huafu Meters, Liaoning Mechatronics College, Dandong 118009, Liaoning, China)
Based on AVR microcontroller as control core, this paper designs an automatic control system to control wind plate. This system uses the angle sensor, real-time measurement of wind angle plate rotating motor drive and combines with software algorithm of measuring angle of wind plate. The system can display the relevant parameters through the LCD1602 LCD display, real-time control and fan speed with the acousto-optic prompt function. The software design of this system is simple; small amount of calculation and test of angle error is small; the wind board can quickly and accurately reach a predetermined set point, and has better stability. The test data shows that the system has certain theoretical and engineering significance and practical value.
AVR; wind plate; LCD1602; corner test
TP273
A
1008-9446(2017)04-0040-04
2016-12-14
劉立軍(1981-),男,遼寧朝陽人,講師,碩士,主要從事動(dòng)態(tài)測(cè)試與智能儀器、電子技術(shù)研究,E-mail:123305063@qq.com。