首先声明一点,jetson nano 使用的是Ubuntu18.04版本的,所以安装ros需要安装Melodic版本,相对于noetic对应的是ubuntu20版本,kinetic则是16.04版本。
要求内存卡足够大,最好是32G以上的。
安装流程
1、将安装源添加到source.list(以下源使用一个就可,建议中科大或者中山大学的)
#官方源(速度太慢不建议使用,除非能科学上网)
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
#中科大的源,建议使用国内的源,速度会比较快
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'
2、添加公钥和更新系统(公钥选一个就可,不行可以换一个试试)
#密钥可能会过期,可以试试(二选一,2021.7.13两个均可正常使用)
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 8D5A09DC9B929006
#添加密钥之后,更新下apt
sudo apt update
3、安装ROS(内存卡小,还是不建议全部安装)
ROS有多个类型:Desktop-Full、Desktop、ROS-Base。
官方推荐安装Desktop-Full。
$ 全版本
sudo apt install ros-melodic-desktop-full
上面的命令是把ROS, rqt, rviz, robot-generic libraries, 2D/3D simulators一起安装了
$桌面版本
sudo apt install ros-melodic-desktop
虽然ROS Desktop Full是个更完整的版本,但不建议用于嵌入式平台,因为2D/3D的模拟器都将同时安装上去,这会使ROM占用太多空间,并且会因为计算量太大,可能会无法在jetson nano上使用。
$基础版本
sudo apt-get install ros-melodic-ros-base
这个命令是安装ros基础包,
4、初始化ROS
sudo rosdep init
rosdep update
注意可能出现的问题
rosdep init和rosdep update问题
请参考
ROS各种报错解决_MUCH_WAY的博客-CSDN博客
补充还有一条是usr/lib/python2.7dist-packages/rosdep2/gbpdistro_support.py里面的也要改一下
$安装一些依赖包
apt install -y python-rosinstall python-rosinstall-generator python-wstool build-essential python-rosdep2 vim openconnect openssh-server
$再次执行步骤四
5、将配置信息写入环境变量
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc
$测试roscore,若报错
若上述步骤均正常,择选择重启在进行roscore测试
6、安装依赖包
sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential
7、安装turtlesim功能包
sudo apt install ros-melodic-turtlesim
8、测试一下ROS是否正确安装(开启三个终端分别运行)
#打开终端1
roscore
#然后打开终端2
rosrun turtlesim turtlesim_node
#然后终端3
rosrun turtlesim turtle_teleop_key
能够看到小乌龟就可以愉快使用了。