使用说明"/>
jetson Xavier的使用说明
文章目录
- 写在前面
- 1 系统的安装以及JetPack
- 1.1 系统
- 1.2 JetPack(可能有误)
- 2 ROS和PCL
- 2.1 ROS的安装
- 2.1.1 修改 source.list
- 2.1.2 部署ROS
- 2.1.3 python版本以及软链接
- 2.2 PCL安装
- 3 xavier的硬件管理
- 3.1 ubuntu下查看硬件的一些命令
- 3.2 好用的Jetson系列检测工具
- Ubuntu的备份
- 4. Xavier的翻墙
- 5. Xavier扩展ssd,蓝牙,无线
写在前面
Nvidia Jetson AGX Xavier的CPU是ARM架构的,ARMv8。64位,集成的NVIDIA Tegra Xavier(nvgpu)显卡。内存32G,据同事说,显存与内存是共享的,因此也是32G。硬盘32G。由于CPU的问题,所以许多东西的使用与PC是不一样的。因此特地写此篇来记录与Xavier有关的,我用到的一些知识。需要注意的是,Xavier一开始的安装我并没有参与,也就是说JetPack那部分我依然不是很明白,只能说一下我的理解。
Jetson wiki有更为全面的介绍:。
1 系统的安装以及JetPack
1.1 系统
Xavier已经自带了一个纯净版的Ubuntu18.04,且附带桌面,仅需使用HDMI线与显示屏相连,即可像普通的电脑一样进行操作。第一次进入系统后,需要记录一下ip地址,在后面的JetPack部分会用到。
1.2 JetPack(可能有误)
具体的操作并不是我完成的,此处可能有误。
- 关闭Xavier
- 用USB Type C将Xavier与 主机host(也就是上位机,上位机应当为Ubuntu16.04或Ubuntu18.04)相连,将Xavier用HDMI与显示屏连接,并用附带的电源线供电。
- Xavier有三个按钮,依次为电源Power,强制恢复Force Recovery和重置Reset。先按下Force Recovery,再按Power,然后一起松开。其他材料的描述是:
找到Xavier机身上那一排按钮(3个),按住中间的Recovery键2~3秒,再按住旁边的Power键2秒后松手,回到主机显示屏上可以看到sdkmanager中正在向Xavier刷写程序了
- 在host上下载并运行jetpack:。
这一步会用到之前说的ip。开始时,需要输入账号,这里直接注册就可以了,这次用的是zj的账号。然后,我们是采用先离线下载,然后安装的方式,因为否则会一直提示硬盘不足。具体的参见网上教程。而在这一步里,理论上会完成cuda tensorRT opencv的安装。即都是从host往Xavier里装的。 - Xavier连接键盘与鼠标,以及显示屏即可正常使用。
2 ROS和PCL
2.1 ROS的安装
2.1.1 修改 source.list
换源需要换 ARM 的源,不要换成了 PC 平台的软件源,Xavier 的系统是Ubuntu18.04,因此需要安装ros-melodic。
sudo vim /etc/apt/sources.list
Xavier清华源:
deb / bionic-updates main restricted universe multiverse
deb-src / bionic-updates main restricted universe multiverse
deb / bionic-security main restricted universe multiverse
deb-src / bionic-security main restricted universe multiverse
deb / bionic-backports main restricted universe multiverse
deb-src / bionic-backports main restricted universe multiverse
deb / bionic main universe restricted
deb-src / bionic main universe restricted
将上述加入sources.list即可,如果连接有显示屏,可以使用gedit。
2.1.2 部署ROS
Nvidia Jetson Xavier部署ROS跟PC上稍微有些不同,是可以直接通过脚本来安装的:
$ git clone .git
$ cd installROSXavier
$ ./installROSXavier
$ ./setupCatkinWorkspace.sh [optionalWorkspaceName]
这里面一共有两个脚本,第一个脚本就是安装ros本身,第二个脚本是初始化ros的工作空间,可选项可以命名ros工作空间名字,默认是创建在home目录下的。最后为了方便起见,在~/.bashrc
中加入source /opt/ros/melodic/setup.bash
。
需要注意的是,ROS严重的依赖于Python2.7,因此执行上述操作前一定要确保python指向的版本正确。否则上述两个脚本在运行过程中均会出错。下面介绍下关于软链接的知识。
2.1.3 python版本以及软链接
1.查看python这个可执行文件的所在位置
which python
which、whereis、locate、find命令区别如下:
- which 只能寻找可执行文件 ,并在PATH变量里面寻找。
- whereis 从linux文件数据库(/var/lib/slocate/slocate.db)寻找,所以有可能找到刚刚删除,或者没有发现新建的文件。全部匹配
- locate 同上,不过文件名是部分匹配。
- find 是直接在硬盘上搜寻,功能强大,但耗硬盘,一般不要用。
2.python版本查看
python --version
3.查看软链接
ls -il
4.删除软链接
sudo rm xxx
5.新建软链接
sudo ln -s /usr/bin/python2.7 /usr/bin/python
其中前为源文件,后为生成的乱链接文件。
除了上述方法以外,如果需要频繁的切换python版本,可以考虑使用update-alternatives
,具体操作如下:
#设置python2为默认,优先级为100,越高越优先
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 100
#设置python3为默认,优先级为150
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 150
#可以任意切换版本了
sudo update-alternatives --config python
但需要注意的是,由于Ubuntu严重地依赖于自带的python版本,因此在进行版本升级的时候,必须删除所有的alternatives,并恢复python和python3的软链接(详见)。
另外,由于Ubuntu不会默认安装pip和pip3,因此有需要的得自己手动安装:
sudo apt install python-pip
sudo apt install python-pip3
2.2 PCL安装
安装方式有两种,一种是利用apt,$ sudo apt install libpcl-dev
,另一种是从github上git下来自己进行编译。相对来说,第一种比较简单,且使用的是稳定版本。目前安装的话会是pcl-1.8,而从源码安装的好处在于,可以使用相对更新的一些特性。但是从嵌入式工程的角度来讲,由于基本不连接外网,因此还是少升级为妙,等遇到了bug再说。
不过这一部分主要还是按照需要来。
3 xavier的硬件管理
3.1 ubuntu下查看硬件的一些命令
1.查看当前操作系统内核信息
uname -a
2.查看当前操作系统发行版信息
cat /etc/issue
3.查看cpu型号
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
4.查看cpu运行模式(即当前运行的位数)
getconf LONG_BIT
5.查看cpu是否支持64bit
cat /proc/cpuinfo | grep flags | grep ' lm ' | wc -l
结果大于0,则说明支持64bit计算. lm指long mode, 支持lm则是支持64bit。
6.查看cpu信息概要
lscpu
7.CPU的详细信息
cat /proc/cpuinfo
3.2 好用的Jetson系列检测工具
当然也可以使用top或者htop来检测,但实际上有更适合Jetson的工具——jetson_stats,GitHub地址:。这个工具需要用pip来进行安装。
1.安装
sudo -H pip install jetson-stats
加了-H以后,会设置HOME这个环境变量到root的目录。
2.更新
sudo -H pip install -U jetson-stats
3.使用
jtop
可能会提示reboot,如果想先看看效果可以加一个sudo强制运行。除了可以查看硬件状况外,还可以进行模式的切换,调整风扇转速。
4.其他工具
查看Jetpack,L4T,以及安装的库的版本:
sudo jetson_release
更多命令见相应的GitHub的ReadMe。
Ubuntu的备份
4. Xavier的翻墙
懒得找基于arm架构的翻墙软件,由于xavier的翻墙环境基本都在室内,即旁边可以有一台host,因此直接走host的代理即可。假设host的ip是192.168.0.100,代理方式是socks,代理端口是1080,则将host的小飞机设好以后,给xavier的设置代理192.168.0.100:1080。
5. Xavier扩展ssd,蓝牙,无线
更多推荐
jetson Xavier的使用说明
发布评论