Skip to content

install raspyke

Atsushi TAKEDA edited this page Sep 13, 2023 · 8 revisions

RasPyke環境の構築

RasPyke環境はRasPike環境を参考に開発されたSPIKEのための制御プログラム実行環境です。
RasPike環境とは以下の点が異なります。

  • 効率の良い通信プロトコル
  • 長時間実行可能なPrime Hubの制御プログラム
  • Beep音の再生とLEDの色の変更をサポート

環境構築の方法はRasPike環境の構築と同様ですが、SPIKEのPrime Hubにインストールする制御プログラムmain.pyRasPyke環境用のSPIKE制御プログラムとなる点が異なります。

RasPikeの実行環境の準備

RasPikeのリポジトリで説明されている手順に従ってRasPikeの実行環境を準備します。 サンプルプログラムの動作確認まで行い、正しく接続・動作していることを確認してください。

Prime Hubの制御プログラムmain.pyの変更

この作業はPCとSPIKEのPrime Hubを接続して行います。

SPIKE制御プログラムmain.pyをRasPyke環境用のSPIKE制御プログラムに変更します。 RasPyke環境用のSPIKE制御プログラム(raspyke_main.py)をダウンロードし、Mu Editorを利用してraspyke_main.pymain.pyとしてSPIKEのPrime Hubに書き込んでください。 raspyke_main.pyの書き込みが成功した後にPrime Hubを再起動すると、正面の5x5のLEDに小さい四角形が表示されます。

PyPyのインストール(Raspberry PI)

通常のpython(CPython)よりも高速で動作するPyPyをインストールします。 PyPyには、いくつかのライブラリが使えないというデメリットがありますが、ループなどの標準的な動作がCPythonよりも高速になるというメリットがあります。 PyPyをRasPyke環境にインストールするためには、Raspberry PIのターミナルから以下のコマンドを実行します。

sudo apt-get install pypy3

etrobo_pythonのインストール(Raspberry PI)

PyPyの実行環境に対してetrobo-pythonをインストールするため、ターミナルから以下のコマンドを実行します。

sudo pypy3 -m pip install etrobo_python

サンプルプログラムの実行(Raspberry PI)

etrobo-pythonを使ったプログラムを作成し、PyPyを使ってこのプログラムを実行します。 例えば、sample.pyというプログラムファイルを作成した場合、ターミナルから以下のコマンドを実行することでsample.pyに記述されたプログラムを実行します。

pypy3 sample.py

サンプルプログラム

# 両方のモーターを回転させて直進するだけの制御プログラム
from etrobo_python import ETRobo, Motor

def go_straight(
    right_motor: Motor,
    left_motor: Motor,
) -> None:
    right_motor.set_power(50)
    left_motor.set_power(50)

(ETRobo(backend='raspyke')
 .add_device('right_motor', device_type=Motor, port='B')
 .add_device('left_motor', device_type=Motor, port='C')
 .add_handler(go_straight)
 .dispatch(interval=0.01))