- SF800 Solar Speicher Tutorial         
Ergebnis 1 bis 10 von 48

Thema: Linie Folgen

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.694
    Hi, BlackDevil,

    Zitat Zitat von BlackDevil
    Ich freu mich auf Regelungstechnik im vierten Semester ...
    Du freust Dich? ? ? Bist ein Masochist, oder ? Ich war irgendwie in die Klausurausgabe RT hineingeraten (wollte garnicht hin... 4Loch reichte mir völlig - siehe unten) "Ach SIE sind das. . .!" (...sagte der Assi. Da hatte ich dämlich geguckt) "Na ja, von 46 bearbeiteten Punkten sind 45 richtig - und sogar DIESE Aufgabe, die fast alle falsch haben! Warum haben sie nicht mehr Punkte bearbeitet?" Antwort: "Ach wissen sie - eine Woche Winterpiste ist mir lieber als ne 1 Loch in Regelungstechnik". Nun hatte ER dämlich geguckt .

    Zitat Zitat von BlackDevil
    ... im moment ist das doch sehr sehr harter Tobak *g* Aber ich schaus mir mal an ...
    Tu das. Bitte. Es ist wirklich soooo easy - - wenn man es mal glaubt, dass es nicht schwer ist. Ich hatte mir dazu ein paar Notizen in den Ausdruck gemacht (um es besser zu verstehen):

    .............................Bild hier  
    Dann hatte ich auch mal die Sprungantwort gemessen.

    .............................Bild hier  

    Einfach Motoren auf einen bestimmten Wert stellen, und Deine Geschwindigkeitsangaben so schnell festhalten, wie es nur geht. Danach ausgeben über die RS232 (dazu hat man die in der Entwicklungsphase) und z.B. Export nach Excel. Die Tangente an den Kurvenbeginn schneidet den maximalen Geschwindigkeitswert => daraus die Zeitkonstante ablesen. Die (maximale) Geschwindigkeit im Verhältnis zum Ansteuerwert gibt die Reglerverstärkung. <<== Diese Erklärungen sind hier stark vereinfacht , lies dazu das Tutorial.

    Was kommt heraus? Dieser Code:
    Code:
    /* ============================================================================== */
    /* ===  Regelungsroutine für Motor 12  ========================================== */
    /* Die gemessene Zeitdifferenz Iz_diff0 zwischen zwei Encodersignalen
                      aus extINT0 wird zur Regelung verwendet                         */
      void rgl_mo_12(void)          // Regelung für Motor 12
    {                               
      if (stupsi12 <= 5)            // Soll überhaupt gefahren werden?
      {                              
        OCR0A = 0;                  // Wenn nicht, dann PWM auf Null
        return;
      }                            
                    
      tupsi12      = Iz_diff0;                      // Übernahme Iz-Wert in Regelung
      ndrz12       = stupsi12;                      // Sollwert Drehzahl
      if ( tupsi12 > 100 )  { tupsi12  = 100; }     // Eingrenzen Encoderwert=Fehler abfangen
      idrz12       = 1000 / tupsi12;                // Istwert Drehzahl
      ie_mot12     = ndrz12 - idrz12;               // Vergleich => Regelabweichung
      iesum12      = iesum12 + ie_mot12;
      if  (iesum12 < -10) { iesum12  = -10;}
      if  (iesum12 >  500) { iesum12  =  500;}
      iy12         = iesum12/2;
      iy12         = iy12 + ie_mot12 + ie_mot12 + ie_mot12 + ie_mot12 + ie_mot12;
                    // Diese Rechenoperation benötigt in float 0,20 bis 0,25 ms!
                    //   daher wird hier alles integer gerechnet
      if ( iy12    <   0 )   { iy12   =    0;}      // PWM-Minimum abfangen
      if ( iy12    > 255 )   { iy12   =  255;}      //   und Maximum
                                      
      OCR0A = iy12;                 // Ansteuerung der PWM direkt
      return;                          
    }               
    /* ============================================================================== */
    Und damit läuft mein Miniroboter. Und jetzt sag noch mal, dass das schwer sei. Wirklich nicht (ok, ich hatte viele Tage für diese Erkenntnis gebraucht .

    Zitat Zitat von BlackDevil
    ... weil ich mit 2 Sensoren kein Schönes Ergebnis erziele und mit 3en schon wieder sehr Kompliziert fahre ...
    Ich hatte doch gesagt: fünf ist recht gut .

    So - nun noch etwas zur Entspannung. Soweit ich die Linienspezialisten verstanden habe, braucht ein Linienfolger keine Geschwindigkeitsregelung nach obigem Muster. Der wird auf die Abweichung von der Linie geregelt. Daher ändert sich schon ein bisschen was . . .

    Trotz allem viel Glück und Erfolg

    Nachtrag: Habe grad Dein Posting gesehen:
    Zitat Zitat von BlackDevil
    ... Ich denke ich bau den Spaß einfach mal auf und schau was passiert. ...
    So findest Du Dich sicher gut rein. So ähnlich hatte ich vor ein paar Monaten auch angefangen.
    Geändert von oberallgeier (17.10.2016 um 08:43 Uhr)
    Ciao sagt der JoeamBerg

Berechtigungen

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

Labornetzteil AliExpress