概述
在本課程中,您將學(xué)習(xí)如何使用Arduino和非晶體管控制小型直流電動(dòng)機(jī)。
您將使用Arduino模擬輸出(PWM)來控制速度通過從串行監(jiān)視器發(fā)送一個(gè)介于0到255之間的數(shù)字來表示電動(dòng)機(jī)。
零件
要構(gòu)建本課中描述的項(xiàng)目,您將需要以下零件。
零件 數(shù)量
小型6V直流電動(dòng)機(jī)
1
PN2222晶體管
1
1N4001二極管
1
270Ω電阻器(紅色,紫色,棕色條紋)
1
半面包板
1
Arduino Uno R3
1
跳線包
1
面包板布局
將面包板放在一起時(shí),需要注意兩點(diǎn)。
首先,確保晶體管是正確的方式周圍。晶體管的扁平側(cè)應(yīng)位于面包板的右側(cè)。
其次,二極管的條紋端應(yīng)朝向+ 5V電源線-請參見下圖!
Adafruit Arduino套件隨附的電機(jī)消耗的電流不超過250mA,但是如果您有使用不同的電機(jī),它可以輕松吸收1000mA電流,這不僅僅是USB端口所能處理的!如果不確定電機(jī)的電流消耗,請通過墻壁適配器為Arduino供電,而不僅僅是USB
電機(jī)可以左右任意方向連接。
Arduino代碼
將以下草圖加載到您的Arduino上。
下載:文件
復(fù)制代碼
/*
Adafruit Arduino - Lesson 13. DC Motor
*/
int motorPin = 3;
void setup()
{
pinMode(motorPin, OUTPUT);
Serial.begin(9600);
while (! Serial);
Serial.println(“Speed 0 to 255”);
}
void loop()
{
if (Serial.available())
{
int speed = Serial.parseInt();
if (speed 》= 0 && speed 《= 255)
{
}
}
} /*
Adafruit Arduino - Lesson 13. DC Motor
*/
int motorPin = 3;
void setup()
{
pinMode(motorPin, OUTPUT);
Serial.begin(9600);
while (! Serial);
Serial.println(“Speed 0 to 255”);
}
void loop()
{
if (Serial.available())
{
int speed = Serial.parseInt();
if (speed 》= 0 && speed 《= 255)
{
analogWrite(motorPin, speed);
}
}
}
晶體管的作用就像一個(gè)開關(guān),控制電機(jī)的電源,Arduino引腳3用于打開和關(guān)閉晶體管,并在其中命名為“ motorPin”草圖。
草圖開始時(shí),它會提示您,提醒您要控制電動(dòng)機(jī)的速度,您需要在串行監(jiān)視器中輸入0到255之間的一個(gè)值。
在“循環(huán)”中函數(shù),命令“ Serial.parseInt”用于讀取在串行監(jiān)視器中輸入為文本的數(shù)字并將其轉(zhuǎn)換為“ int”。
您可以在此處鍵入任何數(shù)字,因此在如果數(shù)字介于0到255之間,則下一行僅使用該數(shù)字進(jìn)行模擬寫入。
晶體管
小型直流電動(dòng)機(jī)使用的功率可能比Arduino數(shù)字輸出直接處理的功率大。如果我們嘗試將電機(jī)直接連接到Arduino引腳,則很有可能損壞Arduino。
像PN2222這樣的小晶體管可以用作僅使用Arduino小電流的開關(guān)數(shù)字輸出以控制更大的電動(dòng)機(jī)電流。
晶體管有三根引線。大部分電流從集電極流到發(fā)射極,但這僅在少量電流流入基本連接時(shí)才會發(fā)生。此小電流由Arduino數(shù)字輸出提供。
下圖稱為像面包板布局一樣,它是顯示電子項(xiàng)目的各個(gè)部分如何連接在一起的一種方式。
Arduino的D3引腳連接到電阻。就像使用LED一樣,這會限制通過基極流向晶體管的電流。
在電機(jī)的各個(gè)端子之間連接有一個(gè)二極管。二極管僅允許電流沿一個(gè)方向(箭頭方向)流動(dòng)。
關(guān)閉電動(dòng)機(jī)的電源時(shí),會產(chǎn)生負(fù)電壓尖峰,這可能會損壞Arduino或晶體管。二極管通過短路來自電動(dòng)機(jī)的這種反向電流來防止這種情況。
其他操作
嘗試顛倒與電動(dòng)機(jī)的連接。發(fā)生什么了?
嘗試在串行監(jiān)視器中輸入不同的值(從0開始),并注意電機(jī)實(shí)際開始旋轉(zhuǎn)的值。當(dāng)您增加模擬輸出時(shí),您會發(fā)現(xiàn)電動(dòng)機(jī)開始“唱歌”。
嘗試將驅(qū)動(dòng)軸夾在手指之間。不要過長地握住它,否則可能會煮熟晶體管,但是您應(yīng)該發(fā)現(xiàn)停止電動(dòng)機(jī)相當(dāng)容易。它旋轉(zhuǎn)速度快,但扭矩不大。
責(zé)任編輯:wv
-
直流電動(dòng)機(jī)
+關(guān)注
關(guān)注
7文章
198瀏覽量
23447 -
Arduino
+關(guān)注
關(guān)注
190文章
6498瀏覽量
192175
發(fā)布評論請先 登錄
無刷直流電機(jī)在電動(dòng)轉(zhuǎn)轍機(jī)中的應(yīng)用
基于高效DC/DC電源模塊的電動(dòng)車控制系統(tǒng)設(shè)計(jì)

直流電動(dòng)機(jī)的電磁轉(zhuǎn)矩和電樞電流由什么決定?

電機(jī)控制專用集成電路PDF版
直流電機(jī)參數(shù)免費(fèi)發(fā)放
直流電機(jī)
直流電機(jī)的基本工作原理與結(jié)構(gòu)
無刷直流電機(jī)的工作原理
直流伺服電動(dòng)機(jī)的分類和結(jié)構(gòu)

評論