1 摘 要
Stiquito是一個用來向?qū)W生介紹機器人技術(shù)的小型機械昆蟲。它的新版本具有一個可預(yù)編程的微控制板,學生可以用來學習機器人技術(shù)和嵌入式系統(tǒng)的相關(guān)概念。
不同的人對機器人也有不同的理解。很多人把機器人想象成《星球大戰(zhàn)》中的R2D2和C3PO的樣子,它們能在任何環(huán)境中進行自主的運動,和他人進行談話交流。很少有人將其想象成為無人交通工具和制造設(shè)備,然而,機器人主要就應(yīng)用在這些領(lǐng)域。
機器人就是一個機電裝置,在接受人的一系列命令后反復(fù)執(zhí)行直到被通知停止為止?;谶@個定義,建造一個玩具車并對其編程,使它沿地板上的一條黑帶運動,這就是一個機器人裝置的例子,而制造并驅(qū)動一個無線控制的玩具車卻不是。
Stiquito是一個小型的六腳昆蟲機器人,在教學中已經(jīng)沿用多年。為了能走路,機器人的腿部“肌肉”用撓性材料制成,原先設(shè)計成一個人工控制裝置,六條腿分為三組,兩個開關(guān)連在一個繩索上。操作員通過按壓兩個開關(guān)來控制這六條腿的運動。
設(shè)計完成大量的Stiquito機器人已成為具有教學意義的新事物,因為它們不能通過一個可編程計算機來控制。研究者們希望通過一種簡單易用的控制器,來研究群體機器人和新興系統(tǒng),由于缺少這種可用的控制器,他們的研究工作也受到了限制。
另一個障礙是機器人的低功耗問題,因此有必要設(shè)計完成一個可靠的控制器,并且同樣需要低成本、低功耗。Stiquito是一種新型的自控機器人,它通過一個微控制器來協(xié)調(diào)腿的動作以產(chǎn)生前向運動。盡管控制器在出售時是已編程的,教師和研究人員仍可以對控制板重新編程來檢測機器人的其他功能。實際上,這個開發(fā)板可以獨自用來學習嵌入式系統(tǒng)開發(fā)概念。
2 Stiquito發(fā)展史
20世紀90年代初,印第安納大學的JonathanMills在尋找一種機器人平臺來測試他在模擬邏輯上的研究。當時大多數(shù)可用的平臺過于昂貴,尤其對年輕助教而言,其研究資金有限。因此,Mills開始設(shè)計他廉價的機器人,在他的設(shè)計中,選擇了四種基礎(chǔ)原料:
驅(qū)動裝置選擇鎳鈦諾(Dynalloy公司的撓性材料Flexinol裝置),在電路控制下,這種材料可以提供一種類似肌肉的反應(yīng)而精確地模仿生物動作。
Flexinol裝置的反作用力選擇彈性發(fā)條線來產(chǎn)生。這種線能產(chǎn)生一種使Flexinol回歸原形的作用力,給機器人提供了支持。
機器人的身體選擇1/8英寸寬的方形塑膠桿;對于腿和身體的支持,以及塑膠的Flexinol附件,Mills選擇了鋁管。
從微型的兩英寸長的四腿機器人到四英寸長的軟腿機器人,Mills針對不同的設(shè)計進行了實驗。實驗顯示,當機器人的驅(qū)動裝置Flexinol和地面平行,腿和地面接觸時垂直,這時,機器人可實現(xiàn)最佳運動。
Stiquito機器人的六腳被分成兩組三腳架,每一組中,兩條腿在機器人的一側(cè),另外一條在機器人的另一側(cè)。這種分法可以讓機器人平滑運動,而沒有單獨控制每一條腿那樣復(fù)雜。
如圖1所示,Stiquito依靠交替活動兩個三腳架來行走。當?shù)谝粋€三腳架活動時,第二個處于“放松”狀態(tài),當它的腿和身體垂直時恢復(fù)該狀態(tài)。這樣,第二個三腳架被激活,第一個也就可以“放松”了。
最初設(shè)計的Stiquito只有一個自由度。兩年后,Mills設(shè)計了一個新版本的StiquitoII,它具有兩個自由度。如圖2所示,兩自由度就是說塑性發(fā)條除了用來向后拉腿(第一個自由度),還用來抬腿(第二個自由度)。
該機器人具有兩個自由度,通過撓性發(fā)條來完成拉腿和抬腿。
3 stiquito的教學應(yīng)用
多年來,Stiquito已經(jīng)廣泛應(yīng)用于高中、社區(qū)學院、大學學院等來培養(yǎng)未來的工程師。此外,很多初、高中學生選擇Stiquito來完成他們的科學競賽項目,而且成千上萬的機器人愛好者通過Stiquito來涉獵機器人技術(shù)。一些使用Stiquito的實例如下:
新澤西技術(shù)學院的生物醫(yī)學工程系資助了一個工程預(yù)科的教學推廣計劃,其中設(shè)計制造Stiquito機器人是其特色之一。
(www.niit.edu/old/PreCollege/PrE-IOP/events.php)。
Texas AM將Stiquito用于工程和問題求解導(dǎo)論課程(ENGRlll)
(http://crcd.tamu.edu.curriculum/engr111/stiquito/index.php)。
西密西根將Stiquito用于ECEl23移動機器人:電子和計算機工程導(dǎo)論課程
(http://homepages.wmich.edu/~miller/ECE123.html)
在佩恩州有許多實踐項目中應(yīng)用了Stiquito
(www.me.psu.edu/me415/fal199/stiquito/intro.html)。
高中生Max Eskin用Stiquito來演示了步法,步態(tài)等實驗(www.computer.org/books/stiquito/eskin.html)。
原版的Stiquito機器人讓使用者自己設(shè)計他們的控制電路。這在機器人控制中給使用者提供了一個非常好的創(chuàng)新機會,也為使用者提供了很多協(xié)助,(那些辛勤工作的教師)也從中受益。機器人需要為嵌入式系統(tǒng)的執(zhí)行提供包括詳細的控制方案的硬件支持。
4 嵌入式系統(tǒng)設(shè)計與教育
嵌入式系統(tǒng)在我們的日常生活中隨處可見,比如:微波爐、手機、汽車,等。嵌入式系統(tǒng)的一個重要特征是它的裝置中包含了一個微處理器,這個處理器就相當于裝置中的其他零部件一樣,可以供人們購買。嵌入式系統(tǒng)的另外一些特征:
* 有專門的軟件,(這個軟件是可以用戶自定義的),只具備簡單有限的功能。
* 有限制的顯示裝置。
* 沒有我們一般意義上的鍵盤。
* 可替換的機電元件。
嵌入式系統(tǒng)的核心是微處理器或微控制器。它們都可以運行軟件和進行運算。它們之間最主要的不同在于微控制器通常都由一個微處理器和其他一些外圍器件集成到同一個芯片上。這些外圍器件可能包括永久性存儲器(ROM,EEPROM或flash),臨時的存儲器(RAM),定時器單元,模數(shù)轉(zhuǎn)換單元和通信單元。
嵌入式系統(tǒng)是世界范圍內(nèi)微處理器工業(yè)中最大和增長最快的部分,它們使用的處理器約占處理器生產(chǎn)總數(shù)的99.99%(其中只有0.01%用于普通計算機)。嵌入系統(tǒng)中微處理器增長較大的原因是因為相對于所有非個人電腦產(chǎn)品所使用的微處理器和微型控制而言,應(yīng)用在個人電腦上的微處理器是非常少的。平均而言,一般家庭中使用了大約30至100個處理器,其中只有5個是用于個人電腦的。在汽車、電視機、錄像機、影碟機、烤箱、微波爐,甚至在火爐的通風口處的蓋子都使用了大量的微處理器和微控制器。有分析認為嵌入系統(tǒng)占到全世界90%以上的電子設(shè)備。
嵌入式系統(tǒng)的發(fā)展前景是光明的,因為越來越多的產(chǎn)品包含了比以往更精密復(fù)雜的電子元器件。事實上,今天的汽車里含有200多英鎊(91千克)的電子器件。目前一輛寶馬7系列的汽車和一輛奔馳S級轎車都包含有100個處理器。
盡管嵌入式系統(tǒng)設(shè)計領(lǐng)域已經(jīng)活躍了數(shù)十年,但是直到現(xiàn)在才將計算機科學和計算機工程的課程合并到一起。只有少數(shù)高校開設(shè)這類課程,并且能夠在課堂上使用的教材也很匱乏。
為解決這一問題,IEEE計算機組織和計算機協(xié)會(ACM)組成了一個聯(lián)合組織,來為計算機課程制定一個指導(dǎo)準則。這個準則的核心思想和“知識領(lǐng)域”正是嵌入式系統(tǒng)。這個組織推薦了一門至少有20個小時的嵌入式系統(tǒng)核心課程,并且建議這些課程也覆蓋到其他的嵌入系統(tǒng)選修課程。
5 利用Stiquito進行嵌入式系統(tǒng)設(shè)計的教學
Stiquito的嵌入式控制的根本是基于NanjundanMohon在1993年開發(fā)的電子主板。這個主板上包含一個摩托羅拉的68HCll控制器(內(nèi)含EPROM存儲器),每一只Flexinol材質(zhì)的腿都獨立的由晶體管驅(qū)動,并附帶一個紅外傳感器。軟件來控制機械昆蟲的腿,并且根據(jù)接受到的紅外傳感器發(fā)出的信號來調(diào)整步伐。這個實現(xiàn)的過程是一個自由度控制器來控制。
在1995年,Jonathan Mills觀察到一個有兩個自由度的此類機器人,他也意識到這種形式的移動可以使Stiquito更快。許多學生投入到設(shè)計兩自由度的自動機器人的工作當中,但直到2001年還沒有人成功。2001年,一些學生科研小組設(shè)計出了一些所學課程需要的機器人并帶其去參賽。毫無疑問,這些機器人的設(shè)計是成功的,它們是基于Parallax Basic Stamp 2微搾制器而設(shè)計出來的,并且應(yīng)用在一個簡單易用的操作平臺上,但此平臺卻相當?shù)陌嘿F。我們所需要的則是一個簡單,易于使用,而且是低成本的操作環(huán)境。
2003年,一個資深的設(shè)計團隊在北卡羅來納州立大學得到了Stiquito的控制器主板的所有需求,經(jīng)過了微芯(PIC)、Renesas、德州儀器等組織對低成本的微控制器調(diào)查研究之后,研究小組確定使用TIMSP430微控制器是最合適的選擇。通過使用這種裝置,他們成功研制設(shè)計并展示了電路實驗板控制器。
通過進一步研究,研究小組選用TIMSP430F112微處理器用在了機器人Stiquito身上(見圖3)。這個控制器有如下良好特征:
* 低功耗,運行模式下電流約為200μA而待機狀態(tài)下則為0.7μA。這個特點對于微控制器Stiquito機器人是很重要的,這個特點也是設(shè)計電池電源時考慮的因素之一。MSP430的低功耗模式允許處理器處于一種空閑的狀態(tài),同時僅僅保持最低的功耗。
* 10位模數(shù)轉(zhuǎn)換器。A/D轉(zhuǎn)換器可以通過讀機載電位計的電壓值來控制機器人的速度,只有在速度計量有效的時候A/D轉(zhuǎn)換器才起作用。這個特性使得微控制器停留在低功耗的待機模式的時間得到最大化。
* 機載系列編程器(JTAG)。研究開發(fā)人員可以利用由德州儀器公司為微控制器提供的自由軟件來進行單步調(diào)試和觀察變量值。
* 4kB閃存。這個存儲器對于存儲控制Stiquito的運動所需代碼而言是綽綽有余的。事實上,在編程結(jié)束后有近70%的存儲器并沒有使用,這就預(yù)留很大的空間來增加新的內(nèi)容和功能。
除了TI的控制器之外,其他用于Stiquito的主要硬件如下:
* ULN2803AFW晶體管(達林頓管驅(qū)動器):這個晶體管用于放大微控制器的輸出電流,原來的電流太弱而不能驅(qū)動彎曲的機器腿來控制Stiquito的移動。
* LED指示燈:第一個LED用于指示當前的電源輸出,第二個用于指示Stiquito移動時與機器供應(yīng)電流的同步信號;第三個是用于電源指示燈。
* 電位器:電位器通過改變輸入電壓的電阻來控制Stiquito的移動速度,微控制器通過感知電壓變化而調(diào)整機器人的速度。
6 實踐教育
我們大多數(shù)人通過參與實踐活動使學習效果更加明顯,眾多與此相關(guān)的教材,參考書也都使得課堂教學和實驗有機地結(jié)合在一起。Stiquito的低成本嵌入式系統(tǒng)開發(fā)板,德州儀器集成開發(fā)環(huán)境(IDE)公司的免費編譯器,這些都為學生們提供了一個容易使用的現(xiàn)成的平臺,學生們可以利用它來學習有關(guān)嵌入式系統(tǒng)的知識了。
學生可以在實驗室或在家用個人電腦進行實驗,只需要用一根很便宜的網(wǎng)線連接到網(wǎng)絡(luò)就可以進行普通實驗,建立一個實驗室需要有聯(lián)網(wǎng)的電腦,可持續(xù)供電電源、萬用表和用于理解教學儀器原理的混合信號示波器。
Stiquito控制板已經(jīng)使用在夏洛特的北卡羅來納大學實驗室中,它為學生提供了對課堂上所討論的技術(shù)進行實驗的機會。一些實驗包含了以下部分:
* 軟件開發(fā)使用的集成開發(fā)環(huán)境進行設(shè)計、編碼和調(diào)試:
* 硬件技術(shù)如焊接、接口連接、設(shè)計、設(shè)備和儀器使用:
* 電源控制和預(yù)算。
定時器和中斷實驗展示了實驗室工作所需的技術(shù)和設(shè)備,學生在微控制板上附加了混合信號示波器,這樣做可以用于檢測輸出端口,可以用于監(jiān)控常規(guī)中斷服務(wù)程序的進入和退出,以及啟動硬件定時器。如果沒有一個帶有很大存儲深度的邊沿觸發(fā)示波器的話,這種實驗無法進行。
Stiquito也可以用于多學科活動。例如,在2005年,UNC夏洛特機械工程學科的學生設(shè)計了一個Stiquito機器人來進行試驗。為了更進一步理解機器人設(shè)計的復(fù)雜性,機械工程學科的學生與進行嵌入式系統(tǒng)學習的學生組合成一個團隊進行了另外一項實驗,這些學習機械工程的學生通過這次合作學會了有關(guān)建立、編譯、下載新的Stiquito控制代碼的技術(shù),而學習嵌入式系統(tǒng)技術(shù)的學生則只是協(xié)助指導(dǎo)機械工程的學生來完成實驗,但并不親自動手幫助他們進行一些實際的工作。
7 Stiquito的未來
Stiquito機器人的一個最重要的特性就是它的可擴展性。正如原先所設(shè)計的模型被擴展成可以進行微控的新型機器人,新的設(shè)計還可以提高,更多的開放端口可以用于增加傳感器或輸出設(shè)備。一個例子是可以增加代理傳感器,當遇到墻壁時能使機器人停止前進,或安裝一個無線收發(fā)器來和其他Stiquitos機器人或基站進行通訊。
我們正在努力使Stiquito的身體大小減少到目前的一半,這個機器人將依靠印刷電路板作為他的機械機構(gòu),仍然保持與原來嵌入式系統(tǒng)相同的特征。較小的身軀意味著消耗的電流更少。由于新PC機不再帶有并口,我們也正在設(shè)計一個新的JTAG接口,來連接到PC機的USB端口。
8 結(jié)論
我們能夠構(gòu)建一個更好的Stiquito嗎?回答是肯定的,每個部分都可以改良提高的。有這樣一本書,已經(jīng)出版到第四版,書中各個章節(jié)的內(nèi)容都是由那些進行過Stiquito試驗的人編纂完成的,將來這本書中還會包括更多有教育意義的活動和應(yīng)用設(shè)計。