台灣​大學​以​高​精度​即時​定位​及​電子​地圖​為​基礎​路面​之​自動​載​具​研製

- 趙 可​勤, 台灣​大學​機械​工程所

"Compact RIO​編譯​軟體​速度​快,​可​大幅​縮短​修改​演算法​所需​消耗​的​時間,​並且​即時​的​LabVIEW​運作​良好,​使​定位​演算法​的​誤差​降到​最小。​並且​LabVIEW​所​提供​的​範例​程式,​可​縮短​程式​開發​的​時間。​另外​Compact RIO​堅固耐用,​即使​放在​車​子​上​也不​須​擔心​損壞​或​因​震動​影響​計算​結果。"

- 趙 可​勤, 台灣​大學​機械​工程所

The Challenge:

需​使​定位​演算法​可​即時​運作,​並​整合​運動​控制​技術​與​障礙​物​偵測​模組,​配合​電子​地圖​的​資訊,​增加​定位​演算法​的​可靠​度,​使​自動化​載​具​可以​在​有限​區域,​如​校園​內​達到​SAE​所​規範​的​Level-4​的​自動​駕駛,​即​在​行使​過程​中​乘客​完全​不需​介入​決策​或​運動​控制。

The Solution:

使用​Compact RIO​當作​主要​控制器,​將​所有​I/​O​都​連接​到​Compact RIO​上,​演算法​設計​成​分散​式​控制器,​以​增加​系統的​可​擴增​性。​車體​使用​現成​的​高爾夫球​車,​並​自行​改裝​以便​可以​使用​馬達​驅動​方向​盤、​煞車​踏板,​以及​動力​馬達​的​驅動​器。​並在​車​上​安裝​慣​性感​測​器​與​輪​速​計。​所有​的​配線​都​收納​在​車​體內​以免​被​扯​斷。

Author(s):

趙 可​勤 - 台灣​大學​機械​工程所
​蔡 育​伸 - 台灣​大學​機械​工程所
​鄭 力​瑋 - 台灣​大學​機械​工程所
​吳 柏​富 - 台灣​大學​機械​工程所
​劉 耿​豪 - 台灣​大學​機械​工程所
​吳 明​軒 - 台灣​大學​機械​工程所
​周 芳​杰 - 台灣​大學​機械​工程所
​李​綱 指導​老師 - 台灣​大學​機械​工程所

 

 

本​系統​由​台灣​大學​機械系​智慧型​載​具​與​機電​整合​實驗室​的​學生​所​開發,​目前​為​第一​代​的​自動化​載​具,​預設​運作​情境​為​封閉​區域​的​接駁​車,​如​校園​內​的​接駁​車、​短距離​的​PRT(Personal Rapid Transit)​等。

 

目前​在​最​具​知名度​的​無人駕駛​車輛​首​推​Google car,​根據​媒體​報導​以及​Google​所​發布​的​資訊,​Google car​使用​3D​雷射​掃描器、​GPS、​INS​為​車輛​定位,​而​在​機器​人​領域​中,​使用​3D​雷射​的​SLAM(Simultaneous localization and mapping)​技術​被​大量​使用。​SLAM​是​藉由​視覺​或​雷射、​雷達​等​掃描器​官​查​周圍​環境,​並​記錄​目前​載​具​與​環境​上​物體​的​相對​位置,​接​者​當​載​具​移動​時,​估測​載​具​的​移動​軌跡​並​記錄​此時​環境​上​物體​與​載​具​間​相對​位置​的​變化。​而​這一​系列​的​紀錄​被​記錄下來​之後,​就​組成​了​一個​環境​的​地圖,​並且​也​知道​了​載​具​的​位置。​理論​上​這套​技術​可以​使​載​具​在​任何​環境​皆​可以​得到​精準​的​定位​結果,​但是​在​實際​使用​上​卻​遇到​許多​工程​上​的​問題。​如​3D​雷射​更新​頻率​高,​並且​以​Google car​所​使用​的​3D​雷射​為例,​定位​用​的​電腦​運算​功能​要求​與​演算法​複雜度​極高,​此舉​大幅​增加​系統的​建​置​成本。​並且​地圖​上​的​資料,​當​載​具​第二次​移動​到​相同​位置​時,​不一定​可以​辨認出來,​甚至​當​有人、​車​移動​時,​演算法​可能會​無法​辨認​出​載​具​目前​的​位置,​導致​定位​的​可靠​度​降低。

 

我們​的​定位​演算法​則是​另闢蹊徑,​使用​GPS​以及​INS​與​電子​地圖。​一般​的​GPS,​定位​的​精確度​與​更新​頻率​較低,​並且​容易​受到​干擾,​但​優勢​是​干擾​不會​影響​到​之後​的​定位​結果。​INS​更新​頻率​高,​但是​誤差​會​不斷​的​累積​使得​長時間​使用​之後​定位​結果​失真​情況​會​月​來​越​嚴重。​故​我們​使用​資訊​融合​的​演算法​結合​兩者​的​優點​並​彌補​對方​的​缺點。​而​當​GPS​受到​干擾​時,​本​作品​以​電子​地圖​的​資料​來​偵測​GPS​是否​受到​干擾,​並​依​地圖​資料​修正​GPS​的​定位​結果。

 

 

一般​來說,​當​GPS​靜​置​時,​其​定位​的​結果​會​散布​在​一定​的​範圍​內,​而​此​範圍​越​小​即​表示​定位​的​精確度​越高。​而​其​定位​的​平均值​與​已知​位置​比較,​當​兩者​越​接近​則​表示​其​定位​準確度​越高。​另外,​GPS​的​誤差​可​分為​兩種:common mode error​與​non-​common mode error,​common mode error​的​特性​是在​長時間,​約​3~4​小時​之內​其​error​的​方向​與​大小​不會有​太大​的​變化。​並且​common mode error​可以​藉由​使用​多​星​多頻​的​衛星​定位​系統,​甚至​是​使用​RTK​技術​來​修正。​而​non-​common mode error​則會​在​瞬間​產生,​其​error​的​量​可能會​到達​3~5​公尺,​並且​non-​common mode error​產生​時​GPS​的​接收​機​一般​來說​無法​自行​偵測。​若​在​GPS​發生​non-​common mode error​時​繼續​使用​原本​的​參數​時,​定位​結果​將​容易​失真​致​無法​使用​的​程度。

 

本​作品​的​優勢​在於​使用​電子​地圖​的​資訊,​偵測​並​修正​GPS​的​common mode error​與​non-​common mode error,​使得​本​作品​的​系統​可以​使用​價格​較​低廉​的​GPS,​卻​依然​可以​達到​車道​等級​(Lane-​Level)​的​定位,​配合​運動​控制​與​障礙​物​偵測​的​功能,​使得​本​作品​可以​在​特定​環境,​如​學校​校區,​符合​NHTSA(National Highway Traffic Safety Administration)​所​定義​的​Level-4​的​自動​駕駛,​即​在​運作​時​駕駛​完全​不需要​介入。

 

 

Figure 1​為​工作​流程圖,​GPS​的​定位​資訊​會​先​進行​判斷,​依​圖​資​判斷​GPS​目前​的​健康​狀態,​進而​決定​演算法​的​參數,​障礙​物​偵測​模組​會​偵測​前進​方向​中​是否​有​障礙​物,​進而​決定​是否​需要​停車​或​變換​車道​躲避​障礙​物。​Figure 2​為​整個​系統的​架構​圖,​本​作品​的​系統​為​分散​式​的​系統​架構,​前​二​層​的​演算​內容​會由​最​下層​的​控制器​完成。

 

Compact RIO​+LabVIEW​即可​成為​解決​方案

        前​一代​的​解決​方案​為​使用​Matlab​編寫​演算法,​之後​以​C​+​+編輯​器​將​Matlab​的​程式碼​編譯​成​動態​聯結​程式​庫​(Dynamic link library),​在​工業​電腦​上​運作,​而​資料​擷取​以及​運動​控制​以​LabVIEW​完成,​不過​因為​作業系統​並非​即時​版本,​以及​不同​軟體​間​溝通​問題,​所以​此​版本​最後​運作​不​成功,​最後​被​廢棄。

 

        目前​的​解決​方案​為​向​NI​工程師​諮詢​之後,​由​NI​工程師​所​提出​的​解決​方案。​因為​實驗室​已經​有​一台​Compact RIO,​並有​LabVIEW Real-​time​的​版本,​所以​為了​避免​不同​軟體​之間​相容性​的​問題,​將​所有​的​軟體​修改​為由​LabVIEW​編寫,​並且​因為​學校​有​購買​標準​服務​合約,​所以​可以​就​軟體​使用​上​進行​諮詢。

 

 

        Figure 3​為​高爾夫球​車​上​的​硬體​安裝​配置,​硬體​配置​上​除了​雷射​可能​因為​資料​量​大​所以​會​占用​過多​資源,​所以​以​另外​一台​電腦​處理,​並​以​TCPIP​與​Compact RIO​連接。​其他​感​測​器​以及​致​動​器​都​連接​到​Compact RIO​上,​減少​規劃​硬體​線路​的​時間。​並且​因為​實驗室​的​學生​都​對​LabVIEW​以及​Matlab​有​一定​的​熟悉​度,​加上​整個​系統​運算​速度​約​40Hz~100Hz,​所以​NI​工程師​建議​以​Compact RIO​加上​LabVIEW​的​方式,​並且​因為​我們​實驗室​的​Compact RIO​可以​使用​Scan mode,​我們​可以​在​Scan mode​上​直接​以​Matlab​的​語法​編寫​演算法,​此舉​大量​縮短​實驗室​同學​開發​演算法​的​時間,​同時​許多​有關​Compact RIO​與​LabVIEW​的​使用​說明​都可以​在​網路​上​尋找​到,​減少​我們​摸索​軟​硬體​上​使用​方法​的​時間。​加上​Compact RIO​在​資料​擷取​的​方面​設計​的​十分​容易,​可​依​需求​安裝​不同​的​模組,​故​不同​介面​的​感​測​器​都可以​很快​的​安裝​在​Compact RIO​上,​減少​因為​硬體​安裝​所​導致​的​錯誤,​讓​我們​在​開發​過程​中​可以​專注​在​演算法​的​開發。​此時​計畫​陸續​有​新的​成員​加入,​LabVIEW​流程圖​式​的​程式​編寫​方式,​可以​讓​新​成員​快速​的​理解​整個​系統的​架構,​並且​許多​人​都有​編寫​文字​式​軟體​的​經驗,​Scan mode​的​MathScript RT module​減少​新​成員​學習​程式​的​時間,​並且​以​MathScript​所​開發​的​演算法,​可以​在​電腦​上​以​Matlab​作​模擬​與​繪製​資料,​縮短​整理​資料​的​時間。

 

        最後​所​開發​的​系統,​為​完全​使用​NI​產品​的​自動化​高爾夫球​車,​以及​使用​LabVIEW​開發​的​車輛​跟隨​系統,​在​五月​於​ARTC(車輛​研究​與​測試​中心)​所​舉行​的​自動​駕駛​車輛​示範​賽​中​展​式​自動​駕駛​的​能力。

 

        展示​情境​分為​三關,​首先是​必須​通過​由​交通​錐​所為​成​的​S-​curve,​第二​關​式​模擬​超​車​情境,​在​外側​車道​上​會有​一台​模型​車,​需要​變換​車道​以​模擬​超​車​的​情境。​最後​則是​會有​假​人​走過​車道,​自動車​必須​偵測​假​人​並​停車​禮讓。​而​跟​車​系統​則​須​全程​跟隨​高爾夫球​車,​並與​高爾夫球​車​維持​固定​距離。

       

使用​NI​產品​的​優勢

        Compact RIO​可以​依​需求​購買​相應​的​卡片,​使得​開發​團隊​可以​快速​的​依​需求​擴增​硬體​介面,​並且​其​控制​精度​高,​並且​強度​夠,​可以​承受​震動​與​溫度​變化,​降低​硬體​導致​失敗​的​風險,​因此​可以​直接​安裝​在​車​上。​LabVIEW​所​提供​的​大量​範例​程式,​縮短​開發​人員​開發​模組​的​時間,​不需要​每次​購買​新​硬體​都​重新​開發​相關​的​資料​擷取​或​控制​程式。​NI​的​標準​服務​可以​讓​我們​在​有​需要​時​可以​即時​的​獲得​NI​工程​人員​的​支援,​而不是​盲目​摸索。

       

未來​方向:

        因為​以​圖​資​為​基礎​的​作法​獲得​初步​的​成功,​未來​會​利用​較低​階​的​GPS​以​降低​建設​成本,​但須​保持​至少​車道​等級​的​定位​精度。​另外,​依照​PRT​的​情境,​外來​車輛​上​需要​通訊​單元,​以便​中央​單位​可以​掌握​載​具​目前​的​狀態,​甚至​可以​達到​自動​叫​車​的​功能。

 

Author Information:

趙 可勤
​台灣​大學​機械​工程所
chaokochin100@gmail.com

​自動​駕駛​載​具​工作​流程圖
​自動​駕駛​高爾夫球​車​硬體​配置
​系統​架構