Go Down

Topic: [Mise sur rails] Laser distance + Arduino UNO (Read 3415 times) previous topic - next topic

juju_m

Bonjour tout le monde  :)

Voilà je viens de recevoir un capteur de distance à laser, et d'ici peu il me faudra récupérer cette distance dans mon application en AIR.
J'ai donc naturellement opté pour l'Arduino. Seul hic, j'ai une vague idée de ce que je suis sensé faire, mais pas trop non plus... Alors je comptais sur vous pour me mettre sur les rails au niveau des branchements de PIN etc. Pour la partie suivante (interfaçage avec le logiciel) je devrais me débrouiller, donc pas de souci à ce niveau là. (Du moins j'espère!)

Niveau matos Arduino je possède la petite Arduino UNO.
La personne sensée s'occuper de ça, m'avait brièvement montré qu'il fallait brancher les broches du câble sur le coté gauche de la Arduino UNO, c'est-à-dire les pins de "ANALOG IN"..

Et pour le laser il s'agit du Sensopart SMARTRANGE que voici en photo:


L'arrière du boitier: (on en pas encore reçu le câble)



Le PDF descriptif se trouve ICI. Je pense que vous y trouverez tout ce qu'il faut..
(si le lien ne marche pas, le PDF se trouve dans cette liste, 4eme PDF en partant du haut)

Puis-je avoir vos impression sur ce mini projet ? :)

Merci beaucoup!
???

Artouste


Bonjour tout le monde  :)

Voilà je viens de recevoir un capteur de distance à laser, et d'ici peu il me faudra récupérer cette distance dans mon application en AIR.
J'ai donc naturellement opté pour l'Arduino. Seul hic, j'ai une vague idée de ce que je suis sensé faire, mais pas trop non plus... Alors je comptais sur vous pour me mettre sur les rails au niveau des branchements de PIN etc. Pour la partie suivante (interfaçage avec le logiciel) je devrais me débrouiller, donc pas de souci à ce niveau là. (Du moins j'espère!)

Niveau matos Arduino je possède la petite Arduino UNO.
La personne sensée s'occuper de ça, m'avait brièvement montré qu'il fallait brancher les broches du câble sur le coté gauche de la Arduino UNO, c'est-à-dire les pins de "ANALOG IN"..



bonjour
1ere chose , le capteur sort en boucle de courant standard industrie (4-20 mA) , il faut donc déjà mettre entre le capteur et l'arduino un convertisseur/adaptateur 4-20 mA---> 0-5V (ou autre choix)
il existe des shields prevus pour

1 exemple ici
http://erdosmiller.com/products/arduino-4-20ma-shield

juju_m

Merci pour ta réponse !

Oula, 100 boules le shield  :smiley-eek-blue:

Concrètement, entre le capteur et l'arduino, niveau branchement ça donne quoi ?
Après quelques recherches, si je comprend bien le shield se pose sur l'arduino et le capteur se branche sur le shield.. ?
???

Artouste


Merci pour ta réponse !

Oula, 100 boules le shield  :smiley-eek-blue:

Concrètement, entre le capteur et l'arduino, niveau branchement ça donne quoi ?
Après quelques recherches, si je comprend bien le shield se pose sur l'arduino et le capteur se branche sur le shield.. ?

sinon il y a l'adaptateur du "pauvre"  :smiley-mr-green:

lire
http://www.industrologic.com/aninput.htm

B@tto

Oué enfin le shield y'a plein de choses dessus : alimentation à découpage, ADC 16 bits, température ...

Le "montage du pauvre", je m'en sers couramment ça fait parfaitement son job ;)
Blog électronique : http://battomicro.wordpress.com/
Photographie : www.interactive-celebration.fr

juju_m

Up :)

Et bonjour ! Merci pour vos réponses.
Je viens bientôt commencer le montage avec le laser, mais nous avons reçu entre-temps un autre modèle et je souhaitais avoir votre avis sur ce dernier..

les specs:
http://info.bannerengineering.com/xpedio/groups/public/documents/literature/64323.pdf

Juste pour rappel, je n'y connais quasiment rien en Arduino et je reviendrais très souvent vers vous pour un peu d'aide.. Et bien sûr je chercherais à coté.
J'ai aussi opté pour une résistance de 250 ohm dans le cas où j'utiliserais le premier modèle. (photos dans mon 1er post)

Merci beaucoup :)
???

al1fch

#6
Aug 09, 2013, 11:00 am Last Edit: Aug 09, 2013, 11:03 am by al1fch Reason: 1
Bonjour

Quote
nous avons reçu entre-temps un autre modèle et je souhaitais avoir votre avis sur ce dernier..

Belle bête .... du bon matériel industriel à première vue.......
Question interfaçage Arduino ça reste du "4-20mA"  s'il y a un "I" dans la référence, du "0-10V" s'il y a un "U"
Quelle est la référence complète ? (Q50BVI, Q50BVU etc ...)


juju_m

UP :)

J'ai finalement réussi a brancher le laser à l'Arduino, et je reçois bien le signal dans mon programme.



Mais deux problèmes (je crois) se posent à moi:
Déjà, comme spécifié plus haut, le modèle de mon laser retourne une tension allant de 0 à 10V. Hors si j'ai bien compris Arduino n'accepte que du 0-5V..? J'ai fais quelques recherches sur le net mais peu fructueuses. Est-ce qu'il suffit d'utiliser quelques fonctions/formules dans mon programme pour le remmener à l'équivalence de 0-5V (avec la fonction map() par exemple), ou cela se passe-t-il en amont avec des composants supplémentaires ?

Ensuite, lors que j'ai réussi à lire la tension dans mon programme, j'ai finalement réalisé que je ne savais pas ce que j'étais sensé en faire......  :smiley-roll-sweat: :smiley-roll-sweat:
Déjà sur la doc du laser, je ne vois pas ce qu'il me retourne comme données. Est-ce des paquets de bytes que je dois manipuler ? J'en ai aucune idée..

Help ^^

Sinon à coté de ça je suis en train de lire cet excellent tuto sur le Site du Zero, peut-être que l'auteur se trouve parmi vous !  :)
???

fdufnews



Mais deux problèmes (je crois) se posent à moi:
Déjà, comme spécifié plus haut, le modèle de mon laser retourne une tension allant de 0 à 10V. Hors si j'ai bien compris Arduino n'accepte que du 0-5V..? J'ai fais quelques recherches sur le net mais peu fructueuses. Est-ce qu'il suffit d'utiliser quelques fonctions/formules dans mon programme pour le remmener à l'équivalence de 0-5V (avec la fonction map() par exemple), ou cela se passe-t-il en amont avec des composants supplémentaires ?

Euh comment dire....
10V sur l'entrée de l'arduino c'est destructif.
Il faut limiter la tension sur l'entrée à 0-5V strictement. Pour cela il faut réaliser un diviseur potentiomètrique.
Dans ton cas il faut diviser par 2 pour passer de 10V de dynamique à 5V donc il faut que les 2 résistances soient égales. La valeur n'est pas très critique pour autant que la charge qu'elles représentes ne soit pas trop forte pour ton capteur. D'après la notice il faut être inférieur à 15mA. Si, par exemple, on prend 2 résistances de 4,7kOhms le courant sera de l'ordre du mA.
Si l'équipement est installé dans un environnement fortement perturbé (machines tournantes par exemples) il fadrait mieux passer à 2 résistances de 470Ohms le courant serait plus fort mais cela donnerait une meilleur immunité aux perturbations. Dans tous les cas limiter la distances entre le capteur et l'arduino.


Ensuite, lors que j'ai réussi à lire la tension dans mon programme, j'ai finalement réalisé que je ne savais pas ce que j'étais sensé en faire......  :smiley-roll-sweat: :smiley-roll-sweat:
Déjà sur la doc du laser, je ne vois pas ce qu'il me retourne comme données. Est-ce des paquets de bytes que je dois manipuler ? J'en ai aucune idée..


De ce que j'ai compris de la doc du capteur, il y a une phase d'apprentissage pendant laquelle tu détermines une position minimum et une position maximum. En mode opérationnel, le capteur te retourne une tension comprise entre 0 et 10V.
    - 0V correspondant à position min ou inférieure
    - 10V correspondant à position max ou supérieure
    - la tension est proportionnelle pour les distances comprises en min et max

Après ce que tu en fais..... c'est toi qui voit.

juju_m

Merci pour ta réponse !

Quote
Il faut limiter la tension sur l'entrée à 0-5V strictement. Pour cela il faut réaliser un diviseur potentiomètrique.
Dans ton cas il faut diviser par 2 pour passer de 10V de dynamique à 5V donc il faut que les 2 résistances soient égales.


Donc si j'ai bien suivi tes explications et ce que j'ai lu en parallèle, pour que mon Arduino reçoive du 0-5V je dois mettre deux résistances en série, soit un "potentiomètre" ?
Je suis tombé sur un autre sujet sur ce forum où quelqu'un exposait ce même souci, vous l'aviez dirigé vers une calculatrice permettant de savoir de combien de ohm chacune des résistances devait posséder dans le cas d'un pont diviseur de tension. Je l'ai aussi utilisé et elle me donne simplement le résultat de deux résistances de 1kOhm..

C'est pourquoi je te suis pas trop dans la suite de ton poste au niveau des résistances à utiliser..

Quote
La valeur n'est pas très critique pour autant que la charge qu'elles représentes ne soit pas trop forte pour ton capteur. D'après la notice il faut être inférieur à 15mA. Si, par exemple, on prend 2 résistances de 4,7kOhms le courant sera de l'ordre du mA.
Si l'équipement est installé dans un environnement fortement perturbé (machines tournantes par exemples) il faudrait mieux passer à 2 résistances de 470Ohms le courant serait plus fort mais cela donnerait une meilleur immunité aux perturbations. Dans tous les cas limiter la distances entre le capteur et l'arduino.




Par contre, tu vois très juste pour l'environnement de l'installation, car il s'agit d'un dispositif que des passants pourront librement déplacer de droite à gauche sur 1m50 pendant 4 jours...
???

fdufnews

Quote
il s'agit d'un dispositif que des passants pourront librement déplacer de droite à gauche sur 1m50 pendant 4 jours.

Ton capteur est prévu pour fonctionner entre 100mm et 300m. Tu es loin du compte avec tes 1m50...

Quote
je te suis pas trop dans la suite de ton poste au niveau des résistances à utiliser..

La valeur des résistances est relativement peut importante.
La seule contrainte c'est de ne pas faire débiter plus de 15mA au capteur donc il faut que la somme des résistances reste inférieur à 660Ohms.
Mettre des résistances élevées c'est consommer moins. Mais en contre partie comme l'impédance de la ligne est plus élevée elle est plus sensible aux perturbations électriques et électromagnétiques.
Donc 2 résistances de 1k c'est très bien aussi.

juju_m

#12
Aug 13, 2013, 05:53 pm Last Edit: Aug 13, 2013, 05:55 pm by juju_m Reason: 1
Quote
Ton capteur est prévu pour fonctionner entre 100mm et 300m. Tu es loin du compte avec tes 1m50...


Maintenant que tu le dis, j'ai un doute effectivement. Es tu sûr qu'il s'agit bien de la distance max calculable ? Car dans le PDF si on regarde en bas les cas d'utilisation, le capteur mesure selon le défilement de l'objet cible, et non la distance entre le capteur et l'objet.. Et cela se voit sur le capteur lorsque je l'éloigne trop, la diode "Range" devient rouge car il n'a pas de cible. Je croyais que le range de 100mm-400mm concernait cette distance de détection de la cible :.

De toute façon, j'utiliserai plus tard l'autre laser qui se base lui sur la distance de la cible. En attendant je prends le jaune, le tout étant pour le moment de pouvoir le brancher correctement, et de recevoir un signal dans mon programme et surtout de découvrir l'Arduino me concernant :)

J'aurai une autre question sur la "protection" de l'installation Arduino. J'ai commandé un boitier pour le microcontroller, par contre j'ai un souci concernant les broches connectée aux pins. Y a-t-il des accessoires qui permettent de fixer "correctement" la broche à la pin afin d'être sûr qu'elle ne sorte pas lors de tremblements par exemple. J'ai fais quelques recherches, mais je ne sais pas trop où les orienter.. Tout bêtement lorsque je vais utiliser le premier laser tout en haut de mon topic, je vais devoir ajouter une résistance de 250 ohm au circuit, comment m'assurer de bien fixer tout ça ?

En tout cas merci beaucoup pour ton aide ! :)
???

68tjs

Quote
comment m'assurer de bien fixer tout ça ?

Fer à souder, il n'y a que cela de sûr.
Éventuellement des prises/fiches vissantes si le démontage doit être prévu : de toute façon si tu as réellement besoin de "sûr" il faut modifier.

fdufnews

Le plus simple c'est d'utiliser un shield de prototypage que tu pourras monter sur ta carte arduino.
Tu pourras ainsi souder les petits composants sur la zone de prototypage et faire les connexions vers les entrées de l'arduino. L'ensemble devrait être assez robuste.
http://www.lextronic.fr/P4130-kit-shield-prototypage.html

Il y a aussi une version avec des borniers qui pourrait être pratique pour raccorder ton capteur
http://www.lextronic.fr/P19666-platine-bornier-v15-pour-arduino.html

J'ai pris des exemples chez Lextronic mais il y a d'autres sources bien évidemment.

Go Up