Raspberry Pi モータードライバー基板キット
ドライバ基板使用例
変更情報
はじめに
このモータードライバーはRaspberryPiに取付ける事で小型DCモーターを2個(オプションにより最大3個まで)駆動可能です。
特徴
- 東芝製モータードライバTA7291Pを搭載
- 1A(ピーク2A)迄のDCモータを2個(オプションにより最大3個)まで駆動可能。
- モーターの速度はPWMにより制御可能。なおモーター3については最大速度に固定する事もできます。
- GPIO端子2本をラジコンサーボ対応のピン配置で出力。
- オープンコレクタ出力が1本あり高輝度LEDのON/OFF等に使用可能(max150mA)。
- 基板上にタクトスイッチによるGPIO入力を1本備えておりシャットダウンボタン等に使用可能
- 26ピンGPIO(RaspberryPi typeB等)および40ピンGPIO(RaspberryPi2 typeB等)どちらにも取付け可能。
- ドライバIC TA7291Pの入力信号はHレベルが3.5V以上となっており、本来RaspoberryPiの3.3Vだと規格外ですが、本キットのICは3.0V以上で動作する事を確認しています。
注意
- GPIOでラジコンサーボを制御する場合、3.3V信号で動作するサーボをご使用ください。
- 速度制御信号は1信号のみにつき、速度を制御するモーターは全て同じ速度設定となります。
※詳細は速度制御の項をご覧ください。
- モータードライバの最大電流は1A(ピーク2A)、オープンコレクタの出力トランジスタは150mAとなっていますが、温度が上がりすぎる場合は放熱処理をしてください。
- モーター電源に5V以上を印加する場合、サーボ電源にも同じ電圧が加わるので注意してください。
- 3Vを超えるモーターを使用する場合、PWMはフル出力でも3.3Vなのでモーター1,2に高電圧が加わりません。この場合CRフィルターを取り去りTA7291PのVref端子とVs端子間を3.3KΩ程度の抵抗で接続する事により速度固定に設定できます。
内容物一覧
組み立てる前に内容物を確認してください。
内容 |
数量 |
表記/カラーコード |
基板 |
1枚 |
− |
ドライバIC |
2個 |
TA7291P
|
26pinコネクタ |
1個 |
− |
ターミナルブロック |
3個 |
− |
1列ピンヘッダ |
9pin分 |
− |
タクトスイッチ |
1個 |
− |
トランジスタ |
1個 |
2SC1815 |
コンデンサ(100μF) |
1個 |
100μF |
コンデンサ(10μF) |
1個 |
10μF |
コンデンサ(0.1μF) |
2個 |
104 |
抵抗(51KΩ) |
1個 |
緑茶橙 金 |
抵抗(2.2KΩ) |
1個 |
赤赤赤 金 |
抵抗(3.3KΩ) |
2個 |
橙橙赤 金 |
スペーサ |
1個 |
− |
ネジ |
1個 |
− |
組み立て
図に従って部品を取り付けていきます。次の点には注意してください。
- RaspberryPiと接続する26ピンコネクタは裏面につけます。
- L1は回路図では330μHのインダクタですが3.3KΩの抵抗に変更しました。
- 標準のキットではモータードライバは2個入りですのでモーター1,2,3のいずれか二つを選んで実装してください。3個目はオプションです。
- サーボ、オープンコレクタ出力のコネクタはピンヘッダを3ピンずつに折って取付けてください。
- 10μF、100μFのコンデンサは周囲の部品と近く、若干取付けづらいですがご容赦ください。
※特に「
RaspberryPiと接続する26ピンコネクタは裏面につけます。」には気をつけてください(後で修正するのは大変なので)。
タクトスイッチについて
タクトスイッチは5ピンタイプが入っている場合があります。この場合は不要なピンを切取ってください。
速度制御について
RaspberryPiのPWM出力を利用してモーターの速度制御が可能です。但しRaspberryPiのハードウェアPWMは1CHのみですので複数のモーターを個別に速度制御はできず、全て同じ速度で回転しようとします。なおモーター3については配線による設定で最大速度に固定することもできます。
モーター3動作 | 設定 |
速度制御 |
JP2:1-2間をショートする |
最大速度固定 |
JP2:2-3間に3.3KΩを取り付ける。 |
※複数モーターを速度制御する場合、全部のモーターが同じ速度制御信号で回転します
完成すると次の様になります。
※タクトスイッチの色は写真と異なる可能性があります。
※オプションの3個目ドライバIC実装例です
使い方
RaspberryPiに図の様に取り付けます。
26ピンGPIOタイプ
26ピンGPIOのRaspberryPi(RaspberryPi1 typeB等)は写真の様に取付けます。

モータードライバと本体の取り付け穴位置が一致するのでスペーサーで上下を固定するか、長ねじで共締めにする事が可能です。
40ピンGPIOタイプ
40ピンGPIOのタイプ (RaspberryPi2等)は写真の様にコネクタの左端に寄せて取付けます(ピン位置がずれない様に差し込んで下さい)。

。
モータードライバ取り付け穴の直下のRaspberryPi本体には取り付け穴がありません。この場合ドライバ基板とスペーサーをネジで固定し、RaspberryPi本体には乗せるだけとなります。
「HDMI」文字の真上付近にスペーサが当たる形になります。

配線
配線例です。
回路図

※クリックするとPDFファイルが開きます。
ピン配置
GPIOピンと用途の対応は次の通りです。RaspberryPiはRev1とRev2以降とでピン配置が異なっているのでご注意ください(Rev1は初期のRaspberryPiなのでこれを使う場面は少ないと思います)。
ピン | Rev1 | Rev2以降 | 用途 |
3 | GPIO0 | GPIO2 | Motor1 IN1 |
5 | GPIO1 | GPIO3 | Motor1 IN2 |
13 | GPIO21 | GPIO27 | Motor2 IN1 |
19 | GPIO10 | GPIO10 | Motor2 IN2 |
21 | GPIO9 | GPIO9 | Motor3 IN1 |
23 | GPIO11 | GPIO11 | Motor3 IN2 |
12 | GPIO18 | GPIO18 | PWM |
18 | GPIO24 | GPIO24 | オープンコレクタ |
22 | GPIO25 | GPIO25 | タクトスイッチ入力 |
7 | GPIO4 | GPIO4 | サーボ1 |
11 | GPIO17 | GPIO17 | サーボ2 |
ソフトウェア
ソフトウェアから各機能を次の様に制御します。
(上記配線例をイメージした説明になっています)
モーター
モーターを制御するには各モータードライバのIN1,IN2に次の信号を入力する事で動作を決定します。PWMで速度制御を行うモーターはこれらに加えGPIO18のPWM信号で速度をコントロールします。
IN1 | IN2 | 動作 |
0 | 0 | ストップ |
1 | 0 | 回転 |
0 | 1 | 逆回転 |
1 | 1 | ブレーキ |
※「回転」はOUT1がH、OUT2がLを表し、「逆回転」はその反対を表します。(実際のところは回転方向を厳密に考えるよりも回してみて逆ならモーター配線を入れ換えるのが手っ取り早いと思います)
C言語等で制御する場合はGPIOにHやLを出力していく手段として、WiringPi等のライブラリを使うと便利です。
サーボ
サーボを制御するには20mS周期1.0mS〜2.0mS幅のPWM信号をGPIO4およびGPIO17から出力します。 これにはServoBlaster等のライブラリを使うと便利です。
LED(オープンコレクタ出力)
GPIO24をHにするとLEDがON、LにするとOFFです。
タクトスイッチ入力
GPIO25から状態を読みます。スイッチを押すとH、離すとLです。シャットダウンボタンとして利用する方法はサンプルプログラムを参照してください。
サンプルプログラム
rescuerobo.c
レスキュークローラの制御ソフトの例です。
このプログラムを起動するとネットワークでUDPのポート番号8765を監視し、受信したデータに従いモーター・サーボ・LEDを制御します。
GPIOの制御にWiringPi、サーボの制御にServoBlasterを利用しています。
通信を行っていますがセキュリティ的な処理は全くしていません。通信内容は各GPIOの状態をカンマ区切りで並べただけのものです。
RaspberryPi上で次の様にコンパイルします。
cc -o rescuerobo rescuerobo.c -l wiringPi
sdbutton.c
タクトスイッチをシャットダウンボタンとして使う例です。本プログラムを立ち上げ時に起動しておきます。 このプログラムの起動後、ボタンが押されていない期間が10秒以上続くと動作を開始し、その後3秒以上ボタンを押し続けるとシャットダウンコマンドを発行します。
RaspberryPi上で次の様にコンパイルします。
cc -o sdbutton sdbutton.c -lwiringPi
RescueRoboControl.zip
参考用にレスキュークローラのコントロールソフト(Windows版)も載せておきます。Visual C# 2010 Expressでコンパイルしています。
Created by ez-HTML
トップページへ
ほいほい堂本舗