[Arduino] HC-SR04 Senseur a ultra son

L’espace pour parler de tout ce qui concerne l’électronique embarquée
Avatar de l’utilisateur
papy94
Messages : 653
Inscription : 23 janv. 2010 14:31
Localisation : Champigny sur marne
Contact :

[Arduino] HC-SR04 Senseur a ultra son

Message par papy94 »

Image
A quoi ça sert:

Détecter une distance :siffle:
Alimentation : 5V
Consommation : < 2ma
angle optimal : 15°
Distance : 2cm <> 500 cm

Diagramme de séquence
Une courte impulsion ultrasonore est transmise à l'instant 0, réfléchie par un objet. Le capteur reçoit ce signal et le convertit en un signal électrique. La prochaine impulsion peut être transmis lorsque l'écho disparait
Cette période est appelée période de cycle. La période du cycle recommandée doit pas être inférieure à 50 ms. Si une impulsion de déclenchement de la largeur 10μs est envoyé à la broche de signal, le module à ultrasons va afficher huit signal ultrasonore de 40 kHz et de détecter l'écho de retour. La distance mesurée est proportionnelle à la largeur d'impulsion d'écho
Si aucun obstacle n'est détecté, la broche de sortie donne un signal de niveau élevé ms 38 ms.


Oui si ont veux :frust:

donc en gros voici 2 programmes qui font tourner le bordel:
Le premier avec la librairie arduino

Code : Tout sélectionner

const int trigPin = 2;
const int echoPin = 4;
 
void setup() {
// initialize serial communication:
Serial.begin(9600);
}
 
void loop()
{
// Etablir variables pour la duree de la commande ping,
// et le résultat de la distance en pouces et en centimetres: 
long duration, inches, cm;
 
// Le capteur est déclenche par une impulsion haute d'au moins 10 microsecondes.
// Donne une impulsion courte basse avant pour assurer une impulsion HIGH propre:
pinMode(trigPin, OUTPUT);
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
 
// Lire le signal de la sonde: une impulsion HIGH dont
// Durée est le temps (en microsecondes) à partir de l'envoi
// Du ping à la reception de son écho sur un objet.
pinMode(echoPin, INPUT);
duration = pulseIn(echoPin, HIGH);
 
// convertir le temps en une distance
inches = microsecondsToInches(duration);
cm = microsecondsToCentimeters(duration);
//Serial.print(inches);//Serial.print("in, ");
Serial.print(cm);Serial.print("cm");
Serial.println();
delay(100);
}
 
long microsecondsToInches(long microseconds)
{
// Selon la fiche technique du Parallax pour le PING))), il ya
// 73.746 microsecondes par pouce (c. voyages sonores au 1130 pieds par
// Seconde). Cela donne la distance parcourue par la commande ping, sortant
// Et retour, de sorte que l'on divise par 2 pour obtenir la distance de l'obstacle.
// Voir: http://www.parallax.com/dl/docs/prod/acc/28015-PING-v1.3.pdf
return microseconds / 74 / 2;
}
 
long microsecondsToCentimeters(long microseconds)
{
// La vitesse du son est de 340 m/s ou 29 microsecondes par centimètre.
// Le ping voyage aller et retour, de sorte à trouver la distance de l'
// Object on prend la moitié de la distance parcourue.
return microseconds / 29 / 2;
}
et cela dit

Code : Tout sélectionner

34cm
35cm
35cm
39cm
36cm
34cm
33cm
33cm
32cm
31cm
30cm
29cm
27cm
27cm
25cm
25cm
24cm
23cm
22cm
21cm
20cm
19cm
18cm
18cm
17cm
17cm
16cm
15cm
15cm
15cm
15cm
14cm
13cm
13cm
13cm
12cm
12cm
12cm
11cm
10cm
10cm


et un second qui utilise une autre librairie et donc plus précis et nécessitante moins de code
et il vous faut cette librairie :
Ultrasonic-1.1.2

Code : Tout sélectionner

/*
 * HCSR04Ultrasonic
 */

#include <Ultrasonic.h>
#define TRIGGER_PIN  2
#define ECHO_PIN     4

Ultrasonic ultrasonic(TRIGGER_PIN, ECHO_PIN);

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

void loop()
  {
  float cmMsec, inMsec;
  long microsec = ultrasonic.timing();

  cmMsec = ultrasonic.convert(microsec, Ultrasonic::CM);
  //inMsec = ultrasonic.convert(microsec, Ultrasonic::IN);
  //Serial.print("MS: ");  Serial.print(microsec);
  Serial.print("Centimetres: "); Serial.println(cmMsec);
  //Serial.print(", IN: "); Serial.println(inMsec);
  delay(1000);
  }
et cela dit :

Code : Tout sélectionner

Centimetres: 10.53
Centimetres: 10.53
Centimetres: 11.04
Centimetres: 14.21
Centimetres: 16.83
Centimetres: 19.97
Centimetres: 21.96
Centimetres: 22.54
Centimetres: 24.45
Centimetres: 25.50
Centimetres: 26.72
Centimetres: 26.17
Centimetres: 27.10
Centimetres: 34.48
Centimetres: 43.48
Centimetres: 55.39
Centimetres: 56.85
Centimetres: 56.51
Centimetres: 56.51
Centimetres: 57.43
Centimetres: 46.86
Centimetres: 31.57
Centimetres: 21.01
Centimetres: 6.82
Centimetres: 2.99
Centimetres: 2.86
Centimetres: 2.99
Centimetres: 2.99
Centimetres: 2.99
Centimetres: 2.86
Dernière modification par papy94 le 26 juin 2013 18:41, modifié 2 fois.
Avatar de l’utilisateur
coaxial
Messages : 3673
Inscription : 23 janv. 2010 19:35
Localisation : saint orens 31

Re: HC-SR04 Senseur a ultra son

Message par coaxial »

:Up:

bravo papy94 :respect: on peut plus t'arrêter dans le codage félicitation .

A propos ça marche aussi sous l'eau :?:
Moins je réfléchis plus fort et plus j'agis moins vite
Les bons crus font les bonnes cuites => Pierre Dac .
.... la simplicité est-ce bien la plus simple solution ..........?
La femme est l'avenir de l'homme .
Avatar de l’utilisateur
laurent0091
Messages : 187
Inscription : 06 mars 2011 00:00
Localisation : Essone (91)
Contact :

Re: HC-SR04 Senseur a ultra son

Message par laurent0091 »

Bonjour Thierry,
Et bien, tu as le feu sacré, ça ne va plus être une maquette mais un drone...
Pas mal la librairie, je ne la connaissais pas.
Pour répondre à Coaxial, à première vue, ce modèle ne semble pas étanche sur ce que j'ai vue sur internet....

Laurent
Avatar de l’utilisateur
coaxial
Messages : 3673
Inscription : 23 janv. 2010 19:35
Localisation : saint orens 31

Re: HC-SR04 Senseur a ultra son

Message par coaxial »

En effet , pour l'eau il faudrait de l'optique mais ça ne fonctionne bien qu'en eau claire .

En sonore ça pourrait marcher mais il faut des transducteur étanches et la le prix c'est une autre paire de manches .
Moins je réfléchis plus fort et plus j'agis moins vite
Les bons crus font les bonnes cuites => Pierre Dac .
.... la simplicité est-ce bien la plus simple solution ..........?
La femme est l'avenir de l'homme .
Avatar de l’utilisateur
papy94
Messages : 653
Inscription : 23 janv. 2010 14:31
Localisation : Champigny sur marne
Contact :

Re: HC-SR04 Senseur a ultra son

Message par papy94 »

absolument, ce n'est pas étanche, mais je ferrai plus tard quelques essais, je lui collerai une couche de plastiDip

mais pour le moment je ne vois aucune utilité a ce machin dans un soum, par contre un navire de surface, oui ,cela peut être pas mal ,jumelé avec la marche arrière et la vitesse a laquelle la distance diminue

j'ai commandé pour tester un capteur infrarouge (8,09 EUR), je vous en reparlerai
Image

j'ai aussi recommandé aussi un autre Arduino Nano (12,62 EUR), car je ne peux faire mes essais et finir l'implantation dans mon soum en même temps

J'ai aussi testé les moteurs pas a pas (4,05 EUR), c'est bien mais pareil,je ne vois pas trop a quoi cela peut me servir,je préfère utiliser les servos en continue pour le moment
Image
Avatar de l’utilisateur
mickey60
Messages : 1506
Inscription : 12 janv. 2010 23:53
Localisation : cenpuis (60)

Re: HC-SR04 Senseur a ultra son

Message par mickey60 »

Salut Thierry,
Ne vois là aucune malice de ma part,mais à quelle fonction futur destines-tu ce montage,j'ai pas tout compris :roll: :?: :!: . Si tu ne sais pas à quoi le destiner ...... pourquoi le fabriquer :roll: .
A+
Michel.
Ma 1ére réalisation:
Albator,sous marin imaginaire en pvc.
Mon futur projet :
Css Hunley en zinc au 1/10, en construction.
Avatar de l’utilisateur
papy94
Messages : 653
Inscription : 23 janv. 2010 14:31
Localisation : Champigny sur marne
Contact :

Re: HC-SR04 Senseur a ultra son

Message par papy94 »

Comme tu dois le savoir, passé un certain age, le neurones se barrent :siffle:
Donc quand je peux faire ramer mon cerveau, bin j'y vais

et puis comme je l'ai dis certain des montages ne me serviront pas, mais si cela peut aider un autre, je serais content qu'il profite de mon humble expérience,
c est très dur au départ quand tu n'y connais rien, ,certes il y a le web, mais sur 10 informations trouvées ,1 seule fonctionne vraiment,et généralement c'est en anglais, :frust:
j'ai passé 90% de mon temps sur le web,alors que pour faire un programme il faut 1 heure quand ont est du métier :Oo:
Avatar de l’utilisateur
mickey60
Messages : 1506
Inscription : 12 janv. 2010 23:53
Localisation : cenpuis (60)

Re: HC-SR04 Senseur a ultra son

Message par mickey60 »

OK !!!!,en fait si j'ai bien compris, c'est de la recherche pur et simple sans but précis (pour l'instant).
Donc,maintenant c'est .................... docteur "S" Thierry :Up: .
Je plaisante ,mais je suis admiratif de tous les "truc" que vous pondez,pour ma part j'en suis incapable :Oo:
A+
Michel.
Ma 1ére réalisation:
Albator,sous marin imaginaire en pvc.
Mon futur projet :
Css Hunley en zinc au 1/10, en construction.
Avatar de l’utilisateur
papy94
Messages : 653
Inscription : 23 janv. 2010 14:31
Localisation : Champigny sur marne
Contact :

Re: HC-SR04 Senseur a ultra son

Message par papy94 »

c'est sûr avec les grosses saucisses qui te servent de doigts, c est plus facile pour toi de faire du mortier :tirlangue:

et puis arrêtez de penser que c'est extraordinaire ce que je fais, j’achète sur Ebay des modules tout faits et je met des bouts de fils électriques à certains endroits pour les relier entre eux

Désolé mais je pense que donner une forme à un morceau de zinc ou faire le moulage d'une forme ou tout simplement avoir un soum en état de marche, là on peut être admiratif

Michel arrête aussi de faire ton calimero, ce que tu fais est aussi bien et même mieux, le seul truc, c'est que c'est trop lourd :mdr:
Avatar de l’utilisateur
Geeks
Messages : 3593
Inscription : 03 juil. 2010 21:04
Localisation : Brive la Gaillarde (Correze 19)

Re: HC-SR04 Senseur a ultra son

Message par Geeks »

Je verrais bien le moteur pas à pas piloter la chaise d'un ballast ou d'un lest en fond de quille.

Idem pour les aériens... :bave:

Bon, à quand les matelots qui se relaient sur le haut du kiosque pour fumer leur clope ? :lol: :lol: :lol:

Sérieusement papy, t'es devenu bon. Et je t'encourage à faire ton premier sub drone pylone racer :o
A défaut d'avoir la science infuse, j'infuse la science. - Racleur de fond depuis Pons 2014.
Sous-marin en état de repos sur cale : Minimog 01
Répondre