平凡サラリーマンの日々ブログ

サラリーマン奮闘記

②Arduinoで楽しもう!

■本記事の内容 (この記事は15分程度で読めます) 

目次
3.最初に準備すること 
4.使いこなすには(基礎)
5.作品例

 

3.最初に準備すること 

→ 『 開発環境を整える 』
 具体的には何? ってことですが

 『Arduino基板』と『Arduino IDE(開発用ソフトインストール)』大きく2つ!

Arduino基板(Arduinoボード)』はプログラムを実行するもの
Arduino IDE(開発用ソフト)』  はプログラムを書くもの

■1つめの
Arduino基板』ですが、前回記事にも載せてますが ざっくり2000円~3000円ぐらいで買えちゃいます。
 最初はスタンダードな Arduino – UNO をお薦めします。
 そこからやりたいことに応じて、いろんなタイプ派生してますので目的に応じて準備すれば良いと思います

あとこれ以外に必要なハードウェアは

(1)Arduino本体とPCを接続するUSBケーブル
(2)LEDやセンサーなどのパーツ
(3)ジャンパー線
(4)ブレッドボード などなど。
   あとブレッドボード配線は、「Fritzing」を活用するのがお薦め
    回路図 ⇔ ブレッドボード の行き来ができて

■2つめ
『開発用のPCにソフト(Arduino IDE) インストール』についてですが

Arduino IDE(Integrated Development Environment:統合開発環境)は、Arduino 言語 でプログラムを作成する際に使用するソフトウェアです。これを下記にならってインストールします。

ざっくり手順はこのような感じです
※公式サイトは都度更新されているのでおおまかな流れを把握してください。

1.ウェブページを開く ・・・ https://www.arduino.cc/ 
2.「SOFTWARE」の下の 「DOWNLOADS」をクリック。
  サイトのトップメニューにあります
3.「Windows installer」をクリック.
4.寄付について確認する.ダウンロードを開始する
5.ダウンロードが始まる.
6.ダウンロードした .exe ファイルを実行する
7.ダウンロードされた[arduino-1.8.12-windows.exe]ファイルを実行します。画面が暗くなり、変更を許可きょかしますか?で、[はい]を選びます。8.ライセンス条項の確認.exe ファイルのダウンロードが始まる.
9.インストールオプションは既定(デフォルト)のままでよい.「Next」をクリック.
10.インストールディレクトリ(フォルダ)は既定(デフォルト)のままでよい.「Install」をクリック」
11.インストールが始まる
12.インストールしたいので「インストール」をクリック
13.インストール終了の確認.「Close」をクリック
14.スタートメニューに「Arduino」が出来るのでクリック

もう少しビジュアル含め説明します!

1. 公式ホームページを開きます(下記URLが出たらOK)
 ※Arduino公式サイトは都度更新されるの
本記事の画面表示は 2021.8.6時点です
https://www.arduino.cc/

キーワード検索は Arduino IDE とかで出てきます

2.「SOFTWARE」の下の 「DOWNLOADS」をクリック.

3.「Windows installer」をクリック.ここでは一番上段を選びました。

 

4.寄付について確認する.ダウンロードを開始する
※寄付する場合は上段・寄付しない場合は JUST DOWNLOAD

 

4.寄付について確認する.ダウンロードを開始する
  (ホームページはダウンロードされたら閉じて大丈夫です)
  ダウンロードされたら下図のようなアイコンがでます

画像4

5.アイコンをダブルクリックして.進めていきます
  「I Agree」選択します

画像5

6.特にここはこのまま(デフォルト)で「Next」をクリック.

画像6

7.特にここもこのまま(デフォルト)で「Install」をクリック.

画像7

8.インストールが始まりますので少しお待ちください。

画像8

9.完了したら 「Close」をクリック

画像9

画像10

 



※ USBドライバーは上記のArduinoIDEをインストールした時に一緒に入るのでインストール操作不要です。

インストール後は、2つ簡単な設定をします。


『USB接続ポートの番号』を調べる &『ボード設定』の2つです

まずArduinoボードとパソコンをUSBケーブルで接続せつぞくして置きます。
Windows 10 の場合
① PC画面の左下スタートボタンでマウスの右ボタンクリック。
② 表示メニューから[デバイスマネージャー]をクリックします。
③ デバイスマネージャーのウインドウ画面が表示されます。

Windows 7の場合
① コントロールパネルを開きシステムとセキュリティをクリックします。
② システムの項目に有るデバイスマネージャーをクリックします。
③ デバイスマネージャーのウインドウ画面が表示されます。

 次にボード設定です
メニューバーの「Toolsツール」→「Boardマイコンボード」→「"Arduino Uno"」を選びますよ

4.使いこなすには(基礎)

