Arduino Nano ESP32 - Buzzer
Dans ce tutoriel, nous allons apprendre à programmer l'Arduino Nano ESP32 pour contrôler un buzzer actif de 12V afin de produire un son fort. Si vous souhaitez contrôler un buzzer actif/passif de 5V, veuillez consulter ce Arduino Nano ESP32 - Buzzer Piézo.
Il y a deux façons de piloter le buzzer 12V. Un relais est simple, mais il fait un clic à chaque commutation. Un module MOSFET fait le même travail sans bruit, et il peut commuter très vite. C'est idéal pour les bips d'alarme. Nous allons essayer les deux façons dans ce tutoriel.
Préparation du matériel
Ou vous pouvez acheter les kits suivants:
| 1 | × | Kit de Capteurs DIYables (18 capteurs/écrans) |
À propos du buzzer actif 12V
Le buzzer actif 12V peut produire un son fort, ce qui est adapté pour le système d'alarme.
Brochage

Le buzzer actif de 12V a généralement deux broches :
- Broche négative (-) (noire) : doit être connectée à la masse (GND) de l'alimentation DC
- Broche positive (+) (rouge) : doit être connectée au 12V de l'alimentation DC
Comment contrôler un buzzer actif de 12V
Si un buzzer actif de 12V est alimenté par une alimentation de 12V, il émet un son. Pour contrôler un buzzer actif de 12V, nous devons utiliser un relais entre l'Arduino Nano ESP32 et le buzzer actif de 12V. L'Arduino Nano ESP32 peut contrôler le buzzer actif de 12V via le relais. Si vous ne connaissez pas les relais (brochage, fonctionnement, programmation...), apprenez à propos des relais dans le Arduino Nano ESP32 - Relais.
Le module MOSFET est le deuxième choix. Les broches, l'intérieur et le code du module sont expliqués dans le tutoriel Arduino Nano ESP32 - Module MOSFET.
Relais vs module MOSFET pour un buzzer 12V
| Relais | Module MOSFET | |
|---|---|---|
| Ce qu'il peut faire | allumer ou éteindre le buzzer | allumer ou éteindre le buzzer |
| Bruit à la commutation | un clic à chaque fois, mêlé au bip | aucun bruit, on n'entend que le bip |
| Vitesse de commutation | lente, quelques millisecondes | très rapide |
| Bips rapides | le relais claque fort et s'use vite | aucun problème |
| Durée de vie | les contacts s'usent après de nombreuses commutations | rien ne bouge, donc il dure longtemps |
| Type d'alimentation | AC ou DC | DC uniquement |
| Alimentation du buzzer | toute tension admise par le relais | environ 6V ou plus |
| Isolation de l'Arduino | oui, entre bobine et contacts | oui, par l'optocoupleur PC817 |
| Idéal pour | ON/OFF lent, par exemple ON pendant quelques secondes | alarmes avec beaucoup de bips courts |
Si le buzzer bipe lentement, le relais suffit. Si vous voulez une alarme avec beaucoup de bips courts, le module MOSFET est le meilleur choix.
Diagramme de câblage

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
Code Arduino Nano ESP32
Le code ci-dessous active de manière répétée le buzzer actif de 12V pendant une seconde et le désactive pendant deux secondes,
Étapes rapides
- Si c'est la première fois que vous utilisez Arduino Nano ESP32, consultez Installation du logiciel Arduino Nano ESP32.
- Connectez Arduino Nano ESP32 au PC via un câble USB
- Ouvrez Arduino IDE, sélectionnez la bonne carte et le bon port
- Copiez le code ci-dessus et ouvrez-le avec Arduino IDE
- Cliquez sur le bouton Upload sur Arduino IDE pour téléverser le code sur Arduino Nano ESP32
- Regardez l'état du buzzer actif 12V
Explication du code
Vous pouvez trouver l'explication dans la ligne de commentaires du code Arduino ci-dessus.
Comment faire des bips d'alarme avec le module MOSFET
Remplaçons maintenant le relais par un module MOSFET. Le buzzer fonctionne de la même façon, mais il n'y a plus de clic, donc il peut biper vite comme une vraie alarme.
Schéma de câblage

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
| De | À |
|---|---|
| Broche D9 de l'Arduino Nano ESP32 | Module MOSFET PWM |
| GND de l'Arduino Nano ESP32 | Module MOSFET GND |
| Adaptateur 12V + | Module MOSFET + |
| Fil rouge du buzzer (+) | Module MOSFET + (même borne que le + de l'adaptateur) |
| Fil noir du buzzer (−) | Module MOSFET LOAD |
| Adaptateur 12V − | Module MOSFET − |
La plupart des buzzers actifs 12V ont un petit circuit à l'intérieur et n'ont pas besoin de diode de roue libre. Si votre buzzer est de type magnétique (il a une bobine à l'intérieur), ajoutez une diode 1N4007 ou 1N5819 en parallèle sur le buzzer. Le côté avec la bande (cathode) va au + du buzzer, l'autre côté va au − du buzzer.
La broche de l'Arduino Nano ESP32 ne donne que 3.3V, mais cela suffit pour le module MOSFET. Aucun convertisseur de niveau n'est nécessaire. Ne connectez jamais le 12V à une broche de l'Arduino Nano ESP32.
Code Arduino Nano ESP32
Ce que fait le buzzer : il bipe 10 fois rapidement, puis fait un long bip, puis reste silencieux pendant 3 secondes. Ensuite, il recommence.
Un buzzer actif produit son propre son. Allumez-le ou éteignez-le seulement complètement, avec digitalWrite(). N'utilisez pas analogWrite() (PWM) pour changer le volume, car le son sera faible ou bizarre.
Étapes rapides
- Faites la même préparation que dans les Étapes rapides de la partie relais ci-dessus.
- Câblez le buzzer et le module MOSFET comme sur le schéma. Laissez l'adaptateur 12V débranché.
- Téléversez le code ci-dessus sur l'Arduino Nano ESP32.
- Branchez l'adaptateur 12V.
- Ouvrez le Moniteur Série à 9600 bauds.
- Écoutez le buzzer : vous entendez les bips rapides sans le clic du relais.
※ Note:
Le module MOSFET fonctionne uniquement en DC, et l'alimentation du buzzer doit être d'environ 6V ou plus. Pour un buzzer 5V, consultez le Arduino Nano ESP32 - Buzzer Piézo.. Pour un buzzer ou une sirène AC, utilisez le relais.