とある科学の備忘録

とある科学の備忘録

CやPythonのプログラミング、Arduino等を使った電子工作をメインに書いています。また、木製CNCやドローンの自作製作記も更新中です。たまに機械学習とかもやってます。

【Arduino】Arduinoとは?

1. Arduino ってなんぞや?

Arduinoとは、マイコンボードの一種です。Arduinoと一口で言っても、UNOやNANO、DUEなど、多くの種類があるんですが、なんといっても一番有名なArduinoボードといえば、「Arduino UNO(下の写真)」になります。
f:id:pythonjacascript:20181024164655p:plain

Arduinoマイコンが持っているパワーは、この原稿を書くのに使っているIntel core i7 の数千分の一に過ぎませんが、ずっと低価格で、面白いデバイスの開発にとても役立ちます。
Arduino ボードを見ると、28 本の「足」が生えた黒いチップが見つかるでしょう。これが心臓部であるマイコン(ATmega328P)です。
1 枚のボードの上に、このマイコンが正しく動作し、コンピュータと通信するのに必要な機能がまとめられています。



Arduinoのピンについて

ボードの端の3辺には、黒い端子がずらっと並んでいます(下の写真の黄色の四角の中)。
f:id:pythonjacascript:20181024175317j:plain

これらをピンと言って、一つ一つのピンが特有の役割を担っています。

これらのピンをつなげることで、他の電子部品と接続したり、LEDを光らせたり、モーターを回したりすることができます。
そして、そのピンの役割は、後程紹介する「プログラム」によって、自分の好きなように設定することができます。


では、ピンの役割について説明しよう。

14 本のデジタル10 ピン( pin 0 ~ 13)

入力(INPUT)または出カ(OUTPUT)として使えます。IDE で作成するスケッチのなかで、どちらかに設定します。ピンに接続した機器からデータを受け取るときは、「入力(INPUT)」に設定して、ピンに接続した機器を動かすには「出力(OUTPUT)に設定します。

6 本のアナログIN ピン(pin 0 ~ 5)

アナログの値を得るために使われます(例:センサからの電圧の読み取り得られた値)。アナログ値は0 から1023 までの数値に変換されます。

6 本のアナログOUT ピン(pin 3. 5.6.9. 10. 11)

スケッチで設定することにより、デジタル10 ピンのうちの6 本をアナログ出力として使うことができます。


その他:電源ピン

上の3種類は、デバイスと接続して何かを動かしたり反対にデータを受信したりするためのピンです。しかし、それ以外にも電源関係のピンがあります。例えば、「5V」と書かれたピンには、5Vを出力する機能があったり、「GND」はその名の通りArduinoのGND(0Vみたいなもの)とつながっており、「Vin」と書かれたピンからは、Arduinoに電源を供給することもできます。

f:id:pythonjacascript:20181024165804p:plain
図式化するとこのようになっています。全部で30本近いピンがあります。

 

Arduinoの電源について

Arduinoへの電源供給方法は、以下の3通りがあります。

1.USBを使う

Arduinoはコンピューターとつながっているとき、コンピューターからUSB経由で電源をもらっています。
それと同じ原理で、ArduinoのUSBポートにUSB充電器を繋いでも、その電気をArduinoの電源として使用できます。

2.ACアダプタを使う

Arduinoボードには、USBケーブルの横にACアダプタ用の端子が用意されています。黒くて丸いやつです。
ここからも電源を供給することができます(下の写真)。
電圧は6V~12Vです。DCジャックの端子はセンターがプラスです。下の写真のようにDCジャックを自作するときは間違えないようにしてください。
f:id:pythonjacascript:20181024171536j:plain


3.Vin端子を使う

Arduinoの「Vin」端子と「GND」端子を使って電源を供給することもできます。電圧は5Vで供給してください。



Arduino IDE

Arduinoの写真(この記事の一番上)を見てもらうとわかるように、Arduinoには、USBポートが一つついています。そこからプログラムを書き込むことで、様々な動作をさせることができるのです。その肝心なプログラムは「Arduino IDE」を使って書きます。

f:id:pythonjacascript:20181024172314j:plain


Arduino IDEは、Arduino用のプログラムを編集したり、Arduinoにそのプログラムを書き込んだりするためのソフトウェアです。Arduinoにプログラムを書き込むためのUSBポートさえあれば、どんなPCでもだいたい動作します。


Arduino IDE はC or C++言語を使ったシンプルな言語を使って. Arduino ボードで実行するスケッチ(プログラムのこと)を書くことができます。アップロードボタンを押すと、プログラムがボードへと送られ、実行されます。

プログラムの書き込み方

では、Arduino IDEで書いたプログラムをボードに書き込むにはどうしたらよいのでしょうか。それは以下の手順で行ってください。

STEP1:コンピュータのUSB ポートにArduino ボードを接続。

特にいうことはありません。ただ繋げるだけです。
ただし、ArduinoTX、RXピンにxBee等を接続している場合は、それを外してからUSBを接続してください。
USBのピンと、TX&RXピンはボードの中でつながっており、プログラムを書き込もうとすると誤作動することがあります。


STEP2:ボードの種類を選択

ツール」→「ボード ○○を選択すると、いまのArduino IDEが対応しているボード一覧が表示されます。その中から、自分がプログラムを書き込もうとしているボード名を選択してください。例えば「Arduino UNO」を使用しているのであれば「Arduino/Genuino Uno」を選択すればOKです。

f:id:pythonjacascript:20181024172927j:plain


STEP3:COMポートを選択

ツール」→「シリアルポート」を選択して、Arduinoを接続しているCOMポートを選択します。
f:id:pythonjacascript:20181024173507j:plain

もし、「シリアルポート」の文字が灰色になっていて、クリックできない場合は、Arduinoが接続されていない証拠です。もう一度STEP1をやり直してみてください。

STEP4:スケッチを書き込む

はい、やっとここでスケッチをArduinoに書き込むことができます。Arduino IDEの左上の「マイコンボードに書き込む」ボタンf:id:pythonjacascript:20181024173825j:plainを押してください。
f:id:pythonjacascript:20181024173948j:plain
と表示されれば、マイコンボードに正常にプログラムが書き込まれています。これで完了です。

もしエラーが出た時は、➀プログラム自体にエラーがある、②STEP2で選択したArduinoと違う種類のArduinoが接続された、③Arduino自体が壊れている、のどれかです。


STEP5:プログラムを実行

STEP4が終わると、プログラムは自動的に実行されます。なので、何もする必要はありません。Arduinoは、USBポートが接続されると自動的にプログラムを実行するようにできて言います。



リセットボタンについて

Arduinoには「リセットボタン」がついています。(下の写真)
f:id:pythonjacascript:20181024174854j:plain

このボタンを押すと、いままでの変数などのデータがすべてリセットされ、プログラムがもう一度最初から実行されます
プログラムを消去するボタンではありません。



Arduinoに関する基礎知識は以上です。では、実際にプログラムを動かしてみてください!!

shizenkarasuzon.hatenablog.com