急がば回れじゃないですが、コーディングはやはり基礎が重要。

まずは、基礎運動・基礎ストレッチからで

最初から100桁以上のコーディングできるはずなくて
最初は30桁ぐらいのコーディングで全然良いです!

さらに、インストールしたArduinoのファイルメニューには雛形のサンプルスケッチがあります。コマンド操作としては。

「File」→「Examples」→「1.Basics」→「Blink」を選択するとコードが表示されます。この「Blink」がLEDチカチカさせてくれます。

ちょっと慣れたら、delay(100)の()の中の数値を変更してあそんでみましょう。ちょっとづつ 使いこなす感覚が身につきます

とにもかくにも、このサンプルスケッチを
マイコンに書き込む・コンパイルする・(バグが出る※サンプルなので出ないはずですけど) ってのを体感しましょう。

PCとつながっているマイコンとそのマイコンから 入力・出力で何かが動くなどの体感すると知識の定着率があがり楽しくなり行動に継続性が伴います。

※ちなみに Lチカ(LEDチカチカ)は、Webプログラミングでいう
Hello World』に近いイメージです。


自分のスキルを証明するために電子工作をやりたいという以前に、そもそもマイコンハードについての知識が曖昧だったので一度どこかでしっかりと勉強する機会が欲しかったんですよね。
 電子工作て ごまかしがきかず、負荷が作動しないときって

マイコンハード自体が駄目なのか?
部品自体がダメなのか?
配線がダメなのか?
ソフトがダメなのか(一言一句間違えてはだめなので)?

って悩むと思いますが その悩みこそ
使いこなしていくうえで、一番重要なフェーズです。

5.作品例 #1 

テレビとかの赤外線リモコンでLEDを 点灯・消灯できる作品です。
テレビのリモコンは、ハードオフなどで中古で数百円で購入。
LEDではなくて、ブザーにしても面白いかも。
下の方に、スケッチ載せてます。

どんなことでもそうですが
使いこなすには、作品のポートフォリオ分だけ成長曲線が上がりますよね。

f:id:Pandapi:20210718233716p:plain

スケッチ例

//ボタンを押すとスイッチONOFFを切り替えられるプログラム
//赤外線onoff保持、点灯保持

const int LED = 13; //定数LEDを設定
const int BUTTON = 2; //定数BUTTONを設定
int var = 0; //変数varを設定
int old_var = 0; //変数old_varを設定

int state = 0; //変数stateを設定
void setup() {

pinMode(LED, OUTPUT); //LEDピンを出力に設定
pinMode(BUTTON, INPUT); //BUTTONピンを入力に設定
}
void loop() {
var = digitalRead(BUTTON); //BUTTONピンを読み取った結果をvarに代入
//スイッチが押された瞬間を読み取る
if (var == HIGH && old_var == LOW) {
state = 1 - state; //varがHIGHならstateの値が変わる
delay(100); //チャタリング防止
}
//スイッチが離された瞬間を読み取る
if (var == LOW && old_var == HIGH) {
delay(100); //チャタリング防止
}
old_var = var; //varのをold_varに保存
//stateは1か?
if (state == 1) {
digitalWrite(LED, HIGH); //LEDピンにHIGHを出力
}
else {
digitalWrite(LED, LOW); //LEDピンにLOWを出力
}
}

//ボタンを押すとスイッチONOFFを切り替えられるプログラム
//赤外線onoff保持、点灯保持

const int LED = 13; //定数LEDを設定
const int BUTTON = 2; //定数BUTTONを設定
int var = 0; //変数varを設定
int old_var = 0; //変数old_varを設定

int state = 0; //変数stateを設定
void setup() {

pinMode(LED, OUTPUT); //LEDピンを出力に設定
pinMode(BUTTON, INPUT); //BUTTONピンを入力に設定
}
void loop() {
var = digitalRead(BUTTON); //BUTTONピンを読み取った結果をvarに代入
//スイッチが押された瞬間を読み取る
if (var == HIGH && old_var == LOW) {
state = 1 - state; //varがHIGHならstateの値が変わる
delay(100); //チャタリング防止
}
//スイッチが離された瞬間を読み取る
if (var == LOW && old_var == HIGH) {
delay(100); //チャタリング防止
}
old_var = var; //varのをold_varに保存
//stateは1か?
if (state == 1) {
digitalWrite(LED, HIGH); //LEDピンにHIGHを出力
}
else {
digitalWrite(LED, LOW); //LEDピンにLOWを出力
}
}

という感じになります!

今後細かいスケッチの関数は、シリーズの後半で後述致します!

ということで今回の記事はここまでになります。

ここまで読んでいただき、ありがとうございます。

最後に下図の本は、初心者の方におすすめです!