Skip to content

Raspberry Pi

코드를 사용할 수 있는 보드의 종류는 다음과 같습니다.

Device Name
Raspberry Pi Zero
Raspberry Pi Zero 2W
Raspberry Pi 4B
Jetson Nano

사전 로봇 세팅

코드를 동작하기 전 CoPlay시스템을 사용하기 위한 사전 로봇 세팅을 진행해줍니다.

GStreamer 설치

GStreamer 설치 페이지에 접속하여 로봇에 GStreamer를 설치합니다.

BlueZ 설치

CoPlay는 블루투스를 사용하여 서버 연결 주소 및 와이파이 정보를 주고받아 디바이스를 세팅합니다.

이 문서에서는 블루투스를 사용하기 위해 Bluez라는 패키지를 사용합니다.

아래의 Dependency를 설치해주세요.

sudo apt install libreadline-dev libical-dev libdbus-1-dev libudev-dev libglib2.0-dev python3-docutils libbluetooth-dev

설치가 완료되면 wget명령을 통해 bluez 패키지를 가져온 후 압축을 풀어줍니다.

wget http://www.kernel.org/pub/linux/bluetooth/bluez-5.66.tar.xz
xz -d bluez-5.66.tar.xz
tar xvf bluez-5.66.tar

압축을 풀고 bluez 폴더로 들어가 설치를 진행합니다.

cd bluez-5.66/
./configure
make
sudo make install

최종적으로 pybluez를 설치하게되면 준비가 완료됩니다.

pip3 install pybluez

웹소켓 패키지 설치

웹소켓을 사용하기 위한 파이썬 웹소켓 패키지를 설치해줍니다.

pip3 install websockets

이후에는 사용자가 로봇을 동작하기 위한 패키지를 자유롭게 설치해줍니다.

동작 구현

코드 다운로드

코드 다운로드 이후 자신의 보드에 업로드 합니다.

코드 설명

이 문서의 코드 동작은 아래의 Block Diagram을 따릅니다.

URL을 받아오는 과정

get URL

MOTH 서버에 연동된 이후 컨트롤 루틴

Control routine

CoPlay의 명령별 동작을 위해선 control.py에 수신 데이터별 동작을 작성해야합니다.

각각의 키보드 동작별로 전송되는 메세지가 주석으로 작성되어있습니다.

사용자가 원하는 동작을 작성한 다음 아래의 명령을 사용하여 코드를 실행해보세요.

python3 main.py