2015年4月12日日曜日

Arduino はじめてのハードウェア開発(電子工作)

私がスマートフォンアプリの開発をはじめてから約5年が経ちました。
今ではネイティブでスマートフォンアプリの開発をできる人もかなり増え、今後5 ~ 10年くらいはスマホアプリビジネスは安定して続いていくでしょう。

また、アメリカのほうではハード開発のスタートアップも増えてきました。
私もスマホアプリの開発はちょっぴり飽きてきたので(WEBより楽しいですけどね)、そろそろハードの開発のほうにも手を出していきたいと思います。
今更ながらMakerに手を出していきます。

というわけで、昔購入したArduinoを引っ張り出してきて学習を開始しようと思います。前よりも資料も色々増えているので、本格的に学習していければと思います。

さあ、レッツ、イノベーション。

環境

  • Arduino Uno
  • LED
  • Mac
  • Getting started with Arduino, 2nd

教本には『Getting started with Arduino, 2nd』を使用します。英語版ならフリーでダウンロードできるので、それを参考にすすめていきます。

Blinking an LED

『Getting started with Arduino, 2nd』 P28 - 36

日本語では『Lチカ』と呼ばれているプログラミングからはじめていきます。ソフトウェアプログラミングでいう『Hello world』みたいなものです。

まずは用語のまとめです

用語と説明

  • LED(light-emitting diod)
  • cathode(キャソッド)

正電荷が流れ込むほうの電極。
LEDの短い方です。

  • anode(アノード)

正電荷が流れ出す電極。
LEDの長い方です。

code

const int LED = 13; // LED connect to digital pin 13

void setup() {
  // put your setup code here, to run once:
  // sets the degital pin as output
  pinMode(LED, OUTPUT);

}

void loop() {
  digitalWrite(LED, HIGH);
  delay(1000);
  digitalWrite(LED, LOW);
  delay(1000);
}

検証ボタンを押下してコンパイルに成功したら、マイコンボードに書き込むボタンを押すと、Arduinoの動きが変更されます。確認してみましょう。

動いていますね。
さて、各関数の内容を確認していきます。

setup()

プログラムの最初に実行したいコード

loop()

何度も何度も実行するコード

pinMode(LED, OUTPUT)

指定したpin番号を出力に設定する

digitalWrite(LED, HIGH)

pinをon(HEIGH)にする

delay(1000)

1000ms(1秒)停止

digitalWrite(LED, LOW)

off(LOW)にする

上記の動作をより理解するために、以下のように値を変更して動きを確認します。

  • 1.delayを減らす
  • 2.異なったpinを使い、違うパターンのLチカを実行。特にdelayを小さくしたパターンをみるべき

delayを10msまで小さくすると、点滅しなくなりました。

2は3拍子のLチカを作成してみました。

Blinking an LEDは以上で終了です。お疲れさまでした。Lチカはドローンの改造で使えそうですね。
次はWhat Is Electricity?とUsing a Pushbutton to Control the LEDを学習したいと思います。
でわ。

この記事がお役にたちましたらシェアをお願いします

このエントリーをはてなブックマークに追加

0 件のコメント:

コメントを投稿

Related Posts Plugin for WordPress, Blogger...