« Macユーザーがロボザックをするには | トップページ | 行くかも。かわさきロボット競技会 »

続々・プログラミング・シミュレータの注意点

プログラミング・シミュレータで作ったデータを保存すると、roboScriptと同じ拡張子のrsfファイルとなりますが、そのファイルをroboScriptで開くと、WAIT, DIR, SPEEDの違いに加え、MOVEにも問題が生じます(なんかボロボロやん!)。

roboBASICのコマンドリファレンスによると、MOVEコマンドの書式は、
(1) MOVE24 100,100,100,....
(2) MOVE G24,100,100,100,....
(3) MOVE G6A,100,100,100,....
(4) MOVE G8A,100,100,100,....
などのような書き方ができます。
が、
roboScriptは、(1)のみ対応
プログラミング・シミュレータは、(2)のみ対応
のようです。

同じ拡張子なんですが、MOVEデータが、MOVE24だったらroboScriptで作られたファイル、MOVE G24だったらプログラミング・シミュレータで作られたファイルということが言えるかもしれません。

ところで、どちらのソフトで保存しても「This is roboScript file Do not edit this contents !」と最初に記述があるんですが、roboScriptの方には、その記述の後にバイナリで0x000003と余分な数値が入っているんですよ。この数値の後がデータであることを示すために、プログラマーが入れたのかなぁ??プログラミング・シミュレータの開発者さんは、見落としたのかな?知ってて真似しなかったのかな?さてどちらでしょう!?

あと、マニアックな話になってしまうので、ご興味のある方だけ、見てもらえればいいと思いますが、上の図のrsfデータをロボットに転送すると、以下の図のようなデータが送られます。これを見ると、

MOTOR G24
PTP ALLON
MOVE24 .....
.....

となっています。
実際のデータの前に、モーターをオンにする”MOTOR G24”というコマンドが、付加されているだけのようで、DIR, GETMOTORSETなど、roboBASICで最初に記述する様なコマンドは付加されていないみたいです。

Damp

|

« Macユーザーがロボザックをするには | トップページ | 行くかも。かわさきロボット競技会 »

工作・改造・解析」カテゴリの記事

コメント

miconoさん、今晩は。

 roboScriptの情報どうも有難う御座いました。大変、助かりました。もう1箇所も修正しないと正常動作しないことがわかりましたので、ご連絡致します。
コマンドラインの行末には、通常は「0D 0A」ですが、roboScriptのrsfファイルでは「OD 0D」としなければ、正常に動作しませんでした。
2007年8月25日土曜日 - 09:03 PM

投稿: takuo | 2007年9月 5日 (水) 16時35分

takuoさま
報告ありがとうございます。
私も後ほどテストしてみますが、

0Dは、マックの改行コード
0D0Aは、ウインドウズの改行コード
0Aは、Unixの改行コード
です。

000003というのも、どうでもいいコードだと思っていましたが、0D0Dでないとうまく通らないというのも、なんでそんなプログラミングするんでしょうね。プログラミング・シミュレータ作った人も、roboScript作った人も何考えてるんだろう??まぢいろんなこと理解できませんよね。
2007年8月26日日曜日 - 01:09 AM

投稿: micono | 2007年9月 5日 (水) 16時35分

miconoさん、こんいちは。

 小出しみたいになって申し訳ありませが、修正方法の追加情報です。
・OD OA は、テキストエディタで、改行文字コードをCR(OD)を指定すれば一括で修正できます。
・さらに、サーボの数値はカラムを揃える必要があります。
2007年8月26日日曜日 - 09:50 AM

投稿: takuo | 2007年9月 5日 (水) 16時36分

コメントを書く



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




トラックバック

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

この記事へのトラックバック一覧です: 続々・プログラミング・シミュレータの注意点:

« Macユーザーがロボザックをするには | トップページ | 行くかも。かわさきロボット競技会 »