Problem med stegmotorer och Easydriver
Problem med stegmotorer och Easydriver
Projektet är en fotostackningsuppställning för att flytta objekt eller kamera mellan var exponering.
Komponenter: LCD-display (1602) för meny och övervakning, stegmotor styrd av Arduino och EasyDriver 4.4 kopplad till mikrometerskruv eller släde. IR-remote-exponering av kameran.
Alla komponenter fungerar bra, också programflödet så långt jag kan testa. Jag började med unipolära motorer styrda av UNL2003 men fick inte tillräckligt små steg. Har nu plockat ur bipolära motorer ur olika gamla grejor, skanner, printer o DVD-läsare.
MEN, jag får dem inte att rotera med Easydrivern! Alla reagerar likadant, de bara brummar och axeln vibrerar. Har testa med flera olika mycket enkla Arduinoprogram och med många kopplingar. Hela tiden samma resultat. Vad är det som gör att motorn inte tar "steget"? Den studsar tillbaka vid var impuls.
Har testat med 3,3V, 5V, 9V och 12V drivspänning och med hela, halva, fjärdedels och åttondedels steg på ED. Frekvensen på ljudet från motorn ändras, men roterar? Icke! Har ändrat den lilla poten på kortet också utan resultat.
Vad är det jag inte förstår? Vad är fel?
Fattar att det är elementärt, eftersom problemet inte ens nämns i alla de tutorials jag plöjt, men som sagt, jag hittar inte felet.
Hjälp!
Bosse H
Komponenter: LCD-display (1602) för meny och övervakning, stegmotor styrd av Arduino och EasyDriver 4.4 kopplad till mikrometerskruv eller släde. IR-remote-exponering av kameran.
Alla komponenter fungerar bra, också programflödet så långt jag kan testa. Jag började med unipolära motorer styrda av UNL2003 men fick inte tillräckligt små steg. Har nu plockat ur bipolära motorer ur olika gamla grejor, skanner, printer o DVD-läsare.
MEN, jag får dem inte att rotera med Easydrivern! Alla reagerar likadant, de bara brummar och axeln vibrerar. Har testa med flera olika mycket enkla Arduinoprogram och med många kopplingar. Hela tiden samma resultat. Vad är det som gör att motorn inte tar "steget"? Den studsar tillbaka vid var impuls.
Har testat med 3,3V, 5V, 9V och 12V drivspänning och med hela, halva, fjärdedels och åttondedels steg på ED. Frekvensen på ljudet från motorn ändras, men roterar? Icke! Har ändrat den lilla poten på kortet också utan resultat.
Vad är det jag inte förstår? Vad är fel?
Fattar att det är elementärt, eftersom problemet inte ens nämns i alla de tutorials jag plöjt, men som sagt, jag hittar inte felet.
Hjälp!
Bosse H
Re: Problem med stegmotorer och Easydriver
Låter som att du blandat ihop trådarna för respektive fas på motorn men du säger att du provat många olika kopplingar så jag vet inte....
Är det motorer med 4 trådar eller fler?
Kan såklart vara en skadad EasyDriver.
EasyDriver kräver en matningspänning på minst 7V så 3.3V och 5V "ska" inte fungera. Stegmotorer är gjorda för att köras med konstant ström, potentiometern på kortet ställer in hur mycket ström drivkretsen skall mata motorn med. Ställer du in för hög ström kan du bränna motorn, ställer du in för låg ström orkar den inget.
Är det motorer med 4 trådar eller fler?
Kan såklart vara en skadad EasyDriver.
EasyDriver kräver en matningspänning på minst 7V så 3.3V och 5V "ska" inte fungera. Stegmotorer är gjorda för att köras med konstant ström, potentiometern på kortet ställer in hur mycket ström drivkretsen skall mata motorn med. Ställer du in för hög ström kan du bränna motorn, ställer du in för låg ström orkar den inget.
Re: Problem med stegmotorer och Easydriver
Det är bipolära motorer med fyra trådar, två från var lindning. Och de är lätta att identifiera via motståndsmätning.
Har också tänkt att EasyDrivern var kaputt, men testat med två olika, och samma resultat.
Eftersom motorerna låser sig, när spänningen kopplas på, mycket högt vridmotstånd åt ena hållet, och lägre åt andra, testade jag även med de låga spänningarna direkt från Arduinopinsen om de skulle vara överbelastade, men icke!
Tänkte att kanske är det fel strömstyrka genom lindningarna, så jag ändrade poten "hela vägen".
Har också testat att växla mellan trådarna inom motorns par utan resultat.
Alla tre testade motorerna ger samma resultat. Det är: Mitsumi M49SP-2K, Mitsumi M35SP-7n och en pytteliten med gängad axel ur en DVD-spelare.
Tycker inte att det ska finnas mer att variera.
Men jag vet inte under vilka omständigheter en bipolär stegmotor "stallar". Det skulle kunna ge en ledtråd till var jag ska hitta lösningen.
För jag begriper ju att detta inte är något övernaturligt!
Bosse H
Har också tänkt att EasyDrivern var kaputt, men testat med två olika, och samma resultat.
Eftersom motorerna låser sig, när spänningen kopplas på, mycket högt vridmotstånd åt ena hållet, och lägre åt andra, testade jag även med de låga spänningarna direkt från Arduinopinsen om de skulle vara överbelastade, men icke!
Tänkte att kanske är det fel strömstyrka genom lindningarna, så jag ändrade poten "hela vägen".
Har också testat att växla mellan trådarna inom motorns par utan resultat.
Alla tre testade motorerna ger samma resultat. Det är: Mitsumi M49SP-2K, Mitsumi M35SP-7n och en pytteliten med gängad axel ur en DVD-spelare.
Tycker inte att det ska finnas mer att variera.
Men jag vet inte under vilka omständigheter en bipolär stegmotor "stallar". Det skulle kunna ge en ledtråd till var jag ska hitta lösningen.
För jag begriper ju att detta inte är något övernaturligt!

Bosse H
- SeniorLemuren
- Inlägg: 8567
- Blev medlem: 26 maj 2009, 12:20:37
- Ort: Kristinehamn
Re: Problem med stegmotorer och Easydriver
Det kanske beror på att du försöker starta motorn med för högt varvtal, då reagerar den på det vis du beskriver. Starta på lågt varvtal och rampa upp den till önskat varvtal.
Re: Problem med stegmotorer och Easydriver
Tack SeniorLemuren!
Ska testa i morgon kväll med bibl. Accelstepper som väl möjliggör acceleration.
Men hur fixar jag att starta med lägre hastighet i ett "vanligt" Arduinoprogram? Att öka delayvärdet verkar inte räcka.
Bosse H
Ska testa i morgon kväll med bibl. Accelstepper som väl möjliggör acceleration.
Men hur fixar jag att starta med lägre hastighet i ett "vanligt" Arduinoprogram? Att öka delayvärdet verkar inte räcka.
Bosse H
- SeniorLemuren
- Inlägg: 8567
- Blev medlem: 26 maj 2009, 12:20:37
- Ort: Kristinehamn
Re: Problem med stegmotorer och Easydriver
Det där med Arduino får nog någon annan svara på. Jag använder PIC och skriver mina program i C.
Re: Problem med stegmotorer och Easydriver
Om du inte har möjlighet att posta ditt program, eller iallafall delar av det så är det svårt för oss att hjälpa med den biten då vi inte vet hur ditt program är uppbygt.
Re: Problem med stegmotorer och Easydriver
Här det allra enklaste programmet jag testat från EasyDrivers "tutorial":
void setup() {
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
}
void loop() {
digitalWrite(9, HIGH);
delay(1);
digitalWrite(9, LOW);
delay(1);
}
Det ger samma resultat som alla andra liknande jag testat. Motorerna står och stampar.
Uppkopplingen är 100% enligt skissen på sidan http://www.schmalzhaus.com/EasyDriver/E ... mples.html
Jag har ändrat delay(1) TILL 5, 10, 50, 100, 500 med samma resultat, bara längre tid mellan rycken i axeln. Motorerna blir också heta, så att jag knappt kan ta i dem efter kort tid.
Ingen annan som haft samma problem?
Tanken med mitt fotostackingbygge är att motorn ska ta ett, eller några få, steg mellan var exponering, så den kan inte starta långsamt för att sen öka, inte så som jag uppfattar de begreppen.
Bosse H
void setup() {
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
}
void loop() {
digitalWrite(9, HIGH);
delay(1);
digitalWrite(9, LOW);
delay(1);
}
Det ger samma resultat som alla andra liknande jag testat. Motorerna står och stampar.
Uppkopplingen är 100% enligt skissen på sidan http://www.schmalzhaus.com/EasyDriver/E ... mples.html
Jag har ändrat delay(1) TILL 5, 10, 50, 100, 500 med samma resultat, bara längre tid mellan rycken i axeln. Motorerna blir också heta, så att jag knappt kan ta i dem efter kort tid.
Ingen annan som haft samma problem?
Tanken med mitt fotostackingbygge är att motorn ska ta ett, eller några få, steg mellan var exponering, så den kan inte starta långsamt för att sen öka, inte så som jag uppfattar de begreppen.
Bosse H
Re: Problem med stegmotorer och Easydriver
Om då blir SÅ varma så kör du för mycket ström genom dom. Står det inte på motorn hur mycket ström de är gjorda för? Mät spänningen på TP1 och justera potentiometern så att du har en spänning som ungefär motsvarar motorns nominella ström
Jag har två EasyDriver (osäker på version just nu) och de fungerar bra.
Du matar din Arduino via USB-kabeln, eller?
Vad har du som matar EasyDrivern?
Du har inte glömt anslutningen från GND på Arduino'n till GND på EasyDriver'n?
Valid range 1.0V to Vcc
At VREF of 5V max current will be 833mA
At VREF of 3.3V max current will be 550mA
At VREF of 1V max current will be 166mA
Jag har två EasyDriver (osäker på version just nu) och de fungerar bra.
Du matar din Arduino via USB-kabeln, eller?
Vad har du som matar EasyDrivern?
Du har inte glömt anslutningen från GND på Arduino'n till GND på EasyDriver'n?
Re: Problem med stegmotorer och Easydriver
Har provat att mata via USB, 9V och båda samtidigt.
Att de blir varma har jag tolkat som att det är för att de står "låsta" och vibrerar i ett läge och att det skulle ge strömrusning genom lindningen...
EasyDrivern är kopplad med dir, step och ground.
Ska mäta spänningen TP1 -> ground i kväll. Tack för tipset!
Bosse H
Att de blir varma har jag tolkat som att det är för att de står "låsta" och vibrerar i ett läge och att det skulle ge strömrusning genom lindningen...
EasyDrivern är kopplad med dir, step och ground.
Ska mäta spänningen TP1 -> ground i kväll. Tack för tipset!
Bosse H
Re: Problem med stegmotorer och Easydriver
Testa utan arduinon. Lägg step via en tryckknapp och då borde du få ett steg varje gång du trycker på knappen.
Re: Problem med stegmotorer och Easydriver
>Har provat att mata via USB, 9V och båda samtidigt.
OK, nu är jag inte riktig med längre....
I ett tidigare inlägg skriver du att uppkopplingen är "100% enligt skissen". Sen säger du att du matar med USB, 9V och/eller båda samtidigt....
Arduino'n ska ha sin matning (oftast via USB kabeln) och EasyDrivern ska ha sin egen matning - precis som i skissen. Du kan inte mata EasuDrivern med ström från datorn via USB-kabeln, spänningen är för låg och kan inte lämna tillräckligt med ström.
Så, vad matar du EasyDrivern med? Det måste vara en spänningskälla på minst 7V och som kan leverera tillräckligt med ström - minst 1A för att vara på den säkra sidan nu.
En tryckknapp att simulera stegpulserna är en bra ide med kom ihåg att du kommer få kontaktsudsar så det kan komma att uppträda lite konstigt - men det ska gå att få motorn att stega.
> Att de blir varma har jag tolkat som att det är för att de står "låsta" och vibrerar i ett läge och att det skulle ge strömrusning genom lindningen...
De står inte och vibrerar i ett läge. Men för att motorn skall ha något hållmoment så måste ström flyta genom lindningarna, hur mycket ström bestäms av potentiometern på EasyDrivern. Olika motorer kräver olika mycket ström. Ju mer ström desto högre moment. För mycket ström = för varm motor.
OK, nu är jag inte riktig med längre....
I ett tidigare inlägg skriver du att uppkopplingen är "100% enligt skissen". Sen säger du att du matar med USB, 9V och/eller båda samtidigt....
Arduino'n ska ha sin matning (oftast via USB kabeln) och EasyDrivern ska ha sin egen matning - precis som i skissen. Du kan inte mata EasuDrivern med ström från datorn via USB-kabeln, spänningen är för låg och kan inte lämna tillräckligt med ström.
Så, vad matar du EasyDrivern med? Det måste vara en spänningskälla på minst 7V och som kan leverera tillräckligt med ström - minst 1A för att vara på den säkra sidan nu.
En tryckknapp att simulera stegpulserna är en bra ide med kom ihåg att du kommer få kontaktsudsar så det kan komma att uppträda lite konstigt - men det ska gå att få motorn att stega.
> Att de blir varma har jag tolkat som att det är för att de står "låsta" och vibrerar i ett läge och att det skulle ge strömrusning genom lindningen...
De står inte och vibrerar i ett läge. Men för att motorn skall ha något hållmoment så måste ström flyta genom lindningarna, hur mycket ström bestäms av potentiometern på EasyDrivern. Olika motorer kräver olika mycket ström. Ju mer ström desto högre moment. För mycket ström = för varm motor.
Re: Problem med stegmotorer och Easydriver
>Har provat att mata via USB, 9V och båda samtidigt.
Detta avsåg matning av Arduinon. ED har jag givit motorspänning från ett bilbatteri 12V.
Har testat med tryckknapp utan arduino med varierande resultat. Motorn stegar men inte var gång och inte "rent". Fick för mig att alla stegmotorer kanske inte klarar EasyDriverns 1/8-steg.
Ska testa i morgon att sätta MS1 och MS2 först LOW och sedan HIGH och se hur det går.
Förklaringen till mina problem måste ju vara löjligt enkel, jag kan bara inte hitta den!!
Bosse H
Detta avsåg matning av Arduinon. ED har jag givit motorspänning från ett bilbatteri 12V.
Har testat med tryckknapp utan arduino med varierande resultat. Motorn stegar men inte var gång och inte "rent". Fick för mig att alla stegmotorer kanske inte klarar EasyDriverns 1/8-steg.
Ska testa i morgon att sätta MS1 och MS2 först LOW och sedan HIGH och se hur det går.
Förklaringen till mina problem måste ju vara löjligt enkel, jag kan bara inte hitta den!!
Bosse H
Re: Problem med stegmotorer och Easydriver
Var i landet befinner du dig?
Tänkte om det kanske finns någon i närheten som har möjlighet att hjälpa till att titta på det IRL, och kanske även mäta lite om personen i fråga har ett oscilloskop.
Tänkte om det kanske finns någon i närheten som har möjlighet att hjälpa till att titta på det IRL, och kanske även mäta lite om personen i fråga har ett oscilloskop.