INHOUDSOPGAWE:

DC Motor Control Arduino Uno R3: 6 stappe
DC Motor Control Arduino Uno R3: 6 stappe

Video: DC Motor Control Arduino Uno R3: 6 stappe

Video: DC Motor Control Arduino Uno R3: 6 stappe
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, November
Anonim
DC Motor Control Arduino Uno R3
DC Motor Control Arduino Uno R3

In hierdie eksperiment leer ons hoe om die rigting en spoed van 'n klein DC-motor met 'n bestuurder-chip L293D te beheer. Deur eenvoudige eksperimente te doen, laat ons die motor net links en regs draai en outomaties versnel of vertraag.

Stap 1: Komponente

- Arduino Uno -bord * 1

- USB -kabel * 1

- L293D *1

- Klein GS -motor * 1

- Broodbord * 1

- Springdrade

Stap 2: Beginsel

Die maksimum stroom van 'n Arduino I/O -poort is 20mA, maar die dryfstroom van 'n motor is minstens 70mA. Daarom kan ons nie die I/O -poort direk gebruik om die stroom aan te dryf nie; In plaas daarvan kan ons 'n L293D gebruik om die motor aan te dryf. L293D L293D is ontwerp om tweerigting -dryfstrome van tot 600mA te verskaf by spannings van 4.5V tot 36V. Dit word gebruik om induktiewe vragte aan te dryf, soos relais, solenoïdes, DC- en bipolêre trapmotors, sowel as ander hoëstroom-/hoogspanningsbelastings in toepassings met positiewe toevoer.

Sien die figuur van penne hieronder. L293D het twee penne (Vcc1 en Vcc2) vir kragtoevoer. Vcc2 word gebruik om krag vir die motor te verskaf, terwyl Vcc1 vir die chip. Aangesien 'n klein DC-motor hier gebruik word, verbind beide penne met +5V. As u 'n motor met 'n hoër krag gebruik, moet u Vcc2 aan 'n eksterne kragtoevoer koppel.

Stap 3: Die skematiese diagram

Die skematiese diagram
Die skematiese diagram

Stap 4: Prosedures

Prosedures
Prosedures
Prosedures
Prosedures

Die Aktiveer pen 1, 2EN van die L293D is reeds aan 5V gekoppel, sodat L293D altyd in werkende toestand is. Koppel pen 1A en 2A aan pen 9 en 10 van die bedieningsbord onderskeidelik. Die twee penne van die motor is gekoppel aan pen 1Y en 2Y onderskeidelik. As pen 10 as Hoë vlak en pen 9 as Laag gestel is, sal die motor in een rigting begin draai. As die pen 10 laag is en pen 9 hoog is, draai dit in die teenoorgestelde rigting.

Stap 1:

Bou die kring.

Stap 2:

Laai die kode af van

Stap 3:

Laai die skets op na die Arduino Uno -bord

Klik op die ikoon Oplaai om die kode na die beheerbord op te laai.

As 'Klaar oplaai' onderaan die venster verskyn, beteken dit dat die skets suksesvol opgelaai is.

Nou begin die lem van die GS -motor links en regs draai, teen 'n snelheid wat dienooreenkomstig wissel.

Stap 5: Kode

Kode
Kode

// DC -motorbeheer

// Die GS -motor

sal na links en regs begin draai, en die snelheid daarvan sal dienooreenkomstig wissel.

//E -pos: [email protected]

// Webwerf: www.primerobotics.in

/***************************************/

konst int motorIn1

= 9; // maak vas aan een van die pen van die motor

konst int motorIn2

= 10; // heg aan 'n ander pen van die motor

/***************************************/

leemte opstelling ()

{

pinMode (motorIn1, OUTPUT); // initialiseer die motorIn1 -pen as uitset

pinMode (motorIn2, OUTPUT); // initialiseer die motorIn2 -pen as uitset

}

/****************************************/

leemte lus ()

{

kloksgewys (200); // draai kloksgewys

vertraging (1000);

// wag 'n oomblik

linksom (200); // draai linksom

vertraging (1000);

// wag 'n oomblik

}

/****************************************

/Die funksie om

dryfmotor kloksgewys draai

leeggemaak met die kloksgewys (int

Spoed)

{

analogWrite (motorIn1, spoed); // stel die snelheid van die motor in

analogWrite (motorIn2, 0); // stop die motor In2 motorpen

}

// Die funksie om te bestuur

motor draai linksom

nietig

linksom (int Speed)

{

analogWrite (motorIn1, 0); // stop die motor In 1 pen van die motor

analogWrite (motorIn2, spoed); // stel die motorsnelheid in

}

/****************************************/

Aanbeveel: