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을 받아오는 과정
MOTH 서버에 연동된 이후 컨트롤 루틴
CoPlay의 명령별 동작을 위해선 control.py
에 수신 데이터별 동작을 작성해야합니다.
각각의 키보드 동작별로 전송되는 메세지가 주석으로 작성되어있습니다.
사용자가 원하는 동작을 작성한 다음 아래의 명령을 사용하여 코드를 실행해보세요.
python3 main.py