Sprint 1 · First Flight  ·  US3: venv, pip & de eerste verbinding

Als developer in het droneteam, wil ik een eigen virtuele omgeving opzetten, daarin djitellopy installeren en verbinding maken met de drone, zodat ik op elke laptop dezelfde werkende opstelling heb en mijn project niemand in de weg zit.

Taak 3: Wifi van de drone, import en connect()

De code staat klaar. Nu verbind je voor het eerst met de echte drone. Dat vraagt twee stappen: eerst een fysieke wifi-verbinding, dan drie regels Python.

Drie regels om de drone te laten praten

from djitellopy import Tello  # laad de Tello-klasse uit het pakket

tello = Tello()               # maak een object aan dat de drone voorstelt
tello.connect()               # stuur een handshake via wifi

print(tello.get_battery())    # lees de batterij: geeft een getal (0-100)
Vergeet je connect() niet?
Als je tello.get_battery() aanroept voor tello.connect(), loopt je script vast. Connect() is altijd stap 1.

Tello API — deze twee methodes

Tello API Sprint 1 · US3
MethodeWat het doetGeeft terug
tello.connect() Stuurt een handshake naar de drone over wifi. Gooit een fout als de drone niet bereikbaar is. None
tello.get_battery() Vraagt het batterijpercentage op van de drone. int (0–100)

OSError: Tello unreachable

Je start je script en krijgt dit:

OSError: Tello unreachable

De code klopt, maar de drone is er niet. Python praat via wifi, poort 8889. Als de drone niet aan staat — of jouw laptop met het verkeerde netwerk verbonden is — krijg je deze fout.

De fix is een vaste volgorde: eerst fysiek, dan code.

  • Zet de drone aan. Wacht op het knipperende lampje.
  • Verbind je laptop met het wifi-netwerk van de drone (TELLO-XXXXXX).
  • Activeer je .venv in de terminal.
  • Start je Python-script.
>>> Oefenomgeving: Python REPL Simulator

De drone is in deze simulator verbonden. Doorloop de stappen in volgorde:

  1. tello.connect() — probeer dit eerst. Wat zie je? (Tip: je hebt nog niets geïmporteerd.)
  2. from djitellopy import Tello — importeer de klasse.
  3. tello = Tello() — maak het object aan.
  4. tello.connect() — verbind nu.
  5. print(tello.get_battery()) — lees de batterij.
Python 3.11 REPL Simulator · typ een commando en druk op Enter.
>>> 

Jouw opdracht: eerste verbinding

Schrijf een Python-script connect.py. Het script importeert Tello, maakt een object aan, verbindt met de drone en print de batterij. Elke stap krijgt een commentaarregel in het Nederlands die uitlegt wat er gebeurt.

Acceptatiecriteria

  • Het script start zonder ModuleNotFoundError.
  • De import staat bovenaan, vóór de rest van de code.
  • tello.connect() staat vóór tello.get_battery().
  • De output in de terminal toont een getal tussen 0 en 100.
  • Elke actieve coderegel heeft een verklarend commentaar in het Nederlands.