GR-ADZUKI MOTOR

Pocket

今回は、GR-ADZUKIでモータを動かします。
GR-ADZUKIは2個のモータを制御できます。
http://gadget.renesas.com/ja/product/adzuki.html
ROHM BD6211Fというブラシ付きモータ用Hブリッジドライバが2個搭載されています。
http://akizukidenshi.com/download/ds/rohm/bd621x-j.pdf#search=%27BD6211F%27
モータなどは、以下のパーツ類を使用しました。
ユニバーサルプレートセット
http://www.tamiya.com/japan/products/70098/index.html
トラック&ホイールセット
http://www.tamiya.com/japan/products/70100/index.html
ダブルギヤボックス(左右独立4速タイプ)
http://www.tamiya.com/japan/products/70168/index.html
電池ボックス 単4×4本 リード線・フタ・スイッチ付
http://akizukidenshi.com/catalog/g/gP-00735/




プログラムの説明をします。
モータコネクタのピン番号定義を行います。Fが前進、Bが後退です。
int MOTOR0_F = 9;
int MOTOR0_B = 10;
int MOTOR1_F = 6;
int MOTOR1_B = 11;
次に速度、最高速度、速度の変化量を定義します。
int Speed = 0;
int MaxSpeed = 150;
int SpeedAmount = 5;

setup() 関数で、モータコネクタピンをすべて出力ピンに設定します。
pinMode(MOTOR0_F, OUTPUT);
pinMode(MOTOR0_B, OUTPUT);
pinMode(MOTOR1_F, OUTPUT);
pinMode(MOTOR1_B, OUTPUT);

loop()関数でスピードを設定します。
スピード設定は、analogWrite()関数を使用します。
analogWrite(MOTOR0_F, Speed);
analogWrite(MOTOR0_B, 0);
analogWrite(MOTOR1_F, Speed);
analogWrite(MOTOR1_B, 0);

スピードを変化させます。
Speed = Speed + SpeedAmount;

スピードが最大値になると減速に転じます。スピードが0になると加速に転じます。
if (Speed == 0 || Speed == MaxSpeed) {
SpeedAmount = -SpeedAmount ;
}

100msecごとに処理を繰り返します。
delay(100);

サンプルプログラムは以下にあります。
https://github.com/jendo1969/GR-ADZUKI2/blob/master/Motor/Motor.ino

 

This time, I will move the motor with GR-ADZUKI.
GR-ADZUKI can control two motors.

http://gadget.renesas.com/ja/product/adzuki.html
Two ROHM BD6211F H-bridge drivers with brushed motors are mounted.
http://akizukidenshi.com/download/ds/rohm/bd621x-j.pdf#search=%27BD6211F%27
Motor etc used the following parts.
Universal Plate Set
http://www.tamiya.com/japan/products/70098/index.html
Track & Wheel Set
http://www.tamiya.com/japan/products/70100/index.html
Double gearbox (left and right independent 4 speed type)
http://www.tamiya.com/japan/products/70168/index.html
Battery box single 4 x 4 pcs Lead wire / lid / switch included
http://akizukidenshi.com/catalog/g/gP-00735/

I will explain the program.
Define the pin number of the motor connector. F is forward and B is backward.

int MOTOR0_F = 9;
int MOTOR0_B = 10;
int MOTOR1_F = 6;
int MOTOR1_B = 11;
Next, define speed, maximum speed, speed change.
int Speed = 0;
int MaxSpeed = 150;
int SpeedAmount = 5;

In the setup() function, set all motor connector pins to output pins.
pinMode(MOTOR0_F, OUTPUT);
pinMode(MOTOR0_B, OUTPUT);
pinMode(MOTOR1_F, OUTPUT);
pinMode(MOTOR1_B, OUTPUT);

Set the speed with the loop() function.
The speed setting uses the analogWrite() function.

analogWrite(MOTOR0_F, Speed);
analogWrite(MOTOR0_B, 0);
analogWrite(MOTOR1_F, Speed);
analogWrite(MOTOR1_B, 0);

It changes the speed.
Speed = Speed + SpeedAmount;

When the speed reaches its maximum value, it starts to decelerate. When the speed becomes 0, it starts to accelerate.
if (Speed == 0 || Speed == MaxSpeed) {
SpeedAmount = -SpeedAmount ;
}

Repeat the process every 100msec.
delay(100);

The sample program is below.
https://github.com/jendo1969/GR-ADZUKI2/blob/master/Motor/Motor.ino

 

這一次,我會用GR-ADZUKI移動電機。
GR-ADZUKI可以控制兩台電機。

http://gadget.renesas.com/ja/product/adzuki.html
兩台帶有電刷的ROHM BD6211F H橋驅動器被安裝。
http://akizukidenshi.com/download/ds/rohm/bd621x-j.pdf#search=%27BD6211F%27
電機等使用以下部件。
通用板組
http://www.tamiya.com/japan/products/70098/index.html
軌道和輪組
http://www.tamiya.com/japan/products/70100/index.html
雙變速箱(左右獨立4速型)
http://www.tamiya.com/japan/products/70168/index.html
電池盒單個4 x 4 pcs導線/蓋子/開關包括在內
http://akizukidenshi.com/catalog/g/gP-00735/

我會解釋一下這個程序。
定義電機連接器的引腳號。 F向前,B向後。

int MOTOR0_F = 9;
int MOTOR0_B = 10;
int MOTOR1_F = 6;
int MOTOR1_B = 11;
接下來,定義速度,最大速度,速度變化。
int Speed = 0;
int MaxSpeed = 150;
int SpeedAmount = 5;

在setup()函數中,將所有電機連接器引腳設置為輸出引腳。
pinMode(MOTOR0_F, OUTPUT);
pinMode(MOTOR0_B, OUTPUT);
pinMode(MOTOR1_F, OUTPUT);
pinMode(MOTOR1_B, OUTPUT);

使用loop()函數設置速度。
速度設置使用analogWrite()函數。

analogWrite(MOTOR0_F, Speed);
analogWrite(MOTOR0_B, 0);
analogWrite(MOTOR1_F, Speed);
analogWrite(MOTOR1_B, 0);

它改變了速度。
Speed = Speed + SpeedAmount;

當速度達到最大值時,開始減速。 速度變為0時開始加速。
if (Speed == 0 || Speed == MaxSpeed) {
SpeedAmount = -SpeedAmount ;
}

每100毫秒重複這個過程。
delay(100);

示例程序如下。
https://github.com/jendo1969/GR-ADZUKI2/blob/master/Motor/Motor.ino

 

Post Tagged with ,

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください