西安交通大學agv設計自動循跡代步輪椅設計說明書_第1頁
西安交通大學agv設計自動循跡代步輪椅設計說明書_第2頁
西安交通大學agv設計自動循跡代步輪椅設計說明書_第3頁
西安交通大學agv設計自動循跡代步輪椅設計說明書_第4頁
西安交通大學agv設計自動循跡代步輪椅設計說明書_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

..機自16班機械部分王劍虹2110101145電路部分機自16班機械部分王劍虹2110101145電路部分佀昶2110302019軟件部分羅運運2110101141自動循跡代步輪椅設計說明書目錄1、概述11.1總體概述21.2市場背景21.3適用人群32、機械部分42.1設計要求42.2具體機構設計和標準件選擇42.2.1車架設計42.2.1.1前車架設計52.2.1.2后車架設計62.2.2電機選擇62.2.3后輪選擇72.2.4前輪選擇82.3可靠性分析83、控制電路部分93.1主芯片選擇93.2位置檢查模塊123.3電機驅動模塊選擇134.系統(tǒng)軟件的設計184.1應用軟件的設計184.2軟件測試184.3電機選擇204.4輪椅轉向系統(tǒng)的設計264.5具體程序代碼28參考文獻371、概述1.1總體概述自動循跡代步輪椅是一款輔助老人、殘疾人士出行的自動循跡電動輪椅。其整體外觀如圖1.1所示。其設計思想是使用光電循跡原理,結合軟件編程,機械控制等方法,達到自動循跡的效果。此產品設計過程中綜合了機電一體化設計思想,將機械和電子有機結合起來,用電子輔助機械,使在功能不變的前提下結構盡量簡單,運作可靠。產品的設計從用戶角度出發(fā),將產品設計得人性化。本產品使用電瓶作為動力,能源清潔,獲取方便。車架選用鋼材結構,保證強度的前提下,使結構緊湊可靠。輪胎使用實心橡膠輪胎,減震性能良好,避免用戶充氣的麻煩。圖1.1自動循跡輪椅整體外觀1.2背景市場隨著能源短缺和環(huán)保需要,電動車所占的比重越來越大。相對傳統(tǒng)機車,電動車擁有結構簡單,能源清潔,重量輕,運行可靠,維修方便,價格低廉等優(yōu)點。設計過程中采用了機電一體化設計思路,使機械與電子部分充分結合起來,機電一體化設計模式見圖1.2。圖1.2機電一體化設計模式簡介近幾年,電動輪椅也逐步發(fā)展起來,并且逐年改進,功能越來越完善??梢娫陔妱虞喴芜@個方向是很有市場前景的。本產品在結構上對普通電動輪椅進行了優(yōu)化,使結構簡單,運行可靠。在功能上加入了自動循跡功能,主要使用對象是不能自主活動的老人,病人和殘疾人。對比老式電動輪椅,本產品主要有以下優(yōu)點:1、結構更加輕便、可靠;2、設計過程中采用了機電一體化設計思想,用電子控制機械,使功能更加齊全,結構簡單;3、加入了自動循跡功能,特別適合用于醫(yī)院,療養(yǎng)院,養(yǎng)老院使用;4、電機,電瓶等部件使用標準件,維修方便,價格低廉;1.3適用人群本產品主打功能是自動循跡功能,即不需要外部人員和乘坐者的操作便可以循著事先規(guī)劃好的路線前進,到達標準位置停下,返回等過程。適合用于醫(yī)院,療養(yǎng)院,養(yǎng)老院使用。未至于本產品時,一個護士或者工作人員只能照看一個病人,而在使用本產品后,一名護士可以同時照看多名病人。每位病人的輪椅按著事先安排好的路線前進,在病人運輸,休閑散步等方面有著極大優(yōu)勢。相信本產品能為這些事業(yè)帶來極大的方便。2、機械設計部分2.1設計要求本產品要實現的功能主要有1、能載人正常行走,遇到緊急情況能安全停車;2、給老人、病人、殘疾人使用,要求避震效果好;3、能實現自動循跡功能;4、結構合理,安全可靠;因此具體的設計要求如下:1、能載重80kg以上,主要受力機構應力不超過需用值,保證一定的安全系數,變形不查過許用值;2、通過對測得電路的分析,機械部分接受到電路部分的控制后能正確實現前進,后退,轉彎,停車等功能;3、有良好避震功能;4、為方便攜帶和搬運,重量不超過70kg;2.2具體機構設計和標準件選擇車架設計為達到良好的避震效果,車架分為前后兩個部分,前后兩車架使用螺栓和減震機構進行連接。連接情況如圖1.3所示。圖1.3車架總體結構2.2.1.1前車架設計前車架的主要結構如圖1.4所示。前車架設計中重要使用了標準的方鋼和圓管,材料為低碳鋼,通過焊接的方式進行連接。為保證強度和足夠空間,前車架采用雙層結構設計。車架前方伸出圓管為連接腳踏板用。前車架通過螺栓與后車架和減震機構連接。側邊的圓環(huán)是連接扶手和前車輪用。圖1.4前車架結構展示2.2.1.2后車架設計后車架主要使用標準圓管焊接而成,主要結構如圖1.5所示。前方通過螺栓與前車架連接,中間圓鋼與電機連接,圓鋼上焊接的方塊用于電機的定位。中間中空的部位用于放置電瓶,為保證足夠運行時間和路程,預留了較大空間來存放大容量的電瓶。后方伸出的部分用于安裝防傾倒的后輪。圖1.5后車架結構示意圖電機選擇計算電機所需轉速和扭矩,考慮減速器減速比,選擇直流電機,12v電壓。電機和減速器外觀如圖1.6所示。圖1.6電機及減速器外形展示后輪選擇考慮到電機轉速和扭矩,所需的運行速度為10km/h,有良好的減震性能。選擇14寸實心橡膠輪作為驅動后輪。外形如圖1.7所示。輪轂為鋁合金材質,輪胎為實心橡膠。后輪為驅動輪,通過兩個后輪的轉速差來實現轉向。選用實心橡膠輪胎在保證良好避震性能的前提下避免了用戶充氣的麻煩。圖1.7后輪外形圖前輪選擇前輪選擇8寸萬向輪,材質為塑料和橡膠。在后輪的驅動下,前輪隨著轉向。外形如圖1.8所示。圖1.8前輪外形展示2.3可行性分析取前車架和后車架主要部件進行受理分析,受力分析報告見附錄。滿足強度要求。3.控制電路的設計控制電路作為控制程序的載體,主要分為主控芯片、位置檢測模塊和電機驅動模塊。3.1主控芯片的選擇經小組討論,我們決定采用技術成熟且被廣泛使用的80C51單片機。80C51單片機屬于MCS-51系列單片機,由Intel公司開發(fā),其結構是8048的延伸,改進了8048的缺點,增加了如乘〔MUL、除〔DIV、減〔SUBB、比較〔CMP、16位數據指針、布爾代數運算等指令,以及串行通信能力和5個中斷源。采用40引腳雙列直插式DIP〔DualInLinePackage,內有128個RAM單元及4K的ROM。80C51有兩個16位定時計數器,兩個外中斷,兩個定時計數中斷,及一個串行中斷,并有4個8位并行輸入口。80C51內部有時鐘電路,但需要石英晶體和微調電容外接。由于80C51的系統(tǒng)性能滿足系統(tǒng)數據采集及時間精度的要求,而且產品產量豐富來源廣,應用也很成熟,故采用來作為控制核心。以下對其管腳進行簡單的介紹。圖3.180C51管腳圖Vss<20腳>:接地Vcc〔40腳:主電源+5VXTAL1〔19腳:接外部晶體的一端。在片內它是振蕩電路反相放大器的輸入端。在采用外部時鐘時,對于HMOS單片機,該端引腳必須接地;對于CHMOS單片機,此引腳作為驅動端。XTAL2〔18腳:接外部晶體的另一端。在片內它是一個振蕩電路反相放大器的輸出端,振蕩電路的頻率是晶體振蕩頻率。若需采用外部時鐘電路,對于HMOS單片機,該引腳輸入外部時鐘脈沖;對于CHMOS單片機,此引腳應懸浮。RST〔9腳:單片機剛接上電源時,其內部各寄存器處于隨機狀態(tài),在該腳輸入24個時鐘周期寬度以上的高電平將使單片機復位〔RESETPSEN〔29腳:在訪問片外程序存儲器時,此端輸出負脈沖作為存儲器讀選通信號。CPU在向片外存儲器取指令期間,PSEN信號在12個時鐘周期中兩次生效。不過,在訪問片外數據存儲器時,這兩次有效PSEN信號不出現。PSEN端同樣可驅動8個LSTTL負載。我們根據PSEN、ALE和XTAL2輸出端是否有信號輸出,可以判別80C51是否在工作。ALE/PROG〔30腳:在訪問片外程序存儲器時,此端輸出負脈沖作為存儲器讀選通信號。CPU在向片外存儲器取指令期間,PSEN信號在12個時鐘周期中兩次生效。不過,在訪問片外數據存儲器時,這兩次有效PSEN信號不出現。PSEN端同樣可驅動8個LSTTL負載。我們根據PSEN、ALE和XTAL2輸出端是否有信號輸出,可以判別80C51是否在工作。EA/VPP〔31腳:當EA端輸入高電平時,CPU從片內程序存儲器地址0000H單元開始執(zhí)行程序。當地址超出4KB時,將自動執(zhí)行片外程序存儲器的程序。當EA輸入低電平時,CPU僅訪問片外程序存儲器。在對87C51EPROM編程時,此引腳用于施加編程電壓VPP。輸入/輸出引腳:〔1P0.0—P0.7<39腳—32腳>〔2P1.0—P1.7〔1腳—8腳〔3P2.0—P2.7〔26腳—21腳〔4P3.0—P3.7〔10腳—17腳圖3.2主控芯片外圍電路主控芯片選擇完畢后,還需對其外接電路進行設計。外接電路要與電機控制模塊和位置檢測模塊相適應,同時一些基本的電路如晶振的接法和頻率的選擇,則參照有關資料進行連接。下面結合實際電路來介紹一下。每個單片機系統(tǒng)里都有晶振,全稱是叫晶體震蕩器,在單片機系統(tǒng)里晶振的作用非常大,他結合單片機內部的電路,產生單片機所必須的時鐘頻率,單片機的一切指令的執(zhí)行都是建立在這個基礎上的,晶振的提供的時鐘頻率越高,那單片機的運行速度也就越快。其實晶振用一種能把電能和機械能相互轉化的晶體在共振的狀態(tài)下工作,以提供穩(wěn)定,精確的單頻振蕩。在通常工作條件下,普通的晶振頻率絕對精度可達百萬分之五十。高級的精度更高。有些晶振還可以由外加電壓在一定范圍內調整頻率,稱為壓控振蕩器〔VCO。晶振的作用是為系統(tǒng)提供基本的時鐘信號。通常一個系統(tǒng)共用一個晶振,便于各部分保持同步。有些通訊系統(tǒng)的基頻和射頻使用不同的晶振,而通過電子調整頻率的方法保持同步如上圖所示,給單片機加上晶振X1,查閱單片機資料。將其頻率調到22MHz。RC復位電路的工作原理是,上電前電容里的電荷放光,上電瞬間,電源通過電阻向電容充電,在充電過程中,RESET的電壓慢慢上升,對外部電路進行復位,當RESET上升到復位高電平時,外部系統(tǒng)開始工作。這里存在兩個問題,一個是必須合理選擇電阻和電容的值否則復位時間過長或過短都不能滿足要求,第二個問題是當系統(tǒng)正常復位后在工作狀態(tài)下,電源突然有一個較短時間的大幅度抖動。因此設計復位電路主要考慮這兩個問題來選取電阻電容值。P1.0—P1.5與L298N使能端和輸入端相連,P0.0—P0.2因為有AD轉化功能,所以用來與光電檢測器相連,接受位置信號。2.2位置檢測模塊位置檢測采用反射式光電傳感器。其原理如下:圖3.3TCRT5000及其信號放大電路光電傳感器由兩部分組成,一個發(fā)光二極管和一個光敏二極管。給發(fā)光二極管通電,使其發(fā)光。若檢測到黑線,則發(fā)出的光被黑線吸收,光敏二極管接收不到反射回來的光,OUT端輸出則為低電平。反之則為高電平。我們通過市場調研,了解到TCRT5000比較常用,且性能可以滿足需求,所以決定采用TCRT5000作為位置檢測傳感器。以下為它的基本參數:光學-反射式-模擬輸出檢測距離:0.591"<15mm>檢測方法:反射電壓-集電極發(fā)射極擊穿〔最大:70V電流-集電極<Ic>〔最大:100mA電流-DC正向<If>:60mA輸出類型:光電晶體管工作溫度:-25°C~85°C考慮到控制系統(tǒng)和整體性能,我們決定采用三個TCRT5000檢測位置。有關TCRT5000個數選擇,在控制算法設計中進行具體介紹。2.3電機驅動模塊的選擇經討論,我們決定選擇L298N芯片對兩個直流電機進行驅動。L298N電機驅動模塊具有以下特點:可實現電機正反轉及調速;啟動性能好,啟動轉矩答;工作電壓可達到36V,4A;可同時驅動兩臺直流電機。L298N是SGS公司的產品,即是15腳Multiwatt封裝的。內部包含4通道邏輯驅動電路,可以方便的驅動兩個直流電機或一個兩相步進電機。因采用單個直流電機驅動,故設計成單直流雙橋合并電路。暑促電壓最高可達50V,可以直接通過電源來調節(jié)輸出電壓,而且可以直接用單片機的IO口提供信號,而且電路簡單,使用方便。L298N使能端為高電平使能,使能端EN1、EN2可以接I/O口控制也可直接接電源正一直使能,至于使能端是接固定電平還是接I/O口,視具體情況而定,若I/O口資源夠用可接I/O口控制,若不夠用,可直接接高電平。同時,控制電機的PWM脈沖也可以從兩個使能端輸入,那么四個輸入引腳IN1、IN2、IN3、IN4只需設置為相應的高低電平可以控制電機的正反轉,假如IN1給固定高電平,IN2給固定低電平電機正轉,那么IN1給低IN2給高就可實現反轉,IN3、IN4同理。L298N的基本參數如下:類型:半橋輸入類型:非反相輸出數:4電流-輸出/通道:2A電流-峰值輸出:3A電源電壓:4.5V~46V工作溫度:-25°C~130°C安裝類型:通孔封裝/外殼:Multiwatt-15〔垂直,彎曲和錯列引線供應商設備封裝:15-Multiwatt包裝:管件器件型號L298N制造商STMicroelectronics產品型號MotionMotorControl圖3.4L298N管腳圖上圖是L298N的管腳圖VSS:芯片電壓5V。VCC:電機電壓,最大可接50V。GND:共地接法。OUT1~OUT4:輸出端,接電機。ENA、ENB:高電平有效,ENA、ENB分別為IN1和IN2、IN3和IN4的使能端。IN1~IN4:輸入端,輸入端電平和輸出端電平是對應的。我們使用的是兩個直流電機,其接線示意圖如下:圖3.5直流電機與L298N接線示意圖由于電機是感性負載,所以需要在L298的輸出端接四個快速二極管IN5822組成續(xù)流電路,將電機產生的感應電流消耗,防止對電路產生影響。L298還提供了兩個負載電流的反饋引腳:1腳和15腳,將它們同時接一個0.1歐姆,1~2W的電流檢測電阻,再接地,此時就可以通過對1腳或者15腳進行A/D采樣,來得到電路中負載電流,實現恒流控制。L298有4腳〔VS和9腳〔VSS兩個電源引腳,4腳為電機驅動電源輸入端,該電壓需要比9腳輸入電壓大,否則將會影響芯片的正常工作,而9腳為芯片工作電壓輸入端。圖3.6控制電路總圖以上是控制電路的總圖。為了精簡起見,采用總線將各部分連接起來。4.系統(tǒng)軟件的設計設計單片機應用系統(tǒng)時,通過根據具體要求現場調查分析,確定單片機應用系統(tǒng)地目標,確定系統(tǒng)的功能與性能。系統(tǒng)的功能主要有數據采集、數據處理、輸出控制等,每一功能又細分若干子功能。比如,數據采集可分為模擬信號采集和數字信號采樣,數據處理可分為預處理、功能性處理、抗干擾處理等子功能;輸出控制按對象不同可分為各種控制功能,如機電控制、D/A轉換控制,數碼管顯示控制等。系統(tǒng)功能主要由控制精度、速度、功耗、體積、重量、價格、可靠性的技術指標來衡量。而一旦這些指標一旦確定下來,整個系統(tǒng)將在這些標定下進行設計。系統(tǒng)的速度、功耗、體積、重量、價格、可靠性的等指標會左右系統(tǒng)軟硬件的功能劃分。4.1應用軟件的設計應用軟件是根據系統(tǒng)功能進行設計的,應盡可能的實現系統(tǒng)的各種功能,一般應用軟件應具有:=1\*GB2⑴軟件結構清洗,簡捷,流程合理。=2\*GB2⑵各功能程序事先模塊化、系統(tǒng)化。這樣既便于調試、連接,又便于移植、修改和維護。=3\*GB2⑶程序存儲區(qū)、數據存儲區(qū)規(guī)劃合理,既能節(jié)約存儲容量,又能給程序的設計與操作帶來方便。=4\*GB2⑷運行程序實現標志化管理。各個功能程序運行狀態(tài)、運行結果以及運行需求都設置標志狀態(tài)設置標志位以便于檢查,程序的轉移、運行、控制都可通過狀態(tài)標志來控制。=5\*GB2⑸經過調試修改后的程序應該進行規(guī)范化,除去修改痕跡。規(guī)范化的程序便于交流、借鑒,也為軟件的模塊化、標準化打下基礎。=6\*GB2⑹實現全面軟件抗干擾設計。軟件抗干擾是計算機應用系統(tǒng)提高可靠性的有力措施。=7\*GB2⑺為提高運行的可靠性,在軟件中設置自診斷系統(tǒng),在系統(tǒng)運行前先運行自診斷程序,以檢查系統(tǒng)的各項參數是否正常。4.2軟件調試4.2.1軟件調試過程軟件調試是通過對用戶程序的匯編、連接、執(zhí)行來發(fā)現程序中存在的語法錯誤與邏輯錯誤并加以排除糾正的過程。 圖4-1軟件調試過程圖4.2.2軟件調試一般方法=1\*GB2⑴先獨立后聯機軟件是硬件的靈魂,沒有軟件系統(tǒng)將無法工作;同時大多數軟件的運行又依賴于硬件,當軟件測試參數進行事務處理時,往往是和硬件無關的,即這樣可以通過對用戶程序的仔細分析,把與硬件無關的、功能相對獨立的程序抽取出來,形成與硬件無關和依賴硬件的兩大類用戶程序塊。在具有交叉匯編軟件或主機聯機仿真的基礎上,形成與硬件無關的程序調試與硬件同步進行,以提高軟件調試速度。當與硬件無關的程序塊全部調試完且用戶系統(tǒng)調試也已完成以后,可以將仿真機與主機、用戶系統(tǒng)連接,進行系統(tǒng)聯調,先對依賴于硬件的程序塊進行調試,調試成功后,再進行兩大程序的有機結合及總調試。=2\*GB2⑵先分塊后組合如果系統(tǒng)的用戶規(guī)模較大,任務較多,那么即使先行將用戶程序分為與硬件無關和依賴于硬件兩部分,如果這兩部分程序依舊較為龐大的話,采用順序從頭到尾的調試方法既浪費時間又不易進行錯誤性定位,所以常規(guī)的調試方法都是分別對兩類程序塊進一步采用分模塊調試,以提高軟件調試的有效性。每個程序模塊調試完畢后,將相互關聯的程序模塊組合起來加以調試,以解決在程序模塊連接中可能出現的邏輯錯誤,對所有程序模塊的整體組合是在系統(tǒng)聯調中進行得。由于各個程序模塊已通過調試排除了內部錯誤,所以軟件總體調試的錯誤就大大減少了,而調試成功可能性就大大的提高了。=3\*GB2⑶先單步后連續(xù)調試好程序模塊的關鍵是實現對錯誤的正確定位。準確發(fā)現程序中錯誤的最有效的方法是采用單步加斷點運行的方法調試程序。單步運行可以了解被調試程序中每條指令被執(zhí)行的情況,分析指令的運行結果可以知道該指令的正確性,并且進一步了解是硬件電路錯誤、數據錯誤還是程序設計錯誤等引起該指令的執(zhí)行錯誤,從而發(fā)現和排除錯誤。但是所有程序都單步運行的方式查找錯誤,是一件費時又費力的工作,所以為了提高調試效率,一般采用先使用斷電運行的方式來精確定位錯誤所在,這樣做到調試的快捷和準確。有些實時性操作利用單步運行方法無法調試,必須采用連續(xù)運行方法進行調試,為了提高對錯誤的定位,可使用連續(xù)加斷點運行方式調試這類程序,即利用斷點定位的改變,一步步縮小范圍,直至最終確定出錯誤位置并加以排除。4.2.3系統(tǒng)聯調系統(tǒng)聯調是讓用戶系統(tǒng)的軟件在其硬件上運行,進行軟、硬件聯合調試,從而發(fā)現硬件故障錯誤或軟、硬件設計錯誤。系統(tǒng)聯調主要解決以下問題:=1\*GB2⑴系統(tǒng)軟硬件是否能按預定的要求配合工作;=2\*GB2⑵系統(tǒng)運行中是否有潛在的設計時難以預料的錯誤;=3\*GB2⑶系統(tǒng)的動態(tài)性能指標是否滿足設計要求; 4.3電機的選擇 常用的電機驅動技術有步進驅動、伺服驅動、變頻驅動,其中伺服驅動又分為開環(huán)、半閉環(huán)、閉環(huán)系統(tǒng)。圖4-2開環(huán)系統(tǒng)流程圖圖4-3半開環(huán)系統(tǒng)流程圖圖4-4閉環(huán)系統(tǒng)流程圖 4.3.1步進電機的驅動技術步進電機是一種將數字式電脈沖信號轉換成機械角位移或線位移的機電元件。它的機械位移與輸入的數字脈沖信號有著嚴格的對應關系,即一個脈沖信號可使步進電動機前進一步,又由于它的輸入信號為脈沖電壓,因此又被稱作脈沖電動機。步進電動機作為數字控制系統(tǒng)的佳配,它是一種比較理想的執(zhí)行元件。步進電機驅動技術是典型的開環(huán)控制系統(tǒng),主要用于位置或角位移變化的運動控制領域。圖4-5步進電機選擇步進電機驅動技術主要特點:位置控制,成本較低。圖4-6步進電機驅動器變頻驅動技術變頻控制系統(tǒng)是一種能夠實現機械平臺或回轉機構的速度的自動、連續(xù)、精確地復現輸入指令信號的變化規(guī)律的自動控制系統(tǒng)。圖4-7變頻器通用系統(tǒng)框圖整流器:將交流電變換成直流的電力電子裝置,其輸入電壓為正弦波,輸入電流非正弦,帶有豐富的諧波。逆變器:將直流電轉換成交流電的電力電子裝置,其輸出電壓為非正弦波,輸出電流近似正弦。變頻驅動技術主要用于轉速或頻率變化的節(jié)能環(huán)保領域。圖4-8雙極性SPWM回路圖4-9輸出電壓波示意圖變頻驅動技術的主要特點:速度控制,成本適中。4.3.3伺服驅動技術伺服控制系統(tǒng)是一種能夠準確、快速和穩(wěn)定地實現機械平臺或回轉機構的位置、方位、速度、轉矩或者其它機械狀態(tài)的輸出被控量跟隨輸入目標值<或給定值>的任意變化的自動控制系統(tǒng)。伺服驅動技術主要用于速度、位置和轉矩變化的全閉環(huán)準確運動控制領域。伺服驅動技術的主要特點:速度、位置和轉矩的全閉環(huán)控制,成本較高。圖4-10常用伺服裝置比較4.3.4電機控制方式選擇不同的應用場合,對控制用電動機的性能密度的要求也有所不同?!?>對于起停頻率低<如幾十次/分>,但要求低速平穩(wěn)和扭矩脈動小,高速運行時振動、噪聲小,在整個調速范圍內均可穩(wěn)定運動的機械,如NC工作機械的進給運動、機器人的驅動系統(tǒng),其功率密度是主要的性能指標;<2>對于起停頻率高<如數百次/分>,但不特別要求低速平穩(wěn)性的產品,如高速打印機、繪圖機、打孔機、集成電路焊接裝置等主要的性能指標是高比功率。<3>在額定輸出功率相同的條件下,交流伺服電動機的比功率最高、直流伺服電動機次之、步進電動機最低。而我們的自動循跡輪椅由于要求要有足夠的響應速度,同時要能夠要有優(yōu)良的調速性能,并且在控制上能夠和軟件的設計進行較好的結合,所以充分結合各種控制電機調速方式的優(yōu)缺點,并且根據輪椅的能源裝置需要隨身攜帶,只能采用類似蓄電池式的能源裝置,我們選定直流調速電機作為驅動裝置。為了便于控制,同時適應3個光電對管的控制形式,只設置兩檔調速,實際情況可以增加多檔調速,同時將控制系統(tǒng)的復雜程度提高以適應變速過程。4.4輪椅轉向系統(tǒng)的設計利用紅外式傳感器檢測地面上引導線的光強模擬信號,3路模數轉換通道AD0~AD2與各個紅外式傳感器的反射信號相連,通過80C51自身的AD轉換通道處理數據。反射后光的強弱是通過模擬電壓來表征的,每一個接收管都對應了一個模擬電壓,將他們進行A/D轉換,并將所得的數值與每個光電管設置的閾值電平相比較,進而判斷輪椅的行進狀態(tài)是否需要改變,要進行調整,將3個光電管同時位于檢測區(qū),安裝位置大致如圖4-11所示。圖4-11輪椅檢測位置示意圖 小車采用兩輪驅動,其中使用L298是控制直流電機的專用集成芯片,它是雙H橋高電壓功率大電流功率集成電路,可驅動2個直流電動機等感性負載。L298可以驅動兩個電機運動,A組控制電機,B組控制另一個電機。其中,ENA、IN1、IN2為L298的A組輸入使能控制,IN1與IN2為輸入端,輸出端為OUT1、OUT2。當ENA=1,IN1=1,IN2=0時,電動機正轉;當ENA=1,IN1=0,IN2=1時,電動機反轉;B組控制方式與A組是一樣的。反射式紅外二極管檢測地面引導線,通過A/D轉換得到一個值,反射光越強,值越大;反射光越小,值越小。程序開始執(zhí)行時,位置檢測裝置位于引導線上,測出引導線與地面背景值,求出平均值,作為閾值avg。規(guī)定:當A/D轉換的檢測值大于閾值,令狀態(tài)dStatue=1;若A/D轉換的檢測值小于閾值,令狀態(tài)dStatue=0;用定時器1控制定時采樣輪椅的位置量,根據車的位置控制其運動,程序流程圖如下:圖4-12系統(tǒng)控制流程圖具體程序代碼如下:#include<reg51.h>#defineTMOD_VALUE0x20//定義c/t1的工作方式#defineTH1_VALUE0xE6//定義TH1的值#defineTL1_VALUE0xE6//定義TL1的值typedefunsignedcharuchar;uchardatavalue[3]_at_0x40; //留意空格uchardataadNum;//AD通道號uchardataflag1;//完成3路數據采集,標志=1uchardataflag2;//完成閾值計算,標志=1uchardataavg;//閾值ucharxdataadAddr;//定義ADC0809地址,假設為0x2000ucharbdatadStatue=0;sbitdStatue_0=dStatue^0;sbitdStatue_1=dStatue^1;sbitdStatue_2=dStatue^2;sbitP1_0=P1^0;sbitP1_1=P1^1;sbitP1_2=P1^2;sbitP1_3=P1^3;sbitP1_4=P1^4;sbitP1_5=P1^5;voidiniTimer1<void>{ TMOD=TMOD_VALUE; //定時器1方式2 TH1=TH1_VALUE; //定時器1預置數 TL1=TL1_VALUE; //定時器1置重裝載數 TR1=1; //啟動定時器 return;}voidcount<void>{ avg=value[0]/2+value[1]/2; //閾值計算完 flag2=1; return;}voiddelay<void> //延時{ uchardatai; while<i<5000> { i++; } return;}voidturn<ucharx> //小車方向控制函數{ if<x==0> //左轉 { P1_3=1;P1_2=0;P1_4=0;P1_5=1; //使L298的ENA=1,ENB=1,右輪電機全速前進 while<1> { P1_1=1;P1_2=0; //左輪半速前進 delay<>; //延時 P1_1=~P1_1;P1_2=~P1_2; //全速 delay<>; } } if<x==1> //右轉 { P1_3=1;P1_2=0;P1_4=0;P1_5=1;//左輪電機全速 while<1> { P1_4=1;P1_5=0; //左輪電機半速 delay<>; P1_1=~P1_1;P1_2=~P1_2; //全速 delay<>; } } if<x==2>//前進 { P1_3=1;P1_0=1;//使L298的ENA=1,ENB=1; P1_1=1;P1_2=0;//左輪前進 P1_4=0;P1_5=1;//右輪前進 return; } if<x==3>//停止 { P1_3=0;P1_0=0;//使L298的ENA=0,ENB=0 P1_1=0;P1_2=0;//左輪停轉 P1_4=0;P1_5=0;//右輪停轉 return; }}voidmotorcontrol<ucharx>{ switch<x> { case0:turn<0>;break; case1:turn<1>;break; case2:turn<2>;break; case3:turn<3>;break; }}voidjudge<void>{ if<value[0]<avg>//小于閾值置位變量dState_0=0 dStatue_0=0; else dStatue_0=1;//AD轉換值大于閾值,置位變量dState_0=1 if<value[1]<avg> dStatue_0=0; else dStatue_0=1; if<value[2]<avg> dStatue_0=0; else dStatue_0=1; return;}main<>{ iniTimer1<>; adNum=0; IT1=1; EA=1; EX1=1; ET1=1; flag1=0; flag2=0; motorcontrol<2>; adAddr=adNum; while<1> { if<flag1==1> { if<flag2==0> { count<>; } flag1=0; judge<>; switch<dStatue> { case0:motorcontrol<3>;break; case1:motorcontrol<1>;break; case2:motorcontrol<2>;break; case4:motorcontrol<0>;break; default:motorcontrol<3>;break; } } }}voidtimerInt<void>interrupt3using3{ adAddr=adNum; return;}voidadcInt<void>interrupt2using2{ value[adNum]=adAddr; adNum++; if<adNum<3> { adNum++; return; } else { flag1=1; adNum=0; } return;}程序的設計定義,定義標志flag1,當3路紅外傳感器數據采集完成后,置flag1=1;否則置flag1=0。標志flag2表示閾值的計算是否完成,如果完成則置flag2=1;否則,置flag2=0。閾值計算只需要在開始的時候需要。速度的控制采用簡單控制:直線前進時,兩電機的速度相同,小車

溫馨提示

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

評論

0/150

提交評論