国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

在Docker上運(yùn)行ROS(melodic版本)機(jī)器人項(xiàng)目

這篇具有很好參考價(jià)值的文章主要介紹了在Docker上運(yùn)行ROS(melodic版本)機(jī)器人項(xiàng)目。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

前言?

對(duì)于ROS機(jī)器人項(xiàng)目來(lái)說(shuō),運(yùn)行的環(huán)境可能各不相同,有的需要在Ubuntu18.04下運(yùn)行,有的需要在Ubuntu20.04下運(yùn)行。運(yùn)行環(huán)境的改變,產(chǎn)生使用Docker配置環(huán)境的需求。本人以港科大FUEL的項(xiàng)目為例,嘗試在Docker上安裝ROS-Melodic,并運(yùn)行該無(wú)人機(jī)項(xiàng)目。在本文中,會(huì)引用到很多的鏈接,因?yàn)楸苊庵貜?fù)造論子,本人將踩了一路的坑總結(jié)在文章中,并找到了相應(yīng)的解決辦法,供讀者參考,解決辦法以文字或鏈接的形式在文中體現(xiàn),大家按順序運(yùn)行即可。

?一)Docker內(nèi)運(yùn)行ROS(melodic版本)

1.1? Docker的安裝與配置

如果安裝好了Docker,本節(jié)可以跳過(guò)。

對(duì)于Docker的安裝和相關(guān)配置,可以參考本人的文章。手把手教你使用Docker安裝Ubuntu18.04_豬豬的超超的博客-CSDN博客本文詳講解Docker安裝以及相應(yīng)的配置,如取消root權(quán)限,開(kāi)機(jī)自啟動(dòng),阿里云加速等。最后以安裝Ubuntu18.04為例,講解了如何使用Docker進(jìn)行環(huán)境的搭建。https://blog.csdn.net/weixin_65688914/article/details/133514201?spm=1001.2014.3001.5501需要注意的是,大家不需要再去安裝Ubuntu18.04,因?yàn)橛写笊褚呀?jīng)做好了Ubuntu18.04環(huán)境下且安裝好了ROS(melodic版本)的鏡像,大家只需要去拉取下面這個(gè)鏡像:

osrf/ros:melodic-desktop-full

1.2? Docker拉取并配置ROS鏡像

安裝好Docker之后,我們需要使用Docker工具拉取大神制作的ROS鏡像,參考下面博客即可:

Docker內(nèi)運(yùn)行ROS(melodic版本)以及使用Rviz_docker ros代碼在宿主機(jī)運(yùn)行-CSDN博客Docker內(nèi)運(yùn)行ROS(melodic版本)以及使用Rviz寫(xiě)在前文Docker的安裝以及介紹本文就不再累述了,安裝Docker的版本任意,但是要注意的一點(diǎn)是你是ARM板子還是x86的板子,一般在ARM板上實(shí)現(xiàn)上述功能較為麻煩,如果是在ARM板子上使用Docker+ROS的話可以參考這篇文章http://wiki.ros.org/docker/Tutorials/Hardware%20Acceleration#nvidia-docker1在ROS的官網(wǎng)上有教程,但是還是有些坑的,如果你使用的是Nvi_docker ros代碼在宿主機(jī)運(yùn)行https://blog.csdn.net/qq_40695642/article/details/117607446

docker ros,機(jī)器人快速入門(mén),Docker,ubuntu,機(jī)器人,docker,無(wú)人機(jī)

1.3? 一個(gè)問(wèn)題的解決方案

警告:對(duì)Linux不熟悉的人慎重使用,為保險(xiǎn)起見(jiàn),你最好選擇docker下的容器linux系統(tǒng)開(kāi)發(fā)。如果在容器內(nèi)也出現(xiàn)如下的問(wèn)題,解決方法如下:

【警告或報(bào)錯(cuò)問(wèn)題】:XDG_RUNTIME_DIR not set, defaulting to ‘/tmp/runtime-root‘

1)在/etc/profile末尾增加兩句

export XDG_RUNTIME_DIR=/usr/lib/
export RUNLEVEL=3

2)然后刷新全局變量

source /etc/profile

二)Ubuntu容器環(huán)境配置

2.1? 安裝Openssh

sudo apt-get update ##(更新軟件源)執(zhí)行安裝操作,如果不成功,執(zhí)行第2行指令

sudo apt-get upgrade ##(繼續(xù)更新軟件源)執(zhí)行安裝操作,應(yīng)該能成功 

sudo apt-get install -y openssh-server

2.2? 配置Github的SSH密鑰

我們先使用git clone [通過(guò)ssh協(xié)議拉取倉(cāng)庫(kù)],如果出現(xiàn)下面的問(wèn)題,參考該博客即可解決。

解決方案:Permission denied (publickey). fatal: Could not read from remote repository.https://www.cnblogs.com/wmr95/p/7852832.html在配置完成之后,我們就能使用我們的Docker下的ROS(Melodic版本)的容器,來(lái)運(yùn)行項(xiàng)目啦。

三)運(yùn)行HKUST的無(wú)人機(jī)項(xiàng)目

我們以香港科技大學(xué)的一個(gè)無(wú)人機(jī)項(xiàng)目為例進(jìn)行說(shuō)明。

GitHub - HKUST-Aerial-Robotics/FUEL: An Efficient Framework for Fast UAV ExplorationAn Efficient Framework for Fast UAV Exploration . Contribute to HKUST-Aerial-Robotics/FUEL development by creating an account on GitHub.https://github.com/HKUST-Aerial-Robotics/FUEL我們先在docker容器中,新建一個(gè)文件夾用來(lái)克隆該項(xiàng)目。

mkdir HKUST_FUEL

隨后,我們根據(jù)github上的README文件進(jìn)行操作即可

3.1? 安裝依賴項(xiàng)

  sudo apt-get install libarmadillo-dev ros-melodic-nlopt

3.2 編譯源文件

新建src文件夾(用以catkin_make編譯),遠(yuǎn)程拉取倉(cāng)庫(kù)到本地

在終端依次輸入如下指令

  cd ${YOUR_WORKSPACE_PATH}/src
  git clone git@github.com:HKUST-Aerial-Robotics/FUEL.git
  cd ../ 
  catkin_make

3.3? 解決catkin_make出現(xiàn)的問(wèn)題

【問(wèn)題】:cannot find -ldw

意思是找不到相應(yīng)的包,因此我們需要再去安裝一下相關(guān)的包

docker ros,機(jī)器人快速入門(mén),Docker,ubuntu,機(jī)器人,docker,無(wú)人機(jī)

我們依次輸入如下指令,安裝好所缺的包

apt install libdw-dev

apt install libssl-dev

再去編譯,在終端輸入catkin_make,就可以完成編譯啦!?docker ros,機(jī)器人快速入門(mén),Docker,ubuntu,機(jī)器人,docker,無(wú)人機(jī)

3.4? 運(yùn)行項(xiàng)目

我們打開(kāi)兩個(gè)終端,分別進(jìn)入到docker容器中

在兩個(gè)終端都輸入如下指令

docker exec -it rocker bash????????#以交互的方式運(yùn)行容器

在兩個(gè)終端中,都 cd 到我們運(yùn)行項(xiàng)目的文件夾

在第一個(gè)終端輸入:

  source devel/setup.bash && roslaunch exploration_manager rviz.launch

在第二個(gè)終端輸入:

  source devel/setup.bash && roslaunch exploration_manager exploration.launch

?就可以看到電腦打開(kāi)了rviz,并正在運(yùn)行項(xiàng)目啦,我們點(diǎn)擊右上角的?2D NAV Goal?,然后在地圖中點(diǎn)擊一下,就能看到無(wú)人機(jī)的建圖過(guò)程啦!

docker ros,機(jī)器人快速入門(mén),Docker,ubuntu,機(jī)器人,docker,無(wú)人機(jī)

docker ros,機(jī)器人快速入門(mén),Docker,ubuntu,機(jī)器人,docker,無(wú)人機(jī)

?四)存在的一些問(wèn)題及改進(jìn)方案

4.1? 問(wèn)題一:rviz卡頓

項(xiàng)目能正常運(yùn)行了,但是存在一個(gè)問(wèn)題,就算rviz節(jié)目較為卡頓,而且點(diǎn)擊最小化之后,rviz直接卡了,讀者不妨試一試。這是因?yàn)閐ocker占用和依賴的是本機(jī)的顯卡資源,通過(guò)X協(xié)議在電腦中展現(xiàn)rviz的圖像化界面。因此在運(yùn)行項(xiàng)目時(shí),需要注意不要將rviz最小化

4.2? 問(wèn)題二:打開(kāi)多個(gè)終端煩瑣

在3.4中,我們運(yùn)行項(xiàng)目的時(shí)候需要打開(kāi)兩個(gè)終端,過(guò)程非常的煩瑣,由于機(jī)器人項(xiàng)目經(jīng)常需要打開(kāi)多個(gè)終端,為了解決這個(gè)問(wèn)題,對(duì)于本機(jī)來(lái)說(shuō),有實(shí)用的軟件Terminator。

對(duì)于Docker來(lái)說(shuō)呢,向讀者推薦Tmux,感興趣的讀者可以參考。

Tmux教程 (一文就夠)_LYF0816LYF的博客-CSDN博客Tmux1. Tmux是什么?1.1 基本概念1.2 安裝2. session操作2.1 啟動(dòng)2.2 分離2.3 退出2.4 綁定、解綁、切換session2.5 重命名session3. window操作3.1 新建窗口tmux new-window3.2 切換窗口3.3 重命名窗口4. pane操作4.1 劃分窗格4.2 光標(biāo)位置4.4 關(guān)閉窗格5. 其他操作5.1 tmux上下翻屏使用教程網(wǎng)上相關(guān)的Tmux教程很多,可是看完感覺(jué)不是太細(xì)就是太散,有一些不常用的操作、快捷鍵也寫(xiě)出來(lái)了,感覺(jué)重點(diǎn)不夠突出_tmux教程https://blog.csdn.net/CSSDCC/article/details/121231906

總結(jié)

本文詳細(xì)講解了如何在Docker中運(yùn)行ROS項(xiàng)目,并以香港科技大學(xué)的無(wú)人機(jī)項(xiàng)目為例,進(jìn)行解釋說(shuō)明。旨在手把手教會(huì)讀者上手Docker,并成功運(yùn)行一個(gè)ROS機(jī)器人項(xiàng)目。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-734332.html

到了這里,關(guān)于在Docker上運(yùn)行ROS(melodic版本)機(jī)器人項(xiàng)目的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • ubuntu20.04_ROS中運(yùn)行g(shù)azebo控制機(jī)器人模型報(bào)錯(cuò)

    1.無(wú)法啟動(dòng)類(lèi)型為[controller_ manager/spawner]的節(jié)點(diǎn):controller_ manager ERROR: cannot launch node of type [controller_manager/spawner]: controller_manager ROS path [0]=/opt/ros/noetic/share/ros ROS path [1]=/home/lym/catkin_ws/src ROS path [2]=/opt/ros/noetic/share 解決辦法:安裝controller_manager 2.控制器生成程序找不到預(yù)期的控

    2024年02月16日
    瀏覽(24)
  • ROS 2機(jī)器人編程實(shí)戰(zhàn):基于現(xiàn)代C++和Python 3實(shí)現(xiàn)簡(jiǎn)單機(jī)器人項(xiàng)目

    ROS 2機(jī)器人編程實(shí)戰(zhàn):基于現(xiàn)代C++和Python 3實(shí)現(xiàn)簡(jiǎn)單機(jī)器人項(xiàng)目

    ?? 個(gè)人網(wǎng)站:【海擁】【摸魚(yú)游戲】【神級(jí)源碼資源網(wǎng)】 ?? 前端學(xué)習(xí)課程:??【28個(gè)案例趣學(xué)前端】【400個(gè)JS面試題】 ?? 想尋找共同學(xué)習(xí)交流、摸魚(yú)劃水的小伙伴,請(qǐng)點(diǎn)擊【摸魚(yú)學(xué)習(xí)交流群】 ROS 2是機(jī)器人開(kāi)發(fā)領(lǐng)域中廣泛使用的一個(gè)框架,ROS 2提供了很多功能強(qiáng)大的工具和

    2024年02月02日
    瀏覽(34)
  • 機(jī)器人項(xiàng)目:從 ROS2 切換到 ROS1 的原因

    ???????? 機(jī)器人操作系統(tǒng)ROS是使用最廣泛的機(jī)器人中間件平臺(tái)。它在機(jī)器人社區(qū)中使用了10多年,無(wú)論是在業(yè)余愛(ài)好者領(lǐng)域還是在工業(yè)領(lǐng)域。ROS可用于各種微控制器和計(jì)算機(jī),從Arduino到Raspberry Pi再到Linux工作站,它為電機(jī)控制器,視覺(jué)傳感器,深度攝像頭和激光掃描儀提供

    2024年02月12日
    瀏覽(22)
  • 仿真機(jī)器人-深度學(xué)習(xí)CV和激光雷達(dá)感知(項(xiàng)目2)day03【機(jī)器人簡(jiǎn)介與ROS基礎(chǔ)】

    仿真機(jī)器人-深度學(xué)習(xí)CV和激光雷達(dá)感知(項(xiàng)目2)day03【機(jī)器人簡(jiǎn)介與ROS基礎(chǔ)】

    ??你好,我是辰chen,本文旨在準(zhǔn)備考研復(fù)試或就業(yè) ??本文內(nèi)容是我為復(fù)試準(zhǔn)備的第二個(gè)項(xiàng)目 ??歡迎大家的關(guān)注,我的博客主要關(guān)注于考研408以及AIoT的內(nèi)容 ?? 預(yù)置知識(shí):基本Python語(yǔ)法,基本linux命令行使用 以下的幾個(gè)專(zhuān)欄是本人比較滿意的專(zhuān)欄 (大部分專(zhuān)欄仍在持續(xù)更新

    2024年01月19日
    瀏覽(21)
  • ROS從入門(mén)到精通10-1:項(xiàng)目實(shí)戰(zhàn)之智能跟隨機(jī)器人原理與實(shí)現(xiàn)

    ROS從入門(mén)到精通10-1:項(xiàng)目實(shí)戰(zhàn)之智能跟隨機(jī)器人原理與實(shí)現(xiàn)

    本專(zhuān)欄旨在通過(guò)對(duì)ROS的系統(tǒng)學(xué)習(xí),掌握ROS底層基本分布式原理,并具有機(jī)器人建模和應(yīng)用ROS進(jìn)行實(shí)際項(xiàng)目的開(kāi)發(fā)和調(diào)試的工程能力。 ??詳情:《ROS從入門(mén)到精通》 機(jī)器人是傳感器網(wǎng)絡(luò)、通信、人工智能、分布式計(jì)算、自動(dòng)化等多種技術(shù)的集大成者, 機(jī)器人技術(shù)的發(fā)展水平標(biāo)

    2024年02月07日
    瀏覽(24)
  • 【運(yùn)動(dòng)規(guī)劃算法項(xiàng)目實(shí)戰(zhàn)】如何實(shí)現(xiàn)機(jī)器人多目標(biāo)點(diǎn)導(dǎo)航(附ROS C++代碼)

    【運(yùn)動(dòng)規(guī)劃算法項(xiàng)目實(shí)戰(zhàn)】如何實(shí)現(xiàn)機(jī)器人多目標(biāo)點(diǎn)導(dǎo)航(附ROS C++代碼)

    在ROS機(jī)器人應(yīng)用中,實(shí)現(xiàn)機(jī)器人多目標(biāo)點(diǎn)導(dǎo)航是非常常見(jiàn)的需求。本文將介紹如何使用ROS和actionlib來(lái)實(shí)現(xiàn)機(jī)器人的多目標(biāo)點(diǎn)導(dǎo)航,目標(biāo)點(diǎn)信息將被記錄在YAML文件中。 我們可以通過(guò)使用MoveBaseAction來(lái)實(shí)現(xiàn)機(jī)器人的導(dǎo)航功能。MoveBaseAction是一個(gè)ROS中的action類(lèi)型,它提供了控制機(jī)器

    2024年02月10日
    瀏覽(22)
  • Gazebo-Ros搭建小車(chē)和場(chǎng)景并運(yùn)行slam算法進(jìn)行建圖4--為機(jī)器人添加運(yùn)動(dòng)控制器控制其移動(dòng)

    Gazebo-Ros搭建小車(chē)和場(chǎng)景并運(yùn)行slam算法進(jìn)行建圖4--為機(jī)器人添加運(yùn)動(dòng)控制器控制其移動(dòng)

    1.要想機(jī)器人小車(chē)在gazebo中運(yùn)動(dòng)還需要為其添加運(yùn)動(dòng)插件 在文章3中的my_robot2.urdf 最下邊(前邊)添加如下部分: ? 這里使用的二輪差速控制,選擇對(duì)應(yīng)的插件libgazebo_ros_diff_drive.so 添加上述部分,文章3中的my_robot2.urdf 更新為 --完整代碼如下: 2.使用turtlebot3中的控制機(jī)器人的

    2023年04月11日
    瀏覽(35)
  • linux環(huán)境下監(jiān)控docker進(jìn)程運(yùn)行情況,使用釘釘群機(jī)器人報(bào)警異常服務(wù)

    linux環(huán)境下監(jiān)控docker進(jìn)程運(yùn)行情況,使用釘釘群機(jī)器人報(bào)警異常服務(wù)

    背景:在linux環(huán)境下,很多服務(wù)我們都使用docker來(lái)跑,很是方便,容器服務(wù)獨(dú)立,配置獨(dú)立,數(shù)據(jù)獨(dú)立等等,但是有個(gè)問(wèn)題,就是如果某個(gè)服務(wù)異常了,暫停了,停止了,一直重啟中,我們要怎么及時(shí)的知道是哪個(gè)服務(wù),并進(jìn)行處理,保證業(yè)務(wù)正常運(yùn)行。 本文主要介紹使用

    2024年02月13日
    瀏覽(25)
  • 如何在群暉Docker運(yùn)行本地聊天機(jī)器人并結(jié)合內(nèi)網(wǎng)穿透發(fā)布到公網(wǎng)訪問(wèn)

    如何在群暉Docker運(yùn)行本地聊天機(jī)器人并結(jié)合內(nèi)網(wǎng)穿透發(fā)布到公網(wǎng)訪問(wèn)

    隨著ChatGPT 和open Sora 的熱度劇增,大語(yǔ)言模型時(shí)代,開(kāi)啟了AI新篇章,大語(yǔ)言模型的應(yīng)用非常廣泛,包括聊天機(jī)器人、智能客服、自動(dòng)翻譯、寫(xiě)作助手等。它們可以根據(jù)用戶輸入的文本生成相應(yīng)的響應(yīng),提供個(gè)性化的建議和服務(wù),目前大部分大語(yǔ)言模型的產(chǎn)品都是基于網(wǎng)絡(luò)線上的

    2024年04月11日
    瀏覽(22)
  • ROS的機(jī)器人協(xié)議:實(shí)現(xiàn)機(jī)器人之間的有效通信

    作者:禪與計(jì)算機(jī)程序設(shè)計(jì)藝術(shù) ROS(Robot Operating System)是一個(gè)開(kāi)源的機(jī)器人操作系統(tǒng),其功能主要包括以下幾個(gè)方面: 消息傳遞:ROS通過(guò)消息傳遞的方式進(jìn)行通信,各個(gè)節(jié)點(diǎn)之間可以通過(guò)發(fā)布、訂閱等方式互相通訊。 資源管理:ROS可以對(duì)進(jìn)程、線程、資源進(jìn)行管理,使得不

    2024年02月06日
    瀏覽(24)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包