Code zoeken

Cursus Les 1 van 10: Raspberry Pi Pico 4WD Smart Car Kit van SunFounder door Robojax

Deze les maakt deel uit van: Raspberry Pi Pico 4WD Smart Car

Cursus Les 1 van 10: Raspberry Pi Pico 4WD Smart Car Kit van SunFounder door Robojax

Introductie

Welkom bij de eerste les van de Raspberry Pi Pico 4WD Smart Car Kit-cursus van SunFounder, gepresenteerd door Robojax. Deze cursus is ontworpen om je van het uitpakken van een complete robotica-kit te brengen naar het volledig besturen van een vierwielaangedreven auto met behulp van MicroPython. Dit gaat niet alleen over het in elkaar zetten van een speeltje; het is een uitgebreide educatieve reis die je de grondbeginselen leert van microcontrollers, sensoren, motorbesturing en draadloze communicatie.

Aan het einde van deze cursus kun je een veelzijdige slimme auto bouwen en programmeren die voor verschillende projecten kan worden gebruikt. De vaardigheden die je hier leert, zijn direct toepasbaar op robotica- en automatiseringstaken in de echte wereld.

Hier zijn slechts een paar praktische projecten die je met deze kit kunt bouwen:

  • Autonome obstakelvermijdende robot: Programmeer de auto om zelfstandig door een kamer te navigeren, met behulp van de ultrasone sensor om muren en meubels te detecteren en te vermijden.
  • Lijnvolgende bezorgrobot: Zet een parcours op en laat de auto een lijn volgen om een post- of onderdelenbezorgsysteem in een werkplaats of kantoor te simuleren.
  • Randdetecterende veiligheidsrobot: Gebruik de klifdetectiefunctie om een robot te creëren die veilig langs de rand van een tafel of aanrecht kan patrouilleren zonder eraf te vallen.
  • Met handgebaren bestuurd voertuig: Implementeer de "volg hand"-functie om een robot te creëren die reageert op jouw bewegingen zonder afstandsbediening, een geweldige introductie tot op nabijheid gebaseerde besturing.
  • Op afstand bestuurde surveillance-auto: Gebruik de mobiele app om de auto door je huis te rijden terwijl deze sensorgegevens streamt, als een leuk, mobiel platform voor beveiligingscamera's.

Wat je zult leren in deze cursus van 10 lessen

Deze cursus is gestructureerd om je kennis geleidelijk op te bouwen. Elke les richt zich op een specifiek aspect van de kit, van basisinstallatie tot geavanceerde functies. Hier is een overzicht van wat je zult bereiken:

  • Les 1 (deze les): Introductie tot de componenten en functies van de kit, en het voor de eerste keer instellen van je computer.
  • Les 2: Het installeren van de benodigde software en het leren van tien basis Python-commando's om je voor te bereiden op het coderen.
  • Les 3: Een diepgaande blik op de functie van elk belangrijk onderdeel en hoe je ze afzonderlijk kunt testen.
  • Les 4: Een stapsgewijze handleiding voor het fysiek assembleren van de slimme autokit.
  • Les 5: Je eerste echte bewegingscode, waarin je leert hoe je de auto vooruit, achteruit en in bochten laat rijden.
  • Les 6: Het programmeren van de "Duw me niet"-functie, die de klifsensoren gebruikt om randen te detecteren en de auto achteruit te laten rijden.
  • Les 7: Het implementeren van lijnvolgen zodat de auto een vooraf gedefinieerd pad kan volgen.
  • Les 8: Het creëren van een "volg hand"-modus waarin de auto de bewegingen van je hand volgt.
  • Les 9: Het combineren van alle functies in een uitgebreid obstakelvermijdingsprogramma.
  • Les 10: Het verbinden van de auto met je mobiele apparaat via de app voor volledige draadloze besturing.

Hardware en componenten

In deze les openen we de doos en onderzoeken we de componenten die bij de SunFounder Raspberry Pi Pico 4WD Smart Car Kit worden geleverd. Begrijpen wat elk onderdeel doet, is cruciaal voor de programmeerlessen die volgen. Laten we eens kijken naar wat er in de verpakking zit (in video op 04:32).

