Kies welke cookies je toestaat. Je kunt je keuze altijd wijzigen via "Cookie-instellingen" onderaan de pagina.

Zoeken in het lesmateriaal

Welke les zoek je?

Typ minimaal twee tekens.

Intelligentie voor zelfrijdende auto’s

Programmeer samen een zelfrijdende auto en een fiets. Met een camera, beeldherkenning en AI laat je de auto bepalen of de oversteek vrij is. Bespreek ook wat er kan misgaan als AI een verkeerd antwoord geeft.

Download les (PDF) (opent in een nieuw tabblad)

Gratis · A4 · leerkrachtdeel, leerlingdeel en werkkaarten

Omslagfoto van de les Intelligentie voor zelfrijdende auto’sNieuw10 downloads

Voor de docent

Leerdoelen

Na deze les kunnen de leerlingen:

  1. De leerling gebruikt het LLM-blok met beeldherkenning om voorwerpen waar te nemen en booleaanse antwoorden te genereren die de besluitvorming in een gesimuleerde verkeerssituatie sturen.
  2. De leerling past variabelen, booleaanse logica, functies en gelijktijdige uitvoering toe om een dynamisch programma te maken dat het gedrag van een zelfrijdend voertuig nabootst.
  3. De leerling simuleert een praktijksituatie waarin een zelfrijdende auto met AI en beeldherkenning visuele gegevens moet interpreteren en beslissingen over doorrijden of wachten moet nemen in de nabijheid van een fietser.

Voorbereiding

Benodigdheden

  • Documentcamera met USB-aansluiting
  • Fietsafbeelding
  • Plakband
  • Tablet/computer

Materialen voor de docent

Materialen voor de leerlingen

  • 2 Ozobots (Evo of Ari) per groep
  • 1 apparaat om op te programmeren per groep
  • 1 werkkaart per groep
  • 1 fietsvermomming per groep
  • 1 camera met USB-aansluiting die van bovenaf filmt per groep
  • Ozobot Editor: https://editor.ozobot.com/blockly

Lesverloop

  1. Stap 1: Introductie

    Vandaag werken leerlingen in teams om het besluitvormingsproces van een zelfrijdende auto na te bootsen. Met de Ozobot Editor programmeren ze een fiets en een auto die over een parcours rijden. Het programma gebruikt een camera die is verbonden met de Ozobot Editor om te bepalen of de fiets de straat oversteekt. Leerlingen stellen het LLM een vraag en gebruiken het antwoord van de AI, waar of onwaar, om te bepalen of de auto moet stoppen of doorrijden. Zo verkennen ze met een vereenvoudigde simulatie hoe visuele gegevens, AI en logica de beslissingen van een voertuig kunnen sturen.

  2. Stap 2: Uitleg

    Een zelfrijdende auto is een voertuig dat zonder menselijke bediening kan rijden. Met sensoren, camera’s, kunstmatige intelligentie en computersystemen neemt de auto zijn omgeving waar, neemt hij beslissingen en bestuurt hij zichzelf. Deze auto’s zijn ontworpen om hun omgeving te begrijpen, verkeersregels te volgen, obstakels te vermijden en passagiers veilig te vervoeren, zonder menselijke bestuurder.

    Laat korte video’s of demonstraties zien van bedrijven zoals Waymo, Tesla of Cruise om de belangstelling te wekken. Vraag je klas:

    • Heb je ooit in een zelfrijdende auto gezeten? Zo ja, hoe was dat?
    • Wat maakt een zelfrijdende auto veilig?
    • Hoe weet de auto wanneer hij moet stoppen voor een voetganger?
    • Welke soorten sensoren zou de auto kunnen gebruiken?

    Deze vragen leiden naar de kern van deze les: begrijpen hoe voertuigen met AI gegevens en logica gebruiken om direct beslissingen te nemen.

    Bespreek enkele van de volgende technologieën waarmee moderne zelfrijdende voertuigen hun omgeving voortdurend in kaart brengen en begrijpen:

    1. LIDAR (lichtdetectie en afstandsmeting) zendt laserpulsen uit om een 3D-kaart van de omgeving van de auto te maken.
    2. Radar meet de snelheid en afstand van voorwerpen in de buurt. Zo weet de auto hoe snel andere voertuigen of mensen bewegen.
    3. Camera’s werken als ogen. Ze helpen het voertuig belangrijke visuele details te herkennen, zoals verkeersborden, verkeerslichten, rijstrookmarkeringen en voetgangers.
    4. Beeldherkenning is het vermogen van een computer of robot om beelden of video’s van een camera te bekijken en te begrijpen.
    5. Kunstmatige intelligentie (AI) houdt in dat computers of machines zijn ontworpen om te denken, te leren en beslissingen te nemen op een manier die lijkt op die van mensen. Met AI en algoritmen kan een zelfrijdende auto voorwerpen herkennen, beweging waarnemen en op basis van wat hij ziet bepalen wat hij moet doen.
  3. Beroepsoriëntatie

    Stap 3: Beroepsoriëntatie: AI-ingenieurs en autonome systemen

    Leg leerlingen uit dat ze vandaag nabootsen hoe een zelfrijdende auto op fietsers reageert. Ze gebruiken daarvoor een vereenvoudigde versie van wat ingenieurs doen bij het ontwikkelen van systemen voor zelfrijdende voertuigen. Laat de werkkaart zien. Wijs erop dat deze een weg voorstelt die auto’s en fietsers samen gebruiken en waar ze rekening met elkaar moeten houden.

    1. De ene robot is de zelfrijdende auto en de andere robot is de fietser.
    2. Beide robots bewegen tegelijkertijd over hetzelfde parcours.
    3. Een camera boven het parcours bootst het zichtsysteem van het voertuig na.

    Hoe werken de camera en het LLM samen in ons programma?

    Leg stap voor stap uit wat er gebeurt als we de camera en het LLM-blok in onze code gebruiken:

    1. De camera kijkt: een camera die is aangesloten op je programmeerapparaat maakt een foto van je werkkaart. Dit noemen we beeldherkenning: computers ‘zien’ en analyseren beelden.
    2. De afbeelding gaat naar het LLM: de foto wordt verstuurd naar een AI-hulpmiddel dat een LLM heet, een groot taalmodel. Daarvoor gebruiken we een model dat ook beeldinvoer ondersteunt. Het analyseert de afbeelding op basis van de opdracht die we geven.
    3. Je stelt de AI een vraag: in je code schrijf je een heel gerichte vraag. In deze les vragen we: ‘Is de rode lijn zichtbaar?’
    4. Het LLM kijkt en antwoordt: het LLM analyseert de afbeelding om je vraag te beantwoorden. Het antwoord kan een woord, een getal of een antwoord met waar of onwaar zijn.
    5. Het programma reageert: je code gebruikt dat antwoord om Ozobot iets te laten doen, zoals stoppen, praten, draaien of een afbeelding tonen.

    Opmerking voor de docent: dit is een vereenvoudigd voorbeeld van beeldherkenning in de praktijk. Hoeveel beelden echte systemen per seconde analyseren, verschilt per systeem. Ook daar worden visuele gegevens gebruikt om beslissingen te nemen, zoals stoppen of doorrijden.

  4. Stap 4: Opstelling

    Voor deze les zijn 2 Ozobots nodig. Je kunt werken met 1 Ari en 1 Evo, 2 Ari-robots of 2 Evo-robots. De gedeelde code laat de opstelling zien met 1 Ari als auto en 1 Evo als fiets.

    Help leerlingen hun robots en de camera met de Ozobot Editor te verbinden:

    • Met Evo: zet Evo aan en klik op Apparaten > +Evo.
    • Met Ari: zet Ari aan en open de Blockly-app in de map Informatica. Klik in de Editor op Apparaten > +Ari.
    • Camera: sluit de camera aan op het apparaat waarop je programmeert. We raden een USB-documentcamera aan die je op een laptop aansluit. Klik in de Editor op +Camera en selecteer je camera in de lijst.

    Richt de camera op je werkkaart, zodat de weg en de robots duidelijk in beeld zijn. Controleer het cameravoorbeeld in de Editor. Zorg dat het camerabeeld overeenkomt met hoe leerlingen het papier op hun tafel zien. Is dat niet zo? Draai dan het papier of pas de hoek of positie van de camera aan totdat links en rechts overeenkomen.

    Leerlingen moeten ook het LLM toevoegen via Apparaten > LLM_Bot.

    Leerlingen kunnen de afbeelding van de fiets uitknippen en met plakband vastmaken op de robot die de fiets voorstelt.

  5. Stap 5: Programmeren

    Met dit programma bootsen leerlingen een verkeerssituatie na waarin een zelfrijdende auto en een fiets een weg delen. Leerlingen gebruiken beeldherkenning en AI-logica om de auto in deze simulatie te laten oversteken of wachten.

    De fiets begint op de rode lijn, gericht naar de kruising in het midden. De auto begint op de blauwe lijn, ook gericht naar de kruising in het midden.

    De fiets blijft aan de linkerkant van de weg en rijdt door het park en het bos.

    De auto blijft aan de rechterkant van de weg en rijdt door de stad en de woonwijk.

    STAP 1: Maak de GPS-functie

    We maken een herbruikbare GPS-functie waarmee zowel de fiets als de auto een route aan de eigen kant van de weg kan rijden. (Deelcode: s47zfyz)

    1. Maak een nieuw functieblok en geef het de naam ‘GPS’.
    2. Voeg een blok stel variabele in toe en maak een nieuwe variabele met de naam ‘willekeurigGetal’.
    3. Gebruik een blok willekeurig geheel getal om ‘willekeurigGetal’ een waarde tussen 1 en 2 te geven.
    4. Maak vervolgens een reeks instructies waarmee de robots een rondje om één kwadrant van de kaart rijden: een herhaal 3 keer-lus met volg lijn tot volgende kruising en kies richting rechts, gevolgd door één blok volg lijn tot volgende kruising. Dupliceer deze reeks code en verander de richting in links.
    5. Maak een voorwaarde: als ‘willekeurigGetal’ even is, laat je de robot rechtsaf slaan. Anders laat je de robot linksaf slaan.
    6. Deze functie geeft een kans van 50/50 om rechtsaf of linksaf te slaan. De fiets en de auto komen zo weer terug bij hun startpunt.

    STAP 2: Programmeer de fiets

    De fiets blijft rondrijden aan de linkerkant van de weg. (Deelcode: y44mrj3)

    1. Gebruik een blok met apparaat en selecteer de robot die de fiets voorstelt.
    2. Stel de lijnvolgsnelheid in op 30 mm/s.
    3. Roep de GPS-functie aan om de route af te leggen.
    4. Plaats dit stuk code in een blok herhaal voor altijd.

    STAP 3: Programmeer de auto

    In deze simulatie gebruiken we de zichtbaarheid van de rode lijn als aanwijzing dat de oversteekplaats vrij is. We vragen het LLM of de rode lijn zichtbaar is op de camerafoto. Antwoordt het LLM met waar, dan laat het programma de auto doorrijden. Bij onwaar wacht de auto. Dit is een vereenvoudiging: het LLM kan zich vergissen en één zichtbare lijn op één foto bewijst niet dat oversteken veilig is. Deze controle is niet geschikt voor echt verkeer. (Deelcode: jjwboyf)

    1. Gebruik een blok met apparaat en selecteer de robot die de auto voorstelt. Maak daarin een variabele met de naam ‘oversteekControle’ en geef deze de waarde van een LLM-blok. Typ: ‘Is de rode lijn zichtbaar?’ Stel het uitvoertype in op booleaans, zodat het antwoord waar of onwaar is. Zorg dat ‘camera’ in het blok is aangevinkt.
    2. Voeg een blok druk af toe en koppel er een blok ‘oversteekControle’ aan om het antwoord in de console te zien.
    3. Maak een voorwaarde met een blok vergelijk en stel in dat ‘oversteekControle’ gelijk is aan waar.
    4. Als de voorwaarde waar is, neemt het programma aan dat de fiets niet bij de kruising staat. Voeg in het doe-gedeelte een blok druk bericht af toe met de tekst ‘Oversteekplaats is vrij’ en een blok verlaat lus.
    5. Als de voorwaarde onwaar is, neemt het programma aan dat de fiets bij de kruising staat. Voeg in het anders-gedeelte een blok druk bericht af toe met de tekst ‘Fietser steekt over, wacht’ en voeg een blok wacht 3 seconden toe.
    6. Plaats deze reeks code binnen met apparaat in een blok herhaal voor altijd. Dit is de binnenste controlelus: het programma vraagt telkens opnieuw of de rode lijn zichtbaar is. Bij waar verlaat verlaat lus alleen deze controlelus.
    7. Plaats na de binnenste controlelus, maar nog binnen met apparaat, de blokken om de lijnvolgsnelheid in te stellen op 80 mm/s en de GPS-functie aan te roepen. Plaats het hele blok met apparaat voor de auto in een buitenste blok herhaal voor altijd. Zo controleert de auto na elke route opnieuw de oversteekplaats.
    8. Plaats de code voor de fiets en de auto samen in een blok voer gelijktijdig uit.
  6. Stap 6: Uitvoeren en problemen oplossen

    Zet de fiets en de auto op hun aangegeven startpunten op de werkkaart: de rode en blauwe lijn. Plaats de camera boven het parcours, zodat beide robots en het parcours duidelijk in beeld zijn. Voer daarna het programma uit en zie je verkeerssimulatie tot leven komen!

    Werkt je programma niet zoals bedoeld? Controleer dan het volgende:

    1. Het LLM-blok is ingesteld op booleaans met 1 camera.
    2. De logica van ‘oversteekControle’ zorgt ervoor dat het programma alleen de binnenste controlelus verlaat wanneer de waarde gelijk is aan waar.
    3. De blokken met apparaat voor de fiets en de auto staan elk in een eigen herhaal voor altijd-lus, zodat ze blijven rondrijden. Bij de auto staat binnen met apparaat eerst de binnenste controlelus en daarna de code voor het rijden van de route.
    4. Beide robots op het parcours zijn duidelijk zichtbaar in het camerabeeld.
    5. Plaats de sensoren aan de onderkant iets voorbij de rode en blauwe lijn, zodat de robot deze bij het vooruitrijden niet als kruising leest.
  7. Stap 7: Uitbreiding

    We willen een realistische oversteekplaats nabootsen waar voetgangers of fietsers niet altijd evenveel tijd nodig hebben om over te steken.

    Soms duurt dat maar 3 seconden, maar een andere keer kan het 20 seconden duren. De auto moet dan langer wachten. Daarom voegen we variatie toe aan het moment waarop de fiets terugkeert bij de kruising. (Deelcode: gig87p3)

    1. Maak een variabele met de naam ‘oversteektijd’.
    2. Stel de variabele ‘oversteektijd’ in op een willekeurig geheel getal tussen 1 en 3.
    3. Voeg een voorwaardelijke instructie toe:
      • Als ‘oversteektijd’ = 1, wacht 3 seconden
      • Als ‘oversteektijd’ = 2, wacht 10 seconden
      • Als ‘oversteektijd’ = 3, wacht 20 seconden

    Gebruik je Ari? Dan kun je de meldingen op het scherm van Ari laten verschijnen. Voeg druk bericht af toe met de volgende meldingen:

    ‘Oversteekplaats is vrij’ en ‘Fietser steekt over, wacht’. (Deelcode: iwcf3ws)

  8. Afsluiting

    Stap 8: Afsluiting van de les

    Sluit de les af door te bespreken wat de leerlingen hebben gebouwd:

    1. De robot die de zelfrijdende auto voorstelt, gebruikte beeldherkenning en AI om een mogelijk gevaar te herkennen.
    2. Het LLM gaf een booleaanse uitkomst op basis van wat het ‘zag’.
    3. De auto reageerde op dat antwoord. Met als/anders-logica en gelijktijdig programmeren bootste het programma bewegingen in het verkeer na.

    Laat leerlingen als afsluitende reflectie de volgende vragen bespreken:

    • Hoe bepaalt het programma of Ozobot doorrijdt, en waarom bewijst dat niet dat oversteken veilig is?
    • Welke gegevens gebruikten de camera en het LLM om een beslissing te nemen?
    • Hoe gebruiken echte zelfrijdende auto’s vergelijkbare technologie?
    • Wat zou er gebeuren als het LLM een verkeerd antwoord gaf? Hoe zou een auto veilig kunnen reageren?
    • Welke ethische afwegingen spelen een rol als we machines vertrouwen om deze beslissingen te nemen?
    • Hoe zouden zelfrijdende voertuigen onze toekomst kunnen veranderen? Welke beroepen zouden nodig kunnen zijn om ervoor te zorgen dat ze veilig en verantwoord werken?

Voor de leerlingen

Zelfrijdende auto en fiets

Programmeer twee Ozobots als fiets en zelfrijdende auto. Met een camera en AI laat je de auto bepalen of de oversteekplaats vrij is.

Je hebt nodig

  • 2 Ozobots (Ari of Evo)
  • 1 apparaat met de Ozobot Editor
  • 1 werkkaart
  • 1 fietsvermomming
  • 1 camera met USB-aansluiting

Zo ga je te werk

  1. Stap 1: Bekijk de situatie

    Je bootst na hoe een zelfrijdende auto reageert op een fiets. De auto en de fiets rijden tegelijk over de werkkaart. De camera maakt één foto van het parcours wanneer het LLM-blok wordt uitgevoerd, geen doorlopend camerabeeld. Het programma vraagt: ‘Is de rode lijn zichtbaar?’

  2. Stap 2: Maak de GPS-functie

    Open de Ozobot Editor. Volg eerst de aansluitstappen in het lesplan om beide robots, de camera en LLM_Bot toe te voegen. Maak een functieblok en noem het GPS. GPS is hier alleen de naam van de functie die de robot een route laat rijden; het gaat niet om GPS-plaatsbepaling. Volg de volledige instructie voor de GPS-functie in het lesplan. Neem het willekeurige gehele getal van 1 tot en met 2, de even/oneven-keuze en alle routeblokken over, inclusief de drie herhalingen en het laatste lijnvolgblok.

  3. Stap 3: Programmeer de fiets

    Kies de Ozobot die de fiets voorstelt. Stel de lijnvolgsnelheid in op 30 mm/s. Roep de GPS-functie aan. Laat deze code steeds herhalen.

  4. Stap 4: Programmeer de auto

    Kies de Ozobot die de auto voorstelt. Maak de variabele ‘oversteekControle’. Gebruik een LLM-blok met de vraag: ‘Is de rode lijn zichtbaar?’ Stel het antwoord in op booleaans en vink de camera aan.

  5. Stap 5: Laat de auto reageren

    Als het antwoord waar is, laat je de auto melden: ‘Oversteekplaats is vrij’. Laat de auto dan de lus verlaten. Als het antwoord onwaar is, laat je de auto melden: ‘Fietser steekt over, wacht’. Laat de auto 3 seconden wachten. Herhaal de controle steeds door het LLM-blok opnieuw uit te voeren. De camera maakt daarbij telkens een nieuwe foto. Als de oversteekplaats vrij is, stel je de snelheid in op 80 mm/s en roep je de GPS-functie aan.

  6. Stap 6: Voer tegelijk uit

    Zet de code van de fiets en de auto samen in een blok ‘voer gelijktijdig uit’. Zet de fiets bij de rode startlijn en de auto bij de blauwe startlijn. Laat beide robots naar de middenkruising wijzen. Zet hun bodemsensoren iets voorbij de gekleurde startlijnen, zodat ze de startlijnen niet als kruising lezen. Zet de camera boven het parcours. Controleer of beide robots en de werkkaart goed in beeld zijn. Voer het programma uit.

  7. Stap 7: Je programma debuggen (fouten opsporen)

    Gaat er iets mis? Controleer dan of het LLM-blok booleaans is en de camera gebruikt. Controleer ook of de auto de lus verlaat als het antwoord waar is. Zorg dat beide robots goed zichtbaar zijn. Bekijk in het lesplan ook de uitbreiding met willekeurige wachttijden van 3, 10 en 20 seconden en schermmeldingen op Ari.

Werkkaarten

De werkkaarten zitten in de PDF van deze les. Print ze op 100% (werkelijke grootte), niet op “passend maken”: dan rijdt Ozobot precies over de lijnen.

  • Knipkaart Knipkaart
  • Werkkaart Werkkaart

Download de les met alle werkkaarten (PDF) (opent in een nieuw tabblad)

Video’s

Ozobot – Intelligentie voor zelfrijdende auto's – V3
Video bij de les

SLO-leerdoelen

Met deze les werk je aan de volgende leerdoelen voor digitale geletterdheid (computational thinking) van SLO:

Gerelateerde lessen

  • Nieuw8 downloads

    AI-kwaliteitscontrole aan de lopende band

    • Groep/klas: Klas 3–6
    • Duur: 1 uur 15 min
    • Methode: AI

    Kruip in de rol van kwaliteitsingenieur: programmeer een robot die met een camera en AI computerchips controleert. Bouw voorwaarden en functies, test…

  • Nieuw5 downloads

    Digitale dieronderzoekers: onderzoek doen met een LLM

    • Groep/klas: Groep 8 – klas 1–2
    • Duur: 1 uur
    • Methode: AI

    Onderzoek dieren met een LLM: stel vragen, controleer de antwoorden en sla ze op in variabelen. Gebruik de gegevens in je programma…

  • Nieuw3 downloads

    Beslissingen nemen met beeldherkenning

    • Groep/klas: Groep 8 – klas 1–2
    • Duur: 1 uur
    • Methode: AI

    Laat je Ozobot met een camera naar afbeeldingen kijken en een route kiezen. Programmeer een vraag aan AI, test de beslissing en…

  • Nieuw1 download

    Patronen, geen geheugen: zo werken grote taalmodellen

    • Groep/klas: Groep 5–7
    • Duur: 50 min
    • Methode: AI

    Je leerlingen ontdekken patronen in getalreeksen, voorspellen wat volgt en programmeren Ozobot om hun antwoorden te controleren. Zo onderzoeken ze hoe grote…