#はじめに
Arduino沼へようこそ!!
この記事は、ソフトウェアエンジニアがArduino沼にハマった経験を活かし、仲間を増やすため、沼へ引きずりこむことを目的として書いています!
#自分のきっかけ
昔のマイコンは高かった。開発環境も有料が多かったし、情報も少なかった。
互換機安い!500円ぐらい!
勉強がてら、何か作ってみよう!あわよくば売って儲けよう!
って流れで吸い込まれていきました。
#Arduinoのいいところ
##①安い
AmazonでUno互換機が500円ぐらい。Nano互換機が300円ぐらい。Digispark互換機で250円。
Aliexpressとかで中国輸入するとさらに安く入手できます。
正規品は、3000円ぐらいです。
互換機ばっかり買って、本家に還元なくて悪いなーと思う方は、寄付もできます!
##②情報が多い
本家(英語)
チュートリアル、フォーラム等。
その他、たくさーーんのブログなど。
「Arduino やりたいこと」、パーツ名、型番で検索すると、だいたい情報が見つかります。
##③コミュニティがある
Arduinoのすごいところは、SW・HW・開発環境・コミュニティが揃っているところだと思います。
本家のフォーラムは世界中から書き込みがあるようです。
日本では、Arduinoファンというグループが活発に活動されています。頻繁にもくもく会(みんなでもくもく作る会)を開催されています。
##④オープンソースソフトウェア、オープンソースハードウェア
ソースはもちろん、ハード:回路図や部品の情報も公開されています!!
自分でパーツ集めて、互換機作ってもいいよ!売ってもいいよ!という決まりです。
Arduinoという名前やロゴの使い方に制約があるみたい。
##⑤組込みの勉強になる
組み込み開発には、Webやアプリ、Winのソフトとはちょっと違った知識が必要です。
いきなり業務でやるには難しいですし、家で業務と同じ環境を作るのは難しいです。
そこでArduino!
基本的な考え方や、メモリの制約、I2CやSRAMとか勉強になりました。
あと、組込みの基本的な技術は陳腐化しにくいと思っています。
20年前の組込の技術がそのまま今でも役に立つと思います。
PHPのフレームワーク多すぎー!
CMSの種類多すぎー!
JSのライブラリ多すぎー!
AngularJSわかんねー!
Objective-C?Swift?
JAVA?Kotlin?
HTML5?Monaca?Xamarin?PhoneGap?
ふぁぁーーーー!!!!
覚えること多すぎー!!
と思っているあなた!!!安住の地へようこそ!
Arduinoは世界中で流行っており、マイコン入門のデファクトスタンダードと言っても過言ではないと思います。
今流行りのIoTやってみようってのにも対応できますよ!!
#言語は?
基本はC++。Arduino言語と呼ばれているみたい。
ここはクリアしていれば、「Arduinoちょっとできる」の半分できたも同然です!!
JSで動かす方法もあるみたい。
RUBYやPythonで動かせるマイコンもあるみたい。最後のその他のマイコンを参照。
スクラッチでも動かせます!
Arduino専用ビジュアルエディタBlocklyDuinoの使い方
#どんなことができるの?
Lチカ(LEDチカチカ)=電子工作界の「Hello World」
カラーLEDをド派手にピカピカ(ギャル電的な)
サーボモータで、
マウスをずっと動かす君
電源ON/OFF連続試験治具
LED点灯しているか判定マシン(HWの試験治具に)
3Dプリンタ、CNC、レーザーカッターのコントローラ部分にも使われていたりします。
USB機器を作る。キーボードを作る。
なんでもできます!なんでも!(気持ちだけで発言)
##自分の作ったプロジェクト
###XFD
アラーム君
見える!「IoT」 NefryでJenkinsのXFD作ってみた
###スペースデジミン
「スペース・デジミン」Arduinoと赤外線センサーを使ったテルミンデバイス
###モヒートマシン
FABLAB北加賀屋のプロジェクトに参加しました。
動画
説明(作成中)
時代はメイカー!
DIY!
#環境構築
Arduino IDEをインストールします。
互換機はCH340というドライバ入れる必要があります。
そう、ソフトウェアエンジニアなら余裕ですね。
#ライブラリ
便利なライブラリがたくさーんあります。
IDEのメニューの「ライブラリを管理」から入れるか、Zipで落としてZipでインストールか、直接ライブラリフォルダへ。
GitHubで管理されているものが多い。
詳しくはググってください。
#Arduinoの種類
いろんな種類があります。
http://ideahack.me/article/134
自分が好きな、代表的なものを紹介。
-
UNO 一番ポピュラー。
-
MEGA ピン数、メモリが多い。
-
NANO 小さい。機能的にはUno相当。ピン数も同じ。
-
Pro Mini USBシリアル無し。小型。3.3vで省電力な設計もできる。
-
DigiSpark 小さい!安い!ピン数は少ない。
-
ESP8266 Wifi付きマイコン ブートローダを書くことで、ArduinoIDEでも開発できる。
-
Nefry、Nefry BT ESP8266やESP32が乗ったIoTデバイス。便利なライブラリーがセットになっているので、簡単にIoTできます!IFTTTやAWSなど、WEB系サービスとの連携もサポート!日本語の情報も多いです。
#その他のマイコン
こんな感じのキーワードで調べてみてください。
IchigoJam(Basic)
mruby(ruby)
Micro Python(Python)
ラズパイ(Linux)
mbed
FPGA
#あとがき
どうですか?Arduinoやりたくなってきましたね?
まずは、Unoを買って、Lチカしてみてください!
あとは、やりたいことをやりたいように!
Arduino、電子工作、楽しいですよー!!