Tässä viestissä aiomme oppia L298N-kaksois-H-sillan tasavirtamoottorin ohjainmoduulista, jota voidaan käyttää harjattujen tasavirtamoottoreiden ja askelmoottoreiden ohjaamiseen mikro-ohjaimilla ja IC: llä.
Yleiskatsaus
Modulaariset piirilevyt ovat paras aikaa säästävä elektroniikkasuunnittelijoille, jotka myös vähentävät prototyyppivirheitä. Tätä suosivat enimmäkseen ohjelmoijat, jotka kirjoittavat koodia mikrokontrollereille, viettävät suurimman osan ajastaan kirjoittamalla koodeja tietokoneen eteen, ja heillä on vähemmän aikaa juottaa erilliset elektroniset komponentit.
Siksi voimme löytää tonnia ja tonnia erilaisia modulaarisia piirejä vain Arduino-levyille, se on helppo liittää ja sillä on etuna vähiten laitteistovirheitä prototyyppimme suunnittelussa.
Kuva L298N-moduulista:
Moduuli on rakennettu IC L298N: n ympärille, ja se on yleisesti saatavana verkkokaupan verkkosivustoilla.
Käytämme DC-moottorin ohjaimet koska IC: t ja mikrokontrollerit eivät kykene toimittamaan virtaa enintään 100 milliampeeria yleensä. Mikrokontrollerit ovat älykkäitä, mutta eivät vahvoja, tämä moduuli lisää joitain lihaksia Arduinoon, IC: iin ja muihin mikrokontrollereihin suuritehoisten DC-moottoreiden ajamiseksi.
Se voi ohjata kahta tasavirtamoottoria samanaikaisesti enintään 2 ampeeria kullekin tai yhtä askelmoottoria. Me voimme hallita nopeutta käyttämällä PWM: ää ja myös sen moottoreiden pyörimissuuntaa.
Tämä moduuli on ihanteellinen robottien rakentaminen ja maansiirtohankkeet, kuten leluautot.
Katsotaanpa L298N-moduulin tekniset yksityiskohdat.
Tapin kuvaus:
· Vasemmalla puolella on OUT1- ja OUT2-portit, jotka on tarkoitettu tasavirtamoottorin liittämistä varten. Vastaavasti OUT3 ja OUT4 toiselle tasavirtamoottorille.
· ENA ja ENB ovat sallittuja nastoja, liittämällä ENA korkeaan tai + 5 V: iin, se mahdollistaa portit OUT1 ja OUT2. Jos kytket ENA-nastan matalaan tai maahan, se poistaa OUT1: n ja OUT2: n käytöstä. Vastaavasti ENB: lle ja OUT3: lle ja OUT4: lle.
· IN1 - IN4 ovat tulonastat, jotka kytketään Arduinoon. Jos syötät IN1 + Ve ja IN2 –Ve mikrokontrollerista tai manuaalisesti, OUT1 kääntyy korkealle ja OUT2 matalalle, joten voimme käyttää moottoria.
· Jos syötät IN3 korkeaksi, OUT4 kääntyy korkeaksi ja jos syötät IN4 matala OUT3 kääntyy matalaksi, voimme nyt ajaa toista moottoria.
· Jos haluat kääntää moottorin pyörimissuunnan, käännä päinvastoin IN1 ja IN2, samalla tavalla kuin IN3 ja IN4.
· Antamalla PWM-signaalin ENA: lle ja ENB: lle voit säätää moottorien nopeutta kahdessa eri lähtöportissa.
· Hallitus voi nimellisesti hyväksyä 7 - 12 V. Voit syöttää virtaa + 12 V: n liittimestä ja maadoittaa 0 V: iin.
· + 5V -liitin on OUTPUT, jota voidaan käyttää Arduinon tai minkä tahansa muun moduulin virtalähteeseen tarvittaessa.
Neulepuserot:
On kolme hyppytappia, joita voit vierittää ylöspäin, katso piirretty kuva.
Kaikki hyppääjät liitetään ensin poistamaan tai pitämään hyppääjä tarpeen mukaan.
Hyppääjä 1 (katso kuvitettu kuva):
· Jos tarvitset moottoria yli 12 V: n jännitteelle, sinun on irrotettava hyppyjohdin 1 ja käytettävä haluttua jännitettä (enintään 35 V) 12 V: n liittimessä. Tuo toinen 5 V: n syöttö ja tulo + 5 V: n liittimessä. Kyllä, sinun on syötettävä 5 V, jos sinun on käytettävä yli 12 V (kun hyppyjohdin 1 poistetaan).
· 5 V: n tulo on tarkoitettu IC: n moitteettomaan toimintaan, koska hyppyjohdon irrottaminen poistaa sisäänrakennetun 5 V: n säätimen käytöstä ja suojaa 12 V: n liittimen suuremmalta tulojännitteeltä.
· + 5V -liitin toimii lähdönä, jos virtalähde on välillä 7-12 V, ja toimii tulona, jos käytät yli 12V ja hyppyjohdin on irrotettu.
· Suurin osa projekteista tarvitsee vain moottorin jännitteen alle 12 V, joten pidä hyppääjä sellaisena kuin se on ja käytä + 5 V -liitintä lähtöön.
Hyppääjä 2 ja hyppääjä 3 (katso kuva):
· Jos poistat nämä kaksi hyppääjää, sinun on syötettävä käyttöönotto- ja käytöstäpoistosignaali mikro-ohjaimelta, useimmat käyttäjät haluavat poistaa kaksi hyppääjää ja käyttää signaalia mikro-ohjaimesta.
· Jos pidät kaksi hyppääjää, OUT1 - OUT4 otetaan aina käyttöön. Muista ENA-jumpperi malleille OUT1 ja OUT2. ENB-jumpperi malleille OUT3 ja OUT4.
Katsotaan nyt käytännön piiri, miten voimme liitäntämoottorit, Arduino ja syöttö ohjainmoduuliin.
Kaavio:
Yllä olevaa virtapiiriä voidaan käyttää leluautoihin, jos muutat koodia asianmukaisesti ja lisäät ohjaussauvan.
Sinun tarvitsee vain virtaa L289N-moduulista, ja moduuli virtaa Arduinosta Vin-päätteen kautta.
Yllä oleva piiri kiertää molempia moottoreita myötäpäivään 3 sekunnin ajan ja pysähtyy 3 sekunnin ajan. Sen jälkeen moottori pyörii vastapäivään 3 sekunnin ajan ja pysähtyy 3 sekunniksi. Tämä osoittaa H-sillan toiminnassa.
Sen jälkeen molemmat moottorit alkavat pyöriä hitaasti vastapäivään, jolloin nopeus kasvaa vähitellen maksimiin ja pienentää nopeutta asteittain nollaan. Tämä osoittaa moottoreiden nopeuden hallinnan PWM: llä.
Ohjelmoida:
//----------------Program developed by R.GIRISH--------------//
const int Enable_A = 9
const int Enable_B = 10
const int inputA1 = 2
const int inputA2 = 3
const int inputB1 = 4
const int inputB2 = 5
void setup()
{
pinMode(Enable_A, OUTPUT)
pinMode(Enable_B, OUTPUT)
pinMode(inputA1, OUTPUT)
pinMode(inputA2, OUTPUT)
pinMode(inputB1, OUTPUT)
pinMode(inputB2, OUTPUT)
}
void loop()
{
//----Enable output A and B------//
digitalWrite(Enable_A, HIGH)
digitalWrite(Enable_B, HIGH)
//----------Run motors-----------//
digitalWrite(inputA1, HIGH)
digitalWrite(inputA2, LOW)
digitalWrite(inputB1 , HIGH)
digitalWrite(inputB2, LOW)
delay(3000)
//-------Disable Motors----------//
digitalWrite(Enable_A, LOW)
digitalWrite(Enable_B, LOW)
delay(3000)
//-------Reverse Motors----------//
digitalWrite(Enable_A, HIGH)
digitalWrite(Enable_B, HIGH)
digitalWrite(inputA1, LOW)
digitalWrite(inputA2, HIGH)
digitalWrite(inputB1 , LOW)
digitalWrite(inputB2, HIGH)
delay(3000)
//-------Disable Motors----------//
digitalWrite(Enable_A, LOW)
digitalWrite(Enable_B, LOW)
delay(3000)
//----------Speed rise----------//
for(int i = 0 i < 256 i++)
{
analogWrite(Enable_A, i)
analogWrite(Enable_B, i)
delay(40)
}
//----------Speed fall----------//
for(int j = 256 j > 0 j--)
{
analogWrite(Enable_A, j)
analogWrite(Enable_B, j)
delay(40)
}
//-------Disable Motors----------//
digitalWrite(Enable_A, LOW)
digitalWrite(Enable_B, LOW)
delay(3000)
}
//----------------Program developed by R.GIRISH--------------//
Kirjoittajan prototyyppi:
Jos sinulla on kysyttävää tästä L298N DC -moottoriohjainprojektista, voit ilmaista kommenttiosassa, saatat saada nopean vastauksen.
Pari: Useita akkulaturipiirejä käyttämällä kondensaattoria Seuraava: Ohjaussauvaohjattu 2,4 GHz: n RC-auto Arduinoa käyttämällä