ラズパイ工房

Raspberry Piとの奮闘記

トランジスターを使ったDCモータ制御

今回は、トランジスタを使用してDCモータの制御をしてみます。
 
まず、トランジスタとは...コレです。
f:id:innogress:20160707203911j:plain
上記写真の通り、トランジスタは3本足になっており
左から、エミッタ(E)・コレクタ(C)・ベース(B)になります。
 
ベース-エミッタ間に電流が流れると、コレクタ-エミッタ間に大きな電流が流れる仕組みになっています。
上記仕組みを利用して、ベース-エミッタ間の電流をラズベリーパイで制御することで
コレクタに接続したDCモータを制御してみたいと思います。
 
DCモータを動かすのに必要な電流量が大きいので、ラズベリーパイの負担を減らすために
電池を使用して動かしたいと思います。
 
接続は、こんな感じになります。
f:id:innogress:20160628224108p:plain
LEDは、逆流を防ぐために挟んでみました。
 
  1. import RPi.GPIO as GPIO
  2. import time
  3.  
  4. GPIO.setmode(GPIO.BCM)
  5. GPIO.setup(23,GPIO.OUT)
  6.  
  7. try:
  8.     while True:
  9.         GPIO.output(23,1)
  10.         time.sleep(3)
  11.  
  12.         GPIO.output(23,0)
  13.         time.sleep(2)
  14. except KeyboardInterrupt:
  15.     GPIO.cleanup()
 
GPIO23に電流が流れたときに、モータ側の電流が流れます。
 
わかりにくいので、ミニ四駆のモータに接続してみました。