- 相關推薦
物理與信息工程畢業(yè)論文
【摘要】 本系統(tǒng)采用凌陽16位單片機SPCE061A作為控制中心,由直流步進電機、紅外收發(fā)對管、4*4鍵盤及中文液晶顯示屏構成的懸掛運動控制系統(tǒng)。該系統(tǒng)能自由控制懸掛物體完成自行設定運動、畫圓運動、沿黑線運動等,并能正確顯示物體到達的坐標位置。
【關鍵詞】SPCE061A單片機 中文液晶顯示屏 逼近畫圓算法
A Control System For Suspension Movement
[Abstract]This design uses SPCE061A as the control core to build a suspension movement control system which consists of a DC step motor, infrared emitting tube, 4X4 keyboard and an LCD display screen for Chinese characters. The system can control the suspended objects to complete the movements set by itself, such as drawing the circles, moving along the black lines and doing other movements. It also can display the correct location of the coordinate where the object reaches.
Key words: SPCE061A Single chip, Chinese characters LCD, Closing Algorithm for circle drawing
一、方案的選擇與論證
1、單片機選擇
方案一:采用傳統(tǒng)的8位89C51單片機作為運動物體的控制中心。51 單片機具有價格低廉,使用簡單等特點,但其運算速度低,功能單一,RAM、ROM空間小等缺點。本題目在確定圓周坐標值時,需要進行大量的浮點數(shù)運算,若采用89C51需要做RAM,ROM來擴展其內(nèi)存空間,其硬件工作量必然大大增多。
方案二:采用16位單片機SPCE061A作為運動物體的控制中心。SPCE061A具有豐富的資源:RAM,ROM空間大、指令周期短、運算速度快、低功耗、低電壓、可編程音頻處理,易于編寫和調(diào)試等優(yōu)點。尤其在復雜的數(shù)學運算,其運算速度快,精度高,在控制步進電機時運行速度比一般51單片機快。
基于上述分析,擬選擇方案二。
2、電動機選擇
方案一:用步進電機實現(xiàn)物體的精確定位和方向控制。步進電機是一種脈沖控制電機,它是一種能將脈沖信號轉(zhuǎn)換為角位移的數(shù)模轉(zhuǎn)換器,可廣泛用于無需反饋控制但要求有精確位置的場合。
方案二:采用帶旋轉(zhuǎn)編碼器控制直流電機,電機運轉(zhuǎn)平穩(wěn),精度可以得到保證。但其驅(qū)動電路復雜,在短時間內(nèi)難與實現(xiàn)。
在本題中因考慮到控制畫筆畫圖準確性和電路的復雜性,擬選擇選用方案一,并采用控制性能高的步進電機來控制運動物體。
3、控制物體運動算法
方案一:直線插補法。直線插補法是在繪圖系統(tǒng)中常用的一種逐點比較算法。它的原理是:執(zhí)行機構每走一步,都要和給定軌跡上的坐標值進行一次比較,看當前位置和軌跡位置的關系,從而確定下一步的進給方向。如果當前位置在給定軌跡的下方,下一步向給定軌跡的上方走,反之則相反。如果當前位置在給定軌跡的里面,下一步向給定軌跡的外面走,反之則相反。這樣走一步看一步,決定下一步走向,形成“逐點比較”, 使走線逼近給定軌跡。
方案二:直線簡易算法。這種算法是根據(jù)計算機圖形學中直線的顯示方法改變而來,基本原理也是“逐點比較”,執(zhí)行機構根據(jù)當前位置和軌跡位置的關系,從而確定下一步的進給方向,但是數(shù)據(jù)的處理過程不同。在直線插補法中,一次循環(huán)只能確定一個走向(X向或Y向),而在直線簡易算法中,一次循環(huán)可以走兩步,這樣可以大大提高效率。同時,直線插補法要考慮象限的問題,不同的象限有不同的計算公式,而直線簡易算法繞開了象限的問題,可以節(jié)省很多代碼。
結(jié)合軟件編程的難易和上面的比較,擬選擇選用方案二。
4、黑線探測模塊
方案一:采用紅外反射式探測,即用已調(diào)的紅外線垂直射到板面,經(jīng)反射后轉(zhuǎn)換為電信號送入單片機處理,這是一種很普遍的應用,但是它存在著缺點:(1)由于反射距離較短,紅外反射功率小,如果板面的紙凹凸不平或白紙表面有雜物,也會使單片機誤判。(2)由于板面的黑線可能是墨水或者膠布,兩種雖然都是黑色,但經(jīng)實際應用發(fā)現(xiàn)其反光程度均不同,也會對紅外傳感器造成一定的干擾。
方案二:采用多路陣列式光敏電阻組成的光電探測器。因為光敏電阻探測到黑線時,黑線上方的電阻值發(fā)生變化,經(jīng)過電壓比較器比較將信號送給單片機處理,從而控制物體做相應的動作。光敏電阻對環(huán)境光的識別,要求考慮外界環(huán)境光的影響,測試時可能在室內(nèi)或室外,為了消除外界光照強度的干擾,在每個光敏電阻旁邊加了一個高亮度發(fā)光二極管,這樣每個光敏電阻的環(huán)境一樣,即使在黑暗的條件下也可以正常工作。測試結(jié)果表明使用這種方法就可以消除外界光的干擾。
基于上面的討論,選用了抗干擾能力強的方案二。
5、顯示方案
方案一:采用LED數(shù)碼管顯示器。LED 數(shù)碼管亮度高,醒目,但是其電路復雜,占用資源較多,顯示信息量較小。
方案二:采用漢字LCD液晶顯示器。LCD有明顯的優(yōu)點:微功耗、尺寸小,超薄輕巧、顯示信息量大、字跡清晰、美觀、視覺舒適;可以用中文LCD液晶進行菜單顯示,使整個控制系統(tǒng)更加人性化。
基于上面的比較分析和現(xiàn)有的LCD器件,擬選用方案二。
二、系統(tǒng)的具體設計與實現(xiàn)
1、系統(tǒng)的總體設計方案
如圖1所示采用凌陽16位SPCE061A單片機作為運動物體的控制中心,進行數(shù)學計算、對光電傳感器送來的信號進行處理來控制運動物體的運行方向、計算運行物體的坐標位置、LCD數(shù)據(jù)顯示、鍵盤控制等。
圖 1 系統(tǒng)原理圖
2、系統(tǒng)硬件設計與計算
(1)電機驅(qū)動電路的設計與實現(xiàn)
圖 2 電機驅(qū)動電路
具體電路如圖2,該電路采用L298驅(qū)動芯片,L298驅(qū)動芯片是性能優(yōu)越的小型直流電機驅(qū)動芯片之一。它可被用來驅(qū)動兩個直流電機或者是一個步進電機。在4——46V的電壓下,可以提供2A的驅(qū)動電流。L298還有過熱自動關斷功能,并有反饋電流檢測功能,符合電機驅(qū)動的需要。
由于采用的是步進電機,所以對電機的驅(qū)動必須是采用脈沖控制。
本作品中的控制系統(tǒng)采用5V電源,電機驅(qū)動L298的電源也使用5V;诜(wěn)定性考慮,我們運用了TLP521光耦集成塊,將主控制部分電源與電機驅(qū)動部分的電源隔離開來,這樣減少電機對主控制電路的干擾。
(2)黑線探測設計與實現(xiàn)
利用該模塊探測板面黑線的原理是:光線照射到板面并反射,由于黑線和白紙的反射系數(shù)不同,黑線上方的電阻值發(fā)生變化,經(jīng)過電壓比器比較將信號送給單片機處理。電路示意圖如圖3:
2
1,3為光敏電阻 黑色引導線 2,4為光敏電阻
圖3 黑線探測示意圖
本電路(如圖3)利用光敏電阻在不同的光照的條件下電阻變化的原理。根據(jù)第幾路的光敏檢測到黑線來控制步進電機的轉(zhuǎn)向。將光敏電阻分為前、后、左和右四個方向,設計為‘+’字形。 采用一組兩個探測頭,當出現(xiàn)一個探測頭的誤判時,可以通過軟件禁止物體跑出軌跡。當探測頭1檢測到黑線時,物體左走,同時禁止物體右轉(zhuǎn)防止跑出黑線,直到中間的探測頭2或探測頭4再次檢測到黑線證明物體已經(jīng)回到黑線上才向前走,這樣就可以保證物體不會跑出黑線。在試驗時采用的電路如圖4。
圖4 黑線探測原理圖
由于在正常狀態(tài)下每個光敏電阻感光量相同,通過調(diào)節(jié)電位器,使得電壓比較器輸出為零,當內(nèi)側(cè)(黑線兩側(cè))的光敏電阻進入黑色引導帶時,感光量大大改變,電壓比較器翻轉(zhuǎn)電壓為高電平。將電平變化送到單片機控制物體的調(diào)整方向。用這種方法即使板面受到不同程度的光照射,比較器正向輸入端和反向輸入端的變化值相等,比較器輸出端不變。只有黑色引導線進入內(nèi)側(cè)一組光敏電阻區(qū)域才能引起感光量大大改變,比較器才翻轉(zhuǎn),這種方法抗干擾能力強。
(3)紅外線無線控制臺電路的設計
采用紅外線無線通信可以對運動物體進行遠程控制并傳輸物體的坐標位置到遠處的控制臺顯示。發(fā)射電路如圖5示,由NE555構成無穩(wěn)多諧振蕩器,其振蕩頻率由電阻W1、R1和C3決定,通過調(diào)節(jié)W1可以改變振蕩頻率,使輸出頻率為38KHz。T作為單片機的串口輸出端,當T為高電平時,T1截止,T2、T3沒有振蕩頻率。當T為低電平, T1導通,這樣38KHz就可以對T出來的信號進行調(diào)制;調(diào)制后的信號經(jīng)過T2、T3后級電流放大去控制紅外線發(fā)射管。
紅外線的接收電路直接采用彩色電視機的一體化接收頭,達到預期效果。
圖 5 紅外無線控制臺原理圖
(4)語音播放電路
通過SPY0030功率放大器,驅(qū)動喇叭,完成對物體運行時間的語音播放(圖6)
圖 6 語音播放電路
(5)顯示模塊
采用漢字液晶顯示屏作為顯示模塊,同時使用4*4鍵盤操作,以菜單形式進行顯示。顯示設定位置值、當前位置值。
三、系統(tǒng)軟件設計及數(shù)學運算
(1)系統(tǒng)主程序流程框圖(圖7)
圖7 主程序流程圖
(2)物體位置控制部分
圖 8 物體位置示意圖
1、坐標點參數(shù)的計算
將畫筆所在的位置設定為整個物體的位置。如圖8
設定物體位置的初值坐標為(X,Y)
L1=
L2=
設電機A 的步進為a cm, 電機B的步進為b cm,物體高度為h cm。
如圖8為物體在畫板某一位置,則有:
解得X軸點位置和h為
則Y軸點位置
Y=115-h
控制物體從一點到另一點的實現(xiàn)就是當X、Y已知條件,求電機的步進過程。由圖8 解得:
解得
(cm)
(cm)
由此,利用軟件實現(xiàn)以上算法來分別控制兩個步進電機的步進a,b,這樣就可以向控制系統(tǒng)輸入起點坐標和終點坐標讓物體在畫板置任意行走。因此物體可以由自行設定的兩點坐標走直線。也可以將曲線分為多點坐標,采用直線逼近法走曲線。
2、多邊形逼近畫圓實現(xiàn)畫圓算法
一個正多邊形,當其邊數(shù)n足夠大,即每邊所對的圓心角△ 足夠小時,就非常接近一個圓。這樣,畫圓的問題就變成畫多邊形、畫直線的問題了,只要確定n和 角的大小,多邊形頂點的坐標位置,就可以繞開煩瑣的象限問題,直接利用上面的畫線的簡易算法來實現(xiàn)畫圓。
1)、n和 角的大小的確定
在用正多邊形逼近一個圓時,假設多邊形的各個頂點落在圓周外側(cè),而各邊中點落在圓周內(nèi)側(cè),并假設它們偏離圓周的絕對誤差均為ε,如圖9所示,只要ε<0.5,則邊線與弧線的差別就可以忽略。圖9中,R為圓半徑,正多邊形的邊數(shù)n與每邊所對圓心角△ 的關系為
n=2π/△
根據(jù)圖2-2-2的幾何關系,不難得到 (R+ε)-(R+ε)cos(△ /2)=2ε (1)
一般△ 遠小于1弧度,cos(△ /2)≈1-(△ )2/8,故上式可簡化為:
(R+ε)(△ )2/8=2ε (2)
由式1和式2解得:
n=0.5π ≈0.5π (3)
若取ε<0.5,代入式(3)可得
n≥2.5π
當圓心為(m,n)時,將圓分成360份,假設物體走到第 份時,以圓心為原點,物體的坐標(X,Y) 計算為
的角度
物體的位置
求得物體的坐標位置后在利用以上坐標點參數(shù)的計算得出來的結(jié)果控制物體在兩點坐標間走直線。多邊形的邊數(shù)n的值越大,畫出來的圓精度就越高。
2)、多邊形逼近法畫圓流程框圖
在上面的討論中,知道了多邊形的邊數(shù)n的值和多邊形頂點坐標的推導方法,這樣可以利用畫直線的簡易算法用線段來完成圓。以圓心在(X1,Y1),起點在(X1-R,Y1),順時針方向畫圓流程圖如下圖10。
由于在直線的簡易算法處理過程中,起點為坐標(X1-R,Y1)。所以在多邊行逼近中,每畫一條直線,都要把坐標平移把起點xi和yi放到起點,再調(diào)用直線簡易算法。
這種方法簡單易行,在直線簡易算法的基礎上經(jīng)過簡單的數(shù)學計算處理,多次畫線就可以實現(xiàn)畫圓,相比較圓弧插補法,多邊形逼近法程序代碼少,可以大大節(jié)省內(nèi)存空間;程序流程簡單,容易編寫調(diào)試;運行速度也相對圓弧插補法有較大提高。
3)、軟件編程
軟件編程使用凌陽u'nSP IDE 1.8.4平臺,該平臺集程序的編輯、編譯、鏈接、調(diào)試和仿真等功能為一體,可以使用C語言和匯編語言混合編程,編譯效率高,在線調(diào)試方便。具體程序略。
3、實際測試
(1)測試設備
模擬行使路線:示意圖見試題(E題)
卷尺:精度0.01m
秒表:精度0.01s
坐標紙采用噴塑坐標紙(調(diào)試中易于擦洗無用的畫筆軌跡)
(2)走自行運動實際測量結(jié)果
第一次走實際測量結(jié)果:到達目的坐標,運動軌跡與預期軌跡之間的最大偏差1.7cm,運行時間為124秒。
第二次走實際測量結(jié)果:離達目的坐標1.3 cm,運動軌跡與預期軌跡之間的最大偏差1.4cm,運行時間為131秒。
第三次走實際測量結(jié)果:離達目的坐標1.1 cm,運動軌跡與預期軌跡之間的最大偏差1.3cm,運行時間為147秒。
第四次走實際測量結(jié)果:離達目的坐標1.5 cm,運動軌跡與預期軌跡之間的最大偏差1.1cm,運行時間為118秒。
第五次走實際測量結(jié)果:離達目的坐標0.8 cm,運動軌跡與預期軌跡之間的最大偏差1.3cm,運行時間為138秒。
第六次走實際測量結(jié)果:離達目的坐標1.4 cm,運動軌跡與預期軌跡之間的最大偏差1.9cm,運行時間為128秒。
六次運行物體離達目的坐標最大誤差為1.5 cm,運動軌跡與預期軌跡之間的最大偏差1.9cm。平均運行時間約為130秒。達到了預期的效果。
(3)畫圓實際測量結(jié)果
畫圓測試結(jié)果如下表
第一次畫圓以(40,50)為圓心,對圓周進行8個點采樣
圓上的坐標物體實際坐標
(15,50)(17,50)
(22,68)(23.8,69.7)
(40,75)(40,74)
(58,68)(56.5,66)
(65,50)(64,50.4)
(58,32)(59.3,31)
(40,25)(40,24.2)
(22,32)(23.4,32.7)
最大誤差為1.8cm,運行時間為225秒,畫筆曲線接近圓。
第二次畫圓以(40,50)為圓心,對圓周進行8個點采樣
圓上的坐標物體實際坐標
(15,50)(15.5,50.6)
(22,68)(21.9,69.4)
(40,75)(40.5,74)
(58,68)(58.3,66.7)
(65,50)(64.8,50.2)
(58,32)(59.1,34..2)
(40,25)(40.6,24.5)
(22,32)(23.5,32.4)
最大誤差為2.2cm,運行時間為224秒畫,畫筆曲線接近圓。
第三次畫圓以(40,50)為圓心,對圓周進行8個點采樣
圓上的坐標物體實際坐標
(15,50)(15,50.6)
(22,68)(22.2,69.4)
(40,75)(38.5,74.1)
(58,68)(56.6,66.7)
(65,50)(65.8,51.7)
(58,32)(59.3,31.1)
(40,25)(39.6,24.5)
(22,32)(22.5,32.7)
最大誤差為1.7cm,運行時間為221秒,畫筆曲線接近圓。
三次畫圓,運動軌跡與預期軌跡之間的最大偏差2.2cm,平均運行時間約為224秒,達到了預期的效果。
(4)走黑線實際測量結(jié)果
第一次走黑線走完連續(xù)線段,運動軌跡與預期軌跡之間的偏差1.8cm,連續(xù)線段運行時間為95秒。
第二次走黑線走完連續(xù)線段,運動軌跡與預期軌跡之間的偏差2.3cm,連續(xù)線段運行時間為98秒。
第三次走黑線走完連續(xù)線段,運動軌跡與預期軌跡之間的偏差1.6cm,連續(xù)線段運行時間為101秒。
第四次走黑線走完連續(xù)線段,運動軌跡與預期軌跡之間的偏差0.9cm,連續(xù)線段運行時間為94秒。
第五次走黑線走完連續(xù)線段,運動軌跡與預期軌跡之間的偏差2.2cm。走過第一個斷點,走斷續(xù)線段運動軌跡與預期軌跡之間的偏差2.5cm,連續(xù)線段運行時間為95秒,第一個間斷線段運行時間為45秒。
第六次走黑線走完連續(xù)線段,運動軌跡與預期軌跡之間的偏差1.5cm。走過第一個斷點,走斷續(xù)線段運動軌跡與預期軌跡之間的偏差2.1cm,連續(xù)線段運行時間為97秒,第一個間斷線段運行時間為54秒。
第七次走黑線走完連續(xù)線段,運動軌跡與預期軌跡之間的偏差1.4cm。走過第二個斷點,走斷續(xù)線段運動軌跡與預期軌跡之間的偏差1.5cm,連續(xù)線段運行時間為92秒,兩個間斷線段運行時間共為96秒。
第八次走黑線走完連續(xù)線段,運動軌跡與預期軌跡之間的偏差1.2cm。走過第二個斷點,走斷續(xù)線段運動軌跡與預期軌跡之間的偏差1.9cm,連續(xù)線段運行時間為96秒,兩個間斷線段運行時間共為102秒。
八次運行物體運動軌跡與預期軌跡之間的最大偏差2.5cm,連續(xù)線段平均運行時間約為95秒,間斷線段平均運行時間約為98秒,達到了預期的效果。
(5)其他附加功能
1、語音播報功能
用秒表計時結(jié)果與單片機語音播報物體運行時間相符。
2、紅外無線控制控制臺
紅外無線控制控制臺硬件已經(jīng)完成,但是由于時間問題,紅外無線控制臺的軟件沒有加到主體程序里,沒有進行該項測試。
4、結(jié)論
本作品采用凌陽16位單片機SPCE061A作為運動物體的控制中心,SPCE061A具有比51單片機更多、更強的功能。使用SPCE061A單片機的語音功能給本作品帶來了很多趣味。采用主控制電路電源與電機電源光電隔離,減少電機對主控制電路的干擾。采用多邊形逼近法畫圓和優(yōu)化算法進行自動控制,實現(xiàn)了準確的定位。
參考資料:
{1}北陽資料.C語言在凌陽十六位單片機中的應用
{2}羅亞非.凌陽十六位單片機應用基礎.北京航空航天大學出版社
{3}徐愛鈞.單片機高級語言C51Windows環(huán)境編程與應用.電子工業(yè)出版社
{4}凌陽單片機網(wǎng).
{5}陳振初,蔡宣平. 計算機圖形顯示原理(軟件).國防科技大學出版社
{6}王力虎.李紅波. PC控制及接口程序設計實例. 科學出版社
{7}李朝青.無線發(fā)送/接收IC芯片及其數(shù)據(jù)通信技術選編
{8}何立民.單片及應用技術選編
{9}肖景和.趙健. 實用遙控電路
{10}涂時亮. 張友德. 單片微機控制技術. 復旦大學出版社
【物理與信息工程畢業(yè)論文】相關文章:
電子信息工程畢業(yè)論文簡單題目11-16
建筑工程畢業(yè)論文06-16
信息技術碩士畢業(yè)論文提綱范文06-12
工程碩士畢業(yè)論文致謝05-03
電力工程畢業(yè)論文提綱02-09
通信工程監(jiān)理畢業(yè)論文08-09
機械工程畢業(yè)論文提綱模板06-04
軟件工程畢業(yè)論文開題報告07-01
建筑工程畢業(yè)論文14篇06-17