0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

怎樣在Ubuntu上安裝Ros Indigo

454398 ? 來源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2019-12-06 17:54 ? 次閱讀

我想在Ubuntu上安裝ROS indigo,但在安裝和設(shè)置iRobot Create之后,我找不到一個(gè)僅適用于iRobot Create的指南,因此我將制作一個(gè)

怎樣在Ubuntu上安裝Ros Indigo

步驟1:首先安裝Ubuntu

首先,您應(yīng)該通過雙重安裝ubuntu 14.04

步驟2:使用您當(dāng)前的操作系統(tǒng)啟動(dòng),或者在VMWare Workstation(Windows)或VMWare Fusion(Mac)中啟動(dòng)(請(qǐng)勿使用oragle virtualbox,它不能與usb一起使用!)

設(shè)置您的Sources.list

Ubuntu 14.04(可信任)

在終端中運(yùn)行此行,然后輸入密碼

sudo sh -c‘echo“ deb http://packages.ros.org/ros/ubuntu trusty main”》/etc/apt/sources.list.d/ros-latest.list’

設(shè)置密鑰

wget https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -O-| sudo apt-key add-

步驟3:安裝

通過運(yùn)行此命令開始

sudo apt-get update

完成后,運(yùn)行此

sudo apt-get install ros-indigo-desktop-full

然后

sudo apt-get install python-rosdep python-wstool ros-indigo-ros

現(xiàn)在我們需要初始化rosdep

sudo rosdep init

rosdep更新

步驟4:設(shè)置工作區(qū)

在終端上執(zhí)行此操作以設(shè)置工作空間

mkdir?/rocon

cd?/rocon

wstool init -j5 src https://raw.github.com/robotics-in-concert/rocon/indigo/rocon.rosinstall

source/opt/ros/indigo/setup.bash

rosdep install-從路徑src -i -y

catkin_make

mkdir?/kobuki

cd?/kobuki

wstool init src -j5 https://raw.github.com/yujinrobot/yujin_tools/master/rosinstalls/indigo/kobuki.rosinstall

source?/rocon/devel/setup.bash

rosdep install --from-paths src -i -y

catkin_make

mkdir?/turbotbot

cd?/turtlebot

wstool init src -j5 https://raw.github.com/yujinrobot/yujin_tools/master/rosinstalls/indigo/turtlebot.rosinstall

源?/kobuki/devel/setup.bash

rosdep install --from-paths src -i -y

catkin_make

如果rosdep安裝步驟是?/turtlebot無法說明無法找到create_dashboard和create_gazebo_plugins,請(qǐng)確保您在rosdep install命令中使用“ -r”,并且即使無法找到create_dashboard或create_gazebo_plugins,該操作仍將繼續(xù)。

為了方便起見

echo“ source?/turtlebot/devel/setup.bash” 》》?/.bashrc

步驟5 :網(wǎng)絡(luò)時(shí)間協(xié)議

安裝Chrony

sudo apt-get install chrony

手動(dòng)同步NTP

sudo ntpdate ntp.ubuntu.com

步驟6:為IRobot Create設(shè)置Turtlebot

運(yùn)行此命令以為iRobot創(chuàng)建龜機(jī)器人

回顯“ export TURTLEBOT_BASE = create” 》》?/turtlebot/devel/setup.sh

echo“ export TURTLEBOT_STACKS = circles” 》》?/turtlebot/devel/setup.sh

echo“ export TURTLEBOT_3D_SENSOR = kinect” 》》?/turtlebot/devel/setup.sh

回顯“導(dǎo)出TURTLEBOT_SERIAL_PORT =/dev/ttyUSB0” 》》?/turtlebot/devel/setup.sh

源?/turtlebot/devel/setup.bash

并記住將您的用戶添加到撥出

sudo adduser用戶名撥出

僅在您沒有運(yùn)行權(quán)限的情況下執(zhí)行此操作

su-用戶名

步驟7:現(xiàn)在您應(yīng)該可以控制IRobot創(chuàng)建了

現(xiàn)在,您應(yīng)該能夠控制iRobot Create

打開3個(gè)Shell并運(yùn)行以下命令之一每個(gè)shell中的命令

-roscore

-roslaunch turtlebot_bringup minimal.launch

-roslaunch tur tlebot_teleop keyboard_teleop.launch

步驟8:本指南的來源

http://wiki.ros.org/turtlebot/Tutorials/indigo/Ins。 。.

http://wiki.ros.org/indigo/Installation/Ubuntu

http://wiki.ros.org/turtlebot/Tutorials/indigo/Wor 。.

的http://wiki.ros.org/turtlebot/Tutorials/hydro/Crea 。..

https://bugs.launchpad.net/ubuntu/+source/gtkterm/。..

步驟9:制作Irobot的源代碼沿著地板行

/* ------- -------------------------------------------------- -----------------

程序:irobot_linefollower

說明:這個(gè)簡單的程序使iRobot創(chuàng)建(如果已連接)跟隨一行到計(jì)算機(jī)上,該代碼在硬件上運(yùn)行:iRobot使用USB串行電纜創(chuàng)建,您可能需要更改sensor_turn_value以適合iRobot創(chuàng)建軟件:Linux ubuntu 14.04,安裝了ROS indigo Turtlebot工作區(qū)設(shè)置(如果遵循以下ROS indigo安裝指南,它將在那里設(shè)置。)在那里e 2運(yùn)行該程序所需的必需進(jìn)程才能正常運(yùn)行,即-$ roscore//! roscore/master-$ roslaunch turtlebot_bringup minimal.launch//! Turtlebots minimal.launch程序參考:-ROS indigo安裝指南https://www.instructables.com/id/Ros-Indigo-install-on-Ubuntu-1/

日期:2014年12月5日修改:作者:Anders Vestergaard,Jonas Vestergaard,Johansen BenjaminRudkj?rR?nnovPedersen,Emil Blixt Hansen ChristianPr?stegaardMadsen,Benjamin RindomG?thlerAKA小組:AAU大學(xué)的機(jī)器人P1-B304 ----------------- -------------------------------------------------- ------- */

#include//!實(shí)現(xiàn)函數(shù)的邏輯,例如cout函數(shù)#include//!包括ROS系統(tǒng)最常見的公共部分#include//!包含能夠控制Turtlebot的節(jié)點(diǎn)(請(qǐng)閱讀iRobot Create)#include//!包括能夠讀取Turtlebot上的傳感器的節(jié)點(diǎn)(讀取iRobot Create)

//!定義變量浮動(dòng)速度= 0.20;//!控制Turtlebots速度(以米/秒為單位)= 0.00;//!當(dāng)Turtlebot旋轉(zhuǎn)浮動(dòng)時(shí),用于保持旋轉(zhuǎn)速度的變量turn_left_value = 1.0;//!左轉(zhuǎn)浮動(dòng)控制轉(zhuǎn)彎速度turn_right_value = -1.0;//!右轉(zhuǎn)彎的控制轉(zhuǎn)彎速度int ceiling_left_sensor_value = 0;//!變量以保持左懸崖傳感器值int懸崖_右_傳感器_值= 0;//!變量,以保存正確的懸崖傳感器值int sensor_turn_value = 750;//!控制Turtlebot的傳感器值以轉(zhuǎn)回

//!每次將數(shù)據(jù)發(fā)布到“/mobile_base/sensors/core”主題時(shí),都會(huì)調(diào)用此函數(shù)。void ceilingSensorCallback(const create_node :: TurtlebotSensorState :: ConstPtr&msg){懸崖_left_sensor_value = msg-》 cliff_left_signal;//!將主題中的懸崖信號(hào)信號(hào)值存儲(chǔ)到懸崖變量傳感器變量值懸崖信號(hào)傳感器值= msg-》 cliff_right_signal;//!將主題中的懸崖信號(hào)信號(hào)值存儲(chǔ)到懸崖信號(hào)傳感器值//std :: cout 《《懸崖傳感器值《《“”“懸崖傳感器值《《” \ n“;//!調(diào)試:將傳感器值寫入端子。 }//!無效的懸崖傳感器回調(diào)

//!程序的主要功能int main(int argc,char ** argv){//!將變量argc和argv初始化為ros :: init()需要那些變量來執(zhí)行任何ROS參數(shù)

ros :: init(argc,argv,“ robot_driver”);//!初始化ROS,這使ROS可以通過命令行重新命名,最后一個(gè)arugemnt(“ robot_driver”)是我們節(jié)點(diǎn)的名稱。

//!我們將用于與節(jié)點(diǎn)ros :: NodeHandle nh;通信的節(jié)點(diǎn)句柄。//!發(fā)布者ros :: NodeHandle的NodeHandler n;//!訂閱者的NodeHandler

/**!告訴管理員我們將向主題“/cmd_vel_mux/input/teleop”發(fā)布類型為“ geometry_msgs :: Twist”的消息,第二個(gè)參數(shù)“ 1”為發(fā)布隊(duì)列的大小。這意味著我們只會(huì)緩沖一條消息,如果它被迅速發(fā)布。 *///!刪除此內(nèi)容我們將發(fā)布到“/cmd_vel_mux/input/teleop”主題以發(fā)出命令ros :: Publisher cmd_vel_pub = nh.advertise(“/cmd_vel_mux/input/teleop”,1);

/**!告訴主機(jī)我們要訂閱主題“/mobile_base/sensors/core”。每當(dāng)發(fā)布到該主題的消息時(shí),ROS都會(huì)調(diào)用懸崖信號(hào)SensorCallback()函數(shù),第二個(gè)參數(shù)是緩沖區(qū)大小,以防我們無法足夠快地處理信息時(shí)存儲(chǔ)消息。如果我們達(dá)到1000條存儲(chǔ)消息,它將開始刪除消息。 *///!刪除此內(nèi)容我們將訂閱“/mobile_base/sensors/core”主題以獲取傳感器價(jià)值。 ros :: Subscriber sub = n.subscribe(“/mobile_base/sensors/core”,1,懸崖傳感器回調(diào));

geometry_msgs :: Twist base_cmd;//!初始化geometry_msgs :: Twist作為base_cmd函數(shù)

base_cmd.linear.x = base_cmd.linear.y = base_cmd.angular.z = 0;//!也許要移動(dòng)!確保所有向量都設(shè)置為0

while(true){//!始終運(yùn)行的循環(huán)。 ROS :: spinOnce();//!調(diào)用ros :: spinOnce()時(shí),它會(huì)在懸崖傳感器中獲得任何新消息

std :: cout 《《“左懸崖:” 《《懸崖傳感器傳感器值《《“右懸崖:” 《《傳感器傳感器值《《“左轉(zhuǎn)值:” 《

//!驅(qū)動(dòng)命令base_cmd.linear.x = speed;//!將Turtlebot的驅(qū)動(dòng)速度設(shè)置為變量base_cmd.angular.z = turn;//!將Turtlebot的轉(zhuǎn)彎速度設(shè)置為可變轉(zhuǎn)彎

if(cliff_left_sensor_value》 sensor_turn_value){//!檢查左懸崖傳感器值是否大于上面設(shè)置的sensor_turn_value,如果為true,則轉(zhuǎn)彎= turn_left_value;//!將turn變量設(shè)置為turn_left_value以左轉(zhuǎn),直到我們?cè)俅紊暇€。 }

否則if(cliff_right_sensor_value》 sensor_turn_value){//!如果以上為假,則檢查右懸崖傳感器值是否大于上面設(shè)置的sensor_turn_value,如果為true,則進(jìn)行turn = turn_right_value;//!將turn變量設(shè)置為turn_right_value可以右轉(zhuǎn),直到我們?cè)俅紊暇€。 } else {//!如果以上兩個(gè)if均為假,則轉(zhuǎn)為0;否則為0。//!再次將線上的turn變量設(shè)置為0。 }

cmd_vel_pub.publish(base_cmd);//!將驅(qū)動(dòng)命令發(fā)送到“/cmd_vel_mux/input/teleop”}上面定義的主題上! while循環(huán)END

返回0;//!結(jié)束程序}//! int main END
責(zé)任編輯:wv

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Ubuntu
    +關(guān)注

    關(guān)注

    5

    文章

    587

    瀏覽量

    30853
  • INDIGO
    +關(guān)注

    關(guān)注

    0

    文章

    7

    瀏覽量

    7346
收藏 0人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    如何在Ubuntu 22.04安裝NVIDIA顯卡驅(qū)動(dòng)

    Ubuntu 22.04 安裝 NVIDIA 顯卡驅(qū)動(dòng)完整步驟
    的頭像 發(fā)表于 05-20 11:00 ?311次閱讀

    如何在Ubuntu安裝NVIDIA顯卡驅(qū)動(dòng)?

    專有顯卡驅(qū)動(dòng)。本文將詳細(xì)介紹Ubuntu系統(tǒng)安裝NVIDIA顯卡驅(qū)動(dòng)的多種方法,幫助用戶根據(jù)自身情況選擇最適合的安裝方式。 二,硬件參數(shù)
    的頭像 發(fā)表于 05-07 16:05 ?325次閱讀
    如何在<b class='flag-5'>Ubuntu</b><b class='flag-5'>上</b><b class='flag-5'>安裝</b>NVIDIA顯卡驅(qū)動(dòng)?

    MCUxpresso無法安裝ubuntu 24.04怎么解決?

    嗨,我正在嘗試 ubuntu 24.04 安裝 mcuxpresso,但在 libncurses 遇到依賴問題。 有什么技巧可以繞過這
    發(fā)表于 04-07 06:10

    Ubuntu系統(tǒng)的虛擬機(jī)安裝步驟 如何在Ubuntu系統(tǒng)編譯軟件

    Ubuntu系統(tǒng)安裝虛擬機(jī)的步驟 Ubuntu系統(tǒng)安裝
    的頭像 發(fā)表于 12-12 14:36 ?1118次閱讀

    如何在Windows中安裝Ubuntu系統(tǒng)

    Windows中安裝Ubuntu系統(tǒng)通常有兩種方法:使用虛擬機(jī)軟件安裝Ubuntu作為虛擬機(jī),或者使用雙啟動(dòng)
    的頭像 發(fā)表于 12-12 14:29 ?1858次閱讀

    Ubuntu 24.04 LTS安裝飛槳PaddleX

    了眾多開箱即用的預(yù)訓(xùn)練模型,可以實(shí)現(xiàn)模型從訓(xùn)練到推理的全流程開發(fā),支持國內(nèi)外多款主流硬件,助力AI 開發(fā)者進(jìn)行產(chǎn)業(yè)實(shí)踐。 ? 本文將介紹Ubuntu 24.04.1LTS從零開始安裝
    的頭像 發(fā)表于 11-11 17:45 ?746次閱讀
    <b class='flag-5'>在</b><b class='flag-5'>Ubuntu</b> 24.04 LTS<b class='flag-5'>上</b><b class='flag-5'>安裝</b>飛槳PaddleX

    Ubuntu 24.04 BPI-F3 通過 SD 卡安裝并從 NVME 運(yùn)行

    Balena Etcher 等映像程序。您可以購買 USB 轉(zhuǎn) m.2 適配器,亞馬遜購買價(jià)格約為 20 美元。 此啟動(dòng)僅在此版本的 Ubuntu 上得到驗(yàn)證。它應(yīng)該適用于所有版本的 Linux
    發(fā)表于 10-12 15:31

    搭建自己的ubuntu系統(tǒng)之必要庫安裝

    必要庫安裝 進(jìn)行開發(fā)之前,還需要一些其他的必要庫,使用以下命令逐一安裝,安裝前需保證網(wǎng)絡(luò)可正常使用,能上外網(wǎng)。 elf@ubuntu:~$
    發(fā)表于 08-14 08:51

    搭建自己的ubuntu系統(tǒng)之VMware Tools安裝

    VMware Tools安裝上一節(jié)完成了ubuntu系統(tǒng)的安裝,接下來安裝VMware Tools,如果不安裝該工具,
    發(fā)表于 08-12 09:14

    嵌入式學(xué)習(xí)-搭建自己的ubuntu系統(tǒng)之ubuntu系統(tǒng)安裝

    注意:學(xué)習(xí)資料可在ElfBoard官方網(wǎng)站“資料”專區(qū)獲取。系統(tǒng)安裝上一篇我們學(xué)習(xí)了創(chuàng)建ubuntu虛擬機(jī)的方法,這篇給大家介紹虛擬機(jī)中安裝Ubu
    發(fā)表于 08-10 14:01

    搭建自己的ubuntu系統(tǒng)之ubuntu系統(tǒng)安裝

    注意:學(xué)習(xí)資料可在ElfBoard官方網(wǎng)站“資料”專區(qū)獲取。系統(tǒng)安裝上一篇我們學(xué)習(xí)了創(chuàng)建ubuntu虛擬機(jī)的方法,這篇給大家介紹虛擬機(jī)中安裝Ubu
    發(fā)表于 08-10 09:25

    Ubuntu系統(tǒng)安裝之使用提供的ubuntu系統(tǒng)

    的基本操作,在對(duì)Linux系統(tǒng)有了基本了解之后再搭建屬于自己的ubuntu系統(tǒng)。提供的開發(fā)環(huán)境已經(jīng)做了一些基本配置和網(wǎng)絡(luò)服務(wù)的搭建(詳細(xì)內(nèi)容可見開發(fā)環(huán)境中的說明文檔),開發(fā)者可以直接進(jìn)行開發(fā)操作。開發(fā)
    發(fā)表于 08-08 11:00

    Modustoolbox V3.2為什么無法Linux(ubuntu-24.04)安裝

    當(dāng)我們嘗試安裝 modustoolboxV3.2 時(shí) ubuntu-24.04 系統(tǒng)中,它找不到任何 bsp,并顯示以下錯(cuò)誤; 但 CY_PATH_TOOLS 卻顯示正確,怎么辦?
    發(fā)表于 07-24 06:15

    如何在ROS中調(diào)用.so文件

    沒有給ubuntu作配套,也放棄了。淘寶找到一款凌智電子的DAQ,價(jià)格便宜,也能滿足使用需求,故做記錄。 系統(tǒng)環(huán)境 ubuntu20.04 +
    發(fā)表于 07-02 14:44

    如何在ROS中調(diào)用.so文件

    沒有給ubuntu作配套,也放棄了。淘寶找到一款凌智電子的DAQ,價(jià)格便宜,也能滿足使用需求,故做記錄。系統(tǒng)環(huán)境ubuntu20.04+ROSnoetic硬件設(shè)
    的頭像 發(fā)表于 06-30 08:23 ?812次閱讀
    如何在<b class='flag-5'>ROS</b>中調(diào)用.so文件

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會(huì)員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動(dòng)獲取豐厚的禮品