Projet capteurs inductifs+LED

Portrait de FGW

Bonjour à tous !

Je viens à vous car j'ai besoin d'informations pour un projet.

Et avant toute chose, je tiens à dire que je suis grand débutant. Mais motivé pour comprendre :D

Voici en quoi consiste ce que je compte faire :

Je voudrais faire s'allumer des LED en fonction de la position ou non de 2 objets (1 et 2) dans 2 zones distinctes (A et B).

Objet 1 dans Zone A                                      = LED Bleues
Objet 1 dans Zone B                                      = LED Rouges
Objet 2 dans Zone B                                      = LED Rouges
Objet 1 dans Zone A + Objet 2 dans Zone B = LED Vertes

Pour la détection des objets, j'ai pensé à des capteurs inductifs (les capacitifs ne seront pas pratiques dans mon cas).

La surface de la Zone A étant un peu élevée, je pense donc mettre plusieurs capteurs inductifs en série (ou en parallèle ?).

Viennent mes questions... :

- Comment relier le tout pour faire fonctionner les LED ? Est-ce que une carte Arduino peut faire ça ?

- Peut-on diminuer la distance mini entre plusieurs capteurs côte-à-côtes en les "isolant" avec un matériau ?

Merci de votre aide, j'espère pouvoir avancer dans mes recherches ! :D

Portrait de Walter

bonjour,

je ne connais pas les capteurs inductifs, donc je ne peux te répondre que sur l'arduino.
Une carte Arduino peut envoyer/recevoir des informations analogiques et numériques, ainsi que de pouvoir définir une logique par programmation en fonction des entrée/sortie, donc cela ne pose pas de problème en soit.

Pour la sortie sous forme de LED, il suffit de connecter directement tes LED sur des "PIN" de l'arduino configurer dans ton programme en sortie, la résistance de protection n'est pas nécessaire.

Pour la détection de positionnement cela dépend du retour de tes capteurs.

Portrait de FGW

Merci pour la réponse rapide :)

OK pour l'Arduino. Il y a un modèle particulier à choisir pour ça ? J'ai vu des petites cartes, je me demande si ce serait suffisant. Il faut que j'aille voir les différences du coup ! 

Après je risque de bloquer pour la programmation mais je pense pas que ce soit quelque chose de très complexe comme programme. :) 

Qu'est-ce que tu veux dire par "détection de positionnement" ? Tu parles du moment où l'interrupteur du capteur se déclenche ? 

Portrait de Walter

Non je ne pense pas qu'une version particulière soit nécessaires, en fait cela dépend plus de ce que tu voudra en faire, pour ce que tu as décrit une "nano" serait peut être la moins cher,
https://www.amazon.fr/SODIAL-ATmega328-P-20AU-Carte-Module/dp/B00QPUEFNW...

Pour la programmation il existe pas mal d'exemple allumant une LED, donc se sera surtout du copier/coller

Je parle de comment ton capteur indique qu'il a détecté quelque chose.

Portrait de FGW

Merci Walter pour le lien !

Spy, je vais essayer de fournir plus d'infos ce soir :) 

Portrait de FGW

Concernant les 2 objets, ce sont tout simplement des balles de la taille d'une balle de Baby-foot.

Voici un schéma simplifié en vue de dessus. Les dimensions ne sont pas fixes pour l'instant, mais on approcherait quelque chose de cet ordre là (donc ce n'est pas juste une petite surface..) :

schema.jpg

Portrait de FGW

Parce-que ma question première était de savoir comment faire fonctionner les capteurs en série avec des LEDs ;) Mais j'aurais pu faire un schéma directement, c'est vrai :D

Mince, ça semble donc plus compliqué que prévu ^^'

Quels sont les problèmes principaux du coup ? Histoire d'avoir une idée dans quelle direction m'orienter pour corriger le truc. La taille des surfaces ? La disposition des surfaces ? Les objets ?

Je tiens d'ailleurs à préciser que si la Zone A détecte l'objet B, ce n'est pas un problème !

Imaginons que les 2 zones fassent la taille d'un capteur, est-ce que le problème serait le même ?

Merci de votre aide :)

Portrait de FGW

Je me fiche de savoir quels capteurs sont activités sur la zone A :)

Il y aurait le/les capteurs A + le/les capteurs B. Les 2 groupes de capteurs ne sont pas pas liés entre eux, en dehors de par la carte Arduino par exemple. 

La carte Arduino doit pouvoir accepter deux signaux venant de ces 2 groupes de capteurs justement, non ?

Signal A branché sur une entrée de l'Arduino. 

Signal B branché sur une entrée de l'Arduino. 

Le programme agit en fonction des 2 signaux et allume des leds en conséquence. 

"tu ferais mieux de passer à une autre discipline" : c'est gentil comme conseil mais je ne lâche pas aussi facilement. Je pense qu'avec uniquement 2 capteurs, ce projet est faisable, donc maintenant je cherche à creuser comment mettre en place plusieurs capteurs. J'aime comprendre les choses, aucun intérêt d'abandonner si tôt :) 

Portrait de FGW

Quand tu m'as envoyé ton mail en me signalant qu'il y avait des "des
énergumènes qui te gonflent un maximum" sur le forum, je ne pensais pas que tu parlais de toi-même ;)

Je réitère ma question pour les personnes un peu plus ouvertes qui accepteraient d'y répondre :

La carte Arduino peut-elle accepter 2 signaux venant de seulement 2 capteurs (A et B) ?

Signal A branché sur une entrée de l'Arduino. Signal B branché sur une entrée de l'Arduino. 

=> Le programme agit en fonction des 2 signaux et allume/éteint des LEDs de couleur en conséquence ?

Si la réponse est oui, c'est exactement ce que je veux. La taille de la surface, c'est un problème que je verrai plus tard ! :)

Portrait de Walter

C'est difficile de te répondre simplement, cela dépend de plusieurs facteurs.
Si tes capteurs sont en tout ou rien ou analogique, il y a pas mal d'entrée numériques et un peu moins d'entrée analogique, donc ce n'est pas un soucis.
Si tes capteurs utilisent un protocole de communication type i2C, tu aura sûrement du mal.

Portrait de FGW

Ce serait du tout ou rien. Principe d'un interrupteur classique : ouvert ou fermé. 

Portrait de un visiteur

Bonjour,

Avec des capteurs inductifs, c'est irréalisable,
Les capteurs inductifs ne détectent les objets métalliques qu'a très courtes distances.

Toi tu veux surveiller une zone.

Tes objets A et B peuvent ils embarquer un peu d'électronique ?

Portrait de FGW

Les distances max des capteurs sont de quel ordre ? Il me semble avoir vu 40mm. En soit ce serait suffisant puisque la balle/bille roule sur la surface ? 

Les objets A et B pourraient éventuellemnt embarquer de l'électronique mais pourraient surtout être métalliques bien entendu.

Après comme précisé plus haut, je peux me contenter d'un seul capteur par zone pour le moment, histoire de simplifier la chose et de mieux visualiser le tout (donc la surface des zones serait égale à la taille du capteur) 

Portrait de Walter

Oui la distance de détection n'est pas forcément ton plus gros problème.
Tu peux toujours tester avec un seul capteur par zone, donc pour un capteur pas trop chère, quelques mm de diamètre.
Il faudra aussi prévoir une alimentation séparer de l'arduino, car sur ceux que j'ai vue, on est à plus de 5V d'alimentation et 300mA de consommation.
Je ne sais pas si il y en a directement connectable et alimenté par l'arduino?

Après je serais curieux de voir comment tu va passer à ta surface de l'ordre du 1m² et pour quel prix ?
En tout cas j'espère que tu va aller au bout de ta recherche et partager avec nous tes résultats.

Portrait de FGW

Super ! Merci pour les réponses. Je vais déjà essayer avec un capteur par zone+la carte Arduino que tu m'as conseillé, Walter.

Concernant l'alimentation, j'étais tombé un jour sur la vidéo ci-dessous, où le capteur (capacitif) est alimenté par une pile et permet d'allumer/éteindre une petit ampoule.

En tout cas, je viendrai volontiers partager mes avancés, compte sur moi ;)

Portrait de Walter

J'aime pas trop la pile 9V, mais c'est l"idée, si tu as un vieux chargeur 9V/1A ou plus c'est encore mieux.

Portrait de FGW

OK, merci Walter pour le conseil, je vais voir ça :)

Portrait de Walter

Tu parle de quoi Spy, du projet global ou d'utiliser un capteur inductif avec l'arduino?

"Un Visiteur" lui a déjà dit que c'était irréalisable.

Portrait de FGW

Dommage que tu ne répondes pas à Walter, j'aurais aimé savoir de quoi tu parlais précisément moi aussi :) 

Portrait de un visiteur

Merci SPY pour cette nouvelle diarrhée verbale, mais j'ai déjà dis la même chose en 4 phrases et en ne prenant personne de haut.

Portrait de FGW

Merci de la réponse enfin un minimum complète. Tu vois que tu peux faire des réponses utiles ;)

Je ne vois pas en quoi je modifie le cahier des charges. Je suis conscient des contraintes et étant novice, je préfère d'abord commencer avec une "maquette", donc avec 2 capteurs. En quoi c'est un problème ? Pour info, je t'ai présenté le projet final car tu me l'as demandé, j'ai toujours eu pour but de commencer petit. :)

Et merci de douter des mes compétences, mais en aucun cas je suppose que tu es né avec tes supposés dons en la matière toi aussi. Tout le monde commence par l'apprentissage et c'est ce que je fais (même si ce domaine ne m'est pas à 100% inconnu). J'aime me poser devant des problèmes donc ne t'en fais pas pour moi, je ne risque pas ma vie ;)

En tout cas merci pour l'info sur la possibilité de mettre ou non des capteurs en série ! J'étais également au courant de la contrainte de la promiscuité, ça c'est aussi un problème assez chiant...

(tu sais, tu n'as aucune raison d'écrire d'une façon assez... énervée. C'est un forum d'entraide, je viens juste poser quelques questions. Pourquoi s'énerver ? Tu as peut-être peur que les gens réussissent et de te sentir bête par la suite ? C'est pas bon pour la santé de trop s'énerver, hein ;D)

Portrait de Walter

Spy, je ne comprend pas pourquoi tu t'énerve tout seul comme ça, pour au final traiter tout le monde d'abrutis.
En insinuant bien évidement que toi tu es intelligent.
Franchement c'est chiant à la longue, peut être parce que je suis trop con!

" Avec des capteurs inductifs, c'est irréalisable", tu as l'impression que ça dis quelque de différent de toi???

En quoi ca te gêne que FGW ne veille pas vous croire sur parole et voudrais l'expérimenter par soit même.
Pourquoi utilise tu le "vous" je ne crois que moi ou "Un visiteur" ne semblent  faire du problème de FGW, le notre?

Je doit être vraiment très con, parce que ca n'a aucun sens!!!

Portrait de FGW

Walter a tout dit :)

Je suis assez têtu, donc oui j'aime vérifier les choses par moi même. 

Calme toi Spy, tout va bien se passer. Puisque je n'arrivai à rien, je penserai fort à toi en regrettant d'avoir dépensé quelques euros dans 2 capteurs et une carte Arduino ;D

Je ne te pense stupide Spy. Je te pense juste sujet à un énorme complexe de supériorité. Mais ça ne soigne, c'est une maladie, je ne t'en veux pas..

Portrait de gael

Hola, je sens que ça bouillonne. Voici mon avis personnel pour ton projet (je ne parle que de ça :) ) . A ta place j'utiliserai un beau raspberry PI et une caméra. Google à pas mal bossé sur le traitement d'image pour proposer des solutions assez simple (bon...faut de l'huile de coude quand même, mais sa prends aux trips ;) ) qui s'appelle le Mobilenet SSD. Il est optimisé pour utiliser l'ARM du raspberry. Qui développe cette technologie? Un soft qui s'appelle OPENCV qui est fait pour la reconnaissance d'objet. (couleurs, formes, objets, personnes). Il est précis et puissant. Pour te donner un exemple si tu affiches 100 personnes, 100 chiens, 100 chevaux et une voiture (je caricature hein :) ) dans le champ de vision de la caméra, il sera te dire "ça c'est une voiture". Donc je verrai bien une camera, focalisée sur ta piste, les lignes délimitées sur OPENCV, et ensuite la reconnaissance de tes balles de baby foot avec la couleur...., tu peux ensuite actionner les GPIO de ta boiboite en fonction de ce que te donne l'image.

Mots clés dans ta recherche : OPENCV, Debian, Picamera, Mobilenet SSD, Raspberry traitement images.

BOnne soirée.

Portrait de Walter

Du coup comme je trouve que ta conduite est illogique, ca veut dire que tu incarnes aussi la bêtise humaine?
Ou tu es le seul à pourvoir en juger?

Je ne vois pas en quoi le fait de tester une carte arduino avec deux capteurs est représentatif de la bêtise humaine?
Ou alors on vit dans un monde en paix et idyllique.

Tu ne trouve pas que ta réaction est légèrement disproportionné par rapport au sujet traité?

Bonne nuit à toi aussi.

Portrait de FGW

Salut Gael, merci pour les infos complémentaires pour la reconnaissance par vidéo ! Je vais aussi étudier cette piste !

Merci bien :) 

Portrait de FGW

Ca marche Spy, merci de tes conseils. J'arrête tout de suite ce projet idiot ! J'ai été bête de vouloir le faire !

Heureusement que tu étais là, je n'y serais jamais arrivé sans toi. J'aimerais beaucoup te rencontrer en personne pour te... remercier. :)

Portrait de FGW

J'aurais effectivement aimé pouvoir faire une sorte de surface "tactile". Ce serait le must mais effectivement hors de portée j'ai l'impression :/

Bon en tout cas je prends note de toutes vos pistes pour essayer de m'approcher au maximum du résultat final. :) 

Portrait de un visiteur

Exactement ! mots pour mots.

Portrait de un visiteur

Je suis en train de te relire , t'es un gros malade lol

Portrait de FGW

Bonjour à vous !

Je viens donner des nouvelles comme prévu.

J'ai reçu mercredi dernier mon Arduino (c'était long ahah), et je viens de terminer la MAQUETTE (je précise...).

Et tout fonctionne nickel. :)

J'ai donc testé sur une surface plus petite que la finale, donc il ne manque plus qu'à recevoir les autres capteurs. :)

Voilà le schéma de mon câblage :

biball_bbv2.jpg

Et voici le code (j'ai bien-sûr été aidé, par un autre forum, sur certains points). Il reste quelques trucs à rendre plus simple je crois, mais ça fonctionne comme ça :

// ******** Déclaration des constants ********//
const int LED_1 = 7;
const int LED_2 = 3;
const int LED_3 = 5;
const int BUTTON_1 = 10;
const int BUTTON_2 = 12;

// ******** Fonction SETUP = Code d'initialisation ********//
void setup(){  
  pinMode(LED_1, OUTPUT);
  pinMode(LED_2, OUTPUT);
  pinMode(LED_3, OUTPUT);
  pinMode(BUTTON_1, INPUT);
  pinMode(BUTTON_2, INPUT);
}

void loop(){
  int a = digitalRead(BUTTON_1);
  int b = digitalRead(BUTTON_2);

if(a==HIGH && b==HIGH){
  digitalWrite(LED_1,LOW);
  digitalWrite(LED_2,LOW);
  digitalWrite(LED_3,HIGH);
}else{
  if(a==HIGH){
  digitalWrite(LED_1,HIGH);
  digitalWrite(LED_3,LOW);
  }else{
  digitalWrite(LED_1, LOW);
  }
  if(b==HIGH){
  digitalWrite(LED_2,HIGH);
  digitalWrite(LED_3,LOW);
  }else{
  digitalWrite(LED_2, LOW);
  }
  }
}

Portrait de Walter

Les capteurs étant branché sur ls pins BUTTON_1 et BUTTON_2, en digital, les LED seront allumées dès que le capteurs fournira plus de 2.5V.

FWG peut tu préciser quels capteurs tu utilises, parce que la ça ressemble à des capteurs IR?
Par contre cela me parais bien loin de ce que tu voulais faire à l'origine non?
Quel précision et pour quel surface as tu?

Portrait de Jetfuzz

Pareil , j'ai penser a des capteur IR.

Portrait de FGW

Oh, Spy n'a pas changé depuis 1 mois ^^

Tu peux remplacer le terme "Button" par "Capteur" si tu préfères. Ça ca mieux comme ça ?

Il me semble toujours avoir parlé de capteur d'ailleurs....

Concernant le "modèle" du schéma, j'ai juste pas trouvé de capteur inductif dans le logiciel, mais PARDON de ne pas avoir cherché plus en profondeur s'il y en avait. Il s'agit bien évidemment de capteurs inductifs en réalité, comme prévu.

@Walter : ce sont des capteurs de 80x80. J'ai fixé la dimension de la zone, il me faudra donc 6 capteurs.

Les capteurs détectent jusqu'à une distance de 2cm, donc je peux parfaitement les placer sous une surface où évolueront les 2 balles. 

Et non, cela correspond exactement à ce que je voulais (validé par la personne avec qui je fais ce "stupide projet") ^^

Portrait de Walter

Ok, ca me rassure, par contre ton capteur a une surface carré pas circulaire?
du coup ta surface ça donne 16x24 non, c'est pas 20*40 que tu voulais, comment tu prévu de disposer les capteurs sur ta surface?
le 80*80mm c'est la détection théorique ou ce que tu as testé?

Portrait de FGW

Le schéma dds zones a disparu ? Je sais pourquoi, je l'ai supprimé en voulant changer l'image de mon schéma quand j'ai posté mon message ahah. J'ai vérifié juste après et il n'avait pas disparu, mais je le remets sans problème du coup, pas de stress :) 

T'es un peu parano, toi non ?

Ce sont des capteurs carrés dont la zone de détection est circulaire de 80*80 (acheté sur Amazon à 18€, je vous mets le lien ce soir si vous le voulez).

Je peux les disposer côtes à côte, j'ai fait toutes une série de tests 

@Spy : je comprends pas trop ton message, mais mon code fonctionne très bien avec mon schéma. J'ai toujours parlé de capteur inductif. Tu es jaloux que je réussisse à avancer ou quoi ? Le code de l'Arduino est peut-être trop complexe pour TOI finalement :) Là où j'ai été me renseigner, mon code a très bien été compris sans aucune remarque de personne stupide dans ton genre. Merci de ton aide quand même. 

Portrait de FGW

Et concernant la taille de la zone, j'ai dit qu'elle n'était pas fixée ! Je compte justement m'adapter aux capteur.

T'es vraiment borné toi, c'est fou

Portrait de FGW

Pourquoi du liège ?

Mince, je n'étais pas au courant qu'il s'agissait d'inductifs et non de capacitif :o....

Même une boule aluminium est détectée hein...

Portrait de FGW

Et toi tu ne détectes pas l'ironie.

C'est jamais bon d'expliquer ses blagues mais bon.. : je me foutais juste de toi. Je sais très bien qu'il faut du métal. Comment tu crois-tu que j'ai pu vérifier que tout fonctionnait si je n'avais pas utilisé de métal ?

Quelle tristesse de discuter avec toi.

Portrait de FGW

N'importe quoi... Rien que pour te faire plaisir, je vais garder des dimensions suffisamment grandes, ça m'est égal.

Tu auras le lien quand j'y aurai accès. 

Ton comportement envers les gens est juste inacceptable, je ne comprends pas comment tu n'as pas pu être éjecté de ce forum que tu pollues les 3/4 du temps. 

Portrait de Jetfuzz

Je me suis dit les derniers jour,

la discussion entre spy et Walter, hors forum, l'a rendu moins virulent, limite agreable.
et franchement je trouvais ca chouette, pour preuve j'ai moi même posté un code que j'ai fait de mes petites mains, sans me dire, je vais encore me faire défoncer par spy parce que je n'ai pas coder comme lui, et que sa solution est bien meilleure etc ....

Finalement chassez le naturel , il revient au galop.

Une idée au départ, n'a jamais été le résultat final, il y a toujours des modifications du au aléa des contraintes technique, personne n'as la meilleure idée, mais tout le monde a des pistes, qui permettent finalement d'arriver a un compromis qui fait que l'idée de départ fini par se réaliser.
Sauf dans le monde de spy, ou forcement son idée est la meilleure, et les autres sont des cons.

C'est usant a force.

Non, il ne faut pas quitter le navire, le capitaine Jack SPY fera face a une mutinerie, et a force se retrouvera sur une ile déserte sans personne a qui parler, parce qu'on le l'ecoutera plus.
mais pour ca il faut du monde en face.
soit que les modérateurs fassent leurs boulot, je pense qu'il a déjà bafoué toutes les règles du forum.

Cordialement

Jetfuzz
 

Portrait de Walter

Malheureusement je ne pense pas qu'il y ait de modérateur sur ce forum et c'est bien dommage.

Jetfuzz pour ma pars je pense que quelques soit les critiques, a tord ou a raison, ne doivent pas être un frein à livrer son code.
Car c'est avec les critiques que l'on avances, quelque soit son niveau.

Portrait de Jetfuzz

Walter
je suis bien d'accord, les critiques sont constructives, quand les critiques se bornent a expliquer.
parce contre le dénigrement et le harcèlement, ce n'est pas ma tasse de thé.

Cordialement

Jetfuzz

Portrait de Walter

tout à fait, je parlais bien uniquement des critiques, pas de dénigrement ou autres joyeusetés

Portrait de FGW

D'acc.

Je ne comprends même pas pourquoi je suis venu sur ce forum en fait, les insultes de ce spécimen ont monopolisé le sujet. 

Mais rassure-toi, tu as réussi : je ne mettrai plus les pieds ici (et je tiendrai parole, contrairement à toi).

Merci quand même aux autres pour vos réponses qui sont un minimum respectables, elles. 

Portrait de Walter

Je ne veux pas polémiquer donc je veux juste te dire que c'est dommage que tu parte et que vu la participation sur ton sujet cela intéresse du monde.
A titre personnel je suis curieux de voir ton projet fini, en vidéo par exemple.
Peux tu au moins donner un lien pour te suivre?

Portrait de FGW

Je ne peux me retenir de passer : je te propose juste de retourner sur la page précédente pour relire la façon dont tu t'adresses à Un Visiteur. Tu n'es que menteur qui cherche toujours à avoir le dernier mot. Comme je l'ai déjà dit avant, tu es malade et ça se soigne, heureusement pour toi.

Sur ce, merci Gentil Spy.

@Walter : ce sera avec plaisir. Car je sais que je reviendrai ici pour donner des nouvelles de la suite malgré tout. ^^ Même si Spy trouvera le tout stupide xD

Portrait de Walter

Toujours la même chose, je ne vois pas en quoi FGW serait tenu d'arrêter son projet ou le modifier, uniquement parce que tu pense, sûrement à raison, que cela n'est pas possible.
Le fait qu'il préfère tester par lui même et aller au bout de son idée et au contraire plutôt positif.

J'avoue que je ne comprend pas ou est le soucis et en quoi c'est spécialement idiot de chercher a comprend pourquoi son raisonnement ne serait pas bon et a confronter son raisonnement à la réalité.
Je ne vois pas en quoi, il y a matière à l'insulter.
Tu ne peux pas exprimer un désaccord sans insulte et calmement?
Dommage parce que ton discours aurait bien plus d'impacte.