ESP32 Introductie
De 2,4 GHz Wi-Fi en Bluetooth combo chip" is de naam van de ESP32 Development Board, uitgebracht in september 2016. Het bevat al twee van de belangrijkste kenmerken: De minder dan 6 cm bord wordt geleverd met een geïntegreerde Wi-Fi-module en Bluetooth 4.2 - voor minder dan 15 € (link https://az-delivery.de/products/esp32-developmentboard). In dit bericht geven we een inleiding tot de ESP32, door deze te vergelijken met de Arduino en de ontwikkelomgeving zo in te stellen dat je een Wi-Fi-scan uitvoeren.
Bijschrift: Trots 34 verschillend toewijsbare pinnen naar buiten worden geplaatst. Rechtsboven op de foto bevindt zich de Wi-Fi-antenne aan het bord.
De ESP32 heeft een verscheidenheid aan functies die ongebruikelijk zijn in de prijsklasse: het heeft een ingebouwde Wi-Fi-module die kan worden gebruikt via de beschikbare codebibliotheken met een paar regels code om gegevens van een webserver op te halen. Een hobbyist uit het gebied ten zuiden van Stuttgart wist zelfs gegevens te ontvangen van de ESP32 Wi-Fi module op een afstand van 10 km (!) (link https://www.youtube.com/watch?v=yCLb2eItDyE). De bluetooth-module aan boord kan bijvoorbeeld worden gebruikt om gegevens over te zetten naar smartphones of andere Bluetooth-apparaten. Verder heeft de module een 2-core 32-bits processor die werkt met een klokfrequentie van 160 of 240 MHz. vergeleken met de Arduino (16 MHz) een enorme vooruitgang (exacte benchmarks https://hilo90mhz.com/arduino-esp32-esp8266-101-speed-test-comparison-chart/). De hoeveelheid geheugen (SRAM) is 520 KiB. Ook vermeldenswaard zijn de 16 PWM kanalen, een temperatuursensor, vier SPI, drie UART en twee I2C interfaces, twee digital-to-analog converters en nog veel meer.
Vergelijking met een microcontroller, compatibel met de Arduino Uno
|
ESP32 |
Microcontroller, compatibel met de Arduino Uno (ATmega 328P) |
|
|
|
Processor (CPU) |
240 MHz dual core Tensilica LX6 |
16 MHz single core |
Geheugen (SRAM) |
520 KiB |
1 KiB |
Pinnen (GPIO) |
34 verschillende pinnen |
20 pins (14 digitaal, 6 analoog in) |
Spanning |
3.3 V. |
5 V |
Connectiviteit |
Wi-Fi, Bluetooth 4.2 |
niets dergelijks |
PWM-pins |
maximaal 16 uitgangen |
6 uitgangen |
Digitaal naar analoog |
Twee |
№ |
Prijs |
minder dan 15 € |
Arduino compatibel voor minder dan 8 € (https://az-delivery.de/products/uno-r3-board-mit-atmega328p-und-usb-kabel) |
Programmering
De ESP32 module kan op drie verschillende manieren worden geprogrammeerd: (1) Met het Espressif IoT Development Framework (ESP-IDF http://esp-idf.readthedocs.io/en/latest/index.html), in zeer machinaal genomen C++. Eclipse, bijvoorbeeld, is een ontwikkelomgeving (IDE). (2) Ook in de Arduino IDE, met de gebruikelijke functies (digitalWrite, attachInterrupt, ...). We zullen deze mogelijkheid hier blijven nastreven, omdat het het meest geschikt is voor beginners. (3) Met de programmeertaal Lua (https://github.com/Nicholas3388/LuaNode).
De code die is gekoppeld aan optie 2 (programmeren met de Arduino IDE) is te vinden in een repository van Espressif op GitHub (https://github.com/espressif/arduino-esp32). Daar vindt u ook gedetailleerde, geïllustreerde installatie-instructies voor Windows, Mac en Linux (https://github.com/espressif/arduino-esp32#installation-instructions). Als u na het uitvoeren van elke stap geen nieuwe COM-poort in de Arduino IDE- en Windows Device Manager ziet, installeert u de USB naar UART Bridge-stuurprogramma's. (https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers) In de Arduino-ontwikkelomgeving zijn nieuwe borden beschikbaar, die u selecteren in het menu onder Extra > Board > ESP32 Arduino.
Wi-Fi-scan
De "Hello World!" van een ESP32 is niet het knipperen van een LED: we beginnen met het aanbieden van de Wlan-netwerken binnen bereik; met signaalsterkte in dBm! (https://support.metageek.com/hc/en-us/articles/201955754-Understanding-WiFi-Signal-Strength) Selecteer hiervoor het voorbeeld van sketch WiFiScan, dat u vinden in het menu onder Bestand > Voorbeelden > Voorbeelden voor ESP32 Dev Module > WiFi > WifiScan en upload en upload het naar de ESP32 Dev-module die is aangesloten via Micro USB. Om de uitvoer te zien, moet u de baud-snelheid in de Seriële monitor verhogen tot 115200.
2: TP-LINK (-66)*
3: YouShallnotpass (-67)*
4: FortKnox (-85)*
5: TP LINK_5246 (-88)*
6: KA-WLAN (-92)
7: TOPSECRET (-93)*
In onze inhoudsgerelateerde berichten laten we zien hoe je een lokale website hosten met de ESP32 en er sensorgegevens op weergeven. Hier vindt u het project op een ESP8266 module.
Tot slot, een aantal links die u helpen om in de ESP32 wereld of zijn een goede referentie.
- Website van de fabrikant https://espressif.com/en/products/hardware/esp32/overview
- ESP32-gegevensblad: https://espressif.com/sites/default/files/documentation/esp32_datasheet_en.pdf
- Technisch naslagwerk: http://espressif.com/sites/default/files/documentation/esp32_technical_reference_manual_en.pdf
Gemeenschap bij esp32.com https://www.esp32.com/
3 Reacties
DD1UZ
Der Artikel ist schon informativ, aber wo finde ich den Code???
Smitha158
Thanks for any other informative web site. Where else may just I get that kind of information written in such an ideal way? I have a mission that I am just now operating on, and I have been on the look out for such information. cddfebdebdcabaae
Johna27
The principle isn’t to artificially turn out to be effective, gdgceaddagga