ArduinoでIoTにチャレンジ<その2>Wi-Fiを使う前の準備

 まず、サンプルのプログラムBlinkを読み込み、ボード上のLEDを点滅するプログラムのコンパイル、ボードへの書き込みができて、プログラムが正しく動くことを確認します。次回、Wi-Fiを利用するサンプル・プログラムを動かしてみます。

Blinkを動かして動作確認

 Arduino IDEを起動してメニューバーの、

   ファイル>スケッチ例>Basics>Blink

を選択すると、基板上のディジタル・ポート6に接続されているLEDを1秒間隔で点滅するプログラム(スケッチ)が、Arduino IDEのエディタ画面に表示されます。

 UNOなどのボードは、ディジタル・ポート13にLEDが接続されています。MKR WiFi 1010などのボードは、ディジタル・ポート6にLEDが接続されています。

Blinkのスケッチ

 サンプル・スケッチのBlinkのプログラムの本体部分を次に示します。

初期化処理部

 void setup()に続けて{ }で囲まれた部分に書かれた命令は、最初に一度だけ実行され以後は実行されません。そのため、この部分にはデバイスの初期化、変数の初期設定などプログラムの最初に一度だけ行う処理を記述します。
 ここではLEDの点滅処理を行うLED_BUILTINポートを、命令pinModeで出力を示すOUTPUTに指定します。命令は赤で表示されます。大文字小文字は区別されます。間違えると赤の表示になりません。青で表示される文字はシステムが用意した定数などです。

スケッチ(プログラム)の本体

 void loop()に続く{ }で囲まれた部分に、スケッチの本体が記述されます。先頭に記述された命令から、順番に実行されます。最後の命令が実行されたら、無条件に先頭の命令から繰り返し実行されます。

 LEDの点灯は、次のdigitalWrite命令で、LED_BUILTINで示されるディジタル・ポートの出力を HIGHで示される状態に設定します。この場合、出力をHIGH(1)にします。LEDはONになります。

   digitalWrite(LED_BUILTIN, HIGH);

 次のdelay(1000);は1000μsの時間待ちを行う命令で、1秒間LEDが点灯し続けます。

    digitalWrite(LED_BUILTIN, LOW);

 この命令で、出力はLOW(0)となり、LEDは消灯します。この後のdelay(1000);命令で1秒間LEDは消灯し続けます。

スケッチのコンパイル・アップロード

 スケッチをコンパイルしてアップロードする手順は、次のようになります。エディタでスケッチを作成した後はコンパイルして、エラーがあれば、修正を行います。コンパイルは、ツールバーの左端のアイコンをクリックすると始まります。右側にある右向きの矢印のアイコンは、コンパイルしてプログラムの書き込み処理(アップロード)を行います。

 アイコンにマウス・ポインタをのせると、右側に機能が表示されます。コンパイルのアイコンは検証と表示されます。これは、この検証ボタンを押してプログラムをコンパイルしエラーを確認し、エラーがあれば修正し再度コンパイルし、エラーがなくなるまで検証を繰り返します。


スケッチをボードに書き込む

 スケッチをボードに書き込む前に、USBケーブルでPCとArduinoのマイコン・ボードを接続します。

ボードの指定

 メニューバーの、

   ツール>ボード>Arduino SAMD>Arduino WKR WiFi 1010

を、次に示すように選択して、該当するボードを選択します。


シリアルポートの指定

 メニューバーの、

   ツール>シリアルポート>COM4(Arduino WKR WiFi 1010)

を、次に示すように選択して、該当するシリアルポートを選択します。
 COMポートは、接続の状態により異なる数値が表示されます。


 以上の設定がおわり、プログラムにエラーがなくなったらツールバーの「マイコンボードに書き込む」のアイコンをクリックして、プログラムを書き込みます。
 プログラムの書き込みを終えると、ボード上の黄色いLEDが点滅を開始します。マイコン・ボードへの電源は、USB経由で供給されています。

次回

 ここまでの作業で、プログラムを開き、コンパイル、ボードへの書き込みを行い、プログラムの動作確認を行うことができました。この結果を基に、次回はWi-Fi経由でLEDのON/OFFを行うサンプル・スケッチ AP_SimpleWebServerを動かしてみます。

(2021/08/19)

<神崎 康宏>

前へ

ArduinoでIoTにチャレンジ<その1>まずはIoT対応のArduinoを使ってみる

次へ

ArduinoでIoTにチャレンジ<その3>Wi-Fi経由でLチカ