Capteurs ultrasoniques ?

Informations et questions sur les composants tiers de la boutique (émetteur/récepteur RF, capteurs...)

Capteurs ultrasoniques ?

Message non lude SaW3r » Lun 18 Juin 2012 20:37

Bonsoir, je viens vers vous car j'ai récemment retrouvé deux petits composants que j'avais surement du acheter il y a longtemps et je n'ai donc plus la documentation. Je crois savoir que ce sont des transducteurs à ultrasons donc pour détecter une présence ou mesurer une distance avec un objet par exemple mais je n'ai aucune idée de comment m'en servir (avec une carte Arduino par exemple), pourriez-vous me venir en aide ?

Voici quelques photos de ceux-ci :
Image
Image
Image

EDIT : Pour le moment j'ai trouvé ce lien qui a l'air de bien mettre en oeuvre ce couple d'émetteur - récepteur ultrasonique ! Et voici le schéma de câblage :
Image

Ici, c'est un PIC qui commande le tout mais il peut très bien être remplacé par un ATmega ! Il faut simplement créer un signal de 40kHz via une sortie PWM de l'ATmega et la je coince un peu, je ne sais pas vraiment comment m'y prendre. Je vous tien au courant en tout cas !
SaW3r
 
Messages: 58
Inscription: Sam 24 Déc 2011 12:13
Localisation: Paris

Re: Capteurs ultrasoniques ?

Message non lude Lionel » Mar 19 Juin 2012 10:59

Bonjour,

Concernant des réglages fins de la PWM sur arduino, je vous conseille la lecture de cet excellent article
http://www.arcfn.com/2009/07/secrets-of ... o-pwm.html

vous trouverez certainement votre bonheur avec ça.
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: Capteurs ultrasoniques ?

Message non lude SaW3r » Mar 19 Juin 2012 13:00

Bonjour ! Merci beaucoup pour ce lien, j'ai trouvé finalement ce que je vais utiliser pour recréer une fréquence de 40kHz. Je vais repartir de la librairie "IRremote" qui inclus une fonction permettant de créer une fréquence voulue, voici la fonction :
Code: Tout sélectionner
void IRsend::enableIROut(int khz) {
  // Enables IR output.  The khz value controls the modulation frequency in kilohertz.
  // The IR output will be on pin 3 (OC2B).
  // This routine is designed for 36-40KHz; if you use it for other values, it's up to you
  // to make sure it gives reasonable results.  (Watch out for overflow / underflow / rounding.)
  // TIMER2 is used in phase-correct PWM mode, with OCR2A controlling the frequency and OCR2B
  // controlling the duty cycle.
  // There is no prescaling, so the output frequency is 16MHz / (2 * OCR2A)
  // To turn the output on and off, we leave the PWM running, but connect and disconnect the output pin.
  // A few hours staring at the ATmega documentation and this will all make sense.
  // See my Secrets of Arduino PWM at http://arcfn.com/2009/07/secrets-of-arduino-pwm.html for details.

 
  // Disable the Timer2 Interrupt (which is used for receiving IR)
  TIMSK2 &= ~_BV(TOIE2); //Timer2 Overflow Interrupt
 
  pinMode(3, OUTPUT);
  digitalWrite(3, LOW); // When not sending PWM, we want it low
 
  // COM2A = 00: disconnect OC2A
  // COM2B = 00: disconnect OC2B; to send signal set to 10: OC2B non-inverted
  // WGM2 = 101: phase-correct PWM with OCRA as top
  // CS2 = 000: no prescaling
  TCCR2A = _BV(WGM20);
  TCCR2B = _BV(WGM22) | _BV(CS20);

  // The top value for the timer.  The modulation frequency will be SYSCLOCK / 2 / OCR2A.
  OCR2A = SYSCLOCK / 2 / khz / 1000;
  OCR2B = OCR2A / 3; // 33% duty cycle
}


Je vais réaliser le câblage ci dessus et essayer tout ça, ça me fera un couple d'émetteur - récepteur ultrasonique pas chère si ça fonctionne :)
SaW3r
 
Messages: 58
Inscription: Sam 24 Déc 2011 12:13
Localisation: Paris


Retourner vers Composants tiers

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité

cron