マブチモーターをArduinoで制御するArduinoで学ぶ基礎からのモーター制御(2)(3/5 ページ)

» 2016年01月28日 07時00分 公開
[今岡通博MONOist]

抵抗値を求める

 今回利用するモーター「FA-130RA」の仕様を見ると、負荷電流は500mAとなっています。そのためにはコレクターに500mA以上流れるようにベース電流を調整する必要があります。次の図3はトランジスタ「2SC2120-Y」のデータシートに記載されている、コレクタ電流とコレクタ・エミッタ間電圧の関係を示したグラフにベース電流を重ねたものです。

図3 トランジスタ「2SC2120-Y」のコレクタ/エミッタ 図3 トランジスタ「2SC2120-Y」のコレクタ/エミッタ

 まず横軸を見てください。

 今回モーターを駆動する電圧は3Vとしますので、横軸の3Vのところから上に目をやり縦軸のコレクタ電流の500mAの横軸と交わるところを探します。その時のベース電流(IB)を読みとります。グラフからだと4mAから5mAの間の様に読み取れます。ここでは仮に4.5mAとします。ちなみにArduinoは各ピン20mA、ピントータルで400mAまで流せます。今のとところ4〜5mA程度ですから余裕ですね。

 2SC2120-Y以外を選ぶ際には、同じく2SCタイプのトランジスタで800mA以上コレクター電流が流せるもので、また、その時のベース電流が20mAを超えないものであれば使うことができます(ベース電流はそのトランジスタのデーターシートのグラフから割り出してください)。

 次にGPIOの電圧が決まれば、ベースにつながった抵抗値を決定することができます。GPIOの電圧を5Vとすると4.5mA流れるように抵抗値を求める式はオームの法則より、抵抗=電圧/電流=5/0.0045=1111となり、Rの抵抗値は1111Ω(オーム)となります。

 上で計算した値をもとに回路図(図4)を作成し、ブレッドボードに回路を実装します(図5)。抵抗の計算値は1111Ωですが、その値の抵抗は市販されていないので、1KΩの抵抗で代用します。ArduinoのGPIOはD2を用います。

図4 回路図 図4 回路図
図5 ブレッドボードへの実装 図5 ブレッドボードへの実装

 上の図5ではArduinoには電源が供給されていない図になっていますが、次ページで紹介するプログラムを書き込んだ後、USBケーブルなどを用いて電源につないでください。

Copyright © ITmedia, Inc. All Rights Reserved.