IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Arduino Discussion :

Roue à filtres bricolée avec position home


Sujet :

Arduino

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2002
    Messages
    223
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 223
    Par défaut Roue à filtres bricolée avec position home
    Bonjour à toutes et à tous,

    Généralement, et ce que font tous les astronomes amateurs bricoleurs, pour motorisez une roue à filtres, il faut, entre autre, un capteur à effet Hall pour détecter un champ magnétique qui indique la position initiale (home) de la roue à filtres. Cette manipulation demande une grande précision pour positionner le capteur et l'aimant de façon à ce que le moteur pas à pas utilisé s'arrête exactement à la position 0 (zéro) au moment du démarrage de la carte Arduino.

    Pour faciliter un peu le projet et pour un minimum d' "investissement" (si puis dire), pourquoi pas ne pas retourner la roue à la position zéro préalablement programmée dans le code Arduino lorsqu'on quitte le programme client de la roue à filtres ? Autrement dit, informatiquement parlant, est-ce qu'on peut ajouter un code de retour à la position zéro lorsqu'on déclenche l'événement "Fermer" ou "Close" de l'application cliente de la roue à filtres ? Est-ce que ça doit être au niveau code Arduino, driver ASCOM ou application cliente ?

    Ainsi, chaque fois qu'on travaille avec la roue à filtres et qu'on veut arrêter le programme après une nuit d'observation, le système ramène la roue à la position initiale et s'arrête pour qu'au prochaine observation, on démarre la roue à sa position Home.

    J'espère que vous me communiqueriez vos avis sur démarche et d'expliquer les avantages et inconvénients.
    Merci

    Hédi

  2. #2
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Systèmes Embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 257
    Par défaut
    Salut,
    Si je comprends bien, tu te demandes si on peut se passer du capteur de position moyennant un démarrage avec une position connue et un retour à cette position avant l'extinction ?

    C'est bien ça ?

  3. #3
    Membre confirmé
    Inscrit en
    Août 2002
    Messages
    223
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 223
    Par défaut
    Salut Vincent,

    Excatement ça, vous avez bien compris ! Car j'ai remarqué que le capteur détecte le champ qu'à partir d'une certaine distance qu'on la chercher aléatoirement et à la longue cette distance peut se "perdre" et on doit l'en chercher une autre !!!
    Mais, avec l'évènement "Fermer" d'une application (au niveau Arduino, driver ASCOM ou cliente Windows), on ramène la roue à sa position initiale avant l'arrêt de ce programme. Ainsi, lorsque démarre l'application, on est bien dans la position Home et la roue travaille convenablement durant la nuit d'observation.

  4. #4
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Systèmes Embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 257
    Par défaut
    Ce principe fonctionne bien en théorie mais en pratique c'est plus complexe malheureusement, même si le Arduino sait combien de pas il faut pour revenir à la position initiale.

    En cas d'effort mécanique ou si le disque rencontre un résistance, des pas du moteurs peuvent sauter idem lors d'une accélération trop rapide. Le Arduino n'a aucun moyen de s'en rendre compte. En cas de coupure d'alimentation le Arduino perd sa capacité à retrouver la position de départ car quand l'alimentation va revenir tout va redémarrer de zéro et si le disque était dans une certaine position, celle-ci est perdue.

    Tu as raison de te poser cette question car c'est un des principaux problèmes de l'électronicien "la condition de démarrage".

    - Si tu choisis de te passer d'un capteur de position alors il te faut lister tout ce qui peut arriver et qui te ferait perdre cette information, pour y palier. Par exemple, mesurer la tension d'alimentation et prévoir un gros condensateur en guise de réservoir d'énergie pour qu'en cas de coupure de courant, le Arduino ait le temps de sauvegarder la position du moteur (le nombre de pas depuis le début) pour qu'au prochain démarrage il fasse un décompte de ce nombre de pas afin de faire revenir le moteur à son origine. Concernant les loupés du moteur donc du nombre de pas, il n'y a pas de solution. Tout ceci demande la mise en place d'une électronique pas forcément simple à dimensionner sans compter qu'on peut se heurter a des problèmes de taille comme l'inertie de la pièce reliée au moteur qui n'est plus alimenté. Et si jamais tout est hors tension et que quelque chose fait que le disque tourne encore, même pas longtemps ? Comment savoir où est ce qu'il s'est arrêté ?

    - Si tu prends un capteur de position, tu t'affranchis de tous ces problèmes (c'est le cas dans toutes les imprimantes a jet d'encre entres autres, au démarrage de l'impression elles vont au point zéro via des capteurs de position)

  5. #5
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 661
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 661
    Par défaut
    bonsoir,

    un tel projet a été développé ici :
    https://www.developpez.net/forums/d1...o/#post8586806

  6. #6
    Membre confirmé
    Inscrit en
    Août 2002
    Messages
    223
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 223
    Par défaut
    Bonjour,

    Auteur, oui je l'ai vu et j'ai bien suivi ce projet et finalement il a utilisé un capteur à effet Hall.
    Effectivement Vincent, vous avez raison. Je n'ai pas pensé à la coupure de courant qui chambarde tout et la roue s'arrête à n'importe quelle position. Bien réfléchie Vincent.
    Donc, en conclusion, le capteur est indispensable pour détecter la position Home de la roue. Le problème est qu'il faut tâtonner pour trouver la position entre l'aimant et le capteur pour que la roue s'arrête au bon moment à la bonne place ! Y a t-il une relation entre le champ magnétique et le capteur pour déterminer cette distance avec précision ?

Discussions similaires

  1. Réponses: 2
    Dernier message: 22/12/2006, 13h46
  2. Position de la souris incompatible avec *{position:absolute} ?
    Par benjiiim dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 22/09/2006, 18h05
  3. Permissions NTFS avec XP Home
    Par Loceka dans le forum Sécurité
    Réponses: 2
    Dernier message: 10/09/2006, 12h32
  4. [CSS] défi avec position absolute et relative
    Par pmartin8 dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 30/11/2005, 19h15
  5. [xml-xsl] Probleme avec position()
    Par seb30 dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 21/04/2005, 12h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo