ロボットプログラミング 教材 ろぼたみくらぶ
ロボットプログラミング教材ろぼたみくらぶ

レベル★★の項目

[IN]のしくみ


IN=値の命令は、コントローラーに接続したセンサー類からの情報を得る命令です。この命令自体にロボットを動かす機能はありませんが、センサーを使って[IF]で動かす時にセンサーからの入力情報を得ている必要があります。

値について値はコントローラーの【IN 0】から【IN 3】の番号と連動していて、例えば【IN 1】につないだセンサーからの入力情報を得る場合は[IN=1]にします。

[IN]命令に対応するセンサー

IN=値命令は、クリエイティブ、インテリジェント、ACE LABシリーズの全てのセンサーに対応しています。

  • 赤外線センサーモジュール
  • スイッチモジュール
  • 光センサーモジュール
  • 音センサーモジュール
  • 傾斜センサーモジュール

 

TronZ-Card V2ではINの他にSWITCHIRの命令があります。これらもセンサーの情報を得る命令ですが、[IN]命令で入力情報を得られる為、出番がほとんどありません。

使うとすれば、プログラムを人に見せる時にフローが解りやすくなる所でしょうか。

[ON]と[OFF]のしくみ


[ON]と[OFF]は、コントローラーのOUTポートにつないだLEDモジュールの点灯、消灯を制御する命令です。

ON=値OFF=値

値についてそれぞれの値は、コントローラーの【OUT 0】から【OUT 3】の番号と連動していて、例えば【OUT 1】につないだLEDモジュールを点灯させたい場合は[ON=1]にします。
[ON]の値設定画面
クリエイティブ、インテリジェントの場合
エースラボシリーズプログラムコントローラー
エースラボ3~4の場合

 

LEDモジュールの点灯時間は、[DELAY]や[DELAY100]などを使い制御します。LEDモジュールを消灯したい場合は次のプログラムの様に[OFF]を使います。

[SOUND]のしくみ


[SOUND]は音を出す命令で、出せる音は6種類あります。

SOUND=値

※音はプログラムコントローラーのブザーモジュールから出ます。
※ACE LABシリーズのプログラムコントローラーの場合は、ブザーモジュールを3ピンケーブルでつないでください。

内蔵されたブザーモジュール

使い方

音を出すには、[SOUND]を挿入し、値を1~6のいずれかに設定します。音を止めるには、新たに[SOUND]を挿入し、値を”0”に設定します。
例えば下のプログラムは、[SOUND=1]で音が出て、[DELAY=3]で3秒間遅延した後、[SOUND=0]が実行され音が止まります。

値について値を変更する事で音が変わります。設定値は0~20までありますが、実際に動作するのは6までです。

  • 値0 無音(音を止める時に使います)
  • 値1 ピーーーーー
  • 値2 ピーポーピーポー
  • 値3 細かい連続音
  • 値4 UFO
  • 値5 低音→高音
  • 値6 高音→低音

[DELAY]と[DELAY100]のしくみ


[DELAY]と[DELAY100]は、指定の秒数、次の命令の実行を遅らせる命令です。

DELAY=値DELAY100=値

  • [DELAY]は1秒単位で設定できて最大15秒
  • [DELAY100]は、0.1秒単で設定できて最大1.0秒
[DELAY]とはプログラム実行時に「次の命令実行を○○秒遅らせろ」と言う命令。

使い方

次のプログラム[GO=0]→[DELAY=3]→[STOP]を実行すると、ロボットは3秒前進して停止します。

 

実際のプログラムの動きは、[GO]で前進し[DELAY]で[STOP]の実行を3秒遅らせた形です。これによりロボットは3秒前進後に停止となります。

[GO][BACK][LEFT][RIGHT]のしくみ


GO=値BACK=値LEFT=値RIGHT=値

これらの命令は、次の図のロボットの様に、ロボットの向きとモーターの位置構成を対象にして作られていて、【MOTOR0】と【MOTOR1】を同時に制御します。

[GO]ロボットを前進させる命令です。
命令を受けたロボットは、コントローラーのMOTOR 0MOTOR 1に繋いだDCモーターを回転させます。MOTOR 0につないだDCモーターは反時計回り、MOTOR 1の方は時計回りになります。
[BACK]ロボットを後進させる命令です。
命令を受けたロボットは、コントローラーのMOTOR 0MOTOR 1に繋いだDCモーターを回転させます。MOTOR 0につないだDCモーターは時計回り、MOTOR 1の方は反時計回りになります。
[LEFT]
ロボットを左回転させる命令です。
命令を受けたロボットは、コントローラーのMOTOR 0MOTOR 1に繋いだDCモーターを回転させます。MOTOR 0につないだDCモーターと、MOTOR 1のDCモーターは共に時計回りします。
[RIGHT]
ロボットを右回転させる命令です。
命令を受けたロボットは、コントローラーのMOTOR 0MOTOR 1に繋いだDCモーターを回転させます。MOTOR 0につないだDCモーターと、MOTOR 1のDCモーターは共に反時計回りします。
値について

[GO=0]や[BACK=0]の”0”の値は、次の命令を実行するまでの遅延時間です。値は0.1秒~0.9秒までをカード挿入時に出る画面で指定します。0.9秒以上を指定する場合は、直後に[DELAY]や[DELAY100]の命令を使います。

※プログラミング初期段階のテキストでは、動作時間としている箇所があります。