INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
adafruit V2.3 Shield
07.09.2016, 18:12 (Dieser Beitrag wurde zuletzt bearbeitet: 07.09.2016 18:21 von Hangloose.)
Beitrag #1
adafruit V2.3 Shield
Hallo zusammen kurze Frage


Kann mir jemand sagen wie ich beim Code unten zwei Motoren Synchron laufen lasse?

Gruss

Code:
#include <Wire.h>
#include <Adafruit_MotorShield.h>
#include "utility/Adafruit_MS_PWMServoDriver.h"

// Create the motor shield object with the default I2C address
Adafruit_MotorShield AFMS = Adafruit_MotorShield();
// Or, create it with a different I2C address (say for stacking)
// Adafruit_MotorShield AFMS = Adafruit_MotorShield(0x61);

// Connect a stepper motor with 200 steps per revolution (1.8 degree)
// to motor port #2 (M3 and M4)
Adafruit_StepperMotor *myMotor1 = AFMS.getStepper(200, 1);
Adafruit_StepperMotor *myMotor2 = AFMS.getStepper(200, 2);

void setup() {
  Serial.begin(9600);           // set up Serial library at 9600 bps
  Serial.println("Stepper test!");

  AFMS.begin();  // create with the default frequency 1.6KHz
  //AFMS.begin(1000);  // OR with a different frequency, say 1KHz
  
  myMotor1->setSpeed(1000);  // 10 rpm  
    
  myMotor2->setSpeed(1000);  // 10 rpm  
}

void loop() {

  myMotor1->step(1000, BACKWARD, SINGLE);
  myMotor2->step(1000, FORWARD, SINGLE);

sprich einer läuft Vorwärts und einer läuft Rückwärts.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.09.2016, 19:52
Beitrag #2
RE: adafruit V2.3 Shield
Was läuft denn, bzw. nicht?

Das kann ich deinem post nicht entnehmen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.09.2016, 20:57
Beitrag #3
RE: adafruit V2.3 Shield
ich habe einen riemen und links und rechts einen Motor eingebaut, nun hätte ich gerne das dieser Riemen von beiden Motoren Synchron angetrieben sind.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.09.2016, 21:01
Beitrag #4
RE: adafruit V2.3 Shield
(07.09.2016 20:57)Hangloose schrieb:  ich habe einen riemen und links und rechts einen Motor eingebaut, nun hätte ich gerne das dieser Riemen von beiden Motoren Synchron angetrieben sind.

Das hatte ich schon verstanden.
Aus deiner vorigen mail geht aber nicht hervor, was aktuell passiert, wenn dein sketch gestartet wird. Läuft überhaupt einer der Motoren, oder beide oder was tut sich genau.

Da ich die Adafruit library und das shield nicht kenne, bin ich momentan ratlos, was los ist.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
08.09.2016, 08:08
Beitrag #5
RE: adafruit V2.3 Shield
Ich habe mal bei Adafruit nachgelesen. Du kannst für das shield auch die AccelStepper library nutzen. Die bietet neben der Möglichkeit, Anfahrtrampen (Beschleunigung) einzustellen, auch das parallele Steuern von mehreren Motoren, z.B. um bei einer CNC Maschine 2 Motoren synchron zu fahren - wahrscheinlich genau dein Einsatzfall.

Ich habe ein wenig Erfahrung mit dieser library, leider kenne ich aber das motorshield von Adafruit nicht. Man muss für AccelStepper genau wissen, welche Pins vom Arduino "step" bzw. "dir" sind.

Vielleicht kann dir Tante Google mehr darüber verraten, wie man diese lib mit dem shield einsetzen kann.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
08.09.2016, 10:26
Beitrag #6
RE: adafruit V2.3 Shield
(07.09.2016 18:12)Hangloose schrieb:  Hallo zusammen kurze Frage


Kann mir jemand sagen wie ich beim Code unten zwei Motoren Synchron laufen lasse?

Gruss
.
.
.

sprich einer läuft Vorwärts und einer läuft Rückwärts.

(07.09.2016 20:57)Hangloose schrieb:  ich habe einen riemen und links und rechts einen Motor eingebaut, nun hätte ich gerne das dieser Riemen von beiden Motoren Synchron angetrieben sind.

Mehr Fakten gab es bisher nicht.Undecided
Ich verstehe unter "synchron laufen" gleich schnell und in die gleiche Richtung.

also müsste man aus:
Code:
myMotor1->step(1000, BACKWARD, SINGLE);
myMotor2->step(1000, FORWARD, SINGLE);
entweder
Code:
myMotor1->step(1000, BACKWARD, SINGLE);
myMotor2->step(1000, BACKWARD, SINGLE);
oder
Code:
myMotor1->step(1000, FORWARD, SINGLE);
myMotor2->step(1000, FORWARD, SINGLE);
machen.

Gruß
Arne

Gruß Arne
ExclamationMit zunehmender Anzahl qualifizierter Informationen bei einer Problemstellung, erhöht sich zwangsläufig die Gefahr auf eine zielführende Antwort.Exclamation
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
08.09.2016, 17:13
Beitrag #7
RE: adafruit V2.3 Shield
Wenn ich aber die Adafruit Informationen richtig deute, dann arbeitet die library mit blockierendem Code.
Würde bedeuten, dass zunächst Motor1 losläuft bis zum Erreichen seines Ziels und anschließend der 2. Motor.

Ich kann mich natürlich täuschen, aber so habe ich das verstanden.
Um beide Motoren quasi parallel laufen zu lassen, müsste man die loop() sehr kurz halten und dann je Motor nur jeweils einen Step, dann der andere Motor, wieder der erste etc., bis "1000" jeweils erreicht ist.

Die AccelStepper library kann das beim Verwenden von "MultiStepper" wohl eleganter - wenn auch ich mit dem MultiStepper Modus noch nicht gearbeitet habe.
Deshalb vermutlich der Hinweis in der Adafruit Beschreibung auf diese library, sonst würde man ja wohl die eigene library pushen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Aptotec V1.2 Can Bus Shield / Auto Marc2014 23 1.304 01.11.2017 07:30
Letzter Beitrag: Bitklopfer
  Adafruit NeoMatrix 8x8 - Einzelne Pixel ansteuern scritch 5 369 05.10.2017 16:02
Letzter Beitrag: Tommy56
  Kommunikation über das WiFi-Shield Flap 13 1.608 12.09.2017 22:12
Letzter Beitrag: Flap
  Programmierung von PCa9685 Shield im Bezug auf Arduinos Crazydiver 5 554 10.04.2017 12:20
Letzter Beitrag: hotsystems
  Can-Bus Shield ok, aber keine Daten Clubsport 54 5.320 02.04.2017 22:28
Letzter Beitrag: Bitklopfer
  Keypad Shield luj1990 11 773 29.03.2017 21:15
Letzter Beitrag: Tommy56
  Dokumentatiion für Adafruit-Library PCD8544 (für Nokia 5110) Andrea 5 396 17.03.2017 14:08
Letzter Beitrag: Tommy56
  [Gelöst] SD Card (Ethernet Shield) IO funktioniert nicht __jb__ 7 955 05.01.2017 09:51
Letzter Beitrag: rpt007
  CP2102 und USB Host Shield ?? DL1AKP 0 382 01.12.2016 08:55
Letzter Beitrag: DL1AKP
  Arduino UNO und Ethernet Shield 2 POE und Fritzbox 3272 tr3 2 666 19.11.2016 10:46
Letzter Beitrag: tr3

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste