基于自由擺的平板控制系統(tǒng)(最終),2011年全國大學(xué)生電子設(shè)計(jì)競賽_第1頁
基于自由擺的平板控制系統(tǒng)(最終),2011年全國大學(xué)生電子設(shè)計(jì)競賽_第2頁
基于自由擺的平板控制系統(tǒng)(最終),2011年全國大學(xué)生電子設(shè)計(jì)競賽_第3頁
基于自由擺的平板控制系統(tǒng)(最終),2011年全國大學(xué)生電子設(shè)計(jì)競賽_第4頁
基于自由擺的平板控制系統(tǒng)(最終),2011年全國大學(xué)生電子設(shè)計(jì)競賽_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、2011 年全國大學(xué)生電子設(shè)計(jì)競賽基于自由擺的平板控制系統(tǒng)(基于自由擺的平板控制系統(tǒng)(B B 題)題)【本科本科 組組】20112011 年年 9 9 月月 3 3 日日摘摘 要要 采用 ATmage16 avr 單片機(jī)作為主控芯片的基于自由擺的平板控制系統(tǒng)。利用高精度的電位器和單片機(jī)的片內(nèi)模數(shù)轉(zhuǎn)換器測量自由擺的擺動(dòng)角度。ULN2003N 達(dá)林頓陣列驅(qū)動(dòng),1/16 倍速的減速步進(jìn)電機(jī)控制平板的轉(zhuǎn)動(dòng)。能夠?qū)崿F(xiàn)根據(jù)擺桿角度平板轉(zhuǎn)動(dòng)相應(yīng)角度、擺桿擺動(dòng)一周期平板轉(zhuǎn)動(dòng)一圈、控制平板使得擺桿擺動(dòng)時(shí)平板上的硬幣不滑落、平板上的激光筆在擺桿擺動(dòng)一定角度后照射到靶子中心線等要求。關(guān)鍵詞:關(guān)鍵詞: 自由擺 AVR

2、 單片機(jī) 電位器 減速步進(jìn)電機(jī)I目錄目錄1 1 系統(tǒng)方案系統(tǒng)方案 .1 11.1 中央處理器的論證與選擇 .11.2 電機(jī)驅(qū)動(dòng)模塊的論證與選擇 .11.3 擺桿角度測量模塊的論證與選擇 .22 2 系統(tǒng)理論分析與計(jì)算系統(tǒng)理論分析與計(jì)算 .2 22.1 系統(tǒng)理論的分析 .22.1.1 擺桿旋轉(zhuǎn)角度的獲取 .22.1.2 平板旋轉(zhuǎn)角度的控制 .32.1.3 步進(jìn)電機(jī)轉(zhuǎn)動(dòng)控制 .42.2 擺桿斜角度的計(jì)算 .42.3 步進(jìn)電機(jī)的計(jì)算 .42.3.1 擺桿擺動(dòng)三周電機(jī)的轉(zhuǎn)動(dòng) .42.3.2 擺動(dòng)擺桿通過電機(jī)控制平板使硬幣不從平板上掉落.42.3.3 擺桿固定時(shí)控制激光筆.42.3.4 擺桿擺動(dòng)時(shí)電機(jī)控

3、制激光筆.43 3 電路與程序設(shè)計(jì)電路與程序設(shè)計(jì) .5 53.1 電路的設(shè)計(jì) .53.1.1 系統(tǒng)總體框圖.53.1.2 擺桿角度檢測子系統(tǒng)框圖與電路原理圖 .53.1.3 步進(jìn)電機(jī)驅(qū)動(dòng)子系統(tǒng)電路原理圖.63.1.4 電源.63.2 程序的設(shè)計(jì) .73.2.1 程序功能描述與設(shè)計(jì)思路.73.2.2 程序流程圖.74 4 測試方案與測試結(jié)果測試方案與測試結(jié)果 .9 94.1 測試方案 .94.2 測試方式與儀器 .94.3 測試結(jié)果及分析 .94.3.1 測試結(jié)果(數(shù)據(jù)).94.3.2 測試分析與結(jié)論.10附錄附錄 1 1:電路原理圖:電路原理圖 .1111附錄附錄 2 2:完整測試數(shù)據(jù):完整測

4、試數(shù)據(jù) .1212附錄附錄 3 3:源程序:源程序 .13130基于自由擺的平板控制系統(tǒng)(基于自由擺的平板控制系統(tǒng)(B B 題)題)【本科組本科組】1 1 系統(tǒng)方案系統(tǒng)方案本系統(tǒng)主要由中央處理器模塊、電機(jī)驅(qū)動(dòng)模塊、擺桿角度測量模塊、電源模塊組成,下面分別論證這幾個(gè)模塊的選擇。1.11.1 中央處理器的論證與選擇中央處理器的論證與選擇方案一:方案一:目前應(yīng)用很廣泛的 51 系列單片機(jī)。該系列的單片機(jī)具有價(jià)格低廉、性能穩(wěn)定、技術(shù)成熟等特點(diǎn)。但缺點(diǎn)也很明顯,運(yùn)行速度不是很快,而此次設(shè)計(jì)應(yīng)需要較為復(fù)雜的運(yùn)算,所以可能達(dá)不到要求。方案二:方案二:AVR 系列的單片機(jī)。該系列單片機(jī)較于早期的 51 單片機(jī)

5、,片內(nèi)資源更豐富,接口也更強(qiáng)大,同時(shí)采用的是 RISC 精簡指令集,在運(yùn)行速度上較與 51 有絕對的優(yōu)勢。而價(jià)格低廉的優(yōu)勢也同樣存在。方案三:方案三:ARM 處理器。ARM 處理器主要應(yīng)用于嵌入式系統(tǒng)的開發(fā),支持 Thumb(16位)/ARM(32 位)雙指令集,兼容性好,大量使用寄存器執(zhí)行速度快。單從性能上講,AMR 絕對強(qiáng)與 AVR 與 51,但其價(jià)格昂貴,并不是很適合本次設(shè)計(jì)。因此次設(shè)計(jì)需要設(shè)計(jì)加速度傳感器對于角度的計(jì)算,需要較大的計(jì)算量,且系統(tǒng)對于精度的要求較高,故選擇方案二。1.21.2 電機(jī)驅(qū)動(dòng)模塊的論證與選擇電機(jī)驅(qū)動(dòng)模塊的論證與選擇方案一:方案一:L298H 橋式驅(qū)動(dòng)芯片。該芯片

6、具有性能穩(wěn)定、控制靈活、輸出電流大等特點(diǎn),可以很方便控制直流電機(jī)的轉(zhuǎn)動(dòng)方向。但其價(jià)格較高,外接電路較為復(fù)雜。方案二:方案二:ULN2003 達(dá)林頓陣列芯片。ULN2003 是高耐壓、大電流復(fù)合晶體管陣列,工作電壓高,工作電流大,灌電流可達(dá) 500mA,并且能夠在關(guān)閉狀態(tài)承受 50V 的電壓,輸出還可以在高負(fù)載電流并行運(yùn)行。采用此方案不能控制直流電機(jī)的運(yùn)動(dòng)方向,但采用步進(jìn)電機(jī)則完全可以控制,且電路極其簡單,基本不需要其他外圍元器件。相對于L298 來說,價(jià)格上又有絕對的優(yōu)勢。1方案三:方案三:步進(jìn)電機(jī)細(xì)分儀。高精度的步進(jìn)電機(jī)細(xì)分儀能將驅(qū)動(dòng)電機(jī)的電流細(xì)分化,不僅能提高步進(jìn)電機(jī)的精度,還能減噪和提高

7、電機(jī)運(yùn)行時(shí)的穩(wěn)定性,驅(qū)動(dòng)上也較普通驅(qū)動(dòng)芯方便,只需給一定頻率的脈沖信號(hào)即可控制速度。但出于條件限制,我們并有足夠的設(shè)備,且價(jià)格很高,最終還是沒選擇此種方案。綜合以上三種方案,選擇方案二。1.31.3 擺桿角度測量模塊的論證與選擇擺桿角度測量模塊的論證與選擇方案一:方案一:加速度傳感器。采用 HQ7455-mma7455 數(shù)字三軸加速度模塊。該模塊使用和測試方便,可以實(shí)現(xiàn)基于運(yùn)動(dòng)的功能,也提供 I2C 和 SPI 接口,方便與 MCU 的通訊。將加速度傳感器安裝在擺桿的尾部,擺桿擺動(dòng)時(shí)根據(jù)角速度傳感器測量出來的 x 軸上重力加速度的分量計(jì)算出擺桿角度。此種方案經(jīng)過實(shí)驗(yàn)后發(fā)現(xiàn)加速度傳感器很不穩(wěn)定,

8、首先是在靜止?fàn)顟B(tài)下震動(dòng)幅度過大,其次是在運(yùn)動(dòng)狀態(tài)中測量出來的角度不準(zhǔn)確,還有嚴(yán)重的滯后問題。基于這些原因,放棄了此種方案。方案二:方案二:電位器。隨著擺桿轉(zhuǎn)動(dòng),利用電位器調(diào)制出的電壓信號(hào),使用 AVR 單片機(jī)的片內(nèi) ADC 即可讀取。具有穩(wěn)定性好,讀出的數(shù)值與擺桿角度的線性相關(guān)也較吻合。綜合考慮采用方案二。2 2 系統(tǒng)理論分析與計(jì)算系統(tǒng)理論分析與計(jì)算2.12.1 系統(tǒng)理論的分析系統(tǒng)理論的分析 2.1.12.1.1 擺桿旋轉(zhuǎn)角度的獲取擺桿旋轉(zhuǎn)角度的獲取 將高精度的電位器安裝在擺桿的轉(zhuǎn)軸位置,電位器連接在 5V 電源上,隨著擺桿的擺動(dòng),電位器上能產(chǎn)生 05V 的電位差,利用單片機(jī)片內(nèi)的 10 位

9、ADC 即可讀取。采集多組讀出的 AD 值和擺桿實(shí)際角度,然后建立線性回歸方程,即可獲取擺桿旋轉(zhuǎn)角度。作出的線性回歸圖形如圖一所示:2y = 3.685x + 261.301002003004005006007008009001000050100150200系列1線性 (系列1)圖一 擺桿角度與模數(shù)轉(zhuǎn)換線性擬合圖2.1.22.1.2 平板旋轉(zhuǎn)角度的控制平板旋轉(zhuǎn)角度的控制 根據(jù)擺桿轉(zhuǎn)動(dòng)角度依據(jù)題目要求,驅(qū)動(dòng)減速步進(jìn)電機(jī)實(shí)時(shí)轉(zhuǎn)動(dòng)相應(yīng)角度。如圖二所示:圖二 平板旋轉(zhuǎn)控制流程圖32.1.32.1.3 步進(jìn)電機(jī)轉(zhuǎn)動(dòng)控制步進(jìn)電機(jī)轉(zhuǎn)動(dòng)控制此次使用的減速步進(jìn)電機(jī)在速度、方向上都能精確控制。所以可根據(jù)對擺臂旋轉(zhuǎn)

10、角度、平板旋轉(zhuǎn)角度等數(shù)據(jù)計(jì)算后更改步進(jìn)電機(jī)脈沖信號(hào)的走向控制步進(jìn)電機(jī)的方向,更改步進(jìn)延時(shí)控制電機(jī)的速度。2.22.2 擺桿斜角度的計(jì)算擺桿斜角度的計(jì)算 在電位器上加上 5V 的電壓并把電位器固定到擺軸的定點(diǎn),電位器本身固定不動(dòng)、調(diào)節(jié)軸與擺桿相連,當(dāng)擺桿靜止在某個(gè)角度(-6060 度)時(shí),電位器輸出對應(yīng)的電壓值不變,采樣出足夠的點(diǎn)并分析其線性關(guān)系,利用閑心回歸方程得到相應(yīng)線性關(guān)系,通過不斷測試數(shù)據(jù)來改進(jìn)電位器輸出電壓與角度的關(guān)系2.32.3 步進(jìn)電機(jī)的計(jì)算步進(jìn)電機(jī)的計(jì)算 2.3.12.3.1 擺桿擺動(dòng)三周電機(jī)的轉(zhuǎn)動(dòng)擺桿擺動(dòng)三周電機(jī)的轉(zhuǎn)動(dòng)單片機(jī)首先檢測擺桿是否開始擺動(dòng)(松手檢測) ,擺桿擺動(dòng)后,當(dāng)

11、檢測到擺桿擺到了平衡位置時(shí)電機(jī)轉(zhuǎn)動(dòng)半圈,以此類推直到走完三圈。2.3.22.3.2 擺動(dòng)擺桿通過電機(jī)控制平板使硬幣不從平板上掉落擺動(dòng)擺桿通過電機(jī)控制平板使硬幣不從平板上掉落當(dāng)檢測到按鍵按下時(shí)延時(shí)一段時(shí)間以適宜操作者的反應(yīng)時(shí)間,之后步進(jìn)電機(jī)轉(zhuǎn)動(dòng)相應(yīng)角度到平板到平板與擺桿垂直時(shí)電機(jī)停止轉(zhuǎn)動(dòng),之后讓硬幣隨擺桿擺動(dòng)而擺動(dòng)。2.3.32.3.3擺桿固定時(shí)控制激光筆擺桿固定時(shí)控制激光筆 把擺桿固定到一定角度(3060 度)位置時(shí),通過角度計(jì)算公式:計(jì)算出 角,讓電機(jī)轉(zhuǎn)動(dòng) 度。2.3.42.3.4 擺桿擺動(dòng)時(shí)電機(jī)控制激光筆擺桿擺動(dòng)時(shí)電機(jī)控制激光筆同 2.3.3,擺桿擺動(dòng)到下一位置與前一角度對應(yīng)的 角之差就是

12、電機(jī)要轉(zhuǎn)動(dòng)的角度,通過檢測擺動(dòng)最高點(diǎn)和最低點(diǎn)來決定電機(jī)的轉(zhuǎn)動(dòng)方向43 3 電路與程序設(shè)計(jì)電路與程序設(shè)計(jì)3.13.1 電路的設(shè)計(jì)電路的設(shè)計(jì)3.1.13.1.1 系統(tǒng)總體框圖系統(tǒng)總體框圖系統(tǒng)總體框圖如圖三所示:Atmage16單片機(jī)最小系統(tǒng)擺桿角度檢測模塊步進(jìn)電機(jī)驅(qū)動(dòng)模塊鍵盤輸入模塊LED顯示模塊圖三 系統(tǒng)總體框圖3.1.23.1.2 擺桿角度檢測子系統(tǒng)框圖與電路原理圖擺桿角度檢測子系統(tǒng)框圖與電路原理圖1、擺桿角度檢測子系統(tǒng)框圖5擺桿轉(zhuǎn)動(dòng)電位器兩端電位變化模數(shù)轉(zhuǎn)化器轉(zhuǎn)化圖四 擺桿角度檢測子系統(tǒng)框圖3.1.33.1.3 步進(jìn)電機(jī)驅(qū)動(dòng)子系統(tǒng)電路原理圖步進(jìn)電機(jī)驅(qū)動(dòng)子系統(tǒng)電路原理圖1、步進(jìn)電機(jī)驅(qū)動(dòng)子系統(tǒng)電

13、路In11In22In33In44In55In66In77GND8COM9OUT110OUT211OUT312OUT413OUT514OUT615OUT716U?ULN200312H?Head21234H?Head412345P?Header 5VCCGNDVCC步進(jìn)電機(jī)驅(qū)動(dòng)模塊GND100pFC?Cap圖五 步進(jìn)電機(jī)子系統(tǒng)電路3.1.43.1.4 電源電源因本系統(tǒng)需為單片機(jī)的 ADC 提供參考電壓,所以對電壓穩(wěn)定的要求較高,故采用現(xiàn)成的+5V 電源模塊,并焊接了一塊有多個(gè)接口的板子,以便其他模塊的供電連接。63.23.2 程序的設(shè)計(jì)程序的設(shè)計(jì)3.2.13.2.1 程序功能描述與設(shè)計(jì)思路程序功

14、能描述與設(shè)計(jì)思路1、程序功能描述根據(jù)題目要求軟件部分需實(shí)現(xiàn)電位器端的模數(shù)轉(zhuǎn)換、步進(jìn)電機(jī)驅(qū)動(dòng)、鍵盤檢測、LED 燈顯示、各種參數(shù)及數(shù)據(jù)的計(jì)算等。(1)模數(shù)轉(zhuǎn)換實(shí)現(xiàn)功能:采用 AVR 單片機(jī)的片內(nèi)十位 ADC。 (2)步進(jìn)電機(jī)驅(qū)動(dòng):控制連接 ULN2003 驅(qū)動(dòng)模塊的 IO 口,輸出制定頻率的電位變化控制步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)速度與轉(zhuǎn)動(dòng)方向。(3)鍵盤檢測:實(shí)時(shí)掃描連鍵盤的單片機(jī) IO 的電位變化,讀出按鍵。2、程序設(shè)計(jì)思路(1)模式選擇:程序啟動(dòng)后進(jìn)入模式選擇狀態(tài)。鍵盤檢測輸入,LED 燈顯示當(dāng)前狀態(tài)。(2)步進(jìn)電機(jī)驅(qū)動(dòng):編寫電機(jī)驅(qū)動(dòng)接口函數(shù),入口參數(shù)有電機(jī)轉(zhuǎn)動(dòng)方向、電機(jī)轉(zhuǎn)動(dòng)步數(shù)、每步延時(shí)。(3)電位器

15、電壓檢測:利用 AVR 片內(nèi)的 10 位 ADC。需要檢測點(diǎn)位時(shí)調(diào)用進(jìn)行模數(shù)轉(zhuǎn)換,檢測寄存器狀態(tài)判斷裝化完成。3.2.23.2.2 程序流程圖程序流程圖1、主程序結(jié)構(gòu)圖圖模式選擇模式一模式二模式三模式四模式五隨桿擺動(dòng)平板旋轉(zhuǎn)子程序一塊硬幣子程序8塊硬幣子程序定點(diǎn)調(diào)整激光方向子程序動(dòng)態(tài)調(diào)整激光旋轉(zhuǎn)子程序圖六 主程序結(jié)構(gòu)圖72、擺桿角度檢測子程序流程圖ADC轉(zhuǎn)化調(diào)用ADC值與擺桿角度的計(jì)算函數(shù)開始返回角度值結(jié)束圖七 擺桿角度檢測子程序3、電機(jī)驅(qū)動(dòng)子程序流程圖開始入口參數(shù):電機(jī)方向、電機(jī)步數(shù)、每步延時(shí)判斷方向調(diào)用步進(jìn)電機(jī)編碼1調(diào)用步進(jìn)電機(jī)編碼2方向1方向2根據(jù)電機(jī)步數(shù)參數(shù)送IO口編碼延時(shí)結(jié)束圖八 電

16、機(jī)驅(qū)動(dòng)子程序流程圖84 4 測試方案與測試結(jié)果測試方案與測試結(jié)果4.14.1 測試方案測試方案1、軟件仿真測試2、硬件設(shè)計(jì)測試4、設(shè)計(jì)要求測試4.24.2 測試方式與儀器測試方式與儀器1、軟件仿真:用 PROTEUS 軟件畫出系統(tǒng)要求的電路,測試程序是否編寫正確。這一測試主要是對模式選擇子系統(tǒng)的測試;2、硬件電路檢測:使用萬用表測量電路是否連接正確,米尺和三角板測量擺桿的長度和水平是否符合要求。3、設(shè)計(jì)要求測試(1)基本要求 1:調(diào)整平板至水平位置,啟動(dòng)程序后松手,平板旋轉(zhuǎn)結(jié)束用量角器測量平板偏離初始位置角度。(2)基本要求 2:按要求操作后用三角板測量硬幣偏離平板距離(3)基本要求 3:按要

17、求操作后計(jì)算硬幣非保持疊放狀態(tài)數(shù)量和滑落硬幣數(shù)。(4)發(fā)揮部分 1:按要求操作后計(jì)算光斑離開中心線的距離。(5)發(fā)揮部分 2:按要求操作后計(jì)算光斑偏離中心線最遠(yuǎn)距離。4.34.3 測試結(jié)果及分析測試結(jié)果及分析4.3.14.3.1 測試結(jié)果測試結(jié)果( (數(shù)據(jù)數(shù)據(jù)) )表一:ADC 值與實(shí)際測量的擺桿角度(中心線為為 90):ADC5060708090100110120130140角度()463496519560575615639671704739表二:基本要求 1 平板旋轉(zhuǎn)角度誤差:測量次數(shù)12345678誤差()00200030表三:基本要求 2 硬幣偏離平板中心線距離:測量次數(shù)1234567

