- Labornetzteil AliExpress         
Seite 3 von 3 ErsteErste 123
Ergebnis 21 bis 26 von 26

Thema: Unfassbarer Stromverbrauch Pro-Bot

  1. #21
    Benutzer Stammmitglied
    Registriert seit
    28.11.2008
    Ort
    Wenden
    Alter
    37
    Beiträge
    52
    Anzeige

    E-Bike
    Hallo Leute,
    also meine Akkus und die neuen Batteriefächer sind angekommen und auch schon eingebaut und aufgeladen.
    Das Problem ist nur es macht absolut keinen Unterscheid!
    Langsam bin ich total am verzweifeln.
    Alle aber auch ausnahmslos ALLE beispielprogramme laufen aber sobald ich nur eine zahl i-wo änder dauerts 2 mins und der bot bewegt sich nicht mehr.

    Was ich damit sagen will ist, er tut so als wenn die Akkus leer sind.
    Sobald ich aber wieder die beispiele in den speicher lade läuft der bot mit den vermeindlich leeren akkus ohne probleme.

    Jetzt fährt er schön über 3 stunden durch den raum mit dem acs beispiel ohne ermüdung.

    Was kann das jetzt noch sein?
    Soll ich einfach mal einen neuen L293D bestellen?

    Also nochmal zur erinnerung Kriechströme haben wir Ausgeschlossen.
    Defekte Lötstellen auch.
    Die Stromversorgung ist absolut in Ordnung und zu viel Strom ziehen tut er auch nicht.
    Die Motoren verichten perfekt ihren dienst also was zum hänker fehlt?
    Es kann doch nciht sein das sobald ich die Beispielprogramme verändere der Bot nicht mehr rennt...

    Hoffe ihr habt noch ne idee.
    Bis dahin danke euch und Gruß...
    Wer Rechtschreib fehler findet kann Sie ausdrucken und mir per Post schicken... \/

    Bild hier  

  2. #22
    Super-Moderator Lebende Robotik Legende Avatar von Manf
    Registriert seit
    30.01.2004
    Ort
    München
    Alter
    71
    Beiträge
    13.075
    Jetzt gibt es ja eine Fallunterscheidung zwischen dem Programm bei dem er lange läuft und dem Programm bei dem er bald schlapp macht.
    Man sollte dann in beiden Fällen die Stromaufnahme messen.
    Wenn ein Gatter der Ansteuerung des Treibers etwas hochohmig (oder langsam) geworden ist dann könnte der Querstrom durch den Motortreiber vom PWM Wert abhängen.

  3. #23
    Benutzer Stammmitglied
    Registriert seit
    19.02.2008
    Ort
    Mitteldeutschland
    Beiträge
    83
    Hi,

    teste mal mein ACS Programm ob das ohne Probleme läuft oder die gleichen "Ermüdungserscheinungen" zeigt.

    Code:
    '*******************************************************************************
    'Projektname:       Pfadfinder.cbas
    'Benötigte Libs´s:  IntFunc_Lib.cc
    'Routinen:          Pfadfinder.cbas,PRO-BOT128_Lib.cbas
    'Autor:             ExMachina
    'Datum:             16.05.2009
    '
    'Funktion:          PRO-BOT128 fährt umher, und weicht dabei Hindernissen über
    '                   das ACS (Anti Collisions System) aus.
    '                   Dabei nutzt der Roboter die Radencoder um möglichst gerade
    '                   aus zu fahren. Die ACS Einstellungen werden über
    '                   ACS_INIT() geändert/ 1-20 / 1 ist nah / 20 ist fern /
    '*******************************************************************************
    
    #define BLR 16
    #define BLL 17
    #define FLR 18
    #define FLL 19
    
    
    Sub main()         'Hauptprogramm
    
    PRO_BOT128_INIT()  'PRO BOT128 wird initialisiert
    DRIVE_INIT()       'Motor wird initialisiert
    LED_Init()         'LED's werden initialisiert
    ACS_INIT(3)        'Anti Collision Sytem (ACS) wird initialisiert (1-20,1=geringe Messweite 20=große Messweite)
    AbsDelay(1000)     'wartet 1 Sekunde
    
    ENC_LED_ON()       'Radencoder wird initialisiert
    DRIVE_ON()         'Motor wird aktiviert
    
    Do While True
    
        Check_Left()   'ACS check links
        Check_Right()  'ACS check rechts
    
        If ACS_LEFT() = 1 And ACS_RIGHT() = 1 Then Forward() : End If     'kein Hinderniss
        If ACS_LEFT() = 0 And ACS_RIGHT() = 0 Then Backward() : End If    'Hinderniss vorn     'Endlosschleife
        If ACS_LEFT() = 1 And ACS_RIGHT() = 0 Then Turn_Left() : End If   'Hindeniss rechts
        If ACS_LEFT() = 0 And ACS_RIGHT() = 1 Then Turn_Right() : End If  'Hinderniss links
    
        End While                'Ende Endlosschleife
    
    
    End Sub                      'Ende Hauptprogramm
    
    Sub LED_Init()
        Port_DataDirBit(FLL,PORT_OUT)                'Port PC.0 = Output
        Port_DataDirBit(FLR,PORT_OUT)                'Port PC.1 = Output
        Port_DataDirBit(BLL,PORT_OUT)                'Port PC.2 = Output
        Port_DataDirBit(BLR,PORT_OUT)                'Port PC.3 = Output
    
        Port_Write(2,&H0)                            'alle LED's an
        AbsDelay(500)                                'wartet 0,5 Sekunden
        Port_Write(2,&H1F)                           'alle LED's aus
        AbsDelay(500)                                'wartet 0,5 Sekunden
        Port_Write(2,&H0)                            'alle LED's an
        AbsDelay(500)                                'wartet 0,5 Sekunden
        Port_Write(2,&H1F)                           'alle LED's aus
    End Sub
    
    Sub Check_Left()
        ACS_LEFT()               'ACS check links
        AbsDelay(5)
    End Sub
    
    Sub Check_Right()
        ACS_RIGHT()              'ACS check rechts
        AbsDelay(5)
    End Sub
    
    Sub Forward()
        FLL_OFF()                'LED links aus
        FLR_OFF()                'LED rechts aus
        BLL_OFF()                'LED links aus
        BLR_OFF()                'LED rechts aus
        DRIVE_FORWARD(10)        'geregelte Vorwärtsfahrt (Speed 1-10)
    End Sub
    
    Sub Backward()
        FLL_ON()                 'LED links an     'vorne
        FLR_ON()                 'LED rechts an
        BLL_ON()                 'LED links an     'hinten
        BLR_ON()                 'LED rechts an
        GO_TURN(0,-60,255)       'rechts Drehung (0cm,-60 Grad Clockwise,Speed 255)
    End Sub
    
    Sub Turn_Left()
        FLL_OFF()                'LED links  aus   'vorne
        FLR_ON()                 'LED rechts an
        BLL_OFF()                'LED links  aus   'hinten
        BLR_ON()                 'LED rechts an
        GO_TURN(0,-45,255)       'links Drehung (0cm,-45 Grad Clockwise, Speed 255)
    End Sub
    
    Sub Turn_Right()
        FLL_ON()                 'LED links an      'vorne
        FLR_OFF()                'LED rechts aus
        BLL_ON()                 'LED links an      'hinten
        BLR_OFF()                'LED rechts aus
        GO_TURN(0,45,255)        'rechts Drehung (0cm,45 Grad Counter Clockwise, Speed 255)
    End Sub

  4. #24
    Erfahrener Benutzer Fleißiges Mitglied Avatar von Robotniks
    Registriert seit
    13.10.2007
    Beiträge
    175
    Hallo zusammen,

    also die Schaltung an sich mit den L239D ist schon richtig. Im Pro-Bot128 Schaltplan ist jedoch ein kleiner Fehler, aber nicht im Layout.
    Siehe Appl.-Notes Texas Instrument!

    Wichtig ist das ein L293 D im Sockel sitzt, da der normale L293 keine internen Dioden zur Unterdrückung der Induktionsspannung besitzt.
    Aber überprüfe-, oder tausche doch mal die beiden ICs CD4093 und L293D aus. Bedenke auch das bei einen PWM Tastverhältnis von 1:1 also 50% der Stromverbrauch am größten ist! Also in der Software bis auf 50% fahren (Bremsen) und bei Stillstand des Roboters die Enable Leitung des L239D auf Low (Treiber "Aus").

    Grüße Ulli

  5. #25
    Benutzer Stammmitglied
    Registriert seit
    28.11.2008
    Ort
    Wenden
    Alter
    37
    Beiträge
    52
    Hallo Leute,
    zum ersten mal hab ich gute Nachrichten.
    So wie es aussieht hab ich das Problem gelöst.
    Es ist mir fast zu peinlich es zu sagen aber es lag an einem Falschen Timer...

    Ich habe Damit angefangen meine Programme Modular aufzubauen das heisst ich hab immer eine Funktion hinzugefügt und dabei ist mir dann aufgefallen das die ausfälle immer dann auftretten wenn ich versucht habe die forderen LEDs wärend der fahrt blinken zu lassen.
    Ich tat das ganze mit follgendem Code:

    Code:
     void FlashF(void)
    {
    FLL_ON();
    FLR_ON();
    AbsDelay(500);
    FLL_OFF();
    FLR_OFF();
    AbsDelay(500);
    }
    Als ich dann aber AbsDelay() durch DELAY_MS() ersetzt habe hat der Bot keinen fehler mehr gehabt.

    Damit trifft mal wieder zu das Hardware immer nur so blöd ist wie der der sie Programmiert oder Bedient.

    Ich kann mir zwar absolut nicht erklären warum er die fehler gemacht hat wenn ich AbsDelay() benutzt habe aber wie gesagt nun sind die fehler weg und ich bin heilfroh.

    Jetzt möchte ich euch danke sagen für eure Hilfe und schliesslich hatte es doch was gutes, der Bot hat seine erste Modifikation (die Akkus) und rennt damit stunden durch.

    Also bis zum nächsten fehler.

    Gruß
    Wer Rechtschreib fehler findet kann Sie ausdrucken und mir per Post schicken... \/

    Bild hier  

  6. #26
    Erfahrener Benutzer Robotik Visionär Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    36
    Beiträge
    5.070
    So ein Fehler wird dir glaube ich nicht mehr passieren

Seite 3 von 3 ErsteErste 123

Berechtigungen

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

LiFePO4 Speicher Test