🌏

電子工作 その1 ミニワークショップを開催!(Arduino+ブレッドボード編)

2022/05/19に公開

はじめまして、Ideagearの鈴木陽介です。

昨日、2022年5月18日に、浜松いわた信用金庫さんが運営する浜松駅前のメーカーセンター「FUSE」にて、運営の方を対象にお試しとして電子工作のミニワークショップを開催させていただきました。

今回、備忘のためと次回以降のテキストの用途も兼ねて、Zennの記事に残したいと思います。

はじめに

本ワークショップでは、以下の2つの課題に取り組みました。
1.Arduinoとバッテリーを使って、携帯型デバイスのプロトタイプをつくってみる。
2.micro:bitとスマホをBluetoothでつなぎ、micro:bitのセンサーの値をスマホに表示する。

文字だけだとちょっとイメージしにくいため、写真も交えてもう少し詳しくご説明します。


課題1は、Arduino IDEでコーディングし、Arduinoとバッテリーの他、ブレッドボード、LED、抵抗、ブザー、スイッチを使用します。


課題2は、MicrosoftのMakeCodeでプログラミングし、スマホアプリのnRF Conncectを使ってBluetoothでmicro:bitとスマホをつなぎ、micro:bit内臓の温度センサーで測った値をスマホで見られるようにします。

※詳細は「その2(micro:bit+スマホ編)【前編】」をご覧ください
https://zenn.dev/suzuky/articles/e3bb65954a2d11

Arduinoを使って携帯型デバイスに挑戦!

ここでの携帯型デバイスの定義は、外部電源に頼らずに動く回路を持つ電子製品のことです。

つまり、壁から来るAC電源やパソコンのUSBポートから供給されるDC電源などを必要とせず、アルカリ乾電池やリチウムイオンバッテリーなどの携帯型電源のみで動く自己完結型の回路をもつデバイスのことです。

Arduinoの開発環境を整備する

まずは、パソコンにArduino IDEをインストールします。

Arduino IDEは、とても便利な開発ボード用の開発環境で、ArduinoやESP32といったArduino系のマイコンボードのプログラミングだけでなく、他のマイコンボードにも幅広く使える非常に汎用性の高いソフトウェアです。

UIもわかりやすく、設定もカンタンなため、プログラミング未経験や初心者~小規模なシステム開発に適していると言われています。

Arduino IDEをダウンロード

Aruduino IDEは、Arduinoの公式ウェブサイトからダウンロードします。
https://www.arduino.cc/

左上から二番目の「SOFTWARE」をクリックします。

OSは、Windows、Mac OS、Linuxであればほぼカバーされています。
今回はWidowsの最新版のOSを例として進めます。

寄付のお願いです。
寄付されない場合は「JUST DOWNLOAD」をクリックします。

Arduino IDEをインストール

先ほどダウンロードしたexeファイルをクリックします。
ライセンス条項を確認し、「I Agree」をクリックします。

インストールオプションはデフォルトのままで構いませんので、「Next」をクリックします。.

あとは、出てくる表示にしたがってインストールを進めるだけです。

本編でインストール方法を細かくお伝えするのは本論から外れますので、これ以降は割愛します。
もし詳しくお知りになりたい方は、下記サイトあたりを参考にインストールを進めてください。

https://www.indoorcorgielec.com/resources/arduinoide設定/arduino-ideのインストールと設定/

https://www.kkaneko.jp/tools/win/arduinoide.html

Arduino IDEを設定する

先ほどインストールしたArduino IDEを起動します。

実は、ただ単にパソコンとArduinoをケーブルで接続しただけでは、Arduino IDEを使ってプログラミングすることはできません。

その前段階として、「何を使うか」と「(それを)どこと接続するか」をArduino IDEに教えてあげる(設定する)必要があります。

まずは、どのボードを使うか設定します。
今回は、Arduinoといえばコレ、一番オーソドックスなArduino Unoを使用します。

ツール > ボード > Arduino AVR Boards > 一覧からArduino Unoを選択

次に、Arduinoをパソコンと接続します。
使うケーブルは、USB Type-A(パソコン)⇌ USB Type-B(Arduino)変換ケーブルです。

続いて、どのポートを使うか設定します。
ツール > シリアルポート > ()書きのポート

※お使いのパソコンで有効なポートが複数ある場合、COM3、COM4、COM5のように複数表示されます。