De kit bevat:

  • Raspberry Pi Pico-microcontroller: Het "brein" van de auto. Dit bord is gebaseerd op de RP2040-chip en heeft een Micro-USB-connector voor programmeren en voeding. Het heeft een drukknop voor het selecteren van de opstartmodus en talloze GPIO-pinnen die je zult gebruiken om verbinding te maken met sensoren en motoren (in video op 08:01).
  • Hoofdbesturingsbord: Een aangepast uitbreidingsbord dat op de Pico wordt aangesloten en eenvoudige aansluitingen biedt voor de motoren en sensoren.
  • 4x gelijkstroommotoren en 4x wielen: Deze zorgen voor de vierwielaandrijving (4WD), waardoor de auto kracht en wendbaarheid krijgt.
  • HC-SR04 ultrasone sensor: Wordt gebruikt voor obstakelvermijding. Het meet afstand door ultrasone golven uit te zenden en te timen hoe lang ze erover doen om terug te kaatsen.
  • 3-kanaals grijswaardenlijnsensor: Deze sensor wordt gebruikt voor lijnvolgen. Het kan onderscheid maken tussen een donkere lijn en een licht oppervlak, waardoor de auto een pad kan volgen.
  • 2-kanaals foto-onderbreker: Dit maakt deel uit van het klifdetectiesysteem en wordt gebruikt om te detecteren wanneer de auto op het punt staat van een rand af te rijden.
  • 8-bits RGB-verlichting: Adresseerbare LED's die kunnen worden geprogrammeerd om een breed scala aan kleuren weer te geven voor visuele feedback.
  • Servomotor: Wordt gebruikt om de ultrasone sensor naar links en rechts te laten draaien om obstakels te scannen.
  • 18650-batterijhouder en hardware: Om de auto draadloos van stroom te voorzien.

Software-installatie en -configuratie

Voordat we kunnen beginnen met programmeren, moeten we onze ontwikkelomgeving instellen. Deze cursus gebruikt Thonny, een Integrated Development Environment (IDE) die perfect is voor beginners die MicroPython leren. Het is beschikbaar voor Windows, Mac en Linux (in video op 07:03).

Thonny installeren

Om te beginnen download je de nieuwste versie van Thonny van de officiële website en volg je de installatie-instructies. Het is een eenvoudig proces. Zodra het is geïnstalleerd, kun je het openen en je voorkeurstaal selecteren. De cursus raadt aan om de "Raspberry Pi"-modus te gebruiken, die je kunt selecteren wanneer je het programma voor het eerst opent of later kunt wijzigen in de instellingen (in video op 10:56).

MicroPython installeren op de Pico

De Raspberry Pi Pico moet de MicroPython-firmware geïnstalleerd hebben om Python-code te begrijpen. Hier lees je hoe je dat doet in Thonny (in video op 14:42):

  1. Verbind je Pico met je computer met behulp van een Micro-USB-kabel. Om de bootloader-modus te openen, houd je de BOOTSEL-knop op de Pico ingedrukt terwijl je de USB-kabel aansluit (in video op 13:10).
  2. Klik in Thonny op de rechteronderhoek en selecteer "MicroPython installeren...".
  3. Kies "Raspberry Pi Pico" als doelapparaat en klik op "Installeren". Thonny zal dan de MicroPython-firmware op je bord flashen.

De bibliotheekbestanden van de auto uploaden

De smart car-kit is afhankelijk van een reeks vooraf geschreven bibliotheekbestanden die de laag-niveau besturing van de motoren, sensoren en LED's verzorgen. Je moet de cursusbestanden downloaden van de link in de videobeschrijving en de ZIP-map uitpakken (in video op 12:13).

