自從發明機器人以來,對兩足機器人(具有兩條腿的機器人)的研究一直持續地進行,特別是仿人型雙足機器人。創造類似於人的機器人並使其不進行任何改變就可以在相同的人類工作環境中使用,意味著它們被建造用來模仿人類和人類的行為。這類機器人與輪式機器人相比,能更加有效地適應復雜環境。雙足機器人在人機交互和復雜地形的適應方面有天然優勢。如果運動平衡問題解決得好,再用人工智能技術當大腦,仿人機器人將具備廣闊的應用場景和巨大的商業化價值——不僅可在機場、酒店、養老等服務行業廣泛應用,而且在高校教具、娛樂影視、軍用裝備等方面也具有重要價值。隨著人工智能的發展,在未來的生產、生活中,仿人型雙足機器人可以幫助人類解決很多問題,比如完成送餐、馱物、搶險、采礦等一繫列危險或繁重的工作。Roban 機器人是一款高端仿人機器人,擁有討人喜歡的外形,具有人工智能,能夠在視聽方面與人類互動。Roban 機器人的相關技術完全是開源的,開放給所有的高等教育項目,支持在 Roban 上的開發及教育相關領域的研究。
Roban 機器人支持 Linux、Windows 或 Mac OS 等環境下的編程開發,開放的編程構架支持C 或 Python 語言。無論使用者專業水平如何,都可以通過編程平臺與 Roban 機器人進行編程。
本書介紹 Roban 機器人相關基礎知識及編程操作,全書共分 8 章,內容如下。
第 1 章 Roban 機器人概述。介紹 Roban 機器人繫統、關節運動模型、機器人操作繫統框架、Roban 機器人基本操作、網絡連接設置和遠程登錄。
第 2 章 Python 編程基礎。介紹 Python 的基本語法、函數、對像與類、文件和異常。
第 3 章 ROS 使用概述。介紹 ROS 的程序包與節點、話題與服務、文件與參數及調試工具,後給出了 ROS 安裝和配置、主從機設置實例及消息通信實例。
第 4 章同步定位與地圖構建。介紹 SLAM 技術中對圖像的接收和發布、位置的定位和圖像追蹤、八叉樹存儲方式及平面圖的生成、路徑生成及控制機器人行走。
第 5 章 V-REP 使用概述。介紹 V-REP 仿真環境的搭建,提供了Roban 機器人在 V-REP環境下的導入和配置,以及仿真環境下的傳感器配置,後給出機器人大賽仿真環境的應用示例。
第 6 章 Roban 機器人運動控制基礎。介紹 Roban 機器人相關的基礎結構、動作控制方法,以及機器人姿態的運動學正、逆求解方法,後給出控制 Roban 機器人避障行走實例。
第 7 章雙足步行基礎。介紹 Roban 機器人相關的運動學基礎、ZMP 含義以及基於線性倒立擺生成雙足行走步態,終給出 Roban 機器人行走及上下樓梯實例。
第 8 章人機交互。介紹 Roban 機器人音頻及視頻處理的硬件基礎、相關理論及相關應用,後給出人臉識別及數字識別的人工智能實踐。
本書各章內容相對獨立,在內容安排上按照先易後難的原則編寫。前面章節解釋的語句後面再次出現時不做解釋,讀者在學習時盡量按照章節順序閱讀和調試程序。書中羅列相應內容,如參數、軟件安裝、程序調試方法等,供需要時查閱。
本書面向初學者,對機器人學相關理論、Python 語言、視覺及聲學知識等介紹得相對簡單,僅選擇調試機器人所必須掌握的基礎知識,書中所使用的範例也不涉及復雜算法。讀者在掌握Roban 機器人繫統的基礎知識、開發設計思路後,可以參考開源 WIKI,查閱所提供的更多 API。
本書可作為 Roban 機器人的操作手冊和編程參考書,也可作為高等學校計算機及相關專業“機器人程序設計”課程的教材。
由於作者水平和經驗有限,書中疏漏之處在所難免,敬請讀者指正。
編 者
2020 年 12 月