- fchao-Sinus-Wechselrichter AliExpress         
Seite 3 von 4 ErsteErste 1234 LetzteLetzte
Ergebnis 21 bis 30 von 32

Thema: Problem mit dem Auswerten der Liniensensoren

  1. #21
    Erfahrener Benutzer Begeisterter Techniker Avatar von Jacob2
    Registriert seit
    26.05.2007
    Ort
    Berlin
    Beiträge
    345
    Anzeige

    Praxistest und DIY Projekte
    Ok,
    in asuro.h finde ich diese Zeilen zwar nicht, aber wenn man es oben mit hinschreibt bleibt nur noch ein Fehler:

    test.c:100: error: parse error before ';' token

    und zwar in der zeile:

    for (j = 0; j < 255; j++ LineData(lineData);

    Ansonsten Danke erstmal für die Antwort.
    MfG Jacob

  2. #22
    Erfahrener Benutzer Begeisterter Techniker Avatar von Jacob2
    Registriert seit
    26.05.2007
    Ort
    Berlin
    Beiträge
    345
    Ups...
    Das sollte kein Smilie werden sondern ein ; und ein )

  3. #23
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    61
    Beiträge
    5.799
    Blog-Einträge
    8
    Genau dieses ; vor der ) in der for-Anweisung nach j++ ist zuviel.
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  4. #24

  5. #25
    Erfahrener Benutzer Begeisterter Techniker Avatar von Jacob2
    Registriert seit
    26.05.2007
    Ort
    Berlin
    Beiträge
    345
    Ja, es funktioniert!!!
    Aber ASURO fliegt in den Kurven manchmal raus. Was kann man da verbessern?
    MfG Jacob

  6. #26
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    37
    Beiträge
    4.063
    probier mal, das ganze etwas aufzudröseln:
    [code]
    for(j=0;j<255;++j){
    LineData(lineData);
    }
    [code]
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  7. #27
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    14.04.2007
    Ort
    Einhausen
    Alter
    68
    Beiträge
    697
    Was kann man da verbessern?
    Du kannst versuchen, die PID-Parameter Kp und Ki anzupassen.

  8. #28
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    29.05.2005
    Beiträge
    1.018
    Hallo zusammen,
    im main() ist die von damaltor angesprochene Schleife über die Funktion LineData() um die Variable ADOffset zu füllen.

    Diese Variable wird in der Funktion FollowLine () (Der Ursprung ist im übrigen wohl von waste nicht wahr?) dazu benutzt, um nun die Helligkeitsdifferenz auf der Linie beim 'wackeln' zu korrigieren.

    Steht der Asuro beim Starten des Programm nun nicht genau mittig auf der Linie, holen wir uns beim Start vom main() diese falsche Position in den Regler.
    Die Variable ADOffset sollte nicht benutzt werden! Ohne sie sucht sich der Asuro die Mitte der Linie selber und kann dann an dieser Position den besten Konrast, und damit die kleinste Abweichung vom Idealwert, sehen.
    Dann funktionieren die PID-Vorgaben, die waste mühevoll in diesem Thread ermittelt hat, eigendlich extrem gut.

    P.S.: Der original Code von waste, mit Kommentar, ist hier zu finden. Die PID-Parameter hatte waste ursprünglich mit: kp = 3; ki = 10; kd = 70; angegeben.
    Hatt da jemand ki und kp vertauscht?
    Allerdings gibt es von waste (für seinen Asuro) auch noch: kp=5; ki=5; kd=70; Damit läuft mein Asuro allerdings nicht so gut.
    Diese Änderung, mit einer Codeverbesserung, hat waste hier abgelegt.
    Somit hat ehenkes Recht, wenn er schreibt, dass da gedreht werden kann/soll.
    Lieber Asuro programieren als arbeiten gehen.

  9. #29
    Erfahrener Benutzer Begeisterter Techniker Avatar von Jacob2
    Registriert seit
    26.05.2007
    Ort
    Berlin
    Beiträge
    345
    Äh..
    Wenn ich das richtig verstanden habe sind ki und kp vertauscht!?
    Also einfach die werte tauschen oder?
    Das mit ADOffset hab ich jetzt nich ganz verstanden, aber ok.
    MfG Jacob

  10. #30
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    29.05.2005
    Beiträge
    1.018
    @Jacob2
    Das mit dem getauschten ki und kp kommt daher, dass das Original von waste diese Werte gegenüber den Angaben, die ich in ehenkes Post gefunden habe, getauscht hat.
    So einfach ist das nicht mit dem Tauschen. Wie ehenkes schon geschrieben hat, sind das Werte, bei denen man 'probieren' darf. Wenn du die richtigen Werte anhand des Threads von waste nicht berechnen kannst, bleibt eben nur probieren über. (Ich habe meine Werte auch nicht berechnet. Ich kann das auch nicht nachrechnen, was bei waste steht. Habe einfach seine Werte übernommen.)
    (Die mit Smilie versehen Frage sollte auch eher an ehenkes gehen )

    Das mit den ADOffset ist nicht so wichtig, wenn du den Asuro beim Starten sehr genau auf mittig auf die Linie stellst.
    Lieber Asuro programieren als arbeiten gehen.

Seite 3 von 4 ErsteErste 1234 LetzteLetzte

Berechtigungen

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

Labornetzteil AliExpress