《自動往返電動小車》PPT課件
《《自動往返電動小車》PPT課件》由會員分享,可在線閱讀,更多相關《《自動往返電動小車》PPT課件(35頁珍藏版)》請在裝配圖網上搜索。
1、9/20/2020,謝兵華 制作,1,自動往返電動小車,9/20/2020,謝兵華 制作,2,任務,設計任務:設計制作一個自動往返于起跑線與終點之間的電動小車 實際目的:1.測試學生在單片機應用方面 的水平;2測試學生在電子電路設計與制作方面的應用能力;3測試學生的實際動手能力等。,9/20/2020,謝兵華 制作,3,設計的要求,車輛從起跑線出發(fā)(出發(fā)前,車體不得超出起跑線),到達終點先后停留10s,然后自動返回起跑線(允許倒車返回)。往返一次的時間應力求最短(從合上電源開關開始計時)。 到達終點線和返回起跑線時,停車位置離起跑線和終點線偏差應最?。ㄒ攒囕v中心點與終點線或起跑
2、線中心之間距離作為偏差的測量值)。 D-E之間為限速去,車輛往返均要求以低俗通過,通過時間不得少于8s,但不允許在限速區(qū)內停車。 自動記錄、顯示一次往返時間(記錄顯示裝置要求安裝在車上)。 自動記錄、先是行駛距離(記錄顯示裝置要求安裝在車上)。,基本要求:,9/20/2020,謝兵華 制作,4,一、電動小車系統(tǒng)設計方案,自動往返電動小車系統(tǒng)方框圖如圖1所示。采用單片機作為自動往返電動小車的檢測和控制核心。根據(jù)題目要求,系統(tǒng)可以劃分為幾個基本模塊,如圖 1所示。 對各模塊的實現(xiàn),分別有以下一些不同的設計方案:,,圖1,9/20/2020,謝兵華 制作,
3、5,1. 電動機驅動調速模塊 方案一:采用電阻網絡或數(shù)字電位器調整電動機的分壓,從而達到調速的目的。但是電阻網絡只能實現(xiàn)有級調速,而數(shù)字電阻的元器件價格比較昂貴。更主要的問題在于一般電動機的電阻很小,但電流很大;分壓不僅會降低效率,而且實現(xiàn)很困難。 方案二:采用繼電器對電動機的開或關進行控制,通過開關的切換對小車的速度進行調整。這個方案的優(yōu)點是電路較為簡單,缺點是繼電器的響應時間慢、機械結構易損壞、壽命較 短、可靠性不高。 方案三:采用由達林頓管組成的H型PWM電路。用單片機控制達林頓管使之工作在占空比可調的開關狀態(tài),精確調整電動機轉速。這種電路由于工作在管子的飽和截止模式下,效 率
4、非常高;H型電路保證了可以簡單地實現(xiàn)轉速和方向的控制;電子開關的速度很快,穩(wěn)定性也極強,是一種廣泛采用的PWM調速技術。 基于上述理論分析,擬選擇方案三。 2. 路面黑線探測模塊 探測路面黑線的大致原理是:光線照射到路面并反射,由于黑線和白紙的反射系數(shù)不同,可根據(jù)接收到的反射光強弱判斷是否到達黑線。 方案一:可見光發(fā)光二極管與光敏二極管組成的發(fā)射-接收電路。這種方案的缺點在于其他環(huán)境光源會對光敏二極管的工作產生很大干擾,一旦外界光亮條件改變,很可能造成誤判和漏判;雖然采取超高亮發(fā)光管可以降低一定的干擾,但這又將增加額外的功率損耗。 方案二:不調制的反射式紅外發(fā)射-接收器。由于采用紅
5、外管代替普通可見光管,可以降低環(huán)境光源干擾;但如果直接用直流電壓對管子進行供電,限于,9/20/2020,謝兵華 制作,6,管子的平均功率要求,工作電流只能在1OM左右,仍然容易受到干擾。 方案三:脈沖調制的反射式紅外發(fā)射-接收器。考慮到環(huán)境光干擾主要是直流分量,如果采用帶有交流分量的調制信號,則可大幅度減少外界干擾;另外,紅外發(fā)射管的最大工作電流取決于平均電流,如果使用占空比小的調制信號,在平均電流不變的情況下,瞬時電流可以很大(50-100mA),這樣也大大提高了信噪比。 基于上述考慮,擬采用方案三。 3. 車輪檢速及路程計算模塊 方案一:采用霍爾集成片。該器件內部由三片霍爾金屬
6、板組成,當磁鐵正對金屬板時,由于霍爾效應,金屬板發(fā)生橫向導通,因此可以在車輪上安裝磁片,而將霍爾集成片安裝在固定軸上,通過對脈沖的計數(shù)進行車速測量。 方案二:受鼠標的工作原理啟發(fā),采用斷續(xù)式光電開關。由于該開關是溝槽結構,可以將其置于固定軸上,再在車輪上均勻地固定多個遮光條,讓其恰好通過溝槽,產生一個個脈沖。通過脈沖的計數(shù),對速度進行測量。 以上兩種都是比較可行的轉速測量方案。尤其是霍爾元件,在工業(yè)土得到廣泛采用。但是在本題中,小車的車輪較小,方案一的磁片密集安裝十分困難,容易產生相互干擾。相反,方案二適用于精度較高的場合,可以車輪上加較多的遮光條來滿足脈沖計數(shù)的精度要求,因此擬采用方案二
7、。 4. 電源選擇 方案一:所有器件采用單一電源(6節(jié)M電池)。這樣供電比較簡單;但是由于電動機啟動瞬間電流很大,而且PWM驅動的電動機電流波動較大,會造成電壓,9/20/2020,謝兵華 制作,7,不穩(wěn)、有毛刺等干擾,嚴重時可能造成單片機系統(tǒng)掉電,缺點十分明顯。 方案二:雙電源供電。將電動機驅動電源與單片機以及其周邊電路電源完全隔離,利用光電藕合器傳輸信號。這樣做雖然不如單電源方便靈活,但可以將電動機驅動所造成的干擾徹底消除,提高了系統(tǒng)穩(wěn)定性。 我們認為本設計的穩(wěn)定可靠性更為重要,故擬采用方案二。 5. 小結 經過一番仔細的論證與比較,我們決定了系統(tǒng)各個主要模塊的最終方案如下:
8、 電動機驅動與調速模塊:采用達林頓管的H型PWM電動機驅動電路。 車輪檢速模塊: 采用光電斷續(xù)開關構成的光電感應系統(tǒng)。 路面黑線檢測模塊:采用調制的反射式發(fā)射-接收器。 電源:雙電源供電(6節(jié)M電池+1節(jié)9V方型電池),電動小汽車車體結構數(shù)據(jù),,9/20/2020,謝兵華 制作,8,系統(tǒng)組成及原理框圖如圖2 所示。以下分為硬件和軟件兩個方面進行具體分析。,圖2,9/20/2020,謝兵華 制作,9,二、系統(tǒng)的具體設計與實現(xiàn),1.系統(tǒng)的硬件設計 (1) 電動機PWM驅動模塊的電路設計與實現(xiàn) 具體電路見圖3。本電路采用的是基于PWM原理的H型驅動電路。該電路采用11P132
9、 大功率達林頓管,以保證電動機啟動瞬間的8A電流要求。,圖3,9/20/2020,謝兵華 制作,10,當Ug1為高電平 ,Ug2為低電平時,Q3、Q6 管導通,Q4、Q5管截止,電動機正轉。當Ug1為低電平,Ug2為高電平時,Q3、Q6管截止,Q4、 Q5 管導通,電動機反轉。另外四個二極管可以在Ug1由高變低時,通過D2、D4 兩個二管形成電動機電圈感應電壓的回路,起到了保護電動機的作用。 控制系統(tǒng)電壓統(tǒng)一為5V電源,因此若達林頓管基極由控制系統(tǒng)直接控制,則控制電壓最高為5V,再加上三極管本身的壓降,加到電動機兩端的電壓就只有4V左右,減弱了電動機的驅動力?;谏鲜隹紤],我們運用了 4N2
10、5光藕集成塊,將控制部分與電動機的驅動部分隔離開來,這樣不僅增加了各系統(tǒng)模塊之間的隔離度,也使驅動電流得到了大大的增強。 至于Ug1 與Ug2這對控制電壓,我們采用了200Hz的周期信號控制,通過對其占空比的調整,對車速進行調節(jié)。最小脈寬為0.2ms,速度共分25擋,可以滿足車速調整的精度要求。同時,可以通過Ug1與Ug2的切換來控制電動機的正轉與反轉。 (2) 路面黑線檢測模塊的電路設計與實現(xiàn) 為了檢測路面黑線,在車底的前部和中部安裝了兩個反射式紅外傳感器。為減少環(huán)境光源干擾,增加信噪比,采用脈沖調制的發(fā)射與接收電路。 發(fā)射、接收的具體電路見圖4。 發(fā)射部分采用55定時器產生9kHz
11、、占空比為1:5的方形脈沖信號,通 過三極管Q1的放大來驅動紅外發(fā)射管,實現(xiàn)路面檢測系統(tǒng)信號的調輸入制。接收部分的光敏二極管在不同的光 照強度下,電阻值會大幅改變。因 此可以通過改變島的大小,調整輸 出對路面灰度的敏感程度。本實驗 中,我們把電路參數(shù)設置為只對黑 色敏感,這樣甚至可以忽略路面上 的腳印。輸出的交流信號,經過隔直電容,整形后輸出,9/20/2020,謝兵華 制作,11,至于解調的一般做法是通過濾波電路后利用頻率解碼器解調。但是這樣做無法充分利用瞬時信噪比大的優(yōu)勢,而且也無法方便地調節(jié)接收敏感度。 因此,我們使用單片機同步檢測的方法。接收器產生的信號經過信號識別整形電路向單片機分
12、別指示兩個傳感器的探測信號。同時,發(fā)射電路的555定時器產生的調制信號作為同步信號輸入給單片機中斷。當單片機接收到中斷時,便去檢測傳感器信號,等連續(xù)檢測到若干個信號之后,再發(fā)送中斷通知單片機。 這樣做的優(yōu)點在于,可以充分利用單片機編程,等連續(xù)測到多個信號后才認為是黑線,避免將其他雜物誤判為黑線,以增強糾錯能力。,圖4,9/20/2020,謝兵華 制作,12,(3) 車速及路程檢測模塊的電路設計與實現(xiàn) 在車軸上固定有一個溝槽狀的斷式紅外光電開關,而在車輪側壁則伸出一圈遮光板,圓周上均勻分布15 個輸出方孔。車輪轉動時,方孔依次通過溝槽,光電開關便得到通斷相間的高低電平信號。得到的信號經過整
13、形,發(fā)送至單片機,以實現(xiàn)車速檢測和程計算。具體電路如圖5所示,圖5,在物理結構上,我們將該檢測裝置安裝在前車輪上。因為后輪在剎車時容易打滑、反轉,故安裝在前輪才能測得實際的車速和路程。,9/20/2020,謝兵華 制作,13,2. 系統(tǒng)的元件 單片機控制電路,主要實現(xiàn)對路面黑線的軟件檢測與糾錯,作為整個控制部分的核心,負責車速檢測、電動機驅動、數(shù)據(jù)顯示等功能。單片機具體電路如圖6所示。,圖6,9/20/2020,謝兵華 制作,14,(1)路面檢測程序 程序流程圖如圖7所示。該檢測算法的主要特點是:只有連續(xù)檢測到幾個黑線信號之后,才發(fā)中斷信號通知單片機到達黑線。這樣可以避免其他細小物體的
14、干擾。同樣,在到達黑線之后,只有連續(xù)檢測不到信號時,才取消中斷,避免黑線上的雜物干擾。,圖7,9/20/2020,謝兵華 制作,15,(2)單片機的的主控程序 單片機的中斷和定時器資源配置如表1所示。,表1, 黑線計數(shù)(中斷服務程序1)。由 于車底前部和中部裝有兩個傳感 器,采用 中斷和查詢結合的檢測方法。單片機在對黑線信號進行糾錯處理后,向自己的INTO發(fā)出中斷請求信號,并通過單片機的P1.4指明是哪一個傳感器檢測到黑線,在其中斷服務程序中進一步查詢中斷源(見圖8)。,圖8,9/20/2020,謝兵華 制作,16,為了保證程序的實時性,中斷服務程序盡量簡潔,故在程序中設置2個全局計數(shù)變量L
15、inenum1和Linenum2,分別對應兩個傳感器檢測到的黑線數(shù),服務程序僅僅累加計數(shù)變量,而到達黑線后的操作由主程序完成。 車速檢測(中斷服務程序2) 如前文所述,當車輪轉動時,安裝在輪胎上的圓形遮光板上的方孔依次通過槽型斷續(xù)式光電開關,每通過一個方孔便產生一個脈沖。因此只需記錄兩個脈沖所間隔的時間,便能得到實際車速(見圖9)。其中,時間差由定時器的時鐘計算得到。,圖9,同時,由累計脈沖的總數(shù)便可得到行駛的路程。本作品中,車輪周長18cm, 圓周上方孔數(shù)為15個,故一個脈沖對應1.2cm路程,即路程測量精度為1.2cm。,9/20/2020,謝兵華 制作,17,定時器服務程序。
16、 為了提高效率,我們將多個需要定時的模塊放在一個定時器服務程序中,其程序流程圖如圖10所示。通過分頻來實現(xiàn)各個不同功能。定時器頻率為5kHz。電動機PWM脈寬調制信號的產生:脈寬調制信號的一個周期為5000s。一個最小脈寬的時間為200s間,則速度可分為5000/200=25 擋。 系統(tǒng)時鐘的產生:只需設置一個全局變量不斷累加 ,便能提供一個系統(tǒng)時鐘。 LED數(shù)碼管的動態(tài)掃描:為了使人眼感覺不到抖動,掃描頻率應不低于60Hz,服務程序中將時鐘經16分頻后,得到5000/16=312.5 Hz,則4位數(shù)碼管的每一位平均掃描頻率為312.5/4=78Hz。,圖10,限速子程序。在限速區(qū)中為了實現(xiàn)
17、低速行駛的要求,最簡單的方法是減小功率。但這種開環(huán)系統(tǒng)缺點十分明顯。首先是對電池電量依賴性強,電量充足時可能開得過快,電量不足時則過慢;其次,當小車碰到擋板時, 由于阻力增加, 車速也會與正常行駛差異極大,乃至停車。,,9/20/2020,謝兵華 制作,18,因此,限速必須采用閉環(huán)系統(tǒng),即通過車速檢測的反饋,不斷調整電動機的驅動力。算法流程圖如圖11所示,圖11,為了直觀地指示當前限速狀態(tài),在車尾設有兩對紅綠指示燈,通過指示燈的狀態(tài)可清晰觀察該速度反饋系統(tǒng)的運行狀態(tài)。另外值得注意的是,判斷當前車速是否低于設定值不能通過計算兩次脈沖間隔來實現(xiàn)。因為車速很慢時,等待下一個脈沖的時間將無限變長;一旦
18、車子停駛,程序便永遠不能判斷當前車速。故檢測車速時設置了一個超時器,一旦超時還沒有來脈沖,便認為車速變慢或停止。,過線返回算法。 題目要求在到達終點線及返回起點線時壓線。當車速不快時,只需通過剎車便可解決;但如果車速太快,剎車后仍超出終點線時,就應該倒退回終點線上。而,9/20/2020,謝兵華 制作,19,且此時倒車必須為較低的速度,保證一次剎車即可壓線,否則可能產生來回往返的死循環(huán)。算法流程圖如圖12所示,圖12,9/20/2020,謝兵華 制作,20,主程序流程圖。如圖13所示。,圖13,9/20/2020,謝兵華 制作,21,總程序編程如:,#include #include #de
19、fine uchar unsigned char #define uint unsigned int sbit P1_0=P10; sbit P1_1=P11; sbit P1_2=P12; sbit P1_3=P13; float f=0; int a,counter; uchar LED0_data,LED1_data,LED2_data,LED3_data,LED4_data,LED5_data,i=0; uchar code segcode=0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90;//低電平有效,9/20/
20、2020,謝兵華 制作,22,void display(); void delay_10us(uint m); void delay_ms(uint n); void ting(); void zheng(); void fan(); void zheng_jiansu(); void fan_jiansu(); void init() TMOD=0 x51; TL0=(65536-20000)%256; TH0=(65536-20000)/256; TL1=0; TH1=0; TR0=1; TR1=1; ET0=1; EA=1;,9/20/2020,謝兵華 制作,23,IT0=1;//脈沖
21、方式 EX0=1;//開外部中斷0:加速 void dectobit(int dec) LED5_data=dec/100000; dec=dec%100000; LED4_data=dec/10000; dec=dec%10000; LED3_data=dec/1000; dec=dec%1000;,9/20/2020,謝兵華 制作,24,LED2_data=dec/100; dec=dec%100; LED1_data=dec/10; dec=dec%10; LED0_data=dec; void display() P2=0 x01; P0=segcodeLED5_data; dela
22、y_ms(1); P2=0 x02; P0=segcodeLED4_data; delay_ms(1); P2=0 x04; P0=segcodeLED3_data; delay_ms(1);,9/20/2020,謝兵華 制作,25,P2=0 x08; P0=segcodeLED2_data; delay_ms(1); P2=0 x10; P0=segcodeLED1_data; delay_ms(1); P2=0 x20; P0=segcodeLED0_data; delay_ms(1); void main() init(); while(1) dectobit(f); displ
23、ay();,9/20/2020,謝兵華 制作,26,if(a==1)zheng(); if(a==2)zheng(); if(a==3)zheng_jiansu(); if(a==4)zheng(); if(a==5)ting(); void zheng() P1_1=1; P1_0=0; P1_2=0; P1_3=1; delay_10us(2000); P1_0=1; P1_2=1; delay_ms(10); ,9/20/2020,謝兵華 制作,27,void zheng_jiansu() P1_1=1; P1_0=0; P1_2=0; P1_3=1; delay_10u
24、s(1000); P1_0=1; P1_2=1; delay_ms(5); void fan() P1_0=1; P1_1=0; P1_2=1; P1_3=0; delay_10us(2000);,9/20/2020,謝兵華 制作,28,P1_1=1; P1_3=1; delay_ms(10); void fan_jiansu() P1_0=1; P1_1=0; P1_2=1; P1_3=0; delay_10us(1000); P1_1=1; P1_3=1; delay_ms(5); void ting() P1=0 xff; ,9/20/2020,謝兵華 制作,29,v
25、oid delay_ms(uint n) //n 個 1ms延時程序 uint i; for(;n0;n--) for(i=0;i<124;i++); //1ms軟件延時 void delay_10us(uint m)//10us延時 while(m--) _nop_(); _nop_();_nop_();_nop_(); _nop_();_nop_();_nop_(); void timer0() interrupt 1 TL0=(65536-20000)%256;,9/20/2020,謝兵華 制作,30,TH0=(65536-20000)/256; ++i; if(i==5
26、0) i=0; f=(TH1*256+TL1/100); TH1=0; TL1=0; void waibu0() interrupt 0 counter++; if(counter==6) a++; if(a8)a=0; counter=0; ,9/20/2020,謝兵華 制作,31,(3) 軟件的其他特色 剎車時,借鑒了車輛制動裝置ABS(自動防抱死)功能,將整個剎車過程分割為幾個子過程,有效防止了輪胎打滑。原路返回時,充分利用上次正向行駛時得到的跑道長度數(shù)據(jù),進一步優(yōu)化性能。正向行駛時使用前部傳感器,逆向行駛時使用中部傳感器。在壓線時,則同時利用兩個傳感器判斷當前位置,提高停車精
27、度,并保證黑線計數(shù)正確,3. 其他功能的設計與實現(xiàn) (1)數(shù)碼管顯示 為了減少外部鎖存器和譯碼模塊,數(shù)碼管全部使用軟件進行動態(tài)顯示。在限速區(qū)內,數(shù)碼管顯示8s倒計時;在行駛過程中,顯示已駛路程;在終點停車時和返回起點后,交替顯示桂返時間與距離。(2)車頭方向的調整 由于原玩具車前輪裝有彈簧很容易發(fā)生隨機偏轉。為了精確調整方向,我們拆除了車上原有的轉彎控制電動機,設計了一個機械裝置固定了車輪的方向桿,且留出一個螺絲作為接口,實現(xiàn)對方向桿的微調。 (3)車速指示燈 在車尾兩端裝有兩對車速指示燈,當小車加速時,綠燈亮;當小車剎車減速時,紅燈亮。因此在限速區(qū)時,可明顯體會到算法的運行過程。在終點停留時
28、,紅燈閃爍10次代表10s倒計時。,4. 總的電路圖如下:,9/20/2020,謝兵華 制作,32,9/20/2020,謝兵華 制作,33,個人總結,歷時一段時間的畢業(yè)設計已經告一段落。經過自己不斷的搜索努力以及同學、老師們的耐心指導和熱情幫助,本設計已經基本完成。在這段時間里,老師、同學嚴謹?shù)闹螌W態(tài)度和熱忱的工作作風令我十分欽佩,他們的指導使我受益非淺。同時校圖書館的開放也為我的設計提供了大量的實習資料。 通過這次畢業(yè)設計,使我深刻地認識到學好專業(yè)知識的重要性,也理解了理論聯(lián)系實際的含義,并且檢驗了大學三年的學習成果。雖然在這次設計中對于知識的運用和銜接還不夠熟練,但是我將在以后的工作和學
29、習中繼續(xù)努力、不斷完善。這段時間的設計是對過去所學知識的系統(tǒng)提高和擴充的過程,為我今后的發(fā)展打下了良好的基礎。 由于自身水平有限,設計中一定存在很多不足之處,敬請各位老師批評指正。,9/20/2020,謝兵華 制作,34,意義,本設計可作為單片機初學者對單片機功能的了解及進一步學習的實訓教材,提高他們學習單片機的興趣和動手能力;也可開發(fā)汽車的自動避障功能,提高道路安全的模擬實驗;部分功能模塊,可應用于工廠的自動控制,例如無線遙控機器設備、工業(yè)產品的自動往返運輸。系統(tǒng)的自動尋跡為智能模塊,也可作為機器人愛好者的學習基礎材料。,9/20/2020,謝兵華 制作,35,參 考 資料:,陳永真、寧武和藍和慧主編。 新編全國大學生電子設計競賽試題精解選.北京:電子工業(yè)出版社,2009 張建民主編。自動控制原理.北京:中國電力出版社,2010 趙負圖主編。傳感器集成電路手冊,第一版,化學工業(yè)出版社,2004 王靜霞主編.單片機應用技術(C語言版).北京:電子工業(yè)出版社,2009 梅開鄉(xiāng)等主編。電子電路設計與制作。北京: 北京理工大學出版社,2010 劉涳主編。電氣及自動化專業(yè)畢業(yè)設計寶典。陜西:西安電子科技大學出版社,2008 朱定華主編。單片機原理及接口技術 馬忠梅主編。單片機的C語言應用程序設計,系主任 楊海瀾 教研室主任 王軍 指導教師:朱一多,
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。