 |
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
davids5a Neznanec

Pridružen-a: Čet 18 Okt 2007 19:24 Prispevkov: 7 Aktiv.: 0.03 Kraj: Ljubljana
|
Objavljeno: Čet Okt 18, 2007 7:34 pm Naslov sporočila: Upravljanje koračnega motorčka z mikrokontrolerjem |
|
|
Zdravo!
Hodim na Vegovo in moramo pri praksi vsako leto narediti 2 projekta in sicer iz področja elektrotehnike. Ker o tem sicer nimam pojma, sem pri izdelavi uporabil že preverjene sheme (in TIVe), letos pa pridejo v poštev le vezja z uporabo mikrokontrolerja (kateregakoli).
Zamislil sem si takole:
Mikrokontroler bi upravljal koračni motorček, ki pa bi odpiral oziroma zapiral žaluzije glede na zunanjo svetlobo (verjetno s pomočjo fotoupora).
Kako bi se to dalo izpeljati? O assemblerju ali čemerkoli nimam pojma, tako da je vsaka pomoč dobrodošla.
|
|
Nazaj na vrh |
|
 |
matjazkariz Član


Pridružen-a: Sre 03 Nov 2004 18:09 Prispevkov: 1026 Aktiv.: 4.33
|
Objavljeno: Čet Okt 18, 2007 7:50 pm Naslov sporočila: |
|
|
Ha, to je pa podobno, kot da bi dirkaču formule 1 rekel, da naj si za naslednjo dirko naredi svojo formulo in mu v roke potisnil pilo in kladivo.
No pa najprej primi pilo:
Izberi en uC. Izberi takega za katerega boš našel kakšne uporabne knjižnice za koračni motor in AD pretvorbo za branje intenzitete svetlobe iz fotoupora. To bo še najtežji del. Sestavi si nek hardver. Potem se pa nauči uporabiti AD pretvorbo in krmiljenje koračnih motorjev v dveh ločenih projektih, tako da osvojiš delovanje knjižnic. Potem pa še vse skupaj združiš ven projekt.
Kladivo ti bo pa kdo drug dal.
_________________ LP, Matjaž |
|
Nazaj na vrh |
|
 |
rplink3r Član


Pridružen-a: Tor 06 Feb 2007 20:02 Prispevkov: 507 Aktiv.: 2.27 Kraj: Levec
|
|
Nazaj na vrh |
|
 |
davids5a Neznanec

Pridružen-a: Čet 18 Okt 2007 19:24 Prispevkov: 7 Aktiv.: 0.03 Kraj: Ljubljana
|
Objavljeno: Čet Okt 18, 2007 9:40 pm Naslov sporočila: |
|
|
Hvala!
Tega sem se v šoli pravzaprav v eni minuti moral spomniti iz nič in je zanimivo, da je to nekdo že prej delal .
|
|
Nazaj na vrh |
|
 |
CarpeDiem Član


Pridružen-a: Pon 16 Feb 2004 17:24 Prispevkov: 333 Aktiv.: 1.40 Kraj: Vrhnika
|
Objavljeno: Pet Okt 19, 2007 4:35 pm Naslov sporočila: |
|
|
Moj projekt je bil polet na Luno, a sem ga opustil, ker se je tega baje nekdo že spomnil in celo naredil. Si moreš mislit kakšna smola?
Na forumu pa kar vprašaj kakšnega starega mačka, če lahko projekt naredi namesto tebe v popoldanskem času.
|
|
Nazaj na vrh |
|
 |
bungee Član


Pridružen-a: Pon 07 Mar 2005 18:49 Prispevkov: 1479 Aktiv.: 6.24 Kraj: Ljubljana
|
Objavljeno: Pet Okt 19, 2007 10:58 pm Naslov sporočila: Re: Upravljanje koračnega motorčka z mikrokontrolerjem |
|
|
davids5a je napisal/a: |
O assemblerju ali čemerkoli nimam pojma... |
Vseeno boš na koncu moral zadevo narediti dam, ker jo boš moral zagovarjati, če se spomnim kaj profesorjev z Vegove.
Torej kakšne izkušnje sploh imaš je prvo vprašanje.
Izdelava takega vezja z mikrokrmilnikom ni zapletena. Možnih rešitev je mnogo za začetek si boš moral izbrat katero družino krmilnikov boš izbral. Vsak tu bo seveda zagovarjal svojega, jaz sem se najbolj navadil na PIC kontrolerje.
Po tej odločitvi pa je potrebno izbrat tudi koračni motor bipolarnega ali unipolarnega. To je za začetek to. Poleg izdelave vezja se pa sproti naučiš še programiranja
|
|
Nazaj na vrh |
|
 |
NeoTO Član


Pridružen-a: Pon 28 Mar 2005 19:19 Prispevkov: 2752 Aktiv.: 11.61 Kraj: Trzic
|
Objavljeno: Sob Okt 20, 2007 9:38 am Naslov sporočila: |
|
|
senzor, tipke, status displej > PIC > L293D > koračni motor
_________________ Lp,
Matevž |
|
Nazaj na vrh |
|
 |
matjazkariz Član


Pridružen-a: Sre 03 Nov 2004 18:09 Prispevkov: 1026 Aktiv.: 4.33
|
Objavljeno: Pon Okt 29, 2007 7:04 pm Naslov sporočila: |
|
|
Pa mora bit koračni motor? Mislim, da bi bilo bolj enostavno z enim modelarskim servomotorjem to izdelat. Porabiš samo en PWM za regulacijo položaja. Če tako na pamet ocenim AD+PWM = enih 50 vrstic asm kode. No ja še vedno trd oreh za enega, ki ne ve kaj je asm.
A mislite, da je spet skopiral od koga drugega?
_________________ LP, Matjaž |
|
Nazaj na vrh |
|
 |
NeoTO Član


Pridružen-a: Pon 28 Mar 2005 19:19 Prispevkov: 2752 Aktiv.: 11.61 Kraj: Trzic
|
Objavljeno: Pon Okt 29, 2007 8:02 pm Naslov sporočila: |
|
|
matjazkariz je napisal/a: |
Pa mora bit koračni motor? Mislim, da bi bilo bolj enostavno z enim modelarskim servomotorjem to izdelat. Porabiš samo en PWM za regulacijo položaja. Če tako na pamet ocenim AD+PWM = enih 50 vrstic asm kode. No ja še vedno trd oreh za enega, ki ne ve kaj je asm.
A mislite, da je spet skopiral od koga drugega? |
Z modelarskim servo motorjem boš bolj težko zapiral žaluzije. En obrat še, več pa bolj težko...
_________________ Lp,
Matevž |
|
Nazaj na vrh |
|
 |
TECHNIC Član


Pridružen-a: Tor 31 Okt 2006 11:18 Prispevkov: 582 Aktiv.: 2.56 Kraj: Senovo
|
Objavljeno: Pon Okt 29, 2007 8:55 pm Naslov sporočila: |
|
|
Servo motor se da predelati za več obratov.
Natančen opis tega je bil v novem TIM-u.
Tukaj pa je en krajši opis.
http://www.seattlerobotics.org/guide/servohack.html
Tukaj potem nimaš natančne kontrole nad vrtenjem. Boš rabil še kak feedback.
|
|
Nazaj na vrh |
|
 |
NeoTO Član


Pridružen-a: Pon 28 Mar 2005 19:19 Prispevkov: 2752 Aktiv.: 11.61 Kraj: Trzic
|
Objavljeno: Pon Okt 29, 2007 9:03 pm Naslov sporočila: |
|
|
TECHNIC je napisal/a: |
...Tukaj potem nimaš natančne kontrole nad vrtenjem. Boš rabil še kak feedback. |
A ni ravno v tem fora? A ni lažje potem narediti s koračnim motorjem, ki v idealnih razmerah ne potrebuje feedbacka (razen home pozicije)?
_________________ Lp,
Matevž |
|
Nazaj na vrh |
|
 |
TECHNIC Član


Pridružen-a: Tor 31 Okt 2006 11:18 Prispevkov: 582 Aktiv.: 2.56 Kraj: Senovo
|
Objavljeno: Pon Okt 29, 2007 9:58 pm Naslov sporočila: |
|
|
Ni mi čisto jasna uporaba žaluzij. Ali je tu mišljeno, da se zvezno odpirajo - zapirajo ali sta mišljena le dva položaja? Če sta le dva položaja, je pomoje lažje s servomotorjem, dodal bi recimo dva stikala za začetni in končni položaj.
Če pa gre za zvezno spreminjanje, je lažje s koračnim motorjem. Je pa težko izvesti mehanski prenos.
|
|
Nazaj na vrh |
|
 |
davids5a Neznanec

Pridružen-a: Čet 18 Okt 2007 19:24 Prispevkov: 7 Aktiv.: 0.03 Kraj: Ljubljana
|
Objavljeno: Tor Nov 06, 2007 7:43 pm Naslov sporočila: |
|
|
Sori, sam men je vse, kar ste napisal španska vas. Verjetno mislte, kako je to možno, ker sem na Vegovi... Vsi pa [slovenščina je zame španska vas] nismo [slovenščina je zame švedska vas] mahnjeni na elektrotehniko. Nekateri bolj, drugi manj.
Potem pravite, da je najbolje uporabiti servo motor. Glede mikrokrmilnikov - PIC morda? Je bolje za začetek z uporabo stikala (odpiranje, zapiranje), fotoupora ali je vseeno?
Prosim, rabim vsaj kakšne bolj direktne smernice, drugače se bom bolj težko znašel.
|
|
Nazaj na vrh |
|
 |
gkrusi Član



Pridružen-a: Tor 24 Jul 2007 17:22 Prispevkov: 811 Aktiv.: 3.72 Kraj: Ptuj
|
Objavljeno: Tor Nov 06, 2007 10:57 pm Naslov sporočila: |
|
|
Če bi zadevo delal jaz:
-PIC16F876 na primer (glavno da ima AD (analog-digital) pretvornik)
-Kar se tiče motorjev; če uporabiš koračne, bo zadeva lepo delolovala (če misliš na te žalozije, ki jim samo kot spremeniš in s tem prepustnost svetlobe). Če misliš tiste žalozije, ko se dvigujej in spuščajo, pa bo potreben kar masiven motorček. Za prvi tip, je nekoliko večji koračni motor verjetno dovolj. Ker z elektroniko očitno nimaš preveč izkušenj, ti bo krmiljenje koračnih motorjev morda malo prezakomplicirano (čeprav je kar se mene tiče enostavnejše kot pa predelava servota in potem problemi z njim, natančnostjo, obraba zobnikov...)
Če vzameš servomtor in ga razmontiraš ter mu odvzameš zatiče, ki preprečujejo 360° vrtenje in vso elektroniko, dobiš popolnoma navaden DC motorček, z velikim prenosom in posledično velikim navorom.
-Tak motor lahko potem krmiliš kar preko 2 relejev, kar ti omogoča preprosto uporbo bolj ali manj zmogljivega motorja. Ta releja vežeš preko primernega ojačevalnega dela (tranzistor...) na poljubna dva priključka mikrokrmilnika (ne priporočam edino porta A, saj boš preko njega meril svetlobo)
-Na port A torej vežeš fotoupore (spremembo napetosti ustvariš preprosto s pomočjo napetostnega delilnika, kjer uporabiš fotoupor (kot R1)s primermerno upornostjo in trimer potenciometer(kot R2), priporočam, da za trimer vežeš še en uporček.
-Na poljubne priključke mikrokrmilnika, bi jaz dal še stikala ali pa tipke, za Vklop in Izklop samodejnega pomikanja in za ročno pomikanje gor in dol. Ne pozabit na končna stikala motorja. Morda ne bi bilo slabo dodati tudi tipke za reset (če se motor izbubi)
-Kar se tiče softwerja:
-jaz sem navajen na PIC C Compiler (je že sicer malo zastarel, dela pa čisto lepo), sicer pa vsak svoje hvali
-Kako je s programatorjem? Imaš v šoli dostop do katerega?
-S softwerjem bi nato na primer vsakih nekaj sekund izmeril koliko svetlobe je na fotouporih (priporočam uporabo večih senzorjev - merjenje na več mestih je zagotovo bolj natačno, če enega na primer osenči drevo). Vsakič ko bi stanja na primer 10x preveril bi izračunal povprečno vrednost (da se žalozije ne bi odprle, vsakič ko bi nekdo šel mimo senzorjev ).
-Tako pridobljen rezultat bi z neko histerezo primerjal s ternutnim položajem rulete. Če je histereza presežena, naj se motor pomakne na nov položaj, sicer naj čaka, da se histereza preseže (da motor ne bi ružil vsako minuto). Motor bi pomikal na način, da bi si izmeril, koliko časa se motor mora premikati, da naredi neko število obratov.
-Vsakih določeno število poporavkov bi motor poslal do enega (npr. predvideno bližjega) končnega stikala, da bi tako odpravil nenatančnost motorja.
-Če uporabiš koračni motor, je potem za krmiljenje potrebnih par tranzistorjev in nekaj preduporov, ter po možnosti primerno napajanje. Verjetno bi zadoščali koračni motorčki, ki jih najdeš v starih printerjih.
-Software potem krmili tuljavice v takem zaporedju, da se motor premika, kar se da naredi s par vrsticami programa. Če je motor dovolj močen - se ne moti (ne izgublja korakov) lahko mikrkrmilnik točno ve, kje se ta nahaja. Kar je tukaj kar velika prednost. Vseeno pa bi mu jaz vsakega nekaj časa, preveril kje točno se nahaja (kot pri servotih)
-Aja, pa ponoči morda ne bi bilo slabo, da se žalozije zaprejo (torej ko je svetilnost nekje minimalna)
-Če te zanima (oz. če se odločiš za koračne motorje), kako točno jih krmiliti, ti lahko še to razložim.
To pa je tudi vsa umetnost, ki je sicer zelo preprosta, če jo obvladaš . Jaz bi dodal še LCD prikazovalnik ipd., da bi bolje izgledalo če ne drugo .
Pa še nekaj, mora zadeva praktično delovati pri tebi doma na oknu ali samo na eni plošči, za predstavitev?
Sedaj pa poskusi naredit shemo. Če kaj ni jasno, pa , če ni nič uporabnega za najti, pa sem.
_________________ Zakaj bi bilo preprosto, če je lahko zakomplicirano???
Nazadnje urejal/a gkrusi Sre Nov 07, 2007 1:42 am; skupaj popravljeno 1 krat |
|
Nazaj na vrh |
|
 |
bungee Član


Pridružen-a: Pon 07 Mar 2005 18:49 Prispevkov: 1479 Aktiv.: 6.24 Kraj: Ljubljana
|
Objavljeno: Sre Nov 07, 2007 12:20 am Naslov sporočila: |
|
|
Evo zdaj pripenjam še shemo. Za razliko od gkrusija sem uporabil še bolj preprosto varianto.
Mišljeno je vezje s koračnim motorjem, lahko bi bil pa tudi navaden motor, potem je stvar še toliko bolj preprosta. No pa da se ne oddaljim od teme.
Tipke gor, dol, stop so za kontrolo, tipki konc-z in konc-s sta za ugotavljanje končnih lokacij. Diode lahko po svoje uporabiš za indikacijo stanj in foto tranzistor ti služi za ugotavljanje ali je dan ali noč.
Kakor je vezje trenutno narisano je za koračni motor in sicer bipolarnega. Tega priključiš na priključke X1-1, X1-2, X2-1, X2-2.
Program si boš pa že sam napisal. Pa še komentar na tvoje "neznanje" če misliš, da smo se ostali, ki imamo nekaj tega (znanja namreč) rodili z njim se motiš. Projekte se pa dela zato, da kaj odneseš od njih, predvsem znanje!
Koda: |
Qty Value Parts
5 Tipka DOL, GOR, KONC-S, KONC-Z, STOP
4 Konektor 5V, NAP_MOTOR, X1, X2
2 LED 5mm LED1, LED2
1 4MHz Q1
7 10k R1, R4, R5, R6, R7, R8, R9
2 22p C1, C2
2 100n C3, C4
2 470R R2, R3
1 BP103 T1
1 L293D IC1
1 PIC16F84AP IC2 |
P.S: Pri RA4 sem pozabil narisat še "pullup" upor 10k
Opis: |
|
Velikost datoteke: |
14.42 KB |
Pogledana: |
63 krat |

|
|
|
Nazaj na vrh |
|
 |
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 500 dni
Powered by phpBB © 2001, 2005 phpBB Group
|