• 沒有找到結果。

利用聲場特徵及光流影像定位之全方向運動平台

N/A
N/A
Protected

Academic year: 2021

Share "利用聲場特徵及光流影像定位之全方向運動平台"

Copied!
82
0
0

加載中.... (立即查看全文)

全文

(1)

國 立 交 通 大 學

電機與控制工程研究所

碩 士 論 文

利用聲場特徵及光流影像定位

之全方向運動平台

Localization of an Omni-directional Platform Using

Sound field Characteristics and Optical Flow Sensing

研 究 生: 張 永 融

指導教授: 胡 竹 生 博士

(2)

利用聲場特徵及光流影像定位

之全方向運動平台

Localization of an Omni-directional Platform Using Sound field

Characteristics and Optical Flow Sensing

研 究 生:張 永 融 Student:Yan-Jung Hsuei

指導教授:胡 竹 生 博士 Advisor:Jwu-Sheng Hu

國立交通大學

電機與控制工程學系

碩 士 論 文

A Thesis

Submitted to Institute of Electrical and Control Engineering College of Electrical Engineering and Computer Science

National Chiao Tung University in partial Fulfillment of the Requirements

for the Degree of Master in

Electrical and Control Engineering July 2006

Hsinchu, Taiwan, Republic of China

(3)

利用聲場特徵及光流影像定位

之全方向運動平台

研究生:張 永 融 指導教授:胡 竹 生 博士 國立交通大學電機與控制工程研究所碩士班

摘 要

本論文提供在室內環境中的機器人一套完整且低成本的定位方法,其整合了 聲場特徵定位法以及光流影像定位法。聲場特徵定位法是由個人電腦端的雙聲道 麥克風收錄機器人在不同位置所發出的聲音資訊,並依據各位置上收錄聲音的相 位差以及大小比分佈,預先建立高斯混合聲場地標模型;使機器人在模型環境中 移動並發出聲音時,可藉由將新的聲音資訊代入模型中運算,以偵測機器人所在 的絕對位置。而光流影像定位法是由兩個光流感測器對地面偵測各別的位移資 訊,並加以演算合併以求得機器人的相對位移資訊。在此更進一步地利用機率格 方法整合以上兩種定位資訊,以提升絕對位置定位的可靠度。 本論文亦提出以全方向運動為基礎的機器人平台,相較於傳統輪式平台,此 平台具有較高的運動靈活度;並配合嵌入式網路技術加以整合,達成分散式運算 及遠端操控機器人的目的。

(4)

Localization of an Omni-directional Platform Using

Sound field Characteristics and Optical Flow Sensing

Student: Yung-Jung Chang Advisor: Prof. Jwu-Sheng Hu

Institute of Electrical and Control Engineering

Abstract

This thesis proposes an integrated and low-cost method of localization, which can estimate the absolute location of a mobile robot in a complex indoor environment by using sound field characteristics and optical flow sensing. The first method, Localization using sound field characteristics, record the sound information by two channel microphone of personal computer, and establish Gaussian mixture-sound field landmark model according the phase difference and magnitude ratio distributions between two microphone at each landmark. When the robot moves and generates sound in the modeled environment, we can bring the new sound information into the landmark models to detect it’s location. The second method, Localization using optical flow sensing, use two optical flow sensors to estimate the relative movement information of the mobile robot. Moreover, we utilize the position probability grids method to integrate these two methods for improving the reliability of estimating the absolute location.

In this thesis, we also propose the omni-directional platform offer a higher mobility and the embedded Ethernet technology is used to achieve the objectives of distributed computation and remote control.

(5)

誌 謝

本論文能完成,首先要感謝指導老師胡竹生教授辛勞的引導以及解惑。並且 在這一年半中,看見老師充沛的精力、果斷的決策力,對研究的熱忱以及致力於 產學合作的態度等等,都大大地開拓我的視野,激發我的潛能,在此向胡竹生老 師獻上恭敬的謝意。 在碩士生的日子中,最常置身的地方是嵌入式系統實驗室,在研究的過程中 不止有書籍與資料伴著我,最重要的是有許多位學長姐以及同學一起成長、分享 並共度艱難的時刻。有博士班的學長姐們,立偉學長、維瀚學長、宗敏學長、价 呈學長、興哥以及鏗元。碩二的畢業生們,榮煌、家弘、恒嘉、耀賢、佩靜以及 藍蕙。碩一的弘齡、楷祥以及崇維。以及大學生的正剛、啟揚、俊吉和治宏。有 你們這些學習及討論的對象,時常深感自己處於幸福之中。 感謝建德浸信會的諸位朋友時常關心,與我同享歡樂時光,並一同步步踏實 地追求聖經知識,彼此相愛的心時時在我裡面,你們是我所珍惜的摯友。 深深地感謝我的家人,爺爺張西澤、奶奶洪玉梅、父親大人張精一、母親楊 素梅、大哥張永裕以及二哥張永錠。在你們的支持下,使我在求學的階段中,無 後顧之憂地研習專業領域的知識,也因為你們的努力及一顆愛孩子的心,使我可 以更進一步地進入博士班深造,在此向您們叩上。 謝謝我的摯愛,葉真宏小姐,與我互相分享,彼此鼓勵,攜手並進,讓我深 刻體會到愛情滋潤的美好,使我內心常存著一股情感上的內動力, 最後要恭敬地感謝上帝,讓我在這段生命歲月中,有磨練成長的歷程以及往 前邁進的動力,使我增長知識,提高我智慧。

(6)

目 錄

摘 要 ... i Abstract ... ii 誌 謝 ... iii 目 錄 ... iv 表 列 ... vi 圖 列 ... vii 第一章 緒論 ...1 1.1 研究動機 ...1 1.2 研究目標 ...3 1.3 序言 ...3 第二章 利用聲場特徵定位方法 ...4 2.1 簡介[9]...4 2.2 高斯混合模型[10]...5 2.2.1 模型描述...5 2.2.2 模型參數的初始化...6

2.2.3 期望值最大演算法(Expectation Maximization, EM) ...8

2.2.4 GMM 建立的流程...11

2.3 方法架構[9]...12

2.3.1 建立機器人定位模型(Robot Localization Model, RLM) ...13

2.3.2 位置偵測...14 第三章 光流影像偵測定位法 ...15 3.1 光流(Optical Flow)的定義...15 3.2 光流影像偵測定位法之原理[12]...16 第四章 使用機率格之絕對位置估測方法[13]...19 4.1 機率格方法之原理 ...19 4.2 整合多個感測器資訊 ...19 4.3 整合相對位移資訊 ...20

(7)

4.4 位置估測步驟 ...21 第五章 軟硬體設計與實現 ...23 5.1 系統架構 ...23 5.2 全方向運動平台-海星號(Starfish)之架構...24 5.2.1 電路功能介紹...25 5.2.2 全方位運動平台分析...32 5.3 主機端架構 ...37 5.4 實驗平台整體實際照片 ...38 第六章 實驗結果與討論 ...39 6.1 光流影像定位實驗結果 ...39 6.2 利用聲場特徵定位實驗結果 ...42 6.3 利用機率格估測法之實驗結果 ...48 第七章 結論 ...70 7.1 研究成果 ...70 7.2 未來展望 ...70 Reference:...71

(8)

表 列

表 1 光流定位誤差表-實驗一...39 表 2 光流定位誤差表-實驗二...40 表 3 光流定位誤差表-實驗三...40 表 4 光流定位誤差表-實驗四...41 表 5 聲場特徵定位統計結果-實驗一 ...43 表 6 聲場特徵定位排名結果-實驗二 ...45 表 7 聲場特徵定位排名統計結果-實驗二 ...47

(9)

圖 列

圖 1 相位差異與大小比直方圖(LINE-OF -SIGHT)...4

圖 2 相位差異與大小比直方圖(NON-LINE-OF -SIGHT) ...4

圖 3 高斯混合模型架構圖...6 圖 4 K-MEANS流程圖 ...7 圖 5 高斯混合模型建立流程圖...11 圖 6 RLDA 架構 ...12 圖 7 光流向量場 ...15 圖 8 光流感測器與平台的幾何關係圖...16 圖 9 光流軌跡視窗...18 圖 10 機率格方法處理流程...21 圖 11 機率格方法處理過程示意圖 ...22 圖 12 完整系統架構...23 圖 13(左)上蓋,(右)上蓋與底盤組合透視圖 ...24 圖 14 嵌入式網路板...25 圖 15 馬達控制板...25 圖 16 感測器控制板...26 圖 17 馬達裝置 ...26 圖 18 AP(包含 SWITCH HUB) ...26 圖 19 降壓模組與電池組...27 圖 20 光流感測器...27

圖 21QUADRATURE MODE OUTPUT STATE...28

圖 22QUADRATURE MODE OUTPUT WAVEFORM...28

圖 23 金屬蜂鳴器...29 圖 24 發聲控制組...29 圖 25 麥克風陣列...30 圖 26 內部電路照片...30 圖 27 底部照片 ...31 圖 28 蓋上蓋子後的俯視照片...31 圖 29 三種不同型態的全向輪...32 圖 30 全向輪平台簡圖...33 圖 31 全向輪簡圖...33 圖 32 運動模式示意圖...36 圖 33VISUAL BASIC所建立之使用者圖形介面...37 圖 34 實驗平台整體實際照片...38 圖 35 光流定位軌跡圖-實驗一...39 圖 36 光流定位軌跡圖-實驗二...40 圖 37 光流定位軌跡圖-實驗三...40

(10)

圖 38 光流定位軌跡圖-實驗四...41 圖 39 聲音波形 ...42 圖 40 聲場特徵定位實驗環境示意圖-實驗一 ...43 圖 41 聲場特徵定位方陣示意圖-實驗二 ...44 圖 42 聲場特徵定位實驗環境示意圖-實驗二 ...45 圖 43 機率格實驗環境...48 圖 44 機率格定位實驗環境示意圖...49 圖 45 機率格實驗紀錄與估測結果圖-實驗一 ...50 圖 46 聲場特徵機率分佈以及機率格演變圖-實驗一 ...54 圖 47 聲場特徵以及機率格估測結果-實驗一 ...54 圖 48 機率格實驗紀錄與估測結果圖-實驗二 ...55 圖 49 聲場特徵機率分佈以及機率格演變圖-實驗二 ...57 圖 50 聲場特徵以及機率格估測結果-實驗二 ...57 圖 51 機率格實驗紀錄與估測結果圖-實驗三 ...58 圖 52 聲場特徵機率分佈以及機率格演變圖-實驗三 ...60 圖 53 聲場特徵以及機率格估測結果-實驗三 ...61 圖 54 機率格實驗紀錄與估測結果圖-實驗四 ...62 圖 55 聲場特徵機率分佈以及機率格演變圖-實驗四 ...65 圖 56 聲場特徵以及機率格估測結果-實驗四 ...66 圖 57 機率格實驗紀錄與估測結果圖-實驗五 ...66 圖 58 聲場特徵機率分佈以及機率格演變圖-實驗五 ...68 圖 59 聲場特徵以及機率格估測結果-實驗五 ...69

(11)

第一章

緒論

1.1 研究動機

自機器人走入家庭環境以來,機器人在室內的定位一直是個重要的課題。現 今已有許多不同的解決方法,使用各式不同的設備來偵測機器人的位置,諸如: 攝影機、RFID、Wireless LAN、紅外線收發器、超音波測距儀、雷射掃瞄器、輪 式編碼器以及慣性導航系統等[1-5] ;然而這些儀器在實際使用上仍然有相當的 限制,例如:輪式編碼器會因為輪子打滑所產生累積誤差、慣性導航系統(陀螺儀、 加速度儀)容易因為精確度不足而產生誤差,而視覺定位導航系統(CCD 攝影機) 則是因為資料量過大、演算法複雜而且容易受到環境光線變化影響,所以其準確 性和實用性並不高。 在本文中,我們將使用精確度較高的光流影像感測器(雷射滑鼠)來偵測機器 人的運動速度和移動軌跡,由於它是直接量測地面的相對移動資訊,因此不會受 到輪子打滑和環境光線變化的影響,所以量測誤差較小;並且在光學滑鼠的大量 普及使用之下,現今已成為一低價位之產品,因而大幅降低機器人定位系統所需 之成本。然而,光流影像定位法是屬於相對位置定位法的範疇,它必須根據初始 之位置才可決定機器人目前在空間中所處的位置,因此必須加上絕對位置定位之 輔助。 在本文中我們利用聲場特徵定位方法進行絕對位置的偵測。實際上,使用麥 克風陣列做聲源定位已行之有年,在各種利用聲場的定位方法中,以 Generalized cross correlation(GCC)為基礎的方法[6-8]曾在機器人定位的應用上被提出來討 論。但對於在室內使用聲波定位的機器人,最主要的困難在於聲音傳遞行為相當 的複雜,會有反射、繞射等問題。理論上,不同麥克風收到的聲音訊號,聲波到 達的方向與距離直接反應於相位差異(phase difference)以及大小比(magnitude ratio) 這兩種量值,但如此的直接關係卻只存在於開放的空間或是簡單的環境。然而在 實際的環境中,這兩種量值會被一些隨機的現象影響,諸如自然分佈的動態傳導 路徑以及有限資料長度的限制。再者,近場效應以及區域聲音分散都會使得這兩

(12)

種量值與聲源的關係變的較微弱。這些變異將會造成估算誤差有很高的不確定, 使得以聲音為基礎的定位系統變的不可靠。並且,對於室內的應用,機器人有許 多機會移動到與感測器之間沒有直接的路徑(non-line of sight) 的位置,意思是機 器人與感測器之間有阻隔物。所以在這些情況下,傳統的方法無法有效估算出機 器人的位置。另外有個習知的問題,以聲音並使用麥克風陣列為感測器的定位方 法會遇到麥克風不匹配(mismatch)的問題,若使用不匹配的麥克風陣列會造成相 位差異失真。然而,若要事前做到麥克風完全相配,則會付出相當高的成本代價。 傳統的聲源定位演算法是企圖盡量地抑制複雜傳導行為的影響,以估算出聲源相 對於麥克風陣列的方向以及位置。但這個方法並非如此,而是同時利用這些複雜 的傳導行為作為判斷的依據,以偵測聲源在空間中的位置。並且由於喇叭、麥克 風等聲音裝置,現在幾乎已是家庭機器人基本的配備,原因在於這些聲音裝置可 以提供使用者較自然的語音控制介面,故此,若直接使用這些語音裝置來做機器 人的定位將不需額外的硬體成本。 然而,使用聲場特徵定位法會有誤判的情形發生,若以此誤判的結果作為光 流影像定位的絕對位置的依據,將會造成很大的影響;在本文中,我們將更進一 步地探討機率格估測方法,它可以有效地結合多次測得的定位資訊並整合兩種不 同型態的定位資訊,以提高絕對位置定位的可靠度。 常見的輪式機器人通常有 3 到 4 個輪子,其中有 1 到 2 個輪子為轉向輪(steering wheel);此種輪式機器人進行運動時,若要執行一邊移動一邊轉動的運動行為, 所需的迴轉空間相當的大;另外,此類機器人也不能直接往側方向移動,操作起 來有很多不方便的地方。在本文中,我們將使用全向輪(Omnidirectional Wheel) 的技術以取代傳統的輪式移動模式,使機器人具有較高的運動自由度,可以在家 庭環境中靈活的移動。最後配合嵌入式網路技術,完成一個高整合度之機器人運 動平台。

(13)

1.2 研究目標

本論文目標將如下: 1. 實現光流影像定位法以及聲場特徵定位法 2. 利用機率格方法整合絕對位置定位之聲場特徵定位法以及相對位置定位之光 流影像定位法,估測機器人之絕對位置。 3. 使用全向輪來建構一個擁有高運動自由度的全方向運動機器人平台。 4. 發展一套具有光流感測器且可發聲的全方向運動機器人平台,並配合嵌入式 網路技術,能夠透過無線網路傳輸將光流感測器資訊傳回電腦或是從電腦將 控制指令傳送給機器人。電腦端具有雙聲道麥克風陣列,用以接收機器人發 出的聲音。

1.3 序言

這篇論文包含了三個主要的部分,分別是演算法理論的介紹、實驗平台軟硬 體架構的介紹與演算法的驗證。底下大致描述這三個部分的內容: 第一部份: 第二章:介紹聲場特徵定位方法 第三章:介紹光流影像偵測定位法 第四章:介紹機率格絕對位置估測方法。 第二部分: 第五章:介紹實驗平台完整架構 第三部分: 第六章:演算法在實驗平台上的驗證 第七章:結論與未來展望

(14)

第二章

利用聲場特徵定位方法

2.1 簡介

[9] 理論上,聲源的複雜傳遞行為可以反應在相位差異以及大小比的分佈。以圖 1 與圖 2 為例,分別是一對麥克風陣列在 line-of-sight 以及 non-line-of-sight 的相 位差異與大小比的統計直方圖。從圖 1 可以看出,即使是在 line-of-sight 的情況 下依然無法得到固定的相位差異以及大小比。但其實相位差異以及大小比分佈 中就蘊含著聲源與聲場的特徵,若是可以建立適當的模型,便可使用此模型來 標定聲源的位置。 圖 1 相位差異與大小比直方圖(line-of -sight) 圖 2 相位差異與大小比直方圖(non-line-of -sight)

在這裡我們使用高斯混合模型(Gaussian mixture model,簡稱 GMM)描述出相 位差異以及大小比的分佈情形,用以決定一個機器人定位模型(Robot localization model)。

(15)

2.2 高斯混合模型

[10]

高斯混合模型(Gaussian mixture model,簡稱 GMM)是單一高斯機率密度函數 的延伸,由於 GMM 能夠平滑地近似複雜形狀的密度分佈,因此近年來常被用在 語音與語者辨識方面,已得到很不錯的效果。以數學的觀點來看,對於一具有多 類別的樣本(Pattern)而言,高斯混合模型具有極佳的近似能力,與傳統的單一高 斯分佈(Single Gaussian Mixture)及向量量化(Vector Quantization)兩種模型比較,單 一高斯分佈模型僅能用一個平均值向量來表示一堆樣本在向量空間的中心位 置,用共變異矩陣來近似這些樣本在向量空間中所分佈的情形,其效果當然不 好。而向量量化的模型,是用幾個主要的位置來代表整個空間向量,但模型本身 並沒有把這些樣本在空間中的分佈大小、形狀描述出來,因此若單純地使用這種 方法也不理想。而高斯混合模型使用多個高斯來代表特徵向量的分佈,以數學的 觀點來看,它不但精準地記錄樣本的各種類別、在向量空間中的位置,也能描述 出這些類別在空間中的大小及形狀。 2.2.1 模型描述 一個高斯混合模型具有三個參數,分別是混合加權值(mixture weights)、平均 值向量(mean vector)以及共變異矩陣(covariance matrix),將這這些參數集合起來 並賦予新的符號,並稱之為成分密度,如下所示:

{ ,

w

i i

,

i

},

i

1, 2,...,

M

λ

=

μ

Σ

=

(1) 其中wi表示混合加權值、μ 表示平均值向量以及i Σi表示共變異矩陣,M 則是高 斯分佈的個數。若我們的資料XN ={ ,x x1 2, ,xn}為在 d 維空間中的分佈,則高斯 函數可如下所示: 1 ( | ) ( ) M N i i N i p x λ w g x = =

(2) 1 1 2 2 1 1 ( ) exp[ ( ) ( )] 2 (2 ) T i d i i i i g x x μ x μ π − = ⋅ − − Σ − Σ (3)

(16)

其中 ( ; ,g x μi Σ 為第 i 個高斯分佈函數,而混合加權值也必須滿足i) 1 M i i w =

=1 的條 件。我們可以將高斯混合模型的架構用圖 3 來表示。 圖 3 高斯混合模型架構圖 2.2.2 模型參數的初始化 我們如果希望快速地、精確地找出高斯混合模型的最佳參數,使得系統有最 佳的表現,則在尋找最佳參數之前我們必須對參數作初始化的動作。向量量化(VQ) 是一項運用非常廣泛的技術他能將一堆特徵向量的資料,濃縮成幾個具代表性的 類別(class)或群集(cluster),所以這裡我們先採用 VQ 的技術,將我們得到相位差 異以及大小比分佈,作初步的分群,得到高斯混合模型參數的初始化值(群的中 心)。向量量化的方法有很多種,在此採用 K 平均直分類法(K-means Cluster),其 流程如圖 4 所示,詳細的步驟說明如下: 0、 收集資料: 經過一段時間的收集,獲得 N 個欲做訓練的特徵向量。 1、 初始化: 設一開始的群數是 K,並隨機地取 K 個向量當成每群的中心點。 2、 以新的群中心來分群: 其它(N-K)個向量對這個 K 個群中心作距離量測,以距離作為分群的依 XN 1

( )

g x

2

( )

g

x

( )

M

g

x

Σ

( | ) N p X

λ

1

W

2

W

M

W

1

,

1

μ

Σ

2

,

2

μ

Σ

,

M M

μ

Σ

(17)

據,每個向量被分類到距離最短的中心。 3、 更新群中心: 接著對每一群算出新的向量平均值,以此作為新的群中心。 4、 判斷分群是否收斂: 將新的群中心與舊的群中心作比較,如果不再有變動,表示已收斂。則 做步驟 5;反之,則重複步驟 2、3。 5、 得到初始化的參數: 將最後分群的中心,當作高斯混合模型的初始參數 圖 4 K-means 流程圖 收集資料 (N 個特徵向量) 初始化群個數 K 隨機設 K 個向量中心 依群中心作分群 更新群中心 計算誤差 收斂? 停止 是 否

(18)

2.2.3 期望值最大演算法(Expectation Maximization, EM)

我們在做模型訓練時,最終的目的是估測高斯混合模型參數,使得相位差異 以及大小比的分佈與模型參數估測出來的分佈有相當的相似度,估測最佳參數的 方法有很多種,但最收歡迎且適合的方法是最大相似性估測法( Maximum

Likelihood Estimation, MLE)。

在前一章節高斯密度函數的假設下,當x= 時,其機率密度為 ( | )xi P xi λ , 如果 ,x ii =1 n之間是互相獨立的事件,則發生X ={ ,x x1 2, ,xn}的機率密度相似 函數(likelihood function)可以表示成: 1 ( | ) ( | ) n i i P X λ P x λ = =

Π

(4) 由於 X 是確定的,因此 MLE 主要就是找出使得高斯混合模型的相似函數值 為最大時的參數λ',也就是 ' arg max (P X | ) λ λ = λ ,但(4)式對λ而言是一個非線性的 方程式,無法直接最大化相似函數,所以我們採用期望值最大演算法(Expectation

Maximization Algorithm),利用疊代的方式找出 MLE 的估測參數λ'。

EM 演算法的基本作法是由 K-means 分類法找出的初始化的平均值,再利用

EM 估計出新的參數λ,使得滿足P X( | )λ ≥P X( | )λ ,再另 λ λ= 重新疊代估計新的

λ ,直到P X( | )λ 收斂或是達到某個門檻值才停止。EM 演算法主要分成兩部分,

分別是與 likelihood 函數有關的 E-Step,以及更新參數方程式的 M-Step:

E-Step 目的是測試我們所求的 likelihood 函數值,是否達到我們的要求,若符合要 求,EM 演算法就停止,反之就繼續執行 EM 演算法。這裡為了數學推導的方便, 假設我們的模型是由三個高斯分佈函數所構成,則其密度函數可表示成: 1 1 1 2 2 2 3 3 3 ( ) ( ; , ) ( ; , ) ( ; , ) P x =w g x μ Σ +w g x μ Σ +w g x μ Σ (5) 其中共變異矩陣Σ ,因為假設每個維度彼此獨立,所以只剩對角有值,P(x)的參i 數λ=[w w w1, 2, 3,μ μ μ1, 2, 3,Σ Σ Σ1, 2, 3],參數個數為(1+1+1+d+d+d+d+d+d)=3+6d 個, 依前述 MLE 原則,求出 likelihood 的最大值:

(19)

(

)

1 1 1 1 2 2 2 3 3 3 1 1 ( ) ln ( ) ln ( ) ln ( ; , ) ( ; , ) ( ; , ) n i i n n i i i E P x P x w g x w g x w g x λ μ μ μ = = = ⎛ ⎞ = ⎜ ⎝ ⎠ = = ⎡ Σ + Σ + Σ ⎤

Π

(6) 為了簡化討論,再引進另一個數學符號稱為事後機率(posterior probability): 1 1 1 2 2 2 3 3 3 ( ) ( ) ( | ) ( ) ( | ) ( ) ( ) ( ) ( | ) (1) ( |1) (2) ( | 2) (3) ( | 3) ( ; , ) ( ; , ) ( ; , ) ( ; , ) j j j j p j x p j p x j x p j x p x p x p j p x j p p x p p x p p x w g x w g x w g x w g x β μ μ μ μ ∩ = = = = + + Σ = Σ + Σ + Σ (7) M-Step 主要目的是為了要找到使 likelihood 函數最大化的參數,因此我們分別對 i wμ 、i Σi做偏微分,再做後續的運算,於是我們可以得到所求的參數,接著返 回 E-Step 繼續做。 假設初始參數是λ ,我們希望找出新的old λ 值,滿足E( )λ >Eold),因為 根據ln( )a ln( ) ln( )a b b = − ,E( )λ −Eold)可以延伸成下式: 1 1 1 2 2 2 3 3 3 1, 1, 1, 2, 2, 2, 3, 3, 3, 1 1 1 1 1 2 1 ( ) ( ) ( ; , ) ( ; , ) ( ; , ) ln ( ; , ) ( ; , ) ( ; , ) ( ; , ) ( ) ( ln ( ) ( ) old n i i i

old i old old old i old old old i old old

i i i i old i E E w g x w g x w g x w g x w g x w g x w g x x w g x D x λ λ μ μ μ μ μ μ μ β λ β = − ⎡ Σ + Σ + Σ ⎤ = ⎢ ⎥ Σ + Σ + Σ ⎢ ⎥ ⎣ ⎦ Σ = +

( )

2 2 2 3 3 3 3 2 3 1 1 1 1 2 2 2 3 3 3 1 2 3 1 2 3 1 ; , ) ( ) ( ; , ) ( ) ( ) ( ) ( ) ( ) ( ; , ) ( ; , ) ( ; , ) ln ( ) ln ( ) ln ( ) ( ) ( ) ( ) ( ) ( ) n i i i old i old i i n i i i i i i

old i old i old i

i x w g x x D x D x w g x w g x w g x x x x D x D x D x Q μ β μ β λ β λ β μ μ μ β β β λ β λ β λ β = = ⎡ Σ + Σ ⎤ ⎢ ⎥ ⎣ ⎦ ⎡ Σ Σ Σ ⎤ ≥ + + ⎣ ⎦ =

( )

λ (8) 上式中,因為ln( )x 是一個凸函數(Convex Function),滿足下列不等式: ln⎣⎡αx1+ −

(

1 α

)

x2⎦⎤≥αln

( ) (

x1 + −1 α

) ( )

ln x2 (9) 推廣上式到「傑森不等式」(Jensen Inequality):

(20)

( )

1 1 1 ln ln , 1 n n n i i i i i i i i x x α α α = = = ⎛ ⎞ ≥ = ⎜ ⎟ ⎜ ⎟ ⎝

(10) 因為 3 ( ) 1 ln 1 j i j x β = =

,所以可以將傑森不等式套用在(8)式,最後得到下式: E( )

λ

E(

λ

old)+Q

( )

λ

(11) 只要Q

( )

λ >0,必滿足E( )λ > Eold),但我們通常希望E( )λ 越大越好,最直接的 方式就是找出使得Q

( )

λ 最大的

λ

值,那 ( )E λ 也會跟著變大。 Q

( )

λ 是

λ

的函數,將一些與

λ

不相關的部份並入常數項,並重新整理Q

( )

λ 成下式:

( )

( )

(

)

( )

( )

(

)

(

)

3 1 1 1 3 1 2 1 1 2 ln ln ; , 1 1 ln ln exp 1 2 2 det n j i j i j j i j T n i j i j j j i j d i j j Q x w g x c x x x w c λ β μ μ μ β π = = − = = ⎡ ⎤ = + + ⎧ ⎡ ⎛ ⎞⎤⎫ ⎪ ⎢ ⎜ ⎟⎥⎪ ⎪ ⎪ = + + ⎪ ⎢ ⎡ ⎤ ⎜ ⎟⎥⎪ ⎝ ⎠ ⎣ ⎦ ⎪ ⎣ ⎦⎪ ⎩ ⎭

∑∑

∑∑

對μj偏微分,

( )

( )

1 1 0 j n j i i i j n j i i x x Q x μ β μ β = = ∂ = ⇒ =

(12) 對 j

偏微分,

( )

(

)(

)

( )

1 1 0 j n T j i i j i j i n j j i i x x x Q x β μ μ β = = − − ∂

= ⇒

=

(13) 欲得到最佳之wj值,需將w 的總和為 1 的條件加入,引進 Lagarange Multiplier,j 並定義新的目標函數(object function)為:

E

new

( )

λ

=

E

( )

λ α

+

(

w

1

+

w

2

+

w

3

1

)

(14) 將Enew對 3 個 weighting 做偏微分,可得到下面方程式:

( )

1 1 0, 1, 2, 3 n new j i j j i E x j w w =

β

α

= − + = =

(15) 最後將(15)的 3 個不同 j 的式子相加,可得到:

(21)

(

)

( )

( )

( )

( )

1 2 3 1 2 3 1 1 1 and let 1 1 , 1, 2,3 n i i i i n i n j j i i w w w x x x n w x j n α β β β α β = = = ⎡ ⎤ + + = − + + = − = − ⇒ = =

(16) 2.2.4 GMM 建立的流程 綜合前面各小節的說明,GMM 建立的流程如圖 5 所示,先將 N 個準備訓練 的資料點,經過 K-means 分類後得到初始的參數,再由 EM 演算法得到的三個方 程式:

( )

( )

1 1 n j i i i j n j i i x x x β μ β = = =

,

( )

(

)(

)

( )

1 1 n T j i i j i j i j n j i i x x x x β μ μ β = = − − Σ =

, 1

( )

1 n j j i i w x n = β =

進行參數的更新,並計算新的函數值,如此一一的疊代,更新模型的參數,直到 相似函數的值與前次相似函數的值差異小於某個 threshold 才停止疊代。 圖 5 高斯混合模型建立流程圖

(22)

2.3 方法架構

[9]

圖 6 描繪出此系統的架構。有一個特定的聲源從機器人身上發出,而在 Robot location detection agent(RLDA)端有兩個收音的麥克風。在可以清楚地接收聲源的 情況下,RLDA 可以放在任意的位置。Stage I 是 Pre-recording stage,在這個 stage 時,機器人在安靜沒有雜音的情況下移動到不同的地標位置並發出聲音以建立預 錄聲音資料庫(Pre-recorded Database),後面將會使用這個資料庫來求得聲場特徵 模型參數。一旦完成 Stage I,再進入 Stage II-Training Stage。

在 Stage II 中,依據聲音資料庫的內容,求得在不同位置下的聲場特徵模型 參數,也就是可以依據相位差異與大小比的分佈情形求得高斯混和模型的參數。 完成 Stage II 後,進入 Stage III-Sounding Stage

在 Stage III 中,RLDA 要求機器人發出一段聲音,將此聲音收錄後。以此聲 音資訊求得相位差以及大小比後,代入地標模型中以偵測出機器人所在的位置。

(23)

2.3.1 建立機器人定位模型(Robot Localization Model, RLM) 在 Stage II 中,RLDA 必須建立聲場的相位差異以及大小比的的模型,也就 是機器人定位模型(RLM)。我們用Pxb)以及Mxb)表示在頻率ωb,b∈{1,..., }B 時的相位差異以及大小比,B 是選擇的頻率個數。高斯混合模型可以表示如下: 1 , 1 ( | ) ( ) N x P P i i x i G ρ g = =

P λ P (17) 2 , 1 ( | ) ( ) N x M M i i x i G ρ g = =

M λ M (18) 其中, [ ( 1) ( )] T x = Px ω Px ωB P , Mx =[Mx1) MxB)]T, ρP i, ρM i, 分別是第 i 個混合加權值,g Pi( x)g Mi( x)分別是高斯密度函數。並且 2 , 1 1 N P i i ρ = =

, 2 , 1 1 N M i i ρ = =

。λ 和P λ 項分別是M N1個和N2個成分密度,N1和N2分別為相位差異 和大小比的高斯分佈個數: { , , } P = P P P λ ρ μ Σ ,λM ={ρ μM, MM} 其中, 1 ,1 , [ ] P = ρP ρP N ρ 是1 N× 1維的相位差異混合加權值 2 ,1 , [ ] M = ρM ρM N ρ 是1 N× 2維的大小比混合加權值 1 ,1 , [ ] P = P P N μ μ μ 是B N× 1維的相位差異平均值 2 ,1 , [ ] M = M M N μ μ μ 是B N× 2維的大小比平均值 1 ,1 , [ ] P = P P N Σ Σ Σ B BN× 1維的相位差異共變異矩陣 2 ,1 , [ ] M = M M N Σ Σ Σ B BN× 2維的大小比共變異矩陣 P λ 和λ 項可以使用 EM 演算法求得,這可以保證模型的 log-likelihood 有單調遞M 增的特性。然而 EM 演算法對於模型初始值的選定很敏感,所以我們使用 K-means 來選定合適的模型初始值。

(24)

在每個位置的 RLM 被定義為相位差異的高斯混合模型與大小比的高斯混合 模型的線性組合: ( | ) ( | ) RLM P x P M x M FG P λ +α G M λ (19) 其中,α 和P α 表示權重因子。為了簡化起見,另M α =P α =1。 M 2.3.2 位置偵測 將測試資料,也就是希望取得位置資訊的新資料,帶入事後機率得到結果, 以決定目前可能的所在位置的排名。(20)式是用貝氏定理推演的過程。 ( ( ) | ) ( ( ) | ) ( | ( )) ( ( )) ( | ( )) ( ( )) ( ) ( ) P Y M Y Y P P Y M M Y Y G l G l G l p l G l p l p p + = + P M P M P M λ λ λ λ λ λ (20) 其中PY ={PY(1), ,PY( )V }和MY ={MY(1), ,MY( )V }分別從測試資料得到的相位 差異和大小比。V 表示測試資料的長度。因為我們無法事前知道機器人的可能位 置,所以pP( ))l pM( ))l 皆設為同樣的大小也就是1/ L。並且因為機率密度函 數p(PY)p(MY)對每個位置模型皆一樣,所以位置偵測可以變成: ( ) ( ) 1 1 ( | ( )) ( | ( )) V V v v Y P Y M v v G l G l = = +

P λ

M λ (21) 將求出每個l∈{1, L}的機率,就可以依照大小排名,機率值越大就是越 有可能的位置。

(25)

第三章

光流影像偵測定位法

3.1 光流(Optical Flow)的定義

所謂的光流(Optical Flow)是指,對於兩張以上的連續影像中之物體,預測其 運動方向及大小。光流是透過比較兩張影像之間的影像強度而獲得,通常該兩張 影像之間必須擁有許多相同的內容,以保證該方法可以正常運作。 假設將攝影機裝設在某運動物體上,攝影機朝著地面進行拍攝,而該物體正 在地面上進行移動;當運動物體往某個方面移動某個距離時,攝影機所拍攝到的 地面影像則會有相對的變動,其移動的方向、距離成正比關係(視裝置狀況決 定)。因此,可以利用「光流」方法來偵測影像中物體的運動,因而推算出該運 動物體的真實運動狀況。 之所以會以光流做為計算運動位移的工具,主要是因為光流方法比較不容易 受到外界環境因素的影響,且不需要事先了解追蹤的物體與當時的環境狀況,因 此比較適合用於未知的環境來進行運動位移偵測。圖 7 為一個光流向量場的示意 圖,其中物體分別往正 X 軸和正 Y 軸方向各移動了一個像素(pixel)的距離[11]。 圖 7 光流向量場

(26)

3.2 光流影像偵測定位法之原理

[12] 在這裡我們使用兩個光流影像感測器來偵測該運動平台的位移資訊(包含 x 軸、y 軸的位移量,和 z 軸的旋轉量);將這兩個光流影像感測器放置在不同的位 置,觀察它們與平台之間的幾何關係,我們可以得到下列的運動學方程式: , 1, 1, , 1, 1, , 2, 2, , 2, 2, r x x r y r y y r x r x x r y r y y r x

V

V

r

V

V

r

V

V

r

V

V

r

ω

ω

ω

ω

=

+

=

=

+

=

(22) 方程式中的Vr x, 和Vr y, 是機器人平台中心點的移動速度值,

ω

r是平台的旋轉角 速度,Vi x, 和Vi y, 是第 i 個感測器所偵測到的移動速度值,而r 和i x, ri y, 是第 i 個感 測器與平台中心的距離,如圖 8 所示。 圖 8 光流感測器與平台的幾何關係圖

(27)

為了得到該平台的速度和角速度值,我們可以將上述式子改寫成矩陣向量的 形式: 1, 1, , 1, 1, , 2, 2, 2, 2,

1

0

0

1

1

0

0

1

x y r x y x r y x y r y x

V

r

V

V

r

V

V

r

V

r

ω

⎤ ⎢

⎥ ⎢

⎥ ⋅

=

⎥ ⎢

⎥ ⎢

⎥ ⎣

(23) 可以知道(23)式是一個過度決定(over-determine)的系統,因此我們需要使用最 小平方誤差法(least square error method)來求得此方程式的最佳近似解,也就是此 平台的速度與角速度值(Vr x, ,Vr y, ,ωr): 1 1, 1, 1, 1, , 1, 1, 1, 1, , 2, 2, 2, 2, 2, 2, 2, 2,

1

0

1

0

1

0

0

1

0

1

0

1

1

0

1

0

1

0

0

1

0

1

0

1

T T x y y y r x y x x x r y x y y y r y x x x

V

r

r

r

V

V

r

r

r

V

V

r

r

r

V

r

r

r

ω

⎤ ⎡

⎥ ⎢

= ⎨

⎥ ⎢

⎥ ⎢

⎥ ⎢

⎦ ⎪

⎦ ⎣

⎦ ⎣

在得到平台速度與角速度之後,我們便可以利用積分運算來得到此平台的移 動距離和旋轉量: , , , ,

(

)

(

cos

sin

)

(

sin

cos

)

robot r

robot r x robot r y robot

robot r x robot r y robot

dt

X

V

V

dt

Y

V

V

dt

θ

ω

θ

θ

θ

θ

=

=

=

+

(24) 在(24)式之中,θrobot代表的是機器人平台的轉動角度,Xrobot是 X 軸方向的位 移,Yrobot是 Y 軸方向的位移。如圖 9 所示,可以在電腦視窗中看出機器人移動的 路徑以及目前方向。

(28)

圖 9 光流軌跡視窗

目前方向

(29)

第四章

使用機率格之絕對位置估測方法

[13]

4.1 機率格方法之原理

機器人的定位方法大致可分為兩類,分別為絕對位置定位法以及相對位置定 位法。在第二章中已介紹絕對位置定位之聲場特徵定位法並且在第三章中介紹相 對位置定位之光流影像定位法,在此章將使用這兩種不同型態的資訊以及所有不 同時間下感測得的資訊。 這個方法最主要的優點在於可以在一個環境中整合不同時間下的絕對位置感 測資訊並且統整兩種不同型態的定位資訊,提高絕對位置定位的準確性並改善相 對位移資訊誤差所造成的影響。當每一次得到新的感測資訊時,皆必須執行以下 兩個步驟: 1. 根據相對位移資訊機率分佈平移,這個部分包含處理相對位移資訊誤差問題。 2. 將新的絕對位置感測資訊所得之機率分佈與舊的機率分佈結合。 並且在這個方法中必須包含兩個假設: 1. 必須預先以方陣的方式建立環境模型 2. 機器人不可離開模型的範圍 在這一章節中,我們將介紹如何整合不同時間下的絕對位置感測資訊以及如 何統整有誤差的相對位移資訊。

4.2 整合多個感測器資訊

為了有效增加位置估測的可靠度,我們必須整合所有時間下的感測器資訊。m 為環境中建立的模型,p x s( | 1∧ ∧… sn−1∧snm)表示在測得s1,…,sn−1,sn以及知 道環境模型m的情況下,機器人在x位置的事後機率。根據下面公式的推演,便 可知道如何利用新的感測器資訊更新機率分佈,一開始利用貝式定理將事後機率 轉換如下: 1 1 1 1 1 1 ( | ) ( | ) ( | ) ( | ) n n n n n n p s s s x m p x m p x s s s m p s s s m − − − ∧ ∧ ∧ ∧ ⋅ ∧ ∧ ∧ ∧ = ∧ ∧ ∧ … … … (25)

(30)

由於右式中分母p s( 1∧ ∧… sn−1∧sn |m)與x不相干,故可視為常態化的常數 1/α ,用以使 ( | 1 n 1 n ) 1 x p x s ∧ ∧s sm =

,因此(25)式可以替換如下: 1 1 1 1 ( | n n ) ( n n | ) ( | ) p x s ∧ ∧… s ∧ ∧s m = ⋅

α

p s ∧ ∧… s s xmp x m (26) 假設在知道x與 m的情況下,sns1,…,∧sn−1互為獨立,則事後機率可轉換如下: 1 1 1 1 ( | ) ( | ) ( | ) ( | ) n n n n p x s s s m p s s x m p x m p s x m

α

− − ∧ ∧ ∧ ∧ = ⋅ ∧ ∧ ∧ ⋅ ⋅ ∧ … … (27) 現在另α1為 p s( 1∧ ∧… sn−1|xm)的常態化常數並且α2 =α α1。因此,事後機 率可進一步推演如下: 1 1 1 1 1 2 2 1 1 ( | ) ( | ) ( | ) ( | ) ( | ) ( | ) n n n n n n p x s s s m p s s x m p x m p s x m p x s s m p s x m

α

α

α

− − − ∧ ∧ ∧ ∧ = ⋅ ∧ ∧ ∧ ⋅ ⋅ ⋅ ∧ = ⋅ ∧ ∧ ∧ ⋅ ∧ … … … (28) 由(28)式可以看出,p x s( | 1∧ ∧… sn−1∧m)表示由所有舊的資訊所建構的機 率分佈,而 p s( n | xm)為最新的資訊sn 在模型m以及在不同位置x下所建構出 的機率分佈,式中的α2是用來將整個機率函式常態化的常數。由(28)式可看出當測得 新的感測可依此不斷地疊代。在進一步地說明,讓P x[ ]表示所有已知資訊下的最新 的機率格估測結果,所以依這一節所介紹,當測得新的資訊,則將P x[ ]乘上 ( n | ) p s xm ,然後再常態化。在下一章將針對相對位移資訊處理P x[ ]

4.3 整合相對位移資訊

前一小節介紹了整合新的感測器資訊以更新機率分佈的方法。這一章將描述 如何根據相對位移資訊處理機率分佈的方法。為了達到這個目標,必須達成三個 要點: 1. 根據機器人的位移資訊平移整個機率分佈圖 2. 必須考慮環境障礙物分佈的情形,意思是說,軌跡跨越過障礙物的機率小於軌 跡跨越過無障礙物的機率。 3. 必須能有效運用有誤差情形的相對位移資訊。

(31)

令Δn表示最新的機器人相對位移資訊, [ ] ( | ) if ( ) [ ] : 0 otherwise n n P x p x m x P P x = ⎨⎧ − Δ ⋅ − Δ ∈ ⎩ (29) 其中,P x[ ]但(29)式必須是在沒有誤差的相對位移資訊下才可成立。而為了改 善誤差的影響,必需加以平滑化機率分佈,如(30)式所示。其中,

ω

x是以

x

為中 心的高斯分佈。 ( ) [ ] [ ] : ( ) x x m x x m x P x P x x

ω

ω

∈ ∈ ⋅ =

(30)

4.4 位置估測步驟

前兩節已分別介紹在機率格分佈下整合新的感測資訊以及相對位移資訊,圖 10 表示處理的流程。其中,shift( ,P Δn)表示根據相對位移資訊將機率分佈平移以 及平滑化,如 4.1 節所介紹。integrate( ,P sn)表示將新的絕對位置定位感測器的資 訊更新機率分佈,如 4.2 節所介紹。每一次經過新的估測後,都將可依據得到的 機率分佈來顯示出機器人目前最有可能的所在位置。 圖 10 機率格方法處理流程 shift( ,P Δn) integrate( ,P sn) 類別? 相對位移 感測資訊 絕對位移 感測資訊 常態化 開始 等待新的感測資訊

(32)

在實驗中,我們將使絕對位置感測資訊接隨在相對位置感測資訊之後,因此 新的位置估測皆是以 integrate 後的機率分佈圖做為一個步驟中判斷位置的依據。 每一次的位置估測,是以擁有最高機率值的位置作為結果,也就是在機率分佈圖 中擁有最高機率的位置為機器人最有可能所處之位置。必須加以說明的是,這個 方法估測的好壞與聲場特徵定位法和光流影像定位法是相依的,因此較好的聲場 特徵定位法和光流影像定位法將會使此機率格方法有較好的表現。不過,由實驗 可知,此方法將可以有效地提高絕對位置定位之可靠度。下面的圖,將以機率格 機率分佈圖的形式,更清楚地表達此方法處理之內涵。 圖 11 機率格方法處理過程示意圖

(33)

第五章

軟硬體設計與實現

5.1 系統架構

圖 12 為整個系統的架構圖,主要分成兩個部分:個人電腦端(PC)以及海星 號(Starfish),而兩者之間則是透過無線網路以及藍芽進行訊息的溝通傳遞。接下 來的兩個小節將分別針對兩者(PC and Starfish)進行詳細的介紹。 圖 12 完整系統架構

(34)

5.2 全方向運動平台-海星號(Starfish)之架構

全方向運動平台-海星號的底盤下方裝置了 2 個光流影像偵測器、3 個馬達伺 服機以及 3 顆全向輪;光流影像偵測器是用來感測地面影像,並使用地面影像的 光流變化來量測該平台的運動狀態;馬達是用來提供該平台運動動力,可以透過 微控制器使用 PWM 訊號來控制該馬達的正反轉向和轉速快慢;全向輪則是提供 該平台全方向運動的能力。 此平台底盤的上方則放置平台的系統電路;此系統電路包含 1 組無線網路基 地 台 (Access Point 且 包 含 Switch Hub) 、 2 組 嵌 入 式 網 路 系 統 板 (Embedded Ethernet) 、 1 組 馬 達 控 制 板 (Motor Controller) 、 1 組 感 測 器 控 制 板 (Sensor Controller)、1 組發聲控制組(Sound Generator)、1 組充電電池組以及 1 組電力供 應系統板。 如圖 12 所示,Access Point 是用來建構無線網路溝通路徑;嵌入式網路系統 板則是藉由 Access Point 的無線網路傳輸功能將 PC 端馬達控制程式所傳送出來 的馬達控制指令傳達至馬達控制板以進行馬達控制的動作,或是將感測器控制板 從光流影像偵測器所得到的平台移動資訊傳達至 PC 端控制程式以進行運動軌跡 的偵測和記錄;充電電池和電力供應控制板則是提供此平台運動和計算所需的所 有電力。 此平台除了底盤之外,還有一個上蓋可以跟底盤組合;可以保護該底盤上所 有的設施器材免於因碰撞而造成損壞,並可以提供該平台擁有裝載貨物的能力及 擴充架構的可能性;此上蓋的形狀架構以及跟底盤組合後的透視圖請參考圖 13。 圖 13 (左)上蓋, (右)上蓋與底盤組合透視圖

(35)

5.2.1 電路功能介紹 底下將逐一介紹架構中各個區塊的詳細功能,可參照圖 12 之完整系統架構。 (1)嵌入式網路(Embedded Internet)板,如圖 14 所示;它可以將網路訊息封包解 開,並將資料內容從 UART 傳送出去;或是將從 UART 所收到的訊息進行封 包化,再經由網路端傳送出去。 圖 14 嵌入式網路板

(2)馬達控制(Motor Control)板,如圖 15 所示;它會根據 UART 所接收到的控制 指令內容去調整每一顆馬達裝置的 PWM 控制訊號。

圖 15 馬達控制板

(3)感測器控制(Sensor Control)板,如圖 16 所示;它會解讀光流影像偵測器輸出 的 Quadrature waveform 訊號,將之轉換成累積位移資訊,並且將此資訊內容 從 UART 輸出。

(36)

圖 16 感測器控制板

(4)將 Futaba S9402 伺服機改裝後便成為全方向平台所使用的馬達裝置,如圖 17。原本伺服機只能控制輸出角度,但經由將內部的可變電阻移除換上兩顆固 定電阻且磨除齒輪上的防過轉閂後,便可依照 PWM 訊號來控制馬達轉速。

圖 17 馬達裝置

(5)Access Point 以及 Switch Hub 係使用 ASUS 出產的 WL-530g,如圖 18,它的 最大傳輸率為 54Mbps,符合 IEEE802.11g 的規格。

(37)

(6)電源模組(Power module)採用三個 Step-down 穩壓模組,相較於一般常用的 78 系列降壓 IC,Step-down 穩壓模組能更有效率地轉換能量以減少損失。電池(Battery) 使用三顆 7.4V 鋰聚合電池,比起鎳鎘、鎳氫電池,它的重量較輕、體積較小而 且容量較大。 (a) (b) 圖 19 降壓模組與電池組 (7)在這裡我們使用逸盛公司出產的迷你雷射滑鼠作為光流影像感測器(Optical flow sensor);這個感測器擁有 1600 cpi (counts per inch)的解析度,並且相較於普 通的光學滑鼠,雷射滑鼠有幾項優點:1. 解析度較高 2.可在玻璃等透明物質上使 用 3.不需與地面接觸。滑鼠改裝後將如圖 20 所示。

圖 20 光流感測器

(38)

知該感測器在 X 軸和 Y 軸上面的移動資訊。以下列出 Quadrature Mode 的相關資 訊圖表:

圖 21 Quadrature Mode Output state

圖 22 Quadrature Mode Output waveform

(9)由於考量到耗電量以及音量的需求,發聲器(Sound Generator)採用金屬殼蜂鳴 器,由於它的壓電材質以及共振腔經過特殊安排設計,所以可同時發多種頻率 的聲音。,如下圖:

(39)

圖 23 金屬蜂鳴器 (10) 發聲控制組包含三個主要板件,藍芽模組板、微控制電路板以及驅動板,如。 為了無線控制機器人發聲,使用藍芽模組板進行傳輸,它可從 PC 端的 USB 藍芽接收指令並透過 UART 介面將指令傳送給微控制電路板,此微控制電路 板可依據指令產生方波訊號並控制驅動板的開關,而驅動板有足夠的電壓驅 動金屬蜂鳴器發聲,如圖 24,如此一來我們便可輕易地產生間歇性的特定 聲音。 圖 24 發聲控制組 (11) 麥克風陣列的硬體外觀如下,內部電路是單純的 OP 放大電路,使用 OPA213 以及電阻電容等建構而成,並使用 78L05 以及 79L05 穩定電壓供應,因此成 本較低。利用一般個人電腦均有配備的音效裝置之 line in 功能,便可收錄到 此雙聲道麥克風陣列的聲音資訊。

(40)

圖 25 麥克風陣列

最後,組裝完成後的嵌入式網路全方向運動平台內部電路如圖 26 所示,從 底部拍攝的樣子如圖 27 所示,蓋上蓋子的俯視照片如圖 28。

(41)

圖 27 底部照片

(42)

5.2.2 全方位運動平台分析 全方位運動平台使用特殊結構的輪子,一般稱為全向輪(omni-directional wheel or omni-wheel);它可以將地面作用於輪子上的摩擦力之中平行於輪軸的部 分,藉由滾子的轉動而分散掉;因而,造就了全向輪平台所擁有的獨特運動模式。 實際上,全向輪的構想早在 1910 年就發表於美國的專利文件中,截至目前, 為了提高效率及改善震動的缺點,已有許多改良的全向輪被發明使用,而現今也 已被使用在搬運車、輪椅或輪式足球機器人等方面[14-15]。圖 29 中共列出三種 不同型式的全向輪,(c)是目前我們正在使用的全向輪。從平行於輪軸的方向看過 去,其形狀就像是一般傳統的輪子。 (a) (b) (c) 圖 29 三種不同型態的全向輪 我們的機器人平台共使用三顆全向輪,該平台較使用傳統輪子的二輪或四輪 式的機器人擁有較高的運動自由度;經由三顆輪子所產生的多種合力組合,共可 以產生多達五種運動模式,包括:原地旋轉、對頭直行、對頭差速轉彎、平移、 平移且自轉。 在此平台中使用三顆全向輪,如圖 30 所示,三輪之間各夾 120 度角,為這 個移動平台最大的一個特點,這種構造使得這個平台得以呈現較一般輪式平台更 多樣化的運動模式,在此將詳細探討這種構造的運動學理論[16-19]。

(43)

圖 30 全向輪平台簡圖 圖 31 全向輪簡圖 在圖 30 及圖 31 中,各項符號的意義表示如下: (a) x、y、z:定義在平台上的座標系,以下推導中的向量皆相對於本座標系。x、 y 如圖所示,而 z 軸為指出紙面為正。 (b) v:希望平台移動之速度向量。 (c)

ω

:希望平台轉動之角速度向量,且定義沿著反時針方向旋轉為正。

(44)

(d) Fn:垂直於各輪軸之單位向量,n = 1,2,3。

(

)

0 1, 0, 0 F = − 1 1 3 , , 0 2 2

F

=⎛⎜ − ⎞⎟ ⎝ ⎠ (31) 2 1 3 , , 0 2 2

F

= ⎜⎛ ⎞ ⎝ ⎠ (e)

b

n:從 n 號輪軸心端點到平台中心的距離向量。 (f) Pn:代表 n 號輪軸心相對於平台座標的速度向量。 令建立於各輪之上的座標系為x y z′ ′ ′,如圖 31 所示(圖 31 中皆表其正向): (g)

r

:從輪子接觸地面之點到輪子軸心的距離向量。 (h)

ω

n:各輪相對於其軸心之轉動角速度向量,令逆時針方向旋轉為正(沿正

z

′軸 方向)。 (i)

Y

n:各輪之軸心在輪沿地面滾動時的速度向量於

x

′軸方向上的分量。 在考慮

x y z

座標系與x y z′ ′ ′ 座標系之間的轉換,可知x′軸方向與Fn方向永遠一 致,因此在x y z 座標系中看x′軸上的向量,為: (x′軸上正向大小) ⋅Fn 考慮此平台一個最廣泛的運動模式:平台本體具有一個自旋轉的角速度

ω

,並且 以速度向量v移動;如何求得每一伺服機所需運作的角速度

ω

n,其運動學推導如 下: 在x y z 座標上,各輪子之軸心端點的速度等於平台中心點的速度加上平台自 旋所產生的角速度: n P =v+ (b ×

ω

) (32) (32)式也可以寫成 n P =v+ (b ⋅ω)⋅Fn (33) 而在x y z′ ′ ′ 座標上,各輪子之軸心端點速度為:

(45)

n Y =r ×

ω

n (34) (32)式也可以寫成 n Y =r

ω

n (35) 在x y z′ ′ ′ 座標中的x′軸正向即為 xyz 座標中的Fn單位向量的方向,因此我 們可知,同是表示各輪軸心端點速度的YnPn,其關係如下: n Y = PnFn (36) 綜合(35)、(36)式,可得 r

ω

n=PnFn (37) 將(33)式代入(37)式可得: r

ω

n=[v+ (b⋅ω)⋅Fn]⋅Fn (38) n

ω

=[v+ (b⋅ω )⋅Fn]⋅Fn/ r (39) 由此可知,如果要讓此平台以角速度ω (逆時針為正)作自轉、加上以速度向量v 作平移,將ω 以及v代入(39)式,即可求出各輪所需要轉動的角速度

ω

n,亦即各 伺服機所需要提供之角速度。 經過前一小節的分析,可以知道此一移動平台有能力呈現較一般兩輪平台更為 複雜、多樣化的運動模式,由簡至繁共有以下五種: (a). 原地旋轉:三個輪子的角速度保持一定且相等、轉向相等,則本平台可作原 地等角速度旋轉。 (b). 對頭直行:當三輪中其中一輪不運轉,其他兩輪以相同的角速度旋轉但轉向 相反時,則本平台會朝不運轉的輪子方向(一個「頭」)前進。 (c). 對頭差速轉彎:以對頭直行模式為基礎,轉動的兩輪若轉速不同,則本平台 會進行轉彎的動作,此時「頭」的指向會改變。這種運動模式與一般兩輪平台差 速轉彎的道理類似。 (d). 平移:所謂平移即是本體指向不改變的移動,而且移動方向可以任意選擇。 這種運動方式正是普通輪式平台無法呈現的運動模式。 (e). 平移且自轉:這是本平台所能呈現最複雜的一種運動模式,一邊朝著固定方 向作平移,一邊又以固定角速度作自轉,這也是普通輪式平台無法呈現的運動模

(46)

式。 圖 32 為上述幾種運動模式的示意圖。(a)為「原地旋轉」,(b)為「對頭直行」, (c)為「對頭差速轉彎」,(d)為「平移」,(e)為「平移且自轉」。 (a) (b) (c) (d) (e) 圖 32 運動模式示意圖

(47)

5.3 主機端架構

主機端程式目的是用來處理第二章介紹的聲場特徵定位演算法、第三章介紹 的光流影像定位演算法、第四章介紹的機率格估測法以及第五章全方向運動平台 演算法,請對照圖 12 的 PC 端部分。由於此平台擁有無線網路的機制,所以幾 乎所有的運算都可集中在主機端處理。Sound localization Agent 透過 Bluetooth Dongle 傳 送 發 聲 命 令 , 由 麥 克 風 陣 列 接 收 聲 音 資 訊 處 理 , 而 Optical flow localization Agent 從網路接收兩個光流感測器分別的位移資訊,經過運算後,求 得運動平台的位移以及角度資訊,Omni-directional Platform Control Agent 可將速 度要求利用運動學推導後透過無限網路控制海星號平台的移動。

圖 33 Visual Basic 所建立之使用者圖形介面是使用 Visual Basic 所建立的使 用者介面,用以控制平台的移動、擷取光流位移資訊以及聲音訊號。當資訊擷取 完成後,我們再使用 MATLAB 軟體進行演算。

(48)

5.4 實驗平台整體實際照片

在此完整呈現實驗平台,如圖 34,為整體的照片,包含了: 1. 全方向運動平台---海星號 2. 筆記型電腦 3. 麥克風陣列 圖 34 實驗平台整體實際照片

(49)

第六章

實驗結果與討論

6.1 光流影像定位實驗結果

本節將分析四種不同移動情況下,光流影像定位的誤差情形。作法是將全方 向運動平台從(0,0)點位置出發,移動一段已知的距離或旋轉一個已知的角度;然 後將 PC 端程式上所量測到的移動距離和旋轉角度數值與實際已知的數值相減, 便可以得到該光流影像定位的誤差值。 下面列出四種不同的移動狀況及其結果,每種實驗均進行 5 次,然後將其數 據平均後呈現。移動情形以軌跡來表示,並以表格列出誤差情形。軌跡圖以水平 軸為 X 軸且往右為正向,垂直軸為 Y 軸且往上為正向,而角度以正 Y 方向為 0 度,正 X 方向為-90 度。 實驗一: 運動平台指向 Y 軸,往正 Y 軸移動 1 公尺(100cm)。 圖 35 光流定位軌跡圖-實驗一 表 1 光流定位誤差表-實驗一 誤差 X 軸(cm) Y 軸(cm) 角度(degree) -0.37 0.14 0

(50)

實驗二: 運動平台指向 Y 軸,往正 X 軸移動 1 公尺(100cm)。 圖 36 光流定位軌跡圖-實驗二 表 2 光流定位誤差表-實驗二 誤差 X 軸(cm) Y 軸(cm) 角度(degree) 3.19 1.00 -1 實驗三: 運動平台指向 Y 軸,往 25.6 度方向移動 1 公尺(往負 X 軸移動 43.3cm,往正 Y 軸移動 90.3cm)。 圖 37 光流定位軌跡圖-實驗三 表 3 光流定位誤差表-實驗三 誤差 X 軸(cm) Y 軸(cm) 角度(degree) 2.23 2.06 -4

(51)

實驗四: 運動平台一開始指向 Y 軸,接著往 X 軸方向旋轉 90 度。 圖 38 光流定位軌跡圖-實驗四 表 4 光流定位誤差表-實驗四 誤差 X 軸(cm) Y 軸(cm) 角度(degree) -1.32 2.14 1 經由上述的實驗數據,我們可以發現利用光流影像進行運動平台的定位所產 生的誤差是很小的;直線移動 1 公尺(100 公分),所產生的量測誤差平均僅有 3.2 公分(3.2%);原地旋轉 90 度,所產生的量測誤差平均僅有 1 度(1.1%)。 產生量測誤差的原因有很多種類,操作者的觀測誤差、光流感測器的裝置誤 差、光流感測程式參數(cpi 值)的設定誤差以及最小平方誤差法所造成之誤差… 等,都會對光流影像定位法造成一定程度上的影響。其中,光流感測器的裝置誤 差可以使用精密的雷射板件切割方法而大幅降低,而光流感測程式參數(cpi 值) 的設定誤差則可以進行量測校準實驗而有所改進;但是,整體下來還是會有不可 避免的誤差存在,因而造成該定位方法會產生累積性的量測誤差。

(52)

6.2 利用聲場特徵定位實驗結果

本節將驗證並分析聲場特徵定位法的定位結果。在此使用的聲音資訊取樣頻 率為 16kHz, 解析度為 16 bits per sample,錄製後的聲音波形如圖 39 所示,可以 看出大約一秒發出兩次聲音。由於我們不探討環境雜訊的影響,所以均在安靜無 聲環境下進行實驗。 圖 39 聲音波形 在此節中,訓練模型使用高斯混和模型個數為 11 個,FFT 點數為 512 點,選 用三個頻率:2938、3500 以及 4063 Hz。共取 368 個取樣框,取樣框之間差距 40 個取樣點。進行位置偵測時,取樣框數以及取樣框之間的差距點數與訓練模型時 一樣。 實驗一: 此實驗之環境示意圖如圖 40,這是在某間實驗室的部分區域,共建立 10 個 地標位置,其中有三個 non-line of sight 的地標點。雙聲道麥克風陣列的麥克風彼 此之間的距離為 5 公分,在同一個地標位置上錄製兩個聲音檔案,一個用以進行 模型訓練,另一個用以進行位置估測,求得在 100 次延遲(每次延遲 40 個取樣點) 的情形下,位置偵測的統計情形。

(53)

圖 40 聲場特徵定位實驗環境示意圖-實驗一 表 5 聲場特徵定位統計結果-實驗一 Point 1 2 3 4 5 6 7 8 9 10 Result 100% 100% 100% 100% 87% 100% 100% 100% 100% 100% 如統計結果顯示,只有在位置 5 有誤判的情形發生,不過依然有 87%的 正確率,成功地驗證此實驗平台可以實現聲場特徵定位法。在這一個實驗中, 納入 non-line of sight 的地標點是為了完整驗證聲場特徵定位法在此平台的可 行性,但為了簡化問題,下一個實驗以及 7.3 節利用機率格的實驗中,我們 將不考慮 non-line of sight 的情形。

(54)

實驗二: 在這個實驗中我們建立一個四乘四的方陣,在方陣之地標以及測試點排列如 圖 41,鄰近的地標間距為 25 公分,一共 16 個地標點以及 49 個測試點。在此將 測試點放在地標上以及非地標上,依據估測後的事後機率值大小進行排名,名次 為 1 表示機率值最高,名次為 16 表示機率值最低。表 6 是實驗的排名結果,其 中用灰底標出的部分,表示最靠近測試點的地標位置點。如果測試點中灰底的部 分包含排名 1 的結果,表示估測正確。 圖 41 聲場特徵定位方陣示意圖-實驗二

(55)

圖 42 聲場特徵定位實驗環境示意圖-實驗二 表 6 聲場特徵定位排名結果-實驗二 地標位置 測 試 點 L1 L2 L3 L4 L5 L6 L7 L8 L9 L 10 L 11 L 12 L 13 L 14 L 15 L 16 1 3 6 1 4 11 5 7 2 10 8 16 9 12 13 15 14 2 7 6 1 2 11 13 10 8 5 4 15 3 9 12 16 14 3 8 2 1 3 11 4 12 6 10 5 16 7 12 14 15 9 4 11 3 1 2 9 12 10 7 6 5 15 4 8 14 16 13 5 10 3 1 2 8 9 6 5 11 4 16 7 12 14 15 13 6 9 5 2 1 7 10 11 6 8 4 16 3 12 14 15 13 7 9 4 2 1 8 3 10 7 13 5 16 6 12 15 14 11 8 9 6 1 2 11 13 7 10 3 4 15 5 8 14 16 12

數據

圖 6 描繪出此系統的架構。有一個特定的聲源從機器人身上發出,而在 Robot  location detection agent(RLDA)端有兩個收音的麥克風。在可以清楚地接收聲源的 情況下,RLDA 可以放在任意的位置。Stage I 是 Pre-recording stage,在這個 stage 時,機器人在安靜沒有雜音的情況下移動到不同的地標位置並發出聲音以建立預 錄聲音資料庫(Pre-recorded Database),後面將會使用這個資料庫來求得聲場特徵 模型參數。一旦完成 Stage I,
圖 9 光流軌跡視窗
圖 15 馬達控制板
圖 18  AP(包含 Switch Hub)
+7

參考文獻

相關文件

Abstract In this paper, we consider the smoothing Newton method for solving a type of absolute value equations associated with second order cone (SOCAVE for short), which.. 1

/** Class invariant: A Person always has a date of birth, and if the Person has a date of death, then the date of death is equal to or later than the date of birth. To be

Note that this method uses two separate object variables: the local variable message and the instance field name.. A local variable belongs to an individual method, and you can use

In this project, we developed an irregular array redistribution scheduling algorithm, two-phase degree-reduction (TPDR) and a method to provide better cost when computing cost

In this thesis, we develop a multiple-level fault injection tool and verification flow in SystemC design platform.. The user can set the parameters of the fault injection

Therefore, this study proposes a Reverse Logistics recovery scheduling optimization problem, and the pallet rental industry, for example.. The least cost path, the maximum amount

In order to improve the aforementioned problems, this research proposes a conceptual cost estimation method that integrates a neuro-fuzzy system with the Principal Items

Since Dolby AC-3(abbreviated as AC-3) is the main technology of the surrounding sound format, in this thesis, we proposes a data model for mining the relationship between