5117+ beoordelingen
Bestel voor 16:00 voor dezelfde dag verzending
14 dagen retour
NL
Particulier
Zakelijk
Neem de volgende stap in je programmeeravontuur met Les 6, waarin we een WiFi Mini Webserver bouwen met de Raspberry Pi Pico. Deze boeiende les is perfect geschikt voor beginners die willen starten met de Thonny programmeertool en MicroPython. Ontwikkel stap voor stap vaardigheden terwijl je leert hoe je de Raspberry Pi Pico aansluit op je computer, programma’s uploadt en WiFi configureert om een mini webserver te bouwen. Verken de wereld van draadloze connectiviteit en webontwikkeling met de Pico, en ontdek de veelzijdige mogelijkheden van dit compacte apparaat.
Deze handleiding behandeld:
Dit is de zesde les uit de introductie projecten voor de Raspberry Pi Pico. Voordat je met deze les start raden we aan om de vorige lessen eerst uit te voeren. Les 5 vind je HIER, les 1 vind je HIER.
Om de Raspberry Pico te kunnen programmeren met MicroPython moeten we eerst de firmware flashen van de Pico.
Dit betekent dat we de interne software waarmee de pico start, voorzien van een speciale python versie.
Download firmware van onderstaande website (uf2 file)
https://micropython.org/download/RPI_PICO_W/
(Zorg dat je de goede versie van de firmware selecteert, de wifi versie en de niet-wifi versie zijn verschillend)
Druk op de witte bootsel knop op de pico en blijf deze ingedruk houden.
Plug de pico in een USB poort van je computer. (Daarna kun je de knop loslaten)
Er zal nu een schijfletter, zoals met een memorystick benaderbaar komen.
Kopieer het firmware bestand RPI_PICO_xxxxxx.uf2 naar deze drive
(pico zal herstarten en de firmware wordt geïnstalleerd)
Download en installeer Thonny op je pc.
( https://thonny.org/ )
Selecteer de MicroPython Interpreter onder
Hulpmiddelen > Opties > Interpreter > MicroPython (Raspberry Pi Pico)
Nu kun je in het onderstaande programma overtypen in de Thonny interface.
# boot.py Deze wordt standaard uitgevoerd wanneer je je pico aansluit op de stroom
import network, utime, machine
# Plaats hier je wifi informatie
SSID = "MIJN-ACCESSPOINT"
SSID_WACHTWOORD = "MIJNWIFIWACHTWOORD"
def do_connect():
sta_if = network.WLAN(network.STA_IF)
if not sta_if.isconnected():
sta_if.active(True)
sta_if.connect(SSID, SSID_WACHTWOORD)
while not sta_if.isconnected():
print("Ik probeer te connecten met Wifi")
utime.sleep(1)
print('Connected! Network config:', sta_if.ifconfig())
do_connect()
Sla bovenstaande op als boot.py !
Verander natuurlijk de wifi SSID en Wachtwoord zoals jij ze heb geconfigureerd.
Uitleg van het programma in grote lijnen.
De modules voor netwerk (wifi) worden geladen, utime werk hetzelfde als time in dit geval.
Daarna staan de wifi gegevens gedefinieerd in variabelen.
Daarna is er een functie (te zien aan het woord def) gedefinieerd die de wifi connectie probeert op te zetten.
regel 17 : do_connect()
start de functie
Op regel 16 staat een regel die netwerk informatie print.
Het tweede programma is de mini webserver.
import socket
import network
html = """<!DOCTYPE html>
<html>
<head><title>Mijn Pico website</title></head>
<body> <h1>Mijn Pico website</h1> </body>
</html>
"""
addr = socket.getaddrinfo('0.0.0.0', 80)[0][-1]
s = socket.socket()
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.bind(addr)
s.listen(1)
while True:
cl, addr = s.accept()
cl_file = cl.makefile('rwb', 0)
while True:
line = cl_file.readline()
if not line or line == b'\r\n':
break
cl.send('HTTP/1.0 200 OK\r\nContent-type: text/html\r\n\r\n')
cl.send(html)
cl.close()
Uitleg van het programma:
Druk daarna op opslaan, en sla het programma op je eigen computer op.
Druk op het rode stopbord knopje om de ‘backend’ opnieuw te starten.
(Thonny maakt nu opnieuw verbinding met je Pico)
Daarna zou je groene knop (Voer huidig script uit) in kunnen drukken.
Als de pico nu verwijderd wordt van de computer en opnieuw aangesloten zal het programma niet gestart worden.
We hebben alleen de programmeercode getest.
Om het automatisch starten mogelijk te maken moeten we het programma opnieuw opslaan, maar dan de pico selecteren.
Bestand > Opslaan als > Raspberry Pi Pico
Sla het programma op met de naam main.py. De pico zal het programma met deze naam automatisch starten bij het aansluiten van de Pico op een USB-poort of een andere voeding.
Nadat boot.py is uitgevoerd om de netwerkverbinding te maken, wordt main.py gestart.
Als je nu de Pico start zul je in Thonny iets vergelijkbaars zien staan als onderstaande:
Connecting to your wifi…
Connected! Network config: (‘192.168.192.185’, ‘255.255.255.0’, ‘192.168.192.23’, ‘192.168.192.23’)
Het eerste IP nummer is het nummer dat toegekend is aan de pico.
Die zal bij jou anders zijn dan in dit voorbeeld.
Deze kun je in je browser als volgt in de adresbalk typen.
Als alles nu goed is gegaan zie je een website met de tekst:
Je hebt nu je eigen Raspberry Pi Pico Webserver gebouwd. Heb je alle 6 de Raspberry Pi Pico lessen gevolgd? Dan ben je klaar om zelf verder te experimenteren met het Raspberry Pi Pico platform! Veel bouw en programmeerplezier!