- ROS機(jī)器人項(xiàng)目開發(fā)11例(原書第2版)
- (印)拉姆庫瑪·甘地那坦 郎坦·約瑟夫
- 345字
- 2021-01-26 17:17:27
1.9.1 為什么選擇Docker
在ROS中,一個項(xiàng)目可能包含多個元包,每一個元包都包含對應(yīng)的子包,每一個包的正常工作都需要對應(yīng)的依賴項(xiàng)。對于開發(fā)人員來說,在ROS中設(shè)置功能包是非常麻煩的,因?yàn)椴煌墓δ馨褂玫囊蕾図?xiàng)既可能相同也可能不同,相同的依賴項(xiàng)又可能是不同的版本,這些情況是十分常見的,而又有可能導(dǎo)致編譯問題。一個典型的例子是,當(dāng)我們想要在ROS Indigo中使用OpenCV3時,不同版本的視覺算法或gazebo_ros_controller功能包將會導(dǎo)致著名的嚴(yán)重錯誤(https://github.com/ros-simulation/gazebo_ros_pkgs/issues/612)。當(dāng)開發(fā)人員試圖進(jìn)行修復(fù)時,可能會因在修復(fù)過程中更改了功能包或依賴項(xiàng)的版本而導(dǎo)致項(xiàng)目無法工作。解決上述問題的方法有許多種,一種較為有效的方法是在ROS中使用Docker容器。與操作系統(tǒng)中的任何進(jìn)程不同,容器速度很快,可以在幾秒內(nèi)啟動或停止。操作系統(tǒng)或軟件包上的任何升級或更新都不會影響內(nèi)部的容器或外部的其他容器。
推薦閱讀
- 深度探索:解碼DeepSeek及人工智能的未來
- 機(jī)器人構(gòu)建實(shí)戰(zhàn)
- 虛擬現(xiàn)實(shí):商業(yè)化應(yīng)用及影響
- 神經(jīng)網(wǎng)絡(luò)與機(jī)器人科研項(xiàng)目申請與實(shí)踐
- 21世紀(jì)機(jī)器人
- 神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí):基于MATLAB的仿真與實(shí)現(xiàn)
- 聯(lián)邦學(xué)習(xí)實(shí)戰(zhàn)
- 人工智能創(chuàng)新啟示錄:賦能產(chǎn)業(yè)
- 人工智能:現(xiàn)代方法(第4版)
- PyTorch深度學(xué)習(xí)應(yīng)用實(shí)戰(zhàn)
- 深度學(xué)習(xí)詳解:基于李宏毅老師“機(jī)器學(xué)習(xí)”課程
- 智慧的疆界:從圖靈機(jī)到人工智能
- 大語言模型:基礎(chǔ)與前沿
- 樂高機(jī)器人:EV3與Scratch機(jī)器人基礎(chǔ)與應(yīng)用實(shí)例
- AI幫你贏:人人都能用的AI方法論