行政院國家科學委員會專題研究計畫 期中進度報告
總計畫-微型仿生生物體之研發(2/3)
計畫類別: 整合型計畫 計畫編號: NSC93-2213-E-002-047- 執行期間: 93 年 08 月 01 日至 94 年 07 月 31 日 執行單位: 國立臺灣大學電機工程學系暨研究所 計畫主持人: 陳永耀 共同主持人: 顏家鈺,連豊力 報告類型: 精簡報告 處理方式: 本計畫可公開查詢中 華 民 國 94 年 5 月 31 日
行政院國家科學委員會專題研究計畫成果報告
微型仿生生物體之研發(2/3)
總計畫-微型仿生生物體之研發(2/3)
計畫編號: NSC93-2213-E-002-047-
執行日期: 93 年 8 月 1 日至 94 年 7 月 31 日
計畫主持人:陳永耀 國立台灣大學電機系 教授
共同主持人:顏家鈺 國立台灣大學機械系 教授
共同主持人:連豊力 國立台灣大學電機系 助理教授
一、前言
本計畫為整合型計畫「微型仿生 生物體之研發」之總計劃。本計劃之 主要動機在師法大自然的創作,模仿 微型生物體的肢體結構及功能,例如 某些用腳行走的動物(昆蟲)在表面粗 糙及不規則地形上的操控及性能都可 輕易勝過最靈巧的人造載具。希望藉 由研究這些生物體的系統特性,能夠 發展下一代之人造載具或機器人;同 時本計劃利用現有高科技通訊技術完 成同群體間的溝通來發展群集的仿生 機器人,模仿生物群體協調合作行為 及資訊交換機制。具有昆蟲特性的仿 生機械可有效率的橫越困難地形,並 利用微型感測系統進行探查,更由於 群體間的互助合作,應該可以協助完 成人類所不可及之工作,例如在惡劣 的地形下進行探索,或在進行災難救 援時能發揮卓越的性能。二、摘要
中文摘要 總計劃本年度的執行內容分成三 部份來個別進行,分別如下: 子 計 畫 一 延 續 去 年 度 研 發 的 成 果,進一步進行仿生甲蟲的機構製作 及形狀記憶合金驅動器的製作,並建 立 ARM 控制器開發環境,以進行昆 蟲運動控制邏輯分析。 子計畫二本年度主要成果為演算 法設計,讓一群仿生體可以在保持有 效之通訊能力下,形成最大的區域分 散度,同時當其中一隻發出集合的資 訊時,所有的仿生體便可以移動到發 出資訊的那一隻仿生體附近。 子計畫三本年度主要的執行內容 包含微型機械蟲短程感測裝置之硬體 建置及如何透過有限資訊的交換,模 仿自然界中生物的「群體智慧」,使 一群微型機械表現出有智慧的群體行 為。 AbstractThe content of the second-year main project includes three sub-programs :
Subsidiary project 1 : In this year, we were devoted to the gait analysis and design. We have accomplished the mechanism of the legs of the bug for the main project, made a prototype
microrobot, and setup the control architecture.
Subsidiary project 2: The project research mainly focuses on the movement algorithms of multi-agent team or group. The movement algorithms include dispersion and concentration algorithms that are used for distributing and collecting, respectively, the team of agents under the communication limitation. The algorithm is designed based on the observation from biological system and tested by computer simulation as well as the experimental wireless test-bed at the laboratory.
Subsidiary project 3: In the second year, the local infra-red sensor system is set up and the group behavior of the micro-robots is studied. An algorithm to the « Neighboring Problem » is developed, which is the first step to analyse and design our bio-mimetic micro-robot with “group intelligent.”
三、計畫緣由與目的
總計劃之主要目的為進行各子計 畫之整合,進行微型機械在力學仿生 以及資訊與控制仿生之研究,師法大 自然中微型甲蟲靈巧的機構設計及運 動行為、有效率的感測致動行為以及 群體間資訊互換機制與合作行為。 子計劃一之目的為進行仿生甲蟲 的機構設計與製作,以作為總計劃中 的實體載具。本子計畫延續去年度研 發的成果,進一步進行仿生甲蟲的機 構 製 作 、 形 狀 記 憶 合 金 驅 動 器 的 製 作,並建立 ARM 控制器開發環境, 以進行昆蟲運動控制邏輯分析。 子計畫二之目的主要是放在探勘 以及搜尋集中方面。仿生機器人在探 勘的任務裡為了要蒐集較多的資訊, 所 以 要 盡 可 能 的 分 散 在 探 勘 的 區 域 裡。而為了讓分散的仿生機器人可以 順利的回收或者是集中到同一個區域 去進行搬運或是其他的任務時,需要 賦予仿生機器人集中到一個小區域的 能力。 子計畫三之目的為分析設計群體 仿生機器人彼此間的互動原則,使其 表現出有智慧的群體行為,同時藉由 短距離及長距離之感測能力,探索未 知的區域及進行目標追尋。此外受限 於微型機械的先天限制,每隻微型機 械的感測能力範圍有限,因此規劃每 隻微型機械能藉由自身所感測到的資 訊以及透過無線傳輸所獲得的訊息為 依據,作出下一個動作的決策,表現 出群體行為。四、文獻探討
六 足 機 器 人 多 以 模 仿 昆 蟲 為 對 象,有模仿蟑螂的如[1][6][8],有模 仿竹節蟲的如[2][3][4],四足機器人 多模仿哺乳類,如[5]。而在行走的動 力來源方面則眾人選擇皆不盡相同, 如使用直流馬達的較大型傳統行走機 器 人[4] , 或 使 用 空 氣 活 塞 , 如 [1][6] , 也 有 使 用 熱 動 式 致 動 器 (thermal bimorph actuator),如[7],或 IPMC(Ionic Polymer Metal Composite) 致動器[8],以及使用形狀記憶合金致 動器的仿生機械,如[3]。近幾年來仿生機器人在工程領域 上有廣泛的應用,如軍事的偵查、行 星的探勘、或地圖的製作,都是很典 型的應用[9]。 在多群組機器人的協調合作機制 中,通訊扮演了相當重要的角色。仿 生 機 器 人 可 以 透 過 通 訊 交 換 彼 此 資 訊,作為決策的參考資料,可使整體 行為更為協調。故通訊架構在多群組 機器人中是必需研究的一個課題[12]。 動物界中有許多所謂「群體智慧」 (group intelligence)的有趣現象,舉 例而言,當蜜蜂在築巢的時候,並不 是每隻蜜蜂都真的知道自己在建構什 麼[11]。這顯示了群體之中存在一些 簡單的法則,使得每個個體依照著這 些法則來與其周圍的環境及鄰居產生 互 動 , 呈 現 出 所 謂 有 智 慧 的 群 體 行 為,而不是經由一個領導者發號命令 產生的群體行為。 到目前為止國外有許多的研究畫 在進行,如 Tierra 計畫中,Tom Ray [12],Adami 和 Richard Lenski[13] 試 著在一個虛擬的環境中探索生物自然 進化的情況。
五、研究方法
總計劃因整合三個子計畫之故, 所以研究方法將分成三部分來探討及 簡述其內容。 (一) 子計畫一 在仿生機器人機身和肢腳結構的 設計上,我們參考自然界昆蟲的身體 構造,以求在機構設計上能達到最佳 的 移 動 效 果 , 在 步 態 設 計 與 實 現 方 面,利用ARM Developer Suite (ADS) 軟 體 來 撰 寫 步 態 程 式 , 並 載 入 到 ARM920T 的發展板上,透過板子上 I/O port 的輸出訊號來測試機器人基本 的移動功能。我們使用適當的驅動器 來供給形狀記憶合金足夠的電流量, 補償 I/O port 所輸出的電流量不足, 加快機器人的移動速度。 (二) 子計畫二 現在在學術界上已經有很多演算 法是利用感測器(sensor)所獲得的資訊 來發展。一般而言,通訊範圍比感測 範圍大很多,所以我們在這一個計畫 裡面就是要利用通訊所可以得到的資 訊來發展仿生體的移動演算法。而所 利 用 的 資 訊 是 最 簡 單 並 且 最 易 得 到 的,就是周圍仿生體的個數跟大概的 距離。 (三) 子計畫三 本計劃賦予仿生機器人兩種感測 能力,其一為遠程距離的感測,即本 子 計 畫 第 一 年 度 所 發 展 的 氣 味 感 測 與追蹤演算法;另一個則為短程距離 紅外線的感測,主要目的是在障礙物 的偵測。我們可將遠程距離的感測能 力視為一個引導微型機械前進的方向 指標,而短程距離的感測為前進過程 中微調的引導。 至於群體行為的部份,師法自然 界 中 的 動 物 群 體 , 如 魚 群 同 步 的 游 動、候鳥成一特定隊形飛行等,藉由 分析動物群體中,個體與個體、環境 間互動的基本法則,設計出符合目的 的法則,建構出微型機器人的群體行 為。六、研究成果
本計劃為整合型計劃,整合了仿 生學的三個領域(力學、資訊與智慧型控制),模仿生物體的運動模式和身體 結構、單一生物體的感測系統及生物 群體間的協調行為並模仿及資訊交換 機制,進而設計出微型仿生生物體機 構。 據此,本整合型計畫將第二年度 各子計畫的研究結果分述如下: (一) 子計畫一 微型仿生機械之機構與足部設計與製 作 本計畫所設計之仿生機械的整體 機構是模仿昆蟲的構造,腳是利用彈 性 材 料 高 碳 鋼 製 成 , 提 供 反 向 恢 復 力,免去需要另增加一條偏壓彈簧或 另一條形狀記憶合金,造成驅動上複 雜度的增加。機械本體上的小滑輪是 為 了 增 加 每 條 形 狀 記 憶 合 金 線 的 長 度,使得形狀記憶合金的收縮量(為原 長的 5%)能盡量變長,(如下圖一所 示)。 圖一 微型仿生機械實體 每一隻腳都使用兩條形狀記憶合 金來驅動,其中一條控制腳步的向上 抬升(Z 軸方向),其形狀記憶合金線分 佈在機體的背部;另一條則使腳能做 水平方向的向後拉動(X 軸方向),此 形狀記憶合金分佈在機體的腹部。Z 軸方向每條長度約10cm,收縮量約為 5mm ; 而 在 X 軸 方 向 每 條 長 度 約 13.5cm,收縮量大約為 6.75mm,但是 腳部放大機構的設計,可以讓機器人 每 一 步 的 行 程 達 到 1cm (如圖二所 示)。 圖二 腳部的設計(1) 為了使腳能在移動前和移動後保 持在同一個水平面上,刻意讓腳和垂 直面有一個約 6 度的傾斜角度。圖二 中紅色的部分為形狀記憶合金在收縮 之前,腳部的位置;黑色部分為形狀 記憶合金收縮之後,腳部的位置,綠 色部分為機身,而紫色部分則為形狀 記憶合金的分佈位置,這樣的傾斜設 計使得機器人在完成一整個步態的過 程中,不至於有踩空的情形發生(如圖 三) 。 在 整 個 機 構 中 , 腳 的 長 度 約 7cm,而機身的大小約為:長 8.9cm、 寬5cm、高 2cm,總重量約 80g。 圖三 腳部的設計(2) SMA)驅動器 致動 器直 形狀記憶合金( 本計劃使用的形狀記憶合金 徑為 0.15mm,所需的驅動電流 為 340mA。我們利用達靈頓驅動器
(Darlington Driver)來補償從開發板 I/O 控制腳位流出的過小電流,藉由輸入 端的訊號高低,來決定是否讓電源端 的電流流經形狀記憶合金並使其加熱
收 縮 , 如 圖 四 所 示 , 形 狀 記 憶 合 金 (Load)放在+V 和 output 之間。 從 I/O 給出來的訊號只會有兩種 準位 一 控制架構 的控制核心是新華電腦公 行走速 度最 reate ARM .axf 檔 ,其中 個為高準位(+3.3V),另 一個為低準位(0V)。+V 和 0V 則分別 接 在 電 池 的 正 負 極 上 , 電 源 電 壓 為 6V。當 input 端是 0V 的時候,電流不 導通,使得形狀記憶合金恢復或是保 持原長;當input 端為 3.3V 時,output 端會變成低準位(約 1.6V),在形狀記 憶合金兩端造成約4.4V 的壓差。因為 形狀記憶合金的電阻值約為 61Ω/m, 所以機器人上所使用的形狀記憶合金 每條的電阻約為7~8Ω,可推得流經形 狀記憶合金的電流量約為 550~628mA 之間,足夠驅動形狀記憶合金收縮來 產生步伐的移動。 圖四 Darlington 驅動器 本計畫 司 所 開 發 的 Creator PreSOC Development Kit 發展平台,上面搭載 的 CPU 模 組 是 Create ARM920T-S3C2410 Board。此發展平 台透過In-Circuit Emulator(ICE)與電腦 連 結 。 利 用 ADS 軟 體 compile C code,並透過 print port 從電腦傳到 ICE,再使用新華電腦自行開發的軟
體 Domingo 來執行載入程式的動作,
由ICE 經 JTAG 載入 ARM 裡,控制訊 號 經 由 Create ARM920T-S3C2410 Board 上的 I/O port 進入 SMA 驅動 器,最後再將足夠驅動形狀記憶合金 的電流送進記憶合金裡,驅動腳來使 得仿生機械能依照想要的方式移動, 如圖五所示為整個控制流程。 SMA Driver I/O Robo nt 圖五 控制流程圖 仿生機器人之步態設計分析 一般六足機器人最穩定、 快的步態為 Tripod gait。由觀察 蟑螂行走動作和昆蟲影片發現此步態 也被自然界大部分生物所採用。 在 實 現 部 份 , 我 們 利 用 C 920T-S3C2410 Board 上 的 I/O port 輸出邏輯高低準位,作為開關訊 號控制電流流經形狀記憶合金的先後 順序,所謂的 Tripod gait 就是把六隻 腳分成兩組,一組三隻腳:[L1,L4,L5] 一組,而[L2,L3,L6]為另一組,例如 圖六的直線行走步態時序:初始狀態 六 隻 腳 都 著 地 , 開 始 行 走 時 , [L1,L4,L5]先往上(Z 方向)抬升離開地 面,接著利用接觸地面的[L2,L3,L6] 往水平方向(X 方向)拉伸,帶動整個 機身往前移動,這時再將處於抬升狀 態的[L1,L4,L5]放下,也就是使控制 這三隻腳在 Z 方向運動的形狀記憶合 Make ADS or IAR Domingo JTAG t Curre & ICE ARM920T
金恢復其長度,當[L1,L4,L5]接觸到 地面,亦即經過了圖七上所示的SMA 恢復時間,則[L2,L3,L6]在 Z 方向的形 狀記憶合金收縮,使之離開地面,同 時讓其 X 方向的形狀記憶合金恢復原 長,緊接著在[L2,L3,L6]Z 方向的形狀 記憶合金還保持收縮狀態的時候,將 [L1,L4,L5]控制 X 方向的形狀記憶合 金收縮,使得仿生機器人本身再往前 進,接著不斷的重複之前所述的步態 程序(如圖七中紅色圈圈處),使這兩 組步態交錯運動,即可順利的往前直 線運動,就如同圖八所示,形狀記憶 合金加熱收縮,並將肢腳往後拉伸, 使得機身能向前移動。下圖八和九則 是仿生機器人的右轉和左轉時序圖。 圖六 仿生機器人前進示意圖
圖八 Tripod gait of turnning right 時序圖
圖七 Tripod gait 時序圖
圖九 Tripod gait of turnning left 時序圖
(二) 子計畫二 目前已經有很多演算法是利用感 測器(sensor)所獲得的資訊來發展,但 由圖十看到通訊範圍比感測範圍大很 多,在這一個計畫裡面就是要利用通 訊所可以得到的資訊來發展仿生體的 移動演算法。而所利用的資訊是最簡 單並且最易得到的-周圍仿生體的個 數跟約略的距離。 圖十 感測範圍與通訊範圍示意圖 Z (1,4,5) X (2,3,6) Z (2,3,6) X (1,4,5) Z (4) X (4) X (1,5) Z (1,5) Z (3) X (3) X (2,6) Z (2,6) 1 3 4
SMA force Forward direction
SMA恢復時間
圖十一是仿生體要移動時的流程圖, 每一個仿生體要移動時都會先判斷一 下自己現在屬於哪一個狀態然在進行 移動。我們首先簡化移動的自由度, 只允許前進、後退、左移及右移四個 方向。 圖十一 移動演算法流程圖 圖十二 和圖十三分別是分散和 集中的基本概念,其中在分散部分就 是希望在通訊方面不會產生斷訊的情 況下,一整群的仿生體可以平均的向 外分散,探索整個未知區域;而集中 部分是當一隻仿生體找到目標物的時 候,它會廣播訊息給其他的仿生體, 使他們往找到目標物的仿生體附近移 動並搜尋,直到最後大家都可以找到 目標物。 Partition Non-Partition Bad result Good result 圖十二 分散移動示意圖 Message Message Message Target 圖十三 集中移動示意圖 分散演算法 關於分散的演算法,我們分成三 種情況,第一種是當仿生體完全沒有 任何環境資料的時候會先用亂數的方 法決定移動的方向移動十步,去搜集 環境的資訊。第二種情況就是利用第 一種情況所收集的資訊去移動,移動 的依據是往仿生體的數目比較少的地 方去移動。第三種情況就是當仿生體 移動了一段時間之後都沒有蒐集到任 何資訊時,仿生體就會往同一個方向 一直移動,試著去脫離這樣的窘境。 集中演算法 這一個部分分成兩個階段,第一 個階段就利用仿生體之間的相對位置 去移動,每一個仿生體上都會有四個 記數器,讓可以讓仿生體記錄自己的 資料,並且在傳送時把他送出去讓其 他的仿生體可以到他的附近。 第二個階段分成兩個情況,一種 是仿生體通訊範圍內其他仿生體的數 目有變化時,另一種是數目沒有變化 的時候。當數目沒有變化的時候,仿 生體會用 Spiral surge algorithm(SSA)
去進行地毯式的搜尋,而當數目有變 動時,仿生體會往仿生體個數比較多 的的地方去移動。 實驗及模擬結果 圖 十 四 是 實 驗 時 所 用 的 硬 體 設 施,其中CC1010EB 可以和 PC 連接, 我們把演算法寫到模組裡進行仿生體 碰到各種情況下的實驗。 PC RS232 CC1010EB data data data data data CC1010EM 圖十四 CC1010EB 硬體架構 圖十五-十七說明我們所發展的演 算法之模擬結果。模擬的情境是設定 一個目標物在座標(720,500)處。在模擬 過程中,所有仿生體初始位置都在探 勘 區 域 的 最 中 間 , 然 後 開 始 往 外 分 散,直到其中一之仿生體找到了目標 便發出訊號,通知其他的仿生體,引 導它們至目標附近去搜尋,圖十六為 所有的仿生體都找到了目標物。當所 有仿生體都找到目標物之後,他們會 在分散去尋找下一個目標,最後就會 分散在整個平面上,如圖十七所示。 圖十五 仿生體分散搜尋情形(times 316) 圖十六 仿生體往找到的目標集中 (times 807) 圖十七 仿生體繼續搜尋其餘目標 (三) 子計畫三 短程感測器之硬體建置 在 選 擇 機 械 蟲 的 避 障 感 測 器 方 面,我們預計採用紅外線做為我們的 媒介。受限於微型機械蟲酬載能力、 電源供應等,相對於超音波而言,紅 外線具有體積小、成本低廉、耗電性 低、低干擾性的特性,是我們考慮選 用紅外線當作感測器主要原因。 然而紅外線在距離量測範圍上比 超音波小了許多(一般而言,超音波 的量測距離約在5m 至 10m),但比超 音波較具方向性。在圖18 中,我們可 以看出超音波所打出的錐形聲波明顯 的紅外線發射出去的錐形大,在錐形 聲波所涵蓋的範圍內只要有障礙物都 有可能被偵測到,而對於障礙物確切 的方位卻無法透過超音波得知,這樣
先天的限制可以透過架設多的超音波 測距裝置改善[14];當障礙物的面向不 佳 時 , 亦 會 造 成 誤 判 。 離 發 射 點 越 遠 , 超 音 波 的 錐 形 聲 波 會 擴 展 的 越 大,對於小體積的微型機械而言,過 大的障礙物偵測範圍反而會造成微型 機械蟲在判斷決定下一個作動時的干 擾。 至於紅外線發射器所打出較窄的 錐形,可偵測的範圍較小,距離也較 短,對於障礙物有較高的方向性。圖 十九為Vishay Telefunkun 這家公司所 生產的 CNY70 紅外線感測器的規格 圖,90%強度的紅外線光束約集中在正 負20 度的範圍內,對於小體積的微型 機械蟲,能夠提供較有效的障礙物資 訊。 圖十八 超音波在方向上的不確定性 圖十九 紅外線發射強度與散射角關係圖 我們在發射端加上一些特定頻率 的識別訊號,如圖二十所示意,便於 在接收時用以判斷是否為本身發出的 訊號,此構想來自於生活中常見的紅 外線遙控器工作原理,如此便能準確 判讀訊號的來源是否正確。 圖二十 識別訊號示意圖 群體行為之探討 我們可以將分析微型機械的群體 行 為 , 分 為 三 個 層 次 , 資 訊 交 換 (Communication ) 、 協 調 ( Coordi- nation)及整合行為(Integral Beha- vior)。資訊交換的部份,因為微型機 械體積過小,空間中氣味濃度梯度變 化小於氣味感測器的靈敏度,導致無 法 單 靠 自 己 本 身 有 效 感 測 出 氣 味 梯 度,所以我們希望藉由無線通訊交換 彼此的氣味濃度資訊,作為決定下一 個搜尋動作的參考資料,就如同螞蟻 在搜尋食物時,會以腹部碰觸地面留 下費洛蒙,提供之後來到該處的螞蟻 一些訊息。協調的部份,我們希望訂 定一些簡單的法則讓每隻微型機械來 遵守,這些簡單的法則描述了和周圍 微型機械及環境的互動,作為我們分 析群體的整合行為的基礎。 由於微型機械的通訊範圍以及技 術上的限制(例如載具酬載感測器的 能 力 、 能 源 供 應 、 計 算 能 力 等 限 制),每隻微型機械只能知道誰是自 己周圍的鄰居,由於接收無線通訊的 信號時無方向性,而不知道每個鄰居 的正確位置,這樣會造成雖然有接收 到別隻傳送的訊號,但卻不知道正確 的來源方向,以至於無法決定下一個 動作。因此每隻微型機械若能知道自 己周圍鄰居概略的分布情形,將有助
於在判斷上的準確定,以下是介紹對 我們針對此問題所設計的演算法。 首先將”鄰居問題”(Neighboring Problem)重新定義如下:每隻微型機 械只知道誰是自己周圍的鄰居,而不 知 道 他 們 確 切 的 位 置 , 試 找 出 一 個 ( 或 多 個 ) 符 合 這 些 條 件 的 分 布 情 況。接著我們做了幾個假設以簡化我 們的問題: 1. 微型機械的感測能力有限。 2. 微型機械是在一個格子狀世 界(grid world)。 3. 微型機械的通訊能力有限, 再此我們訂定為一個格子的 距離如表一所示。 4. 每個格子只能容納一隻微型 機械。 R7 R1 R3 R12 R11 表一 通訊能力假設示意圖 由以上假設我們可得知,每隻微型機 械周圍最多只能有八個鄰居。 假設我們現在有一組資訊如表二 所示:
Robot Number Neighbors
1 2,3,6,7 2 1,4 3 1,5,6,7 4 2 5 3 6 1,3,7 7 1,3,6 表二 相鄰機械蟲資訊 舉 1 號機械蟲為例,它的鄰居有 2、3、6、7 號機械蟲。將其轉換為鄰 近矩陣(Adjacency Matrix)如表三所 示,Ri和Rj
(
i≠ j)
為鄰居,則在鄰近 矩陣相對應的位置上填1,反之則填 ;當 0 i= 時,則填上1。 j 1 2 3 4 5 6 7 1 1 1 1 0 0 1 1 2 1 1 0 1 0 0 0 3 1 0 1 0 1 1 1 4 0 1 0 1 0 0 0 5 0 0 1 0 1 0 0 6 1 0 1 0 0 1 1 7 1 0 1 0 0 1 1 表三 鄰近矩陣(Adjacency Matrix) 我們所設計的演算法流程如圖二十一 所示,各個步驟簡介如下: Step 1 : 初始化 1. 將微型機械蟲依出現次數多寡排 序。 2. 將第一隻機械蟲放入格子世界中 適當的位置(i=1)。 Step 2 : 將子代擺入等待序列(queue) 1. 將 (父代)從等待序列中移 除,且將未擺入格子世界的鄰居 (子代) 依照出現次數的多寡依 次放入等待序列中。 i robot 2. 設定子代性質root[.]=i。 3. i= i+1。 Step 3 : 置入格子世界 1. 檢查是否有適當的位置符合所有 限制條件,若無,則 ,回 到Step 3;若有,則將 放置 於 該 位 置 並 記 錄 其 相 對 位 置 1 − = i i i robot l relative[.]= , , 回 到 Step 2,直到等待序列清空。 8 ~ 1 = l相對位置 是指相對於父 代的位置,這將有利於當我們遇到無 解的情況時,回溯重新找答案。相對 位置的編號如 圖二十二所示。 [.] relative 圖二十一 演算法流程圖 5 4 3 6 robot i 2 7 8 1 圖二十二 相對位置圖示 上面的例子(表二)根據我們的 演算所搜尋到兩組可能的分布情況, 其結果如圖二十三及圖二十四所示。 0 0 0 0 0 0 0 5 0 0 0 0 0 0 3 7 0 0 0 0 6 1 0 0 0 0 0 0 2 0 0 0 0 0 0 4 0 0 0 0 0 0 圖二十三 表 2 經演算法搜尋到的分布之ㄧ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 7 0 0 0 0 3 1 0 0 0 5 0 0 2 0 0 0 0 0 0 4 0 0 0 0 0 0 圖二十四 表 2 經演算法搜尋到的分布之二 若將以上任意一個結果作旋轉或 鏡攝後所得的分布皆視為同一種搜尋 的分布結果,在這個簡單例子中,微 型機械蟲主要群集的部份(藍色底) 就是上圖所示的這兩種分布情況,相 異處為對角的機械蟲不同。 我們所關心的是根據此演算法所 找到的分布中,機械蟲群集部份的差 異性,我們對於這些不在群集部分的 機械蟲的資訊不多,雖然會產生多重 解的可能性較大,這些多重解產生的 差異性對於整體的分布而言的影響是 比較小的,因為此原因,我們所設計 的演算法對於周圍沒有鄰居的機械蟲 是不加以處理的。
七、計畫成果自評
本年度各子計畫已完成之目標如 下 : 1. 完 成 仿 生 甲 蟲 的 機 構 設 計 與 製 作 , 以 做 為 總 計 劃 中 的 實 體 載 具 。 透 過 驅 動 器 放 大 電 流 (Darlington Driver)來驅動形狀記 憶合金,並使用風扇來加快形狀 記憶合金的冷卻速度,增加其長 度恢復的速度,有效確實的提升 仿生甲蟲的移動速度。2. 發展移動演算法,透過資訊的交 換,讓一群仿生體可以分散在同 一個區域裡面並且當其中一隻發 出集合的資訊時,所有的仿生體 便可以移動到發出資訊的那一隻 仿生體附近。 3. 探討群體行為,對於「鄰居問題」 (Neighboring Problem)發展了一 個演算法。在有限資訊之下,將 微 型 機 械 蟲 的 可 能 分 布 情 況 找 出,作為探討群體行為第一個層 次(資訊交換)的基礎。 未來一年的進度將更加強三個子 計畫間的溝通協調,並在各自的進度 上加快腳步,以期能如期完成微型甲 蟲的硬體與功能之建置,進而完成各 項智慧型群體行為之探討。
八、參考文獻
[1]. Fred Delcomyn, Mark E. Nelson, “Architecture for a biomimetic hexapod robot,” Robotics and
Autonomous Systems 30 (2002) 5-15
[2]. H.-J Weidemann, F. Pfeiffer, J. Eltze, “The Six-Legged TUM Walking Robot,” Proc. of the 1994 IEEE/RSJ
Int. Conf. on Intelligent Robots and Systems, München, Germany, Sept. 12
- 16, 1994, pp. 1026 - 1033
[3]. Weidemann, H. J., Pfeiffer, F., Eltze, J., “A Design Concept for Legged Robots Derived from the Walking Stick Insect”, Proceedings of the 1993
IEEE/RSJ International Conference on Intelligent Robots and Systems,
Yokohama, Japan, July, 1993.
[4]. Clark, J. E., Cham, J. G., Bailey, S. A., Froehlich, E. M., Nahata, P. K., Full, R. J. and Cutkosky, M. R., "Biomimetic Design and Fabrication of a Hexapedal Running Robot,"
International Conference on Robotics and Automation (ICRA2001), Seoul,
Korea, May 21-26 2001.
[5]. Byungkyu Kim, Jaewook Ryu, Younkoo Jeong, Younghun Tak, Byungmok Kim, Jong-Oh Park, “A ciliary based 8-legged walking micro robot using cast IPMC actuators,”
ICRA 2003: 2940-2945
[6]. R. J. Bachmann, D. A., kingsley, R. D. Quinn, R. E. Ritzmann, “A cockroach robot with artificial muscles,” 5th
international conference on climbing and walking robots, pp. 659-666,
2002.
[7]. http://www.cs.ualberta.ca/~database/M EMS/sma_mems/sma.html
[8]. http://www.toki.co.jp/biometal
[9]. Alessandro Farinelli, Luca Iocchi, and Daniele Nardi, “Multirobot Systems: A Classification Focused on Coordination,"IEEE transactions on
systems, man, and cybernetics- part B: cybernetics, Vol.34, No. 5, October
2004.
[10]. Andrew S. Tanenbaum: “Computer Networks,” 4th ed, NJ: Prentice Hall,
2003.
[11]. G. Theraulaz, W. Bonabeau, “Coordination in Distributed Building,” Science, VOL. 269, NO. 687, 1995, pp. 686-688.
[12]. J. L. Casti, Would-be Worlds: How
Simulation is Changing the Frontiers of Science, John Wilet & Sons, New
York, 1997, p.165.
[13]. T. Appenzeller, “Test Tube Evolution Catches Time in a Bottle,” Science, VOL. 284, NO. 5423, 1999, pp.2108-2110.
[14]. Ru-Bo Zhang, Hong-Jin Ouyang and Xin-Ce Wang, “Research on Bionic Swarm Behavior of Intelligent Robot," in proceeding of the third international conference on machine learning and cybernetics, Shanghai, 26-29 Aug. 2004.
[15]. ARM9 S3C2410 嵌入式 SOC 原理, 新華電腦.
[16]. ARM9 S3C2410 嵌入式 SOC 實作,新 華電腦.