Aide Générateur de tone contrôlé par un senseur infra-rouge

Bonjour je suis nouveau avec Arduino et je cherche à créer un générateur de tone idéalement 1khz qui sera contrôlé par un QRD1114 ( senseur de proximité infra-rouge)
J'aimerais que le tone augment à mesure qu'on s'approche du senseur.
quelqu'un peut m'aider?
Merci !
Adam

Bonjour, je ne pense pas que ton composant puisse directement contrôler ton tone, mais tu peut très bien en fonction du signal augmenter la PWM de ton tone, ou est ton problème? jusque la c'est réalisable en tout cas pour moi ^^

Skizo !

Oui la même, je ne vois pas ou est le soucis, le cablage du senseur est assez simple, et tu peux brancher un HP directement sur l'arduino (peut-être faudra-t-il une résistance en plus). Après en soft, un analogread, une map, un tone() ...

oui.. ^^ du coup je me demande si nous ne somme pas devant un cas de: " tu voudrais pas devisser cette visse pour moi? je sais faire mais tu dois mieux savoir faire que moi.." :grin: lol

Bonjour,

Si j'en crois la doc du QRD1114 il s'agit d'un capteur infrarouge avec sortie sur phototransistor.
Il faut donc prévoir un montage convertisseur courant -> tension pour l'utiliser avec analogRead !

Deux résistances suffisent :
http://bildr.org/2011/03/various-proximity-sensors-arduino/ (milieu de page)

Pour le reste :

void setup(){
  Serial.begin(115200);
}

void loop(){
   int val = analogRead(A0); // Lecture de la valeur du capteur
   Serial.println(val); // debug

   // Map de la valeur 0~1023 -> 120~1500Hz
  // A modifier suivant ses envies
   val = map(val, 0, 1023, 120, 1500);

   tone(9, val, 10); // Bip de 10ms sur D9

   delay(1); // Delai de stabilisation de Tone()
}

oh bien vue ^^ effectivement pas compliquer mais à savoir sinon c'est tout faut :s

skizoh:
oh bien vue ^^ effectivement pas compliquer mais à savoir sinon c'est tout faut :s

Un capteur infrarouge 4 broches qui sort une tension analogique ça me paraissais bizarre, datasheet -> probléme résolu.

Wow merci !, Effectivement je suis très nouveau et j'y connais pas grand chose... :slight_smile:
Vous croyez que c'est possible que l'intensité se passe au niveau du volume et non au niveau de la tonalité du tone?
Merci !

ading_27:
Wow merci !, Effectivement je suis très nouveau et j'y connais pas grand chose... :slight_smile:
Vous croyez que c'est possible que l'intensité se passe au niveau du volume et non au niveau de la tonalité du tone?

Avec tone() tu n'as pas de controle du volume, juste de la fréquence.

Pour avoir un controle du volume il faudrait faire un petit montage ampli OP + potentiomètre numérique, ou faire de la DDS.
Mais ça partirai un peu loin pour faire pas grand chose :sweat_smile:

ha ok , et pour faire un on/off c'est possible?

ading_27:
ha ok , et pour faire un on/off c'est possible?

tone()
noTone()