-         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 12

Thema: Defekter Treiber?

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    05.03.2018
    Beiträge
    35

    Defekter Treiber?

    Anzeige

    Guten Tag Zusammen,
    vor einigen Monaten habe ich angefangen einen Roboter zu basteln, der mit einer Kamera einen Ball erkennt, sich auf den Ball zu bewegt und dann schießt, wenn er ein Tor sieht. Das ganze hat auch bis zu meinem zweiten Prototypen ganz gut geklappt. Als ich die ganze Sensorik dann in das richtige Modell eingebaut habe, hat mein Motortreiber angefangen zu spinnen. Es ist ein L298N. Immer wenn ich ein Programm auf meinen Arduino Mega lade, ganz egal welches, fängt sich das rechte Rad an sich zu drehen. Der Quellcode kann auch ein "Hello World", oder sogar leer sein. Habt ihr vielleicht eine Ahnung, was das Problem sein könnte?
    Gruß,
    Thomas

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    33
    Beiträge
    2.727
    es besteht gut und gern die Möglichkeit dass die Pins zum Motortreiber sich mit irgend welchen Debug Pins oder Kommunikationspins während des Programmierens überlappen ... das kann auch den Treiber grillen
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    05.03.2018
    Beiträge
    35
    Und das durchgehende Signal an meinem Ausgang ist ein übliches Resultat einer solchen Überlappung?

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von HaWe
    Registriert seit
    09.10.2014
    Beiträge
    3.301
    Zitat Zitat von Toran Beitrag anzeigen
    Und das durchgehende Signal an meinem Ausgang ist ein übliches Resultat einer solchen Überlappung?
    steuerst du deinen L298N mit 2- oder mit 3-pin-Logik an?
    ·±≠≡≈³αγελΔΣΩ∞ Schachroboter:www.youtube.com/watch?v=Cv-yzuebC7E Rasenmäher-Robot:www.youtube.com/watch?v=z7mqnaU_9A8

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    05.03.2018
    Beiträge
    35
    Tut mir leid, leider sagen mir diese Begriffe nichts. Mit den Inputs 1-4 fahre ich an meine digitalen Pins vom Arduino und mit meinen Outputs an die DC Motoren. Immer jeweils zwei Outputs für einen Motor für die verschiedenen Drehrichtungen. Falls das wichtig sein sollte - Das sind die Motoren, die ich verwende: https://www.conrad.de/de/getriebemot...z-1573543.html
    Gruß,
    Thomas

  6. #6
    Erfahrener Benutzer Robotik Einstein Avatar von HaWe
    Registriert seit
    09.10.2014
    Beiträge
    3.301
    das klingt nach 2-Pin-Steuerlogik, 1 für Richtung und 1 für pwm.
    Das führt sehr häufig zu diesen beschriebenen Problemen, auch bei mir.

    Verwende lieber 3-Pin-Steuerlogik, die ist störungssicherer (L298 funktioniert logisch wie L293):

    http://www.arduino-tutorial.de/motor...m-h-bridge-ic/

    Die Pin-Namen gehen im Web oft sehr durcheinander.
    IC-Spannungsquelle Vss(Vcc)=5V
    Leistungsspannungsquelle Vs(Vc)=z.B. 9-12V
    MotorA: Inputs 1+2=direction, enable1=pwm, outputs 1+2
    MotorB: Inputs 3+4=direction, enable2=pwm, outputs 3+4

    verfügbare PWM Pins Arduino:
    Nano: 3; 5; 6; 9; 10; 11
    Uno: 3; 5; 6; 9; 10; 11
    Due: 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13
    Mega 2560: 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13

    Steuerlogik:

    Code:
    in1(3)         in2(4)       en1(2)==pwm        Funktion
    ==========================================================
    LOW            LOW           LOW               coast
    LOW            HIGH          pwm               rechts pwm
    HIGH           LOW           pwm               links pwm
    HIGH           HIGH          pwm               brake pwm
    Geändert von HaWe (08.08.2018 um 09:29 Uhr)
    ·±≠≡≈³αγελΔΣΩ∞ Schachroboter:www.youtube.com/watch?v=Cv-yzuebC7E Rasenmäher-Robot:www.youtube.com/watch?v=z7mqnaU_9A8

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    05.03.2018
    Beiträge
    35
    Okay vielen Dank, ich werde das mal so probieren. Der L298N ist aber hinüber und muss ersetzt werden, nehme ich an? Oder ist das reparabel?

  8. #8
    Erfahrener Benutzer Robotik Einstein Avatar von HaWe
    Registriert seit
    09.10.2014
    Beiträge
    3.301
    das kann ich ohne meine Kristallkugel nicht entscheiden, und die ist grade zur Inspektion...
    Vermutlich kann der L298 aber nach wie vor in Ordnung sein, nur reparieren ist eher schlecht möglich.
    ·±≠≡≈³αγελΔΣΩ∞ Schachroboter:www.youtube.com/watch?v=Cv-yzuebC7E Rasenmäher-Robot:www.youtube.com/watch?v=z7mqnaU_9A8

  9. #9
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    33
    Beiträge
    2.727
    du meintest das ding spinnt nur während des programmierens, wie schon erwähnt zappelt eines der beinchen deines controllers während er programmiert wird, ich vermute das jetzt mal nur aber bei der 3-pin steuerung wird es wohl eine enable leitung sein oder irgendeine kombination die verhindert dass der treiber unkontrolliert anfährt


    wenn er nur während des programmierens spinnt KANN das schäden verursachen, muss aber nicht! Hast du nicth irgend ein kleines Testprogramm dass den Motor einfach nur langsam drehen lässt um den treiber zu testen?!

    das rumspinnen ist nur ein ergebnis von nciht treiber gerechten eingangssignalen weil dein bootloader zum firmware aufspielen keinen plan hat was da für hardware dran hängt
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  10. #10
    Benutzer Stammmitglied
    Registriert seit
    05.03.2018
    Beiträge
    35
    Ich habe das jetzt mal auf die 3-Pin Logik geändert. Ich kann zwar mit dem pwm-Signal die Stärke einstellen, aber das Rad kann sich nur in eine Richtung drehen, ganz egal, wie ich die Drehrichtung einstellen.
    Code:
    int motorForwardA=9;
    int motorBackwardA=8;
    int pmwMotorA=7;
    int motorForwardB=10;
    int motorBackwardB=11;
    int pmwMotorB=6;
    
    void setup() {
      //setting up all the pins as input or output
      Serial.begin(9600);
      pinMode(motorForwardA,OUTPUT);
      pinMode(motorBackwardA,OUTPUT);
      pinMode(motorForwardB,OUTPUT);
      pinMode(motorBackwardB,OUTPUT);
      pinMode(pmwMotorA,OUTPUT);
      pinMode(pmwMotorB,OUTPUT);
    }
    
    
    
    void loop() {
      // put your main code here, to run repeatedly:
      
      digitalWrite(motorForwardA,HIGH);
      digitalWrite(motorBackwardA,LOW);
      analogWrite(pmwMotorA,150);
      delay(1000);
      
      digitalWrite(motorForwardB,HIGH);
      digitalWrite(motorBackwardB,LOW);
      analogWrite(pmwMotorB,150);
      delay(1000);
    }

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Defekter Atmega328p?
    Von schorsch_76 im Forum AVR Hardwarethemen
    Antworten: 9
    Letzter Beitrag: 25.09.2014, 21:02
  2. Defekter Heißluftfön
    Von Kampi im Forum Elektronik
    Antworten: 11
    Letzter Beitrag: 11.04.2012, 14:15
  3. [ERLEDIGT] Perfekter aber defekter Laptop ? (läuft einwandfrei)
    Von PICture im Forum PC-, Pocket PC, Tablet PC, Smartphone oder Notebook
    Antworten: 59
    Letzter Beitrag: 13.06.2011, 19:00
  4. Mega8: Unterschied RSTDISBL oder Defekter PC6 erkennen?
    Von Jaecko im Forum AVR Hardwarethemen
    Antworten: 2
    Letzter Beitrag: 16.11.2009, 18:36
  5. defekter Brushlessregler
    Von Destrono im Forum Elektronik
    Antworten: 19
    Letzter Beitrag: 02.09.2009, 10:50

Berechtigungen

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