概要
Arduino で DC モータを制御してみました
作成した回路とスケッチを紹介します
環境
- Arduino Uno
- Arduino IDE 1.6.9
- トランジスタ 2N5088 x 1
- 一般用整流ダイオード 1N4007 x 1
- 抵抗 1kΩ x 1
とりあえず DC モータを回す
スイッチを押すとモータが回る回路です
電池とスイッチとジャンパケーブルだけです
これを Arduino から制御できるようにします
電源を Arduino から取る回路
電源を電池 2 本から Arduino に変更した回路です
電源を変更しただけなのでこれでもモータは回ります
デジタルピンで制御する回路 (誤)
2 番ピンを使って制御してみます
まずはバカ正直に回路を組んでみます
スケッチは以下の通りです
void setup() {
pinMode(2, OUTPUT);
}
void loop() {
digitalWrite(2, HIGH);
delay(2000);
digitalWrite(2, LOW);
delay(2000);
}
これだとモータが回らないのがわかると思います
電圧は足りているのですが、電流が足りていないためモータが回りません
これにトランジスタを加えることでモータを制御してみます
デジタルピンで制御する回路 (正)
トランジスタ+ダイオードを使った回路は以下の通りです
トランジスタの配線部分だけ拡大しました
スケッチは前述のとおり 2 ピンを制御するスケッチを使っています
これで正しく動作すると 2 秒おきにモータが起動/停止を繰り返します
ポイントはトランジスタとダイオードの配線です
- エミッタ (写真一番左) は GND に接続します
- ベース (写真真ん中) は Arduino 2 ピンの信号を 1kΩ の抵抗を挟んで接続します
- コレクタからジャンパケーブルを出してモータと整流ダイオードを並列に接続します
整流ダイオードはプラスとマイナスの区別があるのでプラス側に Arduino の 3.3v を接続します
トランジスタはものによってエミッタ、ベース、コレクタのピンの順番が異なるので適宜電気特性のシートなどを見ながら確認してください
また、今回モータ用の電源は Arduino の 3.3v から取得していますが電池から取得しても問題ありません
最後に
Arduino で DC モータを制御してみました
今回のポイントはトランジスタとダイオードでしたがそれぞれの働きは
- トランジスタ・・・電流を増幅させる
- ダイオード・・・電流の流れを一方向にする
ですが、実際に回路を組んでみると更に動きを理解することができました
あとは電圧の増幅 (昇圧) とかもやってみたいと思っています
0 件のコメント:
コメントを投稿