Buzzer piezzo utilisé comme capteur.

Les cartes Arduino, les platines

Buzzer piezzo utilisé comme capteur.

Message non lude Cassiope34 » Sam 28 Juil 2012 13:08

Bonjour,

en étudiant un petit peu ce petit projet, je me suis demandé si on pouvait changer l'entrée analogique utilisée pour le buzzer en tant que capteur, pour que ce même buzzer puisse servir à retransmettre en sons la suite de 'toc-toc' qu'il a précédament permis d'enregister, puis revenir en "mode" capteur ?
En gros changer l'entrée analogique en sortie analogique en cours de programme autant de fois que nécessaire !
Je crois avoir lu que c'était tout à fait possible mais je ne sais plus où ;)

D'avance merci de votre aide.

@+
Cassiope34
 
Messages: 102
Inscription: Lun 16 Avr 2012 14:35

Re: Buzzer piezzo utilisé comme capteur.

Message non lude Lionel » Lun 30 Juil 2012 10:39

Bonjour,

sur uno/duemilanove les entrées analogiques A0 à A5 peuvent être utilisées en sorties digitale si on les déclare comme tel, avec des affectations de sorties de D14 à D19.

Par contre elles ne sont pas sur des pattes capable de faire de la PWM avec la fonction analogwrite

On ne pourra pas utiliser cette fonction sur ces pattes

La solution serait de faire de la pwm en bit-banging sur ces sorties.
cf. http://www.arcfn.com/2009/07/secrets-of ... o-pwm.html
tout en ayant connaissance des limitations de cette méthode

Cette technique a l'avantage de pouvoir utiliser n'importe quelle broche de sortie numérique.
En outre, vous avez le plein contrôle du rapport cyclique et de la fréquence.

Un inconvénient majeur est que les interruptions auront une incidence sur le timing, ce qui peut provoquer une variation non négligeable à moins que vous désactiviez les interruptions.

Un deuxième inconvénient est que vous ne pouvez pas continuer a piloter la sortie alors que le processeur fait autre chose.

Enfin, il est difficile de déterminer les constantes appropriées pour un cycle de travail particulier et de la fréquence à moins que vous ayez pris soin de soigneusement compter les cycles, ou de modifier les valeurs tout en vérifiant avec un oscilloscope.
Image - Distributeur officiel Arduino - Conception de shields
Avatar de l’utilisateur
Lionel
 
Messages: 734
Inscription: Mar 21 Déc 2010 09:52
Localisation: Toulouse

Re: Buzzer piezzo utilisé comme capteur.

Message non lude Cassiope34 » Lun 30 Juil 2012 17:16

Outch !
merci Lionel.
Il vaut mieux tout simplement utiliser un deuxième Buzzer sur une patte PWM... j'avais juste un léger soucis de place :?
Donc déclarer une patte en entrée au départ, puis au cours du programme la déclarer en sortie, puis etc... ne pose pas particulièrement de soucis à l'arduino, il s'agirait plutôt de savoir les utiliser correctement ;)

Merci encore lionel.
Cassiope34
 
Messages: 102
Inscription: Lun 16 Avr 2012 14:35

Re: Buzzer piezzo utilisé comme capteur.

Message non lude Bemolu » Mar 31 Juil 2012 22:19

Bonsoir

Je n'ai pas encore cablé - j'essaie d'ici dimanche - mais je pense qu'en tirant une diode depuis la sortie PWM vers le (+) du buzzer, on peut commander le buzzer qui a servi à enregistrer. Le tout "consomme" toujours autant de pattes (1 entrée analogique et une sortie PWM), mais un seul buzzer.
Bemolu
 
Messages: 63
Inscription: Mer 8 Fév 2012 21:19

Re: Buzzer piezzo utilisé comme capteur.

Message non lude Cassiope34 » Mer 1 Aoû 2012 08:43

Bonjour Bemolu,
donc l'entrée analogique recevrait aussi le PWM sans que cela ne pose "électriquement" de soucis à l'arduino (car il ne sera effectivement pas traité logiciellement au même moment) ?

merci à toi.

@+
Cassiope34
 
Messages: 102
Inscription: Lun 16 Avr 2012 14:35


Retourner vers Arduino

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités

cron