- 3D-Druck Einstieg und Tipps         
Seite 3 von 5 ErsteErste 12345 LetzteLetzte
Ergebnis 21 bis 30 von 48

Thema: Linie Folgen

  1. #21
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.653
    Anzeige

    Praxistest und DIY Projekte
    Hi Fred,

    Zitat Zitat von fhs
    ... das 2. Mal, dass ich hier diesen Link einstelle (er ist es aber durchaus wert, doppelt gepostet zu werden...) ...
    Den ersten LInk hatte ich mal gesehen und dann gesucht und gesucht . . . . . Das ist ja das ultimative Ding. Zwar Assembler (hatte ich letztes Jahr etliche hundert Zeilen geschrieben) - aber die Grafiken zeigen ja, wo´s lang geht. Und die Motoren sind wohl die von den Servos, oder? Zumindest sehen die aus meinen Servos so aus:

    ............................Bild hier  
    Leider kenne ich die Sensoren nicht, die auf dieser Briefmarke verbaut wurden. Die würden mich sehr interessieren, nach denen Suche ich auch. Übrigens ist dieses Rennplättchen schon wegen des minimalistischen Schaltungsaufwandes bewundernswert.

    Hast Du so etwas gebaut?
    Geändert von oberallgeier (17.10.2016 um 08:38 Uhr)
    Ciao sagt der JoeamBerg

  2. #22
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    02.11.2005
    Beiträge
    1.614
    Der link ist mir oben nicht aufgefallen, ich kenne ihn aber und wollte ihn schon vor längerem mal lesen. Das werde ich dann jetzt tun.

    Liege ich eigentlich Prinzipiell richtig mit meiner überlegung?

  3. #23
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    24.02.2006
    Ort
    3. Planet eines kleinen Sonnensystems in einem Seitenarm der Milchstraße
    Alter
    69
    Beiträge
    622
    Hallo Joe und BlackDevil,

    gebaut habe ich so etwas noch nicht, habe es aber vor. Im Prinzip will ich nur den mechanischen Aufbau grob übernehmen und den Rest (Sensoren und Software) selbst machen; plane auch eine H-Brücke für jeden Motor, damit das Teil auf der Stelle rotieren und rückwärts fahren kann. Anstelle der Sensoren kann man sicher SMD-LEDs in Kombination mit SMD-Fototransistoren (evtl. die im schwarzen Gehäuse, die bevorzugt IR durchlassen) nehmen (muss eigentlich nicht mal SMD sein, obwohl ich das bevorzuge). Als Motoren Handy-Vibrationsmotoren (z.B. bei Pollin zu bekommen). Ich habe hier mal einen Link zu Methoden zum Entfernen der Unwucht von diesen Motoren gepostet und dort auch ein Bild von meiner Methode eingestellt (modifizierter Ritzelabzieher). Motor-Durchmesser: ca. 6mm.

    Ein PD-Algorithmus sollte (wie bei dem zitierten Mini-Linienverfolger aus Japan) optimal sein.

    Viele Grüße

    Fred
    Only entropy comes easy. - Anton Checkhov

  4. #24
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    02.11.2005
    Beiträge
    1.614
    PD oder PID Algorithmus sagt mir relativ wenig aber der scheint zum Regeln des Kreises (ist ja ein Regelkreis) ziemlich gut zu sein. http://de.wikipedia.org/wiki/Regler#PID-Regler auser dem finde ich nichts und ich steh ein wenig auf dem Schlauch wie ich das Programmieren soll.

    Das Assembler File habe ich mir mal angesehen aber da versteh ich nur Bahnhof ^^

  5. #25
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    24.02.2006
    Ort
    3. Planet eines kleinen Sonnensystems in einem Seitenarm der Milchstraße
    Alter
    69
    Beiträge
    622
    Hi,
    Microchip hat hier eine komplette C-Software für einen PID-Regler (natürlich für einen PIC) publiziert; es gibt noch viele ander Beispiele im Netz, z.B. dieses gute Tutorial.

    Viele Grüße

    Fred
    Only entropy comes easy. - Anton Checkhov

  6. #26
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.653
    Zitat Zitat von BlackDevil
    PD oder PID Algorithmus sagt mir relativ wenig ...
    Dann guck Dir das mal an. Ich hatte mir mit dieser Hilfe einen Regler gebaut, der zwei ziemlich ungleiche Motoren - Zeitkonstanten 12 und 8 ms - prächtig gleich laufen lässt. Und das ohne floating point - aber in einem genauen 100 Hz Takt.

    Zitat Zitat von BlackDevil
    ... Das Assembler File ... da versteh ich nur Bahnhof ...
    Na ja, geht mir auch so
    Ciao sagt der JoeamBerg

  7. #27
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    02.11.2005
    Beiträge
    1.614
    Ich freu mich auf Regelungstechnik im vierten Semester, im moment ist das doch sehr sehr harter Tobak *g* Aber ich schaus mir mal an - ansonsten wird das erste Projekt eben nicht direkt ein Linienfolger *g*


    Edit: Ich muss zugeben ich versteh die PID Regelung nicht ganz. Ich gebe zu das es Sinn macht und ich es Brockenweise Verstehen kann - aber der C Code geht mir überhaupt nicht in die Rübe .... Alles etwas too much. Ich denke der einfachste weg - den ich einschalgen wollte - ist fürs erste der beste. Wobei ich da auch auf den Schlauch stehe weil ich mit 2 Sensoren kein Schönes Ergebnis erziele und mit 3en schon wieder sehr Kompliziert fahre ....

    Als erstes Projekt mit 0 Ahnung von Regelungstechnik ist das viellicht doch nicht geeignet ...

    Edit:
    Bild hier  

    Das ist doch sowas wie ich es im Prinzip gesucht habe: Linie da - Linie nicht da. Jetzt bleibt nur die Frage: Was ist wenn die Linie halb da ist? Ich denke ich bau den Spaß einfach mal auf und schau was passiert. Ansonsten kann man damit mit 3 Sensoren alles abdecken denke ich und es ist einfacher als ein Dynamisches Regelgungssystem

  8. #28
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.653
    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

  9. #29
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    02.11.2005
    Beiträge
    1.614
    Mein Problem ist derzeit zu verstehen was die Störgröße ist, wie die Berechnung Schlussendlich abläuft und wie ich 3 oder mehr Sensoren in die Regelstrcke unterbring, hier ist eigentlich immer die Rede von einem. Oder Summier ich die auf?

    Ein Teil meines Ichs freut sich auf Regelungstechnik, weil es Interessant ist und vieles ermöglicht und mein Täglich Brot werden wird, ein anderer teil scheut davor weil es das erste Neue und richtig Schwere sein wird ...


    https://www.roboternetz.de/wissen/in...gitalem_Regler

    Das heißt ich gebe einen Wert w vor - welcher das ist weis ich nicht - und Bilde die Abweichung mit meinem Analogen Spannungssignal x von meinem Sensor

    Danach geh ich einfach den PID Algorithmus durch, also Begrenzen, Differenzieren und Integrieren, Beschränke das ganze noch auf 8 Bit und freue mich meines PWM Signals im 8Bit Format.

    Richtig verstanden?

  10. #30
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.653
    Zitat Zitat von BlackDevil
    Mein Problem ist derzeit zu verstehen was die Störgröße ist ...
    Zitat Zitat von oberallgeier
    ... und das war ernst gemeint.

    Mein Browser (IE7) hat eine pfiffige Funktion: [Strg]-[f] - dann kommt ein lustiges Popup - da schreibste (wenn Du Dich endlich mal über den oben genannten Link bequemt hast) "Störgrö" rein, drückst auf [Weiter] und dann - ei guckk emol do - "Störgröße z: Eine von außen wirkende Größe, die eine Änderung des Istwertes der Regelgröße bewirkt und einen Regelvorgang auslöst. " - - - übrigens lohnt es, den Button [Weiter] weiter zu drücken - da kommt noch mehr . Das will auch gelesen sein.

    Zitat Zitat von BlackDevil
    ... wie ich 3 oder mehr Sensoren in die Regelstrcke unterbring, hier ist eigentlich immer die Rede von einem. Oder Summier ich die auf? ...
    Natürlich regelt ein Regler nur immer ein Objekt. Nix aufsummieren. Oder summierst Du beim Gehen die Schiefstellung beider Füße auf um einen Fuß richtig zu kriegen?

    Du machst abhängig von den Sensoren unterschiediche Aktionen. Nehmen wir an, Du hast die Sensoren l (links), m (mitte) und r (na was wohl). Die sind in dieser Reihenfolge ausgewertet: l m r als digitaler Wert "Sensor sieht Linie = 1" und "Sensor sieht keine Linie = 0".

    001 . . also die Linie ist rechts -> entweder ist ein rechter Bogen zu fahren oder das Followline driftet links ab. Fazit: rechts Tempovorgabe verringern.

    010 . . die Linie ist mittig. Alles ok. Fazit: Gib Gummi! Gib Gummi! Gib Gummi!

    100 . . dies ist eine Übungsaufgabe. Löse sie selber.

    Uuuuups - wirste sagen. Wo ist jetzt die Regelung, da hier nur Tempovorgabe steht? Die Regelung hat die Aufgabe, die vorgegebenen Geschwindigkeiten einzuhalten. ABER: setzt Dich in Dein Auto und gib 400 kmh vor. Wird problematisch. Fazit: die Tempovorgabe muss sinnvoll und erreichbar sein. Sinnvoll: daher wird beispielswese bei Sensorstatus 001 das Tempo rechts verringert - weil durch die Kurve nicht soooo schnell gefahren werden soll.

    Das ist doch verständlich, oder?

    Zitat Zitat von BlackDevil
    ... Das heißt ich gebe einen Wert w vor - welcher das ist weis ich nicht - und Bilde die Abweichung mit meinem Analogen Spannungssignal x von meinem Sensor...
    Genau. W, die Führungsgröße, ist die zu fahrende Sollgeschwindigkeit (hast Du denn wenigstens meinen Code gelesen?). Aus dem analogen Spannungssignal wär es sinnvoll einen Wert für eine Ist-Geschwindigkeit abzuleiten (hast Du denn wenigstens meinen Code gelesen?). Sonst musst Du vorher aus Deiner Sollgeschwindigkeit einen Sollwert für Dein Spannungssignal ausrechnen: Du darfst ja nicht Äpfel mit Birnen vergleichen.

    Zitat Zitat von BlackDevil
    ... Danach geh ich einfach den PID Algorithmus durch, also Begrenzen, Differenzieren und Integrieren, Beschränke das ganze noch auf 8 Bit und freue mich meines PWM Signals im 8Bit Format.
    Richtig verstanden?
    So einigermassen. Blos mit den Leseempfehlungen hapert es.
    Ciao sagt der JoeamBerg

Seite 3 von 5 ErsteErste 12345 LetzteLetzte

Berechtigungen

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

LiFePO4 Speicher Test