Aller au contenu

Messages recommandés

Posté (modifié)

salut les bidouilleux (ses)

or donc, voici qu'en cette semaine proche de l’ascension, près du mont des oliviers...mais caisse je dis :b:

non, alors voilà, je motorise ma roue à filtres avec un Arduino Nano V3 et le petit moteur pas à pas qui va bien

pour savoir sur quel filtre est positionné la roue (après une coupure de courant par ex) et pour repositionner les filtres avec précision, j'ai utilisé des senseurs à effet hall et des aimants

je comptais lire un état 0/1 des contacts or les valeurs sont différentes

les senseurs sont câblés +5V , GND, contacts arduino A1, A2, A3 (oui, avec 3 capteurs je dois pouvoir détecter les 5 positions)

j'utilise le code

    posi1 = analogRead( 1 );
Serial.println(posi1); 
posi1 = analogRead( 2 );
Serial.println(posi1); 
posi1 = analogRead( 3 );
Serial.println(posi1); 

mais ce n'est pas du tout du 0/1 qui en resort

me serais-je trompé de senseur? U18 524

http://fr.aliexpress.com/item/Free-shipping-10pcs-lot-U18-US1881-OH188-1881-U18-typing-Hall-element-Hall-sensor-Hall-switch/32609036296.html

il y a moyen de faire avec?

Modifié par gerard33
Posté

Juste comme ça, intuitivement je dirais que analogRead va renvoyer des valeurs étalées sur une fourchette d’échantillonnage, par exemple entre 0 et 1023; car ce sont des capteurs analogiques. L'idée pour le capteur Hall c'est de déterminer à partir de quelle valeur seuil on considère qu'on est "devant" l'aimant.

Posté

oui, mais son retour est très variable

si je les raccorde dur les bornes digitales, ça risque?

normalement j'aurai du 0/1 en lecture non?

Posté

Une réponse idiote,pourquoi ne pas utiliser un seul capteur (poussoir 0/1) pour faire le zéro index au démarrage et compter le nombres de pas pour chaque filtres?

Paul

Posté

Merci pour vos réponses

effectivement on peut le câbler en digital

mais il faut,semble-t-il, une résistance 10kΩ pour que le pin passe à LOW

car en l'état il reste à HIGH

je continue de chercher :)

Posté
salut les bidouilleux (ses)

or donc, voici qu'en cette semaine proche de l’ascension, près du mont des oliviers...mais caisse je dis :b:

non, alors voilà, je motorise ma roue à filtres avec un Arduino Nano V3 et le petit moteur pas à pas qui va bien

pour savoir sur quel filtre est positionné la roue (après une coupure de courant par ex) et pour repositionner les filtres avec précision, j'ai utilisé des senseurs à effet hall et des aimants

je comptais lire un état 0/1 des contacts or les valeurs sont différentes

les senseurs sont câblés +5V , GND, contacts arduino A1, A2, A3 (oui, avec 3 capteurs je dois pouvoir détecter les 5 positions)

j'utilise le code

    posi1 = analogRead( 1 );
Serial.println(posi1); 
posi1 = analogRead( 2 );
Serial.println(posi1); 
posi1 = analogRead( 3 );
Serial.println(posi1); 

mais ce n'est pas du tout du 0/1 qui en resort

me serais-je trompé de senseur? U18 524

http://fr.aliexpress.com/item/Free-shipping-10pcs-lot-U18-US1881-OH188-1881-U18-typing-Hall-element-Hall-sensor-Hall-switch/32609036296.html

il y a moyen de faire avec?

 

Bonjour Gérard,

 

C'est la fonction que tu utilise qui n'est pas la bonne:

Tu utilise analogRead(input);, au lieu de digitalRead(input);...

Si tu fais un digitalWrite(1); en fonction d'initialisation, çà branchera la résistance de pullup. Elle peut aider, mais ne pas trop compter sur elle non plus en cas de parasites HF.

 

Christophe

Posté

C'est la fonction que tu utilise qui n'est pas la bonne:

Tu utilise analogRead(input);, au lieu de digitalRead(input);...

Si tu fais un digitalWrite(1); en fonction d'initialisation, çà branchera la résistance de pullup. Elle peut aider, mais ne pas trop compter sur elle non plus en cas de parasites HF.

 

Christophe

j'ai changé depuis, j'utilise "digitalRead", mais le résultat est toujours 0

