compass Actuino_v1.1{ モード プログラム サイズ設定 800, 600 表示位置 モニタ2左下 記録フォーム表示 モニタ2右下 } 変数 $port = "COM5" 変数 $result 変数 $voltage 変数 $version 変数 $SERVO_PIN = 5 変数 $DIGITALINPUT_PIN = 7 変数 $TONE_PIN = 9 変数 $LED_PIN = 13 変数 $ANALOGINPUT_PIN = 14 # PWM (SERVO や TONE などに使用)の番号 : 3,5,6,9,10,11 # DIGITAL入出力の番号 : 0-13 # ANALOG入力の番号 : 14-19 (A0-A5) # servoの設定 # 赤:5V # 黒:GND # 白:DIGITAL(PWM)ピン sub 初期設定{ ステータスバーに表示 "PORT : " & $port } sub 停止時{ Serial.終了 } exe Actuinoプログラムを表示する{ 実行 "Actuino\Actuino.ino" } exe Acruinoプログラムの書き込み手順を表示する{ メッセージ "ツール → マイコンボード → Arduino Unoを選択" メッセージ "ツール → シリアルポート → 番号を選択" メッセージ "スケッチ → マイコンボードに書き込む" } exe Arduino-UNOのピン配置を表示する{ 実行 "uno.jpg" } exe exe Arduinoを初期設定する{ Serial.開始 $port, 9600, 8, 0, 1 Serial.送信 "SET_OUTPUT " & $LED_PIN & "(CR)" 待機 50 Serial.送信 "SET_TONE " & $TONE_PIN & "(CR)" 待機 50 Serial.送信 "SET_SERVO " & $SERVO_PIN & "(CR)" 待機 50 Serial.送信 "SET_INPUT_PULLUP " & $ANALOGINPUT_PIN & "(CR)" 待機 50 Serial.送信 "SET_INPUT_PULLUP " & $DIGITALINPUT_PIN & "(CR)" 待機 50 Serial.終了 } exe exe バージョンを取得する{ Serial.開始 $port, 9600, 8, 0, 1 Serial.送信 "VERSION(CR)" 待機 100 Serial.受信 ($version) Serial.終了 置換 ($version), "(CR)", "" 置換 ($version), "(LF)", "" ステータスバーに表示 $version } exe exe 13番LEDのON_OFFを送信する{ Serial.開始 $port, 9600, 8, 0, 1 Serial.送信 "ON " & $LED_PIN & "(CR)" 待機 1000 Serial.送信 "OFF " & $LED_PIN & "(CR)" Serial.終了 } exe exe 連続して読み取り_ON_OFF{ Serial.開始 $port, 9600, 8, 0, 1 ■繰り返し スイッチの読み取り, 200, 1000 Serial.終了 } sub スイッチの読み取り{ Serial.送信 "READ_DIGITAL " & $DIGITALINPUT_PIN & "(CR)" 待機 50 Serial.受信 ($result) 置換 ($result), "(CR)", "" 置換 ($result), "(LF)", "" ステータスバーに表示 "result : " & $result } exe 連続して読み取り_電圧{ Serial.開始 $port, 9600, 8, 0, 1 ■繰り返し 電圧の読み取り, 100, 1000 Serial.終了 } sub 電圧の読み取り{ Serial.送信 "READ_ANALOG " & $ANALOGINPUT_PIN & "(CR)" 待機 50 Serial.受信 ($result) 置換 ($result), "(CR)", "" 置換 ($result), "(LF)", "" 計算 $voltage = int(100*$result*(5.0/1023.0))*0.01 ステータスバーに表示 "result : " & $voltage & " V" 記録 $voltage } exe exe モーターを0度にする{ Serial.開始 $port, 9600, 8, 0, 1 Serial.送信 "MOVE 0(CR)" Serial.終了 } exe モーターを90度にする{ Serial.開始 $port, 9600, 8, 0, 1 Serial.送信 "MOVE 90(CR)" Serial.終了 } exe 変数 $wait = 100 変数 $length = 70 変数 $s0 = 262 変数 $s1 = 294 変数 $s2 = 330 変数 $s3 = 349 変数 $s4 = 392 変数 $s5 = 440 変数 $s6 = 494 変数 $s7 = 523 exe 音を鳴らす{ Serial.開始 $port, 9600, 8, 0, 1 Serial.送信 "TONE " & $s0 & ", " & $length & "(CR)" 待機 $wait Serial.送信 "TONE " & $s1 & ", " & $length & "(CR)" 待機 $wait Serial.送信 "TONE " & $s2 & ", " & $length & "(CR)" 待機 $wait Serial.送信 "TONE " & $s3 & ", " & $length & "(CR)" 待機 $wait Serial.送信 "TONE " & $s4 & ", " & $length & "(CR)" 待機 $wait Serial.送信 "TONE " & $s5 & ", " & $length & "(CR)" 待機 $wait Serial.送信 "TONE " & $s6 & ", " & $length & "(CR)" 待機 $wait Serial.送信 "TONE " & $s7 & ", " & $length & "(CR)" 待機 $wait Serial.送信 "TONE " & $s7 & ", " & $length & "(CR)" 待機 $wait Serial.送信 "TONE " & $s6 & ", " & $length & "(CR)" 待機 $wait Serial.送信 "TONE " & $s5 & ", " & $length & "(CR)" 待機 $wait Serial.送信 "TONE " & $s4 & ", " & $length & "(CR)" 待機 $wait Serial.送信 "TONE " & $s3 & ", " & $length & "(CR)" 待機 $wait Serial.送信 "TONE " & $s2 & ", " & $length & "(CR)" 待機 $wait Serial.送信 "TONE " & $s1 & ", " & $length & "(CR)" 待機 $wait Serial.送信 "TONE " & $s0 & ", " & $length & "(CR)" Serial.終了 }