De PCA9685 is een PWM-poortexpander. Hierdoor is het mogelijk om maximaal 16 LED's, servo's of andere componenten op uw ESP8266 aan te sluiten en van een PWM-signaal te voorzien.
Dankzij ESPEasy (en de bijbehorende plug-in) is de bediening van de PCA9685 bijzonder eenvoudig. Met de PCA9685 kunt u uiteindelijk tot 16 servo's aansturen met behulp van ESPEasy.
Om dit te laten werken, moet je op een paar instellingen letten. Alles wat u moet weten, wordt beschreven in het volgende artikel.
Veiligheidsinstructies
Ik weet dat de volgende opmerkingen altijd een beetje vervelend zijn en onnodig lijken. Helaas hebben veel mensen die "beter" wisten door onvoorzichtigheid ogen, vingers of andere dingen verloren of zichzelf verwond. Gegevensverlies is in vergelijking bijna te verwaarlozen, maar zelfs dit kan erg vervelend zijn. Neem daarom vijf minuten de tijd om de veiligheidsinstructies te lezen. Omdat zelfs het coolste project geen blessure of andere problemen waard is.
https://www.nerdiy.de/sicherheitshinweise/
Affiliate links / reclame links
De hier vermelde links naar online winkels zijn zogenaamde affiliate-links. Als u op zo'n affiliate-link klikt en via deze link een aankoop doet, ontvangt Nerdiy.de een commissie van de betreffende onlineshop of aanbieder. De prijs verandert voor jou niet. Als u via deze links uw aankopen doet, steunt u Nerdiy.de om in de toekomst andere nuttige projecten aan te kunnen bieden. 🙂
Eisen
Handige artikelen:
Aanvullende tips over ESPEasy vindt u in de volgende artikelen.
- ESPEasy - Voer opdrachten en acties uit via HTTP, MQTT, UDP en rechtstreeks
- ESPEasy – Firmware compileren en flashen en WiFi-toegangsgegevens configureren
- ESPEasy / Wemos D1 Mini – Stel de ADC af op een andere maximale spanning
Vereist gereedschap:
Benodigd materiaal:
De manier waarop het werkt
Het signaal voor het aansturen van een servo bestaat in principe uit een puls met een lengte van 0,5 tot 2,5 ms. Deze puls moet elke 20 ms worden herhaald.
Dit signaal kan worden gesimuleerd met behulp van de PCA9685. Het enige wat u hoeft te doen is de PWM-frequentie zo aan te passen dat deze overeenkomt met de periodelengte van het servosignaal.
Op deze foto kun je duidelijk het verband zien tussen het servosignaal (links) en de servopositie (rechts).
Bron: https://de.wikipedia.org/wiki/Servo
Configuratie in ESPEasy
Deze sectie gaat alleen over het configureren van de ESPEasy-plug-in. Dit betekent dat u de PCA9685 of het breakout-bord waarop deze is geïnstalleerd al op de ESP8266 moet hebben aangesloten. Om dit te doen, moet u de twee volgens het volgende schema met elkaar hebben verbonden.
PCA9685 | ESP8266 |
GND | GND |
VCC | 5V of 3V3 |
SDA | GPIO 0 |
SCL | GPIO2 |
V+ | 5V |
De ESPEasy-firmware zou al op uw ESP8266 moeten zijn geïnstalleerd. Hoe je dit kunt doen, staat in het artikel ESPEasy – Firmware compileren en flashen en WiFi-toegangsgegevens configureren beschreven.
Vervolgens kunt u naar de sectie “Apparaten” gaan en het apparaat “Extra IO – PCA9685” aanmaken.
Vervolgens moet u de gemaakte plug-in configureren zoals weergegeven.
Het is belangrijk dat je de PWM-frequentie instelt op 50 Hz. Dit komt overeen met de periodelengte van 20 ms (noodzakelijk voor de servo).
Nadat u alle configuraties heeft uitgevoerd, kunt u met het juiste commando de aangesloten servo's aansturen.
Een voorbeeld:
Het bevel
PCAPWM,0,300,
vertegenwoordigt het PWM-signaal van het eerste (=0) Aansluiting van PCA9685 (welke PCAPWM wordt )op de waarde genoemd 300.
Zo heb ik bijvoorbeeld de volgende commando's kunnen gebruiken voor de servo die ik gebruik op aansluiting 0 van mijn PCA9685.
- Kleinste hoek: PCAPWM,0,50,
- Grootste hoek: PCAPWM,0,300,
Hoe u opdrachten naar uw ESPEasy-apparaat kunt sturen, vindt u in het artikel ESPEasy - Voer opdrachten en acties uit via HTTP, MQTT, UDP en rechtstreeks beschreven.
Aanvullende algemene informatie over deze ESPEasy-plug-in kunt u ook vinden via de volgende link: https://www.letscontrolit.com/wiki/index.php?title=PCA9685
Veel plezier met het project
Ik hoop dat alles werkte zoals beschreven. Zo niet, of als je vragen of suggesties hebt, laat het me weten in de commentaren. Ik zal dit dan zo nodig aan het artikel toevoegen.
Ideeën voor nieuwe projecten zijn altijd welkom. 🙂
PS Veel van deze projecten - vooral de hardwareprojecten - kosten veel tijd en geld. Natuurlijk doe ik dit omdat ik het leuk vind, maar als je het cool vindt dat ik de informatie met je deel, dan zou ik blij zijn met een kleine donatie aan het koffiefonds. 🙂