Modul L9110s GroundStudio

Pret redus! Modul L9110s GroundStudio Mareste

BCRRQI_GS

Produs nou

1404 Produse in stoc

8,03 lei cu TVA

-4,02 lei

12,05 lei

Produs original GroundStudio

GroundStudio-01.jpg

Produsele GroundStudio sunt proiectate si asamblate in Romania, in regim Open Hardware, folosind componente de calitate superioara.

Descarcari:

Kicad

Schematic si Layout

Descrierea produsului:

Modul bazat pe puntea H dubla L9110s cu ajutorul careia se poate controla viteza si sensul a doua motoare.

Specificatii tehnice:

Tensiune de alimentare: 2.5 - 12 V
Curent pe fiecare canal: 800 mA
Dimensiuni: 29x23 mm

ATENTIE - Produsul are nevoie de racire adecvata in functie de nivelul intensitatii curentului utilizat. In cazul in care racirea nu este asigurata corespunzator, acestea se vor defecta si va duce automat la pierderea garantiei.

Pentru racire este nevoie sa atasati un radiator (nu este inclus) si sa asigurati un flux de aer corespunzator: carcasa sa fie aerisita sau sa folositi un ventilator (nu este inclus)

Exemplu de conectare:

Pentru realizarea acestui exemplu de conectare aveti nevoie de urmatoarele:

1x Placa de dezvoltare UNO || Referinta: TXVMOK_DB-UNO-R3
1x Sursa alimentare 9V 1A || Referinta LEVUOQ_PSU-9V-1A
1x Motoras curent continuu 3-6V || Referinta UCJSGR_motor_small_2
    diferite fire necesare pentru realizarea legaturilor electrice

  1. Conectati motorasul DC la unul din conectorii cu surub ai modulului.
  2. Faceti urmatoarele legaturi intre modulul L9110 si placa UNO:
    L9110 __________ UNO
    GND __________ GND
    VCC __________ 5V
    B-IA __________ D10
    B-IB __________ D11
  3. Alimentati placa de dezvoltare UNO de la sursa 9V 1A si conectati-o la un PC.
  4. Incarcati codul de mai jos:

Exemplu cod:

// wired connections
#define HG7881_B_IA 10 // D10 --> Motor B Input A --> MOTOR B +
#define HG7881_B_IB 11 // D11 --> Motor B Input B --> MOTOR B -

// functional connections
#define MOTOR_B_PWM HG7881_B_IA // Motor B PWM Speed
#define MOTOR_B_DIR HG7881_B_IB // Motor B Direction

// the actual values for "fast" and "slow" depend on the motor
#define PWM_SLOW 50 // arbitrary slow speed PWM duty cycle
#define PWM_FAST 200 // arbitrary fast speed PWM duty cycle
#define DIR_DELAY 1000 // brief delay for abrupt motor changes

void setup()
{
Serial.begin( 9600 );
pinMode( MOTOR_B_DIR, OUTPUT );
pinMode( MOTOR_B_PWM, OUTPUT );
digitalWrite( MOTOR_B_DIR, LOW );
digitalWrite( MOTOR_B_PWM, LOW );
}

void loop()
{
boolean isValidInput;
// draw a menu on the serial port
Serial.println( "-----------------------------" );
Serial.println( "MENU:" );
Serial.println( "1) Fast forward" );
Serial.println( "2) Forward" );
Serial.println( "3) Soft stop (coast)" );
Serial.println( "4) Reverse" );
Serial.println( "5) Fast reverse" );
Serial.println( "6) Hard stop (brake)" );
Serial.println( "-----------------------------" );
do
{
byte c;
// get the next character from the serial port
Serial.print( "?" );
while( !Serial.available() )
; // LOOP...
c = Serial.read();
// execute the menu option based on the character recieved
switch( c )
{
case '1': // 1) Fast forward
Serial.println( "Fast forward..." );
// always stop motors briefly before abrupt changes
digitalWrite( MOTOR_B_DIR, LOW );
digitalWrite( MOTOR_B_PWM, LOW );
delay( DIR_DELAY );
// set the motor speed and direction
digitalWrite( MOTOR_B_DIR, HIGH ); // direction = forward
analogWrite( MOTOR_B_PWM, 255-PWM_FAST ); // PWM speed = fast
isValidInput = true;
break;

case '2': // 2) Forward
Serial.println( "Forward..." );
// always stop motors briefly before abrupt changes
digitalWrite( MOTOR_B_DIR, LOW );
digitalWrite( MOTOR_B_PWM, LOW );
delay( DIR_DELAY );
// set the motor speed and direction
digitalWrite( MOTOR_B_DIR, HIGH ); // direction = forward
analogWrite( MOTOR_B_PWM, 255-PWM_SLOW ); // PWM speed = slow
isValidInput = true;
break;

case '3': // 3) Soft stop (preferred)
Serial.println( "Soft stop (coast)..." );
digitalWrite( MOTOR_B_DIR, LOW );
digitalWrite( MOTOR_B_PWM, LOW );
isValidInput = true;
break;

case '4': // 4) Reverse
Serial.println( "Fast forward..." );
// always stop motors briefly before abrupt changes
digitalWrite( MOTOR_B_DIR, LOW );
digitalWrite( MOTOR_B_PWM, LOW );
delay( DIR_DELAY );
// set the motor speed and direction
digitalWrite( MOTOR_B_DIR, LOW ); // direction = reverse
analogWrite( MOTOR_B_PWM, PWM_SLOW ); // PWM speed = slow
isValidInput = true;
break;

case '5': // 5) Fast reverse
Serial.println( "Fast forward..." );
// always stop motors briefly before abrupt changes
digitalWrite( MOTOR_B_DIR, LOW );
digitalWrite( MOTOR_B_PWM, LOW );
delay( DIR_DELAY );
// set the motor speed and direction
digitalWrite( MOTOR_B_DIR, LOW ); // direction = reverse
analogWrite( MOTOR_B_PWM, PWM_FAST ); // PWM speed = fast
isValidInput = true;
break;

case '6': // 6) Hard stop (use with caution)
Serial.println( "Hard stop (brake)..." );
digitalWrite( MOTOR_B_DIR, HIGH );
digitalWrite( MOTOR_B_PWM, HIGH );
isValidInput = true;
break;

default:
// wrong character! display the menu again!
isValidInput = false;
break;
}
} while( isValidInput == true );

// repeat the main loop and redraw the menu...
}

         Dupa incarcarea codului deschideti "Serial Monitor" setati-l la 9600 baud si controlati motorul introducand comanda dorita urmata de tasta enter:

CONTINUTUL COLETULUI:

1x buc. modul L9110s GroundStudio

Certificari:

Open Source Hardware Associationcertification-mark-RO000014-wide.png

Nu sunt review-uri în acest moment.

Scrie un review (doar daca ai cumparat produsul, pentru intrebari sau nelamuriri foloseste pagina de contact)

Modul L9110s GroundStudio

Modul L9110s GroundStudio

30 alte produse în aceeași categorie: