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 :

Problème communication XBEE-Arduino


Sujet :

Arduino

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2016
    Messages : 2
    Par défaut Problème communication XBEE-Arduino
    Bonjour,
    Dans le cadre d'un projet étudiant, j'ai eu à réaliser un système domotique sans fils fonctionnant avec un capteur relié à un arduino lequel transmettant des information via un module XBEE.
    Mon problème est que je n'arrive pas à communiquer avec le module XBEE malgré mes efforts et mes recherches sur le sujet.
    Je ne reçoit aucune confirmation lors de la phase de configuration, or un message "ok" devrait être reçu.
    Je réalise la configuration directement dans le code arduino, sans passer par XCTU (je n'ai pas le matériel permettant un branchement direct sur un pc), mais je ne pense pas que ça puisse poser soucis.
    J'utilise la librairie "softwareSerial" pour émuler un second port série, lequel sert à communiquer avec le module XBEE, le premier étant pris par le port USB relié au PC.
    Matériel:
    Arduino UNO
    Module XBEE 2
    Shield xbee-arduino

    Code:
    Code c++ : 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
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
     
    #include <Adafruit_Sensor.h>
    #include <Adafruit_BMP183.h>
    #include <SoftwareSerial.h>
     
     
     
    #define BMP183_CLK  13
    #define BMP183_SDO  12  // AKA MISO
    #define BMP183_SDI  11  // AKA MOSI
    #define BMP183_CS   10
     
    #define SP2_RX 2
    #define SP2_TX 3
     
    SoftwareSerial xbee(SP2_RX, SP2_TX); 
     
    Adafruit_BMP183 bmp = Adafruit_BMP183(BMP183_CLK, BMP183_SDO, BMP183_SDI, BMP183_CS);
     
     
    float temperature;
    float pressure;
    //utiliser des var volatiles pour les infos à récup par xbee
     
    void setup(void) {
      Serial.begin(9600);
     Serial.println("BMP183 Pressure Sensor Test"); Serial.println("");
     
      /* Initialise the sensor */
      if(!bmp.begin())
      {
        /* There was a problem detecting the BMP183 ... check your connections */
        Serial.print("Ooops, no BMP183 detected ... Check your wiring!");
        while(1);
      }
      else
        Serial.print("BMP connected");
      setDestination();
    }
     
    void loop() {
     getTemp();
     //gerer ici le "compteur" pour le xbee
    //fonction du xbee
    //Xbee();
    delay(300);
    }
     
     
     
     
     
    //functions area
    void getTemp()
    {
     
     Serial.print("Pressure:    ");
        pressure = bmp.getPressure();
        Serial.print(pressure / 100);
        Serial.println(" millibar (hPa)");
     
        temperature = bmp.getTemperature();
        Serial.print("Temperature: ");
        Serial.print(temperature);
        Serial.println(" C");
     
     
    }
     
    void setDestination(){
      xbee.begin(9600);
       xbee.print("+++");
       char thisByte =0;
       while(thisByte != '\r')
       {
         if(xbee.available()>0)
         {
           thisByte =xbee.read();
           Serial.println(thisByte);
         }
       }
       xbee.print("ATRE\r");
       xbee.print("ATDL12\r"); //  xbee destinator number is 12, could be modify
       xbee.print("ATMY10\r"); //this xbee number is 10, could be modify
       xbee.print("ATID1111\r"); // Personal Area Network ID, both emettor and destinator should have the same
       xbee.print("ATCN\r");
    }

    EN vous remerciant d'avance de l'attention porté à mon problème

  2. #2
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    13 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 13 196
    Billets dans le blog
    47
    Par défaut
    Salut,

    Tu pourrais tester ta connexion avec un programme plus simple. Tu as un programme tout fait dans l'IDE Arduino pour taper tes commandes de configuration et voir le retour. Il se trouve dans les exemples de la bibliothèque SoftwareSerial (SoftwareSerialExample).
    Adapte ce programme avant de le téléverser (Rx, Tx, Nbre bauds...). Ouvre le terminal Série et envoie la commande '+++', tu verras bien si le module retourne un OK.

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2016
    Messages : 2
    Par défaut
    D'accord, je teste ça dans l'après-midi et je reviens avec les résultats.
    Merci de ta réponse rapide !

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

Discussions similaires

  1. Problème communication Excel-Access
    Par apriliaman dans le forum VBA Access
    Réponses: 2
    Dernier message: 12/06/2008, 21h33
  2. Problème communication sockets serveur mutli-client
    Par muad'dib dans le forum Réseau
    Réponses: 5
    Dernier message: 17/05/2007, 02h21
  3. Réponses: 5
    Dernier message: 29/03/2007, 22h26
  4. Problème communication flash-php
    Par pascalghost dans le forum Flash
    Réponses: 3
    Dernier message: 01/02/2007, 22h45
  5. [ServerSocket]Problème communication client-serveur udp sur linux
    Par gdecrouez dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 29/09/2006, 14h59

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