Forum Électro-Bidouilleur

Merci de vous connecter ou de vous inscrire.

Connexion avec identifiant, mot de passe et durée de la session
Recherche avancée  

Nouvelles:

Bienvenue au Forum de discussion Électro-Bidouilleur! Inscrivez-vous pour participer aux discussions!: 
https://forum.bidouilleur.ca/index.php?action=register Les demandes d'inscription sont révisées quotidiennement.

Auteur Sujet: L298N et CSA et CSB  (Lu 12281 fois)

Curiosus

  • Sr. Member
  • ****
  • Messages: 310
    • Voir le profil
Re : L298N et CSA et CSB
« Réponse #75 le: Avril 30, 2022, 12:09:04 pm »


Oui, tu auras 16 positions

     A+
IP archivée

stephcache

  • Full Member
  • ***
  • Messages: 122
    • Voir le profil
Re : L298N et CSA et CSB
« Réponse #76 le: Mai 05, 2022, 10:21:22 am »

Un petit relevé de courbe de la journée. Reste à  interprété, par conte les mesure ont pas était faite en même temps alors pas simple mais samedi je pourrais faire la mesure sur ADC et en parallèle de la résistance de shunts en même temps.
« Modifié: Mai 05, 2022, 11:05:53 am par stephcache »
IP archivée

stephcache

  • Full Member
  • ***
  • Messages: 122
    • Voir le profil
Re : L298N et CSA et CSB
« Réponse #77 le: Mai 06, 2022, 04:10:05 pm »

En attendant les mesures de demain, un petit problème à  résoudre avec le codeur rotatif.

int MDCR_1 = A2;
int MDCR_2 = A3;
int MDCR_4 = A4;
int MDCR_8 = A5;
int MGCR_1 = 10;
int MGCR_2 = 11;
int MGCR_4 = 12;
int MGCR_8 = 13;

int tableau_codeur[16][4] = {{1,1,1,1}, {0,1,1,1}, {1,0,1,1}, {0,0,1,1}, {1,1,0,1}, {0,1,0,1}, {1,0,0,1}, {0,0,0,1}, {1,1,1,0}, {0,1,1,0}, {1,0,1,0}, {0,0,1,1}, {1,1,0,0}, {0,1,0,0}, {1,0,0,0}, {0,0,0,0}};

int valeur_codeur[16] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'};

int valeur_codeurs[16] = {30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360, 390, 420, 450, 480};

int info_codeur(int D1, int D2, int D4, int D8, int G1, int G2, int G4, int G8)
{
  Serial.print(digitalRead(D1));
  Serial.print(".");
  Serial.print(digitalRead(D2));
  Serial.print(".");
  Serial.print(digitalRead(D4));
  Serial.print(".");
  Serial.print(digitalRead(D8));
  Serial.print("/");
  Serial.print(digitalRead(G1));
  Serial.print(".");
  Serial.print(digitalRead(G2));
  Serial.print(".");
  Serial.print(digitalRead(G4));
  Serial.print(".");
  Serial.print(digitalRead(G8));
  Serial.println(";");

  for(size_t i = 0; i < 16; i++)
  {
    if(tableau_codeur[i][0] == digitalRead(D1) && tableau_codeur[i][1] == digitalRead(D2) && tableau_codeur[i][2] == digitalRead(D4) && tableau_codeur[i][3] == digitalRead(D8))
    {
      Serial.println(i);
      Serial.print(valeur_codeurs[i]);
      Serial.println(" mV");
    }
  }

  for(size_t j = 0; j < 16; j++)
  {
    if(tableau_codeur[j][0] == digitalRead(G1) && tableau_codeur[j][1] == digitalRead(G2) && tableau_codeur[j][2] == digitalRead(G4) && tableau_codeur[j][3] == digitalRead(G8))
    {
      Serial.println(j);
      Serial.print(valeur_codeurs[j]);
      Serial.println(" mV");
    }
  }
}

void setup()
{
  pinMode(MDCR_1, INPUT_PULLUP);
  pinMode(MDCR_2, INPUT_PULLUP);
  pinMode(MDCR_4, INPUT_PULLUP);
  pinMode(MDCR_8, INPUT_PULLUP);

  pinMode(MGCR_1, INPUT_PULLUP);
  pinMode(MGCR_2, INPUT_PULLUP);
  pinMode(MGCR_4, INPUT_PULLUP);
  pinMode(MGCR_8, INPUT_PULLUP);

  Serial.begin(9600);
}

void loop()
{
  info_codeur(MDCR_1, MDCR_2, MDCR_4, MDCR_8, MGCR_1, MGCR_2, MGCR_4, MGCR_8);
 
  delay(3000);
}

Donc voila sa donne sa, si vous avez des idée amélioration je suis preneur.
« Modifié: Mai 07, 2022, 08:11:04 am par stephcache »
IP archivée

Curiosus

  • Sr. Member
  • ****
  • Messages: 310
    • Voir le profil
Re : L298N et CSA et CSB
« Réponse #78 le: Mai 07, 2022, 07:16:37 pm »

A ce que je vois tu t'amuses bien  ;)

Citer
Écrit par stephcache : En attendant les mesures de demain, un petit problème à  résoudre avec le codeur rotatif.

Quelle est ton problème

En ce qui concerne le codeur rotatif, généralement en fait un AND logique, puis on va chercher le résultat dans un tableau

     A+



IP archivée

stephcache

  • Full Member
  • ***
  • Messages: 122
    • Voir le profil
Re : L298N et CSA et CSB
« Réponse #79 le: Mai 07, 2022, 08:31:37 pm »

Pour le code, j'ai mit ma solution.

Pour les courbes, je ferais les mesure demain matin. je tente toujours de comprend la différence entre la mesure qui va sur ADC et celle en parallèle du shunt
« Modifié: Mai 07, 2022, 08:36:17 pm par stephcache »
IP archivée

stephcache

  • Full Member
  • ***
  • Messages: 122
    • Voir le profil
Re : L298N et CSA et CSB
« Réponse #80 le: Mai 08, 2022, 05:09:32 pm »

Donc voila les courbes en courant consommé par les moteurs et info en tension sur ADC.
Moteur droit puis gauche
IP archivée

Curiosus

  • Sr. Member
  • ****
  • Messages: 310
    • Voir le profil
Re : L298N et CSA et CSB
« Réponse #81 le: Mai 08, 2022, 07:40:19 pm »



Qu'un moteur consomme plus qu'un autre c'est possible, car la mécanique droite ou gauche peux varié de quelque mm, donc il faudra prévoir un réglage

Gauche pour haut, et gauche pour bas,  Droite pour haut, et droite pour bas

Sur le moteur droit je vois des valeurs négative, c'est pas normal, il faut remédié à  ça, à  moins que ça soit pour ton réglage.

     A+
IP archivée

stephcache

  • Full Member
  • ***
  • Messages: 122
    • Voir le profil
Re : L298N et CSA et CSB
« Réponse #82 le: Mai 08, 2022, 07:46:23 pm »

Oui j'ai vu la valeur négative mais je sais pas d’où va viens. j'ai fait plusieurs mesure et sa sait produit d'une fois. Par conte je vois pas comment évité ça ?
IP archivée

stephcache

  • Full Member
  • ***
  • Messages: 122
    • Voir le profil
Re : L298N et CSA et CSB
« Réponse #83 le: Juin 05, 2022, 02:47:33 pm »

Bonjour, j'ai une question optionnelle. le module ACS712, on peut faire passé du 230 V ?
IP archivée

Curiosus

  • Sr. Member
  • ****
  • Messages: 310
    • Voir le profil
Re : L298N et CSA et CSB
« Réponse #84 le: Novembre 04, 2022, 06:53:01 pm »

Bonjour,

Autant pour moi, j'ai corrigé

Merci

   A+
IP archivée