Hallo, ich möchte nun ein 1. Richtiges Project mit den ardoino mache und Hätte eine frage.(Planungsphase)
Mit 3 Shiehlds und 5 Bipolaren Schrittmotoren.
1.Wie spreche ich die Einzelelement Motoren -Shields im Skript an (Adafruit Motor Shield V2 Libery)?
Das findest du raus, wenn du die Beschreibung bzw. Beispiele der entsprechenden Library durchliest.
ich weis nicht wo ich die adesse eigeben muss
Welche Adresse und wovon ?
Wenn wir dir helfen sollen, musst du schon genauere Infos posten.
sory, mann muss auf den Shield die Shieldadrese biner eingebeben (Löten) so wie ich es verstanden habe mus man Vür jedes Shield Ein eigenenes Objt erstellen Mit der entsprechenden Adresse was ich nicht verstehe ist wie man den einelen motor z.B. Shield 2 Motor 1 Ansteuert
#include <Wire.h>
#include <Adafruit_MotorShield.h>
Adafruit_MotorShield AFMS = Adafruit_MotorShield(Adrese des Shildes); //Shhield1
Adafruit_MotorShield AFMS = Adafruit_MotorShield(Adrese des Shildes)// Shild 2
Adafruit_StepperMotor *myMotor = AFMS.getStepper(200, 1);// Motor1 Shield 1
Adafruit_StepperMotor *myMotor = AFMS.getStepper(200, 2);// Motor2 Shield 1
Adafruit_StepperMotor *myMotor = AFMS.getStepper(200, 2);// Motor1 Shield 2
Adafruit_StepperMotor *myMotor = AFMS.getStepper(200, 2);// Motor1 Shield 2
AFMS.begin();
myMotor->setSpeed(10); // 10 rpm
}
void loop() {
myMotor->step(100, FORWARD, SINGLE); //Motor1 Shield 1 Hier Ist das Problem Wie kan man
myMotor->step(100, BACKWARD, SINGLE);// Motor1 Shield 2 Die motoren auserander halten
Warum machst du es allen so schwer ?
Poste doch mal einen Link des Shield und der Library.
Dann müssen wir nicht für dich suchen. Ich bin einfach zu faul dazu.
Lybery ist im Maneger "Adafruit Motor " V2
Wie du die Adressen einstellen musst, ist doch in der Doku sehr gut beschrieben.
Z.B. hier Auf dieser Seite.
Ok ich glaube ich habs jetzt begifen
include <Wire.h>
#include <Adafruit_MotorShield.h>
MotorShield1 = Adafruit_MotorShield(Adresse 1);
MotorShield2 = Adafruit_MotorShield(Adresse 2);
MotorShield3 = Adafruit_MotorShield(Adresse 3);
MotorShield1 *myMotor1 = AFMS.getStepper(200, 2);
MotorShield2 *myMotor2= AFMS.getStepper(200, 2);
MotorShield3 *myMotor3= AFMS.getStepper(200, 2);
AFMS.begin();
//AFMS.begin(1000);
myMotor->setSpeed(10); // 10 rpm
}
void loop() {
myMotor1->step(100, FORWARD, SINGLE);
myMotor2->step(100, BACKWARD, SINGLE);
myMotor3->step(100, BACKWARD, SINGLE);
Das ist gut.
dann lies dir bitte auch diese Beschreibung hier durch. Damit du zukünftig weißt, wie der Sketch hier eingebunden wird, damit dieser richtig zu lesen ist.
Danke
Was häst du von meier erkler skript
#include <Wire.h>
#include <Adafruit_MotorShield.h>
Adafruit_MotorShield Shild3(0x62);
Adafruit_MotorShield Shild2(0x61); //
Adafruit_MotorShield Shild1(0x60); // Default address, no jumpers
//0x62 und 0x61 müsen jumper gesetz werden
// Shie hier https://learn.adafruit.com/adafruit-motor-shield-v2-for-arduino
//Die schreibweise derzeil für die Shilds Ist so => "Adafruit_MotorShield "(wierd imer geschiben) "Shild2" ist die betzeichung des Shildes Nahme des ist Frei wehlbar
//"(0x60)"ist die jumper numer
//#######################################################################################################################################################################
Adafruit_StepperMotor *myStepper1 = Shild1.getStepper(200, 1);
Adafruit_StepperMotor *myStepper2 = Shild1.getStepper(200, 2);
Adafruit_StepperMotor *myStepper3 = Shild2.getStepper(200, 1);
Adafruit_StepperMotor *myStepper4 = Shild2.getStepper(200, 2);
Adafruit_StepperMotor *myStepper5 = Shild3.getStepper(200, 1);
//Die schreibweise derzeil für die Motoren Ist so => "Adafruit_MotorShield "(wierd imer geschiben)
//"*myStepper1" Name des Motors der in loop teil Verwendet wiert (Wichtig Das * nicht vergesen) der restliche Nahme des ist Frei wehlbar
//Shild1.getStepper=>"Shild1" wurde oben divinit un muss übereinstimmen ".getStepper" Defenit Den Motor als Schitmotor(Wichtig Das . nicht vergesen)
//"(200, 1)"=> 200 steps vur eine umdrehung => "1" Definirt das der motor An den Lemmen M1 und M2 Angeschlosen ist
// Tipp es ist sinfoll Die Parameter Nach der reienfolge Der Shilds zu definiren
//#######################################################################################################################################################################
// And a DC Motor to port M3
Adafruit_DCMotor *myMotor1 = Shild3.getMotor(3);
void setup() {
while (!Serial);
Serial.begin(9600); // set up Serial library at 9600 bps
Serial.println("MMMMotor party!");
Shild1.begin(); // Start the Shild1 shield
Shild2.begin(); // Start the Shild2 shield
Shild3.begin(); // Start theShild3 shield
// turn on the DC motor
myMotor1->setSpeed(200);
myMotor1->run(RELEASE);
// turn on the myStepper motor
myStepper1->setSpeed(10); // 10 rpm
myStepper2->setSpeed(10); // 10 rpm
myStepper3->setSpeed(10); // 10 rpm
myStepper4->setSpeed(10); // 10 rpm
myStepper5->setSpeed(10); // 10 rpm
}
int i;
void loop() {
}
This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.