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 :

Probleme Arduino: Tag RFID


Sujet :

Arduino

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 15
    Par défaut Probleme Arduino: Tag RFID
    Bonjour,
    Mon programme consiste a lire une tag RFID
    Mon probleme est le suivant le Code RFID est 010CCC93B1 et je voudrais que le programme me dise quand c'est le bon code.
    Puis apres le but serait de faire une action si le capteur RFID vois le bon tag


    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
    // RFID reader for Arduino 
    // Wiring version by BARRAGAN <http://people.interaction-ivrea.it/h.barragan> 
    // Modified for Arduino by djmatic
     
     
    int  val = 0; 
    char code[10]; 
    char tag[10] = {'0','1','0','C','C','C','9','3','B','1'};
    String codeRfid = ("010CCC93B1");
    int bytesread = 0; 
     
    void setup() { 
     
    Serial.begin(2400); // RFID reader SOUT pin connected to Serial RX pin at 2400bps 
    pinMode(2,OUTPUT);   // Set digital pin 2 as OUTPUT to connect it to the RFID /ENABLE pin 
    digitalWrite(2, LOW);                  // Activate the RFID reader
    }  
     
     
     void loop() { 
     
      if(Serial.available() > 0) {          // if data available from reader 
        if((val = Serial.read()) == 10) {   // check for header 
          bytesread = 0; 
          while(bytesread<10) {              // read 10 digit code 
            if( Serial.available() > 0) { 
              val = Serial.read(); 
              if((val == 10)||(val == 13)) { // if header or stop bytes before the 10 digit reading 
                break;                       // stop reading 
              } 
              code[bytesread] = val;         // add the digit           
              bytesread++;                   // ready to read next digit  
            } 
          } 
          if(bytesread == 10) {              // if 10 digit read is complete 
            Serial.print("TAG code is: ");   // possibly a good TAG 
            Serial.println(code);            // print the TAG code 
          } 
          bytesread = 0; 
          digitalWrite(2, HIGH);                  // deactivate the RFID reader for a moment so it will not flood
               delay(1500);                       // wait for a bit 
               digitalWrite(2, LOW);                  // Activate the RFID reader
     
         if  
            (codeRfid == "010CCC93B1") 
     
           {
              Serial.println("c'est le bon tag");
          } 
          else{ 
            Serial.println ("c'est pas le bon tag");
          }  
     
        } 
      } 
    } 
     
    // extra stuff
    // digitalWrite(2, HIGH);             // deactivate RFID reader
    Merci d'avance

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

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

    Code c : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    char code[10];
    char tag[10] = {'0','1','0','C','C','C','9','3','B','1'};
     
    // ton code
     
     
    if (strncmp(code, tag, 10)==0)
    {
        printf("ok");
    }

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 15
    Par défaut
    Merci à toi
    Mais est ce que tu pourrais m'expliquer je ne comprend pas trop ce que tu as fait

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

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    J'ai comparé 2 chaînes de caractères code et tag et si elles sont égales j'affiche "ok" sur la console.

    Tu ne l'as pas indiqué dans ton message mais visiblement ton problème est de savoir si le bon code RFID est lu. Après avoir entré les caractères dans ton tableau code, il s'agit de comparer son contenu avec le tableau tag et de dire si c'est le bon tag ou non.

    A la place de
    Code c : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    if   (codeRfid == "010CCC93B1") 
           {
              Serial.println("c'est le bon tag");
          } 
          else{ 
            Serial.println ("c'est pas le bon tag");
          }

    écris
    Code c : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if (strncmp(code, tag, 10)==0)
    {
        Serial.println("c'est le bon tag");
    }      
    else
    { 
            Serial.println ("c'est pas le bon tag");
     }

    Tu peux donc supprimer String codeRfid = ("010CCC93B1"); qui ne sert à rien.

  5. #5
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 15
    Par défaut
    Merci de ton aide ca fonctionne parfaitement

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Probleme de TAGS SpamAssassin
    Par crtx_omar dans le forum Debian
    Réponses: 0
    Dernier message: 28/03/2010, 17h03
  2. probleme de tag library
    Par dark_angel91 dans le forum Struts 2
    Réponses: 0
    Dernier message: 13/12/2009, 16h27
  3. Lecture Tag RFID et C++
    Par Kassar dans le forum C++
    Réponses: 3
    Dernier message: 07/05/2008, 06h36
  4. Réponses: 1
    Dernier message: 27/12/2007, 09h18
  5. [ Struts ] Problème de tag dans ma jsp!
    Par stela86 dans le forum Struts 1
    Réponses: 2
    Dernier message: 19/05/2006, 12h01

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