Fórum témák
» Több friss téma |
Sziasztok.
A kérdést amivel fordulok hozzátok egy ismerősom vetette fel erre keresnék megoldást. Léptető motor vezérlést kéne valahogy generálni de nem egyhez hanem 7 db-hoz és egy kicsit elfajzott modon. A lényege az lenne hogy a 7 motor (mondok egy példát) 10 fok eltéréssel forog tehát az első motorhoz képest a második 10 fokkal van lemaradva a harmadik a másodikhoz képest 10 fok és így tovább. Aztán következő forma hogy minden második ellenkező irányba forog. . . stb Utána már csak a programozás szab határt a megvalósításnak. én arra gondoltam hogy a léptető motor ha jól tudom úgy működik hogy egy impulzus egy fordulat, és mondjuk egy 24 lépéses motornál 24 impulzust ad a pic akkor fordul körbe a motor egyszer. tehát az elgondolásom szerint ha a pic számolja hogy melyik motor hol tart akkor egyesével meg tudom neki (vele) mondani hogy melyiket hova állítsa. Mennyire sántít az elmélet? Minden ötletet és javaslatot szívesen várok. /moderátoroknak U.I.: olvasgattam a topicokat, de ilyen irányba egyikbe se találtam elfajzást, ha mégis áthelyezésre kerül a figyelmetlenségem miatt akkor bocsánat/
Elvileg ha egy ilyennek adná a PIC a jelet?
De találtam ilyeneket is ezek ráadásul "MICROCHIP" gyártmányuak hogy passzoljanak a PIC-hez.
Nem, nem!
Amire gondolsz, az a dc motor! Félhidakat, meg teljes hidakat sima egyenáramú motorokhoz használunk! Azért ez a megoldás, hogy lehessen forgásirányt változtatni. A léptetőmotor másképp működik. Először is van neki átlag 5-6 kivezetése, amiket majd Te szépen egyesével vezérelgetsz, és adod neki a lépési fázisokat! Erre van már mindenféle megoldás, a pic felé csak annyi marad, hogy adja a lépésekhez az órajelet. Tehát pl egy órajel az első motornak, akkor az lép egyet. Egy órajel a harmadiknak, akkor meg az. Az irányváltást is az előbbi áramkör valósítja meg, olymódon, hogy a lépési fázisokat visszafelé pakolja a motorra. A 28 lépést amúgy kicsit kevésnek tartom, de lehet hogy van ilyen motor is. Amikkel én találkoztam, azok 200 lépésből tettek meg egy teljes kört. Abban viszont igazad van, hogy ha számolod a lépéseket, akkor tudhatod hogy éppen hol áll a motor. A szépséghibája a dolognak, hogy ha túlterheled, és emiatt lépést veszít, akkor kiesik a szinkronból, és már nem is tudod merre jár. Szóval mindenképp kell rá valami pozíció jeladó. Optó, vagy hall, vagy valami. A lényeg, hogy ha már meg tudod hajtani, akkor annak megoldása hogy szinkroban forogjanak, már gyerekjáték! Szerk: Én így oldottam meg. Jelen esetben egyetlen irányban forog (ha maradt volna még szabad port, akkor lehetne váltani is, így csak a "firmware" módosításával lehet). Kell egy 5V a vezérlőnek, meg egy másik erősebb 5V a motornak. A sebességét a lépések gyakoriságával lehet állítani, amit kívülről kap az órajel formájában. üdv, Krisz
Sziasztok!
Két féle léptető motor kivitel van: Unipoláris 5-6 kivezetése van: A tekercspárok egyik kivezetése közösített (esetleg mind a négy tekercs egyik kivezetése közösítve). Ez a közösített (két) vezeték megy a + tápra. A motor vezérlése a másik tekercsvégek földre kötésével (megfelelő sorrendben) történik. Bipoláris 4 kivezetése van: Mindkét tekercs mindkét kivezetése hozzáférhető. A vezérlése úgy történik, hogy a két tekercset két H-híddal hajtjuk meg. Ha megfelelő sorrendban kapcsolgatjuk ki, egyik vagy másik irányba az áramot a két tekercsben, a motor forog. Ha még az áramokat is szabályozni tudjuk, akkor a mozgás még finomabbá tehető. (Egész lépés, fél lépés, mikro lépés üzemmódok...) A 7 motor vezérlésére 7*4 kivezetés, 7 db meghajtó (unipolárisnál 7 -szer 4 fet a föld felé / bipolárisnál 7 db kettős H-híd pl: L293, L298). A terhelés miatti kihagyások akkumulációjának elkerülése végett kellene minden motorhoz egy pozíció érzékelő is - ez még 7 jel. 35 jel egy 40 lábú kontrollerrel kezelhető: 18F4420, 18F4520. Ha még más bemeneteket is kell figyelnie (forgásirány, sebesség), akkor 68 lábút ajánlanék: 18F6310, 18F6520, 18F6620...
Nem tudom mennyire működőképes,Minden motor polaritáshelyesen párhuzamosan kötve (?) egy egy jelfogón ,vagy egyébben keresztül (ezzel lehet indulási szinkron beállítást végezni . Esetleg ezt a fok eltérést miért nem lehet egy csavarhúzóval a tengelyen elvégezni ? ) ez után csak az alap eltéréseket kell beállítani a motorok egy vezérléssel párhuzamosan ugyan olyan sebességgel forognak.
Jogos! Beleestem abba a hibába, hogy amiket én használok, nyilván olyan van mindenkinek..
Amit én írtam, az az unipoláris. Ami a hidakkal játszik, az meg a bipoláris.
Nem lesz az jó.
A terhelés miatt elképzelhető, hogy valamelyik motor elveszít egy lépést, és akkor már nem is ugyanabban a szögben állnak. Hiába állítottad be csavarhúzóval a kezdeti pozíciót. A relés meg párhuzamos kapcsolás eredménye szerintem az indiános füstös információközlés lenne: dobni nagy fehér ember szép fehér füst.. Gondolj bele! Két teljesen egyforma alkatrész nem létezik. Két egyforma terhelés nem létezik. Tehát valami eltérés máris lesz. Mások az áramok, másképp melegszik, másképp terhel. Mellesleg már van léptetőmotoros topic, szerintem inkább ott kellene folytatni!
Akkor ha jól értelmezem akkor a Motor nem ad vissza jeleket, /jelen estebe/ a picnek hogy hahó én éppen itt járok, ezt maximum onnan tudja hogy számolja hány lépésre adott utasítást illetve ha kap egy poziciótárcsát pl. . . ?
továbbá akkor ez valahogy úgy fog kinézni hogy mindegyik motor kap egy vezérlőt, tehát lesz mondjuk / mivel 7 motor van / 7 vezérlő és azoknak egy "központi" vezérlő adja le az óra jelet hogy melyik mikor és hány lépést forduljon? Amúgy ez a 24 lépés nagyon hasra ütés volt, mert igazad van ha jól tudom átlagba 1 lépés az másfél 2 fok szokott lenni.
Igen már mazsolázom a motor tipusokat hűű hogy mennyi van hogy melyikkel legyen megoldva azt még nem tudom szerintem az a típus lesz amelyikkel könnyebben össze lehet hozni.
Várjál, most emésztem hogy mit is írtál.
Tehát ha bipoláris motor választok mindegyiket az említett módon meghajtom akkor egyetlen PIC végezné az összes motor vezérlését? Ez mondjuk nagy mértékben csökkentené az alkatrész igényt ami nem elhanyagolható szerintem! A pozícíóérzékelőt jónak találnám, igaz terhelés miatti lépésvesztésre, vagy túlpörgésre nem hiszem hogy sor kerülne, mert a motoroknak egy 10-13 centiméter átmérőjű plexi korongot kellene forgatnia /mintha egy cd-t vennél és a közepén a lyukat akkorára növelnéd hogy csak egy 2 centis csík maradjon körbe / tehát mondjuk a pozícionáló mehetne a gyűrű kerületére. Illetve a forgás sebessége se lenne olyan örült nagy mert a max forgás amire szükség lenne az 3-5 fordulat másodpercenként.
JÓ lenne a megoldás de sajnos a motorok eltérése nem állandó.
unipoláris motornál is megoldható egy piccel
a 16f 877 pl 40 lábú bőven elég láb van a meghajtáshoz 7x4 kivezetés kell . (egyébként mindkét fajtánál ugyanannyi vezérlő ládra van szükség csak a vezérlés más)
Elég sok mindent tudtam így meg illetve az útbaigazításotok alapján elindulva 2 jó linket ajánlanék, mind a kettő segíthet esetleg a későbbi érdeklődőknek az egész megértésében. /teljesség igénye nélkül/
Az egyik házon belüli link itt található mindenkinek csak ajánlani tudom. ebben a linkben pedig animáció is látható a vezérlés megértéséhez aki nem tudja elképzelni. Tulajdon képen ilyen szempontból tök mindegy hogy a PIC ledet villogtat vagy motort forgat. /jó ez csak erős túlzással igaz/ A motor fordulatot ha jól értelmezem akkor a jelek adásának gyorsaságával (gyakoriságával lehet szabályozni ) a menetirányt pedig az adatok küldésének "irányával". Tulajdon képen idáig teljesen tiszta a kép, úgymond el tudnék forgattatni 1, 2 vagy akárhány motort, amit viszont nem értek az az /és ez valószínűleg a nagyon hiányos programozási ismereteimnek köszönhető/ hogy ha berakok mondjuk egy uptikai kaput mondjuk nulla fokhoz, akkor az hogy tud segíteni a pozíciónállásba? Az ok hogy megmondja a PIC-nek hogy na most vagyok nulla fokon de mondjuk ezt ugy képzeljem el hogy ha a motor lépéskésésbe van vagy "túlpörgött" a lendülettőlakkor amikor elhalad az optikapunál akkor a programot mindig az aktuális nullapontra állítja? HA nem érthető akkor bocsi nagyon belekavartam. ..
Szia!
Minden motor egy bizonyos prozíciónál jelezne. Az első motor jelzésénél a többihez tartozó lépés számlálóját törlöd, az első motor lépésénél növelnéd az összes motor lépés számlálóját. Az első motor számlálójából kijön, hány lépésből tette meg a kört. A többi motor pozíció jelzésénél a hozzá tartozó lépés számláló értékéből meg lehet határozni a fázisát. Ha egy motor késik az előírt fázishoz képest, be kell iktatni néhány lépést, ha siet, ki kell hagyni lépéseket a léptetéséből. Érdekes felvetés, ha az összes motort egyformán vezéreljük, és a terhelés miatti csúszást elhanyagoljuk, akkor az egyész egy nagyáramú léptető motor vezérlésére egyszerűsödik. A motorok között fáziskésést a tárgyak ráhelyezésekor kell figyelembe venni. A motor sebességét egy időzítő idejének változtatásásval lehet módosítáni. A motorokhoz egy fázis számláló és egy a fázisok közötti (előre, hátra irányú forgatáshoz való) átmeneti táblázat kell. Az aktuális fázis és a forgásirány információból képzett indexel kell a táblázatot címezni, a táblázatból a következő fázishoz tartozó vezérlés (célszerűen a fázis kódja is egyben) olvasható ki.
Elvileg akkor a léptetőmotor csak abban az esetben fog lépést veszteni vagy szaporítani ha a terhelés miatt túlpörög vagypedig akkora rajta a súly hogy az adott tekercs gerjesztése hamarabb megszűnik mint hogy a motor lépett volna?
Namost kérdem én adott egy 0.2 Nm motor amire felteszek a tömegközéponta egy kb cédélemez nehézségü valamit, akkor nem valószínü hogy ott el fog térni illetve lépéskülönbség adódna. tehát elég mondjuk úgy megirni a programot hogy van egy forgási mód ami mondjuk forog 5 percig akkor elég ha csak azt csinálom hogy irok egy olyan "leállító" programrész hogy mondjuk megnyomom a gombot akkor megállítja a futtatást és mindegyik motort nulla foknál tehát a pozíciónállónál állít meg utánn a2 gomb elindul egy másik futás mód majyd megint a stop gomb akkor behívja az előző program részt és megint leállít a a futást és nullára tekeri a motort? Ez igy elvileg megoldható csak azért mert ha egy, max 2 lépést veszt vagy szaporit a motor mondjuk 5-6 perc forgás alatt az még simán belefér de egyszerübb lenne a program. Jól gondolom?
Nagyjából jónak tűnik. Magyarán amikor látod hogy nagyon el van csúszva, akkor adsz egy "reset" jelet, mire az összes motor a nulla pozícióba áll.
Egy így akár jó is lehet, ha neked elég egy diszkóvilágításhoz. Komolyabb dolgoknál, ahol mondjuk magára van hagyva a rendszer, már nem lenne ez a megoldás elégséges. Ezt csak zárójelben jegyzem meg. Mégegyszer, ha egyforma motorokat használsz, és elhanyagoljuk a gyártási szórást (szerintem nyugodtan hanyagolhatjuk), akkor jó lehet! A táplálásra azért figyelj majd oda, nekem sok vidám félórát okozott, míg rájötttem hogy a motor árama megrángatja a vezérlő tápfeszültségét, emiatt pedig fázisok estek ki. Csak annyit láttam, hogy a motor nem egyenletesen jár. Pár kondi csodákat művelt! Üdv
Valamiért az az érzésem, hogy senki sem tudja hogyan működik egy léptetőmotor.
A léptetőmotornál nincs túlpörgés, és lehetetlen a csúszás. A lépés egy a mechanikai kialakításból adódó állandó érték, a terhelési határokon belül mindenképpen lép, fölötte pedig nem, de "kis csúszás", vagy túlfutás nincs. A digitális vezérléssel pedig nagyon pontosan lehet a mozgatást vezérelni. A feszültségmentes tartónyomaték viszont nem túl nagy ezért az induláskor szüksége van motoronként egy alaphelyzeti jelre, amihez "benullázza magát", onnantól pedig nem lehet baj.
Akkor ha jól értelmezem a programból tulajdon képpen teljesen el lehet hagyni a pozicionállót mivel végig tudja számolni hogy hol tart és ha kiszámolt lépés után ugy állítom meg hogy nulla fok legyen akkor az ott fog megálni?
a rajta lévő tárcsa tehetetlensége (még akkor is ha minimális mert kb 15 gramm lessz) nem fog tulpörgést okozni?
Az az inercia, ami túlfordulna, azt gyakorlatilag nem tudja a motor elindítani... ))
Pontos alaphelyzet kell, és utána nincs gond. Hogy megnyugtassalak, egy 1200 DPI felbontású szkenner 0.021 mm-enként áll meg, és nem hibázik.
Igazad van hogy a scanner nem hibázik de azt hittem hogy azért mert hogy van benne valami pozícionáló.
Hát most szerintem pár száz programsorral és jó néhány gonddal megkönyítetted az életem mert akkor semmi gond, csak a megállásnak kell pontosnak lenni. és kész, azt meg mondjuk egy valamilyen pozícionálló /infrasorompó vagy hasonló/ valamivel meg is lehet oldani. Elvileg jól gondolom ugye?
Mondjuk valami ilyesmire gondoltam, a tárcsára pedig nulla fokhoz kellegy pici rés hogy pont ott kapja a jelet
Nem csúszás, hanem lépésvesztés amiről én beszéltem. Ha nagyobb a terhelés, mint amit az áram meg bír tartani, akkor igenis előforul (feltéve, hogy egy ésszerű határon akarja az áramot tartani, hogy ha a mechanika valamiért megszorulna, akkor ne akarja az egészet széjjeltördelni).
Ugyanis ezek a motorok nagyon erősek tudnak lenni, és volt szerencsém pár tengelyt eltörni vele. De mint mondottam, ez a kialakítás így teljesen jó lesz! Árammentes állapotban valóban könnyen elforgatható, szóval az indulást célszerű lesz az optós megoldással megtámogatni.
Kis kihagyás után megint itt.
Jogos az ötlet, elvileg meg lehet oldani ugyis hogy a forgatás kezdésénél álljon "nullapontra" és akkor onnan kell elkezdeni forgattatni a tárcsákat. . . . elvileg akkor ez program ügyileg ugy néz ki hogy a motor addig forog, amíg "jelet" kap az optotól ha megvan a jel akkor "vár" a többi tárcsára hogy beálljon nullára és utána kezdi a forgatásokat. . . . jó az elképzelés?? |
Bejelentkezés
Hirdetés |