Turinys:

Važiavimas mažais varikliais naudojant TB6612FNG: 8 žingsniai
Važiavimas mažais varikliais naudojant TB6612FNG: 8 žingsniai

Video: Važiavimas mažais varikliais naudojant TB6612FNG: 8 žingsniai

Video: Važiavimas mažais varikliais naudojant TB6612FNG: 8 žingsniai
Video: Greitai nuplaukite stygų žoliapjovę nenaudodami jokių įrankių! Potvynio variklis neįsijungs 2024, Lapkritis
Anonim
Vairavimas mažais varikliais naudojant TB6612FNG
Vairavimas mažais varikliais naudojant TB6612FNG

„TB6612FNG“yra dviejų variklių tvarkyklės IC iš „Toshiba“. Tam yra daugybė pertraukimo plokščių ir tai yra vienas iš populiariausių pasirinkimų važiuoti mažais varikliais.

Yra daug internetinių išteklių, kaip pradėti dirbti su TB6612FNG, bet aš vis tiek nusprendžiau tai parašyti, kad geriau surinkčiau tai, ką radau.

Aš sutelksiu dėmesį į valdymo logiką ir taip pat išsamiai paaiškinsiu „Sparkfun TB6612FNG“variklio tvarkyklės biblioteką šioje instrukcijoje.

1 žingsnis: reikalingos dalys

Štai ką mes šiandien naudosime:

1) Mikro metalo varikliai

2) TB6612FNG variklio tvarkyklė

3) „Arduino“ir USB kabelis

4) Variklių maitinimo šaltinis

5) Duonos lenta

6) jungiamieji laidai

2 veiksmas: „TB6612FNG Breakout Board“

„TB6612FNG Breakout Board“
„TB6612FNG Breakout Board“

Kaip jau minėjau anksčiau, „TB6612FNG“yra daug skirtingų gamintojų pertraukimo plokščių. Visuose juose yra daugmaž tie patys komponentai ir panašus kištukas.

Kondensatoriai yra prilituoti prie plokštės, kad apsaugotų nuo variklių triukšmo, todėl jums nereikės lituoti tų keraminių kondensatorių prie variklių.

IC taip pat yra su vidiniais diodais, apsaugančiais nuo galinio EMF nuo variklių. Tačiau papildomų saugumo priemonių taikymas niekam nepakenkė. Aš jų nepridėjau, nes mano varikliai nėra labai dideli ir man trūksta diodų: |

3 žingsnis: prisegti

Pin Outs
Pin Outs

TB6612FNG pertraukimo plokštė turi labai patogų kištuką. Visi variklio išėjimai, įėjimai ir maitinimo jungtys yra gerai sugrupuoti, kad būtų patogiau naudotis.

Aš iliustravau kištukus ir kaip juos prijungti, tikiuosi, kad tai pravers prijungus visus tuos laidus:)

4 žingsnis: schemos

Schemos
Schemos
Schemos
Schemos

Aš gana naujokas naudodamas „Fritzing“. Manau, kad „Fritzing“grandinės schemas gana sunku suprasti, tačiau „Instructables“yra patogus rodinys. Nesivaržykite užduoti bet kokių klausimų, jei kuri nors laidų jungtis atrodo paini.

5 žingsnis: prijunkite

Sujungimas
Sujungimas

Sujunkite viską pagal schemas. Yra daug laidų, būtinai dar kartą patikrinkite po kiekvieno prijungimo.

Variklio tvarkyklės įvestims naudojau šiuos „Arduino“kaiščius:

Variklio vairuotojas -> „Arduino“PIN kodas

1) PWMA -> 5

2) INA1 -> 2

3) INA2 -> 4

4) PWMB -> 6

5) INB1 -> 7

6) INB2 -> 8

Dalykai, kurie gali pakrypti šiame žingsnyje: 1) Nejunkite poliškumo, kai prijungsite Vm ir GND iš maitinimo šaltinio. Galite kepti savo variklio vairuotoją.

2) Būtinai prijunkite PWMA ir PWMB prie arduino PWM kaiščių.

3) Nepamirškite prijungti „Arduino GND“ir „GND“iš variklio tvarkyklės, jei naudojate skirtingą energijos šaltinį.

6 veiksmas: bibliotekos atsisiuntimas ir įdiegimas

Atsisiųskite biblioteką iš „Sparkfun“„GitHub“puslapio.

