ロボットアームを動かそう (Raspberry Pi)
ラボ「1. ロボットアームを動かそう」で遊ぶには事前準備が必要です。
1 必要なもの
- PC(Windows、またはmac)
- Raspberry Pi 4 Model B (メモリ容量の制限なし、OKdo版/Element14版どちらでも可)
- Sun Founder社 Raspberry Pi Robot Arm Kit (SKU:CN0311D)
- micro SDカード (8GB以上)
- SDカードリーダー (PCにスロットがある場合は不要)
- 18650 リチウムイオン電池 2本 (保護回路あり)
- Sun Founder社ではリチウムイオン電池の保護回路なし版を推奨していますが、扱いを間違えると発火するおそれがあるため、保護回路あり版を使用することをお薦めします。ただし、保護回路が付いていることで電池のサイズが大きくなり、電池BOXへの挿入が難しくなる可能性があります。
- 18650 リチウムイオン電池 充電器
- ローカルエリアネットワーク環境およびインターネット環境 (Wi-FiまたはLANケーブルによる接続)
2 micro SDカードへRaspberry Pi のOSイメージを書き込む
Sun Founder社のドキュメントを参考にして、OSイメージを書き込みます。
- 補足
- ステップ4
- OSバージョンとして「Debian Buster」を推奨していますが、セットアップ中にエラーが発生するため「Debian Bullseye」を使用します。
> Raspberry Pi OS (64-bit)
> A port of Debian Bullseye with the Raspberry Pi Desktop (Compatible with Raspberry Pi 3/4/400)
> リリース日時: 2023-05-03
- OSバージョンとして「Debian Buster」を推奨していますが、セットアップ中にエラーが発生するため「Debian Bullseye」を使用します。
- ステップ6
- ホスト名は「raspberrypi」にします。
- ユーザー名は「pi」にします。
- パスワードは自由です。(後で使います)
- LANケーブルを使って接続する場合は、Wi-Fiの設定は不要です。
- ステップ4
3 Robot Arm Kitの最初の部分を組み立てる
YouTubeの動画を参考にして、Raspberry PiとRobot HATボード (白いボード) を接続するところまで組み立てます。(2:40くらいまで)
- この状態で一旦組み立てるのを止めて、Raspberry Piに必要なモジュールをインストールします。(最後まで組み立ててしまうと、モーターの調整の際に分解しなければならない場合があります。)
4 Raspberry Piをリモート接続でつなぐ
- micro SD カードをRaspberry Pi に差し込みます。
- Robot HATボードのスイッチを入れて、Raspberry Piを起動します。
- 起動するまで少し時間がかかります。
- 起動するまで少し時間がかかります。
- Raspberry PiをPCと同じローカルエリアネットワークへ接続します。
- LANケーブルでつなぐ場合は、Raspberry PiにLANケーブルを差し込みます。
- Wi-Fiでつなぐ場合は、何もしません。
- SSHで接続します。
- コマンドプロンプト(Windowsの場合は「Power Shell」、macの場合は「ターミナル」)を起動します。
- SSHコマンドを実行します。
> ssh pi@raspberrypi.local - 初回のみ、以下のメッセージが表示されるため、「yes」と入力します。
> The authenticity of host ‘raspberrypi.local (fe80::8efa:432f:f776:dcf1%10)’ can’t be established.
> ED25519 key fingerprint is SHA256:3Lw04A+Ox+jzsoyKOu3E1hse8vSYtBGpBVAxULcBxCE.
> This key is not known by any other names
> Are you sure you want to continue connecting (yes/no/[fingerprint])? yes - 次に、Raspberry Pi Imagerで設定したパスワードを入力します。
> pi@raspberrypi.local’s password: - 以下のように表示されたら接続成功です。
> pi@raspberrypi:~ $ - SSHを終了するときは「exit」コマンドを実行します。
> exit - もし「WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!」というエラーが出た場合は、以下のコマンドを実行します。
> ssh-keygen -R raspberrypi.local
- コマンドプロンプト(Windowsの場合は「Power Shell」、macの場合は「ターミナル」)を起動します。
5 Raspberry Piに必要なモジュールをインストールする
- コマンドプロンプトを起動して、SSHコマンドを実行します。
> ssh pi@raspberrypi.local
> pi@raspberrypi.local’s password: - モジュールをインストールします。こちらの手順にしたがいます。(英語ドキュメントのみ)
- i2samp.shは、Raspberry Piを再起動した後に実行してください。そうしないと正常に機能しません。
6 サーボ・モーターのキャリブレーションを行う
- コマンドプロンプトを起動して、SSHコマンドを実行します。
> ssh pi@raspberrypi.local
> pi@raspberrypi.local’s password: - サーボ・モーターのキャリブレーションを行います。こちらの手順にしたがいます。(英語ドキュメントのみ)
- Robot Arm Kitのservo_zeroing.pyにはバグがありキャリブレーションが行えないため、PiCar-Xのservo_zeroing.pyに置き換える必要があります。
- Raspberry Pi上でnanoエディタを使ってservo_zeroing.pyを書き換えます。
> cd /home/pi/piarm/examples
> sudo nano servo_zeroing.py - 以下のコードに置き換えます。
——–
from robot_hat import PWM, Servo
from robot_hat.utils import reset_mcu
from time import sleep
reset_mcu()
sleep(0.2)
if __name__ == ‘__main__‘:
P_11 = Servo(PWM(‘P11’))
P_11.angle(0)
——– - 「Ctrl+X」を押した後に「Y」を押して、ファイルを保存してnanoエディタを終了します。
7 Robot Arm Kitを最後まで組み立てる
同梱の説明書やYouTubeの動画を参考に、最後まで組み立てます。
8 Mind Render用のPythonプログラムを転送する
- 以下のボタンからzipファイル「mrarm.zip」をダウンロードします。
- ダウンロードしたzipファイルを展開します。
- コマンドプロンプトを起動します。
- 展開したフォルダが置いてある場所へ移動します。
- 例えばデスクトップにフォルダがある場合、
> cd ~/Desktop
- 例えばデスクトップにフォルダがある場合、
- SCPコマンドを実行します。
> scp -r mrarm pi@raspberrypi.local:~/mind-render/
パスワードを入力します。
> pi@raspberrypi.local’s password: - SSHコマンドを実行します。
> ssh pi@raspberrypi.local
> pi@raspberrypi.local’s password: - setup.shを実行します。
> cd ~/mind-render/mrarm
> sh ./setup.sh
9 Mind Render用のPythonプログラムを実行する
- コマンドプロンプトを起動して、SSHコマンドを実行します。
> ssh pi@raspberrypi.local
> pi@raspberrypi.local’s password: - プログラムを実行します。
> cd ~/mind-render/mrarm
> sudo python3 main.py - プログラムを停止する場合は「Ctrl+C」を押します。
10 Mind Renderを起動してラボを動かす
Mind Renderを起動してラボを動かします。(iPhone/Androidスマートフォン、タブレット、Windows、macいずれでも可能です。)
- つくる(またはラボ)>外部とつなごう>Raspberry Pi>1.ロボットアームを運転しよう と進み、「スタート」ボタンを押します。
- シーン編集画面で緑色の「Raspberry Pi」画像をクリックします。
- 表示されるBluetooth接続画面でMind RenderとRaspberry Piを接続します。
(「Raspberry MR Arm」または「raspberrypi」を選択) - 接続画面を閉じます。
- 実行ボタンを押してプログラムを実行します。
*Raspberry Pi is a trademark of Raspberry Pi Ltd.
*その他、本文中に記載の商品名、会社名などは一般に各社の商標や登録商標です。