Fórum témák

» Több friss téma
Fórum » Léptetőmotorok (vezérlése)
Lapozás: OK   112 / 164
(#) habazutty hozzászólása Jan 29, 2015 /
 
Sziasztok!

Segítséget szeretnék Tőletek kérni.
Van egy régi fényeffektem amiben PIC-es vezérlés volt eredetileg, de elszállt cakk pakk az egész. Van benne egy ábra tárcsa amit léptetőmotor mozgat és egy opto kapu amivel a null pozíciót meg lehet keresni. Egy Arduino Uno-val odáig eljutottam, hogy egész lépésben beállítom null pozícióba, majd ábránkánt léptetem 12 majd 13 lépést. a végén pedig vissza az egész. Sajna a motor néha lépést téveszt és kb. 3 ciklusonként újra kell pozícionálnia (egy-két lépéssel az optó mellé lép visszaforgatásnál).
A motor 12 V-os, tekercsenként 33 Ohm és a névleges árama 400 mA ,de két tekercset hajtva 800 mA ami stimmel is. Egy L293D hajtja meg a motort, percenként 60 fordulat sebességel.
Mitől lehet a tévesztés? A motor eléggé melegszik, mivel a vez fesz. folyamatosan rajta van. Nem tudom ki kell-e bírnia. Az arduino stepper könyvtárát használom és mivel két tekercset energizál hiába egész lépés, de a pólusok közé áll be és ha elvenném a tápot, akkor bebillen az egyik fix pozícióba.
Ha egyszerre csak egy tekercsre kapcsolok áramot, akkor gondolom megy "sima" egész lépésbe, de ha megállítom honnan fogom tudni, hogy melyik legyen a következő lépés logika?
Sajna a mikrokontroller programozást is csak ezen apropón kezdtem el, így eléggé nehézkesen megy.
Minden segítséget köszönök előre is! Elnézést, ha hosszúőra sikerült.
(#) pbalazs válasza habazutty hozzászólására (») Jan 29, 2015 /
 
Szia!

Percenként 60? Azaz másodpercenként 1? Azzal nem hibázhat.
Próbáld meg, hogy nem indulsz azonnal max. sebességgel, hanem használj gyorsítási és lassítási rámpát.

Megálláskor pedig állítsd be a két tekercs közül valamelyikbe, és így nem fog odébb lépni.
Vagy használj egytekercses meghajtást, úgysem kell nagy nyomaték, meg finom járás.
(#) Massawa hozzászólása Jan 29, 2015 /
 
Tudtok valahol mintakodokat ASM-ben léptetömotor hajtásra amiben gyorsulás meg lassulás is van? Az Atmelne vann C kodjai, de azokat én nem értem.
Kösz.
(#) habazutty válasza pbalazs hozzászólására (») Jan 29, 2015 /
 
Szia!

Igen, másodpercenként 1 fordulat. A gyorsításnak nem látom értelmét, mert két ábra között csak 12 lépés van.
Ha egy tekercses üzemben hajtom, akkor gondolom megírom a programban az egyes lépések plogikajat, majd egymas utan nemi szünettel léptetem? De, ha megállítom honnan fogom tudni megmondani melyik lépéssel folytassa a következő 12 lépést?
Még csak hasonló példaprogramot sem találtam.
(#) pbalazs válasza habazutty hozzászólására (») Jan 29, 2015 /
 
Az ábra szempontjából lehet, hogy nincs értelme, de valahogy ki kell találnod, miért téveszt lépést. Ha nem akarsz rámpát, akkor csak lassítsd le.
De mondom, 1-2 ezres fordulatig jó kellene legyen. Nem lehet, hogy a referencia kereső algoritmusban számolsz el valamit?
Nem 200 lépéses motort használsz? Vagy nem azonos távolságra vannak az ábrák?

Nem értem, mi a gond megállás után. A progi mindig tudja, hogy hol tart, nem? Kikapcsoláskor meg referenciára kell állni.
(#) Massawa válasza habazutty hozzászólására (») Jan 29, 2015 /
 
Neked az a 4 (8) állapotot be kell irni egy táblázatba, és egy mutatoval (pointer) kell lépkedned egymás után a táblázatban.
Addig amig a motir áram alatt van addig nincs gond. Ha megszünik majd ujra indul akkor onnan fogja kezdeni, ahol éppen van.
(#) habazutty válasza pbalazs hozzászólására (») Jan 30, 2015 /
 
Leírom jelenleg, hogy megy:
Először egyet-egyet lép a motor míg meg nem találja az opto jelét. Innen egy "if"el kilép és 4 sec. Várakozás után 12 lép, majd 4 sec várakozás és 13-at lép stb. (azért 12 majd 13 lépés, mert elvben 12,5 kellene lépni, de így a beállással nincs gond és nem kellett szórakozni a fél lépéssel). 8 ábra után visszaforgatok annyit amennyit előre ment. Elvben az opto-nál kellene megállnia, de 2-3 ciklusonként nem sikerül és újra pozicionál.
Massawa talán eltalálta mit nem értek. Jelenleg a step.() parancsot használom és lehet, hogy amiatt téveszt, hogy mikor kivárás után elindul nem a megfelelő lépéssel kezd.
Ez a táblázat meg pointer jól hangzik, csak nem ismerem.
Bocsánat, ha értetlen vagyok, de az összes motorvezérlési oldalt néztem már és szinte mindenhol csak az alapokig jutnak.
(#) habazutty válasza habazutty hozzászólására (») Jan 30, 2015 /
 
A motor 200 lépéses.
(#) pbalazs válasza habazutty hozzászólására (») Jan 30, 2015 /
 
Segíts még egy kicsit megértenem.
8 ábra van a tárcsán? Akkor 25-öt kell lépni, nem?
(#) kaqkk válasza habazutty hozzászólására (») Jan 31, 2015 /
 
Hajtsd rendesen kéttekercses módban és minden ábrához tegyél pozícionáló jelet az optónak , így csak az iránnyal kell foglalkoznod a lépésszámmal ne. Ja és ha rendesen hajtod akkor kereken 25 lépés kell ...
A hozzászólás módosítva: Jan 31, 2015
(#) habazutty válasza pbalazs hozzászólására (») Jan 31, 2015 /
 
Ez egy kicsit több,mint egy félkör. 9 ábra van rajta,de ebből egy kitakarás. Teljes körön 16 ábra lenne,így jön ki a 12,5 lépés.
(#) Massawa válasza kaqkk hozzászólására (») Jan 31, 2015 /
 
Ha tisztességesen betartja a vezérlés modját, akkor csak egyetlen optora van szüksége, amivel az induláskor összeszinkronizálja a motort a vezérléssel. Innen már csak lépegetnie kell oda vissza.
Egyszerübb az unipoláris (5 vezetékes) motor meghajtása.
(#) habazutty válasza kaqkk hozzászólására (») Jan 31, 2015 /
 
A mechanika adott, nem szeretnék hozzányúlni. Már elfogadható lenne csak bosszant,hogy miért téveszt. Arra tippelek,hogy pl. megáll a 3 lépés logikán egy tekercses módban, de továbbindulaáskor nem a 4. Logikát kapja, hanem az 1-est és esetleg visszalép mielőtt előremenne,de a lépésszámba beletartozik.
A cél egy olyan progi ami emlékszik az utolsó szekvenciára és onnan lépeget tovább.
(#) Massawa válasza habazutty hozzászólására (») Jan 31, 2015 /
 
Van egyáltalán pointer ( mutato) a programodban?
Azt a 4 lépést:
$05
$06
$0A
$09

egy mutatonak kell kiválasztania, ami mindig csak egyet léphet elöre/hátra az utolso után az elsö jön
(#) habazutty válasza Massawa hozzászólására (») Jan 31, 2015 /
 
Nincsenek mutatók. Az arduino ide stepper könyvtárát használom. A step parsnccsal megadom,hogy mennyit lépjen és kész. Ezért gyanakszom rá, mert nem ismerem a ligikát amivel hajtja a kimeneteket. Másodpercenként 2 lépés sebességgel is ez a helyzet. Amikor egxesével leprogramoztam a lépéseket annak egy 293D látta kárát.
(#) Massawa válasza habazutty hozzászólására (») Jan 31, 2015 /
 
Amugy most én is szivok egy mega328al. Ha ki is törlöm a flasht, még mindig hibát jelez.
Ha elindul az enyém akkor majd megnézem lépésröl lépésre.
A tiedben a step és Dir a mutato ( a softwaren belül). Ott kell megnézni, hogy hogyan kezeli a lépést ha irányt váltasz. Mint korábban irtam a mutato mindig csak egyet lephet elöre vagy hátra és ezt a proginak kell kezelnie. Már láttam olyan progit, aminé a DIR ujrainditja az algoritmust, ami autkmatikusan hibával jár.
Én sajnos csak ASM-ben tudok ugy ahogy programozni, másban nem.
A hozzászólás módosítva: Jan 31, 2015
(#) habazutty válasza Massawa hozzászólására (») Jan 31, 2015 /
 
A programozás annyiból áll, hogy meghívom a stepper könyvtárat, definiálom a 8,9,10,11 lábat kimenetnek, a 12- est bemenetnek (ez az opto), megadom, hogy 200 lépés egy körülfordulás, sebességnek percenként 60.
Ezután csak step(1)' if digitalRead(12) high /mig meg nem találja az optót addig lépeget 1-et a 60 fordulatnak megfelelő frekivel, de ezt is ő szàmolja ki/
Delay(4000);
Mystepper step(12);
Delay(4000);
Mystepper step(13);
.........
Mystepper step(-76); //ez a visszaforgatás//
Ennyi a program, és nem igazán látni mi alapján dolgoztatja a mocit...

Ebben is atmega328 van.
(#) habazutty válasza habazutty hozzászólására (») Jan 31, 2015 /
 
Esetleg lenne olyan progid amiben meg tudnám nézni a lépések kezelésèt?
A neten nem találtam csak oda-visszaforgatósdit...
(#) Massawa válasza habazutty hozzászólására (») Jan 31, 2015 /
 
Én is éppen egy mega328-t büvölök. Már végre elfogadta a kodot, de valamit én turtam el, igy még mindig nem megy.
Van valamilyen szimulatorod (aVR Studio) abban lépegethetsz, én is azt fogm csinálni délután...
(#) habazutty válasza Massawa hozzászólására (») Jan 31, 2015 /
 
Sajnos nincs. Egyenlőre azt se tudom hová rakja a lefordított fájlt, csak simán feltöltöm az arduinora, és megy vagy nem megy...
A hozzászólás módosítva: Jan 31, 2015
(#) kala1982a hozzászólása Feb 5, 2015 /
 
Sziasztok, Epson FX 1000 és 1050 nyomtatót bontottam múltkor. A nyomtató fejet mozgató léptetőmotor feszültségére lennék kíváncsi mert nincs a motoron semmilyen felirat. Az célravezető lehet ha a trafóját kimérem (nagy trafó két piros és két kék vezetéke van, vagy a motor tekercseinek ellenállásából esetleg lehet következtetni, hogy 24V-os vagy csak 12)?

Ilyen motor.
(#) csatti2 válasza kala1982a hozzászólására (») Feb 5, 2015 /
 
Léptetőmotoroknak elsősorban nem a feszültsége érdekes hanem az árama. Bizonyos határok között nem számít a feszültség (sőt, a nagyobb feszültség még előnyös is). A bontott motorok pont ebből kifolyólag problémásak, mivel nem tudni mennyi is a névleges áramuk. Mérd ki a tekercseket, hogy megállapítsd melyik ér melyik, majd kösd rá egy motorvezérlőre. Ezután állítsd be a legkisebb megengedett áramot, majd pörgesd ide oda a motort pár percig. Nézd meg milyen meleg. Ha nem melegedett fel nagyon, akkor növelheted az áramot. Játszd ezt addig, ameddig elfogadhatónak tartod a melegedését és így meglesz a kb. árama a motornak.
A hozzászólás módosítva: Feb 5, 2015
(#) kala1982a válasza csatti2 hozzászólására (») Feb 5, 2015 /
 
Nyomtatóból kitermelt tranzisztorokkal (ami gyárilag vezérelte a motort) vagy FET-ekkel jobb meghajtani a motort?
(#) dinokal válasza kala1982a hozzászólására (») Feb 5, 2015 /
 
A fet jobb, de ha megvan a gyári vezérlője, miért nem azt használod? Azon mérj feszültséget.
(#) kala1982a válasza dinokal hozzászólására (») Feb 5, 2015 /
 
Akkor össze kell raknom a nyomtatót? Ok, valahogy megpróbálom.
(#) dinokal válasza kala1982a hozzászólására (») Feb 5, 2015 /
 
Nem kell összerakni , csak a vezetékeket bekötni, de még az sem biztos. Általában azért a paneleken rajta szokott lenni hol milyen feszültség csatlakozik. Ha bekötöd, akkor az optókat árnyékold egymástól, mert ha nem érzékel lapot, nem működik az egész.
Az eredetiből csak a meghajtó fokozat kell, a vezérlést neked kell majd megcsinálni.
A hozzászólás módosítva: Feb 5, 2015
(#) ktamas66 válasza kala1982a hozzászólására (») Feb 5, 2015 /
 
Az Epson leírás szerint:
Type 4-phase 200-pole stepper motor
Voltage Driving: +36DC
Holding: +5V DC
Coil Resistance 11 0hm +-7% 25°C per phase
Current Driving: 0.68A (max.)
Hoding: O. 15A (typical)
Excitation 1-2 phase, 2-2 phase
(#) kala1982a válasza ktamas66 hozzászólására (») Feb 5, 2015 /
 
Kerestem, de én nem találtam. Köszönöm szépen. A leírtak szerint 150mA 5V tartja a pozícióját. A végén még nekem is lesz egy kis CNC gépem
(#) Massawa válasza habazutty hozzászólására (») Feb 5, 2015 /
 
Közben már elindult a vezérlöm és valoszinü, hogy az arduino kodja hibás. Az én minta kodom is ezt csinálta, irányváltáskor lépést vesztett, mert a gyári kodba nincs beépitve az irányváltáskor a lepéstartás. Már átirtam a kodot, igy most már jo. Nem tudom, hogy az arduinoba mit lehet vele csinálni.
(#) Janszq hozzászólása Feb 16, 2015 /
 
Sziasztok!
Segítségeteket kérném, nemrég vettem egy szettet, gondoltam kipróbálom az otthoni cnc építést, és vettem egy 1axis felszerelést. Nos rajz szerint összekötöttem de sajnos valamilyért csak akkor pörög fel a motor ha a mach3ban az x-y-z tengelyt az output settingnél a dir és pul értéket azonos értékre állítom (pl: 2;3) a motoron is azt veszem észre hogy melegedne, nemtudom mi lehet a baj próbáltam utánna olvasni stb. A tab - távirányítónál nyomom a fel és balra nyilat zúg a motor és pörög. Elképzelhető hogy az A+ A- és a B+ B- értékek vannak elkötve? Előre is köszönöm!
Következő: »»   112 / 164
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