RC Auto python code

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo :)
    ich habe aus meinen pi ein ferngesteuertes Auto, welches ich über mein wlan steuern kann, gebaut.
    die hardware funktioniert anscheinend auch ganz gut, nur ich habe so meine problme mit python, besonders weil ich in python eingestiegen bin als gerade der wechsel von 2.7 zu 3 erfolgte :D

    was solls, hier mein code:

    wenn ich versuche diesen auszuführen, tritt folgender fehler auf:

    Code
    pi@robot ~/robots $ sudo python robot_user.py 
      File "robot_user.py", line 25
        gpio.output(15, True)
           ^
    SyntaxError: invalid syntax

    Ich würde mich freuen, wenn jemand den fehler findet, und mir den verbesserten code zur verfühgung stellt :)

    :danke_ATDE:

    lg Tim

    Some people have told me they don't think a fat penguin really embodies the grace of Linux, which just tells me they have never seen a angry penguin charging at them in excess of 100mph. They'd be a lot more careful about what they say if they had."[1996] -Linus Torvalds (*1969) :geek: ~hehxes


  • fehlt ne Klammer


    Danke für die schnelle Antwort :):bravo2::bravo2:

    Manchmal bin ich echt blind wie ein Fisch :D
    Jetzt beschwert er sich über zeile 82 :D

    Code
    pi@robot ~/robots $ python robot_user.py 
    Traceback (most recent call last):
      File "robot_user.py", line 82, in <module>
        command = tk.TK()
    AttributeError: 'module' object has no attribute 'TK'

    :rolleyes:

    Hast du eine Idee? :danke_ATDE:

    Some people have told me they don't think a fat penguin really embodies the grace of Linux, which just tells me they have never seen a angry penguin charging at them in excess of 100mph. They'd be a lot more careful about what they say if they had."[1996] -Linus Torvalds (*1969) :geek: ~hehxes

  • Es fand kein Wechsel von python 2.7 zu 3 statt. Beide sind koexistent weil die leider nicht vollständig kompatibel sind.
    Python ist ziemlich pingelig was die Schreibweise und Einrückungen betrifft. Man darf zB keine Leerzeichen und TABs mischen. Auch Gross-Kleinschreibung ist wichtig.
    Aber das nur nebenbei erwähnt...

    Zunächst fällt mir ein Schreibfehler auf:

    Code
    def key_input(event) :
        inti()

    Du hast aber nur ein init() ;)

    Das nächste ist:

    Code
    command = tk.TK()

    Die Initialisierung der TKinter Klasse wäre aber: Tk() nicht TK()

    Noch was:

    Code
    command.bind('<KeyPress>', key_input)

    Wie kommst du auf <KeyPress> ? Das wäre soweit ich weiß nur <Key>. Siehe dazu: http://www.python-course.eu/tkinter_events_binds.php

    Und nun zu deiner Fehlermeldung. zeile 25 bezieht sich auf folgende definition:

    Code
    def reverse(tf) :
        gpio.output(7, True)
        gpio.output(11, False)
        gpio.output(13, False
        gpio.output(15, True)
        time.sleep(tf)
        gpio.cleanup

    Fällt dir da was auf? Da fehlt was.... :D

  • Ok hatte nur einen groß/klein fehler drine...Jetzt kommt kein fehler mehr beim staten, ich teste mal alles durch, und wenn es läuft, meld ich mich nochmal zurück :)

    ----------------
    EDIT:

    Danke für die schnelle hilfe und die vielen verbesserungen (y) :)

    meigrafd danke für die sehr umfassende antwort, werde ich gleich ausbessern ^^

    gut geht ^^ danke an alles die mitgeholfen haben :danke_ATDE:

    ich habe nur noch ein frage: warum bekomme ich auf TKinter keinen zugriff per ssh -X ? das fenster geht zwar auf, um aber steuerbefehle zu senden, muss ich mich per remote desktop verbinden...
    gibt es da ein workaround?
    :mad_GREEN:

    Some people have told me they don't think a fat penguin really embodies the grace of Linux, which just tells me they have never seen a angry penguin charging at them in excess of 100mph. They'd be a lot more careful about what they say if they had."[1996] -Linus Torvalds (*1969) :geek: ~hehxes

    Einmal editiert, zuletzt von hehxes (4. August 2014 um 17:13)

  • Hi hehxes,

    hey klasse das noch jemand so ein Auto mit dem RaPi baut. Meines ist mit Web-Interface Fernsteuerung über das Smartphone am Wochenende fertig geworden.

    Hier ein kleines Video von meinem Auto:

    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne deine Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklärst du dich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

    Mein Python Script für die Steuerung des Autos funktioniert kann man aber sicher schöner / besser programmieren.
    Auch muss ich noch am Faktor für die Beschleunigung schrauben... ich muss noch ganz schön oft die Buttons antippen.

    Viele Grüße,

    ByteYourLife

  • Warum noch? man kann doch immer verbessern und so :D

    Hab mir dein video mal angeschaut, schönes Teil hast du dir da zusammen gebaut :) Meins sieht nicht so schön aus...

    lg Tim

    Some people have told me they don't think a fat penguin really embodies the grace of Linux, which just tells me they have never seen a angry penguin charging at them in excess of 100mph. They'd be a lot more careful about what they say if they had."[1996] -Linus Torvalds (*1969) :geek: ~hehxes


  • ich habe nur noch ein frage: warum bekomme ich auf TKinter keinen zugriff per ssh -X ? das fenster geht zwar auf, um aber steuerbefehle zu senden, muss ich mich per remote desktop verbinden...

    Vermutlich hast du in deinem Terminal Client X11-forwarding vergessen einzuschalten?

    Btw solltet ihr darüber nachdenken gewisse Rules oder Verhaltensweisen einzubauen die das Auto dann selbstständig durchführt, wie zum Beispiel was es machen soll wenn es vor die Wand fährt :D bzw um das halt zu verhindern
    Erst darin liegt der Reiz

  • meigrafd welch ein zufall :D gerade als ich ein neues thema hier im forum erstellen wollte, lese ich deinen ratschlag zum automatischen umfahren von hindernissen...
    Ich sitz gerade dran am pi einen ultraschall sensor zur abstandsmessung einzubauen, dieser soll verhindern das durch eine verzögerung in der internet verbindung jemand das auto gegen einen wand setzt.
    Ich habe schon einen code für den sensor, der geht auch (klar der ist von https://www.modmypi.com/blog/hc-sr04-u…he-raspberry-pi geklaut :DD )
    leider ist in dem code


    keine definition der funktion distance durchgeführt wurden...
    Mein eigener bescheidener versuch funktioniert leider nicht. Ich brauche die funktion um diese später in andere python scripte importieren zu können.
    Hier mein Code

    Irgendwie geht der code auch, python gibt auch ein ergbnis aus, (keinen syntax fehler), aber naja seht selbst:

    Code
    pi@robot ~/robots $ sudo python ufunk.py 
    Distance: <function distance at 0xb6ccf470> cm

    hat jemand ne ahung was diese hexadezimale zahl zu bedeuten hat? Ist es der abstand nur falsch ausgegeben ?

    Das gleiche ergbnis mit der "richtigen datei"

    Code
    pi@robot ~/robots $ sudo python sensor.py 
    Distance Measurement In Progress
    Distance: 81.43 cm


    :P
    lg Tim

    Some people have told me they don't think a fat penguin really embodies the grace of Linux, which just tells me they have never seen a angry penguin charging at them in excess of 100mph. They'd be a lot more careful about what they say if they had."[1996] -Linus Torvalds (*1969) :geek: ~hehxes

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!