# ROS 2 - STELLA N1 Pi Camera Module V2 설치 및 구동하기

* ROS 경우 <mark style="color:red;">**네트워크를 통한 통신을**</mark> 기반으로 구현되어 있기 때문에 <mark style="color:red;">**원격 PC 와 SBC가 동일 Wifi 네트워크 망에 연결 되어 있으며 인터넷도 정상 작동하는지 확인 후 진행합니다.**</mark>    &#x20;

- [ ] Pi Camera Module V2 연결

![](https://3471887119-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MhvrKjF6_60tNjTx2_K%2F-MiPqqOzI0ylvnclZqly%2F-MiPu-iiFO1PSc2E4tun%2F057.PNG?alt=media\&token=ac3ac0f3-ee5b-4194-8a57-f96c11da1d44)

* [ ] 싱글보드 Bluetooth 설정 (Raspberry Pi 버전만 실행)

- sudo apt-get update && sudo apt-get upgrade

![](https://3471887119-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MhvrKjF6_60tNjTx2_K%2F-MiPuAMxpTKpHLdXnvBc%2F-MiPu_B8ZuK2CjTmLwjF%2F058.PNG?alt=media\&token=19445638-8263-4f63-b8e9-7c3cdaa004da)

* [ ] 설치 &#x20;

- camera 패키지를 실행하기 위한 기본 설정을 진행합니다.&#x20;
- <mark style="color:red;">**원격PC 새로운 터미널**</mark>에서 SSH로 SBC에 접속합니다.

```
ex) ssh ntrex@192.168.0.xxx 입력 후 패스워드 입력
```

1. &#x20;SBC가 <mark style="color:blue;">**Raspberry Pi**</mark> 인 경우&#x20;

* <mark style="color:red;">**원격PC SSH 접속 터미널**</mark>에서 명령어를 입력합니다. &#x20;

```
cd ~/colcon_ws/src/STELLA_RASPBERRYPI_ROS2/stella_camera/stella_camera/
chmod +x stella_camera.py
```

2\.   SBC가 <mark style="color:blue;">**Jetson Nano**</mark>인 경우&#x20;

```
 cd ~/colcon_ws/src/STELLA_JETSON_NANO_ROS2/stella_camera/stella_camera/
 chmod +x stella_camera.py
```

* [ ] 실행 &#x20;

- camera 패키지를 실행합니다.
- <mark style="color:red;">**원격PC 새로운 터미널**</mark>에서 SSH로 SBC에 접속합니다.

```
ex) ssh ntrex@192.168.0.xxx 입력 후 패스워드 입력
```

* <mark style="color:red;">**원격PC SSH 접속 터미널**</mark>에서 명령어를 입력합니다.&#x20;

```
ros2 launch stella_camera stella_camera.launch.py
ros2 run rqt_image_view rqt_image_view /camera
```

![](https://3471887119-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzIX3JpyMfAzOkeMdsBuU%2Fuploads%2FGQK2SnC6Pu3IgfcE17xY%2FScreenshot%20from%202021-10-29%2014-58-26.png?alt=media\&token=6dc287c1-2573-49dd-997e-1b1ff872b6b2)

* [ ] UI 이용 camera 실행&#x20;

- <mark style="color:red;">**원격 PC 새로운 터미널**</mark>에서camera 기능이 추가된 UI를 다운로드 후, 컴파일을 진행합니다.

```
cd ~/colcon_ws/src/
git clone https://github.com/ntrexlab/STELLA_UI_CAMERA_ROS2.git
cd ~/colcon_ws/src/STELLA_UI_CAMERA_ROS2/stella_ui_camera/stella_ui_camera/
chmod +x stella_ui_dialog.py
cd ~/colcon_ws/
colcon build --symlink-install
```

* <mark style="color:red;">**원격 PC 새로운 터미널에서**</mark> 하기의 명령어를 통해 STELLA\_UI\_CAMERA를 실행합니다.&#x20;

```
ros2 launch stella_ui_camera stella_ui_camera.launch
```

![](https://3471887119-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzIX3JpyMfAzOkeMdsBuU%2Fuploads%2FACzOqtZwCek0ILntOwzP%2FScreenshot%20from%202021-10-29%2014-26-49.png?alt=media\&token=82d438fa-9d2d-4195-93c2-088c2535584d)

* 기의 그림에 표시되어 있는 부분을 통하여, Remote PC와 Robot(STELLA N1)의 IP,

  &#x20;Robot의 ID와 패스워드를 입력한 후, Camera Connect 버튼을 클릭합니다.&#x20;

![](https://3471887119-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzIX3JpyMfAzOkeMdsBuU%2Fuploads%2Fmi9y8uzO083Gz5WB0m5I%2FScreenshot%20from%202021-10-29%2014-57-00.png?alt=media\&token=a578b139-dafd-47c6-af5f-f39884515972)

* 충분한 시간이 흐른 후 Camera Show 버튼을 클릭하면, 카메라 영상을 받아보실 수 있습니다.

![](https://3471887119-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzIX3JpyMfAzOkeMdsBuU%2Fuploads%2FAD8QjBtoF1qc6hZF1ui8%2FScreenshot%20from%202021-10-29%2014-57-13.png?alt=media\&token=d3e3bd08-a317-46fe-9909-f8bfe9b7a507)
