サーボログ採取プログラムおよびリモート接続プログラムの拡張
サーボログの採取数の拡張
こではその数を増やす方法を説明します。
標準のサーボログ採取プログラムは最大10ポーズまでサーボログを採取できます。
こではその数を12ポーズに増やす方法を例に説明します。
ロビプログラムのソースプログラム(テキスト)フォルダーの「ログ採取.txt」をメモ帳で読込みます。

「サーボログ書き込み」ブロックに初期化するサーボログファイルを追加します。

「サーボログ読み込み10」ブロックのjump先を「SOUND つかれちゃった」から「サーボログ読み込み11」に変更します。

「サーボログ読み込み10」ブロックの2行前の「<jump adr="SOUND OK"/>」から「サーボログ書き込み10」の終わりまでを「サーボログ書き込み10」の後にコピーします。
貼り付けた部分のブロック名やファイル名を10から11に変更します。
ただしjump先は次のブロック(11なら12)の数字に変更します。
こうやって増やしたいポーズのブロックを追加していきます。
最後のブロックはjump先を「SOUND つかれちゃった」に変更します。
メモ帳の「上書き保存」で変更内容を保存します。
ロビモーションエディタの「アドレス調整」ボタンで変更したテキストファイルをロビプログラムに変換します。

変換した「ログ採取.RM4」をロビのSDカードに転送します。
なお本プログラムは音声による命令とリモート接続による直接命令の両方に対応しています。
音声による命令で行う場合は「070いいよ9.RM4」等に変更してロビのSDカードの該当フォルダー(070いいよ9.RM4は1)に転送してください。
ロビのSDカードのADDONに追加したログファイルを「サーボ00.LOG」をコピーして作成しておいてください。

あまり最大ポーズを増やすと誤動作するようです。
最大ポーズ数を増やすのはあくまでも自己責任という事でお願いします。
採取中のサーボトルクの変更
こでは採取中にサーボにかかるトルクを変更する方法を説明します。
標準のサーボログ採取プログラムはサーボID2〜サーボID12には0%、サーボID13〜サーボID21には1%(実際の比率とは異なります)のトルクがかかるようにプログラムされています。
ロビプログラムのサーボ採取フォルダーの「ログ採取.txt」をメモ帳で読込みます。

「現在のサーボポジョンとオフセットの差分計算」でサーボを手で動かした位置に動かす処理をしています。
青線で囲んだ部分がひとつのサーボの処理でサーボID2〜サーボID21まで続きます。
アドレス0x0f02に01(1%)、アドレス0x0f04に00(0%)が入れられているので各サーボの赤丸の部分を0x0f02から0x0f4に変更するとサーボにかかる負荷を1%から0%に変更できます。
逆にサーボにトルクを入れたい場合は0x0f04から0x0f02に変更します。
変更が終わったら前述のサーボログの採取数の拡張と同様ロビモーションエディタのアドレス調整機能で実際のプログラムを作成してください。
リモート接続プログラムの変更
リモート接続プログラムはロビの手足を動かしてキャプチャーするためサーボのトルクを弱めています。
そのためロビがちゃんと自立しない場合があります。
また実際にプログラムを動かす時と同じトルクで動かしたい場合はリモート接続.RM4を変更してください。

メモ帳等でロビのサーボにかけるトルクの%(実際のトルクの割合と異なります)を変更します。
オリジナルでは頭には0%(0x0f04)、手足には1%(0x0f02)をセットしています。
100%にしたい時はこれらの値を0x0f06に変更してください。
青線部分はひとつのサーボに対する設定でサーボID2から順番に設定していますので対応するサーボの値を変更してください。
またトルクの%を変えたい場合はconst dataの赤丸の値を変更してください
なおアドレスがずれるとプログラムがハングするのでバイト位置は変えないでください。
またトルクを100%にして間違った位置にサーボを動かすとサーボの破損につながるので十分に注意してください。

ロビモーションエディタに戻る