Fórum témák
» Több friss téma |
Fórum » Léptetőmotorok (vezérlése)
Ha kis erővel kell hajtani a motort, az is megoldás lehet, ha kevesebb árammal vezérled.
Szia!
Nem írtál arról, hogy milyen vezérlőd van, milyen kapcsolóelemekkel, milyen kötöttségek származnak ezekből. Ha bármilyen megoldás szóba jöhet, akkor mikrolépéses vezérlő kellene aminek az áramát akkorára állítod, hogy még biztonságosan elvigye a terhet. Így kvázi vektoros meghajtásod lesz, a motor szép egyenletesen fog járni, és a terhelő áram effektív értéke is a legkisebb lesz (a szinuszos áram áramalak a legkedvezőbb ilyen szempontból). Ha ez már nem megoldható, akkor a lehetőségek szerint ehhez kellene minél jobban közelíteni a motoron folyó áramot.
Magam irom a programot és fejlesztem a cuccot. A motorokat egy-egy AVR proci hajtja egy -egy ULN-n keresztül ( ezért nem tudom söntölni a tekercseket, de erre nincs is szükség mert a motorra külsö erök nem hatnak).
A motorra négyszögjel kerül, de nagyon alacsony frekvencián ( egy fordulat 10 percekben mérhetö). Gyakorlatilag az a cél, hogy a motor lépjen egyet majd várjon a következö lépésre - a várakozás alatt, ha lehet ne follyon áram a motorba. ( késöbb talán szinkronizálnom is fog kelleni, azaz csak bizonyos feltételek teljesitése után mozdulhat.) Az egész kod ASM-ben van, és azon spekulálok most, hogy a motorra ható impulzusok szélességével volna jo az áramot szabályozni.
Ha nincs áramfigyelő söntöd, megteheted, hogy egyszerűen egy kapuval és PWM jellel csökkented az áramot. Esetleg szoftverből is meg lehet tenni, ha van rá szabad kapacitás (pár kHz-es jel kell). Valami hasonló módon:
Nekem már az egész elektronika megvan ( több példányban már be is lett vetve). Csak a jelenlegi felhasználás okoz némi gondot, mert nagyon lassan, de nagyon sokáig kell müködnie ( többnyire áll, de akkor is folyik az áram). Nagyon kis motorokat használok 5 V-ra, amit elvben csökkenthetek. Áramfigyelö stb nincs, igy csak szoftwares megoldás jöhet számitásba.
Van valamilyen kapcsolási rajzod (részlet is elég lehet), hogy hogyan vannak bekötve a tekercsek?
Akkor kell egy rutin, ami generál mondjuk egy 10-20KHz-es jelet (motortól függ), amiben egy változót negálgatsz 100% vagy kb. 20%-os kitöltéssel. és ezzel és-elgeted a motorvezérlő jeleket. Nem tudom milyen lépésközt használsz, attól függően nem hagyhatod áram nélkül a motort.
Kösz mindenkinek.
A tekercsek nagyon egyszerüen az 5 V és az ULN kimenetei (4) vannak kötve. ( ez adva volt amikor az elsö ilyen berendezét épitettem, igy ezen nem igen figok váltiztatn)i. Az ULN-t meg egyenesen az AVR hajtja. A szoftwaren kütyülök, hogyan kapcsoljam össze a meghajto jeleket és azok "keskenyitését" a megszakitás rutinban - megszakitás a táblázatbol olvassa ki a kimenö jelet, és ezt kéne leröviditenem.
Ez eddigiekből úgy látom, hogy azt próbálod a program átírásával elérni, hogy kellő frekvenciával egyet lépjen, ekkor folyik áram a tekercsen, majd egy idő után ezt az áramot megszünteted, abban a reményben, hogy ez idő alatt megtörtént a lépés. Kérdés, hogy nálad mit jelent pontosan egy lépés. A léptető motor nagyobb nyomatékú vezérlésénél egyszerre kettő tekercset vezérlünk. Ha egy ilyen léptetésnél veszed el az áramot, a motor valamilyen irányba elmozdul. Célszerű lehet az egytekercses mód alkalmazása, vagy a kettő variálása.
Ez utóbbi esetben egy lépés folyamata a következő lehet: 1. Bekapcsolod azt a tekercset, ami az aktuális pozícióhoz tartozik. Vársz annyi időt, hogy az áram felépüljön (villamos időállandó). Ekkor még nem mozdul a motor. 2. Bekapcsolod a következő pozícióhoz tartozó tekercset. Vársz annyi időt, ami alatt az áram felépül, és a forgórész kb. eléri a féllépést. 3. Kikapcsolod az 1. lépésnél bekapcsolt tekercset, és vársz annyi időt, ami alatt a forgórész megteszi a második fél lépést, és leáll. 4. Kikapcsolod a 2. lépésnél bekapcsolt tekercset. A fenti szekvencia tovább finomítható szoftveres PWM-mel, hogy a lépés folyamata minél egyenletesebb legyen. Ha nem érthető amit írtam, talán segít a következő link: Bővebben: Link
Sziasztok.
Szeretnék segítséget kérni. Ti járatosak vagytok a témában, ezért lehet hogy már láttatok olyan kapcsolást ahol a léptető motor követi egy potenció méter állását. Speciel egy analog jelet (pl. 0 - 5v) szeretnék láthatóvá tenni egy kis mutatón. Hogy még érthetőbb legyek, a járműben tönkre ment a műszerfal vezérlő. Szerintem egy egyszerű PIC-kes kapcsolással könnyen ki lehetne váltani az eredeti tervet.Ha valakinek van valami ötlete nagyon megköszönném. Üdv. Laczo.
Kösz én is valami hasonlon gondolkodtam, söt probálgatom is. Nálam egy-egy változo egyszerre 2 tekercset kezel. azaz igy mennek párosával sorba a kimenetek. Minden tekercsen van egy-egy LED és 5 polusu a motor, azaz pontosan látom mi is történik. Miután a lépése frekvenciája kb 1 Hz körüli szabad szemmel is jol láthato mikor mi történik. ( sajnos most az ünnepek alatt nem ott van a szerkezet ahol a szkopom van igy nem tudom pontisan bemérni, de pontosan az lenne a célom, higy megtalálni azt az impulzus idötartamot ami még elég a motor megbizhato forgásához, és a periodus maradék idejében megszüntetni a motoráramot.
Jelenleg kb ez megy a tekercsekre: ____ _____ _____ |____|. |____| A cél meg ez lenne ( már ha sikerül megjelentetni). _ _ _ |_______| |________| |_____ Az a gondom, hogy a megszakitásokban még nem vagyok annyira jártas igy nem tudom mi lenne a jobb megoldás. Most ugy probáltam, hogy amikor a megszakitás kiküldi a tekercsekre a kivánt állapotot ( a következöt a következö megszakitás küldi) beraktam egy késleltetést (leszámolok $5fff- konstansrol nulláig, és akkor kikapcsolom a motoráramot, valamit csinál a motor ( de nem tudtam még szkoppal megmérni), de nem egészen azt amit vártam. Lehet hogy igy nem jo a megszakitásba berakni a delayt, vagy valamit még nem értek. Söt ha nagyon rövidre veszem a konstansot ( elöször csak 1 bytes volt, az egyenesen felgyorsitotta a motort $4fff-töl felfelé már nem gyorsit de gyengül a motor. Ezért lett most $5fff. Most jutott az eszembe, hogy lehet, hogy ez a leszámolosdi nem jo, mert ez is a Z bitet figyeli az SREG-ben ( ugyanugy mint a fö IRQ rutin) ezért keveredik a kettö. Na megyek kiagyalni valami mást.
Szerintem rossz irányba gondolkodsz. Nem hagyhatsz túl nagy szüneteket az áramban nehogy lépést tévesszen a motor. A PWM frekvenciának állandónak kéne lenni. Pl. 10KHz= 100us, ebből amikor lép 90us a magas (vagy 100, akkor nincs is alacsony), tartáskor 20us a magas 80us alacsony.
A motorra gyakorlatilag nem hat semmi erö, ami elmozditaná, igy nem tudom miért vesztene lépést. A frekvencia ( szabályozhatoan) állando, hiszen az adja a sebességet, nekem a kitöltési tényezöt kellene csökkentenem ( most 1:1)
A motorodat kézzel sem tudod akármilyen állapotban megállítani (érezni, hogy "döcög"). Ha nem kap áramot "eldöccen" valahova. A lépésfrekvenciád állandó, de az adott tekercsek folyamatosan maximum áramot kapnak (vagy az egyik, vagy a másik, ezért melegszik). Ezt úgy tudod csökkenteni, hogy a PWM kikapcsolgatja az áramot (ilyenkor nem lép a motor, csak áll). A motoron folyó áram a ki-bekapcsolt idő átlaga lesz. Akkora frekvenciát kell választani, amit a motor tekercsének induktivitása már szépen kiátlagol, és persze az sem öröm ha zenél a motor.
(A motor nem döccenhet áram nélkül sehova mert egybe van épitve egy 1:64- s áttétellel, amit elforditani igen nehéz.)
Ezt akartam, csak ebben a beszélgetésben jöttem rá, hogy hol van a galiba a programomban. Igy az impulzus szélességet másképp kell majd kezelnem a programban. Kösz a segitséget! A hozzászólás módosítva: Ápr 5, 2015
Csak az elvek tisztázása végett:
Korábban írtam, hogy általában kéttekercses módban használják a léptető motorokat, mert így a legnagyobba nyomatéka. Ha egy ilyen állapotban vesszük el mind a kettő tekercsről az áramot, igazad van; nem tudhatjuk melyik irányba, de el fog döccenni a motor, azaz lépésvesztés lehet. Ha azonban egy tekercses üzem módban használjuk a motort, akkor ilyen nem léphet fel, mert az árammal átjárt állapot olyan helyzetben tartja a forgórészt, ami a kis mágneses ellenállású állapot, azaz a reluktancia nyomaték is abban az állapotban tartja (ilyen állapotok között döcög a forgórész kézzel forgatva). Az egyenletesebb átállás érdekében javasoltam, hogy a féllépés igénybevételével menjen át az egyik állapotból a másikba. Még jobb lenne, ha ez kvázi vektorosan történne, mert akkor még kevesebb lengés kísérné az átlépést. Jelen esetbe valószínűleg nincs szükség erre a nagy áttétel miatt.
Így van. Csak az volt az érzésem mintha a kolléga a léptető frekvencia kitöltésében gondolkodna.
Abban én nem bíznék, hogy a mechanika majd ellenáll az újra megjelenő motoráramnak, mert akkor léptetni sem tudná (a kottyanásról nem is beszélve).
Nem értjük egymást.
Egyetlen célom van a már müködö rendszer energiaigényét csökkenteni a legoptimálisabb modon. Azaz nem a lépésekkel meg a vezérléssel van gond, hanem az energiaigénnyel. A hozzászólás módosítva: Ápr 8, 2015
Idézet: „Azaz nem a lépésekkel meg a vezérléssel van gond, hanem az energiaigénnyel.” Ezek valamilyen módon összefüggnek, és az ezekben rejlő problémákra akartunk rámutatni. Korábban írtad, hogy a csökkentés módja az lenne, hogy lépsz egyet (ekkor lenne áram alatt a motor), majd áram lekapcsol (hogy ne legyen veszteség) és vársz amíg nem kell újból léptetni. Egy ilyen elképzelésnél egyáltalán nem mindegy milyen állapotban veszed el az áramot. Ha a léptetés ideje alatt is sok a sima kapcsolásával kialakuló áram, akkor lehet a kitöltéssel játszani, de a probléma hasonlóan fenn áll, nem mindegy hogy melyik állapotban szünteted meg a pwm-mel csökkentett áramot. A hozzászólás módosítva: Ápr 8, 2015
Hali újra!
Pár oldallal arrébb belekezdtem egy egyszerű bi stepper vezérlésbe.. Több nap szenvedés után végre sikerült rájönnöm hogy az ULN icm rossz volt. (Input lábakat magasba nyomta (máig se értem hogy hogyan ) Szóval avr progim már megvan fél-egész lépések gombokkal vezérelten.. 52 Ohm-os tekercsek mellé 56 Ohm-os ellenállásokat találtam itthon. Ilyenkor a motor fog jobban melegedni? Az a baj az ULN el hogy kevés így az 5 volt...(gyengék a motorok) Az a kérdésem: Lehet stabilizálatlan tápot adni neki ? Motoroknak mindegy nem? Mert van itthon pár hálózati adapterem azok álltalában nem stabilizáltak arra gondoltam arról adom a tápot a motoroknak ,meg arról veszem le az avrnek az 5 voltot.
52 Ohm és 56 Ohm sorba ktésénél az 56 Ohm fog többet fűteni. Tulajdonképpen milyen ULN IC-ket használsz? Van belőlük pár típus. Ha nem stabil a táp, akkor a motor forgatónyomatéka sem stabil. Azt már neked kell tudnod, hogy jó-e így vagy nem.
Ha az előtét (soros) ellenállás nagy és kevés a forgató nyomaték, a feszültség növelésével tudsz rajtuk erősíteni, de ezzel növeled a veszteséget is. Sőt, egy ponton a motorok éppen annyira fognak melegedni, mint előtte, cserébe az ellenállások is elfűtenek "némi" energiát.
Közben megnéztem egy másik berendezésemben használt meghajtot ( sajnos 4 kivezetéses motorra van, de ott nagyon jol bevált).
A meghajtoban egy proci van ( igy abba csak lépést meg irányt kell adni, de van egy státusbemenete - current - ami csökkenti a motoráramot a lépés után. Ilyen kellett volna a jelenlegi projektbe, de mint kiderült a melegedés kevésbé van összefüggésben a fogyasztással. Az erre tervezett akkum böven képes 8 orát hajtani a motort, amit untig elég, igy ezzel már nem kell foglalkoznom. Kösz a segitséget.
Hát ez az!
uln2803a Azt néztem 9V-on kb 7V a kivehető feszültség. Akkor még mindig eshet 2V oltot és még erőssen forognak a motorok. (avr-t direkbe kötve próbáltam) Ez különben egy kínai usb mikroszkóp meg egy motoros 20x zoomos optika amin 2 bistepper van.(csak azért hogy fél méterre is lehet így a fokusz távolság és így már beférek egy forrpákával)Szóval nem lesz nagy használatban végállás se lesz.
Nem teljesen érthető amit írsz. Az ULN2803 -ban 8 db. nyitott kollektoros (darlington) tranzisztor van, a 2 V esés elég nagynak tűnik. Tulajdonképpen milyen motorokat hajtsz vele és hogyan? Egy kapcsolási rajz sokat segítene.
Elnézést, már értem, mit írsz. A "kivehető feszültség" zavart meg.
Ha 7-8 V elég a működtetéséhez, akkor legyen annyi. A lehető legkissebb feszültséget kösd a motorokra. Ha nem kell soros ellenállás, akkor az a legjobb, a lehető legkissebb a veszteség. 9 V-ból pedig egy egyszerű 7805-ös stab. IC-vel is tudsz 5 V-ot előállítani a kontrollernek. Annak pedig akkora a fogyasztása, hogy a stab. IC hűtőborda nélkül is kibírja, esetleg egy apró lemezke jelzés értékkel. 9 V-os stabil tápegység pedig kb. a sarki fűszeresnél is kapható, de a HEStore-ben biztosan. A hozzászólás módosítva: Ápr 20, 2015
Én a két tranyóra gondoltam amin kb 2v esik.
Különben ellenállásosztóra az jönne ki jól ha 33 Ohm húzná fel. Nagyábból 20ms /5 ms lenne a fél/egész lépés és akkor még elbírja a tengelyt. Ugyanezt az optikát másol néztem 11 Volt vezérli..És normális léptető ic. uC nem fogyaszt semmit sem szinte arra gondoltam so8 tokozásban is van 7805 100mA teljesítménnyel.27K bázisellenállás van az uln adatlapja szerint beépítve.Azon meg így uA folynak.Nem? Arduino Bipolar Stepper Ez az alapom csak elhagytam a zénert (nem számolok az indukcióval lehet pedig kéne) És nem arduino hanem egy Tiny2313a lesz (és bascom basic) Jól emlékszem minnél nagyobb a feszültség és minnél rövidebb időre annál nagyobb lesz az indukció ugye? (dehát nem ismerem a motorok indukcióját)
Szia!
Jó lenne, ha egy pontos rajzot mellékelnél, mert így nem tudunk hatékonyan segíteni. A linkelt rajz eléggé energianyelő megoldás alkalmaz (a bekapcsolt 22 ohmos ellenállás több mint 3W-t disszipál). Az ULN sorozat áramkörei általában NPN open-kollektoros kapcsolókat tartalmaznak, amik inkább az unipoláris motorokhoz jók. A bipoláris léptető-motorokhoz inkább az L293D-t ajánlanám, amiben rendes H híd van. Néhány apróbb észrevétel: Az ULN2803 bázis ellenállásai az adatlap szerint nem 27K, hanem 2K7, ami azért kb. 1,5mA áramfelvételt jelenhet kapcsolónként. A zéner elhagyása hiba, mert a motor induktív energiái csak az ellenállásokon tudnak elfolyni, ami túlfeszültséggel járhat, ami ellen védene a zéner. Fontos a fizikai kialakítás is a hatékony védelem érdekében. Lehet, ennek a hiánya miatt ment tönkre az előző ULN2803-ad. A motor indukciója nem függ a rákapcsolt feszültségtől. Ha fontos az értéke, akár meg is mérheted, de nem gondolom, hogy előrébb vinne. Ami inkább fontos lehet, hogy mekkora a motoron kialakuló maximális áram, mert azt kellene kikapcsoláskor a zénerre átterelni, aminek rövid időre ugyan, de ki kell bírnia.
* Vagy használt volna egy 5 pólusu motort vagy az ULN helyett az L293-t. Mindegyik megoldás jobb lett volna.
A hozzászólás módosítva: Ápr 21, 2015
Szia!
Nincs rajz mert csak breadboard van.ULN volt itthon... De elsőre tekintve az l293 könnyebb alkalmazni.. Mivel a motor adott így átállok akkor az l293 -ra. Programozást meg se kell változtatnom? Jó lesz ugyanaz a vezérlés? Jogos emlékezetből próbáltam a 27K az lehet 2K7 hát igen ott ezt benéztem. L293-hoz akkor szinte semmi nem kell ..? Bár azért érdekel hogy lehet kiszámolni a maximális áramot.
Ha felcsapod az L293 adatlapját ott van minden ami kell. A programot sem fog kelleni valoszinüleg átirni.
( amugy olyan njncs hogy nincs rajz, vagy csak találomra dugod össze az alkatrészeket? ) A hozzászólás módosítva: Ápr 21, 2015
|
Bejelentkezés
Hirdetés |





Szerintem egy egyszerű PIC-kes kapcsolással könnyen ki lehetne váltani az eredeti tervet.
) 




