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 :

Contrôle position MCC


Sujet :

Arduino

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2018
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Contrôle position MCC
    Bonjour,

    Eleve de terminale, je dois réaliser cette année un prototype de robot hexapode s'inspirant du prjoet RHEX :https://www.bostondynamics.com/rhex

    J'utilie un capteur à efffet hall pour gérer la position du moteur. Voici la partie du programme dédiée à l'arrêt d'un moteur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    int position_initMoteur5 = 0 ;         
      int position_init2Moteur5 = 8 ;
      int position_init3Moteur5 = -8 ; 
     
     
      // si position atteinte (compteur_M5= position moteur 5, IN1 et IN2 = sens de rotation)
      if((compteur_M5 >= position_init && compteur_M5 <= position_init2)|| (compteur_M5 < position_init && compteur_M5 >= position_init3)) {       
    analogWrite(ENA_5,LOW); digitalWrite(IN1_5,LOW);digitalWrite(IN2_5,LOW); pos_M5= false;}  //arret du moteur
      else {
      // si position pas atteinte
        if(compteur_M5 < position_init3) {     
              analogWrite(ENA_5,80); digitalWrite(IN2_5, LOW); digitalWrite(IN1_5, HIGH);}
      // si dépassement de la position
        else if (compteur_M5> position_init2){ 
          analogWrite(ENA_5,80);
          digitalWrite(IN2_5,HIGH);
          digitalWrite(IN1_5,LOW);  }
       }
    Voici mon problème: je voudrais qu'à l’arrêt ma patte soit en bas, donc en position 0. Mais plus le moteur a tourné avant, plus la position est élevée ( 1 tour=2096).
    Il lui faut donc plusieurs tours à la patte pour qu'elle s’arrête. J'aimerais convertir la position dans un intervalle de [0;2096] pour que le temps d’arrêt ne dépasse pas un tour.
    Auriez vous des idées??
    Merci!

  2. #2
    Membre actif

    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2014
    Messages : 75
    Points : 289
    Points
    289
    Par défaut
    Bonjour !

    Ce que tu cherches à faire ne serait pas un modulo ?

    Ta variable contenant la position doit alors prendre la valeur position % 2097 (car x % x = 0).

    Ce qui donne : position = position % 2097 (ou en notation raccourcie position %= 2097).

    Bon courage pour la suite !

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2018
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Je vais essayer et vous tiendrai au courant, merci!

Discussions similaires

  1. [AC-2013] Mise en page état, choix dynamique de position d'un "bloc de contrôle"
    Par Defaultuser01 dans le forum Access
    Réponses: 19
    Dernier message: 27/03/2014, 14h39
  2. [AC-2007] Lier la position de plusieurs contrôles
    Par neiluj26 dans le forum IHM
    Réponses: 2
    Dernier message: 28/10/2010, 18h36
  3. Réponses: 4
    Dernier message: 28/07/2010, 16h59
  4. Position des Contrôles dans un état à l'impression
    Par ylemasson dans le forum VBA Access
    Réponses: 2
    Dernier message: 22/04/2010, 12h05
  5. [C#] Position d'un contrôle
    Par AlexandreP dans le forum Windows Forms
    Réponses: 4
    Dernier message: 03/07/2006, 15h36

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