プログラム例

RDCの機能を試してみましょう。

Arduinoのメニューの「スケッチ例」のピン番号を修正する場合と、RDC用のサンプルスケッチ「RDC_samples」の例があります。

「RDC_samples.zip」RDC_ArdublockSamples.zipは、このページの一番下からダウンロードしてください。
展開して自分のArduinoフォルダ(OSX:書類/Arduino Windows:ドキュメント/Arduino)の中に入れてください。

 準備とプログラムの書き込み方はこちら プログラムをはじめよう 
 

1.ボタン

ボタン(12番ピン)を押すとLED(13番ピン)が点灯します。
メニューの「ファイル」から「スケッチの例」>「02.Digital」>「DigitalInputPullup」を開きます。
「pinMode(2, INPUT_PULLUP)」と「digitalRead(2)」のピン番号を2から12に修正して書き込みます。

ArduBlockの場合は、内容が上書きされてもよいファイルの上でArduBlockを起動します。
「開く」ボタンを押して「b01_RDC_Button_LED.abp」を開きます。

2.アナログセンサ

RDCの4つのセンサ(明るさ/スライダー/音/抵抗センサ)からアナログポートへの入力をシリアルモニタで確認します。
メニューの「ファイルから「スケッチの例」>「01.Basics」>「AnalogReadSerial」を開きます。
「AnalogRead(A0)」のピン番号を各センサのピン番号に修正して書き込みます。
(RDC-104:明るさA2/スライダーA3/音A4/抵抗センサA5 RDC-103:明るさA4/スライダーA5/音A0/抵抗センサA3)
このボタンを押してシリアルモニタを開きます。

ArduBlockは「b02a_RDC_AnalogRead.abp」を開きます。

アナログ入力A0~A5までの値をまとめてシリアルモニタに出力することもできます。
メニューの「ファイルから「スケッチブック」>「RDC_samples」>「c02_RDC_AnalogReadSensors」を開て書き込みます
ArduBlockは「02b_RDC_AnalogReadSensors.abp」を開きます。

3.超音波センサ

超音波センサで対象物までの距離を計測します。
超音波センサをPINGソケットに差し込みます。ピンの名前を間違えないように接続します。
メニューの「ファイルから「スケッチの例」>「06.Sensors」>「Ping」を開きます。
「const int pingPin = 7」のピン番号を7から11に修正して書き込みます。
このボタンを押してシリアルモニタを開きます。

ArduBlockは「b03_RDC_Ping.abp」を開きます。
※モータの動きなどでdelay関数を同時に使用する場合、待ち時間の長さによって計測がうまくいかなくなるので注意が必要です。


4.赤外線測距

赤外線LED(11番ピン)と明るさセンサ(A2ピン)で距離を計測します。
メニューの「ファイルから「スケッチブック」>「RDC_samples」>「c04_RDC_IRdistance」を開いて書き込みます
シリアルモニタボタンを押してセンサから対象物までの距離をシリアルモニタで確認します。

ArduBlockは「b04_RDC_IRdistance.abp」を開きます。

5.モータ

モータを回転させます。2つのモータと車輪をつけると前進(または旋回、後進)します。
モータをM1/M2ソケットに接続します。
メニューの「ファイルから「スケッチブック」>「RDC_samples」>「c05_RDC_Motor」を開て書き込みます
ArduBlockは「b05_RDC_Motor.abp」を開きます。


6.サーボ

サーボを回転させます。
サーボをデジタルポートに接続します。サーボのケーブルは茶色(または)がGです。
ピンは上からデジタル入出力ピン、V、Gの順に並んでいます。
メニューの「ファイルから「スケッチの例」 > 「Servo」 > 「Sweep」を開きます。
「myservo.attach(9)」のピン番号を9からサーボを接続したピン番号に修正して書き込みます。
ArduBlockは「b06a_RDC_Servo.abp」を開きます。

スライダーの位置に応じてサーボを回転させます。
メニューの「ファイルから「スケッチの例」 > 「Servo」 > 「Knob」を開きます。
「myservo.attach(9)」のピン番号を9からサーボを接続したピン番号に修正します。
「potpin = 0」のピン番号を0からA3(RDC-103はA5)に修正して書き込みます。
ArduBlockは「b06b_RDC_Servo_Slider.abp」を開きます。


7.I2C LCD(RDC-104 Type2/Type3+のみ)

LCDに基板搭載のアナログセンサの値を表示します。
メニューの「ファイルから「スケッチブック」>「RDC_samples」>「c07a_RDC_I2CLCD_Sensors」を開て書き込みます
ArduBlockは「b07_RDC_I2CLCD_Sensors.abp」を開きます。

乾電池1本の電圧と1K〜100KΩまでの抵抗値が計測できるテスターです。
メニューの「ファイルから「スケッチブック」>「RDC_samples」>「c07b_RDC_I2CLCD_Tester」を開て書き込みます
ArduBlock用のプログラムはありません。

8.コンパスセンサ QMC5883

コンパスセンサで方位を計測します。
I2Cソケットにコンパスセンサを差し込みます。ピンの名前を間違えないように接続します。
カスタムライブラリのサンプルを使用します。
メニューの「ファイルから「スケッチの例」 > 「DFRobot_QMC5883」 > 「QMC5883_compass」を開て書き込みます
シリアルモニタボタンを押して方位をシリアルモニタで確認します。

ArduBlockは「b08_RDC_QMC5883.abp」を開きます。


9.加速度/ジャイロセンサ MPU-6050/MPU-9250

加速度/角速度を計測します。
I2Cソケットに加速度/ジャイロセンサを差し込みます。
カスタムライブラリのサンプルを使用します。
メニューの「ファイルから「スケッチの例」 > 「MPU6050」 > 「Examples」 > 「MPU6050_DMP6」を開て書き込みます
ライブラリを使わないスケッチは、「RDC_samples」>「c09a_RDC_MPU6050」または「c09b_RDC_MPU6050を開て書き込みます
シリアルモニタボタンを押してデータをシリアルモニタで確認します。

ArduBlockは「b09_RDC_MPU6050.abp」を開きます。

加速度/ジャイロセンサを購入する(RDC-103は基板に搭載済)

10.ブザー

ブザーからメロディを出力します。
RDC-104は超音波用ソケットのTr(11番ピン)とGに圧電ブザーを差し込みます。
メニューの「ファイルから「スケッチの例」 > 「02.Digital」 > 「toneMelody」を開きます。
「tone(8, melody[thisNote], noteDuration)」と「noTone(8)」のピン番号を8から11に修正して書き込みます。
ArduBlockは「b10_RDC_tone.abp」を開きます。
※tone関数は5番ピンのanalogWrite(M2のPWM速度制御)と干渉します。同時に使用することができません。

 圧電ブザーを購入する(RDC-103は基板に搭載済)

その他

「RDC_samples」のその他のプログラムです。
RDC_Serial(シリアル通信でWifi基板など他のデバイスとシリアル通信する)
RDC_SPIGLCD_Sensors(RDC-103 Type2/Type3+のLCDにアナログセンサの値を表示する)
RDC_SPIGLCD_Tester(RDC-103 Type2/Type3+用テスター、電池チェッカー+抵抗チェッカー)
ċ
RDC_ArdublockSamples.zip
(21k)
長谷川淳,
2018/10/08 0:47
ċ
RDC_samples.zip
(20k)
長谷川淳,
2018/10/25 15:33