le fait de lui envoyer "1" en init ne change pas grand chose: le résultat est alors toujours "1"

Posté
j'ai changé depuis, j'utilise "digitalRead", mais le résultat est toujours 0

le fait de lui envoyer "1" en init ne change pas grand chose: le résultat est alors toujours "1"

 

Alors il te faut vérifier la tension qui entre dans l'arduino... Es-tu sûr de tes capteurs?

 

Christophe

Posté

ce sont des U18 524

l'arduino est alimenté par l'USB de l'ordi

sur tous les schémas que je vois il faut une résistance 10 kΩ

qu'en penses-tu? ce n'est pas ça qui cloche?

je vais en récupérer une et essayer

Posté

Alors prends celle qui est recommandée, et pas la résistance interne qui est trop faible!

Posté

je viens de le faire, effectivement l'état change

mais quelle imprécision :( l'aimant est détecté 1.5 cm avant et après

sur une course de 3..4 cm, ce n'est pas jouable

je vais essayer de réduire la distance entre capteur et aimant (actuellement 1.5 cm) pour réduire le diamètre du cône d'influence...

Posté

Pourquoi ne pas mettre une petite lame souple électrique connectée à la masse tout simplement, qui touche un contact? relecture en digitalInput avec pullup interne.

Rien de plus basique!

Posté (modifié)

Ton capteur doit être pas terrible ça marche bien normalement, on voit parfaitement monter la tension en courbe gaussienne en générale...avec les tutos arduino du net.

Ça permet d'ailleurs de réduire la vitesse d'approche du moteur...

Modifié par Raphael_OD
Posté (modifié)
je viens de le faire, effectivement l'état change

mais quelle imprécision :( l'aimant est détecté 1.5 cm avant et après

sur une course de 3..4 cm, ce n'est pas jouable

je vais essayer de réduire la distance entre capteur et aimant (actuellement 1.5 cm) pour réduire le diamètre du cône d'influence...

 

ben avec un contact sec et en comptant les pas ça serait bien plus précis.

avec trois tu couvre 7 positions. :jesors:

Paul

Modifié par banjo
Posté

Merci banjo

en fait il y a beaucoup moins de place dans la roue :D

par approximation, j'ai déterminé que le moteur doit faire 2025 pas entre filtres

il faudra que je vérifie de temps à autre

le temps que les micro-switchs arrivent à pied par la Chine (oui je sais, mais je l'aime bien celle-là :be:)

Posté
Pourquoi ne pas mettre une petite lame souple électrique connectée à la masse tout simplement, qui touche un contact? relecture en digitalInput avec pullup interne.

Rien de plus basique!

 

tu peux être + explicite?

je pars de GND ==> contact ==> pin D3 (par ex) ?

et, seulement en lui envoyant la masse, D3 va changer d'état?

Posté

OK, j'en ai en plus

je me demandais à quoi elle pouvait servir

les plus petits switchs trouvés font 24 mm sur 0.8/0.8

ça rentre pas

la RAF fait 20mm HT avec au milieu le plateau à filtres

ce que je peux faire c'est des petites fenêtres mais j'aimerai éviter

la RAF parait grande (5*1.25') mais si tu enlèves la surface nécessaire à la rotation de l'Atik lors de sa fixation, tu perds déjà la face avant

si tu enlèves la plage occupée par le PO, il ne te reste pas grand chose de la face arrière

le côté reste à exploiter

Posté

Bonjour Gerard

Si tu veux une bonne sensibilité il te faut des petits aimants.

Sinon tu peux utiliser un autre type de capteur plus facile à utiliser: un switch opto pour moins de 1€

Pour trouver de l'information sur le Web tu peux utiliser les mots "opto switch arduino"

 

Pierre

Posté
OK, j'en ai en plus

je me demandais à quoi elle pouvait servir

les plus petits switchs trouvés font 24 mm sur 0.8/0.8

ça rentre pas

la RAF fait 20mm HT avec au milieu le plateau à filtres

ce que je peux faire c'est des petites fenêtres mais j'aimerai éviter

la RAF parait grande (5*1.25') mais si tu enlèves la surface nécessaire à la rotation de l'Atik lors de sa fixation, tu perds déjà la face avant

si tu enlèves la plage occupée par le PO, il ne te reste pas grand chose de la face arrière

le côté reste à exploiter

Les miens font - de 6mm

Rejoignez la conversation !

Vous pouvez répondre maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous pour poster avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.