Fórum témák

» Több friss téma
Fórum » Léptetőmotorok (vezérlése)
Lapozás: OK   95 / 166
(#) Massawa válasza pipi hozzászólására (») Jún 9, 2013 /
 
Én Atmellel csinálnám (arra vagyok berendezkedve), de még nem vagyok biztos teljesen az algoritmusban. A mozgási határok tul tágak az egyszerü megoldáshoz. A cél az, hogy megtaláljam az optimális sebességet és gyorsulást/lassitást.
A feladatban kimondottan fontos a T idö, és az ehhez tartozo lépésszám - mert ennyi idö alakk kell a berendezésnek a megfelelö irányba fordulnia.
Ugy gondoltam, hogy választott idö ( pl.T= 10 mp 1/3-t szánom a gyorsitásra és lassitásra, mig a maradék idöben a választott lépések számához igazitott sebességgel forogna. Ez még mindig elég sok ismeretlenes feladat, de már egyszerübb, mint az eredeti ötlet volt. Ebböl az is kiadodhat, hogy a motor nem megy max sebességgel, és ennek az értéke nagyobb, mint az átlag sebesség. Pl. Ha 1000 lépést kell megtennie 10 mp alatt ( választott értékek -az átlag 100 lépés/ s lenne ami = 100Hz), akkor 1,5 mp alatt kell >100Hz-t elérnie majd ezzel a lépés gyakorisággal kell mennie 7 mp -n át, majd lelassulnia 0-ra.
Nem tudom, hogy lehet-e fix gyorsulási idövel számolni (a T idö 2x1/6 ) vagy ez is változzon az elméleti átlag sebesség függvényében. Más legyen, ha 10 mp alatt 50 vagy 5000 lépést kell megtenni. ( a 2 érték kb az a tartomány, amit a motor egy ciklusban fordulhat.).
A hozzászólás módosítva: Jún 9, 2013
(#) pipi válasza Massawa hozzászólására (») Jún 9, 2013 /
 
Én a gyorsitást/lassitást fixre venném, amit a mechanika tud, hány lépés alatt, milyen időrövidüléssel, ezt levonva az össz lépésszámból/időből, és tudva a teljes időt adódik a többi. Nagyon lényeges szerintem hogy az idő mennyire esik közel a mechanika idejéhez.
Ha túl nagy az idő, akkor akár lehet hogy gyorsításra lassitásra egyáltalán nincs szükség.
Egyébként nyilván a feladat dönti el hogy milyen sebességű gyorsítás/lassítás szükséges, szóval az a trapéz sebességdiagram hogy kell kinézzen, szóval nagyon pontosan definiálni kell a feladatot, szóban elmondva egyszerű, de belegondolva elég bonyi algoritmus tud kijönni...
A hozzászólás módosítva: Jún 9, 2013
(#) Massawa válasza pipi hozzászólására (») Jún 9, 2013 /
 
Pontosan az a kinom, hogy mikor, hogyan döntsem el a trapéz felfutási szögét. Csak nagyon lassu mozgásnál lehet ezt elhanyagolni, viszont ha fixre veszem a szögét, akkor meg gondban leszek, ha a választott idö rövidebb, mint a fel/lefutási idö összege, azaz a trapézból hárömszög lesz.

Szoval erre probálok ötleteket szerezni, no meg a programozásra, hogyan lehet a trapéz szögét kezelni.
Utoljára vagy 30 éve csináltam ilyesmit, de azt még CMOS hardwares és némi mechanikai uton ( lendkerék), és a mai napig müködik, igaz sima DC motorral, s most ezt kellene kicserélni léptetömotorra.

(#) pipi válasza Massawa hozzászólására (») Jún 10, 2013 /
 
ha pici az idő nyilván 3szög lesz, ezt a mechanika dönti el mit bír sebességben, vagyis nem tud max-ra felgyorsulni, mert már a lassítást kell kezdje, és ez így van jól
(#) Zoli_bácsi válasza vicsys hozzászólására (») Jún 10, 2013 /
 
Az elgondolás jó. Az ULN Common lábát lehetne kapcsolgatni egy-egy tranzisztorral. Úgynevezett "enable" funkció. Egy vezérlő sín, amin rajta vannak a step jelek, amit minden ULN megkap, és csak az az ULN lesz aktív, aminek bekapcsolod egy tranzisztorral a Common közös lábát. PNP tranyóval a +UT tápot szakítod, vagy NPN tranyóval, a 9-es lábat szakítod GND felé. Szerintem jó ez elgondolásod, amit kitaláltál. Fölösleges túlbonyolítani, ez az elegáns megoldás szerintem.
(#) Massawa válasza vicsys hozzászólására (») Jún 10, 2013 /
 
Ez feltételezi, hogy a motor nincs mechanikailag leterhelve, vagy önzáro áttételt hajt ( csiga ). Ugyanis ha az ULN dissabled modban van, akkor a motor tekercsein nem folyik áram, igy a motor könnyen elfordithato (akár a terhelés is elmozdithatja) - azaz megszünik az öntarto hatás. ( Ha ilyesmire szükség van, akkor latchos meghajto kell, aminek külön lehet engedélyeztetni a bemenetet a kimenet meg az utolso aktiv állapotban marad.)
(#) Zoli_bácsi válasza Massawa hozzászólására (») Jún 10, 2013 /
 
Teljesen jogos. No de ezt hívják úgy, hogy tervezés
(#) vicsys válasza Massawa hozzászólására (») Jún 10, 2013 /
 
Öntartásra és egyéb dolgokra nincs szükség, mert áramszünet esetén null pozícióba inicializál és kezdődik előröl a folyamat. Úgy tervezem, hogy 2 végállás között fog oda-vissza mocorogni. Semmi más.
Zoli_bácsi, neked is köszi!
(#) Massawa válasza vicsys hozzászólására (») Jún 10, 2013 /
 
Ne keverjük a dolgokat, a motorjaid szinte állandoan áramszüneti állapotban lesznek! (az 50 motorból egyidejüleg csak 1 fog mocorogni, a többi áramtalan lesz).

Arra gondoltam, hogy ilyenkor a motor a terhelés hatására elfordulhat, hiszen áramtalan, ez nem ugyanaz, mint amikor kikapcsolod az egész szerkezetet beleértve a vezérlö elektronikát is).
(#) vicsys válasza Massawa hozzászólására (») Jún 10, 2013 /
 
Terhelés, tulajdonképpen nincs rajta, emiatt a 2 végállás, csupán szimpla fizikai állapot és ennyi. Bár most már értem, hogy mit is magyarázol...
(#) Massawa válasza vicsys hozzászólására (») Jún 10, 2013 /
 
Csak azért mondtam, mert nemrég egy barátom szellözö lamellákat hajtott igy meg, s ö is sporolni akart ezzel azzal, igy csak akkor volt áram alatt a motor, amikor müködtetni kellett, aminek az lett a vége, hogy a huzat is kinyitotta a lamellákat a becsapott ajtorol nem is szolva.
(#) vicsys válasza Massawa hozzászólására (») Jún 10, 2013 /
 
Köszönöm. Nálam a gravitáció nem szól bele és reteszelni sem kell. Azért ez tanulságos volt.
(#) kaqkk válasza Zoli_bácsi hozzászólására (») Jún 10, 2013 /
 
Zoli bácsi ! Szerintem te összekeversz valamit ! Ha az uln common lábát gnd re húzom az összes kimenet gnd -n lesz (lámpateszt) Ha vcc re kerül akkor visszafutás dióda lesz minden kimeneten ,ez nem jó enable lábnak! Nézd csak meg a datasheet-ben .
A hozzászólás módosítva: Jún 10, 2013
(#) Zoli_bácsi válasza kaqkk hozzászólására (») Jún 10, 2013 /
 
A Common lábat nem GND-re, hanem tápra, vagy sehova. A common tulajdonképpen a kimeneti tranzisztor kollektora. Tehát az uln nyitott kollektoros kimenet, a common láb a közös +ut. Ha a közös (common) lábikó be van kötve tápra, akkor a kimeneteken is lesz jel, ha nincs bekötve, nem lesz jel. Ugyanis nincs mihez jelet mérni.
(#) Zoli_bácsi válasza kaqkk hozzászólására (») Jún 10, 2013 /
 
Mondom. Néztem. A Common a közös táp. Ha nem adsz tápot az ic-nek, nem megy. Ha adsz, megy. Gyakorlatilag "enable" funkciónak is felfogható.
A hozzászólás módosítva: Jún 10, 2013
(#) kaqkk válasza Zoli_bácsi hozzászólására (») Jún 10, 2013 /
 
Akkor nem egy uln ről beszélünk
(#) vicsys válasza kaqkk hozzászólására (») Jún 10, 2013 /
 
Az ULN2803-nál a 8-as láb a GND (ezt lehetne vezérelni) és a 9-es a diódák közöse. Vagy nem jól gondolom...?
A hozzászólás módosítva: Jún 10, 2013
(#) Zoli_bácsi válasza vicsys hozzászólására (») Jún 10, 2013 /
 
A 10-es láb az gyakorlatilag a tranyó mező kollektorai, vagyis a +ut táp, vagyis a diódák közösei. Ha nem adunk ide +ut tápot, akkor nem megy az ic. Ha adunk ide +ut tápot, akkor megy az ic. Vagy a GND-t, vagy a tápot lehet kapcsolgatni, ergo működtetni a tranzisztormezőt, avagy sem. Ha nem kötjük a commont sehová akkor elvileg nyitott kollektoros mezőt kapunk.
A hozzászólás módosítva: Jún 10, 2013
(#) kaqkk válasza Zoli_bácsi hozzászólására (») Jún 10, 2013 /
 
Akkor elbeszéltünk egymás mellett ! a common a 9 láb én arról beszéltem (ez belső diódákkal kapcsolódik az összes kimenetre) te viszont a tápról beszélsz... A pdf ben a 8 as láb a gnd (rajz a 4. oldalon) Táp külön nincs a tranzisztormezón , mert a terhelést kapcsolja gnd re, tehát a motoron keresztül jut a + a kollektorokra .
A hozzászólás módosítva: Jún 10, 2013

uln2003.pdf
    
(#) Zoli_bácsi válasza kaqkk hozzászólására (») Jún 10, 2013 /
 
Idézet:
„Táp külön nincs a tranzisztormezón , mert a terhelést kapcsolja gnd re, tehát a motoron keresztül jut a + a kollektorokra .”


Ez pontosan így van, igen. Viszont a common lábra is szükség van, ezt is a tápra kell kötni.
(#) kaqkk válasza Zoli_bácsi hozzászólására (») Jún 10, 2013 /
 
Igen ! Ha induktív a terhelésed ő védi meg a tranyókat az induktív "visszarúgástól" és ha gnd re kapcsolod akkor minden kimenetet gndre húz "lámpateszt" funkció .Hidd el hogy evvel nem lehet engedélyezni-tiltani a működést .
A hozzászólás módosítva: Jún 10, 2013
(#) vicsys válasza kaqkk hozzászólására (») Jún 10, 2013 /
 
De a GND-vel (8) igen...?
(#) kaqkk válasza vicsys hozzászólására (») Jún 10, 2013 /
 
A gnd ki ki be kapcsolásával megoldható, de ha a commont gnd re kapcsolod a motor minden lába gnd re kerűl " tartóáram" ! Én inkább a motorok közös + lábának a ki be kapcsolásával operálnék (mint a kijelzők multiplex üzeme) Így egy uln elég lenne és minden motor + kivezetésén egy tranyó vagy egy udn es + os tranzisztormező
A hozzászólás módosítva: Jún 10, 2013
(#) vicsys válasza kaqkk hozzászólására (») Jún 10, 2013 /
 
Szerintem meg az alábbi algoritmus, kielégítene:
- GND bekapcs
- motor birizgál
- GND kikapcs
Nos?
(#) kaqkk válasza vicsys hozzászólására (») Jún 10, 2013 /
 
Ez is jó , de mivel kapcsold a gnd-t? Így viszont egy uln 2 motort tud meghajtani . viszont a másik megoldással 2x akárhányat
A hozzászólás módosítva: Jún 10, 2013
(#) vicsys válasza kaqkk hozzászólására (») Jún 10, 2013 /
 
Tranzisztor, FET, PIC kimenete vagy valami.
(#) kaqkk válasza vicsys hozzászólására (») Jún 10, 2013 /
 
A te döntésed , vagy két motoronként egy uln és egy fet , vagy minden motorra egy fet és egyetlen uln ...
(#) vicsys válasza kaqkk hozzászólására (») Jún 10, 2013 /
 
Tekintettel arra, hogy (szerény becslésem szerint elég lesz a PIC kimenete a meghajtáshoz) és tranya is 14Ft valamint az ULN is csak 50Ft/db. , ez nem tétel.
(#) kaqkk válasza vicsys hozzászólására (») Jún 10, 2013 /
 
Egyébként mit fog csinálni az a sok piciléptetőmoci??
A hozzászólás módosítva: Jún 10, 2013
(#) Zoli_bácsi hozzászólása Jún 10, 2013 /
 
Kaqkk barátomnak tökéletesen igaza van. Összeraktam egy tesztpadon, és a common lábat ha lekötöm testre, akkor is világít a led, ha felkötöm tápra akkor is. Tehát igazából a GND lábbal lehet operálni. Ha a bemenet nincs bekötve, vagy GND-n van, akkor a common GND-re kapcsolásával aktívvá válik a kimenet. Én tudtam rosszul, Kaqkknak igaza van!!
Következő: »»   95 / 166
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem