Sadržaj:

Vožnja koračnog motora bez mikrokontrolera .: 7 koraka
Vožnja koračnog motora bez mikrokontrolera .: 7 koraka

Video: Vožnja koračnog motora bez mikrokontrolera .: 7 koraka

Video: Vožnja koračnog motora bez mikrokontrolera .: 7 koraka
Video: Octopus Max EZ v1.0 - EZ2130 2024, Novembar
Anonim
Image
Image

U ovom Instructable-u vozit ću motor sa 28 koraka BYJ-48, sa UNL2003 darlington pločom, ponekad nazvanom x113647, bez mikro kontrolera.

Imat će start/stop, naprijed/nazad i kontrolu brzine.

Motor je jednopolarni stepenasti motor sa 2048 koraka po okretu u režimu punog koraka. Tehnički list za motor se nalazi na

Dva uređaja mogu se kupiti zajedno od nekoliko prodavača. Ja sam svoje nabavio sa kjell.com

Potražite ga ili proguglajte da pronađete prodavača u vašoj blizini.

Prvo ću proći kroz neke korake i dijelove potrebne za njegovo pokretanje, a zatim ću dodati neke korake i dijelove za još veću kontrolu.

Trebate biti upozoreni da su dijelovi koje koristim oni koji se slučajno nalaze u mojoj škrinji s blagom, a ne nužno dijelovi koji najbolje odgovaraju toj namjeni.

Takođe, treba vas upozoriti da je ovo moj prvi Instructable i da sam prilično nov u elektronici.

Molimo vas da dodate komentare ako mislite da sam učinio nešto što nisam trebao, ili ako imate prijedloge za poboljšanja ili prijedloge za bolje prilagođene dijelove.

Korak 1: Lista dijelova

Glavni delovi
Glavni delovi

Dijelovi koji se koriste za ovaj projekt su

  • Breadboard
  • Koračni motor 28byj-48
  • Darlington tranzistorska matrica ULN2003 ploča (x113647)
  • 74HC595 registar pomaka
  • 74HC393 binarni brojač talasa
  • DS1809-100 Dallastat digitalni potenciometar
  • 74HC241 oktalni pufer
  • 3 × taktilna dugmad
  • 3 × 10kΩ otpornici
  • 2 × 0,1µF keramički kondenzatori
  • 1 × 0,01 µF keramički kondenzator
  • Priključne žice
  • 5V napajanje

Korak 2: Glavni dijelovi

Glavni delovi
Glavni delovi

Registar izmjena 74HC595

Motor se pomiče uzastopnim davanjem četiri ulazna pina ploče UNL2003 u ovom slijedu:

1100-0110-0011-1001

Ovo će pokretati motor u takozvanom full step modu. Uzorak 1100 se više puta pomera udesno. To sugerira promjenjivi registar. Način na koji radi registar pomaka, u svakom ciklusu takta, bitovi u registru se pomiču za jedno mjesto udesno, zamjenjujući krajnji lijevi bit sa vrijednošću ulaznog pina u tom trenutku. Stoga bi ga trebalo napajati s dva ciklusa takta od 1, a zatim s dva ciklusa takta od 0 kako bi se generirao obrazac za ronjenje motora.

Za generiranje signala takta potreban je oscilator koji generira stalan niz impulsa, po mogućnosti čisti kvadratni val. To će biti osnova za premještanje signala prema motoru.

Za generiranje "dva ciklusa od jednog, a zatim dva ciklusa od 0", koriste se japanke.

Imam registar izmjena 74HC595. Ovo je vrlo popularan čip, koji je opisan u brojnim video zapisima Instructables i Youtube.

Tehnički list se može naći na

Lijep Instructable je 74HC595-Shift-Register-Demistified by bweaver6, Registar pomaka 74HC595 radi tako da se pri svakom ciklusu takta podaci u njegovom 8 -bitnom registru pomiču udesno i mijenjaju vrijednost ulaznog pina na krajnjem lijevom položaju. Dakle, trebao bi se napajati s dva ciklusa takta od 1, a zatim s dva ciklusa takta od 0.

Podaci se pomiču na rastućoj ivici takta. Henc flip-flop bi trebao prebacivati na padajućoj ivici sata, tako da će 74HC595 imati stabilan unos podataka na rastućoj ivici sata.

74HC595 in može se spojiti na ovaj način:

Pin 8 (GND) -> GND

Pin 16 (VCC) -> 5V Pin 14 (SER) -> Podaci u Pin 12 (RCLK) -> Ulaz sata 11 Pin (SRCLK) -> Ulaz sata 13 (OE) -> GND Pin 10 (SRCRL) -> 5V pinovi 15 i 1-3 izlazit će uzorak za pogon motora.

Povezivanje RCLK -a i SRCLK -a osigurava da je registar podataka čipa uvijek sinhroniziran s izlaznim registrom. Postavljanje Pin 13 na masu čini sadržaj izlaznog registra odmah vidljivim izlaznim pinovima (Q0 - Q7).

Tajmer 555

Za generiranje takta impulsa može se koristiti 555 mjerač vremena. Ovo je također vrlo popularan čip, pa se o njemu još više govori i raspravlja nego o registru pomaka. Wikipedia ima lijep članak na

Tehnički list je ovdje:

Ovaj čip može, između ostalog, generirati impuls takta kvadratnog vala. Vanjski otpornici i kondenzatori koriste se za kontrolu frekvencije i radnog ciklusa (na dio).

Kada je postavljen da više puta generira impulse, kaže se da je čip 555 u nestabilnom načinu rada. To se postiže ožičenjem kao na gornjoj slici. (slika jjbeard [Javno vlasništvo], putem Wikimedia Commons):

Pin 1 -> GND

Pin 2 -> R1 (10kΩ) -> Pin 7 Pin 2 -> Pin 6 Pin 3 je izlaz Pin 4 (resetovanje) -> 5V Pin 5 -> 0,01µF -> GND Pin 6 -> 0,1µF -> GND Pin 7 -> R2 (10kΩ) -> 5V Pin 8 -> 5V

Izlaz Pin 3 će biti spojen na ulazne taktove sata (Pin 11 i Pin 12) registra pomaka 74HC595.

Učestalost izlaznog signala (a time i brzina koračnog motora) određena je vrijednostima otpornika R1 i R2 i vrijednošću kondenzatora C.

Vrijeme ciklusa T bit će ln (2) C (R1 + 2 R2) ili približno 0,7 C (R1 + 2 R2). Frekvencija je 1/T.

Radni ciklus, dio vremena ciklusa u kojem je signal visok, je (R1 + R2) / (R1 + 2R2). Radni ciklus nije jako važan za ovaj projekt.

Koristim 10 kΩ, za R1 i R2, i C = 0,1 μF.

Ovo daje frekvenciju od oko 480Hz i blizu je maksimalne frekvencije koju sam otkrio da koračni motor može podnijeti bez zastoja.

Za generiranje 1100 pomaknutog, ponavljanog uzorka iz 74HC595, pin 14 (SER) treba držati visoko dva ciklusa takta, a zatim nisko za dva ciklusa takta više puta. Odnosno, pin bi trebao oscilirati s pola frekvencije takta.

Dvostruki binarni brojač talasa 74HC393

Broj 74HC393 se računa u binarnom obliku, a to također znači da se može koristiti za podjelu frekvencija impulsa po moćima dva, Njegov podatkovni list je ovdje:

74HC393 je dvostruki, ima po jedan 4 -bitni brojač sa svake strane.

Na padajućoj ivici takta, prvi izlazni pin se uključuje i isključuje. Dakle, izlazni pin jedan će oscilirati s pola frekvencije ulaznog takta. Na donjoj ivici izlaznog pina jedan, izlazni pin dva se uključuje i isključuje. I tako dalje za sva četiri izlazna pina. Kad god se pin n isključi, pin n+1 se prebacuje.

Pin n+1 se menja upola manje često kao pin n. Ovo je binarno brojanje. Brojač može da broji do 15 (sva četiri bita 1) pre nego što ponovo počne na nuli. Ako je posljednji izlazni pin brojača 1 spojen kao sat na brojač 2, može se računati na 255 (8 bita).

Za stvaranje impulsa s pola frekvencije ulaznog takta potreban je samo izlazni pin 1. Odnosno, računajući samo od nule do jedan.

Dakle, ako se odbrojavanje vrši pomoću takta impulsa sa 555, pin na brojaču 74HC393 koji predstavlja bit 2, oscilirat će s pola frekvencije takta. Stoga se ovo može spojiti na SER pin u registru pomaka 74HC595, kako bi se generirao željeni uzorak.

Ožičenje binarnog brojača 74HC393 treba biti:

Pin 1 (1CLK) -> 74HC595 Pin 11, 12 i 555 Pin 3

Pin 2 (1CLR) -> GND Pin 4 (1QB) -> 74HC595 Pin 14 Pin 7 (GND) -> GND Pin 14 (VCC) -> 5V Pin 13 (2CLK) -> GND (ne koristi se) Pin 12 (2CLR) -> 5V (ne koristi se)

Korak 3: Pokrenite ga

Neka to radi
Neka to radi
Neka to radi
Neka to radi

Sada možemo pokrenuti motor ako su pinovi 0-3 74HC595 spojeni na pinove 1-4 ploče ULN2003.

Za sada, zamijenite kondenzator od 0,1 µF na Pin 6 na mjeraču vremena 555 sa 10 µF. Ovo će produžiti ciklus sata stotinu puta duže i moći ćete vidjeti šta se dešava.

Za to se mogu koristiti LED diode na pločama ULN2003. Isključite motor s ploče ULN2003. Spojite pinove 1 do 4 ploče na izlaz QA-QD (pinovi 7, 9, 10 i 11) 74HC595. Spojite - i + ploče ULN2003 na masu i 5V. Ako je napajanje uključeno, trebali biste vidjeti željeni uzorak na LED -ima.

Ako želite vidjeti što se događa u binarnom brojaču 74HC393, umjesto njega se spojite na pinove 3-6 tog broja.

Ako vam se čini da je uzorak ispravan, isključite napajanje, ponovo zamijenite kondenzator sa 0,1 µF, spojite ulazne pinove 1 - 4 ploče ULN2003 na izlazne pinove QA - QD 74HC595 i ponovo uključite motor.

S uključenim napajanjem, motor bi sada trebao raditi.

Korak 4: Kontrola brzine

Kontrola brzine
Kontrola brzine

Brzinom koračnog motora upravlja se frekvencijom izlaza 555 mjerača vremena. Ovo opet ovisi o vrijednostima otpornika R1 i R2 i kondenzatora C1 spojenog na njega. Spajanjem 100kΩ potenciometra u seriju sa R2, frekvencija može biti između 480Hz i 63Hz. Koraci pr. drugi dio motora, bit će polovina frekvencije tajmera 555.

Koristio sam digitalni potenciometar DS1809-100, koji je napravljen za upotrebu tipki. Pritiskanjem dugmadi koji spajaju pin 2 (UC) i Pin 7 (DC) na 5V dolazi do povećanja/smanjenja otpora između priključaka RH (Pin 1) ili RL (Pin 4) i Brisača Pin 6 (RW). Držanjem dugmeta duže od jedne sekunde, dugme se automatski ponavlja.

Tehnički list možete pronaći ovdje:

Ožičenje je ovako:

Pin 1 (RH) nekorišten

Pin 2 (UC) -> taktilno dugme 1 Pin 3 (STR) -> GND Pin 4 (RL) -> 555 Pin 2 Pin 5 -> GND Pin 6 (RW) -> 10kΩ -> 555 pin 7 Pin 7 (DC) -> taktilno dugme 2 Pin 8 -> 5V

Ožičenje za taktilno dugme 1:

Pin 1/2 -> DS1809 Pin 2

Pin 3/4 -> 5V

Ožičenje za taktilno dugme 2:

Pin 1/2 -> DS1809 Pin 7

Pin 3/4 -> 5V

Sada se brzina može regulirati.

Korak 5: Start / Stop

Start / Stop
Start / Stop

Za pokretanje i zaustavljanje koračnog motora može se upotrijebiti pin 4 (pin za resetiranje) tajmera 555. Ako se ovo povuče nisko, neće biti izlaznih impulsa s Pin 3.

Taktilno dugme će se koristiti za prebacivanje početka i zaustavljanja. Pritiskom na dugme jednom treba pokrenuti motor, pa ponovo pritisnuti, zaustaviti ga. Da biste dobili ovo ponašanje, potreban je japanka. Ali 74HC393 koji je već tamo, takođe se može koristiti. 74HC393 ima dva dijela, a samo se jedna polovica koristi kao razdjelnik frekvencije za taktni impuls.

Budući da je binarni brojač zapravo samo skup preklapanja japanki u nizu, može se koristiti prvi japanka drugog dijela. Spajanjem taktilnog dugmeta tako da je Pin 13 (2CLK) nizak kada se dugme pritisne, a visok ako nije, pin 12 će se prebacivati na svaki donji nivo. Spajanjem Pin 12 na Pin 4 na 555, počet će i zaustaviti njegov izlaz, a time i motor.

Taktilni gumbi su pomalo zeznuti jer su mehanički. Oni mogu 'odskočiti', odnosno mogu poslati više signala pri svakom pritisku. Spajanje kondenzatora od 0,1 µF preko gumba pomaže u izbjegavanju ovoga.

Tako se dodaje taktilno dugme (dugme 3, a veza sa Pin 4 na 555 se mijenja.

Ožičenje dugmeta:

Pin 1/2 -> 10kΩ -> 5V

Pin 1/2 -> 0,1µF -> Pin Pin 3/4 -> 74HC393 Pin 13 (2CLK)

Na 555 su napravljene sljedeće promjene:

Pin 4 (resetovanje) -> 74HC393 Pin 11 (2QA)

Dugme 3 bi sada trebalo da radi kao start/stop prekidač.

Imajte na umu da će motor zaustavljen na ovaj način i dalje trošiti energiju.

Korak 6: Kontrola smjera

Kontrola smjera
Kontrola smjera

Za kontrolu smjera motora potrebno je još jedno dugme, a zatim još jedan japanka. Međutim, ja ću varati, koristeći sljedeći japanku 74HC393, nakon on/off flip-flopa i tipke za uključivanje/isključivanje.

Kada pin za pravac (Pin 2QA) padne, prebacuje se sljedeći pin (Pin 2QB). Stoga će višekratno pritiskanje tipke rezultirati OFF - ON FORWARD - OFF - ON BACKWARDS - OFF - ON FORWARD itd.

Da bi se motor pokrenuo unatrag, obrazac koji se šalje na ULN2003 treba poništiti. To bi se moglo učiniti s dvosmjernim registrom pomaka, ali ja ga nemam. 74HC595 nije dvosmjeran.

Međutim, otkrio sam da bih mogao koristiti svoj oktalni bafer 74HC241. Ovaj međuspremnik ima dva 4 -bitna dijela, sa zasebnim OE pinovima (omogućavanje izlaza). Prvi OE pin kontrolira četiri prva izlazna pina, a drugi posljednja četiri izlazna pina. Kada je OE na izlaznim pinovima imaju istu vrijednost kao odgovarajući ulazni pinovi, a kada je isključen, izlazni pinovi će biti u stanju visoke impedancije, kao da nisu povezani. Nadalje, jedan od OE pinova je aktivan nisko, a drugi je aktivan visoko, pa će ih, kada ih povežete, u tom trenutku biti aktivna samo polovica međuspremnika.

Dakle, za isti ulaz jedna polovina međuspremnika može pokrenuti motor prema naprijed, a druga polovica unatrag. Koja polovina je aktivna, ovisi o vrijednosti OE pinova.

Tehnički list za 74HC241 nalazi se na

Ožičenje bi moglo biti ovako:

Pin 1 (1OE) -> 74HC293 Pin 10 (2QB)

Pin 2 (1A1) -> 74HC595 Pin 15 Pin 3 (1Y4) -> ULN2003 Pin 1 Pin 4 (1A2) -> 74HC595 Pin 1 Pin 5 (1Y3) -> ULN2003 Pin 2 Pin 6 (1A3) -> 74HC595 Pin 2 Pin 7 (1Y2) -> ULN2003 Pin 3 Pin 8 (1A4) -> 74HC595 Pin 3 Pin 9 (1Y1) -> ULN2003 Pin 4 Pin 10 (GND) -> Uzemljenje Pin 11 (2A1) -> Pin 2 (1A1) Pin 12 (1Y4) -> Pin 9 (2Y1) Pin 13 (2A2) -> Pin 4 (1A2) Pin 14 (1Y3) -> Pin 7 (2Y2) Pin 15 (2A3) -> Pin 6 (1A3) Pin 16 (1Y2) -> Pin 5 (2Y3) Pin 17 (2A3) -> Pin 8 (1A4) Pin 18 (1Y2) -> Pin 3 (2Y4) Pin 19 (2OE) -> Pin 1 (1OE) Pin 20 (VCC) -> 5V

Sada bi ožičenje trebalo dovršiti samo napajanjem s 5 V. Uvjerite se da napajanje može isporučiti dovoljno struje za pogon motora i krugova.

Korak 7: Zaključci

Zaključci
Zaključci

Koračnim motorom se može upravljati bez mikrokontrolera.

IC -ovi koji su se ovdje koristili bili su neki koje sam imao od ranije. Većina njih za to nije optimalna, pa bi se moglo koristiti nekoliko alternativa.

  • Za generiranje impulsa čip mjerača vremena 555 dobar je izbor, ali postoji nekoliko alternativa, npr. Ona opisana u ovom Uputu.
  • Za kontrolu brzine mogao se koristiti bilo koji potenciometar, ne samo digitalni. Ako imate potenciometar od 10 kΩ, a ne 100 kΩ, otpornici od 10 kΩ mogli bi se zamijeniti s 1 KΩ, a kondenzator od 0,1 µF s kondenzatorom od 1 μF (podijelite sve otpornike i pomnožite kondenzator s istim brojem kako biste zadržali vrijeme).
  • Koristeći dvosmjerni registar pomaka, npr. 74HC194 bi olakšao kontrolu smjera.
  • Za upravljanje tipkama, 74HC393 bi se mogao zamijeniti japankom, npr. 74HC73. 555 također može biti ožičen da djeluje kao prekidač.

Preporučuje se: