- LiFePO4 Speicher Test         
Ergebnis 1 bis 10 von 37

Thema: Start mit Arduino?

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    21.05.2014
    Alter
    56
    Beiträge
    25
    hallo Rabenauge,

    Du meinst sicher dieses Programm:
    Code:
    #include <AFMotor.h>
    
    // Adafruit Motor shield library
    // copyright Adafruit Industries LLC, 2009
    // this code is public domain, enjoy!
    
    AF_DCMotor motor(4);
    
    void setup() {
      Serial.begin(9600);           // set up Serial library at 9600 bps
      Serial.println("Motor test!");
    
      // turn on motor
      motor.setSpeed(200);
     
      motor.run(RELEASE);
    }
    
    void loop() {
      uint8_t i;
      
      Serial.print("tick");
      
      motor.run(FORWARD);
      for (i=0; i<255; i++) {
        motor.setSpeed(i);  
        delay(10);
     }
     
      for (i=255; i!=0; i--) {
        motor.setSpeed(i);  
        delay(10);
     }
      
      Serial.print("tock");
    
      motor.run(BACKWARD);
      for (i=0; i<255; i++) {
        motor.setSpeed(i);  
        delay(10);
     }
     
      for (i=255; i!=0; i--) {
        motor.setSpeed(i);  
        delay(10);
     }
      
    
      Serial.print("tech");
      motor.run(RELEASE);
      delay(1000);
    }
    meine verdrahtung sieht folgendermaßen aus:

    - zwei Motorshields L298N von Sainsmart. Zwei deshalb, weil ich später jedes Rad einzeln mit den sog. "Momentumwheels" einsetzetn möchte...


    - die Jumper auf den Motorshields verbinden jeweils 5V und ENA bzw. 5V und ENB (wie geliefert)

    - Motor LV angeschlossen an Shield-1 OUT3/4
    - Motor RV angeschlossen an Shield-1 OUT1/2
    - Motor LH angeschlossen an Shield-2 OUT3/4
    - Motor RH angeschlossen an Shield-1 OUT1/2

    die beiden Motorshields sind paralell am Akku angeschlossen über GND und VCC

    da ich dem Programm nicht entnehmen konnte über welche der unzählicen Pins des Megaboards die Motorshields angesteuert werden sollen haben ich rumprobiert, mit folgendem Ergebnis:

    Pin 8 (Digital) des Sensorshields V5 (aufgesteckt am megaboard) ist verbunden:

    - mit Shield-1-IN1 - der Motor RH dreht in Fahrtrichtung gesehen Rückwärts
    - mit Shield-1-IN2 - der Motor RH dreht in Fahrtrichtung gesehen Vorwärts
    - mit Shield-1-IN3 - der Motor LH dreht in Fahrtrichtung gesehen Rückwärts
    - mit Shield-1-IN4 - der Motor RH dreht in Fahrtrichtung gesehen Vorwärts

    entsprechend verhält es sich bei den Motoren VL und VR beim Anschluss an Motorshield-2.



    ich kann daraus nur schließen, dass allle vier Motoren richtig verdrahtet sind, woran erkenne ich aber aus dem code warum der Pin 8 jetzt angesteuert wird?

    ach so, noch etwas:

    beim ablauf des Programms dreht Motor RH mit Pausen Rückwärts (Verbindung Pin8 mit Shield-1-IN1), im serialmonitor wird dicht an einander "ticktocktech" ausgegeben. Von den anderen Programmsequenzen mit z.B. Beschleunigen oder Richtungswechsel keine Spur...

    ich muss zugeben dass verwirrt mich etwas
    Gruß ahave

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von Rabenauge
    Registriert seit
    13.10.2007
    Ort
    Osterzgebirge
    Alter
    56
    Beiträge
    2.210
    Hättste das Motorshield aus deiner vorherigen Einkaufsliste genommen...
    Erstens _kenne_ ich das Ding (benutz es selber ab und an), zweitens kann es mehr. Ok: es blockiert mehr Pins aber beim Mega...der hat noch lange genug.
    Und: das Shield bekommste ungefähr für den Preis eines deiner Treiberdinger da...und das steuert dir deine vier Motoren auch an.

    Bei den Reviews steht übrigens, dass so manch einer wohl mit diesen Dingern seine Probleme hat.

    Aber gut-du hast die Dinger nunmal da und funktionieren wirds schon.
    Allerdings wird dir die AFMotor nun mal gar nix nützen, schätze ich.

    Also:
    Hast du ne ANLEITUNG (bitte nicht irgendwelches Internetgesülz, sondern wenns geht vom Hersteller) zu dem Ding?? Mir schwant da nämlich was, aber ich würd gerne dazu nen Anschlusschema sehn.
    Hast du _irgendeine_ Beispielsoftware dafür? Bibliothek, Beispielprogramm...
    Während du antwortest, such ich mal, was ich von Sainsmart so an Dokumenten da hab-vielleicht ist was zu dem Ding bei...

    Und nochwas: vergiss mal das zweite der Dinger für eine Weile- wir bringen _eines_ davon zum laufen, alles andere fangen wir gar nich an.
    Wenn das eine läuft, kümmern wir uns um Nummer 2 (mir schwant auch da noch ne Kleinigkeit)...

    So, Nachtrag.
    Ich hab mir mal das Beispiel-ähhh-Programm von Sainsmart besorgt.
    Mehr an Doku hat der Laden offenbar nich zu dem Ding aber:
    Code:
    /SainSmart L298N
    
    int pin1=8; 
    
    int pin2=9;
    
    int speedpin1=11; 
    
    int pin3=6; 
    
    int pin4=7; 
    
    int speedpin2=10; 
    
    void setup()
    
    {
    
    pinMode(pin1,OUTPUT); 
    
    pinMode(pin2,OUTPUT);
    
    pinMode(speedpin1,OUTPUT);
    
    pinMode(pin3,OUTPUT);//
    
    pinMode(pin4,OUTPUT);
    
    pinMode(speedpin2,OUTPUT);
    
    }
    
    void loop()
    
    {
    
    digitalWrite(speedpin1,100); 
    
    delay(2000);
    
    digitalWrite(pin1,LOW);
    
    digitalWrite(pin2,HIGH);
    
    digitalWrite(pin3,LOW);
    
    digitalWrite(pin4,HIGH);
    
    digitalWrite(speedpin2,100);
    
    delay(2000);
    
    digitalWrite(pin1,HIGH);
    
    digitalWrite(pin2,LOW);
    
    digitalWrite(pin3,HIGH);
    
    digitalWrite(pin4,LOW);
    
    digitalWrite(pin1,HIGH);
    
    digitalWrite(pin2,HIGH);
    
    digitalWrite(pin3,HIGH);
    
    digitalWrite(pin4, HIGH)
    
    delay(2000);
    
    }
    Probier den mal aber setz die Jumper richtig (nein, ich weiss nicht, wie..)
    Geändert von Rabenauge (10.06.2014 um 18:31 Uhr)
    Grüssle, Sly
    ..dem Inschenör ist nix zu schwör..

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    21.05.2014
    Alter
    56
    Beiträge
    25
    hallo Rabenauge,

    danke erstmal dass Du Dich so reihängst...

    Zitat Zitat von Rabenauge Beitrag anzeigen
    Hättste das Motorshield aus deiner vorherigen Einkaufsliste genommen...
    Erstens _kenne_ ich das Ding (benutz es selber ab und an), zweitens kann es mehr. Ok: es blockiert mehr Pins aber beim Mega...der hat noch lange genug.
    Und: das Shield bekommste ungefähr für den Preis eines deiner Treiberdinger da...und das steuert dir deine vier Motoren auch an.
    ich habe es nur genommen, weils in dem kompletten Bausatz dabei war. Bei den Pins bin ich sowieso noch unsicher - beim draufstecken des Motorshields auf den Mega wären ja quasi "alle" Pins zumindest abgedeckt, so dass man überhaupt nicht drankommt - deshalb fand ich die nicht-steckbaren eigentlich besser, da die ja sowieso nur für die Motoren da sind und wenn sie neben den Motoren untergebracht sind...

    Zitat Zitat von Rabenauge Beitrag anzeigen
    Hast du ne ANLEITUNG (bitte nicht irgendwelches Internetgesülz, sondern wenns geht vom Hersteller) zu dem Ding?? Mir schwant da nämlich was, aber ich würd gerne dazu nen Anschlusschema sehn.
    siehe Anhang...

    Zitat Zitat von Rabenauge Beitrag anzeigen
    Und nochwas: vergiss mal das zweite der Dinger für eine Weile- wir bringen _eines_ davon zum laufen, alles andere fangen wir gar nich an.
    Wenn das eine läuft, kümmern wir uns um Nummer 2 (mir schwant auch da noch ne Kleinigkeit)...
    ok...

    Zitat Zitat von Rabenauge Beitrag anzeigen
    Ich hab mir mal das Beispiel-ähhh-Programm von Sainsmart besorgt.
    Mehr an Doku hat der Laden offenbar nich zu dem Ding aber:
    den gleichen Code haben sie mir auf Anfrage auch zugeschickt. Probleme hatte ich mit den speedpins 1 und 2, da muss man offensichtlich auch irgendwelche Pins verbinden wie die 8. 9, 6 und 7 mit den INT1,2, 3,4 verbinden...

    Zitat Zitat von Rabenauge Beitrag anzeigen
    Probier den mal aber setz die Jumper richtig (nein, ich weiss nicht, wie..)
    meinst Du die jumper an dem Motorshield? Den Code werde ich noch testen (mit den Jumpern...
    Angehängte Dateien Angehängte Dateien
    Gruß ahave

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von Rabenauge
    Registriert seit
    13.10.2007
    Ort
    Osterzgebirge
    Alter
    56
    Beiträge
    2.210
    Sainsmart hat nen -im Prinzip-frei zugänglichen Downloadbereich.
    Dort finden sich sämtliche Anleitungen-soweit sie (meistens) von anderen mehr oder weniger abgeschrieben wurden.
    Dein PDF da ist-wohl Eingebau von denen, und entsprechend mies. Naja...

    Hab noch mehr solche Anleitungen von denen, teils grauslig...

    Da: http://hacker.instanet.net/forums/vi...hp?f=4&t=13hab ich was gefunden, was auf _dieses_ Ding zu passen _könnte_ (leider kein Foto bei, es gibt was ähnliches bei Sparkfun, aber eben _ähnlich_-nicht so).

    Versuch dich dort mal klug zu lesen. Ich kanns nicht wirtklich nachvollziehen, weil ich motormässig anders unterwegs bin-hätt ich so nen Ding hier, wär der Drops schon gelutscht.

    Bitte benutze _genau_ die angegebenen Pins...zu den dort verlinkten (bzw. im Text enthaltenen) Beispielen.
    Vermutlich kommts da wirklich drauf an.
    Was wie anzuschliessen ist, steht eigentlich bei (und den Sainsmart-Fotos nach kann das so auch klappen) auch wenn ich nur zwei Jumper sehe, da wird aber von vieren geredet..
    Für weiteres: besorg dir mal Fritzing(das Programm kostet nix und ist, grad für Arduino-Basteleien einfach Klasse: nach nem halben Jahr weiss _ich_ nämlich nicht mehr, was ich mal wo verkabelt hatte. So kann man alles schön dokumentieren. Weiss zwar nicht, ob das Ding dort in der Bibliothek ist, aber man kann auch Zettelchen ankleben, als "Dummys", um dranzuschreiben, wo das Kabel hingeht.
    Dann mach mir mal ne Skizze _deiner_ Verkabelung.

    Was das Motorshield angeht: alles Quatsch: der MEGA ist länger als nen UNO. Die gesamte hintere Steckerleiste (die Doppelte, dies beim Uno gar nicht gibt) bleibt frei zugänglich. Praktischerweise damit z.B. auch die SPI-Schnittstelle..
    Analog-Pins sind beim Motorshield nach oben durchgeführt (braucht man nur noch Steckerleisten oder Buchsen rauflöten, die haben dann sogar schick ne Stromversorgung pro Pin), I2C ist auch noch erreichbar (mitm UNO auch, weil die ebenfalls hoch geführt ist, beim MEGA sind da aber Analogpins), also alles was man braucht ist ohne weiteres noch zu erreichen-mitm Uno wirds dünn, da sind nur zwei oder drei Digitale und die paar analogen Pins noch frei, sowie I2C.
    Damit kämpf ich grade mit meinem Buggy: mit den paar übrigen Pins irgendwie noch mehrere Funktionen-ist spannend.

    Für deinen Roboter würd die Austattung übrigens knapp reichen: UNO,das Motorshield, da haste noch die Möglichkeit, ohne Tricksen 2 US-Sensoren zu verbauen. Mit tricksen dürften 3-5 möglich sein.
    I2C wäre dann noch verfügbar für weitere "Wichtige" Sachen-Display z.B. (hat irgendwie jeder Roboter, der bisschen was auf sich hält heute), eventuell weitere Sensoren.
    Problem wäre das Servo: zwar kann das Motorshield davon zweie versorgen, aber ich glaub, nicht, wenn alle vier Motoren benutzt werden (ich hab zweie dran, da gehts), da müsste man im laufenden Betrieb immer mal die Betriebsart wechseln.
    Grüssle, Sly
    ..dem Inschenör ist nix zu schwör..

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    21.05.2014
    Alter
    56
    Beiträge
    25
    eigentlich ja, es lief gut, aber beim Nachschauen habe ich festgestellt, dass die Pins 0 und 1 mit RX/TX gekennzeichnet waren, habe es nun auf die Pins 2-13 verschoben, alle mit PWM...

    danke für den tipp..
    Gruß ahave

  6. #6
    Erfahrener Benutzer Robotik Einstein Avatar von Rabenauge
    Registriert seit
    13.10.2007
    Ort
    Osterzgebirge
    Alter
    56
    Beiträge
    2.210
    Fein. Ist halt das gute am Mega- gibt immer irgendwie noch nen Pin...beim UNO ist das teilweise ziemlich herausfordernd.

    Wenn du bisschen mit dem Ding rumfährst dann, erzähl mal wie die Karre so läuft, was sie kann, was nicht...interessiert bestimmt nicht nur mich.
    Grüssle, Sly
    ..dem Inschenör ist nix zu schwör..

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    21.05.2014
    Alter
    56
    Beiträge
    25
    bei der definition der pins:

    //bridge S1

    #define S1_IN_1 11 // H-bridge_1 OUT1.1
    #define S1_IN_2 10 // H-bridge_1 OUT1.2
    #define S1_ENB_M_2 50 // H-bridge_1 Enable motor-2
    #define S1_IN_3 9 // H-bridge_1 OUT2.3
    #define S1_IN_4 8 // H-bridge_1 OUT2.4
    #define S1_ENA_M_4 51 // H-bridge_1 Enable motor-4

    brauche ich die pins mit PWM eigentlich für OUT, oder für die ENABLES? Ich tippe auf enables, weil bei der definition hier sind die ENB pins (50,51) digital, er fährt, oder eben nicht, beschleunigt aber nicht. Richtig?
    Gruß ahave

  8. #8
    Erfahrener Benutzer Robotik Einstein Avatar von Rabenauge
    Registriert seit
    13.10.2007
    Ort
    Osterzgebirge
    Alter
    56
    Beiträge
    2.210
    Die "Enable"-Pins sind die, die die Drehzahl steuern, das ist richtig. Erkennst du hier:

    Code:
    analogWrite(ENABLE1, i);       // Motor 1 Speed
            analogWrite(ENABLE2,i);      // Motor 2 Speed
    Dort werden die "analog" geschrieben-sprich, da wird der PWM-Wert ausgegeben.
    Die anderen beiden (pro Motor) scheinen lediglich umgepolt zu werden (LOW legt den Pin auf Masse, HIGH auf 5V), um quasi den Motor umzupolen, für vorwärts und rückwärts.
    Lass dich nicht davon beirren, dass auch die Enable-Pins Digitalpins sind, das macht nix!
    Auch kann man die ohne weiteres Digital beschreiben (dann bleibt er HIGH so lange ich ihn nicht auf LOW setze) oder eben "analog"- das ist nix anderes als ne Folge von zeitlich abgestimmten HIGH`s und LOW`s.

    Aber damits einfach geht, müssen eben die enable-Leitungen (Vorschlag: nenn sie einfach mal PWM1-4, wirds besser verständlich) an Pins liegen, die der Arduino als PWM-Pins nutzen kann.
    Bei den anderen Leitungen ist das Wurst, da kannst du alles für nehmen.
    Grüssle, Sly
    ..dem Inschenör ist nix zu schwör..

Ähnliche Themen

  1. [ERLEDIGT] [ARDUINO] 2 Motoren + Servo mit dem Arduino Uno steuern
    Von Torrentula im Forum C - Programmierung (GCC u.a.)
    Antworten: 0
    Letzter Beitrag: 31.08.2011, 16:31
  2. Problem mit Start/Stop Taster
    Von Zizibee im Forum Robby RP6
    Antworten: 13
    Letzter Beitrag: 22.04.2010, 10:09
  3. Antworten: 7
    Letzter Beitrag: 15.06.2009, 16:30
  4. Start mit Programmsprache C??
    Von Pilotzi im Forum PIC Controller
    Antworten: 14
    Letzter Beitrag: 29.02.2008, 13:40
  5. [ERLEDIGT] Simulator start mit ad port
    Von der noob im Forum Controller- und Roboterboards von Conrad.de
    Antworten: 4
    Letzter Beitrag: 17.08.2004, 12:14

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiFePO4 Speicher Test