系统版本:ubuntu16.04(aarrch64-Linux),ROS版本:kinect版,ORB-SLAM2,摄像头kinect V1
一、前言
事情不复杂就是过程有点麻烦,大部分遇到的问题都是依赖库和驱动问题,涉及代码的问题很少(毕竟开源人家写好的)
二、jetson刷机
刷机教程https://blog.youkuaiyun.com/weixin_38593194/article/details/84539596
刷机过后的Jetson TX2自带nvidia和ubuntu两个名字的系统,初始密码跟用户名相同,系统:ubuntu16.04,建议一开始调试接个显示器,速度快,必须使用hdmi-hdmi的线,不能通过vga转接头。
更新安装源
该ubuntu系统是ARM版本的linux系统,ARM源比较少,并且速度比较慢,现在更新成中科大的镜像源。
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo nano /etc/apt/sources.list
Jetson TX2一开始默认是没有装nano编辑器的,需要先安装nano编辑器,默认安装vim,直接使用sudo vim /etc/apt/sources.list可以。
在文件末尾添加如下内容:
deb http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial main restricted universe multiverse
deb http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-updates main restricted universe multiverse
deb http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-security main restricted universe multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial main restricted universe multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-updates main restricted universe multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-security main restricted universe multiverse
最后
sudo apt-get update
启动自带摄像头
打开Jetson TX2的终端
写入命令:nvgstcapture-1.0 ,摄像头就会起来了
1. –prev_res 预览视屏的分辨率,高度和宽度,用的是CSI摄像头的话范围是 2 to 12 (5632x4224)
nvgstcapture-1.0 --prev-res=3
–cus-prev-res 自定义预览分辨率,宽度和高度,仅支持CSI摄像头
nvgstcapture-1.0 --cus-prev-res=1920x1080
多个命令同时使用的话用!隔开,想关掉摄像头的额话,直接在终端输入q再按回车,想捕获图片的话,在终端输入j再按回车,图片将保存当前目录下。
三、安装ROS
参考http://wiki.ros.org/kinetic/Installation/Ubuntu
以下是我的步骤
注意很多博客说的ROS indigo实在ubuntu14.04下,16.04不支持,应该安装kinect或者其他版本(各个版本之间差距不大)
(1)设置系统软件
(2)设置计算机以接受packages.ros.org中的软件
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
(3)获取密钥
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F42ED6FBAB17C654
注意:这里可能碰到一个问题——“无法连接服务器,无法获取密钥,无有效的数字签名认证”等报错,可以尝试更换上面key后面的密钥解决问题。
获取密钥成功如下