簡(jiǎn)易風(fēng)洞模擬控制系統(tǒng)報(bào)告_第1頁(yè)
簡(jiǎn)易風(fēng)洞模擬控制系統(tǒng)報(bào)告_第2頁(yè)
簡(jiǎn)易風(fēng)洞模擬控制系統(tǒng)報(bào)告_第3頁(yè)
簡(jiǎn)易風(fēng)洞模擬控制系統(tǒng)報(bào)告_第4頁(yè)
簡(jiǎn)易風(fēng)洞模擬控制系統(tǒng)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩14頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、簡(jiǎn)易風(fēng)洞模擬控制系統(tǒng) 組員:高明達(dá) 田新興 闞亞進(jìn)摘要 本帆板控制系統(tǒng)由單片機(jī)ATMEGA328作為帆板轉(zhuǎn)角的檢測(cè)和控制核心,實(shí)現(xiàn)按鍵對(duì)風(fēng)扇轉(zhuǎn)速的控制、調(diào)節(jié)風(fēng)力的大小、改變帆板轉(zhuǎn)角、液晶顯示等功能。引導(dǎo)方式采用角度傳感器感知與帆板受風(fēng)力大小的轉(zhuǎn)角的導(dǎo)引線。通過(guò)PWM波控制電機(jī)風(fēng)扇風(fēng)力的大小使其改變帆板擺動(dòng)的角度。風(fēng)扇控制核心采用L298電機(jī)驅(qū)動(dòng)模塊,用ATMEGA328單片機(jī)為控制核心,產(chǎn)生占空比受數(shù)字PID算法控制的PWM脈沖,實(shí)現(xiàn)對(duì)直流電機(jī)轉(zhuǎn)速的控制,同時(shí)利用光電傳感器將電機(jī)速度轉(zhuǎn)化成脈沖頻率反饋到單片機(jī)中,實(shí)現(xiàn)轉(zhuǎn)速閉環(huán)控制,達(dá)到轉(zhuǎn)速無(wú)靜差調(diào)節(jié)的目的。MMA7455三軸加速傳感器把角度輸出

2、信號(hào)傳送給ATMEGA328單片機(jī)進(jìn)行處理。 關(guān)鍵詞: ATMEGA328,MMA7455,PWM波,PID算法SummaryThe system uses MSP430F149 SCM as the core control system; to stepper motor control flat turns, broken down by drive enhanced stepper motor precision; MMA7361 angle sensor chip module, acquisition of freedom pendulum displacement angle a

3、nd 12,864 LCD display; controlled by photoelectric sensor plate where you stopped, Flat tilt angle happens to meet flat force on coin (supporting force and friction force) happen to provide the components of the coin horizontally in transverse acceleration force required; electromagnets are used to

4、automatically free up swing. According to the foot of the step motor (1.8 °/STEP), precise control of stepping motor rotation corresponding steps. The system layout is reasonable, theoretical possible, actually run more smoothly, high control precision, meets the requirements of topics essentia

5、l parts.Keywords: freedom pendulum .angle measurement. divided. driving balance control目錄一、系統(tǒng)方案21.1方案選擇與對(duì)比21.1.1角度測(cè)量方案21.1.2驅(qū)動(dòng)電機(jī)方案21.2系統(tǒng)結(jié)構(gòu)2二、系統(tǒng)理論分析與計(jì)算32.1平板轉(zhuǎn)一周的控制原理分析32.2硬幣不滑落控制原理分析4三、硬件模塊設(shè)計(jì)與分析43.1控制電路43.2角度測(cè)量電路53.3步進(jìn)電機(jī)及驅(qū)動(dòng)電路53.4控制按鍵及模式轉(zhuǎn)換電路63.5光電傳感電路63.6顯示電路7四、軟件程序設(shè)計(jì)74.1系統(tǒng)主流程圖74.2各模塊程序流程圖8五測(cè)量方案與測(cè)試結(jié)果9

6、5.1測(cè)量方案95.1.1基本要求功能測(cè)試95.2測(cè)試結(jié)果及分析9實(shí)驗(yàn)總結(jié)10參考文獻(xiàn)11附件一:電路原理圖12附件二:主要器件清單12附件三:源程序13一、系統(tǒng)方案1.1方案選擇與對(duì)比1.1.1電源的設(shè)計(jì)方案論證與選擇 系統(tǒng)需要多個(gè)電源,ATMEGA328、L298、MMA7455都使用5V的穩(wěn)壓電源,電機(jī)驅(qū)動(dòng)需要24V電壓。 方案一、采用LM2596開(kāi)關(guān)電壓調(diào)節(jié)器,能夠輸出3A的輸出電流,同時(shí)具有很好的線性和負(fù)載調(diào)節(jié)特性,固定輸出3.3V、5V、12V經(jīng)過(guò)調(diào)整可輸出小于37V的電壓。 方案二、采用升壓型穩(wěn)壓電路。用兩片MC34063芯片分別將3V的電池電壓進(jìn)行直流斬波調(diào)壓,得到5V和12V

7、的穩(wěn)壓輸出。只需使用兩節(jié)電池,既節(jié)省了電池,又減小了系統(tǒng)體積重量,但該電路供電電流小,供電時(shí)間短,無(wú)法是相對(duì)龐大的系統(tǒng)穩(wěn)定運(yùn)作。 方案三、采用三端穩(wěn)壓集成7805與7824分別得到5V與24V的穩(wěn)壓電壓。利用該方法方便簡(jiǎn)單,工作穩(wěn)定可靠。 綜上所述,選擇方案三,采用三端穩(wěn)壓電路。1.1.2角度傳感器的設(shè)計(jì)方案論證與選擇 方案一、采用WDS35D4精密導(dǎo)電塑料角位移傳感器,利用該傳感器的輸入端加上一個(gè)直流電壓,在輸出端得到一個(gè)直流電壓信號(hào),把角度位移的機(jī)械位移量轉(zhuǎn)化成電壓信號(hào),用輸出電壓進(jìn)行角度位移的控制。用此傳感器只要測(cè)量導(dǎo)軌電阻兩端的直流電壓,不同的角度有不同的電阻值,通過(guò)電阻來(lái)算出角度,計(jì)

8、算不方便。電刷在導(dǎo)軌上移動(dòng)獲得輸出,數(shù)值越小,精度越高。該傳感器的優(yōu)點(diǎn): 對(duì)環(huán)境條件要求低,線性精度高、分辨率高、動(dòng)態(tài)的噪聲小等優(yōu)點(diǎn),由于該傳感器的各項(xiàng)精度都比較精細(xì)使其價(jià)格過(guò)高。 方案二、采用電位器進(jìn)行調(diào)角:帆板轉(zhuǎn)動(dòng)時(shí)電位器跟著轉(zhuǎn)動(dòng),電壓隨之發(fā)生變化,通過(guò)電壓的值轉(zhuǎn)換成角度值。但扭力過(guò)大,而且精度也不高。 方案三、采用MMA7455三軸加速度傳感器,利用物體運(yùn)動(dòng)和方向改變輸出信號(hào)的電壓值,把檢測(cè)到的信號(hào)傳送給ATMEGA328的AD轉(zhuǎn)化器進(jìn)行轉(zhuǎn)化與讀取此輸出信號(hào)。通過(guò)不同的角度,X、Y、Z三個(gè)方向的加速度輸出不同,將電容值的變化轉(zhuǎn)化為電壓值,電容值的計(jì)算公式是:C=Ae/D,其中A是極板的面

9、積,D是極板間的距離,e是電介質(zhì)常數(shù),再用反正弦函數(shù)把角度算出來(lái),計(jì)算比較方便。該傳感器的優(yōu)點(diǎn):線性精度高、體積小、工作可靠、標(biāo)識(shí)清晰、擴(kuò)展性好等優(yōu)點(diǎn)。 綜上所述,選擇方案三,用MMA7455三軸加速傳感器。 1.1.3顯示方式的選擇 方案一、采用LED數(shù)碼管顯示。使用數(shù)碼管動(dòng)態(tài)顯示,由于顯示的內(nèi)容較少,給人的視覺(jué)沖擊不怎么的舒適,具有亮度高、工作電壓低功耗小、易于集成、驅(qū)動(dòng)簡(jiǎn)單等優(yōu)點(diǎn)。但在此次設(shè)計(jì)中需要設(shè)定的參數(shù)種類多,使用LED數(shù)碼管不能完成設(shè)計(jì)任務(wù),不宜采用。 方案二、采用字符型LCD顯示??梢燥@示英文及數(shù)字,利用程序去驅(qū)動(dòng)液晶 顯示模塊,設(shè)計(jì)簡(jiǎn)單,且界面美觀舒適,耗電小。 綜上所述,選

10、擇方案二,用字符型LCD進(jìn)行顯示。 1.1.4帆板的設(shè)計(jì)方案論證與選擇 方案一、采用電路板作為帆板。根據(jù)設(shè)計(jì)需要的要求,電路板需做成寬:10cm,長(zhǎng):15cm;在所擁有的風(fēng)扇下采取電路板作為帆板,很難滿足設(shè)計(jì)所需達(dá)到的角度??紤]風(fēng)力的大小和自身重力,不宜采用。 方案二、采用泡沫作為帆板。泡沫的體積太輕,很容易滿足設(shè)計(jì)所需要的角度,缺點(diǎn):泡沫的穩(wěn)定性不高,干擾成分太多??紤]不穩(wěn)定性的因素太多此方案不宜采用。 方案三、采用鋁板作為帆板。經(jīng)過(guò)多次實(shí)驗(yàn):鋁板可以作為帆板使用,能過(guò)達(dá)到設(shè)計(jì)所需要的要求,而且鋁板的穩(wěn)定性比較好,抗干擾能力強(qiáng),受干擾的成分比較小。 綜上所述,選擇方案三,用鋁板作為帆板使用。

11、 1.2系統(tǒng)結(jié)構(gòu)經(jīng)過(guò)方案比較與論證,最終確定的系統(tǒng)組成框圖如圖1.1.1所示。其中的集成電路ATMEGA328單片機(jī)驅(qū)動(dòng)液晶顯示模塊、控制電機(jī)驅(qū)動(dòng)改變風(fēng)扇風(fēng)力的大小從而改變帆板的角度,角度傳感器把接收到的輸出信號(hào)傳送給ATMEGA328單片機(jī)進(jìn)行處理再更新顯示。系統(tǒng)框圖如圖:角度傳感器控制按鍵功能切換鍵光電傳感器步進(jìn)電機(jī)平板轉(zhuǎn)動(dòng)單片機(jī)LED顯示圖1:系統(tǒng)框圖二、系統(tǒng)理論分析與計(jì)算PID算法: 由于單片機(jī)的處理速度和RAM資源的限制,一般不采用浮點(diǎn)數(shù)運(yùn)算,而將所有參數(shù)全部用整數(shù),運(yùn)算到最后再除以一個(gè)2的N次方數(shù)據(jù)(相當(dāng)于移位),作類似定點(diǎn)數(shù)運(yùn)算,可大大提高運(yùn)算速度,根據(jù)控制精度的不同要求,當(dāng)精度

12、要求很高時(shí),注意保留移位引起的“余數(shù)”,做好余數(shù)補(bǔ)償。 遇限消弱積分:一旦控制變量進(jìn)入飽和區(qū),將只執(zhí)行削弱積分項(xiàng)的運(yùn)算而停止進(jìn)行增大積分項(xiàng)的運(yùn)算。具體地說(shuō),在計(jì)算Ui時(shí),將判斷上一個(gè)時(shí)刻的控制量Ui-1是否已經(jīng)超出限制范圍,如果已經(jīng)超出,那么將根據(jù)偏差的符號(hào),判斷系統(tǒng)是否在超調(diào)區(qū)域,由此決定是否將相應(yīng)偏差計(jì)入積分項(xiàng) 積分分離法:在基本PID控制中,當(dāng)有較大幅度的擾動(dòng)或大幅度改變給定值時(shí), 由于此時(shí)有較大的偏差,以及系統(tǒng)有慣性和滯后,故在積分項(xiàng)的作用下,往往會(huì)產(chǎn)生較大的超調(diào)量和長(zhǎng)時(shí)間的波動(dòng)。特別是對(duì)于溫度、成份等變化緩慢的過(guò)程,這一現(xiàn)象將更嚴(yán)重。為此可以采用積分分離措施,即偏差較大的時(shí),取消積分

13、作用;當(dāng)偏差較小時(shí)才將積分作用投入。 離散化公式:u(t) = q0e(t) + q1e(t-1) + q2e(t-2) 當(dāng)|e(t)|時(shí) q0 = Kp(1+T/Ti+Td/T) q1 = -Kp(1+2Td/T) q2 = Kp Td /T 當(dāng)|e(t)|時(shí) q0 = Kp(1+Td/T) q1 = -Kp(1+2Td/T) q2 = Kp Td /T u(t) = u(t-1) + u(t) 微分控制對(duì)系統(tǒng)性能的影響:微分作用可以改善動(dòng)態(tài)特性,偏大時(shí),超調(diào)量較大,調(diào)節(jié)時(shí)間較短。偏小時(shí),超調(diào)量也較大,調(diào)節(jié)時(shí)間也較長(zhǎng)。只有合適,才能使超調(diào)量較小,減短調(diào)節(jié)時(shí)間。 由于快速傅立葉變換FFT算法設(shè)

14、計(jì)大量的浮點(diǎn)運(yùn)算,由于一個(gè)浮點(diǎn)占用四個(gè)字節(jié),所以要占用大量的內(nèi)存,同時(shí)浮點(diǎn)運(yùn)算時(shí)間很慢,所以采用普通的8位MCU一般難以在一定的時(shí)間內(nèi)完成運(yùn)算,所以綜合內(nèi)存的大小以及運(yùn)算速度,采用32位的單片機(jī)ATMEGA328,它擁有較大的RAM,并且時(shí)鐘頻率高達(dá)16M,所以對(duì)于浮點(diǎn)運(yùn)算不論是在速度上還是在內(nèi)存上都能夠很快的處理。三、硬件模塊設(shè)計(jì)與分析3.1風(fēng)扇控制電路 風(fēng)扇控制電路主要是由ATMEGA328、L298電機(jī)驅(qū)動(dòng)模塊組成。L298電機(jī)驅(qū)動(dòng) 模塊主要由放大電路、OPAMP運(yùn)算放大電路、電機(jī)驅(qū)動(dòng)組成。用電阻和電容組成高通濾波電路,用單片機(jī)控制達(dá)林頓管使之工作在開(kāi)關(guān)狀態(tài),通過(guò)調(diào)整輸入脈沖的占空比,調(diào)

15、整電機(jī)轉(zhuǎn)速。用L298驅(qū)動(dòng)兩臺(tái)直流減速電機(jī)的電路引腳A,B分別用PWM控制。如果電機(jī)運(yùn)動(dòng)則可將IN1,IN2和IN3,IN4兩對(duì)引腳分別接高低電平,僅用單片機(jī)的兩個(gè)端口給出PWM 信號(hào)控制A,B即可。特點(diǎn): 工作電壓高,可以達(dá)到46V;輸出電流大,瞬間峰值可達(dá)3A,持續(xù)工作電流2A;額定功率25W。當(dāng)步進(jìn)電機(jī)發(fā)一個(gè)控制脈沖,它就轉(zhuǎn)一步,再發(fā)一個(gè)脈沖,它會(huì)再轉(zhuǎn)一步,兩個(gè)脈沖的間隔越短,步進(jìn)電機(jī)就轉(zhuǎn)的越快。調(diào)整單片機(jī)發(fā)出的脈沖頻率,就可以對(duì)步進(jìn)電機(jī)進(jìn)行調(diào)速,從而控制了風(fēng)扇的風(fēng)力的大小。L298電機(jī)驅(qū)動(dòng)的特點(diǎn):可以實(shí)現(xiàn)電機(jī)正反轉(zhuǎn)及調(diào)速、啟動(dòng)轉(zhuǎn)矩大。 圖:3.2角度測(cè)量電路 MMA7455三

16、軸加速傳感器是檢測(cè)物體運(yùn)動(dòng)和方向的傳感器,它根據(jù)帆板運(yùn)動(dòng)和方向改變輸出信號(hào)的電壓值。當(dāng)帆板受到風(fēng)扇風(fēng)力運(yùn)動(dòng)時(shí),三軸加速傳感器檢測(cè)到帆板運(yùn)動(dòng)的輸出信號(hào),把該輸出的電壓值用三角函數(shù)數(shù)出來(lái)在把結(jié)果送往ATMEGA328單片機(jī)進(jìn)行處理,通過(guò)按鍵控制與液晶顯示屏進(jìn)行顯示。MMA7455三軸加速傳感器如圖:圖3:加速度傳感器原理圖3.4控制按鍵及模式轉(zhuǎn)換電路系統(tǒng)利用模式轉(zhuǎn)換開(kāi)關(guān)實(shí)現(xiàn)工作狀態(tài)的切換,并設(shè)置了相關(guān)按鍵,分別實(shí)現(xiàn)電源、啟動(dòng)等控制。3.5光電傳感電路我們?cè)跀[桿和平板垂直的位置加上了一個(gè)ST188的光電傳感器,減少由于角度傳感的延時(shí)和誤差導(dǎo)致平板和擺桿垂直的時(shí)間和角度,更好的讓擺桿和平板達(dá)到垂直位置

17、。電路原理圖如下:圖5:光電傳感器原理圖3.6顯示電路我們通過(guò)液晶12864ST7920連接到單片機(jī)顯示角度的變化。電路原理與如下:圖6:液晶顯示電路原理圖四、軟件程序設(shè)計(jì)4.1系統(tǒng)主流程圖圖7:系統(tǒng)主流程圖我們用按鍵來(lái)實(shí)現(xiàn)多個(gè)子程序的轉(zhuǎn)換,使總程序邏輯更加清楚。總程序附表三給出。4.2各模塊程序流程圖 圖8:應(yīng)用一程序流程圖 圖9:應(yīng)用二的程序流程圖 五測(cè)量方案與測(cè)試結(jié)果5.1測(cè)量方案5.1.1基本要求功能測(cè)試1、平板旋轉(zhuǎn)一周控制測(cè)試方法及測(cè)試數(shù)據(jù)在擺桿上對(duì)應(yīng)平板的位置貼上角度標(biāo)尺,方便觀察平板旋轉(zhuǎn)角度。系統(tǒng)測(cè)量的擺桿角度實(shí)時(shí)在液晶上顯示,在擺桿的后方平行位置放一量角尺,先將擺桿拉至一定角度

18、,對(duì)比液晶上顯示的角度值,經(jīng)多次實(shí)驗(yàn),證明液晶上顯示的角度值可以用來(lái)作為實(shí)際值,進(jìn)行后面的測(cè)試。擺桿垂直靜止時(shí),手動(dòng)調(diào)整平板使其水平,然后將擺桿推至一定角度,啟動(dòng)系統(tǒng)并放開(kāi)擺桿讓其自由擺動(dòng)。軟件檢測(cè)到擺桿擺動(dòng)一個(gè)周期時(shí),控制步進(jìn)電機(jī)停止轉(zhuǎn)動(dòng),系統(tǒng)停止工作,擺桿回到垂直靜止時(shí)觀察平板傾斜角度,從而得到擺桿擺一個(gè)周期時(shí)平板旋轉(zhuǎn)一周的誤差。同理控制擺桿擺動(dòng)26個(gè)周期時(shí),分別觀察平板的旋轉(zhuǎn)誤差。2、硬幣不滑落控制測(cè)試方法及測(cè)試數(shù)據(jù)將擺桿拉至一定角度,調(diào)整平板角度,在平板中心穩(wěn)定放置一枚1元硬件,啟動(dòng)后放開(kāi)擺桿讓其自由擺動(dòng)。6個(gè)擺動(dòng)周期后停止系統(tǒng)運(yùn)行,用直尺測(cè)量硬幣偏移距離并記錄。改變擺桿擺動(dòng)時(shí)的初始角

19、度。同理在平板中心穩(wěn)定放置8枚1元硬件,分角度進(jìn)行8次實(shí)驗(yàn)。5.2測(cè)試結(jié)果及分析表1:平板旋轉(zhuǎn)控制測(cè)試數(shù)據(jù)擺動(dòng)初始角度(°)擺動(dòng)周期數(shù)(周)平板旋轉(zhuǎn)誤差(°)擺動(dòng)初始角度(°)擺動(dòng)周期數(shù)(周)平板旋轉(zhuǎn)誤差(°)151445131527452815311453121541545415155184551930155014302750273031250312304155041530519505194014601440276027403116031140416604164051960520表2:一枚硬幣滑離中心的數(shù)據(jù)次數(shù)12345678角度30°33&

20、#176;35°39°40°41°43°45°滑動(dòng)距離(cm)0.30.30.40.50.60.60.70.8誤差分析:由實(shí)驗(yàn)測(cè)試結(jié)果可以看出,當(dāng)擺桿起始角度由30°到45°逐漸增大時(shí),硬幣滑離中心位置的距離越大(在實(shí)驗(yàn)允許的誤差之內(nèi)),這符合理論分析的結(jié)果且符合實(shí)際生活規(guī)律,達(dá)到了預(yù)期的實(shí)驗(yàn)效果。表3:8枚硬幣滑離中心和掉落的數(shù)據(jù)次數(shù)12345678角度45°48°49°52°53°56°57°60°滑動(dòng)距離(cm)0.30.40.5

21、1.20.60.82.81.0跌落數(shù)目20010012誤差分析:由實(shí)驗(yàn)測(cè)試結(jié)果可以看出,當(dāng)擺桿起始角度由45°到60°逐漸增大時(shí),最底層硬幣滑離中心位置的距離越大,當(dāng)硬幣發(fā)生跌落時(shí),相應(yīng)的最底層硬幣滑離中心位置的距離也很大,這一結(jié)果符合理論分析的結(jié)果。實(shí)驗(yàn)總結(jié) 通過(guò)這次設(shè)計(jì)的經(jīng)歷,我們團(tuán)隊(duì)有了更深的配合和默契,在設(shè)計(jì)過(guò)程中,我們遇到一個(gè)一個(gè)的困難,通過(guò)一次的學(xué)習(xí)和討論,我們克服了很多問(wèn)題,在電路設(shè)計(jì)、軟件調(diào)試及機(jī)械組裝等方面得到了很好的鍛煉,提高了獨(dú)立思考、自學(xué)知識(shí)等多方面的能力,更意識(shí)到團(tuán)隊(duì)合作和理論實(shí)踐結(jié)合的重要性,受益匪淺!雖然其中很多處理方式并不是的很好,導(dǎo)致一些稍

22、大的誤差,但是整體上我們完成了對(duì)題目的要求。在這次設(shè)計(jì)中,我們對(duì)MSP430單片機(jī)的應(yīng)用和編程有了進(jìn)一步的認(rèn)識(shí),對(duì)步進(jìn)電機(jī)和傳感器的應(yīng)用得到了很大的加強(qiáng)。同時(shí),我們認(rèn)識(shí)到我們?cè)诎l(fā)揮部分的精確控制方面有很大的欠缺,希望在今后的日子加強(qiáng)對(duì)這方面的學(xué)習(xí)和應(yīng)用。參考文獻(xiàn)1 魏惠軍、朱烔明大角度單擺的周期J上海師范大學(xué)學(xué)報(bào)2004年第33卷(103105)2 張福才MSP430單片機(jī)自學(xué)筆記北京航空航天大學(xué)出版社2011年2月3 趙燕著傳感器原理及應(yīng)用北京大學(xué)出版社2010年2月。4 坂本正文(日)著,王自強(qiáng)譯步進(jìn)電機(jī)應(yīng)用技術(shù)科學(xué)出版社2010年5月5 全國(guó)大學(xué)生電子設(shè)計(jì)競(jìng)賽組委會(huì).全國(guó)大學(xué)生電子設(shè)計(jì)競(jìng)

23、賽獲獎(jiǎng)作品選編M.北京:北京理工大學(xué)出版社,2007.附件一:電路原理圖附件二:主要器件清單序號(hào)原件名稱,型號(hào)和規(guī)格數(shù)量備注1MS430149單片機(jī)1系統(tǒng)控制242HS3404A4步進(jìn)電機(jī)1轉(zhuǎn)動(dòng)平板3DM542細(xì)分驅(qū)動(dòng)器1驅(qū)動(dòng)步進(jìn)電機(jī)4ST188光電傳感器1判斷擺與平板的垂直5MMA7391加速度傳感器1角度測(cè)量612864ST7920液晶顯示屏1顯示角度7電阻若干8電容若干附件三:源程序#include <msp430x14x.h>#include "12864.h"#include "delay.h"#include "adc.

24、h"#include "Init_Clk.h"#include "l298.h"#include <math.h>long int suma=0,sumb=0,sumc=0,base,degree,base2,t=0;unsigned int i=0,j=0,p,k;double m,m1,T;unsigned char ft=0x01,0x02,0x04,0x08,0x01,0x02,0x04,0x08;unsigned char bk=0x08,0x04,0x02,0x01;void main() WDTCTL = WDTPW

25、+ WDTHOLD; P1DIR = 0XFF;P1OUT = 0XFF; P2DIR = 0XFF;P2OUT = 0XFF; P3DIR = 0XFF;P3OUT = 0XFE; P4DIR = 0XFF;P4OUT = 0XFF; P5DIR = 0XFF;P5OUT = 0XFF; P6DIR = 0XFF;P6OUT = 0XFF; Init_Clk(); adc_4ch(); Init_Lcd(); P4DIR=0XFC; P1DIR=0Xf0; while(1) if(P1IN&BIT0)=0)k=0;break; if(P1IN&BIT1)=0)k=1;brea

26、k; if(k=0) Disp_4num(0x80,0000); while(1) if(P4IN&BIT1)=0) break; Disp_4num(0x80,1111); for(p=10;p>0;p-) /*P2OUT=P2OUT|0x02; Delay_Nus(8); P2OUT=P2OUT&0xfd; Delay_Nus(8); */ P2OUT=0xf2; /Delay_Nus(80); Delay_Nms(25); P2OUT=0xf0; Delay_Nms(25); P3OUT=P3OUT|BIT0; while(1) /Disp_4num(0x80,22

27、22); P2OUT=0xf2; Delay_Nms(25); P2OUT=0xf0; Delay_Nms(25); if(P4IN&BIT0)=0)break; /while(1) /Disp_4num(0x80,2222); for(p=2;p>0;p-) P2OUT=0xf2; Delay_Nms(25); P2OUT=0xf0; Delay_Nms(25); while(1) Disp_4num(0x80,3333); else while(1) ADC12CTL0 |= ADC12SC; _BIS_SR(CPUOFF + GIE); /*while(1) Disp_4n

28、um(0x80,1111); for(i=0;i<4;i+) P2OUT=fti; Delay_Nms(50); if(P4IN&BIT0)=0)break; if(P4IN&BIT0)=0)break; if(i=3)i=1;P2OUT=fti; else P2OUT=fti+; if(i=3)i=1;P2OUT=fti; else P2OUT=fti+; while(1) Disp_4num(0x80,2222); */ /ADC12CTL0 |= ADC12SC; /*while(1) ADC12CTL0 |= ADC12SC; / Sampling open啟動(dòng)轉(zhuǎn)

29、換 /if(fabs(base-degree)>5)break; while(1) /if(degree>20)break; _BIS_SR(CPUOFF + GIE); break; /_BIS_SR(CPUOFF + GIE); / LPM0, ADC12_ISR will force exit進(jìn)入低功耗等待中斷模式 */ /if(m<0) / /*Write_Cmd(0x01); Disp_4num(0x80,1111); while(1) for(i=0;i<4;i+) P2OUT=fti; Delay_Nms(100); if(P4IN&BIT0)=0

30、)break; if(P4IN&BIT0)=0)break; */ / /*else while(1) for(i=0;i<4;i+) P2OUT=bki; Delay_Nms(100); if(P4IN&BIT0)=0)break; if(P4IN&BIT0)=0)break; while(1); */ ADC12 interrupt service routine#pragma vector=ADC_VECTOR_interrupt void ADC12_ISR (void) long int a,b,c,d,y,z,q; double degree_doub

31、le,degree_turn; / if (ADC12MEM0 < 0x7FF) /a=ADC12MEM0/41*33;/? /Disp_HZ(0x80,ms2,4); /b=ADC12MEM1/41*33; /Disp_HZ(0x90,ms2,4); /c=ADC12MEM2/41*33; suma=ADC12MEM0+suma; sumb=ADC12MEM1+sumb; sumc=ADC12MEM2+sumc; i+; if(i=9) a=suma/10; b=sumb/10; c=sumc/10; /y=a-160; /具體數(shù)值現(xiàn)場(chǎng)測(cè)量,有變化,角度誤差 40°以內(nèi),誤差<1° /z=b-164; /僅使用yOz面變化 a=a/41*33; b=b/41*33; c=c/41*33; y=a-1419; z=b-1479; m=atan2(y,z); /g由Yg和Zg合成,所以用反正切函數(shù) if(m<=0) /具體每個(gè)不同傳感器,需現(xiàn)場(chǎng)測(cè)量0°90°-90°電壓后寫入新值 /Data20=' ' m1=fabs(m); else if(m>0) /Data20='-' m1=m; degree = m1 * 18000/3.1413925; /顯

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論