ROS安装

操作系统16.04 Ubuntu kylin

主要注意内容 ros自带proto。如果搞TensorFlow的话再安装会导致新老版本冲突请看(https://blog.youkuaiyun.com/qq_16775293/article/details/80746238)

在ros开发中。用到了TensorFlow以及cv2,这是个很麻烦的事情,因为ros的setup.bash会默认优先python2.7的cv2,导致python3没得用,可以看这个教程loading shared libraries

https://blog.youkuaiyun.com/cv_you/acticle/details/77341631

如果遇到ImportError:/opt/ros/kinetic/lib/python2.7/dist-packages/cv2.so,可以看https://stackoverflow.com/questions/43019951/after-install-ros-kinetic-cannot-import-opencv

 

 

1.安装ros

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'

 

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

sudo apt-get update && sudo apt-get upgrade

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

  1. 配置ros

sudo rosdep init && rosdep update学校的有线可能会让sudo rosdep init && rosdep update不能安装)

 

3.ros环境变量

echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrcsource ~/.bashrc

 

遇到的问题:

无法获得锁 /var/lib/dpkg/lock -open (11:资源暂时不可用)

解决办法如下:
1。终端输入 ps  aux ,列出进程。找到含有apt-get的进程,直接sudo kill PID。
2。强制解锁,命令
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock

 

错误:default sources list file already exists
在运行 sudo rosdep init 时可能出现如下错误:
ERROR: default sources list file already exists:
/etc/ros/rosdep/sources.list.d/20-default.list
Please delete if you wish to re-initialize
通常这是因为你之前曾经安装过 ROS 系统的某个版本,只需按照提示删除已经存在的初始化文件即可:

下载和编译

  1. 克隆或下载ROS-Academy-for-Beginners教学包到工作空间的/src目录下,例如 ~/catkin_ws/src

$ cd ~/catkin_ws/src

$ git clone https://github.com/DroidAITech/ROS-Academy-for-Beginners.git

  1. 安装教学包所需的依赖

$ cd ~/catkin_ws

$ rosdep install --from-paths src --ignore-src --rosdistro=kinetic -y

  1. 编译并刷新环境

$ catkin_make

$ source ~/catkin_ws/devel/setup.bash

  1. 运行示例

 

运行须知

  1.  

建议在本地Ubuntu 16.04下运行仿真程序。目前Gazebo模拟器的兼容性是一大问题,在虚拟机或配置较低的电脑上可能无法运行。如果你的显卡是N卡,建议安装Ubuntu下的显卡驱动

  1.  

 

运行Gazebo仿真程序robot_sim_demo前,请将Gazebo升级到7.x版本以上(推荐7.9版本)。

  1.  

查看Gazebo版本方法

$ gazebo -v   #确认7.0以上,推荐7.9

升级方法

$ sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'

$ wget http://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -

$ sudo apt-get update

$ sudo apt-get install gazebo7

  1. 确保所有依赖都已安装,如gazebo_rosgmappingslam_kartoamcl
  2. Gazebo遇到参数无效的时候敲命令export SVGA_VGPU10=0

 

 

### ROS 安装教程 ROS(Robot Operating System)的安装方法因操作系统和版本的不同而有所差异。以下是基于Ubuntu 20.04和ROS 2的安装指南[^1],以及ROS Noetic在Ubuntu上的安装步骤[^3]。 #### Ubuntu 20.04上安装ROS 2 1. **设置语言环境** 确保系统语言环境已正确配置为UTF-8编码。可以通过以下命令检查和设置: ```bash locale # 检查当前语言环境 sudo update-locale LANG=en_US.UTF-8 ``` 2. **设置源和密钥** 添加ROS 2的软件源并导入密钥: ```bash sudo apt update && sudo apt install curl gnupg2 lsb-release curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo gpg --dearmor -o /usr/share/keyrings/ros-archive-keyring.gpg echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null ``` 3. **安装ROS 2包** 更新APT缓存并选择需要的ROS 2版本进行安装: ```bash sudo apt update sudo apt install ros-foxy-desktop # Foxy Fitzroy为例 ``` 4. **环境设置** 配置环境变量以便访问ROS 2工具: ```bash source /opt/ros/foxy/setup.bash echo "source /opt/ros/foxy/setup.bash" >> ~/.bashrc ``` 5. **初始化rosdep** 初始化和更新rosdep以管理依赖项: ```bash sudo rosdep init rosdep update ``` 6. **测试示例** 运行一个简单的ROS 2节点来验证安装是否成功: ```bash ros2 run demo_nodes_cpp talker ros2 run demo_nodes_cpp listener ``` #### Ubuntu 上安装 ROS Noetic 1. **添加ROS源** 配置APT软件源以包含ROS Noetic: ```bash sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654 ``` 2. **安装Desktop-Full版本** 安装完整的ROS Noetic桌面环境: ```bash sudo apt update sudo apt install ros-noetic-desktop-full ``` 3. **环境变量配置** 将ROS环境变量添加到用户的shell配置文件中: ```bash echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc source ~/.bashrc ``` 4. **依赖项管理** 初始化rosdep并更新其数据库: ```bash sudo rosdep init rosdep update ``` 5. **测试安装** 使用`roscore`命令启动核心服务以验证安装是否正常: ```bash roscore ``` ### 注意事项 - 如果需要卸载ROS 2或ROS Noetic,可以分别使用以下命令: ```bash sudo apt remove ros-foxy-* # ROS 2 Foxy sudo apt remove ros-noetic-* # ROS Noetic ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值