---
# System prepended metadata

title: Orino nano

---

# **Orin nano**
## 版本確認
- [x] python 3.8
- [x] CUDA 11.4
- [x] Cudnn default (8.6.0.166)
- [x] opencv 4.5.4
- [x] ROS noetic
- [x] turtlebot burger
- [x] realsense 2
- [x] pytorch 2.1.0
- [x] torchvision 0.15.2
- [x] torch2trt 0.4.0
- [x] cuda on
- [x] cvbridge

```

source init.sh
roslaunch realsense2_camera rs_aligned_depth.launch
roslaunch turtlebot3_bringup turtlebot3_robot.launch
roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch
rosbag record --all


```









---
## 目前進度
裝好 ros 及 rosdep 可以嘗試官網的練習
orin 的 ROS 似乎需要搭配ZED SDK 但也有能配合real-sense的
嘗試將cuda on (succes)


https://www.youtube.com/watch?v=art0-99fFa8
https://github.com/mdegans/nano_build_opencv/tree/master


##  Realsense2
```
sudo apt-get install v4l-utils
sudo apt-get install ros-noetic-realsense2-camera
sudo apt-get install ros-noetic-rgbd-launch
```

## Turtlebot3

```
接著clone turtlebot3相關的github並編譯，  
建議新開一個ROS的workspace，  
我把ws放在~/Desktop/ROS_project/NX，也可以放在/home目錄下，  
需要先mkdir workspace，  
`$ cd ~/Desktop/ROS_project/NX/src`  
`$ git clone https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git`  
`$ git clone https://github.com/ROBOTIS-GIT/turtlebot3.git`  
回到workspace目錄下進行編譯，  
`$ cd .. && catkin_make`  
若catkin_make沒有出錯代表Turtlebot3的準備工作完成了
記好IP後編輯環境變數，  
`$ sudo nano ~/.bashrc`  
特別注意 如果額外做workspace
要補這行
`source /home/jetson/Desktop/ros_project/turtlebot/devel/setup.sh
`
在文件最後面加上這兩行，  
`export ROS_MASTER_URI=http://192.168.0.105:11311`  
`export ROS_HOSTNAME=192.168.0.105`  
完成後存檔，並套用環境變數，  
`$ source ~/.bashrc`  
```

## rtabmap
在重製過後的orin nano
需要先多開swap空間
才可以編譯的過
https://blog.csdn.net/weixin_44796670/article/details/121234446

## Pytorch &torchvision

安裝pytorch 要用sudo
後面torch2trt才可以成功

https://forums.developer.nvidia.com/t/pytorch-for-jetson/72048
Nvidia裡面有講解jetpack版本搭配
根據裡面的內容去選版本
參考裡面下載
Pytorch 2.1.0
Torchvision 0.15.2
https://blog.csdn.net/weixin_44604409/article/details/132334866
![torch_check](https://hackmd.io/_uploads/S1WHH8sma.png)


## Torch2trt

要有pytorch安裝好才能跑torch2trt的安裝



---
## 預計目標
- [ ] 重現ORB-SLAM2
- [ ] 學習TUM
- [ ] turtlebot


## 遇到問題
1. ![圖片](https://hackmd.io/_uploads/HJze_tlva.png)
原因:沒有正確完成對realsense-ros的處理
解決辦法:
```
cd ~/catkin_ws/src/realsense-ros/      
git checkout `git tag | sort -V | grep -P "^2.\d+\.\d+" | tail -1`
cd ~/catkin_ws
catkin_make clean            
catkin_make
```
網址: https://blog.csdn.net/Nico_jion/article/details/128526333



2. ![ros_realsense_error](https://hackmd.io/_uploads/rkcSWclPp.png)
這個問題是roslaunch_rs_camera.launch沒有指到對的路徑，如果指到opt下面的就可以。

3. ![131353359-bc3d50e8-5956-468f-aa67-4a7ccab7ee8b](https://hackmd.io/_uploads/r1tP3GDPT.png)
這個問題是在跑ORB-SLAM2的時後會跳出來的，原因是Pangolin版本太高，需要降成0.5版

4. ![usleep_error](https://hackmd.io/_uploads/ry9qTMPv6.png)
解法：在對應的.h裡面加上#include <unistd.h>

5. ![rosrun_error](https://hackmd.io/_uploads/By7SOYzOp.png)
http://keenster.cn/2021/01/24/Realsense435i_ORB/
其實主要是"-march=native"的問題