Atsisiuntę ZIP failą, atidarykite „Arduino IDE“.

Iš Eskizas> Įtraukti biblioteką> Pridėti. Zip biblioteką pridėkite atsisiųstą biblioteką.

Sėkmingai įdiegus, jis turėtų būti rodomas Failas> Pavyzdžiai, kaip „SparkFun TB6612FNG Motor Library“

Jei kyla sunkumų atsisiunčiant ir įdiegiant „Arduino“biblioteką, peržiūrėkite šios instrukcijos 5 veiksmą.

7 veiksmas: pavyzdinio kodo vykdymas

Dabar, kai turime savo biblioteką, galime įkelti pavyzdinį kodą, kad jį išbandytume.

1) Atidarykite „MotorTestRun“pavyzdį iš „Sparkfun TB6612FNG Motor Driver Library“, esančio jūsų bibliotekose.

Pastaba: jei nenaudojate tų pačių kaiščių numerių, kaip nurodyta 5 veiksme, būtinai pakeiskite kaiščių apibrėžimus pagal savo sąranką.

2) Iš savo valdybos pasirinkite savo lentą

3) Įkelkite savo kodą ir varikliai turėtų pradėti judėti

Kai įkelsite, varikliai turėtų pradėti judėti. Jei jų nėra, dar kartą patikrinkite laidus.

8 žingsnis: paaiškinta biblioteka

Dabar paaiškinkite, kaip naudoti biblioteką savo kodui.

Pirmiausia pradėkite importuoti biblioteką ir inicijuokite kaiščius „arduino“

#įtraukti

#define AIN1 2 #define AIN2 4 #define PWMA 5 #define BIN1 7 #define BIN2 8 #define PWMB 6 #define STBY 9

Norėdami inicijuoti variklio objektus, turite nustatyti kiekvieno variklio poslinkius. Įsivaizduokite, jei atliekate savo variklio komandą į priekį, o jis sukasi atvirkščiai. Galite rankiniu būdu perjungti laidą arba tiesiog pakeisti poslinkį iš čia. Puikus mažas QoL įsilaužimas, kurį pridėjo „SparkFun“. Šių poslinkių reikšmės yra 1 arba -1.

Tada turite inicijuoti kiekvieną variklį šiais parametrais;

Variklis = variklis (1 kaištis, 2 kaištis, PWM kaištis, poslinkis, budėjimo kaištis)

const int poslinkisA = 1;

const int poslinkisB = 1; Variklio variklis1 = variklis (AIN1, AIN2, PWMA, poslinkisA, STBY);

Tai atlikę, bibliotekos inicijavimas baigtas. Nebereikia atlikti jokių veiksmų (setup) (), mes tiesiog vykdome kodą ciklo () funkcijoje.

Variklio metodas turi šias funkcijas. Švelniai apžiūrinėkite juos visus.

1). Vairuoti (vertė, laikas)

Motor_name = jūsų variklio objekto pavadinimasvalue = 255 to -255; neigiamos vertės privers variklį judėti atvirkštiniu laiku = laikas milisekundėmis

2). Stabdys ()

Stabdymo funkcija nereikalauja jokių argumentų, stabdo variklius.

3) stabdys (, <motor_name2)

Stabdžių funkcija kaip argumentus priima variklio objektų pavadinimus. Sustabdo variklius įjungtą funkciją.

4) pirmyn (,, laikas) pirmyn (,, greitis, laikas)

Funkcija priima du variklio objekto pavadinimus, pasirinktinai PWM greitį ir laiką milisekundėmis ir praleidžia variklį pirmyn. Jei greičio vertė yra neigiama, variklis judės atgal. Numatytasis greitis yra 255.

5) atgal (,, laikas) atgal (,, greitis, laikas)

Funkcija priima du variklio objekto pavadinimus, pasirinktinai PWM greitį ir laiką milisekundėmis ir praleidžia variklį pirmyn. Jei greičio reikšmė yra neigiama, variklis judės į priekį. Numatytasis greitis yra 255.

6) kairė (,, greitis) dešinė (,, greitis)

Funkcija priima du variklio objektų pavadinimus ir greitį. Variklio objektų tvarka, perduota kaip parametrai, yra svarbi. Norėdami valdyti atskirus variklius, naudokite.drive ().

Rekomenduojamas: