- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 10 von 18

Thema: Roboterbau mit RPi - Tutorial

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter Genie Avatar von pinsel120866
    Registriert seit
    18.12.2007
    Ort
    Hohenems
    Alter
    57
    Beiträge
    847

    Roboterbau mit RPi - Tutorial

    Ich werde in diesem Threat (ist übrigens mein 700ster) den Aufbau meines "PinselBot" beschreiben, um anderen die Möglichkeiten den Bot nachzubauen bzw. Anregungen für Weiterentwicklungen zu geben. Es soll dargestellt werden, dass es im Grunde nicht besonders schwer ist, Module bzw. Sensoren direkt an die GPIO Schnittstelle des Raspberri Pi anzuschliessen und damit einen autonomen Roboter aufzubauen.

    ACHTUNG: Die GPIO Pins dürfen mit einer Spannung von max 3,3 Volt im Eingang (Input) betrieben werden, höhere Spannung führt im schlimmsten Fall zur Zerstörung des RPi's!!! Ich übernehme keine Verantwortung, sollte jemand meiner Anleitung folgen und durch fehlerhafte Verkabelung sein Board zerstören.

    Als Buch für den Anfänger empfehle ich "Durchstarten mit Raspberry Pi" von Erik Bartmann ISBN: 978-3-86899-410-0 (dies soll keine Werbung sein, aber ich finde das Buch sehr gut). Ich gehe davon aus, dass das RPi mit Raspian "Wheezy" vorbereitet ist und eine WLAN Verbindung zum Netzwerk besteht.

    Beginnen möchte ich mit dem Antrieb:

    Einkaufsliste:

    Neben dem Raspbery Pi benötigst du
    - RP5/6 Fahrgestell inkl. Motoren und Batteriehalter
    - Motortreiber L298N fertig aufgebautes Modul
    - Mobiles Ladegerät
    - Female to Female Kabel
    - USB Kabel Ladegerät-RPi
    - 6 Stk. Akkus vom Typ AA

    Weiters habe ich mir aus 2mm Plexiglas eine 220x100mm grosse "Plattform" geschnitten. Darauf kommen RPi und Motortreiber, befestigt mit z. B. Klettband. Aja, Distanzbolzen zur Besfestigung der Plattform am Fahrgestell braucht man auch noch.

    Die Verkabelung ist relativ einfach, weil man in dieser Phase noch kein Steckbrett benötigt wird, siehe Fotos.
    Zu beachten ist, dass das Massekabel vom RPi kommend an die Masse des L298N geklemmt wird, sonst funktioniert das Ganze nicht.

    Noch die GPIO-Library installieren:
    von http://pypi.python.org/pypi/RPi.GPIO herunterladen

    in der Console
    $ tar zxf RPi.GPIO-0.x.x.tar.gz
    $ cd RPi.GPIO-0.x.x
    $ sudo python setup.py install

    Nachdem das erledigt ist, kann das Programm ins /pi/home Verzeichnis kopiert werden:
    Code:
    #Get the GPIO module
    import RPi.GPIO as GPIO
    
    #Get the time module
    import time
    
    #A routine to control a pair of pins
    def ControlAPairOfPins(FirstPin,FirstState,SecondPin,SecondState):
      if FirstState == "1":
        GPIO.output(int(FirstPin),True)
      else:
        GPIO.output(int(FirstPin),False)
    
      if SecondState == "1":
        GPIO.output(int(SecondPin),True)
      else:
        GPIO.output(int(SecondPin),False)
      #Just retur
      return
    
    ####Main body of code
    
    #Get rid of warnings
    GPIO.setwarnings(False)
    
    #Set the GPIO mode
    GPIO.setmode(GPIO.BOARD)
    #Set the pins to be outputs
    GPIO.setup(19,GPIO.OUT)
    GPIO.setup(21,GPIO.OUT)
    GPIO.setup(23,GPIO.OUT)
    GPIO.setup(24,GPIO.OUT)
    
    while True:
    
        ControlAPairOfPins("19","1","21","0")
        ControlAPairOfPins("23","1","24","0")
        print "Drehung nach rechts"
        time.sleep(1)
    
        ControlAPairOfPins("19","0","21","0")
        ControlAPairOfPins("23","0","24","0")
        print "Stop"
        time.sleep(1)
    
        ControlAPairOfPins("19","0","21","1")
        ControlAPairOfPins("23","0","24","1")
        print "Drehung nach Links"
        time.sleep(1)
    
        ControlAPairOfPins("19","0","21","0")
        ControlAPairOfPins("23","0","24","0")
        print "Stop"
        time.sleep(1)
    
        ControlAPairOfPins("19","1","21","0")
        ControlAPairOfPins("23","0","24","1")
        print "Geradeaus vorwaerts"
        time.sleep(1)  
    
        ControlAPairOfPins("19","0","21","0")
        ControlAPairOfPins("23","0","24","0")
        print "Stop"
        time.sleep(1)
    
        ControlAPairOfPins("19","0","21","1")
        ControlAPairOfPins("23","1","24","0")
        print "Geradeaus rueckwaerts"
        time.sleep(1)
    
        ControlAPairOfPins("19","0","21","0")
        ControlAPairOfPins("23","0","24","0")
        print "Stop"
        time.sleep(1)
    Das Programm kennt nur Vollgas und Stop, die Geschwindigkeit kann nicht reguliert werden.

    Gestartet wird mit dem Befehl
    $sudo python motor.py

    Achtung: Der Roboter bewegt sich, sofern alles richtig gemacht wurde!

  2. #2
    Eine Frage ich möchte einen Pi Bot mit Tastatursteuerung WLAN und Kamera bauen dass Fahrgestell und die Brücke hab ich (genau das selbe wie Pinsel) und ich verstehe dass hier nicht wirklich kann mir jemand helfen??

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    24.06.2004
    Ort
    Berlin
    Alter
    59
    Beiträge
    539
    was verstehts du denn?
    das leben ist hart, aber wir müssen da durch.

Ähnliche Themen

  1. wie soll ich mit dem Roboterbau anfangen
    Von el barto im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 3
    Letzter Beitrag: 06.02.2015, 17:15
  2. Pinsel's RPi Bot
    Von pinsel120866 im Forum Vorstellungen+Bilder von fertigen Projekten/Bots
    Antworten: 16
    Letzter Beitrag: 10.02.2013, 07:16
  3. Android auf dem RPI
    Von pinsel120866 im Forum Raspberry Pi
    Antworten: 1
    Letzter Beitrag: 11.12.2012, 20:43
  4. Gesucht: Hilfe für Roboterbau mit Raspberry Pi
    Von haering im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 11
    Letzter Beitrag: 23.04.2012, 18:01
  5. Grundlagen / Tutorial für µC-Programmierung mit C
    Von Zecher im Forum C - Programmierung (GCC u.a.)
    Antworten: 7
    Letzter Beitrag: 26.03.2005, 21:02

Berechtigungen

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

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad