第三章 機器人之軟、硬體系統架構與設計
3.8 結論
本章節對整體硬體分成底層系統、距離感測系統、電源系統、馬達控 制系統做詳細介紹,並之後描述介面軟體之功能和設計理念,而將於第五 章使用五個實驗來驗證硬體執行各種動作行為和介面程式之效能。
第四章 移動機器人控制之階層模糊邏輯系統設計
在第四章將介紹本論文使用之階層模糊邏輯系統,分別介紹沿左牆壁 動作行為、沿右牆壁動作行為、靜態避障動作行為、動態避障動作行為、
沿目標物動作行為、抓取動作行為模糊系統。
4.1 簡介
機器人控制中,模糊邏輯控制器被廣泛應用[1]-[6],但當面臨感測器 輸入數繁多、複雜時,規則數會指數增加,而使移動機器人反應變慢 [8][9][14]。在1991年時,Raju和Zhou等人就提出階層模糊邏輯控制器來解 決規則數增加問題[19]。
例如本論文實驗之機器人共有7個輸入(雷射測距儀3個、紅外線感測 器2個、超音波感測器1個、攝影機輸入1個),假設每個輸入使用三個歸屬 函數,則共有37=2187條規則,系統會變得相當複雜。但當系統使用階層 模糊系統時,則可解決規則數過多問題[12][13]。
本論文階層模糊邏輯控制器將行為分成六種子動作行為模式如圖4.1 所示:沿左牆壁、沿右牆壁、靜態避障、動態避障、沿目標物、抓取,則 規則數只需要21條 (雷測測距儀4條、沿左牆壁3條、沿右牆壁3條、靜態 避障3條、動態避障3條、沿目標物3條、抓取2條),系統設計變得相當容 易。本文將所有輸入訊號X1 ~X7(如表4.1所示)分成兩級,輸入X1為第 一級,輸入X2 ~X7為第二級。階層式模糊邏輯系統其之間各個動作行為切 換流程如圖4.3所示
Fuzzy System
Fuzzy Fuzzy Fuzzy Fuzzy Fuzzy
X1
Output Output Output Output
向左 向右
表 4.1 輸入訊號 X1 ~X7資料來源
輸入 輸入訊號資料來源
X1 雷射測儀所測量到的資料,依角度 60~120 度、120~180 度、
0~60 度分割為 X11 、X12 、X13如圖 4.2 所示
X2 Sputnik 機器人上左側紅外線感測器
X3 Sputnik 機器人上右側紅外線感測器
X4 雷射測儀,X11資料
X5 雷射測儀,X11資料
X6 網路攝影機
X7 Sputnik 機器人上前側超音波感測器
X11
X12 X13
機器人俯視圖
X11:60~ 120度 X12:120~180度 X13: 0 ~ 60 度 圖 4.2 雷射測距儀資料分割圖
開始
雷射測距儀 收集資料
靜態障礙物 Yes 執行靜態避障
No
左右障礙物 Yes 執行沿牆壁
No
動態障礙物 Yes 執行動態避障
No
原地旋轉 尋找目標物
發現目標物 Yes 執行沿目標
No
是否抓取距離 Yes
執行抓取
No
圖4.3 動作行為切換流程圖
階層式模糊邏輯系統第一級輸入為雷射測距儀所測量到的資料X11、 X12、X13和X11 , X12 , X13 三者之間的最小值[10][11]。雷射測距儀輸入所規 劃出歸屬函數如圖4.4所示,其模糊規則為:
IF X11 IS NEAR THEN AVOID OBSTACLES,
IF X12 IS NEAR THEN WALK ALONG THE LEFT WALL, IF X13 IS NEAR THEN WALK ALONG THE RIGHT WALL, IF Mim { X11 , X12 , X13 } IS FAR THEN TRACK GOAL.
1
0
cm
NEAR FAR
60 100
圖 4.4 雷射測距儀輸入歸屬函數
4.2 閃避障礙物之模糊邏輯系統
閃避障礙物模糊系統為第二級的模糊系統,本論文依雷射測距儀 X11 資料當作輸入,且依據前筆資料和後筆資料之差異大小來分為靜態或動態 障礙物。靜態障礙物模糊邏輯系統,輸入 X11之歸屬函數如圖 4.5 所示,
其規則為:
IF X11 IS FAR THEN Ө=Q1, IF X11 IS MED THEN Ө=Q2, IF X11 IS NEAR THEN Ө=Q3
其輸出歸屬函數使用單值如圖 4.6 所示,輸出為機器人旋轉角度。
0
cm
Near Med Far
45 65 25
圖 4.5 輸入 X11歸屬函數
120 deg.
60 90
Q1 Q2 Q3
圖 4.6 輸出之歸屬函數
而動態靜態障礙物角度模糊邏輯系統,輸入為 X11 前後筆資料的差,即 Xd=X11(k+1)-X11(k),其歸屬函數如圖 4.7 所示,其規則為:
IF Xd IS S THEN Ө=Q1 , IF Xd IS M THEN Ө=Q2, IF Xd IS B THEN Ө=Q3
其輸出歸屬函使用單值如圖 4.8 所示,輸出為機器人旋轉角度。
0
cm B
M S
50 75 25
1
圖4.7 輸入Xd歸屬函數
deg.
45 60 20
Q1 Q2 Q3
圖 4.8 輸出之歸屬函數
機器人動態避障礙動作行的旋轉方向由動態移動方向模糊邏輯系統 來決定,輸入為雷射測距儀左右邊 X12 、X13資料當作輸入,其規則為:
IF X12 IS LESS THAN X13 THEN RIGHT ROTATION , IF X13 IS LESS THAN X12 THEN LEFT ROTATION ,
輸出為決定機器人向左原地旋轉或向右原地旋轉,機器人原地旋轉方向即 可尋找較少障礙物方向旋轉。
4.3 沿牆面之模糊邏輯系統
沿牆面之模糊邏輯系統為第二級的模糊系統,輸入 X2 、X3為 Sputnik 機器人上左右側紅外線感測器,左側紅外線感測器輸入 X2其歸屬函數如 圖 4.9 所示,其規則為:
IF X2 IS FAR THEN Ө=Q1, IF X2 IS MED THEN Ө=Q2, IF X2 IS NEAR THEN Ө=Q3
其輸出歸屬函數使用單值如圖 4.10 所示,輸出為機器人行走偏移角度。
偏右行走定義為正,偏左行走定義為負。當機器人沿左牆行走時,左側紅 外線感測器便啟動偵測,當機器人太接近左牆面,機器人下一步就會偏右 前進,機器人即遠離牆面;若左側紅外線感測器偵測到太遠離左牆面,機 器人下一步就會偏左前進,機器人即接近牆面。
0
cm Near Med Far
85 35 60
1
圖 4.9 輸入 X2歸屬函數
40 deg.
Near Med Far
85 60 35
1
圖 4.11 輸入 X3歸屬函數
40 deg.
-40 0
Q1 Q2 Q3
圖 4.12 輸出之歸屬函數
4.4 抓取目標物之模糊邏輯系統
當機器人確定無任何障礙物時,機器人開始原地旋轉,經由 Sputnik 機器人影像尋找紅色目標物,找到目標物後往目標物方向行進。其模糊邏 輯系統輸入為紅色目標物所在的橫向像素點,由左到右 0~176,其輸入歸 屬函數如圖 4.13 所示,其規則為:
IF X6 IS L THEN Ө=Q1, IF X6 IS M THEN Ө=Q2, IF X6 IS R THEN Ө=Q3
其輸出歸屬函數使用單值如圖 4.14 所示,輸出為機器人行走偏移角度。
偏右行走定義為正,偏左行走定義為負。
0
Pixel
L M R
150 110
75
圖 4.13 輸入 X2歸屬函數
40 deg.
-40 0
Q1
Q3 Q2
圖 4.14 輸出之歸屬函數
當機器人距離目標物 20 公分處,機器人便執行抓取行為,抓取行為 其模糊系統輸入為 Sputnik 機器人影像,其模糊邏輯系統輸入為紅色目標 物所在的縱向像素點,由上到下分成 0~144,其輸入歸屬函數如圖 4.15 所示,其規則為:
IF X6 IS UP THEN HIGH, IF X6 IS DOWN THEN LOW.
輸出為決定機器人手臂往上層夾取或往下層夾取,上層夾取約高度約 103 公分,下層夾取約高度約 80 公分。
1
0
Pixel Down Up
36 108
圖 4.15 輸入 X6歸屬函數
4.5 結論
本章分別介紹沿左牆壁、沿右牆壁、靜態避障、動態避障、沿目標物、
抓取動作行為模糊系統,可得知階層模糊邏輯系統設計過程簡單且規則數 相當少且實現容易。而將於第五章將會使用五個實驗執行各種動作行為效 能及驗證本章之階層模糊邏輯系統。
第五章 實驗和討論
本章將用沿牆面自動導航實驗、抓取目標物實驗、靜態避障實驗、動 態避障實驗和靜態、動態避障抓取目標物實驗來驗證本移動機器人軟、硬 體及本論文設計之階層模糊邏輯系統。
5.1 沿牆面自動導航實驗
沿牆面自動導航實驗。平面圖如圖 5.1 所示,走道中間有一個曲面牆 壁,一開始機器人擺放於走道偏右位置。實驗中執行沿右牆壁動態行為,
其模糊邏輯系統定義如 4.3 節所描述。實驗詳細過程如圖 5.2。
機器人 錄影機
終點
.
起點
圖 5.1 沿牆面自動導航實驗平面圖
實驗截圖 說明
動作 行為
(a)
機 器 人 開 始 往 右 牆 壁 偏 移。
沿右 牆壁
(b)
機 器 人 沿 牆 壁 不 斷 修 正 前進。
沿右 牆壁
(c)
機 器 人 遇 到 曲 面 牆 , 往 外偏移。
沿右 牆壁
(d)
機 器 人 通 過 曲 面 牆 , 往 內偏移。
沿右 牆壁
(e)
機 器 人 沿 牆 壁前進。
沿右 牆壁
(f)
到 達 終 點 , 實驗完成。 -
圖 5.2(a)~(f) 沿牆面自動導航實驗結果
沿牆面自動導航實驗結果跟預期結果符合,機器人能確實沿著牆面自 行移動至終點,機器人移動的軌跡圖如下圖 5.3 所示。
圖 5.3 沿牆面自動導航實驗軌跡圖
5.2 抓取目標物實驗
抓取目標物實驗平面圖如圖 5.4 所示,一開始機器人擺放目標物前 方,但未面對目標物。實驗中執行動作行為流程如圖 5.5 所示,其各個動 作行為模糊邏輯系統定義如第四章所描述。抓取目標物實驗詳細結果如圖 5.6 所示。
2750mm
2800mm
機器人
錄影機 目標物
圖 5.4 抓取實驗平面圖
沿目標物 動作行為
抓取動作 行為 開始
結束
圖 5.5 抓取目標物實驗動作行為流程圖
實驗截圖 說明
動作 行為
(a)
原 地 旋 轉,找尋 紅 色 目 標物。
沿目 標物
(b)
(e)
利 用 影 像 判 斷 目 標 物 在 上 層 或下層。
抓取
(f)
經 過 判 斷,目標 物 位 於 上層,舉 起 機 器 手臂。
抓取
(g)
開 始 夾 取 目 標 物。
抓取
(h)
夾 到 目
標物。 抓取
(i)
目 標 夾 取後,舉 起 目 標 物。
抓取
(j)
手 臂 舉 起 目 標 物,機器 人 往 後 退。
抓取
(k)
將 目 標 物 交 給 使 用 者 準 備 拿 取。
抓取
(l)
使 用 者 拿 到 目 標物。
抓取
(m)
完 成 動 作,收手 臂。
-
圖 5.6(a)~(m)抓取目標物實驗結果
抓取目標物實驗結果跟預期結果符合。機器人自行尋找到目標物後,
往目標物前進,並確實抓取到目標物。機器人移動的軌跡圖如下圖 5.7 所 示。
圖 5.7 抓取目標物實驗軌跡圖
5.3 靜態避障實驗
靜態避障實驗平面圖如圖 5.8 所示,一開始機器人右側靠牆,目標物 置於機器人前方,兩者間放置紙箱當做靜態障礙物,錄影機一開始拍攝於 攝影機 1 的位置,當機器人開始抓取目標物時,拍攝位置移動到攝影機 2,
實驗中執行動作行為流程如圖 5.9 所示,其各個動作行為模糊邏輯系統定 義如第四章所描述。靜態避障實驗詳細結果如圖 5.10 所示。
錄影機 1
機器人
目標物
900mm
錄影機 2
靜態障礙物
圖 5.8 靜態避障實驗平面圖
沿牆壁 動作行為
靜態避障 動作行為
沿目標物 動作行為
靜態避障 動作行為
沿目標物 動作行為
抓取動作 行為 開始
結束
圖 5.9 靜態避障實驗動作行為流程圖
實驗截圖 說明 動作
行為
(a)
機 器 人 沿 右 牆 壁行走。
沿牆壁
(b)
(f)
(i)
(l)
舉 起 機 器 手 臂 準 備 抓 取 目 標 物。
抓取
(m)
夾 取 目
標物。 抓取
(n)
舉 起 目 標物,完 成動作。
抓取
圖 5.10(a)~(n) 靜態避障實驗結果
靜態避障實驗結果跟預期結果符合。機器人自行尋找到目標物後,
往目標物前進,且在遇到障礙物能確實執行靜態避障行為。避障後往目標 物前進,確實夾取目標物。機器人於靜態避障實驗移動的軌跡圖如下圖 5.11 所示。
圖 5.11 靜態避障實驗軌跡圖
5.4 動態避障實驗
動態避障實驗平面圖如圖 5.12 所示,一開始目標物置於機器人前方,
但機器人並無直接面對目標物。實驗過程中,動態障礙物將出現於目標物 和機器人之間。錄影機一開始拍攝於攝影機 1 的位置,當機器人開始抓取 目標物時,拍攝位置移動到攝影機 2,實驗中執行動作行為流程如圖 5.13
但機器人並無直接面對目標物。實驗過程中,動態障礙物將出現於目標物 和機器人之間。錄影機一開始拍攝於攝影機 1 的位置,當機器人開始抓取 目標物時,拍攝位置移動到攝影機 2,實驗中執行動作行為流程如圖 5.13