# ROS 1 - App 이용하여 STELLA N1 구동

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

* STELLA N1에 HC-06 통신 모듈을 이용하여 Raspberry Pi 또는 Jetson Nano 임베디드 장치에서 App와 Bluetooth 무선 통신을 하여 STELLA N1을 조작 할 수 있습니다.

- [ ] App 설치&#x20;

* 모바일 환경에서 Github 주소 이동.

{% tabs %}
{% tab title="Github" %}
<https://github.com/ntrexlab/App_Install/blob/main/app-release.apk>
{% endtab %}
{% endtabs %}

![ ](https://3471887119-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MhvrKjF6_60tNjTx2_K%2F-Mi-dx0Tiw8OkRkntycj%2F-Mi-e10MNXsF9TD880fM%2F032.png?alt=media\&token=26944691-35fb-4c70-bd14-768c81f325d1)

* [ ] Bluetooth modul (HC-06) 연결

- Raspberry Pi 4

![ ](https://3471887119-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MhvrKjF6_60tNjTx2_K%2F-Mi-dx0Tiw8OkRkntycj%2F-Mi-eJE0v95IzuyXDQEk%2F033.png?alt=media\&token=68923e70-6c99-44c0-8339-c6c970a52840)

* Jetson Nano

![ ](https://3471887119-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MhvrKjF6_60tNjTx2_K%2F-Mi-dx0Tiw8OkRkntycj%2F-Mi-eS8BtqrnwDXObLaK%2F034.png?alt=media\&token=e68aed87-a783-40ca-a8cf-76e76e5dd367)

* [ ] 싱글보드 Bluetooth 설정 (Jetson Nano는 밑에 명령어 4개까지만 진행 하시면 됩니다.)

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

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

* <mark style="color:red;">**위 빨간 글 SSH 접속 터미널**</mark>에서 하기 명령어를 입력합니다. &#x20;

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

* <mark style="color:red;">**위 빨간 글 SSH 접속 터미널**</mark>에서 하기 명령어를 입력합니다.  sudo apt-get update && sudo apt-get upgrade 진행 후 설치해야 합니다.

```
sudo apt-get install python-bluetooth
```

```
sudo apt-get install bluetooth blueman bluez
```

```
sudo python -m pip install pyserial
```

* [ ] Raspberry Pi 만 추가 진행 &#x20;

```
sudo raspi-config
    ->  Interface Options 선택.
    ->  Serial Port 선택.
    ->  No 선택.
    ->  Yes 선택.
sudo reboot
```

* [ ] 핸드폰 기본 설정&#x20;

- 핸드폰 설정에서 Bluetooth 들어가서 HC-06 클릭하여 비밀번호 입력 ‘1234‘ or '0000'

![ ](https://3471887119-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MhvrKjF6_60tNjTx2_K%2F-Mi0Z6tOmY5EqUN8dHJg%2F-Mi0_3CrEg_6FOJzcHrF%2F051.png?alt=media\&token=b20f0871-8a43-4c1d-ad76-2d1923847ba4)

* 연결을 확인한다.&#x20;

![ ](https://3471887119-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MhvrKjF6_60tNjTx2_K%2F-Mi0Z6tOmY5EqUN8dHJg%2F-Mi0_FhGGkWVo1rEMP9S%2F052.png?alt=media\&token=c47a7ff2-5e2b-496e-aeeb-4a71a5a63828)

* [ ] 실행&#x20;

- <mark style="color:blue;">**원격 PC에서 터미널**</mark> 실행 후 roscore 실행합니다.

```
roscore
```

* <mark style="color:red;">**원격PC 새로운 터미널**</mark>에서 SSH로 SBC에 접속합니다.

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

* <mark style="color:red;">**위 빨간 글 SSH 접속 터미널**</mark>에서 ros bluetooth 명령어를 입력합니다. &#x20;

```
roslaunch stella_teleop_bluetooth stella_teleop_bluetooth.launch
```

![ ](https://3471887119-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MhvrKjF6_60tNjTx2_K%2F-MhzocFjL9-JQ6w4AL-G%2F-MhzqwO8gFVanxn0s8r6%2F022.png?alt=media\&token=d5e0640a-c31f-4243-9869-391a21c20723)

* <mark style="color:green;">**원격PC 새로운 터미널**</mark>에서 SSH로 SBC에 접속합니다.

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

* <mark style="color:green;">**위 초록 글 SSH 접속 터미널**</mark>에서 motordriver 명령어를 입력합니다. &#x20;

```
roslaunch stella_md stella_mwdriver.launch
```

<img src="https://3471887119-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MhvrKjF6_60tNjTx2_K%2F-MhzocFjL9-JQ6w4AL-G%2F-MhzqwO8gFVanxn0s8r6%2F022.png?alt=media&#x26;token=d5e0640a-c31f-4243-9869-391a21c20723" alt=" " data-size="original">

* 그 후 App를 이용하여 조작하시면 됩니다.&#x20;
