L298N: Arduino- ի շարժիչները կառավարելու մոդուլ

l298n

Arduino- ի կամ DIY նախագծերում արտադրողների կողմից օգտագործման համար կան շատ մոդուլներ: Դեպքում L298N- ը շարժիչները կառավարելու մոդուլ է, Նրանց միջոցով դուք կարող եք օգտագործել պարզ կոդեր, որպեսզի ծրագրավորեք մեր Arduino տախտակը և կարողանա կառավարել DC շարժիչները պարզ և վերահսկվող եղանակով: Ընդհանրապես, այս տեսակի մոդուլներն ավելի շատ օգտագործվում են ռոբոտաշինության մեջ կամ շարժիչներ օգտագործող մղիչներում, չնայած այն կարող է օգտագործվել բազմաթիվ ծրագրերի համար:

Մենք արդեն մուտքագրեցինք այն ամենը, ինչ ձեզ հարկավոր է ESP մոդուլը ՝ ESP8266 չիպով, ՄԵԿ մոդուլ, որը թույլ է տալիս ընդլայնել կարողությունները Arduino տախտակները և այլ նախագծեր, որպեսզի նրանք ունենան WiFi կապ: Այս մոդուլները կարող են օգտագործվել ոչ միայն մեկուսացված, այլ լավն այն է, որ դրանք հնարավոր է համատեղել: Օրինակ, ESP8266- ը կարող է օգտագործվել մեր նախատիպի և L298N- ի համար, որի միջոցով մենք կստանանք կառավարելի շարժիչ ինտերնետի կամ անլարի միջոցով:

L298N- ի և տվյալների թերթերի ներածություն.

l298n պինութ

Չնայած Arduino– ի հետ կարելի է նաև աշխատել stepper շարժիչների հետ, որոնք լավ հայտնի են ռոբոտաշինության մեջ, այս դեպքում սովորաբար ավելի տարածված է օգտագործել հսկիչը կամ շարժիչ DC շարժիչների համար, Դուք կարող եք տեղեկություններ ստանալ L298 չիպի և արտադրողների տվյալների թերթերում գտնվող մոդուլների մասին, ինչպիսիք են STMicroelectronics- ը այս հղումից, Եթե ​​ցանկանում եք տեսնել հատուկ մոդուլի տվյալների թերթիկը, և ոչ միայն չիպը, կարող եք ներբեռնել Handsontec L298N.

Ընդհանուր առմամբ, L298N- ը H- կամրջի տիպի շարժիչ է, որը թույլ է տալիս վերահսկել DC շարժիչների պտտման արագությունն ու ուղղությունը: Այն կարող է օգտագործվել նաև stepper շարժիչներով հեշտությամբ ՝ շնորհիվ 2-ի H- կամուրջ որ իրականացնում է: Այսինքն ՝ կամուրջը Հ – ում, ինչը նշանակում է, որ այն կազմավորվում է 4 տրանզիստորի կողմից, որը թույլ կտա հետ շրջել հոսանքի ուղղությունը, որպեսզի շարժիչի ռոտորը կարողանա պտտվել այս կամ այն ​​ուղղությամբ, ինչպես ուզում ենք: Սա առավելություն է վերահսկիչների նկատմամբ, որոնք թույլ են տալիս միայն վերահսկել պտտվող արագությունը (RPM) `վերահսկելով միայն մատակարարման լարման արժեքը:

L298N- ը կարող է աշխատել տարբեր տարբերակների հետ լարման, 3v- ից 35v, և 2 Ա ինտենսիվությամբ: Սա է, որ իսկապես որոշելու է շարժիչի աշխատանքը կամ պտտման արագությունը: Պետք է հաշվի առնել, որ էլեկտրոնիկան, որը սպառում է մոդուլը, սովորաբար սպառում է մոտ 3 վ, ուստի շարժիչը միշտ կստանա 3 վ պակաս այն էլեկտրաէներգիան, որին մենք կերակրում ենք այն: Դա փոքր-ինչ բարձր սպառում է, իրականում այն ​​ունի բարձր էներգիայի տարր, որի համար անհրաժեշտ է ջերմաքաշ, ինչպես տեսնում եք նկարում:

Արագությունը վերահսկելու համար կարող եք ինչ-որ բան հակադարձել այն ամենին, ինչ մենք արեցինք LM35- ի հետ, այս դեպքում `ելքում որոշակի լարում ստանալու և այն աստիճանի վերափոխելու փոխարեն, դա հակառակն է: Մենք վարորդին կերակրում ենք ավելի ցածր կամ բարձր լարումով `ձեռք բերելու համար ավելի արագ կամ դանդաղ շրջադարձ, Բացի այդ, L298N մոդուլը նաև թույլ է տալիս, որ Arduino տախտակն աշխատի 5 վ-ով, ​​քանի դեռ մենք վարորդին սնուցում ենք առնվազն 12 վ լարման հետ:

Ինտեգրում Arduino- ի հետ

l298n- ի շրջանային դիագրամը Arduino- ի հետ

Այնտեղ բազմաթիվ նախագծեր, որոնց հետ դուք կարող եք օգտագործել այս L298N մոդուլը, Փաստորեն, դուք պարզապես կարող եք պատկերացնել այն ամենը, ինչ կարող եք անել դրա հետ և անցնել գործի: Օրինակ, պարզ օրինակ կլինի երկու ուղղակի հոսանքի երկու շարժիչի կառավարումը, ինչպես կարելի է տեսնել նախորդ դիագրամում, որը կազմվել է Ֆրիտցինգի հետ:

L298N- ի հետ աշխատելուց առաջ մենք պետք է հաշվի առնենք, որ մոդուլի կամ Vin- ի մուտքը աջակցում է 3v և 35v լարումների միջև և որ մենք նույնպես պետք է այն միացնենք գետնին կամ GND- ին, ինչը, համապատասխանաբար, կարելի է տեսնել կարմիր և սեւ մալուխների պատկերում: Հոսանքի միացումից հետո հաջորդ բանը `միացնել շարժիչը կամ երկու շարժիչները, որոնք նա ընդունում է միաժամանակ կառավարել: Սա պարզ է, անհրաժեշտ է միայն շարժիչի երկու տերմինալները միացնել միացման ներդիրին, որի վրա յուրաքանչյուր կողմում կա մոդուլը:

