ロゴ坊で新型RB-01を動作させるための手順
---------------------------------------------------------------
今回新たに追加された命令以外は、旧タイプと同じです(互換性をもっています)
動作時間は、0.25秒ステップで旧タイプの半分の時間間隔に設定しています。
旧タイプのロボットで作ったプログラムはそのまま動作(時間は半分)します。
他のロゴ言語では、それに対応する命令に置き換えて下さい。
この手順をStartup.lgに登録するか、作成する制御プログラムに入れると
ロゴ坊でRB-01を制御できるようになります。
----------------------------------------------------------------
xで指定した時間後退する。
時間は、0〜15の数字を指定します。(それ以外は違う命令になってしまいます)
時間単位は、「 x × 0.25秒 」です。
to bck :x
sout (80 + :x)
end
プリンターポートからは、(888はポート番号)
to bck :x
out 888 (128 + 80 + :x)
out 888 0
end
xで指定した時間左車輪が後退する。
to bkl :x
sout (64 + :x)
end
to bkl :x
out 888 (128 + 64 + :x)
out 888 0
end
xで指定した時間右車輪が後退する。
to bkr :x
sout (96 + :x)
end
to bkr :x
out 888 (128 + 96 + :x)
out 888 0
end
xで指定した時間前進する。
to frt :x
sout (32 + :x)
end
to frt :x
out 888 (128 + 32 + :x)
out 888 0
end
xで指定した時間左車輪が前進する。
to ftl :x
sout (16 + :x)
end
to ftl :x
out 888 (128 + 16 + :x)
out 888 0
end
xで指定した時間右車輪が前進する。
to ftr :x
sout (48 + :x)
end
to ftr :x
out 888 (128 + 48 + :x)
out 888 0
end
16ステップのプログラムをロボットに転送します。
to pgm
sout 116
end
to pgm
out 888 (128 + 116)
out 888 0
end
転送したプログラムを実行させる命令です。
to rob
sout 120
end
to rob
out 888 (128 + 120)
out 888 0
end
プログラムの終了命令です。
to stp
sout 208
end
前進中入力があると停止後、右折します。
to rmv
sout 113
end
to rmv
out 888 (128 + 113)
out 888 0
end
前進中入力があると停止後、左折します。
to lmv
sout 114
end
to lmv
out 888 (128 + 114)
out 888 0
end
前進中入力があると停止します。
to smv
sout 115
end
to smv
out 888 (128 + 115)
out 888 0
end
xで指定した番地に無条件にジャンプします。(GOTO命令)
0〜15でジャンプする番地を指定します。
to jmp :x
sout (160 + :x)
end
繰り返し回数をxで指定します。
to cnt1
sout (176 + :x)
end
cnt1で指定した回数だけ、xで指定した番地へジャンプします。
0〜15でジャンプする番地を指定します。
to lop1 :x
sout (192 + :x)
end
入力があるまで待ちます。
to inp1
sout 128
end
右左折の時間をさらに短くします。
to tim1
sout 124
end
右左折の時間を短くします。
to tim2
sout 125
end
右左折の時間を標準にします。
to tim3
sout 126
end
右左折の時間を長くします。
to tim4
sout 127
end
プログラムを作成する時の書式
demo1を実行することにより、ロボットにプログラムが転送されます。
wait 0.1 は、赤外線信号を出す間待つ命令で0.05秒以上あればかまいません。
ここでは、0.1秒のタイマーです。
to demo1
pgm
step0 pgm ;ステップ0のプログラム
wait 0.1
step1 pgm ;ステップ1のプログラム
wait 0.1
step2 pgm ;ステップ2のプログラム
wait 0.1
step3 pgm ;ステップ3のプログラム
wait 0.1
step4 pgm ;ステップ4のプログラム
wait 0.1
step5 pgm ;ステップ5のプログラム
wait 0.1
step6 pgm ;ステップ6のプログラム
wait 0.1
step7 pgm ;ステップ7のプログラム
wait 0.1
step8 pgm ;ステップ8のプログラム
wait 0.1
step9 pgm ;ステップ9のプログラム
wait 0.1
step10 pgm ;ステップ10のプログラム
wait 0.1
step11 pgm ;ステップ11のプログラム
wait 0.1
step12 pgm ;ステップ12のプログラム
wait 0.1
step13 pgm ;ステップ13のプログラム
wait 0.1
step14 pgm ;ステップ14のプログラム
wait 0.1
step15 pgm ;ステップ15のプログラム
wait 0.1
end