Simple Pi Robot – Bouw een 2-WD Autonome Rover met Raspberry Pi
Simple Pi Robot is een hands-on gids die een Raspberry Pi omzet in een volledig functioneel autonoom mobiel platform. Of je nu een hobbyist of een docent bent, deze tutorial leidt je door elke stap – van componentselectie tot controlecode schrijven en realtime video streamen.
Onderdelenlijst
- Raspberry Pi (elk model, Pi B+ of Pi Zero aanbevolen)
- 40-pin GPIO lintkabel (voor Pi B+ of Pi 2)
- Standaard breadboard
- 2-wiel chassis (bijv. Ellipzo 2-WD kit)
- Ultrasonische afstandssensor (HC-SR04)
- Powerbank voor de Pi
- Herlaadbare AA-batterijen (2100 mAh of hoger)
- Male & female draadbruggen, weerstanden
- Wi-Fi-adapter (EDUP of EDIMAX)
- 4 GB+ microSD-kaart voor het OS
- L298 dubbele-motordriverbord
- Servomotor (bijv. Futaba S3003)
- Diversen: kabelbinders, schuimtape voor montage
Stap 1 – Een Motordriver Kiezen
De L298 is een bewezen, kosteneffectieve keuze die een geregelde 5V-voorziening biedt voor zowel motoren als servo's. Het ondersteunt ook afzonderlijke enable-pinnen voor snelheidscontrole. Andere opties omvatten de RTK Motor Controller Shield, Pololu DRV8835, of Adafruit DC/Stepper Motor HAT, maar de eenvoud van de L298 maakt het ideaal voor beginners.
Stap 2 – De L298 Bedraden
Verbind het bord met het chassis als volgt:
- DC Motor A:
OUT-A+→OUT-A- - DC Motor B:
OUT-B+→OUT-B- - Servo:
+5V(geregeld) →Servo +,GND→Servo – - Enable-pin: houd de jumper op plaats voor volle snelheid; verwijder hem voor PWM-snelheidscontrole.
- Verbind vier draadbruggen van de controle-ingangen naar de GPIO-pinnen van de Pi (zie pin-out-diagram).
- Bevestig een enkele draadbrug van de servo-controlelijn naar een andere GPIO-pin.
Stap 3 – De Servo Instellen
De servo vereist een constante 5V-voorziening en een PWM-controlesignaal. In deze build gebruiken we een Futaba S3003 (4,8-6V). Gebruik de RPIO.PWM bibliotheek voor betrouwbare servocontrole via DMA:
sudo apt-get install python-setuptools sudo easy_install -U RPIO
Meer over RPIO.PWM.
Stap 4 – Het Chassis Monteren
We gebruiken de Ellipzo 2-WD chassis kit, wat motoren, een pan/tilt servo-beugel en alle benodigde hardware bevat. Volg de kit-instructies om de Pi, L298 en stroomcomponenten te bevestigen.
Stap 5 – De HC-SR04 Afstandssensor Toevoegen
Verbind VCC met +5V en GND met ground. De TRIG en ECHO pinnen gaan naar GPIO-pinnen (bijv. 18 en 17). Voeg een 1kΩ weerstand op de echo-lijn toe om de Pi te beschermen. De volgende Python-snippet meet afstand:
TRIG = 18 ECHO = 17 # (initialiseer GPIO en voer meting uit)
Stap 6 – Camera en Live Streaming
Bevestig de officiële Pi Camera-module. Installeer VLC voor streaming:
sudo apt-get install vlc
Stream via RTSP:
raspivid -o - -t 0 -n | cvlc -vvv stream:///dev/stdin --sout '#rtp{sdp=rtsp://:8554/}' :demux=h264
Open de stream op elk apparaat met VLC: rtsp://<PI-IP>:8554/.
Stap 7 – Pin-out & Python-besturingscode
Het volledige Python-script hieronder controleert de beweging van de robot, afstandssensing en servo. Het gebruikt RPi.GPIO voor motorlogica en RPIO.PWM voor servo PWM.
from RPIO import PWM import RPi.GPIO as GPIO import time from subprocess import call GPIO.setmode(GPIO.BCM) # Setup GPIO-pinnen GPIO.setup(19, GPIO.OUT) GPIO.setup(26, GPIO.OUT) GPIO.setup(16, GPIO.OUT) GPIO.setup(20, GPIO.OUT) GPIO.setup(21, GPIO.IN) GPIO.setup(8, GPIO.OUT) GPIO.setup(27, GPIO.OUT) GPIO.setup(9, GPIO.OUT) TRIG = 18 ECHO = 17 # Bewegingsfuncties def fwd(): GPIO.output(19, True) GPIO.output(26, False) GPIO.output(16, True) GPIO.output(20, False) # (andere bewegings- en sensorfuncties weggelaten voor beknoptheid) while True: inp = raw_input() if inp == "1": fwd() print("robot beweegt vooruit") # ... (handel andere commando's af) GPIO.cleanup()
Stap 8 – Montagefoto's
Raadpleeg de bijbehorende afbeeldingen voor visuele begeleiding bij bedrading, montage en finale assemblage.
Voor volledige broncode en extra bronnen, bezoek de originele Simple Pi Robot pagina.
Productieproces
- Professionele Fanuc servo motor reparatiediensten
- Professionele Siemens Servomotor Reparatie – Snelle, Betrouwbare Service
- Expert Gids: Servomotor Reparatie & Probleemoplossing Tips
- Servo-gestuurde obstakelvermijdende robot: Bouw met Arduino & HC-SR04
- Joy Robot: Een Slimme Robot Aangedreven door Arduino en ESP8266
- Slim Indoor Navigatie Robot Kit voor Arduino Projecten
- Waarom planeetwieltandwielen servomotorprestaties verbeteren
- Servomotoren Uitgelegd: Hoe Ze Werken en Waarom Ze Belangrijk Zijn
- Servomotor vertragers begrijpen: Functies, voordelen en toepassingen
- Precisie maximaliseren: Tandwielkoppels koppelen aan servomotoren
- Robotoperaties verbeteren met nauwkeurige servo-bewegingstechnologie