Eenmaal uitgepakt, vind je een map met de benodigde bibliotheekbestanden. Om deze naar je Pico te uploaden:

  1. Navigeer in Thonny naar de uitgepakte map en selecteer de drie bibliotheekbestanden (bijv. Pico4WD.py, rdp.py en ws.py).
  2. Klik met de rechtermuisknop op de geselecteerde bestanden en kies "Uploaden naar /". Hiermee worden ze gekopieerd naar de hoofdmap van je Raspberry Pi Pico (in video op 16:37).

Uitleg van de code

Om te controleren of alles correct werkt, schrijven we een eenvoudige "blink"-test. Dit is de "Hallo Wereld" van hardwareprogrammering. Hoewel het transcript een live voorbeeld biedt, schrijf je deze code zelf in Thonny. Deze test bevestigt dat de Pico communiceert met je computer en dat je de uitvoerpinnen kunt aansturen.

De kern van de testcode wordt hieronder weergegeven. Dit is een door de gebruiker configureerbaar fragment waarin je het gedrag van de LED kunt wijzigen:

from machine import Pin, Timer

# Door gebruiker configureerbaar: het pinnummer voor de ingebouwde LED
led_pin = 25

# Door gebruiker configureerbaar: de frequentie van knipperen in Hertz (keer per seconde)
blink_frequency = 2.5

led = Pin(led_pin, Pin.OUT)
timer = Timer()

def blink(timer):
    led.toggle()

timer.init(freq=blink_frequency, mode=Timer.PERIODIC, callback=blink)

Zo kun je deze code aanpassen:

  • led_pin: Deze variabele definieert op welke pin je LED is aangesloten. Op de Raspberry Pi Pico is de ingebouwde LED meestal aangesloten op pin 25. Je kunt dit nummer wijzigen als je een externe LED op een andere GPIO-pin wilt aansluiten.
  • blink_frequency: Dit is de snelheid waarmee de LED knippert. Een waarde van 2.5 betekent dat de LED 2,5 keer per seconde aan en uit gaat. Je kunt experimenteren met verschillende waarden:
    • Zet het op 1 voor een langzame, zichtbare knippering.
    • Zet het op 10 voor een snelle knippering.
    • Zet het op 50 of 60 en het knipperen wordt zo snel dat het voor het menselijk oog lijkt alsof de LED constant aan is (in video op 19:49).

Om deze code uit te voeren, klik je eenvoudig op de knop "Uitvoeren" (groen afspeelpictogram) in Thonny. Je zou de ingebouwde LED op je Pico moeten zien knipperen. Om te stoppen, klik je op de knop "Stoppen" (rood vierkantpictogram).

Live projectdemonstratie

In de video demonstreert instructeur Ahmad Shamshiri het volledige proces van het instellen van de software en het uitvoeren van de blink-test. Hij laat zien hoe je Thonny installeert, de MicroPython-firmware flasht en de benodigde bibliotheekbestanden uploadt. Vervolgens schrijft hij de blink-code en experimenteert hij met verschillende frequenties, waarbij hij laat zien hoe het waargenomen gedrag van de LED verandert van een duidelijke knippering naar een constant licht naarmate de frequentie toeneemt (in video op 15:17).

Deze succesvolle test is een cruciale mijlpaal. Het bevestigt dat je Raspberry Pi Pico correct functioneert, dat de MicroPython-firmware is geïnstalleerd en dat je klaar bent om door te gaan naar de meer complexe lessen over motorregeling en sensoren.

Hoofdstukken

  • [00:00] Cursusintroductie en overzicht
  • [01:13] Cursussyllabus en functies
  • [04:32] Uitpakken van de smart car-kit
  • [07:03] Downloaden en installeren van Thonny IDE
  • [08:01] Introductie tot de Raspberry Pi Pico
  • [12:13] Downloaden en uitpakken van cursusbestanden
  • [14:42] MicroPython installeren op de Pico
  • [15:17] Bibliotheekbestanden uploaden naar de Pico
  • [17:30] Schrijven en testen van de blink-code
  • [19:49] Experimenteren met verschillende knipperfrequenties
Geen code bijgevoegd.

Hulpmiddelen en referenties

Nog geen middelen.

Bestanden📁

Geen bestanden beschikbaar.