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 :

TB67H420FTG Motor Driver Carrier


Sujet :

Arduino

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2018
    Messages : 2
    Points : 2
    Points
    2
    Par défaut TB67H420FTG Motor Driver Carrier
    Bonjour tout le monde,
    Mon projet est de réaliser un driver DC moteur pour une machine. La connexion avec le moteur est réalisée à l'aide d'un port DB25.

    Pour cela, j'utilise le TB67H420FTG Motor Driver Carrier que j'aimerai programmer avec une carte arduino.
    Je voudrais savoir si ce code peut fonctionner avec mon codeur, les mesures de position sont lues sur un codeur rotatif 4000 pts/tour, monté directement sur la vis à billes.
    J'ai 6 broches pour l'encoder. Puis-je utiliser seulement les 2 broches : A et B comme sur ce code pour réaliser le contrôleur ?
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    int pulses;                              //Output pulses.
    int deg = 0;
    int encoderA = 3;
    int encoderB = 2;
    const int pwm = 5;                      //Power of motor.
    const int dir = 4;                       //Direction of the motor.
    int pulsesChanged = 0;
    #define total 245                        //x1 pulses per rotation.
    #define motorSpeed 180                   //Change speed of the motor.
    void setup(){
      Serial.begin(115200);
      lcd.begin(16,2);
      lcd.setCursor(0,0);
      lcd.print("x1 ENCODER");lcd.print("     ");
      pinMode(encoderA, INPUT);
      pinMode(encoderB, INPUT);
      pinMode(pwm, OUTPUT);
      pinMode(dir, OUTPUT);  
      analogWrite(pwm,0);
      digitalWrite(dir,HIGH);
      waitAnyKeyPress();
      attachInterrupt(0, A_CHANGE, CHANGE);
     
     
    }//setup
     
    void loop(){
     if (pulses == total) {
        analogWrite(pwm, 0);
        digitalWrite(dir, HIGH);
      }
      else {
        if (pulses > total) {
          analogWrite(pwm, motorSpeed);
          digitalWrite(dir, LOW);
     
     
        }
        else if (pulses < total) {
          analogWrite(pwm, motorSpeed);
          digitalWrite(dir, HIGH);
        }
      }
     
      if (pulsesChanged != 0) {
        pulsesChanged = 0;
        lcd.setCursor(0,1);
        lcd.print("Pulses:");lcd.print(pulses);lcd.print("          ");
        Serial.println(pulses);
      }
    }
     
    void A_CHANGE(){                                  //Function that to read the pulses in x1.
      if( digitalRead(encoderB) == 0 ) {
        if ( digitalRead(encoderA) == 0 ) {
          // A fell, B is low
          pulses--; // moving reverse
        } else {
          // A rose, B is low
          pulses++; // moving forward
        }
      }
      pulsesChanged = 1;
    }
    Images attachées Images attachées   

Discussions similaires

  1. Driver - carte d'acquisition
    Par Kaiser Söze dans le forum Visual C++
    Réponses: 4
    Dernier message: 06/09/2005, 15h43
  2. Driver ODBC pour interbase
    Par Houben Jacques dans le forum InterBase
    Réponses: 2
    Dernier message: 28/05/2003, 20h41
  3. URGENT DRIVER ODBC
    Par Casp dans le forum Débuter
    Réponses: 3
    Dernier message: 28/04/2003, 16h24
  4. [PostgreSQL] PB de drivers JAVA
    Par koundelitch dans le forum Administration
    Réponses: 5
    Dernier message: 14/03/2003, 15h09
  5. [MFC] Utilisation Drivers
    Par LAPLACE dans le forum MFC
    Réponses: 4
    Dernier message: 21/12/2002, 10h29

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