Եվ հիմա գալիս է, թերեւս, ամենաբարդը, և դա մոդուլի միացումները կամ միացնելն է պատշաճ կերպով կապվում են Arduino- ի հետ, Հիշեք, որ եթե մոդուլի ցատկողը կամ կարգավորիչի կամուրջը փակ է, այսինքն ՝ միացված վիճակում, մոդուլի լարման կարգավորիչը ակտիվացված է և կա 5 վ ելք, որը կարող եք օգտագործել Arduino տախտակն աշխատեցնելու համար: Մյուս կողմից, եթե ցատկողը հանում եք, ապա ապաակտիվացնում եք կարգավորիչը, և անհրաժեշտ է ինքնուրույն միացնել Arduino- ն: աչք Քանի որ ցատկողը կարող է տեղադրվել միայն մինչև 12 վ լարման, դրանից ավելիի համար դուք պետք է հեռացնեք այն, որպեսզի չվնասեք մոդուլին ...

Դուք կարող եք դա գնահատել յուրաքանչյուր շարժիչի համար կա 3 միացում, IN1- ից IN4 նշվողներն այներն են, որոնք կարգավորում են A և B շարժիչները: Եթե չունեք միացված շարժիչներից մեկը, քանի որ ձեզ միայն մեկն է պետք, ապա ստիպված չեք լինի դրանք բոլորը տեղադրել: Յուրաքանչյուր շարժիչի համար այս միացումների յուրաքանչյուր կողմում թռիչքները ENA և ENB են, այսինքն ՝ A և B շարժիչներն ակտիվացնելու համար, որոնք պետք է լինեն, եթե ուզում ենք, որ երկու շարժիչներն էլ աշխատեն:

դեպի շարժիչ Ա (B- ի դեպքում նույնը կլիներ), մենք պետք է միացված լինենք IN1 և IN2, որոնք վերահսկելու են պտտման ուղղությունը: Եթե ​​IN1- ը ԲԱՐՁՐ է, իսկ IN2- ը ՝ OWԱ inՐ, շարժիչը շրջվում է մի ուղղությամբ, իսկ եթե դրանք OWԱ andՐ և ԲԱՐՁՐ են, ապա այն շրջվում է մյուսում: Պտտման արագությունը վերահսկելու համար դուք պետք է հեռացնեք INA կամ INB թռիչքները և օգտագործեք այն քորոցները, որոնք միացնում են այն Arduino PWM- ին, այնպես որ, եթե դրան 0-ից 255 արժեք տանք, համապատասխանաբար ցածր կամ ավելի բարձր արագություն ստանանք:

Վերաբերյալ ծրագրավորումը հեշտ է նաև Arduino IDE- ում: Օրինակ, ծածկագիրը կլինի.

<pre>// Motor A
int ENA = 10;
int IN1 = 9;
int IN2 = 8;

// Motor B
int ENB = 5;
int IN3 = 7;
int IN4 = 6;

void setup ()
{
 // Declaramos todos los pines como salidas
 pinMode (ENA, OUTPUT);
 pinMode (ENB, OUTPUT);
 pinMode (IN1, OUTPUT);
 pinMode (IN2, OUTPUT);
 pinMode (IN3, OUTPUT);
 pinMode (IN4, OUTPUT);
}
//Mover los motores a pleno rendimiento (255), si quieres bajar la velocidad puedes reducir el valor hasta la mínima que son 0 (parados)</pre>
<pre>//Para mover los motores en sentido de giro contrario, cambia IN1 a LOW e IN2 a HIGH

void Adelante ()
{
 //Direccion motor A
 digitalWrite (IN1, HIGH);
 digitalWrite (IN2, LOW);
 analogWrite (ENA, 255); //Velocidad motor A
 //Direccion motor B
 digitalWrite (IN3, HIGH);
 digitalWrite (IN4, LOW);
 analogWrite (ENB, 255); //Velocidad motor B
}</pre>

Հոդվածի բովանդակությունը հավատարիմ է մեր սկզբունքներին խմբագրական էթիկա, Սխալի մասին հաղորդելու համար կտտացրեք այստեղ.

Եղիր առաջին մեկնաբանողը

Թողեք ձեր մեկնաբանությունը

Ձեր էլ. Փոստի հասցեն չի հրապարակվելու: Պահանջվող դաշտերը նշված են *

*

*

  1. Տվյալների համար պատասխանատու ՝ Միգել Անխել Գատոն
  2. Տվյալների նպատակը. Վերահսկել SPAM, մեկնաբանությունների կառավարում:
  3. Օրինականություն. Ձեր համաձայնությունը
  4. Տվյալների հաղորդագրություն. Տվյալները չեն փոխանցվի երրորդ անձանց, բացառությամբ իրավական պարտավորության:
  5. Տվյալների պահպանում. Տվյալների շտեմարան, որը հյուրընկալվում է Occentus Networks (EU) - ում
  6. Իրավունքներ. Timeանկացած պահի կարող եք սահմանափակել, վերականգնել և ջնջել ձեր տեղեկատվությունը: