Le PCA9685 est un circuit intégré assez pratique. Celui-ci est connecté au microcontrôleur (par exemple ESP8266) via I2C et peut ensuite contrôler jusqu'à 16 canaux PWM individuels.
Vous pouvez contrôler jusqu'à 16 LED, servos ou, avec des circuits supplémentaires, des moteurs avec seulement deux broches (I2C) sur le microcontrôleur.
Surtout si vous voulez contrôler des servos, ce circuit intégré ou la carte de dérivation rend votre travail beaucoup plus facile.
Grâce à ESPEasy et au bon plugin, le PCA9685 peut être contrôlé très facilement et finalement également contrôlé via Wifi.
L'article suivant décrit comment connecter et configurer le PCA9685 à votre microcontrôleur.
Consignes de sécurité
Je sais que les notes suivantes sont toujours un peu ennuyeuses et semblent inutiles. Malheureusement, de nombreuses personnes qui savaient "mieux" ont perdu des yeux, des doigts ou d'autres choses à cause d'une négligence ou se sont blessées. La perte de données est presque négligeable en comparaison, mais même celles-ci peuvent être vraiment ennuyeuses. Par conséquent, veuillez prendre cinq minutes pour lire les consignes de sécurité. Parce que même le projet le plus cool ne vaut pas une blessure ou d'autres problèmes.
https://www.nerdiy.de/sicherheitshinweise/
Liens d'affiliation/publicitaires
Les liens vers des boutiques en ligne répertoriés ici sont des liens dits d'affiliation. Si vous cliquez sur un tel lien d'affiliation et effectuez un achat via ce lien, Nerdiy.de recevra une commission de la boutique en ligne ou du fournisseur concerné. Le prix ne change pas pour vous. Si vous effectuez vos achats via ces liens, vous aidez Nerdiy.de à pouvoir proposer d'autres projets utiles à l'avenir. 🙂
Conditions préalables
Articles utiles :
Vous pouvez trouver des conseils supplémentaires sur ESPEasy dans les articles suivants.
- ESPEasy - Exécutez des commandes et des actions via HTTP, MQTT, UDP et directement
- ESPEasy - Compiler et flasher le firmware et configurer les données d'accès WiFi
- ESPEasy / Wemos D1 Mini - Ajustez ADC à une tension maximale différente
Outil requis :
Matériel requis :
Connectez l'extenseur de port PWM PCA9685
La carte de dérivation PC9685 doit être connectée au Wemos D1 Mini via le bus I2C. Vous pouvez connecter la carte de dérivation PCA9685 à un Wemos D1 Mini, par exemple, en utilisant le schéma de circuit ci-dessous.
La broche de raccordement "V+" définit la tension avec laquelle les "consommateurs" raccordés sont alimentés. Par exemple, si tu veux commander un servo, tu dois alimenter cette broche avec 5-6V.
Configuration du PCA9685 dans ESPEasy
La configuration du PCA9685 se fait rapidement grâce au plugin approprié.
Ouvrez d'abord la vue de configuration Web de votre installation ESPeasy.
Des informations sur la façon d'ouvrir cette vue peuvent également être trouvées dans l'article ESPEasy - Exécutez des commandes et des actions via HTTP, MQTT, UDP et directement
De là, clique sur l'onglet "Devices".
Dans l'onglet "Devices", vous devez maintenant cliquer sur le bouton "Add" dans l'une des lignes encore vides.
Vous serez alors automatiquement redirigé vers la vue affichée et pourrez maintenant sélectionner l'appareil que vous souhaitez créer.
Sélectionne ici l'entrée "Extra IO - PCA9685".
Vous serez alors redirigé vers la page de configuration du plugin.
Ici, vous devriez donner un nom quelconque (ici "PWM"), cocher la case "Enabled" et régler l'adresse I2C correcte.
L'adresse I2C correspond souvent à l'adresse standard indiquée. Sinon, vous pouvez trouver des informations à ce sujet dans la fiche technique du PCA9685.
Le réglage "MODE2" permet de configurer le registre Mode 2 du PCA9685. Cela permet de configurer le comportement des broches PWM. Vous trouverez également des informations à ce sujet dans la fiche technique du PCA9685.
Si vous souhaitez utiliser le PCA9685 pour piloter des servos, vous devez régler l'option "MODE2" sur la valeur "0x6 6". Vous trouverez plus d'informations à ce sujet dans l'article ESPEasy - Utilisez un PCA9685 pour contrôler les servos.
Une fois que vous avez correctement réglé toutes les options du plugin, il ne vous reste plus qu'à cliquer sur "Submit" pour enregistrer les paramètres.
Envoyer la valeur PWM au PCA9685
Après avoir terminé la configuration du PCA9685, vous pouvez déjà le tester.
Pour ce faire, allez dans l'onglet "Outils".
Là, dans la section "Command", vous pouvez utiliser la commande
PCAPWM,0,300,
saisir. Cette commande définit la première broche (le comptage commence à 0) du PCA9685 sur la valeur PWM 300. La valeur réglable est comprise entre 0 et 4095.
Par exemple, si vous vouliez régler la troisième broche du PCA9685 sur 1337, la commande ressemblerait à ceci :
PCAPWM,2.1337,
Plus de capteurs
Vous pouvez également trouver plus d'articles sur la configuration des capteurs et des actionneurs avec ESPEasy dans la catégorie
Amusez-vous avec le projet
J'espère que tout a fonctionné comme décrit. Si ce n'est pas le cas ou si vous avez des questions ou des suggestions, faites-le moi savoir dans les commentaires. Je les ajouterai à l'article si nécessaire.
Les idées de nouveaux projets sont toujours les bienvenues. 🙂
PS Beaucoup de ces projets - en particulier les projets matériels - coûtent beaucoup de temps et d'argent. Bien sûr, je le fais parce que j'aime ça, mais si vous pensez que c'est cool que je partage l'information avec vous, je serais heureux d'un petit don au fonds du café. 🙂
Bonjour, instructions très intéressantes ... je serais intéressé par le "travail de circuit supplémentaire" pour une commande de moteur (moteur pas à pas 28BYJ-48 ou similaire), par exemple pour actionner un store ou autre.
Salut Kruse,
ce n'est en fait pas si grand. Un ULN2003 connecté aux sorties du PCA suffit pour piloter un 28BYJ-48. Je peux faire un article à ce sujet quand j'en aurai l'occasion. 🙂
Cordialement
Fabien
Merci pour la réponse... dans l'attente de l'article.
Je suis en train de "bricoler" ce moteur : https://www.instructables.com/Motorized-WiFi-IKEA-Roller-Blind/ mais celui-ci est un peu "brouillon".
Je ne suis pas non plus un spécialiste et j'espère toujours trouver des "recettes de cuisine" dont le résultat est relativement simple. Et puis, on apprend toujours quelque chose ....
salutation
Oui quelque chose comme ça est aussi sur ma (longue) liste. 😀 Je mettrai l'article sur ma ToDo list. 🙂
Cordialement
Fabien
Au revoir,
super guide! Merci, je voudrais contrôler les servos via mqtt les points de données via iobroker. Seul le statut est affiché dans iobroker !
Cordialement
Beno
Salut Benno,
Merci. 🙂
Vous pouvez également envoyer la commande affichée à ESPEasy via MQTT. J'ai décrit un exemple simple ici: https://nerdiy.de/howto-espeasy-befehle-ausfuehren/#Befehle_ueber_MQTT_ausfuehren
Cordialement
Fabien
bonjour Fab,
merci beaucoup pour votre réponse.
désolé de ne vous contacter que maintenant. Je peux maintenant le traiter avec Http, ça marche très bien !
Merci encore
Cordialement
Beno