18、89偏移(cm)01000200表四:基本要求 3 硬幣非保持疊放狀態(tài)數(shù)量和滑落硬幣數(shù)測量次數(shù)12345678非保持疊放狀態(tài)數(shù)量02080000滑落硬幣數(shù)00080000表五:發(fā)揮部分 1 光斑離開中心線的距離:測量次數(shù)12345678距離(cm)13251201表六:發(fā)揮部分 2 斑離開中心線的距離:測量次數(shù)12345678距離(cm)NNNNNNNN4.3.24.3.2 測試分析與結(jié)論測試分析與結(jié)論根據(jù)上述測試數(shù)據(jù),由此可以得出以下結(jié)論:1、電路焊接正確。2、基本要求 1 符合設(shè)計(jì)需要3、基本要求 2 符合設(shè)計(jì)需要4、基本要求 3,如果操作時(shí)手顫抖和操作不及時(shí)能使得誤差較大,但大部分時(shí)候符

19、合設(shè)計(jì)要求。5、發(fā)揮部分 1 基本能符合設(shè)計(jì)要求,誤差在允許范圍內(nèi)6、發(fā)揮部分 2 因步進(jìn)電機(jī)的轉(zhuǎn)速以及電位器穩(wěn)定性等問題,編寫程序后光斑并不能落到靶子上。參考文獻(xiàn):參考文獻(xiàn):1 閆愛軍 范海明.基于 AVR 單片機(jī)的四相步進(jìn)電機(jī)驅(qū)動(dòng)設(shè)計(jì)J.艦船防化-2011 年 2期2 陸廣平 張美琪.基于 AVR 單片機(jī)的步進(jìn)電機(jī)運(yùn)動(dòng)控制系統(tǒng)設(shè)計(jì)J.微電機(jī)-2010年 3 期10附錄附錄 1 1:電路原理圖:電路原理圖PB0 (XCK/T0)1PB1 (T1)2PB2 (AIN0/INT2)3PB3 (AIN1/OC0)4PB4 (SS)5PB5 (M OSI)6PB6 (M ISO)7PB7 (SCK)

20、8RESET9PD0 (RXD)14PD1 (TXD)15PD2 (INT0)16PD3 (INT1)17PD4 (OC1B)18PD5 (OC1A)19PD6 (ICP)20PD7 (OC2)21XTAL212XTAL113GND11PC0 (SCL)22PC1 (SDA)23PC2 (TCK)24PC3 (TM S)25PC4 (TDO)26PC5 (TDI)27PC6 (TOSC1)28PC7 (TOSC2)29AREF32AVCC30GND31PA7 (ADC7)33PA6 (ADC6)34PA5 (ADC5)35PA4 (ADC4)36PA3 (ADC3)37PA2 (ADC2)38

21、PA1 (ADC1)39PA0 (ADC0)40VCC10U2ATm ega16-16PCPA0PA1PA2PA3PA4PA5PA6PA7PC0PC1PC2PC3PC4PC5PC6PC7PB0PB1PB2PB3PB4PB5PB6PB7PD0PD1PD2PD3PD4PD5PD6PD7VCCGNDGND1243S2位位位位GNDRSTRSTPB5PB6PB7GNDVCCM OSI1VCC2NC3GND4RST5GND6SCK7GND8M ISO9GND10P2ISP100pFC1CapIn11In22In33In44In55In66In77GND8COM9OUT110OUT211OUT312OUT

22、413OUT514OUT615OUT716U1ULN200312345P1Header 5VCCGNDD1D2D3D4D5D6D7S3S4S5GNDGND12345678P312345678P4VCCGNDPD0PD1PD2PD3PD5PD6PD7S1SW-DPST1KR11KR21KR31KR41KR51KR61KR711附錄附錄 2 2:完整測試數(shù)據(jù):完整測試數(shù)據(jù)表一:ADC 值與實(shí)際測量的擺桿角度(中心線為為 90):ADC5060708090100110120130140角度()463496519560575615639671704739表二:基本要求 1 平板旋轉(zhuǎn)角度誤差:測量次數(shù)1

23、2345678誤差()00200030表三:基本要求 2 硬幣偏離平板中心線距離:測量次數(shù)12345678偏移(cm)01000200表四:基本要求 3 硬幣非保持疊放狀態(tài)數(shù)量和滑落硬幣數(shù)測量次數(shù)12345678非保持疊放狀態(tài)數(shù)量02080000滑落硬幣數(shù)00080000表五:發(fā)揮部分 1 光斑離開中心線的距離:測量次數(shù)12345678距離(cm)13251201表六:發(fā)揮部分 2 斑離開中心線的距離:測量次數(shù)12345678距離(cm)NNNNNNNN12附錄附錄 3 3:源程序:源程序/*文件名:process.c*函數(shù)功能:設(shè)計(jì)要求的五種操作模式*/#include #include #

24、include #include #define DATA_NUM10unsigned char test_adcDATA_NUM=704,707,719,768,728,736,775,783,792,799;unsigned char test_jdDATA_NUM =110,119,132,174,130,149,194,206,214,224;/*基本要求一*/檢測松手/檢測低谷void check_valley()unsigned int jd;while(1)jd=adc_read();if(jd570&jd590)break;return;void basic_q1()unsig

25、ned char i;/*/for(i=0;i90)fx=0;bs=(b_jd-90)/0.3516;/步進(jìn)電機(jī) 每步角度else fx=1;bs=(90-b_jd)/0.3516;moto_run(fx,bs,900);moto_close();while(1);/=基本要求3=/void basic_q3()unsigned char b_jd;/單擺角度unsigned char fx;unsigned int bs;/電機(jī)轉(zhuǎn)動(dòng)步數(shù)unsigned int ad_top;/在頂端的 adc 值unsigned int temp;unsigned char i;unsigned int b

26、s_ext;/附加角度/松手即啟動(dòng)_delay_ms(100);/反應(yīng)延時(shí)ad_top=adc_read();b_jd=jd_cal(ad_top);if(b_jd90)fx=0;bs=(b_jd-90)/0.3516;/步進(jìn)電機(jī) 每步角度else fx=1;bs=(90-b_jd)/0.3516;bs_ext=bs*0.1;14moto_run(fx,bs,900);moto_run(fx,bs_ext,2000);check_valley();if(fx=0)fx=1;else fx=0;moto_run(fx,bs_ext,2000);moto_close();while(1);/=發(fā)揮

27、部分一=/unsigned char read_key()static unsigned char key_last=0;static unsigned char ld=0;/連帶unsigned char key=0;PIND|=0b11100000;PORTD|=0b11100000;_delay_ms(10);while(PIND=0b11100000);_delay_ms(10);if(KEY_START=0)key=3;if(KEY_UP=0)key=1;if(KEY_DOWN=0)key=2;if(key=key_last)if(ld=50)return key;else retu

28、rn 0;key_last=key;ld=0;return key;void moto_adjust()unsigned int moto_b=0;unsigned char key;unsigned char adjust_ok=0;LED_PORT=0 x00;SetBit(LED_PORT,2);SetBit(LED_PORT,LED_RUN);/*lcd1602_init();lcd1602_location(0,0);lcd1602_print_string();*/校正while(1)/*lcd1602_location(1,0);lcd1602_print_string(ADC:

29、);lcd1602_print_num(adc_read(),5);*/key=read_key();switch(key)case 1:moto_run(1,1,1000);break;case 2:moto_run(0,1,1000);break;case 3:adjust_ok=1;break;if(adjust_ok)break;void advance_q1()15unsigned int adc_now,adc_1,adc_2;unsigned int jd,jd_1,jd_2;unsigned int i;unsigned int temp1,temp2,temp3;start:moto_adjust();adc_now=adc_read();if(adc_now760)jd=(int)(double)adc_now*1.1797-720.34)+8;elsejd=(int)(double)adc_now*1.1797-720

溫馨提示

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

評論

0/150

提交評論