汎用の試験運転用プログラムです。
モーターを使うモデル(RB2やPT1)に電力を供給、試験運転に使うことを想定しています。
接続方法
運転方法
| goback0 | タッチセンサー 1 押されたとき |
光センサー 2 明るくなったとき |
マイブロック GOBACK |
|||||
|---|---|---|---|---|---|---|---|---|
| 設定 counter1=1 |
マイブロック GOBACK |
マイブロック GOBACK |
もし counter1 > 0 そうでないとき |
|||||
| オン ABC | 設定 counter1=0 |
設定 counter1=1 |
||||||
| リピート | オフ ABC (滑走) |
反転 ABC | ||||||
| 期間 タイマー1 < 20.0 |
トーン 500 / 0.1秒 |
オン ABC | ||||||
| オフ ABC (滑走) |
トーン 2000 / 0.1秒 |
|||||||
| ビープ 3 |
||||||||
| ウェイト 1.0秒 |
||||||||
| プログラム 終了 |
||||||||
program test {
#include <RCX2.h>
#include <RCX2MLT.h>
#include <RCX2Sounds.h>
#include <RCX2Def.h>
sensor touch1 on 1
touch1 is switch as boolean
event tPress_touch1EventPress when touch1.pressed
sensor light2 on 2
light2 is light as percent
event lBrite_light2EventHigh when light2.high
macro GOBACK {
if counter1 > 0 {
counter1 = 0
float [ A B C ]
tone 500 for 10
}
else {
counter1 = 10
reverse [ A B C ]
on [ A B C ]
tone 2000 for 10
}
}
main {
ext InterfaceType "kFreestyle"
rcx_ClearTimers
bbs_GlobalReset([A B C])
start TouchWatcher0
start LightWatcher1
rcx_Priority( 8 )
trigger tPress_touch1EventPress
trigger lBrite_light2EventHigh
try {
counter1 = 10
on [ A B C ]
} retry on fail
try {
while timer1 < 200 {
}
} retry on fail
try {
float [ A B C ]
sound 3
} retry on fail
wait 100
try {
stop tasks
} retry on fail
}
watcher TouchWatcher0 monitor tPress_touch1EventPress
{
rcx_Priority( 3 )
try {
GOBACK
} restart on fail
} restart on event
watcher LightWatcher1 monitor lBrite_light2EventHigh
{
rcx_Priority( 4 )
try {
GOBACK
} restart on fail
} restart on event
}
|