http://www.whhswh.com 2008-07-31 16:17 來源:互聯網
First機器人競賽(Inspiration and Recognition of Science and Technology)的冠軍榮譽,讓參與到其中的高中學生們全情投入到設計世界中:他們必須在面對各種艱難的抉擇、時間的限制和各種約束下,達到設計項目的目標。眾多由10-20個學生組成的參賽隊伍,以及他們的老師,手上只有一套標準的工具,必須在六周內完成一個設計項目。下面的一份2007年和2008年團隊參賽經驗,是由一個參賽學生所寫的。
所有參加First機器人大賽的隊伍必須在六周內完成設計并建造一個機器人,所以他們必須擅長積極高效的設計,并且要準備好克服比賽過程中可能出現的任何問題。來自德州奧斯丁市文理學院(LASA)高中的418號隊伍 -aka Purple Haze - 連續參加了過去八年的比賽。他們在2007和2008年的比賽中遇到了尤其棘手的難題。
在設計今年的Zephyr機器人時,418號隊伍將重點放在兩個因素:人類工程學和自適應。他們需要設計出一個簡單、易移動的緩沖系統,并在制作時采用一個支架來實現這一點:該支架會滑動到底盤的鋁框架內,利用吊環螺釘來依附在上面。人機工程設計讓機器人可以輕松立起,而Zephyr能以自適應模式平穩工作。
在前一年的競賽中,LASA的參賽隊面臨著兩個主要難題:設計一個可以達到比賽苛刻要求的合適且牢固的驅動系統,并開發一個可以用于機器臂的直觀控制機制,讓新手也可以順利操作機器臂。
在2007年的“Rack ’in’ Rol”大賽中,機器人必須將內管放在運動的八角齒條上,同時防止其受阻。LASA隊制作了PHunky:一個通過雙關節機器臂來操作游戲部件(充氣的水銀整流管)的六輪機器人。要設計出恰當的驅動系統是很困難的,因為在游戲的不同環節中,力量和速度都是非常重要的:力量是用來防守和得分,而速度則是用于“重裝”機器人的操控器并將之移動穿越整個游戲區域來占據最佳位置。
LASA隊從一份其它First參賽隊所寫的白皮書上找到了靈感,并開始開發和改進其自己獨特的“DeWalts”設備(包含First組委會提供的CIM馬達和DeWalt XRP鉆孔傳動)。這些傳動可以在三組齒輪間替換,讓LASA隊能夠在運行中轉換減速比。
為了排除障礙物,PHunky的第一擋的12:1 I/O比可以提供足以排除任何路障的動力,而在第二檔時,這個重120磅的大家伙速度可以達到14英尺/秒,足夠超越任何對手。LASA隊通過在一個雙軸數控機床上制作的定制型安裝板,使馬達和傳動實現匹配。而轉換則是通過將伺服機和實心銅線連接到傳動的速度選擇杠桿來實現的。
雖然這支隊伍在First參賽歷史上還從未遇到過CIM馬達出錯的情況,但隊員們非常清楚,光靠DeWalt裝置不足以確保PHunky不會因為馬達故障而成為對手的獵物。他們需要有兩個馬達給機器人的兩端提供動力,就算有一個出現故障,其對應的一端也能隨著另一端馬達向前移動。
帶著這種想法,隊員們決定采用這樣一個系統:將中輪軸上的兩個鏈輪齒通過底盤內的一個25號鏈條連到前軸和后軸,由兩端的兩個馬達給底盤外部的中輪和后輪輸送動力。
而負責控制功能的團隊,則將其重點放在機器人的功能實現方面:雙關節的機器臂和操控器。在開發和最初測試的階段,控制團隊利用簡單的操縱桿來操控機器臂的動作,一個操縱桿控制一個關節。然而,雖然這樣可以精確控制機器臂,但機器人操作員發現這樣做是很愚蠢的。在實際操作中,操作員曾經意外地將機器臂操控到地上,還導致齒條反轉,因而損壞了機器臂。
他們很快開發了一套用于機器人操作員的新控制系統,并按照最先提出這一創意的Lewis的名字,將之取名為Lewis Arm。Lewis Arm是依照真實雙關節機器臂制作的1/6大小的模型,關節上裝有電位計。(由于競賽要求的控制系統帶來的硬件限制,電位計被用來替換數字編碼器。)
隊員們將相似的電位計安裝在真實的機器人關節上,并校準兩個系統上的電位計,讓Lewis Arm上的某個位置和真實機器臂上的一個位置對應上。隨后讓操作員以模仿方式操縱機器人,給控制臂“擺姿態”使得機器臂移動到同樣的位置。隊員們在Lewis Arm上添加機械終止,使之不會讓真實機器臂收到任何損壞。使用Lewis Arm比操縱桿更為直觀。
機器臂控制算法的編寫和測試要更為復雜一些。還有四天就要提交作品了,機器臂已經被安裝在機器人上,隊員們不能在機器人身上過多地測試機器臂控制算法,因為它在一直不停地被折騰。由于測試讓所有工作都被迫停止,測試不能長時間進行,因為這樣會導致他們無法按時完成機器人的制作。
Purple Haze團隊以及Lewis Arm控制機構
控制團隊隨后采用NI公司所提供套件中的LabView圖形編程語言,來開發一個用于測試算法的簡單的仿真工作臺。利用這個工具,隊員們發明了一個“虛擬機器臂”來創建并調節機器臂控制算法。隊員們采用LabView公式節點開發出算法 - 這是一種利用C類語言來在LabView中評估和開發基于數學的原文算法的方法。因此,一旦代碼編寫完成,隊員們可以將之復制到機器人資源代碼中,并擦除所有原來的代碼。
PHunky的控制系統還利用LabView來對機器人的特征和隨時狀態進行圖形化展示。利用來自機器臂和控制臂上的電位計的數據,LabView以圖形方式展示真實機器臂的實時位置以及Lewis Arm的位置。這一方案可以快速診斷出任何問題。
LabView還會根據電位計的讀數和機器臂的物理特征,進行復雜的集合計算來提供關于機器臂的更多信息,例如當前的高度和位置(這一點賽事要求的控制系統是很難做到的)。
操作員不能總是將眼光停留在裝載于控制系統上的筆記本上。為了提供另一個視覺指示,隊員們在機器人操作員的視力區域內安裝了一個定制型的光棒,在機器臂到位時作出指示,來在某個指定齒條水平上得分。LabView和國家儀器公司的一款USB-6009型數據采集設備通訊,來控制安裝在光棒上的自動型LED。
PHunky的機器臂是由賽會所提供的兩個Fisher-Price馬達來供給動力的。隊員們發現在提取24A的電流達數秒鐘后,馬達內置的一個熱關斷開關會將操作停止,直到其足夠冷卻并重置。但是機器臂卻會一直失效。
[page_break]
隊員們的第一個想法,是執行可以在電流達到24A之后讓機器人關節短時間失效的代碼。但是,這樣做會讓機器臂在最需要其動作時很難控制,而隊員們發現,如果能讓機器臂在“危險區域”運行哪怕幾秒鐘的時間,都可以極大提高得分能力。因此,隊員們利用Labview來監控電流感應器,并在電流到達危險數值時以圖形方式向操作員發出警報。
在2007年的First Lone Star休斯頓區域競賽中,418號參賽隊向評委們提交了這一作品,獲得了控制方案創新獎。
人機工程學和自適應
制作了PHunky之后,機器人操作員認識到他們需要就機器人被抬至和抬出場地的方法以及緩沖器附加的方法采取些措施。在舊的附加系統中,緩沖器被固定到底盤上,會由于機器人在低坑型場地花費的過多時間而導致問題。在比賽的短時間中,當效率成為重要因素時,這樣的延遲是無法接受的。
此外,PHunky并未被設計成一個電機工程學類機器人。隊員們必須常常握住輪子把機器人抬起來,導致不必要的彎曲。當418號隊伍準備設計Zephyr開始2008賽季時,所有這些因素都是其所要考慮的主要問題。
他們的方案是,采用一個可滑動到底盤鋁框架內的支架,利用螺絲眼來依附在上面。除了讓緩沖器的移除變得簡單,這個設計方案還讓隊員們能通過“夾鉤”來利用另一種新的開發方式。
由于這個簡單的設計改變,隊員們將機器人搬到或搬出場地的效率提高了,空出了一段雖不長但至關重要的維修時間。隊員們可以快速移除前后緩沖器,并能在返回低坑型場地后幾乎立刻開始操作。
2008 First機器人賽季“Overside”為那些能在15秒的自適應模式中高效得分的參賽隊提供了豐厚獎金。2007年,418號隊成員決定放棄自適應模式,但在2008年,隊員們感覺有必要參加自適應模式比賽了。由于自適應操縱模式時間較短,隊員們選擇繞著軌道跑圈來獲得盡可能多的分數。
機器人必須自己確認在場地上的位置,以及何時左轉。為了實現這一點,隊員們在驅動系統上安裝了編碼器,根據輪子轉動的圈數來計算運行的距離。他們采用一個回轉儀來確認機器人的方向,并確認其是否在運行一段預定距離后已轉彎90度。只要掌握了輪子的周長和機器人運行的速度,該系統可快速并精確校準。
LASA隊已經在展望First的2009年賽季,計劃采用國家儀器公司的新型控制系統來構建一個新的機器人。
完整的機器人及其底盤