ソレノイドをArduinoで制御しよう!【Part2】 | ソレノイドどんどん!

ソレノイドどんどん!

無名の電気部品ソレノイド、だけどたくさん使われているのだ

■ソレノイドをArduinoで制御しよう!編

付録編

 

付録① 

動作環境

Arduinoの動作、プログラム環境を整えましょう。!!

動作環境:

付属のUSBケーブルでArduinoとパソコンと繋げば動作環境も整います。

プログラム:

下記のURLからArduino IDEをダウンロードしてください。ご利用中のOSに合わせてダウンロードしましょう。

https://www.arduino.cc/en/Main/Software

インストールしたら、プログラム環境はこれで完了。音譜

 

 

プログラムからArduinoで制御するまでの工程

①      回路

目的の動作ができるように回路を組み立てます。

②      プログラム

Arduinoを動かすためのプログラムを作成します。言語はC言語です。

③      コンパイル⇔エラー訂正

コンパイルした時、文法の誤りなどを犯すと下の黒枠にエラーが表示されます。エラーを訂正して再度コンパイルを行いましょう。

 

下の図は、エラーが出た時のスクリーンショットです。黒枠には、「セミコロン“;”が抜けています。」とエラーの内容を教えてくれます。おねがい

 

 

エラーが出なければコンパイル完了します。

 

 

左上の矢印を押すと、プログラムはArduinoに書き込まれます。

 

 

コンパイルは、プログラム自体の矛盾をエラー表示するため、回路との整合性は確かめられないことに注意が必要です。①〜③で、コンパイルエラーはないけど思った動作をしない場合は、回路や回路とプログラムの整合性を見直してください。ウインクウインクウインク

 

 

付録②

LEDをArduinoで制御する

 

LED:

LEDは、写真のように足が二本ついています。長い方(アノード)をプラス、短い方(カソード)をマイナスとして接続しましょう。反対に接続しても点灯しません。ガーン

回路:

 

ArduinoのGNDとブレットボードのマイナス、Arduinoの「DIGITAL」ピンをプラスとして、LED、抵抗と繋ぎます。抵抗はLEDに電流が流れすぎないようにするために挿入しています。

 

 

ブレットボードは、プラス・マイナスは縦につながっていて、それ以外は横につながっています。上の写真では、黄緑線が繋がっていることになります。ビックリマーク

 

プログラム:

プログラム

説明

int LED = 8;

 

void setup() {

  pinMode(LED,OUTPUT);

}

void loop() {

  digitalWrite(LED,HIGH);

  delay(1000);

  digitalWrite(LED,LOW);

  delay(1000);

}

ピン定義

 

【setup関数】

LEDピンを出力として設定

 

【loop関数】

LEDピンにHIGHを出力

1000ミリ秒待つ

LEDピンにLOWを出力

1000ミリ秒待つ

 

まずピン定義を行いますニコニコ

 

「LED」という名前のピンは、Arduino上の8番ピンであることを示しますが、ピン定義が無くてもプログラムを作成することは可能です!!

「int」については、はじめのうちは気にしない方が良いと思うで、魔法のキーワードと思っておいてください。イヒ音譜

 

 void setup()は、初期設定の内容を記載しています。合格

初期設定では、変数(必要な値を一時保管する領域)や、ピンモードの初期化を行います。pinMode()は先ほど定義したピンが、入力or出力であることを示します。ここでは、LEDピンを出力に設定しています。

 

 ピン定義をしない場合について、例えば、Arduino上のDIGITAL10番ピンを入力とするときは、「pinMode(10, INPUT)」と記載すれば良いです。ピン定義で、「pin10 = 10」としている場合は、「pinMode(pin10, INPUT)」としましょう。!!

 

 void loop()について、loop関数の内容は上から下まで実行、繰り返されます。

 digitalWrite関数では、指定したピンにHIGH(=5[V])または、LOW(=0[V])を出力します。

 

 delay関数について説明します。delay(5000)ならば、5000ミリ秒(5秒)間、動作を停止するという関数です。

 

 以上より、今回の動作では、LEDピンに1000ミリ秒(=1秒)間HIGHを出力、その後1000ミリ秒(=1秒)間LOWを出力する、つまり1秒間LED点灯させたのち、1秒間消灯させています。クラッカークラッカークラッカー

 

 

今回はここまで!

次回も是非見てくださいね(*^▽^*)