Contrôler un servomoteur avec une carte Xbee et un potentiometre

Bonjour,

Je suis actuellement en classe de Terminal STI2D, j'ai donc un projet à réaliser pour la fin d'année.

Je travail sur un drone, je dois contrôler une caméra sur un axe j'ai opté pour un servomoteur et un potentiometre pour faire tourner mon servomoteur.

J'ai fais correctement mes simulations sur Proteus il faut à présent que je réalise le câblage ainsi que le programme sur le logiciel Arduino.

Cependant j'ai un problème, c'est que je ne sais pas comment programmer l’émetteur et le récepteur quand je veux compiler sur mes cartes Arduino un message d'erreur s'affiche "avrdude: stk500_getsync(): not in sync: resp=0x00".

[u]Programme d'envoi:[/u]

[u]voici mon programme récepteur:[/u]

Pouvez vous me venir en aide s'il vous plait.

Merci d'avance

Bonjour,

Ton programme est illisible. Indentes le correctement et mets le entre balises de code

Edite ton premier message et mets le code que j'ai effacé entre les balises comme indiqué dans les messages épinglés !!

désolé

éméteur:

#include <Servo.h>

Servo myservo1;

int pot1pin = A0;
int val1;

void setup() 
{ 
  myservo1.attach(9);
  Serial.begin(9600);
  Configuration();
} 
 

void loop() 

{ 

val1 = analogRead(pot1pin); 
Serial.println(val1);
  delay(10); 

}
 
//Configuration du XBEE
void Configuration() {
  Serial.print("+++");
  char thisByte = 0;
  while (thisByte != '\r') {
    if (Serial.available() > 0) {
      thisByte = Serial.read();
    }
  }
  Serial.print("ATRE\r");
  Serial.print("ATMY0\r");
  Serial.print("ATID1111\r");
  Serial.print("ATCN\r");
  delay(100);
}

récéption:

//receiver !
#include <Servo.h>

Servo myservo1;

String inputString = "";
int valeur;

void setup() {
   myservo1.attach(9);
  Serial.begin(9600);     
  setDestination();
}

void loop() {
  if (Serial.available() > 0) {
     char inByte = Serial.read();

   // save only ASCII numeric characters (ASCII 0 - 9):
  if (isDigit(inByte)){
    inputString = inputString + inByte;
  }
   
  // if you get an ASCII newline:
  if (inByte == '\n') {
    // convert the string to a number:
    valeur = inputString.toInt();
    Serial.print("Valeur recu: ");
    Serial.println(valeur);
    inputString = "";
  }
}
}



// Configuration XBEE
void setDestination() {
  Serial.print("+++");
  char thisByte = 0;
  while (thisByte != '\r') {
    if (Serial.available() > 0) {
      thisByte = Serial.read();
    }
  }
  Serial.print("ATRE\r");
  Serial.print("ATMY0\r");
  Serial.print("ATID1111\r");
  Serial.print("ATCN\r");
  delay(100);
}

Lukkas_91: Cependant j'ai un problème, c'est que je ne sais pas comment programmer l’émetteur et le récepteur quand je veux compiler sur mes cartes Arduino un message d'erreur s'affiche "avrdude: stk500_getsync(): not in sync: resp=0x00".

C'est un message qui indique que le transfert vers la carte se passe mal. C'est quoi comme carte ? Est elle bien connectée ? Est ce que tu vois le port série dans la liste des périphériques (si tu es sous windows).

C'est une carte Arduino Uno, elle est bien connectée et elle est bien reconnue il y a COM1 COM2 COM33(ma carte).

Je pense que mon vrai problème c'est les programmes, je ne sais pas comment faire pour que le potentiomètre envoi une valeur à l'autre carte pour qu'ensuite mon servomoteur tourne.

J'ai deux carte Arduino Uno connectés à Tx et Rx pour simuler des cartes Xbee.

Ca n'exclue pas qu'il y ai un problème dans le programme, mais le message que tu cites se produit si le téléversement à un problème. Essaie de téléverser un programme simple comme blink.

J'ai déjà téléversé "blink" sur mes cartes pour vérifier si elles fonctionnent bien, les leds s'allument bien.