Feetechサーボのセットアップ
AKARI Lightのヘッドのパン、チルト動作に使用しているFeetechサーボ(STS3215)の設定を行います。
必要なもの
AKARI Light(AKARI Light環境のセットアップ 実施済み)
キーボード
マウス
ディスプレイ
仮想環境の作成
まずは、Feetechサーボの設定を行うための仮想環境を作成します。
ターミナルを開いて、下記コマンドを実行します。
これにより、仮想環境を作成、有効化し、必要なライブラリをインストールします。
cd ~/akari_software/setup/feetech
python3 -m venv venv
. venv/bin/activate
pip install -r requirements.txt
Feetechサーボ1のIDの仮変更
次にボディーに接続されているFeetechサーボ1のIDを仮変更します。
必ずヘッド側に接続されているFeetechサーボへの配線を外した状態のままで実施してください。
ターミナルを開いて、下記コマンドを実行します。
python3 1_temp_change_id.py
このスクリプトは、Feetechサーボ1のIDを100に仮変更します。
"idの仮変更OK!"と表示されれば成功です。
これ以外のエラーが表示された場合は、ヘッド側のFeetechサーボの配線が外れているか、ボディー側のFeetechが正しく接続されているかを確認してください。
Feetechサーボ2の接続
ここで、ヘッドに接続されているFeetechサーボ2の配線を行います。
接続されていない配線を、ヘッド部のSTS3215に接続してください。
FeetechサーボのIDの変更
この状態で、Feetechサーボ1,2のIDを本変更します。
下記コマンドを実行します。
python3 2_change_id.py
このスクリプトは、Feetechサーボ1のIDを1、Feetechサーボ2のIDを2に変更します。
"Pan, Tiltのサーボidの変更OK!"と表示されれば成功です。
これ以外のエラーが表示された場合は、ボディー、ヘッドのFeetechサーボの配線を確認してください。
誤って2回実行してしまうと、FeetechサーボのIDがどちらも2に変更されてしまい、以降Feetechサーボにアクセスできなくなってしまいます。
その場合は、ヘッド側のFeetechサーボのコネクタを再度外し、Feetechサーボ1のIDの仮変更からやり直してください。
Feetechサーボのbaudrateの変更
次にFeetechサーボ1,2のbaudrateを500000に変更します。
下記コマンドを実行します。
python3 3_change_baudrate.py
"Pan, Tiltのサーボのbaudrate変更OK!"と表示されれば成功です。
これ以外のエラーが表示された場合は、下記のコマンドを実行しFeetechサーボ2つと通信できているかを確認してください。
python3 search_ping.py
このスクリプトは、Feetechサーボ1,2にpingを送信し、応答があるかを確認します。
もし通信できていない場合は、ヘッド側のFeetechサーボのコネクタを再度外し、Feetechサーボ1のIDの仮変更からやり直してください。
Feetechサーボの初期位置の設定
Feetechサーボの初期位置の設定を行います。
ヘッドを手動で動かし、上下左右共に正面方向を向くようにします。
下記コマンドを実行し、現在位置を初期位置として保存します。
初期位置は2048という値になります。
python3 4_set_offset_pos.py
サーボID1,2の現在位置が表示されます。
これらが2048付近になっていればOKです。
±1程度誤差が生じる場合がありますが、問題ありません。
下記コマンドを実行し、Feetechサーボ1,2を0位置に移動させます。
python3 move_0pos.py
両方のサーボの0位置が正面向きになっていることが確認できればOKです。
以上でFeetechサーボのセットアップは完了です。
次はakari_software直下にアプリケーションを実行するための仮想実行環境を構築します。