Arduinoをはじめよう

電子工作やってみたいと思い、1年ぐらい前にキット付き本体と書籍を購入して積読状態でした。
やってみた感想ですが、めちゃくちゃ楽しかったです。
やっぱ、モノが動くのっていいですね。
一方、動かない時のdebugも難しいし、複雑な仕様を考えると色んな制御が必要になるので
ハードの実装は相当大変なんだろうなとも感じました。

Arduinoをはじめようキット

Arduinoをはじめようキット


Arduinoをはじめよう 第2版 (Make:PROJECTS)

Arduinoをはじめよう 第2版 (Make:PROJECTS)


 

チュートリアル

センサの値やコードでデバイスに変化をもたらせるというのは万能感があり、
いちいち楽しいです。全てのチュートリアルで感動しました。
もうちょっと細かく分かれていますが、以下ざっくり紹介。
 
1. Lチカ
コード書かずに、LED挿しただけでデフォルト点灯するようになったみたいで
結構びっくりしましたが、感動します。
おお、すげー、光ったよ!!
(あと、バウンシングと呼ばれる不完全な接触に対応するためにdelay()関数(10〜50ミリ秒)を入れることを学びます。)
 
2. プッシュボタンでLEDをコントロール
いよいよブレッドボードとジャンプワイアで電子工作っぽくなります。
押したらLEDが光るだけなのですが、テンション上がります。
 
3. PWM(パルス幅変調)で明るさを制御
analogWrite() 関数を利用することで明るさを変えることができます。
 
4. プッシュボタンでPWMをコントロール
続いて、プッシュボタン長押しで、明るさを変更できるようにします。
 
Example 05 ですが、なぜかこの回路図がなく、いきなり難易度が上がります。
「2」と「3」を合わせたやつなんですが、1時間ほど考えました。
ググって出てくるのは、少し複雑になっているようです。
単純にブレッドボードに合体させると、うまくいきました。
こんな感じ。
f:id:rochefort:20151220114058j:plain
 
5. プッシュボタンの代わりにCdSセンサを使う
手で覆うとLEDが消えるようにします。
というか、光センサ初めて見ましたが、こんなものが1個数十円程度で売ってるんですね。
それだけで、すごい。
 
6. 色が動的に変わるランプを作成する
RSSの内容を解析し、その結果に応じて、LED3色の色を変更する。
LEDは赤、緑、青の3色で、それぞれ「peace」、「love」、「arduino」の単語数に応じて
それぞれの光の強さが変わる(色が変わる)ランプです。
一気に電子工作っぽくなってきました。
 
注意事項がいくつかありますので、記載しておきます。
(1) exampleのRSSは存在しない
別のものにするか、とりあえずコードを変更してランプが光るようにする必要があります。
 
(2) Processingが必要
RSSの解析のところはprocessing用のコードなので Processingは別途、Installしてprocessing上で実行する必要があります。
Download \ Processing.org
 
(3) Processing側にimportが必要
以下を追加する必要があります。

import java.net.URL;
import java.net.URLConnection;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

 
(4) Serial.list() ポート順
サンプルコード内のコメントにも記載がありますが、
ArudinoのポートがSerial.list() の0番目決め打ちで書かれています。
私の環境は1番目でしたので、コードは変更しています。

//  String arduinoPort = Serial.list()[0];
  String arduinoPort = Serial.list()[1];
// println(arduinoPort); // で確認

 
(5) Arduino IDEのPortは未選択にしてからProcessingを実行する必要がある
まずは、Arduino IDEの方で、ArduinoにUploadがする必要があります。
その後、Processing実行時に、LEDの色データを送るのですが、
Arduino IDEがPort掴んじゃっているので、未選択にする必要があります。
 

目次

1.イントロダクション
2.Arduinoの流儀
3.Arduinoプラットフォーム
4.スケッチ入門
5.高度な入力と出力
6.クラウドとの会話
7.トラブルシューティング

付録A ブレッドボード
付録B 抵抗器とコンデンサの値の読み方
付録C 回路図の読み方
Arduino公式リファレンス

今見たら

第3版が出ており、

Arduinoをはじめよう 第3版 (Make:PROJECTS)

Arduinoをはじめよう 第3版 (Make:PROJECTS)


今買うなら、こっちが良いです。
2版との差。

2つの章が追加されたこと。1つは、現実世界のプロジェクトに役立つRTCの使い方、
I2Cによるセンサとの通信、モーター、リレーのコントロールを解説した章、もう1つはArduino Leonardoを解説した章です。