安装目录
- orin刷机
- 谷歌输入法
- ROS
- 遇到的问题:
- 1、sudo rosdep init
- 2、rosdep update
- librealsense+realsense_ros
- 安装librealsense
- 安装realsense_ros
- 总的来说就是,注意librealsense和realsense-ros的版本,对于librealsense,采用源码安装并跳过版本匹配的步骤;对于realsense-ros也采用源码安装,修改CMakeLists.txt,添加opencv,最好将源码放在你自己工程目录里一起catkin_make。
orin刷机
这个已经有很多博主都刷过了,参考一下连接就知道了,但是我的经验是刷1.9.1的sdkmanager,1.9.0的sdkmanager我刷的会出现BSP和Multimedia安装失败的情况,不知道对有后续的使用有无影响
参考连接1: link
参考连接2: link
谷歌输入法
由于是arm架构,安装谷歌输入法
参考链接: link
ROS
由于orin刷机得到的是ubuntu20.04,对应ros1为noetic版本
参考链接: link
遇到的问题:
1、sudo rosdep init
ERROR: cannot download default sources list from:
https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
通过IPAddress.com首页,输入raw.githubusercontent.com查询到真实IP地址
然后修改hosts Ubuntu,
sudo gedit /etc/hosts
添加以下内容保存即可
这个每个时间段的不一样,大家可以自己去搜一下
我的是:199.232.96.133 raw.githubusercontent.com
2、rosdep update
ERROR: error loading sources list:
(‘The read operation timed out’,)
这个又说是网络的原因,换热点或者是多试几次,我试了一天,没用
可以先运行一下
sudo apt-get update
librealsense+realsense_ros
这里解释一下相关版本的依赖
首先由于项目需要,使用的是ros1,而对于ros1,realsense_ros仅仅支持到V2.3.2版本,realsense_ros V2.3.2支持的librealsense的版本为2.50.0
安装librealsense
前面走了不少弯路,经验所的还是要多看官方给的安装教程,不要直接搜别人的安装教程
官方给的jetson设备的安装连接为:https://github.com/IntelRealSense/librealsense/blob/master/doc/installation_jetson.md
之前在xavier上安装都是直接用
https://github.com/IntelRealSense/librealsense/blob/master/doc/distribution_linux.md
上的,但是最后也安装成功了,也算是侥幸把。。。这次最开始也是用的这个,但是可能是orin的内核版本不支持这样安装,不太行。
https://github.com/IntelRealSense/librealsense/blob/master/doc/installation_jetson.md
在官方给的教程中,对于jeston给出了三种方式安装librealsense
首先第一种是debin包,这个在orin上直接定位不到librealsense2-utils和 librealsense2-dev两个包,我觉得还是和内核有关吧
第二个是RSUSB Backend,这个方式也试过,能够安装但是最后也会报错,查一遍也不知道什么错
第三种是Native Backend,本地源码编译,这个也是玄学,要求的内核版本中有并没有orin上的5.10,所以在Build and Patch Kernel Modules for Jetson L4T时是不支持的,所以直接跳过这一步,安装其他的部分后,运行realsense-viewer后可以用。
要注意的是,我用的源码是上面所说的2.50.0把版本的
安装realsense_ros
由于我用的是ros1.,对应的官方安装教程为:https://github.com/IntelRealSense/realsense-ros/tree/ros1-legacy
教程中也是提供两种方式:
第一种为The ROS distribution:
sudo apt-get install ros-$ROS_DISTRO-realsense2-camera
sudo apt-get install ros-$ROS_DISTRO-realsense2-description
直接两行代码就可以了,连上面的librealsense都不用安装了,但是我试了一下报错了,imu用不了。
第二种是The RealSense™ distribution:
这个首先是安装librealsense,也就是上面的第3种方法,接下来使用源码安装realsense_ros,注意版本对应,我是用的是v2.3.2.安装完后运行相机出现undefined symbol: _ZN2cv3MatC1Ev这个问题
在issues中找到相关的解决办法https://github.com/IntelRealSense/realsense-ros/issues/2467
简单来说就是
1、librealsense使用本地源码和cuda编译,并且跳过匹配内核的步骤
2、将realsense_ros的源代码放在自己的工程目录里,这个我在后面试验了一下,也不是必须的
3、修改realsense-ros的CMakeLists.txt,在3个地方添加opencv
总的来说就是,注意librealsense和realsense-ros的版本,对于librealsense,采用源码安装并跳过版本匹配的步骤;对于realsense-ros也采用源码安装,修改CMakeLists.txt,添加opencv,最好将源码放在你自己工程目录里一起catkin_make。
不知道是不是侥幸,仅供大家参考,最后把所用到的版本信息如下表所示:
项目 | 版本 |
---|---|
设备 | Jetson AGX Orin |
sdkmanager | 1.9.1 |
ros | noetic |
librealsense | 2.50.0 |
realsense-ros | 2.3.2 |