title.png


第2回 Arduino初心者スタータキット到着

 通販で頼んでいた商品が到着しました。何を頼んでいたか?は、こちらから。

ar2_kitout.jpg

 思っていたより、ずいぶんとコンパクトです。
 一緒に写っているのは単三電池、この箱の中に、Arduino本体も含めて、キットの内容がすべて入っています。

ar2_kitcon.jpg

 箱の中のCD-ROMは、8cm CD。下↓がArduino本体。UNO R3の互換機です。

ar2_uno.jpg

 かっく良い。28ピンDIPのMCUですよ。しかもICソケットって……、高まるっ!

Arduino IDEのセットアップ

 何はともあれ、セットアップからスタートです。何しろ、Arduinoを使うのは今回が初めてですから、何の準備もありません。ちなみに、筆者の環境は以下の通りです。

 まず、「ELEGOO初心者スタータキット」に付属していたCD-ROMをロードしてみます。
 「何も起きない」、CD-ROMからの自動実行を禁止してあったかも?CD-ROMは認識されているので、アイコンを右クリック。「開く」がデフォルトになっているので、これを実行。CD-ROMの中身がExplorerで表示されただけ。

ar2_cdrom.png

 「Datasheet」ディレクトリの中には、部品のデータシートが入っています。上位のスタータキットに含まれる部品の分まで全部入っているので、今後、同種の部品をバラで購入したときや、購入前の検討などに使えそうです。

 日本語のドキュメントは無し。まだ何とか読めそうなのは、Englishなので、この下の「Basic Starter Kit for UNO.pdf」を開いてみます。ちなみに、「English」ディレクトリの下には、このファイルと、サンプルコードと思われる「code」ディレクトリしかありませんので、迷うことはありません。

 良かった。チュートリアルになっています。早速、Lesson 0から取り掛かりましょう。

Lesson 0

 まず、Arduino IDE(Integrated Development Environment)をインストールするようです。ArduinoのHPにリンクが通っていますので、ここからインストーラをDL、実行します。
 IDEのインストールが終わると、ドライバをインストールするか?と問われるので、Yes。
 インストールできて、起動を確認しました。ものすごくシンプルなIDEで好感が持てます。

Lesson 1

 追加のライブラリをインストールする手順みたいです。手順に沿って、「ライブラリマネージャ」を開いてみたところ、基本的なライブラリはインストール済みな様です。追加が必要になった時、または、「こんなライブラリ無いのかな?」と、思ったときにここに来たら良いのですね。そこまでわかれば、この後の手順はスキップで良いです。

 読み進むと、「Making a Connection」??早いね。てか、「ArduinoボードをUSBケーブルでPCに接続してください」みたいなステップは無いわけね?(1^^;)ズブの素人だと、言ってるじぁないですかぁ!まあ、繋ぎましょう、今でしょ?
 繋ぎました。ドライバのインストールが、始ま、らない。さっきのインストーラでドライバのインストールしてたけど、それでOKなのかな?Arduinoボードのパワーインジケータが光りました。そうじゃないLEDがもう一つ、点滅しています。念のため、「デバイスドライバ」で「ポート(COMとLPT)」を確認してみると、「Arduino Uno (COM3)」を確認できました。筆者の環境では「COM3」だったみたいです。環境によって異なるみたいなので、ご注意ください。
 IDEに戻って、「ツールメニュー ⇒ シリアルポート」から、通信に使うポートを指定しろと書いてあります。「COM3 (Arduino/Genuino Uno)」を選択。
 「ツールメニュー ⇒ シリアルモニタ」を選択すると、シリアルモニタのウインドウが表示されます。このウインドウで、通信速度を9600bps、自動スクロールにチェックするように書いてありますが、デフォルトでそうなっていました。

 あれ?Lesson 1が終わってしまった。まだ何もプログラムを書いていないので、この時点では、「シリアルモニタのウインドウが開いたね〜。設定も済んだね〜。」で、終わりみたいです。先に進みましょう。

Lesson 2

 Arduinoボード上のLEDをブリンク(点滅)させるチュートリアルみたいですね。ボードをPCに繋いだ時点で、パワーインジケータ以外に、もう一つ別なLEDが点滅していたのですが、どうも、このことみたいです。「一般的には、出荷時点で、ブリンクスケッチがインストールされています」とのこと。つまり、すでにプログラムが動いて、結果としてボード上のLEDが点滅しているようです。

 Lesson 2では、「ブリンクの点滅速度を変えてみよう」みたいなこと。「ファイルメニュー ⇒ スケッチ例 ⇒ 01.Basics ⇒ Blink」を選ぶと、最初に開いていたIDEのウインドウと同じデザインのウインドウがもう一枚開いて、そこにBlinkのプログラムが表示されました。……そういうインターフェイスね。
 おっと、ここで、やっとArduinoボードをPCに繋ぐように指示が。さっきのLesson 1では、まだボードをつながなくてもシリアルモニタの設定までできたのかもしれませんね。いずれにしても、既に接続済みですので、次へ。

※後ほど確認したところ、やはりArduinoをPCに接続しておかないと、シリアルモニタが開かないので、筆者のようにLesson 1のタイミングでPCと接続しておく必要があります。

 「ツールメニュー」から、「ボード」と「シリアルポート」が正しく設定されていることを確認せよとの指示→OKでした。
 さっき開いたBlinkのスケッチで、適切に点滅速度を変更して、まずは「スケッチメニュー ⇒ 検証・コンパイル」、エラー無く、正常終了しました。
 「スケッチメニュー ⇒ マイコンボードに書き込む」を実行。あれあれ、またコンパイルが始まりました。makeっぽくはなっていない模様、毎回コンパイルする仕様みたいですね。シリアル転送中を示す、さっきのとは別なLEDが点滅した後で、新しい点滅間隔で点滅し始めました。

Lesson 3〜10

 この後は、スタータキットに含まれる様々なデバイスを使ったサンプルが続きます。今後、時間があったら、やってみます。
 Lesson 2でプログラムを転送して実行できることが確認できましたので、チュートリアルはここまででOK。

 「Arduino初心者」の称号も、ここで返上ですかね?

「Lチカ」?

 「LEDをチカチカ点滅させる」サンプルを実行して、ひとまず、ボードが正常(不良品ではない)と確かめることをそう呼ぶようです。前節のLesson2のことでしょうか?同じことですが、ブレッドボードの練習も兼ねて、外部に回路を作ってみようと思います。

 キットの中に入っていた、ブレッドボードを使います。

ar2_brreal.jpg

ar2_bread.png

 使うのは初めてですが、上下の端に横方向に赤と青の線が走っていて、線のそばに空いている穴がすべて、内部でつながっています(同電位)。ここの穴は電源(Vcc、GND)とか、共通で使用する信号線などに使用可能です。
 中央付近に横に走る溝が見えますが、その上下に空いた穴の行に、a〜jの記号が振られています。ここの穴は、さっきの上下端の穴と違って、縦方向につながっています。a〜eが内部でつながっていて、f〜jが内部でつながっています。横方向の列には、1〜30の数字が振られていて、列と列の間は電気的に分離されています。
 上下中央の溝(eとfの間)を挟むように、ICや素子を差し込んで使うことを想定しているものと思われます。

 LEDを光らせるためには、ダイオードに順方向電流を流してやります。順方向電流が流れるとき、ダイオードはショートと同じですから、電流を制限する抵抗を直列に入れてやります。回路図は以下のような感じ。

ar2_lschem.png

 この回路をブレッドボード上に構築するのですが、パズルみたいなものですね。最初なので、練習でブレッドボードへの接続イメージを描いておきます。

ar2_bschem.png

 組み方は一通りではないので、組みやすいように工夫してOKです。青い線にはジャンパ線を使い、赤い線は各素子の足を(切らずに)そのまま使うと楽です。差し込み易い様、適切に曲げて使います。穴の内部に金属の爪が入っていますので、爪に挟まるようまっすぐに差し込んでください。

 抵抗値は、5kΩ程度の物を使います。キットに入っていた抵抗の中で一番近かったのは、5.1kΩでした。Vcc=5Vなので、この時LEDに流れる電流 I_LED=5V/5.1kΩ≒0.98mAです。このくらいで十分光ると思います。

スケッチ?

 なにやら、Arduino IDEで作ったプログラムのことを「スケッチ」と呼ぶみたいです。正確に何を指して「スケッチ」と呼ぶのか定かではないので、このページでは普通に「プログラム」と記載します。
 先人たちの紹介ページを読むときは、「サンプルスケッチ」などの言葉が使われますので、慣れた方が良いです(←自分に向かって言ってます(1^^;))。

  プログラム:
  void setup (void)
  {
    // I/Oポートの設定(PD2を出力にする)
    pinMode (2, OUTPUT);
  }
  void loop (void)
  {
    // PD2を1出力
    digitalWrite (2, HIGH);
    // 時間待ち(0.6s)
    delay (600);
    // PD2を0出力
    digitalWrite (2, LOW);
    // 時間待ち(0.9s)
    delay (900);
  }


 このプログラムだと、0.6s点灯→0.9s消灯→…を繰り返します。点滅周期は1.5sです。I/OポートはPD2を使いましたので、ブレッドボードにも、ArduinoボードのPD2端子からジャンパ線を接続します。
 Arduino IDEの設定不良、ArduinoボードとPCの接続不良、Arduinoボードの初期不良、等、問題が無ければ、チカチカ点滅するはずです。

 それはそうと、IDEのエディタはTABを使ってくれません。それ、嫌いなんですよね……。
 「ファイルメニュー ⇒ 環境設定」でオプションを設定できますが、あまり項目が多くないです。下の方に薄い字で、「以下のファイルを直接編集すれば、より多くの設定を行うことができます」とあります。ということで、ディレクトリを開き、IDEを一旦終了してから、preferences.txtをテキストエディタで開きます。以下の項目を修正。

  editor.tabs.expand=false
  editor.tabs.size=4


 これで、好みの設定になりました。IDEを起動すると、設定が反映されており、満足(1^−^)v。

動作確認

 プログラムをArduinoボードに転送して実行します。

ar2_blink.jpg

 良いようですね。

 セットアップから動作確認までALL OKです。

 次回は、デバッグに欠かせない機能の確認をしたいと思います。


btn_arduino.png

btn_prev.png btn_next.png

home