基于ARM9的擬人機(jī)器人設(shè)計_第1頁
基于ARM9的擬人機(jī)器人設(shè)計_第2頁
基于ARM9的擬人機(jī)器人設(shè)計_第3頁
基于ARM9的擬人機(jī)器人設(shè)計_第4頁
基于ARM9的擬人機(jī)器人設(shè)計_第5頁
已閱讀5頁,還剩8頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、基于arm9的擬人機(jī)器人設(shè)計xxxxx(長春大學(xué)電子信息工程學(xué)院,吉林省長春市,130022)摘 要:為滿足低成本、高性能的要求, 提出在擬人機(jī)器人控制器的設(shè)計中引入基于arm 處理器和rto s (real2timeo s) 的嵌入式系統(tǒng)。使用arm 9 處理器s3c2410 和rt2linux構(gòu)建小型擬人機(jī)器人控制器的系統(tǒng)架構(gòu), 以擬人機(jī)器人的行走控制為例, 從硬件和軟件上介紹了控制器的實現(xiàn)方法。硬件選用高集成度的嵌入式處理器并采用模塊化設(shè)計; 軟件開發(fā)中使用petri 網(wǎng)建模并利用linux 良好的驅(qū)動程序框架,降低了開發(fā)難度, 提高了系統(tǒng)的可擴(kuò)展性。最后給出了在機(jī)器人避障中的應(yīng)用, 驗

2、證了控制器方案的可行性, 為擬人機(jī)器人的進(jìn)一步研究提供了平臺。關(guān)鍵詞: 擬人機(jī)器人; 舵機(jī);嵌入式系統(tǒng); petri 網(wǎng); 設(shè)備驅(qū)動based on arm9 personification robot designxxxxxx(changchun university electronic information engineering college, jilin province changchun, 130022)abstract:a low cost, high performance humanoid robot controller was developed based on

3、the arm processor and the rtos( real2time os). the controller system architecture consists of as3c2410 chip with the arm 9 co re running rt2linux. the implementation including hardware and software is illustrated by a robot walking example. the hardware platform uses a modular design with a highly i

4、nter grated embedded cpu. a petri net is used to model the control flow. the software is based on the linux device driver frame with simplifies the system and improves the expansibility. the control system successfully enabled the robot to evade obstacles and provides a platform for further developm

5、ent of humanoid robots.key words: humanoid robot; servo; embedded system; petri net; device driver;1設(shè)計簡介1.1嵌入式簡介根據(jù)國際電氣和電子工程師協(xié)會(ieee)的定義,嵌入式系統(tǒng)是“控制、監(jiān)視或者輔助設(shè)備、機(jī)器和車間運行的裝置”,原文為devices used to control,monitor,or assist the operation of equipment,machinery or plants.目前,國內(nèi)普遍認(rèn)同的定義是:以應(yīng)用為中心,以計算機(jī)技術(shù)為基礎(chǔ),軟硬件可裁剪,適應(yīng)應(yīng)

6、用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計算機(jī)系統(tǒng)。北京航空航天大學(xué)何利民教授給出這樣的定義:“嵌入式系統(tǒng)是嵌入到對象體系中的專用計算機(jī)系統(tǒng)?!笨梢赃@樣認(rèn)為,嵌入式系統(tǒng)是一種專用的計算機(jī)系統(tǒng),作為裝置或設(shè)備的一部分。嵌入式系統(tǒng)一般有嵌入式微處理器、外圍硬件設(shè)備、嵌入式操作系統(tǒng)以及用戶應(yīng)用程序4個部分組成?!扒度胄浴?、“專用性”和“計算機(jī)系統(tǒng)”是嵌入式系統(tǒng)的三個基本要素,對象系統(tǒng)則是指嵌入式系統(tǒng)所嵌入的宿主系統(tǒng)。嵌入式系統(tǒng)無處不在,在移動電話、數(shù)碼相機(jī)、mp4、數(shù)字電視機(jī)頂盒、微波爐等設(shè)備中都使用了嵌入式系統(tǒng)。嵌入式計算機(jī)系統(tǒng)是整個嵌入式的核心,可以分為硬件層、中間層、系統(tǒng)軟件層和應(yīng)

7、用軟件層。1.2擬人機(jī)器人簡介擬人機(jī)器人是機(jī)器人研究的一個重要分支, 是由仿生學(xué)、機(jī)械工程學(xué)和控制理論等多種學(xué)科相互融合而形成的一門綜合學(xué)科。研究人員除了通過軟件進(jìn)行仿真, 還制作了各種類型的機(jī)器人實體。比較著名的國外有本田公司的asimo、sony 公司的qrio、開放機(jī)器人項目openpino 等, 國內(nèi)有北京理工大學(xué)牽頭研制的“匯童”擬人機(jī)器人、哈工大的“h it ”足球機(jī)器人、清華大學(xué)的thb ip2i 等。不過這些機(jī)器人體積龐大, 成本高昂。目前也開發(fā)了很多簡易的小型機(jī)器人 , 但其中大部分采用簡單的單片機(jī)進(jìn)行控制, 可實現(xiàn)的動作和功能非常有限, 或者需要連接上位機(jī)來對它進(jìn)行控制,

8、自主性不足?;诂F(xiàn)有的條件, 綜合考慮系統(tǒng)的性能和成本,研制了一種基于arm 9 處理器, 采用嵌入式linux 的小型擬人機(jī)器人, 可以實行靜步行走, 同時可擴(kuò)展視覺、無線網(wǎng)絡(luò)和音頻輸入輸出功能, 是一種可完全獨立自主化的擬人機(jī)器人, 為相關(guān)學(xué)科的研究提供了一個驗證平臺, 還可以作為大學(xué)和中專院校機(jī)電專業(yè)、自動化專業(yè)、計算機(jī)專業(yè)、儀表與檢測專業(yè)的試驗平臺, 進(jìn)一步完善后, 也是機(jī)器人舞蹈和機(jī)器人足球等項目的良好載體. 機(jī)器人技術(shù)作為20世紀(jì)人類最偉大的發(fā)明之一,它的研究開始于20世紀(jì)中期。第一代遙控機(jī)械手1948年誕生于美國原子能委員會的阿爾貢研究所,當(dāng)時用來對放射性材料進(jìn)行遠(yuǎn)距離操作,以保

9、護(hù)原子能工作者免受放射線照射。第一臺工業(yè)機(jī)器人產(chǎn)生于1956年,是英格爾博格(engelberger)將數(shù)字控制技術(shù)與機(jī)械臂結(jié)合的產(chǎn)物。當(dāng)時主要是為了克服串聯(lián)機(jī)構(gòu)累積的系統(tǒng)誤差,以便達(dá)到較高的空間定位精度,提出了示教再現(xiàn)的編程方式,從而使重復(fù)定位精度差不多比絕對定位精度提高了一個數(shù)量級。1968年,日本川崎重工引進(jìn)美國imation公司的unimate機(jī)器人制造技術(shù),開始了日本機(jī)器人時代。1970年,在美國召開了第一屆國際工業(yè)機(jī)器人學(xué)術(shù)會議。此后,機(jī)器人的研究得到迅速廣泛的普及。1979年imation公司推出了puma系列工業(yè)機(jī)器人,它的關(guān)節(jié)由電動機(jī)驅(qū)動,可配備視覺、觸覺、力覺傳感器。到19

10、90年己有30萬臺機(jī)器人在全世界使用。其中高性能的機(jī)器人所占比例不斷增加,特別是各種裝配機(jī)器人的產(chǎn)量增加較快,和機(jī)器人配套使用的的機(jī)器視覺技術(shù)和裝備也得到迅速發(fā)展。進(jìn)入20世紀(jì)90年代后,裝配機(jī)器人及柔性裝配技術(shù)進(jìn)入了大發(fā)展時期。日本一直擁有全世界機(jī)器人總數(shù)的60%左右。到1998年,美國擁有機(jī)器人8萬臺,德國為7萬多臺,分別占世界機(jī)器人總數(shù)的15%和13%左右。到2005年,全世界的機(jī)器人總數(shù)約100萬臺。自50年代第一臺機(jī)器人裝置在美國誕生以來,機(jī)器人的發(fā)展經(jīng)歷了一個從低級到高級的發(fā)展過程。第一代機(jī)器人是示教再現(xiàn)型工業(yè)機(jī)器人,它們裝有記憶存儲器,由人將作業(yè)的各種要求示范給機(jī)器人,使之記住操

11、作的程序和要領(lǐng)。當(dāng)它接到再現(xiàn)命令時,則自主地模仿示范的動作作業(yè)。第二代機(jī)器人是裝有小型計算機(jī)和傳感器的離散編程的工業(yè)機(jī)器人,它能感知外界信息并進(jìn)行“思維”,它比第一代機(jī)器人更靈活、更能適應(yīng)環(huán)境變化的需求。第三代機(jī)器人是智能機(jī)器人,它不但有第二代機(jī)器人的感覺功能和簡單的自適應(yīng)能力,而且能充分識別工作對象和工作環(huán)境,并能根據(jù)人給的指令和它自身的判斷結(jié)果自動確定與之相適應(yīng)的動作,是人工智能發(fā)展到高級階段的產(chǎn)物,也是當(dāng)今機(jī)器人發(fā)展的重點和熱點。隨著機(jī)器人技術(shù)的發(fā)展,機(jī)器人的用途越來越廣,開始從傳統(tǒng)的工業(yè)領(lǐng)域,向軍事、公安、醫(yī)療、服務(wù)等領(lǐng)域滲透。與此同時,機(jī)器人的概念也越來越寬,己從狹義的機(jī)器人,開始向

12、機(jī)器人技術(shù)擴(kuò)展。世界上一些發(fā)達(dá)國家,都非常重視機(jī)器人技術(shù)的研究,都將機(jī)器人作為一個戰(zhàn)略高技術(shù)給予支持。這是因為機(jī)器人不僅將形成一個大產(chǎn)業(yè),而且將對國家的綜合國力,對國家的可持續(xù)發(fā)展有著巨大而深遠(yuǎn)的影響。1.2嵌入式系統(tǒng)的設(shè)計簡介嵌入式系統(tǒng)設(shè)計是一個很復(fù)雜的過程,在設(shè)計嵌入式的過程中,不僅要對設(shè)計嵌入式系統(tǒng)的軟硬件有很廣泛的了解,同時還要熟悉行業(yè)的內(nèi)容。下面是設(shè)計過程中必須考慮的一些問題。(l)需要硬件的數(shù)量在系統(tǒng)設(shè)計中,不僅要選擇使用何種微處理器,還要選擇存儲器的數(shù)量、所使用的外設(shè)及其它的內(nèi)容。因為在滿足性能要求的同時也要考慮制造費用的約束,硬件設(shè)備的選擇是十分重要的,硬件太少,將不能達(dá)到性能

13、的要求,硬件設(shè)備過多又會使產(chǎn)品變得過于昂貴。 (2)時限要求通過提高cpu的時鐘頻率的方法來提高程序運行速度以解決時間約束的方法顯得十分笨拙,因為程序的速度有可能受存儲系統(tǒng)的限制,因此必須從整個系統(tǒng)的觀點來考慮這個問題。 (3)系統(tǒng)的功耗對于電池供電的電器而言,功耗是一個十分重要的問題;對于非電池供電的電器而言,高功耗也會帶來高的散熱量。降低系統(tǒng)功耗的一種方法就是降低它的運算速度,但是單純的降低運算速度顯然會導(dǎo)致不能滿足性能需求。所以必須從全局的角度進(jìn)行設(shè)計,以便通過降低系統(tǒng)非關(guān)鍵部分的速度來降低系統(tǒng)功耗,而同時又能滿足系統(tǒng)整體性能的要求。 (4)系統(tǒng)的可升級性系統(tǒng)的硬件平臺可能使用幾代,或者

14、使用在同一代的不同級別的產(chǎn)品中,而這些僅僅需要一些簡單的改變就應(yīng)實現(xiàn),所以我們必須能夠通過改變軟件來改變系統(tǒng)的特性。這就要求我們在軟件設(shè)計中必須考慮系統(tǒng)的升級問題。進(jìn)行嵌入式系統(tǒng)設(shè)計有兩種最基本的方法。一種是自頂向下的方法,從對系統(tǒng)最抽象的描述開始,一步一步地推進(jìn)到細(xì)節(jié)內(nèi)容。另外一種方法是自底向上的方法,這種方法從構(gòu)成系統(tǒng)的每一個構(gòu)件開始向上。圖1.1匯總了嵌入式系統(tǒng)設(shè)計的主要步驟。從自頂向下的角度來看,先從系統(tǒng)的需求開始分析,然后是規(guī)格說明,在這一步對整個系統(tǒng)進(jìn)行更加細(xì)致的描述,但是規(guī)格說明只是對系統(tǒng)如何工作進(jìn)行了描述,并不涉及它的組成。系統(tǒng)內(nèi)部的詳細(xì)構(gòu)造要在開發(fā)系統(tǒng)的體系結(jié)構(gòu)時才能展現(xiàn)出來

15、,這一階段以大的構(gòu)件為單位給出了系統(tǒng)的結(jié)構(gòu)。一旦知道了需要的構(gòu)件,就可以開始設(shè)計這些構(gòu)件,包括軟件模塊和所需要的專用硬件模塊。在這些構(gòu)件的基礎(chǔ)上,就可以構(gòu)造出所需要的完整的系統(tǒng)。上述設(shè)計過程中的這些步驟只是嵌入式系統(tǒng)的全貌的一個軸線,同時還需要考慮其它一些相關(guān)因素。需求體系結(jié)構(gòu)構(gòu)件系統(tǒng)集成規(guī)格說明圖1.1設(shè)計過程的主要抽象層次 具體的說,第一步“需求”就是要清楚要設(shè)計什么,從用戶那里收集系統(tǒng)的非形式描述,然后對這些要求進(jìn)行提煉,以得到系統(tǒng)的規(guī)格說明。第二步“規(guī)格說明”更精確一些,它起到客戶和生產(chǎn)者之間合同的作用。第三步“體系結(jié)構(gòu),是系統(tǒng)整體結(jié)構(gòu)的一個計劃,而后用于設(shè)計搭建整個體系結(jié)構(gòu)的構(gòu)件。結(jié)

16、構(gòu)設(shè)計的創(chuàng)建也是許多設(shè)計者認(rèn)為的設(shè)計的第一階段,形象化的話就是把系統(tǒng)用功能框圖來表示,然后可以再細(xì)分成硬件框圖和軟件框圖。第四步“軟硬件構(gòu)件,使得構(gòu)件與體系結(jié)構(gòu)和規(guī)格說明達(dá)到一致,一些構(gòu)件可能是現(xiàn)成的,比如cpu、存儲芯片或者各種模塊等,同樣軟件也有標(biāo)準(zhǔn)的模塊可以利用,比如現(xiàn)有的操作系統(tǒng)、tcp/ip協(xié)議等,但也要自己設(shè)計一些構(gòu)件,硬件方面如一些電路等,軟件方面如定制一些文件系統(tǒng)或者網(wǎng)絡(luò)協(xié)議以滿足特別的要求。第五步“系統(tǒng)集成,是將構(gòu)件集成到一個能運轉(zhuǎn)的系統(tǒng)。2擬人機(jī)器人系統(tǒng)架構(gòu)2. 1擬人機(jī)器人機(jī)械結(jié)構(gòu)設(shè)計在機(jī)械結(jié)構(gòu)和自由度分配上, 設(shè)計的擬人機(jī)器人采用雙軸輸出伺服電機(jī)(也稱為“舵機(jī)”)個活動

17、關(guān)節(jié), 其中2 條下肢各6 個關(guān)節(jié), 2 條上肢各4個關(guān)節(jié), 頭部1 個關(guān)節(jié), 共需使用21 個舵機(jī)。舵機(jī)是一種位置伺服的驅(qū)動器, 適用于那些需要角度不斷變化并可以保持的控制系統(tǒng)。其工作原理是: 控制信號進(jìn)入舵機(jī)內(nèi)部的信號調(diào)制芯片, 獲得直流偏置電壓; 內(nèi)部還有一個基準(zhǔn)電路, 產(chǎn)生周期為20m s、寬度為1. 5m s 的基準(zhǔn)信號, 將獲得的直流偏置電壓與電位器的電壓比較, 獲得電壓差輸出;最后, 電壓差的正負(fù)輸出到電機(jī)驅(qū)動芯片決定電機(jī)的正反轉(zhuǎn)。當(dāng)電機(jī)轉(zhuǎn)速一定時, 通過級聯(lián)減速齒輪帶動電位器旋轉(zhuǎn), 使得電壓差為0, 電機(jī)停止轉(zhuǎn)動。舵機(jī)的控制信號是脈寬調(diào)制(pwm ) 信號, 利用占空比的變化改

18、變舵機(jī)的位置, 通常控制周期t = 20m s,高電平脈寬0. 5 2. 5m s, 對應(yīng)于- 90 + 90的轉(zhuǎn)角。2. 2擬人機(jī)器人控制器硬件設(shè)計控制器平臺的處理器選用了三星公司基于arm 9 內(nèi)核的s3c2410 嵌入式處理器。s3c2410 被廣泛應(yīng)用于pda、移動通訊、路由器、工業(yè)控制等領(lǐng)域, 芯片中集成了下列模塊: 16kb 指令cache、16kb 數(shù)據(jù)cache、mmu、外部存儲器控制器、lcd控制器、nand f lash 控制器、4個dma 通道、3通道uart、1 個i2c 總線控制器、1 個iis 總線控制器, 以及4 通道pwm 定時器和一個內(nèi)部定時器、通用io 口、

19、實時時鐘、8 通道10 b it ad 和觸摸屏接口、u sb ho st 和u sb device 控制器、sdmmc卡接口等。從可調(diào)試、可重用、可擴(kuò)展等方面考慮 , 整個控制系統(tǒng)硬件采用模塊化設(shè)計, 由核心板和擴(kuò)展板2部分構(gòu)成, 系統(tǒng)結(jié)構(gòu)如圖1所示。擴(kuò)展板舵機(jī)接口模塊usbhost接口串口調(diào)試用上位機(jī)usb攝像頭其他usb設(shè)備usb無線網(wǎng)卡電池麥克喇叭核心板ramram嵌入式處理器flash、rom電源模塊音頻輸入輸出接口機(jī)器人本體各關(guān)節(jié)舵機(jī)圖2.1 擬人機(jī)器人控制平臺硬件結(jié)構(gòu)圖核心板使用了so2d imm 的接口方式, 6 層板設(shè)計, 長寬分別為76mm和52mm , 實物照片如圖2 所

20、示。核心板提供了一個最小系統(tǒng), 包括了s3c2410 嵌入式處理器、2 片hy57v 561620 并聯(lián)構(gòu)成32 b it 的64mb sdram 內(nèi)存空間, 一片k9f1208u 0 構(gòu)成64mb 的nandf lash 空間。擴(kuò)展板上設(shè)計了電源模塊、2 個u sbho st 接口、1 個串口、音頻輸入輸出模塊和舵機(jī)接口模塊。設(shè)計電源模塊時, 為了防止舵機(jī)對控制系統(tǒng)產(chǎn)生干擾, 分別對舵機(jī)和控制系統(tǒng)供電, 二者不共地, 通過光藕來隔離。usb 接口用來連接攝像頭、usb無線網(wǎng)卡、u盤等設(shè)備,串口用來輸出調(diào)試信息。音頻輸入輸出模塊則用來和外界做語音交流。舵機(jī)接口模塊主要由電平驅(qū)動芯片、光耦、斯密

21、特反相器構(gòu)成。電平驅(qū)動芯片用來提高驅(qū)動能力,光耦用來傳輸控制信號。控制信號經(jīng)過光耦后會反相和畸變,需要反相器對它經(jīng)行反相和整形后再輸出給舵機(jī)??紤]到機(jī)器人的移動性,沒有加入以太網(wǎng)模塊。核心板上的操作系統(tǒng)和應(yīng)用程序下載通過專門的調(diào)試接口板完成,然后再安裝到擴(kuò)展板上,機(jī)器人運行過程中的軟件實時調(diào)試信息由串口輸出。2. 3擬人機(jī)器人控制器軟件設(shè)計擬人機(jī)器人的軟件系統(tǒng)除了要協(xié)調(diào)控制各個關(guān)節(jié), 還需要進(jìn)行視覺圖像處理、語音識別、數(shù)據(jù)傳輸?shù)? 作者選用了rt 2linux 操作系統(tǒng) 6 。普通的linux是一個典型的分時多任務(wù)操作系統(tǒng), 因為分時調(diào)度機(jī)制和核心的不可搶占性, 其實時性有所欠缺。但由于lin

22、ux 具備開放源代碼的優(yōu)勢, 目前已經(jīng)出現(xiàn)了不少實時linux 操作系統(tǒng), 如rt 2linux、rta i、lxrt 和ku rt 等。使用rt2linux 系統(tǒng)可以保證機(jī)器人控制的實時性。3擬人機(jī)器人步行控制方案機(jī)器人學(xué)專家、日本早稻田大學(xué)的加藤一郎教授說過: “機(jī)器人應(yīng)當(dāng)具有的最大特征之一是步行功能”。步行分為“靜態(tài)步行”和“動態(tài)步行”2 種。靜步行是重心移動少、速度慢的步行方式, 動步行則是自身破壞平衡、向前傾斜似的行走 7 。限于機(jī)器人的機(jī)械設(shè)計, 我們只實現(xiàn)了擬人機(jī)器人的靜態(tài)步行。s3c2410 處理器有5 個16 b it 定時器, 其中定時器0,1,2,3具有pwm 脈沖輸出功

23、能。pwm 波形的周期, 也是定時器的計時周期, 可以由寄存器tcntbn 來設(shè)置, 占空比由寄存器tcmpbn 來設(shè)置(n= 0, 1, 2, 3)。在每次pwm 周期結(jié)束時, 對應(yīng)的定時器都會產(chǎn)生一個中斷。假如使用定時器直接輸出pwm 信號來控制舵機(jī), 由于每個定時器輸出pwm 信號的引腳都是固定的, 因此只能是一個定時器控制一個舵機(jī), 這顯然無法滿足我們的要求。經(jīng)過分析, 作者考慮使用定時器的中斷在多個io 引腳上模擬輸出pwm 控制信號, 這樣就能實現(xiàn)用一個定時器控制多個舵機(jī)。在這個過程中, 定時器狀態(tài)和io 引腳電平的變化關(guān)系可以使用pet ri 網(wǎng)進(jìn)行建模。圖2.2舵機(jī)pwm 控制

24、petri 網(wǎng)模型圖中p1、p2 分別表示io 引腳輸出高電平和低電平的狀態(tài), p3p7 分別表示定時器的各個工作狀態(tài)。舵機(jī)的pwm 控制脈沖周期為20m s, 假定使用定時器1 來控制8個舵機(jī), 這8 個舵機(jī)分別連接到s3c2410 的8 個io 引腳18, 在某段時間內(nèi)這8 個舵機(jī)的pwm 控制信號中高電平所占的時間分別為t 1t 8。首先io 18 引腳上都輸出低電平, 然后在io 1 引腳上輸出高電平, 同時將定時器1 計時周期設(shè)置為t 1 并啟動定時器; 定時器在經(jīng)過時間t 1 后產(chǎn)生中斷, 在中斷服務(wù)程序中將io 1 引腳輸出電平改為低電平, 計時器1 計時周期改為2. 5m s2

25、t 1, 重新啟動定時器; 經(jīng)過2. 5m s2t 1 后產(chǎn)生中斷, 在中斷服務(wù)程序中將io 2 輸出電平改為高電平, 將定時器1 計時周期改為t 2, 重新啟動定時器; 經(jīng)t 2 后定時器產(chǎn)生中斷, 在中斷服務(wù)程序中將io 2 引腳輸出電平改為低電平, 將定時器1 計時周期設(shè)置為2. 5m s2t 2。這樣依次進(jìn)行操作, 就能在8 個io 引腳上模擬出8 路符合要求的舵機(jī)控制pwm 信號, 如圖2.3 所示。 圖2.3 多路舵機(jī)pwm控制信號示意圖根據(jù)上面方案對s3c2410 的定時器0、1 編寫了linux 系統(tǒng)下的驅(qū)動程序 8 , 由這2 個定時器來控制雙足機(jī)器人的下肢動作。驅(qū)動程序由以

26、下函數(shù)組成:1) 在timer- in it 函數(shù)中, 注冊定時器設(shè)備。2) 在timer- open 函數(shù)中, 設(shè)置了io 引腳功能, 注冊定時器中斷, 設(shè)置定時器的工作模式和輸入時鐘頻率。3) 在timer- write 函數(shù)中, 由外部讀入關(guān)節(jié)的控制信息, 打開定時器中斷, 并啟動定時器。4) 在timer- handler 函數(shù)中, 改變對應(yīng)的io 輸出引腳的電平, 并重新設(shè)置定時器, 開始下一個定時器周期。中斷服務(wù)程序流程如圖2.4 所示。 圖2.4 多路舵機(jī)控制信號模擬程序流程圖對于舵機(jī)的控制, 主要的可變參數(shù)就是pwm信號中高電平持續(xù)時間。系統(tǒng)可以事先設(shè)置一些行走動作對應(yīng)的參數(shù)數(shù)

27、組, 也可以由應(yīng)用程序?qū)崟r生成這些參數(shù)數(shù)組, 然后在調(diào)用定時器設(shè)備的時候, 將參數(shù)數(shù)組傳遞給定時器驅(qū)動程序。一般的舵機(jī)需要cpu 持續(xù)為它發(fā)出pwm 控制信號, 因此會占用大量cpu 資源, 影響系統(tǒng)的整體性能。我們選用具有電子鎖位功能的舵機(jī)。這種舵機(jī)在收到一組pwm 控制信號后會自動執(zhí)行至目標(biāo)位置, 此時如果cpu 停止為它發(fā)送控制信號, 舵機(jī)會保持該位置。這樣就大大減少了cpu 中斷發(fā)生的次數(shù), 提高了系統(tǒng)的性能。如果使用硬件如cpld實現(xiàn)舵機(jī)控制信號的產(chǎn)生, cpu 只需要將舵機(jī)控制參數(shù)發(fā)送給該硬件即可, 同樣也可減輕cpu 負(fù)擔(dān)。4應(yīng)用實例為了檢驗控制器的實際工作效果, 設(shè)計了機(jī)器人避

28、障實驗。在機(jī)器人的頭部安裝一個小型u sb 攝像頭, linux 操作系統(tǒng)對于u sb 設(shè)備的支持較好,并且內(nèi)置了部分?jǐn)z像頭的驅(qū)動程序, 可以方便地調(diào)用攝像頭設(shè)備并進(jìn)行圖像識別應(yīng)用程序的編寫和調(diào)試。為擬人機(jī)器人視覺系統(tǒng)搭建了一個實際的應(yīng)用場景: 障礙物(方形紙盒) 放置在機(jī)器人的正前方,機(jī)器人在直線步行過程中可以識別障礙物, 并在一定距離時控制雙足做轉(zhuǎn)身動作, 繞開障礙物。經(jīng)過實驗, 機(jī)器人控制器可以對攝像頭獲取的圖像進(jìn)行處理, 識別靜止障礙物并調(diào)用步行程序進(jìn)行避讓。5結(jié)束語此次設(shè)計,本文實現(xiàn)了一種基于arm 嵌入式系統(tǒng)的擬人機(jī)器人控制器的設(shè)計, 相比單片機(jī)控制, 封裝了底層的硬件驅(qū)動, 模塊

29、化和易用性更好, 功能擴(kuò)展更方便。相比上位機(jī)控制, 系統(tǒng)的獨立性和自主性得到加強(qiáng)。這種方案在成本和性能上做到了較好的折衷, 改善了開發(fā)過程, 同時也為其他類型機(jī)器人如輪式機(jī)器人的設(shè)計提供了一個參考。嵌入式系統(tǒng)領(lǐng)域的軟硬件技術(shù)發(fā)展迅猛, 各種應(yīng)用層出不窮。將嵌入式系統(tǒng)應(yīng)用于機(jī)器人的設(shè)計中, 有助于提高機(jī)器人的性能, 也會對機(jī)器人的智能化、網(wǎng)絡(luò)化、小型化起到良好的促進(jìn)作用。另外在設(shè)計中讓我對嵌入式系統(tǒng)有了更充分的理解。對它的設(shè)計有了實踐的機(jī)會。感謝老師和同學(xué)的幫助。通過本次課程設(shè)計,了解了嵌入式linux系統(tǒng)以及它的一些應(yīng)用,還清楚了視頻監(jiān)控網(wǎng)絡(luò)的一些設(shè)計方案和基本原理。在課程設(shè)計過程中,通過網(wǎng)絡(luò)

30、和圖書館找到了一些相關(guān)的資料,認(rèn)真學(xué)習(xí)和理解后結(jié)合以前學(xué)到的基礎(chǔ)知識找出了最佳方案。在學(xué)習(xí)理解過程中,由于知識面有限難免遇到很多困難,在老師和同學(xué)的幫助下很多問題都得到了解決,使我更加認(rèn)識到合作的重要性。在以后的學(xué)習(xí)中一定注意開闊自己的思維,在基礎(chǔ)知識的學(xué)習(xí)上有所創(chuàng)新。參考文獻(xiàn) 1 arm9嵌入式系統(tǒng)設(shè)計基礎(chǔ)教程 黃智偉 鄧月明 王彥編著 北京航空航天大學(xué)出版社 2 劉莉, 汪勁松, 陳懇, 等. thb ip2i 擬人機(jī)器人研究進(jìn)展j . 機(jī)器人, 2002, 24 (3) : 262 - 267.liu li, wang jinsong, chen ken, et al. the research on the biped humanoid robot thb ip2i j . robot, 2002,24 (3) : 262 - 267. (

溫馨提示

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

評論

0/150

提交評論