如何低成本搭建ARM+ROS的硬件載體?本文將為讀者提供一個全新的技術(shù)方案。全文分概述、硬件與底層、ROS搭建三個章節(jié),敬請訂閱。
1.ROS簡介
ROS是機(jī)器人操作系統(tǒng)(Robot Operating System)的英文縮寫,是用于編寫機(jī)器人軟件程序的一種具有高度靈活性的軟件架構(gòu),其原型源自斯坦福大學(xué)的Stanford Artificial Intelligence Robot (STAIR) 和 Personal Robotics (PR)項目。
ROS是一個用于實現(xiàn)機(jī)器人編程和開發(fā)復(fù)雜機(jī)器人應(yīng)用程序的開源軟件框架,依托于Linux之類的操作系統(tǒng)上,所以ROS也被稱為元操作系統(tǒng)或中間件軟件框架。ROS提供了各類成熟的功能包,如:攝像頭驅(qū)動、OpenCV圖像處理、SLAM建圖導(dǎo)航等。功能包中的代碼可以是C++、Python、Octave等不同的編程語言編寫,雖然不同模塊基于不同語言編寫,但仍可以被ROS組合起來一起使用。這意味著,當(dāng)開發(fā)新款機(jī)器人時,開發(fā)者不需要做基礎(chǔ)的傳感器驅(qū)動、甚至不必實現(xiàn)某些應(yīng)用,直接調(diào)用ROS自帶的功能包,同時ROS是分布式架構(gòu),對于大型復(fù)雜機(jī)器人而言,可以把各個功能分別部署在不同控制板上。
2.硬件介紹
本文檔使用本司的HDG2L-IoT評估套件來實現(xiàn)ROS應(yīng)用環(huán)境,硬件產(chǎn)品如下所示。
硬件平臺環(huán)境條件如下所示:
表2.1 硬件平臺資源
3.技術(shù)總結(jié)
目前實現(xiàn)ROS的方式主要有兩種:
-
Ubuntu系統(tǒng)+ROS;
-
Ubuntu系統(tǒng)+docker+ROS鏡像;
相對而言,使用dockers運(yùn)行ROS鏡像的部署方式,可以大大加快設(shè)備部署、移植工作。第二章節(jié)也將基于方案2去實現(xiàn)ROS,組成項目的各個部分功能如下所示: