「プリメイドAI-プレイヤー」ご利用の手引き

更新日2020/02/14
Ver0.30
作成者wtoy.net
ダウンロード(バイナリ)pMaitPlay.zip
ダウンロード(ソース込み)pMaitPlay-v02_src.zip
★メニューが表示されない時は、本画像をクリックして下さい☆彡 ■デモ-ミラー ■デモ-UFO(RCB版-xml) ■恋ダンス(RCB版-xml) ■デモ-pmaファイル

注意事項

ご使用環境によってはソフトウェアが正しく動作しない場合もございます。その際には本 ソフトウェアの使用を中止しディスク上から本ソフトウェアを消去してください。 設定値によっては、サーボ及び、サーボホーン壊れる事が有りますのでご注意ください。 ■プリメイドAIの電源環境 プリメイドAIに付属電源は、Lipo 9.9v-850mHhでは、15分程度しか動作しません。 そこで以下のように、安定化電源か、ACアダプタで接続するようにします。 後ろに、電源コードを接続するための穴を開けました。 動作範囲電圧 9v〜12vまで動作確認を行いました。 ACアダプタでは、5A以上を推薦、9v-2.5Aでは、安定しません。9v-5Aの物を使用しています。 あと30分程度で、停止状態になり全サーボがフリー状態になりますので注意して下さい。(コケて壊れる)

機能概要

プリメイドAI-プレイヤー」は、プリメイドAIロボットPC(Winodws)で操作できます。 (1)機能 ・基本モーションの実行(20個) ・サーボモータ情報の取得 ・電源監視 ・個別サーボモータの角度指定 ・脱力モードの設定 ・サーボモータのミラーリング動作 ・取得情報のログ出力 ・モーションファイルの保存 ・モーションファイルの実行 (2)基本モーション
No動作No動作No動作No動作
0ホーム5おねがい10敬礼15もんきー
1どうぞ6バイバイ11えーん16応援
2ワクワク7右にキス12ハート17エアギター
3コシニテ8左にキス13キラッ18右にターン
4ようこそ9ピストル14あなたへ19左にターン
(3)サーボモータ情報の取得 本情報は、定期時(ユーザ指定 *=500msec)に更新される。 ■画面例は、ホーム位置のサーボ状態
NoサーボID有効フラグエンコーダ値オフセット値指令値ジャイロ方向ジャイロ倍率スピードストレッチ
12(0x02)1281022927407500-11045
23(0x03)128733307500-11015
34(0x04)1284670-28407500-11045
45(0x05)1287455-507500-11025
56(0x06)12877792707500-11045
67(0x07)1287491-107500-11025
78(0x08)128750407500-11045
89(0x09)12897732609500-11035
910(0x0A)1287439-807500-11060
1011(0x0B)1285202-2905500-11035
1112(0x0C)1287519407500-11060
1213(0x0D)1287519107500-11030
1314(0x0E)1287462-407500-11045
1415(0x0F)1287524307500-11030
1516(0x10)128751907500-11045
1617(0x11)1287524307500-11030
1718(0x12)1287340-1357500-11045
1819(0x13)1287471-297500-11030
1920(0x14)1287556807500-11045
2021(0x15)1284704-27967500-11025
2122(0x16)1287400-707500128220045
2223(0x17)1281033428207500-11025
2324(0x18)12875043075001282-20045
2426(0x1A)1287276-2307500179420045
2528(0x1C)1287524207500179420045
サーボID  :2〜28 エンコード値:サーボ現在位置(0=脱力) オフセット値:機体固有値(エンコード値−オフセット値=指令値相当) 指令値   :コマンド指示で受け取った値(脱力=0 又は 3500 〜 11000)、この角度に向かった動作する 有効フラグ :128(0x80)=有効,0(0x00)=無効 ジャイロ方向:-1(0xFFFF)=対象外,1282(0x0502)=ピッチ,1794(0x0702)=ロール ジャイロ倍率:1(0x0001)=対象外,20=20倍,-20=-20倍 スピード  :0(0x00)〜127(0x7F)モーター・スピード ストレッチ :0(0x00)〜127(0x7F)モーター・ストレッチ ■ロボットのサーボ位置(サーボID=16進表記) (4)電源監視 ロボット内の電圧値を、定期時(ユーザ指定 *=10000msec)に取得する事ができます。 (5)個別サーボモータの角度指定 コマンドおよび、GUIでの指定サーボによる、角度指定を行う事ができます。 (6)脱力モードの設定 コマンドおよび、GUIでの指定サーボによる、脱力指定を行う事ができます。 脱力指定したサーボは、手動で回す事ができ、その角度を取得する事ができます。 (モーションファイル用に利用できます) (7)サーボモータのミラーリング動作 手・腕・肩・足等の対になっている、サーボを手動で動かす事(脱力モード)で、対応する サーボを同じ動きにします。 (8)取得情報のログ出力 送受信のコマンド、およびサーボ情報等を、ログに出力します。 (9)モーションファイルの保存 サーボモータ情報の取得タイミングでID/エンコーダ値/オフセット値/指令値タイムスタンプを 付加して、CSV形式で保存します。 (10)モーションファイルの実行 モーションファイルの保存で保存された、モーションファイルを再生します。 再生時に再生遅延で再生スピードを変更する事ができます。 (N=1.0:そのまま再生,N<0:早く再生,N>0:遅く再生) ■その他のモーションファイル ・pmaモーションファイル(Andoroid端末用)を再生できます。 ・RCB版モーションxmlファイルを簡易再生します。 注意)モーションファイルを再生中にPCがストールした時は、アプリの強制終了と、      プリメイトAIを再起動してください。

1.動作環境

(1)対応OS Microsoft(R) Windows7,Windows10 + .NET4.0 (2)対応パーソナルコンピュータ 本体 :上記対応OSが正常に動作しているパーソナルコンピュータ メモリ:4G以上 その他:256色以上表示可能な画面環境 (3)Bluetooth接続環境 WindowsのBluetooth設定画面でプリメイドAIの電源をONにしてペアリングを行うと シリアルポートが2個追加されます。(例 COM3,COM4)後の、ポートで接続します。 (4)コンパイル環境 Microsoft Visual Studio Community 2019 C# ソースコード一式を解凍後、pMaitPlay.slnをVisualStudioで開いてビルドしてください。

2.ソフトウェアのインストール方法

***************** ご注意 ****************** セットアップを実行したと同時に、ソフトウェア使用許諾に合意したとみなさせて いただきます。 ****************************************
2-1.インストール方法 インストールファイル(pMaitPlay.zip)を任意のフォルダにコピーし解凍して下さい。 なお、スペースを含むディレクトリにはインストールしないで下さい。 <INSTALL> インストール先 pMaitPlay.exe プリメイドAI-プレイヤー・プログラム pMaitPlay.ini 初期環境ファイル <log> ログファイル保存フォルダ <motion> モーションファイル保存フォルダ MOyyyyMMddHHmmss.csv <RCB> RCB版のモーションファイル(参考) <pma> pmaモーションファイル(参考) <help> オンラインヘルプ用フォルダ index.html ヘルプ先頭画面 *.html htmlファイル *.jpg jpgファイル 2-2.アンインストール方法 解凍したファイルを削除して下さい。

3.ソフトウェアの使用方法

本システムの起動方法は、解凍先のpMaitPlay.exeを実行して下さい。
3-1.環境設定 本ソフトウェアーを使用するためには、必要に応じて初期環境ファイル(pMaitPlay.ini) を修正して下さい。 3-2.基本操作 (1)接続 メイン画面の「接続」ボタンを押下する事で、プリメイドAIとBluetoothで接続します。 (2)基本モーションの実行 基本タブ内の[0]〜[19]ボタンを押す事により、プリメイドAIに予め設定されている 基本モーションを動かす事が出来ます。 (3)サーボモータ情報の取得 メイン画面のサーボ情報チェックボタンをONにする事により、全サーボモータの状態を 取得できます。状態は、定期時(500msec)に更新され、ロボタブ内のサーボ情報テーブル に表示されます。

4.メイン画面

システム起動後には、以下のメイン画面が表示されます。また、画面中の表示領域、 および選択エリアの構成は、次のようになっています。 (1)メニューバー ファイル(F),表示(V),ツール(T),ヘルプ(H)メニューがあります。 (2)タイトル タイトルおよびバージョン等を表示します。 (3)基本動作領域 接続ボタン、COMポート選択、ボーレート選択と、サーボ情報電源監視チェックボタンがあります。 モーションファイル実行時の、再生遅延(再生動作の速度)を指定できます。 また、RCBモーションファイル(xml)再生間隔で、RCB遅延msecを指定します。 (4)タブ領域 基本ロボットタブがあります。
4-1.メニュー (1)ファイル(F) a)モーション読込み(R)... モーションファイルを選択して、再生します。 モーションファイル以外の、RCB版(xml)や、スマホ版(pma)ファイルの簡易再生もできます。 モーション画面保存で生成したファイル(*.txt)も再生できますが、pmaモーション画面からの 操作になります。 b)モーション画面保存(L) pmaモーション画面のテーブルデータをcsv形式で保存されます。(拡張子は、 *.txt) なお、pmaモーション画面で□reverse=ONの時は、降順で出力されます。 c)サーボ情報ログ出力(L) サーボ情報テーブル内容を、ログ出力する。 d)環境保存(S) 現在の環境を初期環境ファイルへ出力します。(次回起動時に有効です) なお、一部テスト中の為、保存されない情報があります。 e)終了(X) 終了確認のウィンドウが表示されます。 「はい」ボタンを選択すると本ソフトウェアを終了します。 「いいえ」ボタンで本ソフトウェアを継続します。 (2)表示(V) a)受信情報クリア(R) 基本タブの受信領域クリアーします。 b)送信情報クリア(R) 基本タブの送信領域クリアーします。 c)監視情報スキップ(K) ONの時、電源監視/サーボ情報の受信領域への表示とログ出力をスキップします。 (サーボ情報の取得は、msec単位に取得されるため、処理速度に影響をしないよう) d)送信コマンド表示(V) ONの時、送信コマンドを送信領域に表示します。 e)送信コマンドログ出力(L) ONの時、送信コマンドをログファイルに出力します。 f)受信コマンドログ出力(M) ONの時、受信コマンドをログファイルに出力します。 g)チェックバイト付加(C) 手動送信コマンドで[送信]時に、チェックバイトを自動計算して付加して、送信する。 (3)実行(R) a)モーション実行(R) 読み込みされている、pmaモーションファイルを再実行します。 b)モーション中止(C) 実行中のモーションを中止します。(デバックモードの時は、OFFで再開します) c)デバックモード(D) ファイル→「モーション読込み」で「pmaモーション画面」に読み込むようにします。 (デバックモード=ONの時は、すぐに実行されません) (4)ツール(T) a)pmaモーション画面(P) pmaモーション画面を表示します。 (デバックモード=ONの時は、モーションファイルを読み込み時に、自動表示されます) b)ロボットサーボ画面(S) pmaモーション画面内の、複数サーボ角度指定のコマンドイメージを、本画面で編集する事が出来ます。 (5)ヘルプ(H) a)操作説明(H) 操作説明を表示します。 4-2.基本動作領域 (1)接続ボタン COMポートとボーレートを選択し、[接続]ボタンを押すとプリメイドAIと接続し、正常接続すると ボタン名称が、[接続中]になります 接続中に、[接続中]ボタンを押すと、切断します。 (2)電源監視 □電源監視チェックボタンをONにすると、電源監視コマンドを定期時(10秒間隔)送信して 電圧値を受信する事ができます。(9.2v等を表示する) (3)モーション モーション読込みメニューでモーションファイルを実行する時に、コマンド単位の遅延量です。 1 = 再生時間をそのまま 0.5 = 再生時間を早送り再生(2倍速) 2.0 = 再生時間をスロー再生(1/2) pma/RCBモーションファイル再生、遅延量です。(サーボ角度指定コマンド毎に、指定時間遅延(msec)する。 (4)サーボ情報 □サーボ情報チェックボタンをONにすると、サーボ情報コマンドを定期時(500msec間隔)送信 してサーボ情報情報を受信する事ができます。取得した、サーボ情報は、ロボットタブのサーボ情報 テーブルに表示されます。 4-3.基本タグ 基本タグ領域では、基本モーションの実行と手動コマンドを送信および、送受信コマンドの 表示領域があります。 (1)基本モーションの実行 [0]〜[19]ボタンを押下すると、基本モーションの指示をプリメイドAIに指示します。 (2)手動コマンド コマンドを16進で入力して、送信ボタンを押下します。 (3)受信領域 プリメイドAIからの受信コマンドを、本領域に16進文字列で表示します。 (4)送信領域 プリメイドAへ送る、送信コマンドを、本領域に16進文字列で表示します。 (5)走行モード操作 基本タグ領域の右上に、走行モード操作ボタンを設けました。 走行モードモーションファイル(xml/txt)は、pMaitPlay.iniに定義されています。 ボタン対応は、#0〜#4までですが、コンボボックスに定義分登録されますので、選択実行できます。 ※走行モードモーションは、テスト用です。確実に走行するには、まだまだ工夫が必要です。 4-4.ロボットタグ ロボットタグ領域では、簡易ロボット(サーボ位置)とサーボ情報テーブル領域があります。 (1)簡易ロボット領域 サーボ位置(25個)には、サーボ名称と現在のサーボ角度表示/指示用のスピンボタンがあります。 サーボ名称をマウスでダブルクリックすると、スピンボタンの値が指定角度になります。 また、□個別-脱力をONにすると、指定サーボが、脱力モード(手で動かせる)になります。 なお、角度指定を行う時は、□サーボ情報をOFFにして下さい。 サーボ名称のNoは、サーボ情報テーブルのNoに対応しています。(1:肩ピッチR は、No=1) ■ホーム位置 ホーム位置に、戻すときは、[ホーム]ボタンを押して下さい。 ■サーボ角度指定  角度指定は、encode値で設定されます。  ※設定値によっては、サーボ及び、サーボホーン壊れる事が有りますのでご注意ください。 ■脱力-ミラーモード 脱力モードに設定されるとサーボの指定値(cmdval)が 0 に設定される。 この状態で、右側の肩・腕・手首等を動かすと、左側の状態が追従します。 ※ミラーモードで動かすと下半身のサーボが再設定されないでの、前のめりになる事があります。 この時は、□下半身固定チェックをONにすると、下半身のサーボが再設定されて安定します。 (2)サーボ情報 □サーボ情報がONの時に、全サーボ情報を本テーブルに表示します。 なお、本領域の□表示をOFFにすると表示されません。ただし、内部テーブルには、保存されています。 □モーション保存をONにすると、サーボ情報更新タイミングで、モーション情報をmotionフォルダに 書き込みます。(サーボ情報の出力msecは、50msec以下を推薦) □ログをONにすると、サーボ情報更新タイミングで全サーボ情報をCSV形式でログファイルに出力します。 ※サーボ情報出力タイミングを早くする時は、□表示=OFFにして下さい。  また、環境によりサーボ情報出力msecは、調整して下さい。

5.サブ画面

5-1. Pmaモーション画面 デバックモードの時、モーションファイルを選択すると「Pmaモーション画面」にモーション情報が 表示されます。本画面では、ステップ実行や、モーションコマンド単位で、有効フラグでコマンド毎 に実行(on)/非実行(off)を制御でき、任意の位置から実行する事ができます。 また、コマンドイメージを編集出来ます。 編集したモーションは、メイン画面のファイル→「モーション画面保存」メニューで保存してください。 (1)実行  実行ボタンを押下すると、@のテキストボックスのモーションNo位置より、実行されます。  なお、Aのテキストボックスの値間隔でモーションコマンドが実行されます。 (2)停止  停止ボタンを押下すると、モーション実行を停止します。(停止するまで、押下してください) (3)ステップ実行  □stepRunチェックボタンが、ONの時、1コマンド実行後に停止します。[実行]ボタンで再開します。 (4)有効・無効  モーションコマンド毎に、実行・非実行を設定できます。制御したいモーションコマンド行の有効列  を選択して[on/off]ボタンを押下してください。状態が、反転(on<=>off)します。 (5)単発実行  名称列をマウスでダブルクリックすると、そのモーションコマンドが実行されます。 (6)モーションコマンド編集  コマンドイメージ列をマウスでダブルクリックすると、該当するモーションコマンドが編集できる  「ロボットサーボ画面」が表示されます。 (7)逆再生モード  □reverseチェックボタンが、ONの時は、実行ボタンで逆再生されます。 (8)その他  □topチェックボタン=ONで、トップ画面になります。  [閉じる]ボタンで、画面を閉じます。 5-2. ロボットサーボ画面  本画面では、@指定モーションNoの各サーボのB角度指定スピンボックスで変更できます。  変更後[サーボ情報設定]ボタンでPmaモーション画面へ反映します。  また、ASPD値(16進)を変更する事でスピードを変更でき、[実行]で動作を確認する事が出来ます。 ※角度指定は、cmdval値で設定されます。 ※設定値によっては、サーボ及び、サーボホーン壊れる事が有りますのでご注意ください。 ※SPD値は、16進-2桁(08)で指定してください。小さいほど早く動作します。

6.外部仕様

6-1. コマンドフォーマット 以下のコマンドフォーマットは、抜粋です。詳しくは、先人たちの解析結果を、参照してください。 また、コマンドフォーマットは、バイナリ配列ですが、表記として16進文字列で記載しています。 (1)フォーマット コマンドフォーマットは、パケット(バイナリ配列)の可変長になっています。 コマンドによって、パラメータ部が可変になります。送受信とも、同じフォーマット体系です。 例)コマンドが5バイトの時 +-- コマンド長(先頭からチェックバイトを含んだバイト数、256バイト以下) | +-- コマンド | | +-- パラメータ1 | | | +-- パラメータ2 | | | | +-- チェックバイト(先頭から1バイトづつXORしていったもの) | | | | | 051F003D27 (2)電圧情報の取得 ロボットの電圧状態を取得する事ができます。電圧が8v程度になると、サーボモータが不安定になりますので、 電池稼働の時、定期時に取得すると便利です。 a)送信コマンド:PC → プリメイドAI 07010002000206 | | | | | | | | | | | | | +-- チェックバイト | | +-+-+-+-- パラメータ:電圧情報取得 | +-- コマンド:内部変数の取得 +-- コマンド長 b)コマンド受信 PC ← プリメイドAI 06010073087C → 10v 060100A307A3 → 9v 060100BA06BB → 8v | | | | | | | | | +-- チェックバイト | | | +-- 電圧値(2byte) / 216 = 電圧 (ネットワークバイト) | | +-- 固定(0) | +-- コマンド +-- コマンド長 (3)サーボ状態の取得 プリメイドAIの全25のサーボ状態を取得する事が出来ます。取得内容は、機能概要-(3)サーボモータ情報の取得内容です。 1サーボの応答バイトは、14バイトなので、2回に分けて全サーボの状態を取得します。 a)送信コマンド:PC → プリメイドAI 0701000502C4C5 ← サーボ情報:02..0F -- 14個 0701000510C4D7 ← サーボ情報:10..1D -- 14個 | | | | | | | | | | | | | +-- チェックバイト | | | | | +-- 取得数(14の倍数) | | | | +-- 取得開始サーボID | | +-+-- パラメータ:サーボ情報取得 | +-- コマンド:内部変数の取得 +-- コマンド長 b)コマンド受信 PC ← プリメイドAI ;- サーボ取得:02..0F 受信 +-- コマンド長 | +-- コマンド | | c80100 +-- サーボID 機能概要-(3)サーボモータ情報の取得テーブルの並びです | +-- 無効(00)/有効(80)フラグ | | 以下は、サーボ毎に表示上分割表示しています。 0280fe27b40a4c1dffff0100002d ← サーボID=02 0380241d00004c1dffff0100000f ← サーボID=03 04803e12e8f44c1dffff0100002d ← サーボID=04 05801f1dceff4c1dffff01000019 ← サーボID=05 0680501e0e014c1dffff0100002d ← サーボID=06 0780431df6ff4c1dffff01000019 ← サーボID=07 08803e1d00004c1dffff0100002d ← サーボID=08 0980232604011c25ffff01000023 ← サーボID=09 0a80051db0ff4c1dffff0100003c ← サーボID=0a 0b805214defe7c15ffff01000023 ← サーボID=0b 0c80681d28004c1dffff0100003c ← サーボID=0c 0d804c1d0a004c1dffff0100001e ← サーボID=0d 0e80ed1cd8ff4c1dffff0100002d ← サーボID=0e 0f806e1d1e004c1dffff0100001e ← サーボID=0f 5e | +-- チェックバイト ;- サーボ取得:10..1D 受信 c80100 1080431d00004c1dffff0100002d ← サーボID=10 1180771d1e004c1dffff0100001e ← サーボID=11 1280b51c79ff4c1dffff0100002d ← サーボID=12 13802f1de3ff4c1dffff0100009e ← サーボID=13 1480a11d50004c1dffff0100002d ← サーボID=14 1580601214f54c1dffff01000019 ← サーボID=15 1680181dbaff4c1d02051400002d ← サーボID=16 17805e28040b4c1dffff01000019 ← サーボID=17 1880a81d1e004c1d0205ecff002d ← サーボID=18 19004c1d00004c1dffff01000000 ← サーボID=19 無効 1a80751c1aff4c1d02071400002d ← サーボID=1a 1b004c1d00004c1dffff01000000 ← サーボID=1b 無効 1c805a1d14004c1d02071400002d ← サーボID=1c 1d004c1d00004c1dffff01000000 ← サーボID=1d 無効 aa | +-- チェックバイト (4)基本モーション プリメイドAIには、機能概要-(2)基本モーションの20個のモーションが予め組み込まれています。 以下の、コマンドで、基本モーションを再生する事ができます。 なお、基本モーションのコマンドは、初期環境ファイルに定義されています。 a)送信コマンド:PC → プリメイドAI +-- コマンド長 | +-- コマンド | | +-- パラメータ | | | +-- モーション番号(3D..50) 10進:61..80 | | | | +-- チェックバイト | | | | | 051F003D27 ← ホーム 051F003E24 ← どうぞ : 051F004F55 ← 右ターン 051F00504A ← 左ターン b)コマンド受信 PC ← プリメイドAI +-- コマンド長 | +-- コマンド | | +-- パラメータ(00=成功,80=失敗) | | | +-- チェックバイト | | | | 041F001B → モーション再生成功 041F809B → モーション再生失敗 (5)サーボの角度指定 指定サーボの角度指定を行います。 a)送信コマンド:PC → プリメイドAI +-- コマンド長 | +-- コマンド | | +-- パラメータ | | | +-- パラメータ(SPD) → 値が、小さいほど、早く動作します。 | | | | +-- サーボID | | | | | +-- 角度(LO, HI) → 0x1D4C(7500) = ホームポジション | | | | | | +-- チェックバイト | | | | | | | 08180080024C1D00 | | +----+-- { ID, LO, HI } で繰り返し指定で、複数サーボの角度指定が行えます。 ※ 角度=0 を指定すると、脱力モードになり、サーボを手動で動かす事ができます。 注意)角度指定は、各サーボの角度範囲を調査の上、行ってください。 範囲を超えると、サーボおよびサーボホーンを壊す事があります。 b)コマンド受信 PC ← プリメイドAI +-- コマンド長 | +-- コマンド | | +-- パラメータ(00=成功,80=失敗) | | | +-- チェックバイト | | | | 041800xx → OK 041880xx → NG (6)SPEED/STRETCH指定 指定サーボへのSPEED/STRETCH指定を行います。 なお、本コマンドの試験は、未実行です。 a)送信コマンド:PC → プリメイドAI +-- コマンド長 | +-- コマンド | | +-- パラメータ-SPEED | | | +-- サーボID | | | | +-- SPEED | | | | | +-- チェックバイト | | | | | | 0619000230xx | | +-+-- { ID, SPEED } で繰り返し指定も可能 +-- コマンド長 | +-- コマンド | | +-- パラメータ-STRETCH | | | +-- サーボID | | | | +-- STRETCH | | | | | +-- チェックバイト | | | | | | 361910103Cxx | | +-+-- { ID, STRETCH } で繰り返し指定も可能 b)コマンド受信 PC ← プリメイドAI +-- コマンド長 | +-- コマンド | | +-- パラメータ(00=成功,80=失敗) | | | +-- チェックバイト | | | | 041900xx → OK 041980xx → NG 6-2.モーションファイル 本モーションファイルは、本アプリケーションで保存された、モーションファイル(CSV形式)です。 サーボモータ情報の取得タイミングで、全サーボ(25個)のID/エンコーダ値/オフセット値/指令値タイムスタンプを付加して、レコード化して、以下の形式になっています。 +-- msecタイムスタンプ(hhmmssMMMM) | +-- 1.サーボID +-- 25.サーボID | | +-- エンコード値 | +-- エンコード値 | | | +-- オフセット値 | | +-- オフセット値 | | | | +-- 指令値 | | | +-- 指令値 | | | | | | | | | 214205111,2,10229,2740,7500,3,7342,0,7500, .. ,26,7333,-230,7500,28,7504,20,7500 214205294,2,10229,2740,7500,3,7442,0,7400, .. ,26,7314,-230,7500,28,7504,20,7500 : : 214217588,2,10229,2740,7500,3,7242,0,7200, .. ,26,7314,-230,7500,28,7486,20,7500 214217729,2,10229,2740,7500,3,7342,0,7500, .. ,26,7324,-230,7500,28,7477,20,7500 ※モーションファイルの再生は、タイムスタンプの差分間隔×再生遅延(GUI指定)で行われます。 6-3.pmaファイル pmaファイルは、プリメイドAIのモーションファイル(DMMサイトより、購入できます)です。 Androidスマホアプリケーション用のプリメイトAI専用のモーションファイルです。 Androidスマホには、以下のフォルダに格納されるので、PC側に転送します。 例) Android/data/com.robotyuenchi.premaidai/files/rbHM00000000DMM100001 premaid0001.pma -- テキストファイル(UTF形式) ← こちらが、モーションファイル premaid0001.wsdcf -- バイナリファイル [モーション(1)] 番号=1 名前=サマーライオン データ=07 02 00 41 00 01 45 ... : : 04 17 00 13 FF FF | +-- FFFF が、終了 ※ 詳しくは、解析サイト等を参照してください。 6-4.RCBファイル プリメイドAI-RCB版の、モーションファイル(xxxxx.xml)です。 モーション読み込みで RCB版モーションファイルから、サーボ情報(角度*25個)のみを簡易再生できます。 例)UFO.xml 以下のタグのサーボ角度で簡易再生を行います <ProgramCode> <anyType xsi:type="xsd:string"> 3B ← コマンド長 10 FC FF FF 15 00 ← パラメータ 05 ← パラメータ SPD 84 1B 4C 1D BC 27 4C 1D 4C 1D ← 以下、25個のサーボ角度(2byte)が続く 4C 1D 4C 1D 77 21 B1 1C 43 15 E7 1D 87 1D 77 1C 4B 1D 20 1E 2D 2A A2 1B 37 15 F5 1E E1 25 B3 1C 7D 14 E4 1D E7 1D B1 1C 37 ← チェックバイト </anyType> </ProgramCode> 調査中・・・ 6-5.Pmaモーション画面保存ファイル 本モーションファイルは、Pmaモーション画面に表示されているモーション情報を、そのまま CSV形式のファイル(xxxxx.txt)で出力されます。なお、モーション読み込みで簡易再生できます。 1,on,複数サーボ角度指示,80,5018000A02e41b034c1d .. 1cc81d05 2,on,複数サーボ角度指示,80,5018000802b41e034c1d .. 1c8a1d2c : 9,on,複数サーボ角度指示,80,5018000A02e41b034c1d .. 1cc81d97 ※モーションファイルの再生は、Pmaモーション画面の再生遅延(GUI指定)で行われます。 ■基本モーションコマンドを埋め込む Pmaモーション画面保存ファイルに、基本モーションコマンドを埋め込む事ができます。 基本モーションコマンドは、1コマンドに複数の動作が含まれており、1コマンドで数秒間の動作になります。 そこで、以下の設定で基本コマンド実行後、遅延秒(sleep)を設定します。 例) 1,on,sleep,03,051F00504A,左ターン 2,on,sleep,05,051F003D27,ホーム 3,on,sleep,05,051F00445E,右にキス | | | | | +-- 基本コマンド(7-1.初期環境ファイル (2)の基本モーションを参照) | +-- 遅延秒をしていする(2桁固定) +-- 基本コマンド実行後、遅延(sleep)する

7.その他

7-1.初期環境ファイル pMaitPlay.ini 初期環境ファイルには、システムオプション、基本モーションコマンドおよび、 サーボ情報等が定義されています。おもな、設定は、以下の通りです。 なお、システムオプションは、iniファイルのコメントを参照してください。 (1)サーボ情報 [MOTION] ;- サーボモータ情報 ; +-- サーボNo(+1で表示No) ; | +-- ID ; | | +-- サーボタイプ ; | | | +-- 名称 ; | | | | +-- ホーム値 ; | | | | | +-- 最小(角度制限):範囲を超えると壊れるよ ; | | | | | | +-- 最大(角度制限):範囲を超えると壊れるよ ; | | | | | | | +-- ミラーID No#0 =2,HV,肩ピッチR, 7500,4600,11000,4 No#1 =3,MV,頭ピッチ, 7500,7200, 8200,0 No#2 =4,HV,肩ピッチL, 7500,3900,10400,2 No#3 =5,MV,頭ヨー, 7500,6100, 9200,0 No#4 =6,HV,ヒップヨーR, 7500,6800, 8200,8 No#5 =7,MV,頭萌, 7500,6850, 8350,0 No#6 =8,HV,ヒップヨーL, 7500,6850, 8350,6 No#7 =9,MV,肩ロールR, 9500,7700,10200,11 No#8 =10,HV,ヒップロールR,7500,6800, 8200,12 No#9 =11,MV,肩ロールL, 5500,4850, 7350,9 No#10=12,HV,ヒップロールL,7500,6800, 8200,10 No#11=13,MV,上腕ヨーR, 7500,4400, 9500,15 No#12=14,HV,腿ピッチR, 7500,4800, 9900,16 No#13=15,MV,上腕ヨーL, 7500,5500,10800,13 No#14=16,HV,腿ピッチL, 7500,5500,10000,14 No#15=17,MV,肘ピッチR, 7500,7100,11000,19 No#16=18,HV,膝ピッチR, 7500,4000, 7500,20 No#17=19,MV,肘ピッチL, 7500,4000, 7800,17 No#18=20,HV,膝ピッチL, 7500,7500,10000,18 No#19=21,MV,手首ヨーR, 7500,3500,11000,23 No#20=22,HV,足首ピッチR, 7500,5800, 8200,24 No#21=23,MV,手首ヨーL, 7500,3500,11000,21 No#22=24,HV,足首ピッチL, 7500,6800, 9200,22 No#23=26,HV,足首ロールR, 7500,6400, 8500,28 No#24=28,HV,足首ロールL, 7500,6200, 8400,26 (2)基本モーション&定期-取得用 [MOTION] ;------------------------------------------------------ ;- 基本モーション&定期-取得用 ; 051F00011B,ダンス再生(転送済み) ; +-- コマンド長 ; | +-- コマンド ; | | +-- パラメータ ; | | | +-- モーション番号(3D..50) 10進:61..80 mn#0=051F003D27,ホーム mn#1=051F003E24,どうぞ mn#2=051F003F25,ワクワク mn#3=051F00405A,コシニテ mn#4=051F00415B,ようこそ mn#5=051F004258,おねがい mn#6=051F004359,バイバイ mn#7=051F00445E,右にキス mn#8=051F00455F,左にキス mn#9=051F00465C,ピストル mn#10=051F00475D,敬礼 mn#11=051F004852,え〜ん mn#12=051F004953,ハート mn#13=051F004A50,キラッ mn#14=051F004B51,あなたへ mn#15=051F004C56,もんきー mn#16=051F004D57,応援 mn#17=051F004E54,エアギター mn#18=051F004F55,右ターン mn#19=051F00504A,左ターン ;------------------------------------------------------ ; 以下は、定期-取得用 mn#20=07010002000206,電力情報 mn#21=0701000502C4C5,サーボ情報:20..0F mn#22=0701000510C4D7,サーボ情報:10..1D (3)走行モード操作 [MOTION] ;- 基本・走行モーションファイル #0〜#4 各、ボタン(▲▼<>□)に対応しています。 ;- 本ファイルは、より良いモーションと差し替えてください。 ;xmlFile#0=RCB/歩行S.xml xmlFile#0=RCB/歩行9.txt xmlFile#1=RCB/後歩行9.txt xmlFile#2=RCB/左ターン.txt xmlFile#3=RCB/右ターン.txt xmlFile#4=RCB/手を振る.txt 7-2.ログファイル PLyyyymmddhhMMSS.log ログファイルは、10世代分保存(日付+時刻)され、古いファイルから削除されます。 ログファイルには、送受信コマンド等が出力されます。なお、出力情報は、GUIで変更可能です。 例) 2019/11/11 10:42:13 COM3 2019/11/11 10:42:13 COM4 2019/11/11 10:42:14 motionTbl.Count=23 2019/11/11 10:42:14 serboTblTbl.Count=25 2019/11/11 10:42:15 RS232c,rsOpen COM4 2019/11/11 10:42:22 snd,051f003e24 2019/11/11 10:42:22 rcv,041f001b 2019/11/11 10:42:29 snd,051f003f25 2019/11/11 10:42:29 rcv,041f001b 2019/11/11 10:43:02 snd,081800800b00009b 2019/11/11 10:43:02 rcv,0418001c 2019/11/11 10:43:03 snd,081800800f00009f 2019/11/11 10:43:03 rcv,0418001c 2019/11/11 10:43:05 snd,0818008013000083 2019/11/11 10:43:05 rcv,0418001c 2019/11/11 10:43:07 snd,0818008004000094 2019/11/11 10:43:07 rcv,0418001c 2019/11/11 10:45:13 snd,08180080047c1df5 2019/11/11 10:45:13 rcv,0418001c 2019/11/11 10:45:20 snd,0818008013d81d46 2019/11/11 10:45:20 rcv,0418001c (1)サーボ情報-ログ出力 ロボットタブ画面で、□ログ=ONで、画面に表示されている、サーボ情報を以下の形式で出力されます。 +-- サーボ情報出力識別 | +-- タイムスタンプ(HHmmssfff) | | +-- No | | | +-- ID(サーボID) | | | | +-- 有効フラグ | | | | | +-- encode | | | | | | +-- offset | | | | | | | +-- cmdval | | | | | | | | +-- gyro方向 | | | | | | | | | +-- gyro倍率 | | | | | | | | | | +-- speed | | | | | | | | | | | +-- stretch servo,094532203,1,2,128,10238,2740,7500,-1,1,0,45 servo,094532203,2,3,128,7324,0,7500,-1,1,0,15 servo,094532203,3,4,128,4642,-2840,7500,-1,1,0,45 servo,094532203,4,5,128,7455,-50,7500,-1,1,0,25 servo,094532203,5,6,128,7779,270,7500,-1,1,0,45 servo,094532203,6,7,128,7500,-10,7500,-1,1,0,25 servo,094532203,7,8,128,7496,0,7500,-1,1,0,45 servo,094532203,8,9,128,9782,260,9500,-1,1,0,35 servo,094532203,9,10,128,7429,-80,7500,-1,1,0,60 servo,094532203,10,11,128,5069,-290,5500,-1,1,0,35 servo,094532203,11,12,128,7567,40,7500,-1,1,0,60 servo,094532203,12,13,128,7500,10,7500,-1,1,0,30 servo,094532203,13,14,128,7443,-40,7500,-1,1,0,45 servo,094532203,14,15,128,7534,30,7500,-1,1,0,30 servo,094532203,15,16,128,7509,0,7500,-1,1,0,45 servo,094532203,16,17,128,7553,30,7500,-1,1,0,30 servo,094532203,17,18,128,7349,-135,7500,-1,1,0,45 servo,094532203,18,19,128,7471,-29,7500,-1,1,0,158 servo,094532203,19,20,128,7575,80,7500,-1,1,0,45 servo,094532203,20,21,128,4704,-2796,7500,-1,1,0,25 servo,094532203,21,22,128,7419,-70,7500,1282,20,0,45 servo,094532203,22,23,128,10316,2820,7500,-1,1,0,25 servo,094532203,23,24,128,7553,30,7500,1282,-20,0,45 servo,094532203,24,26,128,7285,-230,7500,1794,20,0,45 servo,094532203,25,28,128,7533,20,7500,1794,20,0,45 7-3.サーボパーツ修正 プリメイトaiがコケて、頭部-横動作の以下のサーボパーツが以下の形状で壊れます0.03mmのアルム版と0.4x5mmのネジとナットで折れたパーツを挟む形で補強します。 ======================================== Copyright(C) wtoy.net 2019-2020 ========================================