続いてLabVIEWを使って、プログラムを作ります。
DVD-ROMには、レッスン3用として「Lesson 3.lvrbt」というプログラムが収録されているのですが、あまり利用をオススメできません。 このプログラムは超音波センサーがNXT用として作られていますので、EV3で動かそうとすると、修正に手間がかかるためです。
ここでは、前回作成した「dcmotor」を改造してプログラムを作ります。
「回路図エディタ(Schematic Editor)」を使って、EV3超音波センサーとEV3カラーセンサーを登録します。
ついでに、DCモータの名前を変更しておきましょう。
・DCモータ1→LEFT DCモーター
・DCモータ2→RIGHT DCモーター
これで、モーター番号じゃなくて、LEFT/RIGHTでモーターを区別できるようになりました。便利になったはずです。
前回、うまくロボットを前進させることができなかったので、今回はその対策を行っておきましょう。
前進できなった原因はLEFT(左)のDCモーターがパワーをプラスにした状態で、逆回転してしまうためでした。
最初に思いついた対策方法がこちらです。掛け算のアイコンを使って、パワーの符号をマイナスに反転するという方法です。
「モーターを回転(Move Motors)」に入力するパワーをマイナスにすると、モーターは逆転するので、これで正しい方向に回転してくれるはずです。
この方法でもいいのですが、プログラムがゴチャゴチャとしていて見た目が良くありません。そこで別の解決方法も考えてみましょう。
ちなみに写真の赤色の矢印がパワーがマイナスの時の回転方向で、青色の矢印がプラスの時の回転方向です。
さらにもっと上手な解決方法がこちらです。
回路図エディタでモーターの回転方向を変更しています。やり方はLEFT DCモーターを選択して、「反転(Reverse)」のチェックボックスをオンにするだけです。これで、リード線の配線を反転しなくても、LEFT DCモーターの回転方向が逆になります。
プログラムの書き方も見直してみました。このようにモータポートを複数指定すると、1個のアイコンで複数のモーターを動かすことができます。 先ほどのプログラムと機能は同じですが、見た目はずっとすっきりしました。