INHOUDSOPGAWE:

Arduino L293D -motorbestuurder -skildstudie: 8 stappe
Arduino L293D -motorbestuurder -skildstudie: 8 stappe

Video: Arduino L293D -motorbestuurder -skildstudie: 8 stappe

Video: Arduino L293D -motorbestuurder -skildstudie: 8 stappe
Video: L293D Motor control Module Tutorial - Run motors off the Arduino 2024, Julie
Anonim
Arduino L293D tutoriaal vir motorbestuurderskild
Arduino L293D tutoriaal vir motorbestuurderskild

U kan hierdie en vele ander wonderlike tutoriale op die amptelike webwerf van ElectroPeak lees

Oorsig

In hierdie tutoriaal leer u hoe u DC-, stepper- en servomotors moet bestuur met 'n Arduino L293D -motorbestuurderskerm.

Wat jy sal leer:

  • Algemene inligting oor GS -motors
  • Inleiding tot die motorskerm L293D
  • Ry DC, Servo & Stepper motors

Stap 1: Motors en bestuurders

Motors en bestuurders
Motors en bestuurders

Motors is 'n onlosmaaklike deel van baie robotiese en elektroniese projekte en het verskillende tipes wat u kan gebruik, afhangende van die toepassing daarvan. Hier is 'n paar inligting oor verskillende tipes motors:

DC -motors: GS -motor is die mees algemene tipe enjin wat vir baie toepassings gebruik kan word. Ons kan dit sien in afstandsbedieningsmotors, robotte, ens. Hierdie motor het 'n eenvoudige struktuur. Dit sal begin rol deur die regte spanning aan die eindpunte toe te pas en sy rigting te verander deur die polariteit van die spanning te verander. Die DC -motorsnelheid word direk beheer deur die toegepaste spanning. As die spanningsvlak minder is as die maksimum draagbare spanning, sal die snelheid verminder.

Stepper Motors: In sommige projekte soos 3D -drukkers, skandeerders en CNC -masjiene moet ons motorstappe akkuraat ken. In hierdie gevalle gebruik ons stappermotors. Stappermotor is 'n elektriese motor wat 'n volle rotasie in 'n aantal gelyke trappe verdeel. Die hoeveelheid rotasie per stap word bepaal deur die motorstruktuur. Hierdie motors het 'n baie hoë akkuraatheid.

Servomotors: Servomotor is 'n eenvoudige DC -motor met 'n posisionele beheerdiens. Deur 'n servo te gebruik, kan u die rotasie van die asse beheer en na 'n spesifieke posisie beweeg. Hulle het gewoonlik 'n klein dimensie en is die beste keuse vir robotarms.

Maar ons kan hierdie motors nie direk aan mikrobeheerders of kontroleerderbord soos Arduino koppel om dit te beheer nie, aangesien hulle moontlik meer stroom benodig as wat 'n mikrobeheerder kan dryf, sodat ons bestuurders nodig het. Die bestuurder is 'n koppelvlakbaan tussen die motor en die bestuurseenheid om bestuur te vergemaklik. Drives kom in baie verskillende tipes voor. In hierdie instruksie leer u hoe u aan die L293D -motorskerm werk.

L293D -skild is 'n bestuurdersbord wat gebaseer is op L293 IC, wat 4 GS -motors en 2 stepper- of servomotors tegelyk kan aandryf.

Elke kanaal van hierdie module het die maksimum stroom van 1.2A en werk nie as die spanning meer as 25v of minder as 4.5v is nie. Wees dus versigtig met die keuse van die regte motor volgens sy nominale spanning en stroom. Vir meer kenmerke van hierdie skild, kan ons noem dat dit verenigbaar is met Arduini UNO en MEGA, elektromagnetiese en termiese beskerming van die motor en die ontkoppelingsbaan in die geval van onkonvensionele spanningsverhoging.

Stap 2: Hoe om die Arduino L293D -motorbestuurderskerm te gebruik?

Hoe om die Arduino L293D -motorbestuurderskerm te gebruik?
Hoe om die Arduino L293D -motorbestuurderskerm te gebruik?

Terwyl u hierdie skild 6 analoog penne gebruik (wat ook as digitale penne gebruik kan word), is pen 2 en pen 13 van arduino gratis.

In die geval van die gebruik van servomotor, word penne 9, 10, 2 gebruik.

In die geval van die gebruik van DC -motor, is pin11 vir #1, pin3 vir #2, pin5 vir #3, pin6 vir #4 en penne 4, 7, 8 en 12 vir almal gebruik.

As u 'n stapmotor gebruik, word penne 11 en 3 vir nommer 1, penne 5 en 6 vir #2 en penne 4, 7, 8 en 12 vir almal gebruik.

U kan gratis penne gebruik deur bedrade verbindings.

As u 'n aparte kragtoevoer op Arduino en die skild aanbring, moet u seker maak dat u die trui op die skerm ontkoppel het.

Stap 3: Ry met DC -motor

Ry DC motor
Ry DC motor

#insluit

Die biblioteek wat u nodig het om die motor te beheer:

AF_DC Motor motor (1, MOTOR12_64KHZ)

Definieer die GS -motor wat u gebruik.

Die eerste argument staan vir die aantal motors in die skild en die tweede een staan vir die frekwensie van die motorsnelheidsbeheer. Die tweede argument kan MOTOR12_2KHZ, MOTOR12_8KHZ, MOTOR12_8KHZ en MOTOR12_8KHZ vir motors nommer 1 en 2 wees, en dit kan MOTOR12_8KHZ, MOTOR12_8KHZ, en MOTOR12_8KHZ wees vir motors nommer 3 en 4. En as dit uitgeskakel word, sal dit by standaard gemerk word.

motor.setSpeed (200);

Bepaal die motorsnelheid. Dit kan ingestel word van 0 tot 255.

leemte -lus () {

motor.run (VOORUIT);

vertraging (1000);

motor.run (TERUG);

vertraging (1000);

motor.run (RELEASE);

vertraging (1000);

}

Funksie motor.run () spesifiseer die motor se bewegingsstatus. Die status kan VOORUIT, TERUG en VERKLARING wees. RELEASE is dieselfde as die rem, maar dit kan 'n rukkie neem voordat die motor stop.

Dit word aanbeveel om 'n 100nF -kondensator aan elke motorpen vas te soldeer om geraas te verminder.

Stap 4: Bestuur servomotor

Bestuurde servomotor
Bestuurde servomotor

Arduino IDE -biblioteek en voorbeelde is geskik vir die bestuur van 'n servomotor.

#insluit

Die biblioteek wat u benodig om die servomotor te bestuur

Servo myservo;

Definieer 'n servomotoriese voorwerp.

ongeldige opstelling () {

myservo.attach (9);

}

Bepaal die pen wat met Servo verbind word. (Pen 9 vir sevo #1 en pen 10 vir servo #2)

leemte -lus () {

myservo.write (val);

vertraging (15);

}

Bepaal die hoeveelheid motorrotasie. Tussen 0 tot 360 of 0 tot 180 volgens motortipe.

Stap 5: ry stapmotor

Stappende motor
Stappende motor

#sluit <AFMotor.h> in

Bepaal die biblioteek wat u benodig

AF_Stapmotor (48, 2);

Definieer 'n stapmotorvoorwerp. Die eerste argument is die motorstapresolusie. (as u motor byvoorbeeld 'n presisie van 7,5 grade/stap het, beteken dit dat die motorstapresolusie is. Die tweede argument is die nommer van die stappermotor wat aan die skild gekoppel is.

ongeldige opstelling () {motor.setSpeed (10);

motor.onestep (VOORUIT, ENKEL);

motor.vrystelling ();

vertraging (1000);

}

leegte lus () {motor.step (100, VOORUIT, ENKEL);

motor.stap (100, AGTER, ENKEL);

motor.stap (100, VOORUIT, DUBBEL); motor.stap (100, TERUG, DUBBEL);

motor.stap (100, VOORUIT, INTERLEAVE); motor.stap (100, TERUG, INTERLEEF);

motor.step (100, VOORUIT, MICROSTEP); motor.stap (100, TERUG, MICROSTEP);

}

Bepaal motorsnelheid in rpm.

Die eerste argument is die hoeveelheid stap wat nodig is om te beweeg, die tweede een is om rigting te bepaal (VOORUIT of TERUG), en die derde argument bepaal die tipe stappe: ENKEL (Aktiveer 'n spoel), DOUBLE (Aktiveer twee spoele vir meer wringkrag), INTERLEAVED (Deurlopende verandering in die aantal spoele van een na twee en omgekeerd tot dubbele presisie, maar in hierdie geval word die snelheid gehalveer), en MICROSTEP (Die stappe word stadig verander vir meer presisie. In hierdie geval, die wringkrag is laer). Standaard hou die motor sy status as die motor ophou beweeg.

U moet die funksie motor.release () gebruik om die motor los te laat.

Stap 6: Koop die Arduino L293D -motorbestuurderskerm

Koop Arduino L293D -skild van ElectroPeak

Stap 7: Verwante projekte:

  • L293D: Teorie, diagram, simulasie en pinout
  • Die beginnersgids vir die beheer van motors deur Arduino & L293D

Stap 8: Hou van ons op FaceBook

As u hierdie tutoriaal nuttig en interessant vind, hou van ons op facebook.

Aanbeveel: