Ipinaliwanag ang L298N DC Motor Driver Module

Subukan Ang Aming Instrumento Para Sa Pagtanggal Ng Mga Problema





Sa post na ito malalaman natin ang tungkol sa L298N dual H-bridge DC motor driver module na maaaring magamit upang magmaneho ng brushing DC motor at stepper motors na may mga microcontroller at IC.

Pangkalahatang-ideya

Ang mga modular circuit board ay pinakamahusay na tagapagligtas ng oras para sa mga taga-disenyo ng electronics na binabawasan din ang mga error sa prototyping. Karamihan sa mga ito ay ginugusto ng mga programmer na nagsusulat ng code para sa mga microcontroller na ginugugol ang kanilang karamihan ng oras sa pamamagitan ng pagta-type ng mga code sa harap ng computer at may mas kaunting oras para sa panghinang ng mga discrete electronic na bahagi.



Iyon ang dahilan kung bakit makakahanap kami ng mga tonelada at tonelada ng iba't ibang mga modular circuit na ginawa para lamang sa mga board ng Arduino, madali itong mai-interface at masulit ang hindi bababa sa mga error sa hardware habang dinidisenyo ang aming prototype.

Paglalarawan ng module na L298N:

Paglalarawan ng module na L298N:



Ang module ay binuo sa paligid ng IC L298N ito ay karaniwang magagamit sa mga website ng E-commerce.

Gumagamit kami Mga driver ng DC motor dahil ang mga IC at microcontroller ay hindi kayang maghatid ng kasalukuyang hindi hihigit sa 100 milliamp sa pangkalahatan. Ang mga microcontroller ay matalino ngunit hindi malakas ang modyul na ito ay magdaragdag ng ilang mga kalamnan sa Arduino, ICs at iba pang mga microcontroller upang humimok ng mga de-kuryenteng DC motor.

Maaari nitong makontrol ang 2 DC motors nang sabay-sabay hanggang sa 2 amps bawat isa o isang stepper motor. Kaya natin kontrolin ang bilis gamit ang PWM at pati na rin ang paikot na direksyon ng mga motor.

Perpekto para sa modyul na ito pagbuo ng mga robot at mga proyekto sa paglipat ng lupa tulad ng mga laruang kotse.

Tingnan natin ang mga teknikal na detalye ng module na L298N.

mga detalyadong teknikal ng L298N module.

Paglalarawan ng pin:

· Sa kaliwang bahagi ay mayroong OUT1 at OUT2 port, na para sa pagkonekta sa DC motor. Katulad nito, OUT3 at OUT4 para sa isa pang DC motor.

· Ang ENA at ENB ay pinapagana ang mga pin, sa pamamagitan ng pagkonekta sa ENA sa mataas o + 5V pinapagana nito ang port na OUT1 at OUT2. Kung ikinonekta mo ang ENA pin sa mababa o ground, hindi pinagana nito ang OUT1 at OUT2. Katulad nito, para sa ENB at OUT3 at OUT4.

· IN1 hanggang IN4 ang mga input pin na konektado sa Arduino. Kung mai-input mo ang IN1 + Ve at IN2 –Ve mula sa microcontroller o manu-mano, ang OUT1 ay lumiliko nang mataas at ang OUT2 ay bumababa, sa gayon maaari naming magmaneho ng motor.

· Kung nag-input ka ng mataas sa IN3, lumalabas na mataas ang OUT4 at kung nag-input ka ng IN4 mababa ang OUT3 ay bumababa, ngayon maaari na kaming magmaneho ng isa pang motor.

· Kung nais mong baligtarin ang paikot na direksyon ng motor baligtarin lamang ang IN1 at IN2 polarity, katulad para sa IN3 at IN4.

· Sa pamamagitan ng paglalapat ng PWM signal sa ENA at ENB maaari mong makontrol ang bilis ng mga motor sa dalawang magkakaibang output port.

· Ang board ay maaaring tanggapin mula 7 hanggang 12V nang nominally. Maaari kang maglagay ng lakas sa + 12V terminal at ground sa 0V.

· Ang + 5V terminal ay OUTPUT na maaaring magamit upang mapagana ang Arduino o anumang iba pang module kung kinakailangan.

Mga jumper:

Mayroong tatlong mga pin ng jumper maaari kang mag-scroll pataas makita ang nakalarawan na imahe.

Ang lahat ng mga jumper ay konektado sa paunang alisin o panatilihin ang jumper depende sa iyong pangangailangan.

Jumper 1 (tingnan ang nakalarawan na imahe):

· Kung ikaw ay motor na nangangailangan ng higit sa 12V supply kailangan mong idiskonekta ang jumper 1 at ilapat ang nais na boltahe (maximum 35V) sa 12v terminal. Magdala ka pa 5V na supply at pag-input sa + 5V terminal. Oo, kailangan mong maglagay ng 5V kung kailangan mong mag-apply ng higit sa 12V (kapag ang jumper 1 ay tinanggal).

· Ang 5V input ay para sa wastong paggana ng IC, dahil ang pag-alis ng jumper ay hindi magpapagana ng built-in na 5v regulator at protektahan mula sa mas mataas na boltahe ng pag-input mula sa 12v terminal.

· Ang terminal na + 5V ay gumaganap bilang output kung ang iyong supply ay nasa pagitan ng 7 hanggang 12V at kumikilos bilang pag-apply kung mag-apply ka ng higit sa 12V at ang jumper ay tinanggal.

· Karamihan sa mga proyekto ay kailangan lamang ng boltahe ng motor sa ibaba 12V kaya, panatilihin ang jumper na ito at gamitin ang + 5V terminal bilang output.

Jumper 2 at Jumper 3 (tingnan ang nakalarawan na imahe):

· Kung aalisin mo ang dalawang jumper na ito kailangan mong i-input ang paganahin at huwag paganahin ang signal mula sa microcontroller, gusto ng karamihan sa mga gumagamit na alisin ang dalawang jumper at ilapat ang signal mula sa microcontroller.

· Kung panatilihin mo ang dalawang jumper ang OUT1 hanggang OUT4 ay laging pinapagana. Tandaan ang ENA jumper para sa OUT1 at OUT2. ENB jumper para sa OUT3 at OUT4.

Ngayon tingnan natin ang isang praktikal na circuit, paano tayo mga motor na pang-interface, Arduino at supply sa module ng driver.

Skematika:

diagram ng eskematiko ng L298N module.

Ang circuit sa itaas ay maaaring magamit para sa mga laruang kotse, kung binago mo nang naaangkop ang code at nagdagdag ng isang joystick.

Kailangan mo lamang i-power ang L289N module at palakasin ng module ang Arduino sa pamamagitan ng Vin terminal.

Ang circuit sa itaas ay paikutin ang parehong mga motor na relo para sa 3 segundo at hihinto sa 3 segundo. Pagkatapos nito ay paikutin ng motor ang anti-clockwise sa loob ng 3 segundo at huminto ng 3 segundo. Ipinapakita nito ang H-tulay sa pagkilos.

Pagkatapos nito kapwa ang motor ay magsisimulang mabagal nang paikut-ikot sa bilis ng pagkuha ng bilis nang paunti-unti hanggang sa maximum at dahan-dahang bawasan ang bilis sa zero. Ipinapakita nito ang kontrol ng bilis ng mga motor ng PWM.

Programa:

//----------------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--------------//

Prototype ng may-akda:

Arduino prototype ng motor driver circuit gamit ang L298N module.

Kung mayroon kang anumang mga katanungan tungkol sa proyekto sa pagmamaneho ng L298N DC motor na ito, huwag mag-atubiling ipahayag sa seksyon ng komento, maaari kang makatanggap ng mabilis na tugon.




Nakaraan: Maramihang Circuit ng Charger ng Baterya gamit ang Dump Capacitor Susunod: Kinokontrol ng Joystick 2.4 GHz RC Car Gamit ang Arduino