どのポートがArduinoと接続されているかは、ありがたいことに、たいていの場合はパソコンが自動認識し、ポート番号の後ろに()で表示してくれます。

今回は、Arduino Unoを使うため、COM5(Arduino UNo)を選びます。

Arduino IDEを使ってArduinoにプログラムを書き込む

今回は、以下のソースコードを使用します。

int led = 13;

void setup() {
  pinMode(led, OUTPUT);

}

void loop() {
  
  digitalWrite(led, HIGH);

  delay(1000);

  digitalWrite(led, LOW);

  delay(1000);

}

<解説>
冒頭でintを使い、ledという変数を宣言します。
void setup() でピン動作の入出力を設定します。
void loop() で実際の動作内容を記述します。

<補足>
pinMode = ピン動作の入出力
digitalWrite = デジタル出力
HIGH = 1
LOW = 0
delay = ms単位で処理を中断(1000 = 1秒)

ソースコードの準備ができたらArduinoに書き込みます。
スケッチ > マイコンボードに書き込む

※本来であれば、スケッチ > 検証・コンパイルで、ソースコードに問題がないかをチェックしてから書き込みますが、「マイコンボードに書き込む」を実行すると、必然的に「検証・コンパイル」を実行してから書き込むため、割愛しても大丈夫です。)

エラーが発生せず、「ボードへの書き込みが完了しました。」
と、表示されれば書き込み成功です。

ブレッドボードを使って実際に配線しよう!

今回は初心者向けの講座でしたので、下記順序でひとつひとつ丁寧に進めました。

※配線図は、補足として別記事に掲載しましたので、こちらも併せてをご覧ください。
https://zenn.dev/suzuky/articles/ff4bce82aa975d

1.USBケーブルでパソコンとつないだ状態で、Arduino Unoの3.3VとGNDからブレッドボードに電源を供給し、LEDと抵抗を使ってLEDを常時点灯させる。(抵抗を使わないとLEDが故障します。)
2.上記1の回路にブザーを追加し、LEDとブザーが常時ONの状態にする。
3.上記2の回路にスイッチを追加し、スイッチでON/OFFできるようにする。
4.上記3の回路にArduinoの13番ピンからの信号線を追加し、LEDとブザーが1秒ごとにON/OFFを繰り返すようにする。
5.上記4の回路に対して、Arduino UnoとパソコンをつないでいるUSBケーブルを外し、バッテリーをブレッドボードにつなぐ。つまり、パソコンのUSB端子からの電源供給ではなく、バッテリーからArduino Unoと回路に電源を供給する。
6.上記5の状態で、スイッチをONした時に、LEDとブザーが1秒ごとにON/OFFを繰り返せば成功。

最終的な配線は下記写真の通りです。


実際の動作は下記動画で確認してください。

比較的カンタンな回路ですが、独学でゼロから配線するにはややハードルが高いため、最初は詳しい人に教えてもらいましょう!

最後に

いかがでしたでしょうか?
Arduino+ブレッドボード編はここまでです。

意外とカンタンだった。
何がなんだかさっぱりわからない。

いろんな意見があると思いますが、私自身は、最初はLチカ(今回のように、LEDをチカチカさせるだけのマイコンボードを使った電子工作の初歩)だけでも難義しました。

ただ、一度できてコツをつかんでしまえば、電子工作や電子製品のプロトタイプをつくるのは思っていたよりは簡単だと感じました。

なぜなら、マイコンボードには、本来なら別々になっているICチップ、入出力回路、センサー等が一緒になっており、それらを別々に取り付けたり、設定したりしないだけでもかなりの手間が省けます。

余談ですが、ESP32というArduinoの上位互換マイコンがあります。
今回のワークショップでは実物を見せただけでしたが、ESP32はArduinoの機能に加えて、Wi-FiやBluetoothといった無線機能も内臓されています。

無線機能を外付けで加えることは、ハード的な難しさだけでなく、ソフト的なわずらわしさ(ソースコードが一文字間違っていただけでもエラーになる)も絡んでくるため、はじめから内蔵されているかどうかで作業工数は雲泥の差となります。

これ以上は長くなりますので、今回はここまで。
これを機に多くの方が気軽に電子工作にチャレンジしていただけるとうれしいです。

では、次回は「micro:bit+スマホ編【前編】」をご紹介します。
https://zenn.dev/suzuky/articles/e3bb65954a2d11

Discussion