-         

Ergebnis 1 bis 3 von 3

Thema: Atmega 2560 - Leistungsfähigkeit - PWM + Schrittmotor + ADC

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    14.09.2011
    Beiträge
    29

    Atmega 2560 - Leistungsfähigkeit - PWM + Schrittmotor + ADC

    Anzeige

    Hallo
    ich arbeite an einem Roboter (Zumo) mit einem Atmega 2560.
    Er läuft mit 16 MHz. Programmiert mit Bascom.

    Ausstattung:
    2 x PWM für die beiden Motoren
    1 Schrittmotor bewegt einen Kopf mit Sharp Infrarotsensor
    ADC-Messungen für:
    2 x Radsensoren bei jedem Durchlauf
    1 x Entfernungsmessung Infrarotsensor ca 20 x je Sekunde
    Batteriespannungsmessung 1 x je Minute

    Später sind noch weiter ADC's für Linienfolgen geplant.

    Jede dieser Komponenten wurde einzeln getestet und funktioniert.
    Alle zusammen gehen jedoch nicht.
    Wenn sich während des Fahrens der Schrittmotor drehen soll, dann
    funktioniert fast nichts. Die Radsensoren sind ungenau, der Schrittmotor
    dreht sich sehr langsam oder der Roboter fährt sehr langsam.

    Die beiden Timer für Schrittmotor und PWM sind auf maximale Prescale
    eingestellt 64 und 256.

    Frage:
    Ist der Atmega 2560 mit diesen Aufgaben generell überfordert oder könnte es
    nach Optimierung der Software funktionieren.
    Ich weis, Diagnosen aus der Ferne sind schwer möglich. Aber wenn der 2560
    das generell nicht schaffen kann, dann nehme ich für den Schrittmotor gleich
    zusätzlich einen Atmega 8 und probiere nicht weiter.

    Danke im Voraus

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2004
    Ort
    Kreis Starnberg
    Alter
    52
    Beiträge
    1.819
    Ich weis, Diagnosen aus der Ferne sind schwer möglich. Aber wenn der 2560
    das generell nicht schaffen kann, dann nehme ich für den Schrittmotor gleich
    zusätzlich einen Atmega 8 und probiere nicht weiter.
    Das mit den Ferndiagnosen stimmt. Es scheint ja hauptsächlich am Schrittmotortreiber zu liegen. Der kann sehr unterschiedlich verschieden Prozessorzeit verbrauchen, z.B. je nach Motorfrequenz, Teil (Mikro-)schritte, Verwendung gemeinsamer Register im Prozessor (die bei jedem Aufruf einer Interruptroutine gesichert und beim Verlassen wieder hergestellt werden müssen) usw.
    Ich vermute schon, dass da noch ein Schrittmotortreiber draufpassen könnte/sollte, wenn man alle Prozesse optimiert. Ob man sich einen Gefallen damit tut, sei dahingestellt. Das Optimieren des Codes ist ein Ding, aber wenn man dann später noch etwas ändern oder dazupacken will, dann muss man wieder alle Abhängigkeiten durchdenken und alles wird vielleicht noch enger.
    Wenn Du beim Sichten des Codes nicht schnell einen Ressourcenfresser erkennst, den man leicht ausmerzen kann, ist zweite Prozessor ist vermutlich die schmerzfreie Variante.

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    06.08.2008
    Ort
    Graz
    Beiträge
    500
    Das liegt sicher an der Software, meiner hat einiges mehr zu tun und schafft das locker.
    Wahrscheinlich sind einige Warteschleifen eingebaut, diese muss man vermeiden
    alles über meinen Rasenmäherroboter (wer Tippfehler findet darf sie gedanklich ausbessern, nur für besonders kreative Fehler behalte ich mir ein Copyright vor.)

Ähnliche Themen

  1. SPI bei Atmega 2560 will nicht
    Von Kampfwurst_Hugo im Forum C - Programmierung (GCC u.a.)
    Antworten: 5
    Letzter Beitrag: 06.10.2011, 19:30
  2. ATMega 2560 - PWM Frage
    Von Fallback im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 9
    Letzter Beitrag: 01.09.2011, 10:39
  3. ATmega 2560 Bord
    Von rolber im Forum Suche bestimmtes Bauteil bzw. Empfehlung
    Antworten: 5
    Letzter Beitrag: 06.06.2010, 11:24
  4. ATMEGA 2560 löten?
    Von kaktus im Forum AVR Hardwarethemen
    Antworten: 5
    Letzter Beitrag: 21.10.2008, 19:50
  5. ATMega 2560
    Von Killer im Forum Elektronik
    Antworten: 9
    Letzter Beitrag: 18.08.2007, 13:58

Stichworte

Berechtigungen

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