« BlueSMiRF関連(オーディオプラグに繋ぐには6) | トップページ | srmファイル形式(SimROBOTのファイル)解析2 »

srmファイル形式(SimROBOTのファイル)解析1

Safariscreensnapz004先日公開された
SimROBOT 0 for ROBONOVA-I

なんですが、独自のsrm形式と、rsf形式(roboScript)が読込め、書き出しは、srm形式のみのようですね。

RZ1Disguiseでsrm形式を変換できるように、とりあえず、サンプルのBOWをsrmで書き出して中を見てみました。

ただのテキストファイルですね。
テキストエディタで開いて見てみると、以下のようになっていました。

F0 [ Body px=0.000, py=7.657, pz=0.057, rx=-90.000, ry=-0.055, rz=90.000 ] RThigh=0.000,RKnee=38.000,RShin=0.000,RAnkle1=21.000,RAnkle2=0.000,LThigh=0.000,LKnee=38.000,LShin=0.000,LAnkle1=21.000,LAnkle2=0.000,LShoulder=0.000,LUpperArm=-70.000,LArm=-20.000,RShoulder=0.000,RUpperArm=-70.000,RArm=-20.000;
F14 [ Body px=0.000, py=6.862, pz=-0.460, rx=-90.000, ry=-39.055, rz=90.000 ] RThigh=0.000,RKnee=105.000,RShin=-10.000,RAnkle1=3.000,RAnkle2=0.000,LThigh=0.000,LKnee=105.000,LShin=-10.000,LAnkle1=3.000,LAnkle2=0.000,LShoulder=0.000,LUpperArm=-70.000,LArm=-20.000,RShoulder=0.000,RUpperArm=-70.000,RArm=-20.000;
F80 [ Body px=0.000, py=6.862, pz=-0.460, rx=-90.000, ry=-39.055, rz=90.000 ] RThigh=0.000,RKnee=105.000,RShin=-10.000,RAnkle1=3.000,RAnkle2=0.000,LThigh=0.000,LKnee=105.000,LShin=-10.000,LAnkle1=3.000,LAnkle2=0.000,LShoulder=0.000,LUpperArm=-70.000,LArm=-20.000,RShoulder=0.000,RUpperArm=-70.000,RArm=-20.000;
F98 [ Body px=0.000, py=7.657, pz=0.057, rx=-90.000, ry=-0.055, rz=90.000 ] RThigh=0.000,RKnee=38.000,RShin=0.000,RAnkle1=21.000,RAnkle2=0.000,LThigh=0.000,LKnee=38.000,LShin=0.000,LAnkle1=21.000,LAnkle2=0.000,LShoulder=0.000,LUpperArm=-70.000,LArm=-20.000,RShoulder=0.000,RUpperArm=-70.000,RArm=-20.000;
F114 [ Body px=0.000, py=7.657, pz=0.057, rx=-90.000, ry=-0.055, rz=90.000 ] RThigh=0.000,RKnee=38.000,RShin=0.000,RAnkle1=21.000,RAnkle2=0.000,LThigh=0.000,LKnee=38.000,LShin=0.000,LAnkle1=21.000,LAnkle2=0.000,LShoulder=0.000,LUpperArm=-70.000,LArm=-20.000,RShoulder=0.000,RUpperArm=-70.000,RArm=-20.000;

構造

キーフレーム:

  • F
  • フレーム番号
  • スペース

位置と向き:

  • [
  • スペース
  • Body //基準部位
  • スペース
  • px=?, //X位置
  • スペース
  • py=?, //Y位置
  • スペース
  • pz=?, //Z位置
  • スペース
  • rx=?, //X軸回転
  • スペース
  • ry=?, //Y軸回転
  • スペース
  • rz=? //Z軸回転
  • スペース
  • ]
  • スペース

サーボモータ:

  • RThigh=?, //右大腿(股関節の外転、内転):#22
  • RKnee=?, //右膝(股関節の屈曲、伸展):#21
  • RShin=?, //右脛(膝関節の屈曲、伸展):#20
  • RAnkle1=?, //右足首1(足首の底屈、背屈):#19
  • RAnkle2=?, //右足首2(足首の内反、外反):#18
  • LThigh=?, //左大腿(股関節の外転、内転):#4
  • LKnee=?, //左膝(股関節の屈曲、伸展):#3
  • LShin=?, //左脛(膝関節の屈曲、伸展):#2
  • LAnkle1=?, //左足首1(足首の屈、背屈):#1
  • LAnkle2=?, //左足首2(足首の内反、外反):#0
  • LShoulder=?, //左肩(肩関節の屈曲、伸展):#6
  • LUpperArm=?, //左上腕(肩関節の外転、内転):#7
  • LArm=?, //左腕(肘関節の屈曲、伸展):#8
  • RShoulder=?, //肩(肩関節の屈曲、伸展):#12
  • RUpperArm=?, //上腕(肩関節の外転、内転):#13
  • RArm=?; //腕(肘関節の屈曲、伸展):#14

 
フレーム:キーフレームのフレーム番号に"F"を付ける。

位置と向き:基準部位が胴になっていると、換算するのが特に面倒くさそう。ま、足になっていても面倒くさそうだけど。。。

サーボモータ:右にはR、左にはLが付いた名前とモータの角度で各モータを表しているみたい。けど名前の付け方が変な気がするけど、ま、いいや。上記赤字で示したモータに対応します。

スタンダードポーズの角度が以下(赤字はroboBASICなどの場合の角度)

  • RThigh=0.000 //100
  • RKnee=38.000 //93
  • RShin=0.000 //145
  • RAnkle1=21.000 //76
  • RAnkle2=0.000 //100
  • LThigh=0.000 //100
  • LKnee=38.000 //93
  • LShin=0.000 //145
  • LAnkle1=21.000 //76
  • LAnkle2=0.000 //100
  • LShoulder=0.000 //100
  • LUpperArm=-70.000 //30
  • LArm=-20.000 //80
  • RShoulder=0.000 //100
  • RUpperArm=-70.000 //30
  • RArm=-20.000 //80

とBOWの場合は、以上のような構造でした。
srmからrsf、basへの変換は簡単に対応できそうですね。
srmへの変換は位置情報算出がやっかいだなぁsweat01でも、SimROBOTのインポードRSFでも、位置情報は何も計算されないみたいだから、それでいいなら、簡単だなhappy01

----------------
にほんブログ村 科学ブログ 
ロボットへ
にほんブログ村

|

« BlueSMiRF関連(オーディオプラグに繋ぐには6) | トップページ | srmファイル形式(SimROBOTのファイル)解析2 »

RZ1シリーズ」カテゴリの記事

週刊 ロボザック」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/221673/41066608

この記事へのトラックバック一覧です: srmファイル形式(SimROBOTのファイル)解析1:

« BlueSMiRF関連(オーディオプラグに繋ぐには6) | トップページ | srmファイル形式(SimROBOTのファイル)解析2 »