![]()
| 米国から購入 |
OSOYOO Model Y 4チャンネル Hブリッジ モータードライバーは、5V MCUと互換性があり、最大4つのDCモーターまたは2つのステッピングモーターを同時に制御できます。
モータードライバーボードには、2つのPT5126チップと、2組のHブリッジ制御インターフェース(4つのPWM入力ピンと8つの方向制御ピン)が搭載されています。
これにより、4つのモーターの速度と回転方向を簡単に制御することができます。
2つのモーターしか独立して動作させることができない従来のL298Nモジュールと比較して、OSOYOO Model Yモジュールは、オムニホイールやメカナムホイールの車、その他の車両にとって理想的なモータードライバーです。
さらに、OSOYOO Model Yは、従来のL298NやL293 Hブリッジモータードライバーよりもサイズが小さく、効率がはるかに優れています。
これにより、ロボットやドローンのモーターの稼働時間を長くすることができます。
定格範囲内であればチップは発熱せず、最大出力2.8Aの連続電流に対応しています。
このボードには、低電圧検出回路とサーマルシャットダウン(過熱保護)回路が内蔵されており、安全で信頼性が高いです。
OSOYOO Model Y 4チャンネル モータードライバーボードには、4つの3.5mm固定穴があり、他のデバイスへの取り付けが容易です。このモジュールは、あらゆる種類のDIY製作に適しています。

注意:
VOUTインターフェースはVINインターフェースに直結されており、電圧レギュレータチップを経由しないため、VOUT電圧はVIN電圧と等しくなります。
その目的は、追加のデバイスに電力を供給することです。チップや回路基板の損傷を防ぐため、VOUTピンをチップの電源ピンに直接接続しないでください。
オンボードのサーボインターフェースは、外部MCUによるサーボ制御を簡素化するために設計されています。
このドライバーボードにはMCUが含まれていないため、サーボを直接駆動することはできません。 お客様は、外部ドライバー回路のPWMピンをサーボインターフェースのSピンに接続する必要があります。
3線式サーボを対応するヘッダーピンに接続することで、配線を簡素化し、サーボを駆動することができます。

①電源選択スイッチ。
②異なる電源に対応するために追加のネジ端子が用意されており、プロジェクトへの電源供給に様々な選択肢を提供します。
③赤いXH2.54逆接続防止端子は電源入力インターフェースです。
④電源出力インターフェース。
電圧調整なしでVINに直結されており、他のデバイスに電力を供給できます。
⑤コントローラー信号インターフェース。5Vコントローラーと互換性があり、これを使用してモーターの回転方向、回転速度、起動、停止を制御します。
⑥PT5126-HSモータードライバー。これらは4つのDCモーターを駆動でき、各モジュールで個別に2つのDCモーターを制御できます。
必要に応じて、これらを最も一般的な赤色のTB6612モジュールに交換することも可能です。
⑦電源インジケーター。
⑧サーボインターフェース。
ロボットプロジェクトをより良く構築するために、2つのサーボポートを提供しています。それぞれ、コントローラーからの駆動ピンと3ピンの一般サーボピンに接続できます。(このインターフェースは、配線を簡素化し、サーボに5V電源を供給するために設計されています。
このドライバーボードにはMCUが含まれておらず、サーボを直接駆動することはできません。
PWMサーボ制御信号を供給するために外部MCUが必要です。)
⑨XH2.54逆接続防止モーターインターフェース。
モーターを接続する際は、直接差し込むだけです。AK1/AK2は同じ駆動信号で制御され、AK3/AK4も同じ信号で制御されます。
反対側の4つのポートについても同様です。
⑩ネジ端子モーターインターフェース。
このプロジェクトに異なるモーターを組み込む機会を提供します。
⑪電源入力/出力ピンヘッダー。
同時に、外部の3線式電圧計を接続して、電源電圧を簡単に確認することができます。
⑫モーター制御インジケーター。
当社の技術チームは、Model Y v1.0において2つの個別のPT5126ボードを1つの統合ボードにまとめ、配線プロセスを合理化し、お客様の組み立てやすさを向上させました。

説明:
上の写真には、最大8つのモーターを接続できる8つのソケットがあります。
ソケットAK1とAK2は同期しており、これをA1ペアと呼びます。
ソケットAK3とAK4は同期しており、これをA2ペアと呼びます。
ソケットBK1とBK2は同期しており、これをB1ペアと呼びます。
ソケットBK3とBK4は同期しており、これをB2ペアと呼びます。
A1ペアのモーター動作方向はチャンネルA制御ピンIN1/IN2によって制御され、速度はチャンネルA ENAによって制御されます。
A2ペアのモーター動作方向はチャンネルA制御ピンIN3/IN4によって制御され、速度はチャンネルA ENBによって制御されます。
B1ペアのモーター動作方向はチャンネルB制御ピンIN1/IN2によって制御され、速度はチャンネルB ENAによって制御されます。
B2ペアのモーター動作方向はチャンネルB制御ピンIN3/IN4によって制御され、速度はチャンネルB ENBによって制御されます。
制御信号の表は以下の通りです。
| ソケット | 動作方向 | PWM速度制御ピン | 方向ピンの値 |
| AK1/AK2 | 前進 | Aチャンネル ENA | Aチャンネル IN1=1 IN2=0 |
| AK1/AK2 | 後退 | Aチャンネル ENA | Aチャンネル IN1=0 IN2=1 |
| AK3/AK4 | 前進 | Aチャンネル ENB |
Aチャンネル IN3=1 IN4=0 |
| AK3/AK4 | 後退 | Aチャンネル ENB | Aチャンネル IN3=0 IN4=1 |
| BK1/BK2 | 前進 | Bチャンネル ENA | Bチャンネル IN1=1 IN2=0 |
| BK1/BK2 | 後退 | Bチャンネル ENA | Bチャンネル IN1=0 IN2=1 |
| BK3/BK4 | 前進 | Bチャンネル ENB | Bチャンネル IN3=1 IN4=0 |
| BK3/BK4 | 後退 | Bチャンネル ENB | Bチャンネル IN3=0 IN4=1 |
寸法
プログラミングガイド:
1) モーター接続図の例:

説明:
上記の例では、OSOYOO FlexiRoverフレームワーク + 520 DCモーター + メカナムホイールを使用しています。
必ずしも上記のハードウェアを使用する必要はありません。任意のフレームワークやDCモーターを使用できますが、OSOYOOのDCモーターにはXH 2.54プラグが付いており、Model Yの8つの出力モーターソケットに接続するのが簡単です。
独自のモーターを使用したい場合は、ソケットにしっかりと挿入できるXH2.54プラグをモーターにハンダ付けすることをお勧めします。
Arduino 配線接続例:

説明:
Model Y Hブリッジは、4つの独立したモーターチャンネルを制御するために12ピン(2つのPWMを含む)を必要とします。
Model Yモジュールを制御するには、UNOボードではなくArduino MEGA2560の使用を強くお勧めします。
サンプルコードのダウンロード https://osoyoo.com/download/model_Y_sample.zip:
#define SPEED 100 //速度は0〜255のPWM値
#define TURN_SPEED 100 //速度は0〜255のPWM値
#define Speed_BK1_Socket 9 //BK1モーターソケットの速度はModel-Y チャンネルB ENA PWM値で制御
#define Chnl_B_IN1 22 //BK1モーター回転方向制御ピン1はチャンネルB IN1
#define Chnl_B_IN2
24 //BK1モーター回転方向制御ピン2はチャンネルB IN2
#define Chnl_B_IN3 26 //BK3モーター回転方向制御ピン1はチャンネルB IN3
#define Chnl_B_IN4 28 //BK3モーター回転方向制御ピン2はチャンネルB IN4
#define Speed_BK3_Socket 10 //BK3モーターソケットの速度は
Model-Y チャンネルB ENB PWM値で制御
#define Speed_AK1_Socket 11 //AK1モーターソケットの速度はModel-Y チャンネルA ENA PWM値で制御
#define Chnl_A_IN1 5 //AK1モーター回転方向制御ピン1はチャンネルA IN1
#define Chnl_A_IN2 6 //AK1モーター回転方向制御ピン2はチャンネルA IN2
#define Chnl_A_IN3 7 //AK3モーター回転方向制御ピン1はチャンネルA IN3
#define Chnl_A_IN4
8 //AK3モーター回転方向制御ピン2はチャンネルA IN4 (K3)
#define Speed_AK3_Socket 12 //AK3モーターソケットの速度はModel-Y チャンネルA ENB PWM値で制御
void BK1_fwd(int speed) //右前ホイール 前進
{
digitalWrite(Chnl_B_IN1,HIGH);
digitalWrite(Chnl_B_IN2,LOW);
analogWrite(Speed_BK1_Socket,speed);
}
void BK1_bck(int speed) // 右前ホイール 後退
{
digitalWrite(Chnl_B_IN1,LOW);
digitalWrite(Chnl_B_IN2,HIGH);
analogWrite(Speed_BK1_Socket,speed);
}
void BK3_fwd(int speed) // 左前ホイール 前進
{
digitalWrite(Chnl_B_IN3,HIGH);
digitalWrite(Chnl_B_IN4,LOW);
analogWrite(Speed_BK3_Socket,speed);
}
void BK3_bck(int speed) // 左前ホイール 後退
{
digitalWrite(Chnl_B_IN3,LOW);
digitalWrite(Chnl_B_IN4,HIGH);
analogWrite(Speed_BK3_Socket,speed);
}
void AK1_fwd(int speed) //右後ホイール 前進
{
digitalWrite(Chnl_A_IN1, HIGH);
digitalWrite(Chnl_A_IN2,LOW);
analogWrite(Speed_AK1_Socket,speed);
}
void AK1_bck(int speed) //右後ホイール 後退
{
digitalWrite(Chnl_A_IN1, LOW);
digitalWrite(Chnl_A_IN2,HIGH);
analogWrite(Speed_AK1_Socket,speed);
}
void AK3_fwd(int speed) //左後ホイール 前進
{
digitalWrite(Chnl_A_IN3,HIGH);
digitalWrite(Chnl_A_IN4,LOW);
analogWrite(Speed_AK3_Socket,speed);
}
void AK3_bck(int speed) //左後ホイール 後退
{
digitalWrite(Chnl_A_IN3,LOW);
digitalWrite(Chnl_A_IN4,HIGH);
analogWrite(Speed_AK3_Socket,speed);
}
void stop_motor() //停止
{
analogWrite(Speed_AK3_Socket,0);
analogWrite(Speed_AK1_Socket,0);
analogWrite(Speed_BK3_Socket,0);
analogWrite(Speed_BK1_Socket,0);
}
//Pins initialize (ピン初期化)
void init_GPIO()
{
pinMode(Chnl_A_IN1, OUTPUT);
pinMode(Chnl_A_IN2, OUTPUT);
pinMode(Chnl_A_IN3, OUTPUT);
pinMode(Chnl_A_IN4, OUTPUT);
pinMode(Speed_AK1_Socket, OUTPUT);
pinMode(Speed_AK3_Socket, OUTPUT);
pinMode(Chnl_B_IN1, OUTPUT);
pinMode(Chnl_B_IN2, OUTPUT);
pinMode(Chnl_B_IN3, OUTPUT);
pinMode(Chnl_B_IN4, OUTPUT);
pinMode(Speed_BK1_Socket, OUTPUT);
pinMode(Speed_BK3_Socket, OUTPUT);
stop_motor();
}
void setup()
{
init_GPIO();
AK1_fwd(SPEED);
delay(800);
stop_motor();
delay(100);
AK1_bck(SPEED);
delay(800);
stop_motor();
delay(100);
AK3_fwd(SPEED);
delay(800);
stop_motor();
delay(100);
AK3_bck(SPEED);
delay(800);
stop_motor();
delay(100);
BK1_fwd(SPEED);
delay(800);
stop_motor();
delay(100);
BK1_bck(SPEED);
delay(800);
stop_motor();
delay(100);
BK3_fwd(SPEED);
delay(800);
stop_motor();
delay(100);
BK3_bck(SPEED);
delay(800);
stop_motor();
}
void loop(){
}
上記のコードをArduino MEGA2560ボードにアップロードすると、AK1、AK3、BK1、BK3のモーターが順番に前進・後退回転します。
DownLoad Url osoyoo.com