Arduino motor drive shield-L298N

$22.64
  • Units in Stock: 57
  • Date Added: Thursday 04 February, 2010
Add to Cart:

Product Description:

This motor drive shield is based on L298N.It is more powerful than Arduino motor drive shield- L293D.L298N is a kind of high voltage,heavy current motor drive chip,maximum working voltage is 46V,constant working current is 2A,transient peak electric current is 3A.This chip contain high voltage heavy current bridge driver of two H-bridge,it can drive two DC motor directly.
This shield should firstly consider how to supply power to motor when linking to the circuit,if your Arduino adopt external power,and this power supply mode can fit your motor driver,then link the motor to MA or MB:

then link VM jumper wire to VIN port.




Another way is supply less than 35V voltage to motor,separately link to GND and VEX wire holder of motor shield,the motor link to MA or MB as the same:


but VM jump wire should link to VEX:


when talking about controling principle,L298N are the same as L293D on function,they both control the direction of motor by two direction pin,and control the speed of motor by one enable pin.
when to this shields,the motor MA direction pin si Arduino's 13 and 12 pin,speed pin is Arduino's 10 pin.
when to this shields,the motor MB direction pin si Arduino's 11 and 8 pin,speed pin is Arduino's 9 pin.

example code as below:
// motor A
int dir1PinA = 13;
int dir2PinA = 12;
int speedPinA = 10;

// motor B
// motor A
int dir1PinB = 11;
int dir2PinB = 8;
int speedPinB = 9;

unsigned long time;
int speed;
int dir;

void setup() {
pinMode(dir1PinA, OUTPUT);
pinMode(dir2PinA, OUTPUT);
pinMode(speedPinA, OUTPUT);
pinMode(dir1PinB, OUTPUT);
pinMode(dir2PinB, OUTPUT);
pinMode(speedPinB, OUTPUT);

time = millis();
speed = 0;
dir = 1;
}

void loop() {
analogWrite(speedPinA, speed);
analogWrite(speedPinB, 255 - speed);
// set direction
if (1 == dir) {
digitalWrite(dir1PinA, LOW);
digitalWrite(dir2PinA, HIGH);
digitalWrite(dir1PinB, HIGH);
digitalWrite(dir2PinB, LOW);
} else {
digitalWrite(dir1PinA, HIGH);
digitalWrite(dir2PinA, LOW);
digitalWrite(dir1PinB, LOW);
digitalWrite(dir2PinB, HIGH);
}
if (millis() - time > 5000) {
time = millis();
speed += 20;
if (speed > 255) {
speed = 0;
}
if (1 == dir) {
dir = 0;
} else {
dir =1;
}
}
}
4 LEDs standard for the motor direction of rotation,the illumination represent motor speed:



moreover,there is a VL jumper wire on this shield, it is used for choosing logic level for L298N, we will choose V5V usually, that's to say get logic coltage from Arduino.


Schematic:




Please go to our Forum for further discussion

Qty Discounts Off Price
1-4
$22.64
5-9
$19.24
10-49
$18.11
50+
$14.72
Copyright © 2013 Elechouse.
Powered by ELECHOUSE