- Labornetzteil AliExpress         
Ergebnis 1 bis 3 von 3

Thema: Pro-Bot128 Linienverfolgung?

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.08.2010
    Alter
    24
    Beiträge
    114

    Frage Pro-Bot128 Linienverfolgung?

    Anzeige

    Praxistest und DIY Projekte
    Hallo Leute!
    Ich hab mal wieder ne Frage zum Probot.
    Ich habe mir mal so einen Skript gebastelt, der nicht funktioniert. Der sieht so aus:
    Code:
    Sub main()
        PRO_BOT128_INIT()
        LINE_LED_ON()
        DRIVE_INIT()
        Do While True
            If READ_LINE_LEFT() >200 Then
                MOTOR_DIR(1,0)
                MOTOR_POWER(160,160)
            End If
            If READ_LINE_RIGHT() >200 Then
                MOTOR_DIR(0,1)
                MOTOR_POWER(160,160)
            End If
            If READ_LINE_LEFT() And READ_LINE_RIGHT() >200 Then
                DRIVE_FORWARD()
            End If
        End While
    End Sub
    Das sollte eine Linienverfolgung werden. Die LED unten geht an, aber der Roboter scheint von der ca.3cm dicken, gedruckten Linie nichts mitzubekommen. Dementsprechend fährt der Bot auch nicht.
    Hat jemand einen funktionierenden Skript für mich?
    Danke
    Verpackung eines PC´s:

    Bei Risiken und Funktionsproblemen Netzstecker durchbeißen und aus den PC aus dem Fenster werfen!

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    07.01.2010
    Ort
    Deutschland
    Beiträge
    739
    Hi pro-bot128
    Zuerst würde ich mal deine verwendeten Werte überprüfen, ob sie überhaupt stimmen können.
    Hier der Code dafür:
    Code:
    Sub main()
        PRO_BOT128_INIT()
        LINE_LED_ON()
    
        Do While True
            Msg_WriteWord(READ_LINE_LEFT())
            Msg_WriteText("Left")
            Msg_WriteChar(10)
            Msg_WriteChar(13)
    
            Msg_WriteWord(READ_LINE_RIGHT())
            Msg_WriteText("RIGHT")
            Msg_WriteChar(10)
            Msg_WriteChar(13)
    
            AbsDelay(10)
        End While
    End Sub
    Wenn dann mit den richtigen Werten immer noch nichts passiert meldest du dich nochmal.

    Mfg
    bnitram

    PS:
    Verwende besser auch Else if...

  3. #3
    Erfahrener Benutzer Roboter Genie Avatar von BMS
    Registriert seit
    21.06.2006
    Ort
    TT,KA
    Alter
    32
    Beiträge
    1.192
    Bei der dritten If-Abfrage fehlt etwas, aus
    Code:
    If READ_LINE_LEFT() And READ_LINE_RIGHT() >200
    lieber das hier machen:
    Code:
    If READ_LINE_LEFT()>200 And READ_LINE_RIGHT() >200 Then
    Und überlege auch, was der Roboter macht, wenn beide READ_LINE einen Wert unter 200 ergeben - dann ist nämlich keine einzige if-Bedingung erfüllt, d.h. der letzte Bewegungszustand wird beibehalten. Soll das so sein?

    Falls beide READ_LINE Werte über 200 sein sollten, sind ja alle drei if-Bedingungen erfüllt, also wird der Controller nacheinander alle Befehle die darin enthalten sind, abarbeiten, in dem Fall also
    MOTOR_DIR(1,0)
    MOTOR_POWER(160,160)
    MOTOR_DIR(0,1)
    MOTOR_POWER(160,160)
    DRIVE_FORWARD()
    Damit werden die Motoren sehr oft umgeschaltet, könnte zu unerwünschten Fahrmanövern führen (oder der Roboter wird sehr langsam).
    Das solltest du - wie bnitram schon geschrieben hat - mit if, else if, ..., else in den Griff bekommen (oder Verschachtelung von if).

    Grüße, Bernhard

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 07.03.2011, 12:06
  2. IR-Funkübertragung am Pro-Bot128
    Von bnitram im Forum Sonstige Roboter- und artverwandte Modelle
    Antworten: 0
    Letzter Beitrag: 01.06.2010, 16:46
  3. IR am Pro-Bot128
    Von bnitram im Forum Sensoren / Sensorik
    Antworten: 2
    Letzter Beitrag: 12.05.2010, 16:23
  4. Pro-Bot128 - Programmierproblem
    Von Neovy im Forum Sonstige Roboter- und artverwandte Modelle
    Antworten: 2
    Letzter Beitrag: 31.01.2010, 11:33
  5. ROBOTERSYSTEM PRO-BOT128
    Von Ripp3r]D3[ im Forum Suche bestimmtes Bauteil bzw. Empfehlung
    Antworten: 7
    Letzter Beitrag: 24.10.2009, 21:50

Stichworte

Berechtigungen

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

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad