Adafruit Motor liabary V2

Hallo zusammen

Kann mir jemand sagen welche pin die Adafruit motor libary V2 benötigt um einen Stepper Moto zu betreiben?

oder hat jemand eine gute alternative für die Standart Libary?

Gruss
Philipp

Hallo Philipp,

aus deinem anderen thread weiß ich, welches Thema du angehen willst. Ich habe mich ein wenig "umgegoogelt" und herausgefunden, dass du eine spezielle AccelStepper version für das shield zusammen mit der adafruit library brauchst. Anscheinend hat jemand die Original-AccelStepper library so angepasst, dass du die dir und step pins ( für beide stepper ports auf dem shield!) nicht mehr brauchst, sondern nur diese spezielle Version.

Hier:

kannst du das nachlesen. Es gibt Beispielsketche zusammen mit AccelStepper und MultipleStepper. Da ist auch ein link zu der speziellen AccelStepper Version.

Das sollte dann dein Problem mit den parallel lfd Motoren lösen.

Wenn es klappt, dann poste deine Antwort am besten in den anderen threads, damit die Lösung zum richtigen thread gepostet wird. Und hier am besten die links zu deinen anderen threads...

Danke für deine Antwort, leider habe ich noch etwas Problem das ACCELSTEPPER Beispiel abzuspielen.

irgend wie finde ich folgende library nicht.

#include <AccelStepper.h>

Ich glaube ich möchte mich vorerst auf einen Antrieb begrenzen, da ich etwas im Zeiitdruck bin, muss meine Arbeit nächsten Donnerstag abgeben.

Momentan habe ich ein Pulsen im Stepper wenn dieser nicht läuft hat jemand einen Ahnung warum?

Adafruit_MotorShield AFMS = Adafruit_MotorShield();       // Erstellung des Motorshield Objekt
 
Adafruit_StepperMotor *myMotor1 = AFMS.getStepper(200, 1); // Motor auf der linken Seite wird über den Port 1 (M1 und M2) angesteuert.




int freig1 = 7;
int freig2 = 5;
int level = 4;
int pump1 = 8;
int pump2 = 9;
int pump3 = 10;
int zylinder = 11;
int start = 12;


byte status1; 
byte status2;
byte status3;
byte status4;
byte status5;


void setup() {                                                  
  pinMode(freig1,INPUT);
  pinMode(freig2,INPUT);
  pinMode(level,INPUT);
  pinMode(pump1,OUTPUT);
  pinMode(pump2,OUTPUT);
  pinMode(pump3,OUTPUT);
  pinMode(zylinder,OUTPUT);
  pinMode(start,INPUT);
  Serial.begin(9600);
  Serial.println("Stepper test!");

  AFMS.begin();                                           
 
  
  myMotor1->setSpeed(150);                                // 300U/min
  myMotor1->setSpeed(150);                                // 300U/min 


  
  }




void loop() {

            status1 = digitalRead(start);          
            status2 = digitalRead(freig1);
            status3 = digitalRead(freig2);              
             
             if(status1==HIGH)
                if (status2==LOW)                         // Schlitten ist 
                    if(status3==LOW)
                      {  
                        delay(2000);
                        myMotor1->step(2100, BACKWARD, DOUBLE); 
                        
                        delay(2000);
                          {
                            digitalWrite(zylinder,HIGH);  //Zylinder fährt aus 
                            delay(10000);
                            digitalWrite(zylinder,LOW);   //Zylinder fährt wieder ein 
                            delay(5000);     
                          }
                              { 
                               myMotor1->step(2100, FORWARD, DOUBLE);
                               
                               delay(5000);
                                  {
                                    if(status2 == LOW)
                                        if(status3 == LOW)
                                            {
                                              digitalWrite(pump1,HIGH);
                                              delay(5000);
                                              digitalWrite(pump1,LOW);
                                              delay(2000);
                                            }
                                        
                                  }
                              }
                              
                      } 
                if (status3==LOW)
                  if(status1==HIGH)
                    if(status2==HIGH)
                      {  
                        digitalWrite(pump2,LOW);          //Warten auf bis der Schlittenbelgt ist
                        delay (2000);
                        
                      }       
       
      }

Wenn du dir mal die Beispiele mit AccelStepper angesehen hättest, dann hättest du auch den link zu der für dein shield angepassten library gefunden. Steht ganz oben in den sketches mit AccelStepper: