自動駕駛與機器人實踐指南:基於DragonFly智能車的模塊化設計方法 Engineering Autonomous Vehicles and Robots: The DragonFly Modular-based Approach

劉少山 譯 陳紹平//張乃欣

商品描述

本書深入探討了建造自動駕駛汽車和機器人的整個過程。
作為劉少山博士的得意之作,本書不僅被國際電氣和電子工程師協會電腦學會(IEEE Computer Society)推薦為無人駕駛國際標準教材,
也涵蓋了從基礎硬體設備到通訊、定位、感知、規劃、控制、建圖和邊緣運算等一系列核心知識點。
書中也以一個標準的自動駕駛樣車為例,生動地展示了每個部分在整個系統中的關鍵作用。
本書為廣大的學生、研究者、工程師、教育工作者、業界從業人員、技術愛好者,
以及對未來技術發展感興趣的公眾提供了寶貴的知識和啟示,對我國自動駕駛產業的快速發展也將產生深遠的影響。
無論您是從事自動駕駛、自動化、智慧機器人、V2X、SLAM等領域的工程師,或是高等院校的相關專業師生,
或者是對這一領域感興趣的技術愛好者,本書都將為您提供寶貴的參考和指導。

目錄大綱

1基於模組化設計的經濟可靠的自動駕駛方案 001
1.1簡介 001
1.2成本昂貴的自動駕駛技術 002
1.2.1感測器系統 002
1.2.2高精度地圖的創建與維護 003
1.2.3計算系統 003
1.3實現經濟可行性與技術可靠性 004
1.3.1感測器融合 004
1.3.2模組化設計 005
1.3.3擴展現有的數位地圖 005
1.4模組化設計 006
1.4.1通訊系統 007
1.4.2底盤 007
1.4.3用於被動感知的毫米波雷達和聲吶 007
1.4.4用於定位的GNSS 007
1.4.5用於主動感知與定位的電腦視覺 007
1.4.6規劃與控制 008
1.4.7建圖 008
1.5內容前瞻 008
1.6書中使用的開源專案 009
參考文獻 011

2車載通訊系統 012
2.1簡介 012
2.2控制器區域網路(CAN) 013
2.3FlexRay匯流排 015
2.3.1FlexRay拓樸結構 016
2.3.2FlexRay通訊協定 016
2.4CANopen 017
2.4.1對象字典 018
2.4.2設定檔族 018
2.4.3資料傳輸和網路管理 019
2.4.4通訊模型 020
2.4.5CANopen節點(CANopenNode) 020
參考文獻 022

3智慧機器人與自動駕駛車輛的底盤技術 023
3.1簡介 023
3.2線控節流閥 024
3.3線控制動技術 025
3.4線控轉向技術 025
3.5Open Source Car Control專案 025
3.5.1OSCC APIs 026
3.5.2硬體機構 026
3.5.3韌體 027
3.6OpenCaret 028
3.6.1OSCC 節流閥 028
3.6.2OSCC煞車 028
3.6.3OSCC轉向 029
3.7以PerceptIn自動駕駛汽車底盤為例的軟體適配層 030
參考文獻 033

4聲吶和毫米波雷達的被動感知 034
4.1簡介 034
4.2毫米波雷達的基本原理 035
4.2.1距離測量 035
4.2.2速度測量 036
4.2.3角度測量 037
4.3毫米波雷達部署 037
4.4聲吶感知器部署 040
參考文獻 044

5透過即時動態全球導航衛星系統進行定位 045
5.1簡介 045
5.2GNSS技術概述 046
5.3RTK-GNSS 047
5.4RTK-GNSS雲端伺服器安裝步驟 049
5.4.1配置NtripCaster 049
5.4.2開始運行NtripCaster 051
5.5在樹莓派上配置NtripServer和NtripClient 052
5.5.1安裝樹莓派系統 052
5.5.2在樹莓派上運行RTKLIB-str2str 053
5.6配置基地台和GNSS移動探測站 055
5.6.1基地台硬體配置 055
5.6.2基地台軟體配置 055
5.6.3配置GNSS移動探測站 059
5.7FreeWave無線電基本配置 062
參考文獻 066

6計算機視覺的定位與感知 067
6.1簡介 067
6.2搭建電腦視覺硬體 068
6.2.1七層技術 068
6.2.2硬體同步 070
6.2.3計算 071
6.3相機標定 071
6.3.1內參 072
6.3.2外參 072
6.3.3Kalibr 072
6.4計算機視覺定位 075
6.4.1VSLAM概論 075
6.4.2ORB-SLAM2 076
6.5計算機視覺感知 077
6.5.1雙眼立體深度感知演算法-ELAS 078
6.5.2目標實例分割演算法—Mask R-CNN 078
6.6DragonFly系統的電腦視覺模組 079
6.6.1DragonFly定位介面 080
6.6.2DragonFly感知介面 081
6.6.3DragonFly+系統 082
參考文獻 084

7規劃與控制 086
7.1簡介 086
7.2路徑規劃 087
7.2.1有向加權圖 087
7.2.2迪傑斯特拉(Dijkstra)演算法 088
7.2.3A*演算法 089
7.3行為決策 089
7.3.1馬可夫決策過程(MDP) 090
7.3.2值迭代演算法 090
7.3.3部分可見馬可夫決策過程(POMDP) 091
7.3.4求解POMDP 092
7.4運動規劃 092
7.4.1快速擴展隨機樹 093
7.4.2RRT*演算法 094
7.5回饋控制 094
7.5.1比例積分微分(PID)控制器 095
7.5.2模型預測控制(MPC) 096
7.6Apollo中的EM Planning 迭代系統 097
7.6.1術語 097
7.6.2EM Planning 迭代演算法 098
7.7PerceptIn規劃控制架構 101
參考文獻 104

8建圖 105
8.1簡介 105
8.2數位地圖 106
8.2.1OSM開源地圖 106
8.2.2Java OpenStreetMap編輯器 108
8.2.3Nominatim 109
8.3高精地圖 111
8.3.1高精地圖的特徵 111
8.3.2高精地圖的圖層 111
8.3.3高精地圖的創建 112
8.4PerceptIn公司的π-Map 115
8.4.1拓樸圖 115
8.4.2π-Map的創建 116
參考文獻 118

9搭建DragonFly Pod 和DragonFly Bus 119
9.1簡介 119
9.2底盤硬體規格 120
9.3感測器配置 122
9.4軟體架構 124
9.5系統機制 126
9.6資料結構 127
9.6.1常用資料結構 128
9.6.2底盤資料 129
9.6.3定位數據 131
9.6.4感知資料 133
9.6.5規劃數據 135
9.7用戶介面 139
參考文獻 140

10搭建商業智慧太空探索機器人 141
10.1簡介 141
10.2目的地——火星 142
10.3火星探索機器人 143
10.3.1定位 143
10.3.2感知 144
10.3.3路徑規劃 144
10.3.4好奇號漫遊車和火星2020探測器 145
10.4挑戰:機載運算能力 147
參考文獻 150

11自動駕駛車輛的邊緣運算 151
11.1簡介 151
11.2基準(Benchmarks) 152
11.3計算系統架構 153
11.4運行時層(Runtime) 154
11.5中間件 155
11.6案例研究 156
參考文獻 158

12Vehicle-to-Everything基礎設施的創新 160
12.1簡介 160
12.2V2X技術的發展歷史 160
12.3協同自動駕駛 163
12.4挑戰 164
參考文獻 166

13車輛邊緣安全 168
13.1簡介 168
13.2感測器安全 168
13.3作業系統安全 169
13.4控制系統安全 170
13.5V2X安全 170
13.6邊緣運算的安全性 171
參考文獻 173