这段时间由于工作的需要,要在jeston nano之中安装ros系统。jeston nano之中对应的系统是ubuntu18.04所对应的ros系统版本为ROS Melodic。在安装的过程之中遇见了很多的坑,特此记录一下。
1.首先应该先更换默认源
由于jeston nano之中默认配置的是国外的源,速度特别慢,因此换为清华大学的源完美可用。首先备选原本的源文件。
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo gedit /etc/apt/sources.list
删除里面所有的文件(注释掉也行)然后将下列源放在文件之中。
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted universe
保存后,之后打开终端运行下面这句进行更新`
sudo apt-get update
sudo apt-get upgrade
2添加ros源
打开终端,输入一下命令:
sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'
添加秘钥
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
这里秘钥要是过期了也没事,应为现在ros都已经开源了,不影响安装。
这里同样的需要更新一下输入如下命令
sudo apt-get update
sudo apt-get upgrade
更新完之中输入
3 安装ros系统
sudo apt-get install ros-melodic-desktop-full
注意不同的ubuntu对应的ros系统版本不一样,jeston nano中安装的是ubuntu18.04对应的是ros-melodic版本,其他的系统请跟换为对应的版本。
然后就需要初始化ros
sudo rosdep init
这一步可能会报错出现
解决办法为终端输入
sudo gedit /etc/hosts
打开hosts在hosts之中添加
151.101.84.133 raw.githubusercontent.com
再次运行可能会报错
error:default sources list file already exists:
/etc/ros/rosdep/sources.list.d/20-default.list please delete if you wish to re-initialize
这是因为之前生成的文件没有删除,输入以下命令删除文件
sudo rm /etc/ros/rosdep/sources.list.d/20-default.list
再次运行
sudo rosdep init
就好啦
要是出现:sudo : rosdep: command not found。就输入
sudo apt-get install python-rosdep
然后重新执行命令
sudo rosdep init
sudo rosdep update
其中sudo rosdep update命令执行只能说看命了,这个网确实不稳定。我执行了2天才完成。不过可以通过更改 /usr/lib/python2.7/dist-packages/rosdep2/下的三个文件sources_list.py、gbpdistro_support.py、rep3.py
中的DOWNLOAD_TIMEOUT = 15.0值,改大一点以增加成功的概率。(我看其他博客有人说连手机热点成功率会高一些,但是由于jeston没有wifi模块所以没法尝试)
用gedit来修改
sudo gedit /usr/lib/python2.7/dist-packages/rosdep2/gbpdistro_support.py
4 ros系统环境配置
首先将ros系统变量写入系统
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
再执行
source ~/.bashrc
然后安装rosinstall
sudo apt-get install python-rosinstall
4.ros测试
利用小海龟Demo进行测试
打开终端运行
roscore
在重新打开一个终端输入 下载turtlesim
sudo apt-get install ros-melodic-turtlesim
然后输入
rosrun turtlesim turtlesim_node
这里屏幕就会出现
若是想要控制小乌龟移动的话就输入
rosrun turtlesim turtle_teleop_key
就可以采用键盘上的上下左右控制小乌龟了。
ps:其中还有一些魔改的地方都忘了,反正大致就是这么一个流程。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)