Club robotique de Sophia-Antipolis

Accueil > POBOTpedia > Actionneurs > Buzzer ou bipeur

Buzzer ou bipeur

dimanche 9 mai 2010, par Julien H.

On peut avoir besoin d’un bipeur pour différents usages : signaler la présence du robot, faire de la musique, etc...

Plutôt qu’un afficheur textuel LCD, utiliser de simples bips en faisant varier leur nombre ou leur hauteur est un très bon moyen de déboguer son robot, surtout lorsqu’il file à toute allure sur une table de plusieurs mètres carrés.

Avec Arduino, l’utilisation d’un buzzer piezo à fréquence variable est très simple grâce à la fonction "tone" qui va générer la note de la fréquence souhaitée et grâce à un timer intégré au microcontrôleur, tenir la note pendant la durée souhaitée.


/**
* Démonstration de l’utilisation d’un buzzer piezo avec une Arduino
*
* (c) Julien Holtzer pour Pobot
*
*/

// déclaration de la patte (digital) sur laquelle le buzzer est connecté
// (via une résistance d’1k)
int pin = 4 ;

// la fréquence variable de la note qui sera jouée par le buzzer
int freq = 0 ;

/**
* Initialisation
*/
void setup()

// rien de particulier

void loop()

// on utilise une bibliothèque fournie avec la carte Arduino
// qui a l’avantage d’être non bloquante (on peut continuer et gérer autre chose)

// 3 paramètres : la patte de sortie, la fréquence et la durée du son à jouer
tone(pin, freq, 50) ;

// on doit ajouter un délai car l’appel précédent n’est pas bloquant
// donc sinon on changerait de fréquence avant d’avoir entendu le son demandé
// (on choisit un temps supérieur à la durée du son pour calmer nos oreilles)
delay(250) ;

// et on change la fréquence, par exemple en demandant une génération aléatoire
freq = random(20,400) ;


Retrouvez ce code et bien d’autres sur le Playground Pobot.

Vos commentaires

Un message, un commentaire ?

modération a priori

Attention, votre message n’apparaîtra qu’après avoir été relu et approuvé.

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.