Materialien zum Unterricht

Wireless Access Point

Ein Wirless Access Point stellt ein eigenes drahtloses Netzwerk (WLAN) zur Verfügung. Mit einem entsprechenden Gerät (Smartphone, Tablet...) kann man diesem Netzwerk beitreten. Mehr ist nicht vorgesehen. In der nächsten Übung läuft dann auf dem ESP32 ein Webserver.

In der Klasse network sind alle notwendigen Methoden zum Erstellen eines Access-Point enthalten. Der Name des Access-Point ist hier ESP32. Werden in einem Raum mehrere Geräte im Einsatz, muss dieser Name individuell angepasst werden.

Läuft das Programm auf dem ESP32, kann man sich mit einem mobilen Gerät (Smartphone, Tablet...) am Access-Point anmelden.


import network
import time
# Access Point erstellen
ap = network.WLAN(network.AP_IF)  # WLAN-Objekt für den Access Point erstellen
ap.active(True)  # Access Point aktivieren
# SSID und Passwort für den Access Point festlegen
ap.config(essid="ESP32", password="12345678", authmode=network.AUTH_WPA_PSK)
while ap.active() == False:  # Warten bis der Access Point aktiv ist
    pass
# Access Point aktiv und Konfiguration anzeigen
print("Access Point aktiv")
print(ap.ifconfig()) # Es werden die Daten des Access-Point angezeigt
while True:
    stations = ap.status('stations') # Die  Informationen der angemeldeten Geräte werden geholt 
    print('Verbunden:', stations) # und angezeigt
    time.sleep(5) # eine Pause von 5 Sekunden

Hat sich ein Gerät mit dem Access-Point verbunden, wird es angezeigt. Es funktioniert!

Die Methode ap.ifconfig() zeigt:

  1. die IP-Adresse des Access-Point
  2. die Subnetzmaske
  3. das Gateway
  4. den DNS-Server
PWM

Der ESP32 hat standardmäßig die IP-Adresse 192.168.4.1. Das erste Gerät, das sich mit dem Access-Point verbindet, bekommt über den automatisch gestarteten DHCP-Server die Adresse 192.168.4.2. Für jedes weitere Gerät wird dann entsprechend der Netzwerkmaske die letzte Stelle der IP-Adresse hochgezählt.

Hat man mehrere ESP32 im Raum, muss jeder Access-Point einen eigenen Adressraum benutzen.

Übergibt man der Methode ap.ifconfig() Parameter, kann man die Adressen selber festlegen:

ap.ifconfig(('192.168.10.1', '255.255.255.0', '192.168.10.1', '192.168.10.1'))

zurück