- enter the lock password
- lock this page after save
タイトル:
最終更新情報: 7:40:52 pm on 27 March 2017 by KD119104131024.au-net.ne.jp
阿部 和広 <abee at squeakland dot jp> *Studuinoブロックプログラミング環境>http://artec-kk.co.jp/studuino/Studuino_dl.html*で超音波距離センサー *HC-SR04>https://www.switch-science.com/catalog/1606/*を使う方法を説明します。ライセンスは*CC BY-SA 3.0>https://creativecommons.org/licenses/by-sa/3.0/deed.ja*とします。 使用に際して、Studuinoやブロックプログラミング環境の改造は不要ですが、テストモードでは使えず(処理速度の問題でトリガーがかからない)、必ずプログラム転送を行う必要があります。 !配線と入出力設定 StuduinoのArduino互換端子とHC-SR04を以下の様に配線します。 |Studuino|HC-SR04| |VIN <strike>5V</strike>☆|Vcc| |A4|Trig| |A5|Echo| |GND|Gnd| ☆ <strike>Studuinoの5V端子の電源は、電池ボックスではなくUSBから供給されます。USBをつながずに使う場合、5V電源を別に用意する必要があります(100均の乾電池USB充電器が便利です)。</strike>VINから5Vの電源を取ることができます。 また、動作確認のためにLEDブロックをA0に取り付けておきます。 ブロックプログラミング環境を起動し、「編集」メニューの「入出力設定…」を選んで以下の様に設定します。つまり、LEDへの信号をトリガーとして、エコーをタッチセンサーとして受けます。 |A0|LED(動作確認用)| |A4|LED| |A5|タッチセンサー| !スクリプト例 以下はスクリプト例です。関数distanceを呼び出すと変数distanceに距離の値が入ります。この距離に単位はなく、実際の距離との関係は実験で求めてください。本来はエコーの時間をタイマーで測るべきですが、測定値が安定しないため、ループで変数をインクリメントしています。 この例では、distanceが20未満のときにA0のLEDを点灯します。 *+HC-SR04.gif+* この例のbpdファイルを以下に置きます。 *+HC-SR04.bpd+* !応用例 これを使った迷路抜けロボットです。 *+B4 BNk1CIAE04RH.jpg+* その動画です。前方に障害物があると、後退して左に約90度回ります。 <iframe width="560" height="315" src="//www.youtube.com/embed/fSdAPdPvXRE" frameborder="0" allowfullscreen></iframe>
次回保存時にアラートメールを送信するメールアドレス一覧: