Sida 2 av 2

Re: Hitta stegmotors nollpunkt med en switch

Postat: 30 november 2012, 08:49:58
av TobiasEinarsson
Under förutsättning att din stegmotorkod fungerar och att knappen är korrekt inkopplad så kan du prova att byta ut din setup() till följande (det är egentligen bara while-villkoret som har ändrats):

Kod: Markera allt

void setup()
{
  stepper.setMaxSpeed(390);
  stepper.setAcceleration(200);
  pinMode(limitswitch, INPUT);
  
   stepper.setSpeed(-50);
      while(digitalRead(limitswitch) == LOW){ //medans limitswitchen ligger låg, dvs ej aktiverad
         stepper.runSpeed(); //så Uppdaterar vi runSpeed() som behöver uppdateras 
      }                      //så ofta som möjligt då det är den som genererar stegen.

   stepper.setSpeed(0);
   stepper.setCurrentPosition(0); //sätter nuvarande position som nolla.
}

Re: Hitta stegmotors nollpunkt med en switch

Postat: 2 december 2012, 01:46:26
av andpe
Eller slik :

Kod: Markera allt

void setup()
{
  stepper.setMaxSpeed(390);
  stepper.setAcceleration(200);
  pinMode(limitswitch, INPUT);
 
   stepper.setSpeed(-50);
      while(!digitalRead(limitswitch)){ //medans limitswitchen ligger låg, dvs ej aktiverad
         stepper.runSpeed(); //så Uppdaterar vi runSpeed() som behöver uppdateras
      }                      //så ofta som möjligt då det är den som genererar stegen.
   stepper.setSpeed(2);
      while(digitalRead(limitswitch)){ //medans limitswitchen ligger høy, dvs  aktiverad
         stepper.runSpeed(); //så Uppdaterar vi runSpeed() som behöver uppdateras
      }   
   stepper.setSpeed(0);
   stepper.setCurrentPosition(0); //sätter nuvarande position som nolla.
}

Da vil den reversere til bryter trykkes inn, noe som sikkert vil resultere i forskjellig posisjon hver gang.

Så kjører den små steg fremover til bryteren slippes igjen, så nulles posisjonen, og hovedloopen (main) kan starte.

Andreas

Re: Hitta stegmotors nollpunkt med en switch

Postat: 2 december 2012, 08:09:51
av TobiasEinarsson
Ja, det är nog en bättre lösning. Kör med den.

Re: Hitta stegmotors nollpunkt med en switch

Postat: 5 december 2012, 16:09:04
av Karlsson25
Tusen tack för hjälpen! Koden du skrev där fungerar perfekt och gör precis det jag vill att den ska göra! :)