- Nepieciešamās sastāvdaļas:
- Ķēdes shēma un paskaidrojumi:
- Pašreizējie aprēķini:
- Arduino kontrolētā divvirzienu motora darbība:
Šajā projektā mēs kontrolējam 24v lielas strāvas motora virzienu un ātrumu, izmantojot Arduino un divus relejus. Šai ķēdei nav nepieciešami strāvas slēdži, tikai divas spiedpogas un potenciometrā, lai kontrolētu līdzstrāvas motora virzienu un ātrumu. Viena spiedpoga pagriezīs motoru pulksteņrādītāja virzienā, bet otra - pretēji pulksteņrādītāja virzienam. Motora ātruma kontrolei ir nepieciešams viens n kanālu MOSFET. Relejus izmanto, lai pārslēgtu motora virzienus. Tas atgādina H-Bridge ķēdi.
Nepieciešamās sastāvdaļas:
- Arduino Uno
- Divi 12v releji (var izmantot arī 5v releju)
- Divi tranzistori; BC547
- Divas spiedpogas
- IRF540N
- 10k rezistors
- 24 voltu avots
- 10K potenciometrs
- Trīs diodes 1N4007
- Savienojošie vadi
Ķēdes shēma un paskaidrojumi:
Šī divvirzienu motora vadības projekta shēma ir parādīta attēlā zemāk. Veiciet savienojumus saskaņā ar to:
- Pievienojiet normāli slēgtu abu releju kontaktu ar pozitīvu akumulatora spaili.
- Savienojiet normāli atvērtu abu releju spaili ar MOSFET iztukšošanas spaili.
- Pievienojiet MOSFET avotu negatīvajai akumulatora spailei un Arduino UNO zemējuma tapai.
- Vārtu termināls uz Arduino PWM 6. kontaktu.
- Pievienojiet 10k rezistoru no vārtiem uz avotu un 1N4007 diodi no avota līdz kanalizācijai.
- Pievienojiet motoru starp releju vidējo spaili.
- No diviem atlikušajiem spailēm viens iet uz Arduino Uno Vin tapu un otrs uz tranzistora kolektora spaili (katram relejam).
- Savienojiet abu tranzistoru izstarotāja spaili ar Arduino GND tapu.
- Arduino digitālā tapa 2 un 3, katra no tām sērijā ar spiedpogu, nonāk tranzistoru pamatnē.
- Savienojiet diode pāri relejam tieši tā, kā parādīts attēlā.
- Savienojiet potenciometra gala spaili ar attiecīgi Arduino 5v un Gnd tapām. Un tīrītāja spaili līdz A0 tapai.
- ** ja jums ir divas atsevišķas 12 V baterijas, pievienojiet viena akumulatora pozitīvo spaili citas akumulatora negatīvajai spailei un izmantojiet atlikušās divas spailes kā pozitīvas un negatīvas.
Transistoru mērķis:
Arduino digitālās tapas nevar piegādāt strāvas daudzumu, kas nepieciešams, lai ieslēgtu parastu 5v releju. Turklāt šajā projektā mēs izmantojam 12v releju. Arduino Vin pin nevar viegli piegādāt tik lielu strāvu abiem relejiem. Tādējādi tranzistorus izmanto, lai vadītu strāvu no Arduino Vin tapas uz releju, kuru kontrolē, izmantojot spiedpogu, kas savienota no digitālās tapas līdz tranzistora bāzes spailei.
Arduino mērķis:
- Lai nodrošinātu strāvas daudzumu, kas nepieciešams releja ieslēgšanai.
- Lai ieslēgtu tranzistoru.
- Lai kontrolētu līdzstrāvas motoru ātrumu ar potenciometru, izmantojot programmēšanu. Pārbaudiet visu Arduino kodu beigās.
MOSFET mērķis:
MOSFET ir nepieciešams, lai kontrolētu motora ātrumu. MOSFET tiek ieslēgts un izslēgts pie augstas frekvences sprieguma, un, tā kā motors ir savienots virknē ar MOSFET iztukšošanu, sprieguma PWM vērtība nosaka motora ātrumu.
Pašreizējie aprēķini:
Releja spoles pretestību mēra, izmantojot multimetru, kas izrādās = 400 omi
Arduino vin tapa dod = 12v
Tātad strāvai jāieslēdz relejs = 12/400 ampēri = 30 mA
Ja abiem relejiem ir strāva, strāva = 30 * 2 = 60 mA
** Arduino vin pin var piegādāt maksimālo strāvu = 200mA.
Tādējādi Arduino nav aktuālas problēmas.
Arduino kontrolētā divvirzienu motora darbība:
Šīs divvirzienu motora vadības ķēdes darbība ir vienkārša. Abas Arduino tapas (2, 3) vienmēr būs augstas.
Ja netiek nospiesta neviena poga:
Šajā gadījumā uz tranzistora pamatni neplūst strāva, tāpēc tranzistors paliek izslēgts (darbojas kā atvērts slēdzis), kura dēļ strāva neplūst uz releja spoli no Arduino Vin tapas.
Nospiežot vienu spiedpogu:
Šajā gadījumā caur strāvas spiedienu nospiežot pogu, kas to ieslēdz, daļa strāvas plūst uz tranzistora pamatni. Tagad strāva no Vin tapa caur releju spoli plūst caur šo tranzistoru, kas ieslēdz šo releju (A RELEJS) un šī releja slēdzis tiek iemests NO pozīcijā. Kamēr cita releja (RELEJS B) joprojām atrodas NC pozīcijā. Tātad strāva plūst no akumulatora pozitīvās spailes uz negatīvo spaili caur motoru, ti, strāva plūst no releja A uz releju B. Tas izraisa motora rotāciju pulksteņrādītāja virzienā.
Nospiežot citu spiedpogu:
Šoreiz ieslēdzas vēl viena stafete. Tagad strāva viegli plūst uz releja spoli no Vin tapas caur tranzistoru, kas ieslēdz šo releju (RELEJS B), un šī releja slēdzis tiek iemests NO pozīcijā. Kamēr cits relejs (A RELEJS) paliek NC pozīcijā. Tātad strāva no akumulatora pozitīvās spailes uz akumulatora negatīvo spaili caur motoru plūst. Bet šoreiz strāva plūst no releja B uz releju A. Tas izraisa motora rotāciju pretēji pulksteņrādītāja kustības virzienam
Nospiežot abas spiedpogas:
Šajā gadījumā strāva plūst uz abu tranzistoru pamatni, kuru dēļ ieslēdzas abi tranzistori (darbojas kā slēgts slēdzis). Un tādējādi abas stafetes tagad NAV pozīcijā. Tātad strāva neplūst no akumulatora pozitīvās spailes uz negatīvo spaili caur motoru, un tādējādi tā negriežas.
Līdzstrāvas motora ātruma kontrolēšana:
MOSFET vārti ir savienoti ar Arduino UNO PWM 6. kontaktu. Mosfet tiek ieslēgts un izslēgts ar augstu PWM frekvences spriegumu, un, tā kā motors ir sērijveidā savienots ar mosfet noteci, PWM sprieguma vērtība nosaka motora ātrumu. Tagad spriegums starp potenciometra tīrītāja spaili un Gnd nosaka PWM spriegumu tapā Nr. 6 un, kad logu tīrītāja spaile tiek pagriezta, spriegums analogajā tapā A0 mainās, izraisot izmaiņas motora ātrumā.
Šīs Arduino bāzes divvirzienu motora ātruma un virziena vadības pilnīga darbība ir parādīta zemāk esošajā video ar Arduino kodu.