Je cherche comment connecter la carte arduino a l'ordinateur, l'alimenter ainsi que de transférer le programme sur le logiciel, si il y avait un tuto ce serait génial.
Mes programmes sont faits pour contrôler les moteurs à courant continu et servomoteur, que prendre comme carte, Arduino ono ou Arduino Mega?
Le choix entre UNO et MEGA se fait surtout par rapport à tes besoins en connexions. Par exemple la mega c'est 54 pin digitaux tandis que la UNO en a 14. La mega a également plus de mémoire, 4 port série hardware (1 seul pour la UNO) et j'en passe. Mais forcement plus chère, le double à peu près
Merci, je vais choisir la carte arduino uno. Mais existe t-il des tutoriels pour transférer un programme vers la carte et alimenter la carte car j'ai deux erreurs au cours du téléchargement.
edwinre:
Merci, je vais choisir la carte arduino uno. Mais existe t-il des tutoriels pour transférer un programme vers la carte et alimenter la carte car j'ai deux erreurs au cours du téléchargement.
const byte PIN_VITESSE = 3; // Broche de contrôle du moteur par PWM
int compteur = 0; // on met le compteur a zero
int x = 1; // x est le nombre de recommencement de boucle pour y et z
int y = 12; // y est la vitesse en tour minutes
int z = 300; // z est le temps de marche du moteur pour y
// Fonction d'initialisation hardware
void setup() {
pinMode(PIN_VITESSE, OUTPUT); // Mise en sortie de la broche connecté au moteur
}
void loop() {
while(compteur < x) {
analogWrite(PIN_VITESSE, y); // Génération d'un signal PWM contrôlant la vitesse du moteur a 300t/mins
delay(z); // le moteur reste allumé 5mins
analogWrite(PIN_VITESSE, 0); // le moteur s'éteint
compteur++; // le compteur fait +1
}
analogWrite(PIN_VITESSE, 0); //quand x
}
et
#include <Servo.h> // librairie arduino pour servomoteur
const int POS_MIN=550; // mise a zero pour un servomoteur position minimale
const int POS_MAX=2330; // position maximale servomoteur
int angle_servo=0; //angle pour position minimale
const int broche_servo=2; //broche selon branchement (2)
const int Voie_0=0; //constante pour passage en analogique
int mesure_brute=0;// résultat brut
float mesuref=0.0;// résultat décimal
Servo mon_servo; // pour le control du servomoteur
void setup() { // debut de la fonction setup()
mon_servo.attach(broche_servo, POS_MIN, POS_MAX); // broche commande servo
pinMode(broche_servo, OUTPUT); //met la broche en sortie
}
void loop(){ // fonction loop() sans fin
// acquisition conversion analogique numérique
//sur broche analogique indiquée - résultat 10bits (0-1023)
mesure_brute=analogRead(Voie_0);
angle_servo=map(mesure_brute,0,1023,0,180); // conversion en angle °
mon_servo.write(angle_servo); // positionne le servo à l'angle voulu
delay (100); // pause entre 2 mesures et modif position servomoteur
}
J'ai deux cartes UNO, ces la première fois que je programme en Arduino et que j'utilise ces cartes.
" stk500_getsync() not in sync resp=0x00 " signifie que la communication entre le PC et l'Arduino se passe pas.
Vérifier dans un premier temps le port COM, le baudrate
Non com1 est est toujours actif.
La carte UNO, je ne la trouve pas dans outils/cartes donc je mets MEGA et je branche ma Mega et toujours mêmes erreurs.
J'avais eu ce problème avec l'ancienne IDE avec les menus en français, corrigé avec la ré-installation de l'IDE version 1.0 (en anglais).
Il est important de configurer dans Tool/Board (Outil/Carte) la carte qu'on utilise (le nom précis et imprimé dessus), "Arduino Uno" est forcément dans cette liste (1er choix en haut).
Christian_R:
"Arduino Uno" est forcément dans cette liste (1er choix en haut).
Lorsque j'ai téléchargé mon IDE, elle n'y était pas.
Je l'ai désinstallé et ait installé la version francisée, elle y est.
Je ne me souviens plus de quelle version j'avais au départ...
Plein d'autres cartes dont l'Arduino UNO sont apparus.
Merci.
Une dernière question, L'iDE me met maintenant que j'ai une erreur de compilation:
#include <Servo.h> // librairie arduino pour servomoteur
const int POS_MIN=550; // mise a zero pour un servomoteur position minimale
const int POS_MAX=2330; // position maximale servomoteur
int angle_servo=0; //angle pour position minimale
const int broche_servo=2; //broche selon branchement (2)
const int Voie_0=0; //constante pour passage en analogique
int mesure_brute=0;// résultat brut
float mesuref=0.0;// résultat décimal
Servo mon_servo; // pour le control du servomoteur
void setup() { // debut de la fonction setup()
mon_servo.attach(broche_servo, POS_MIN, POS_MAX); // broche commande servo
pinMode(broche_servo, OUTPUT); //met la broche en sortie
}
void loop(){ // fonction loop() sans fin
// acquisition conversion analogique numérique
//sur broche analogique indiquée - résultat 10bits (0-1023)
mesure_brute=analogRead(Voie_0);
angle_servo=map(mesure_brute,0,1023,0,180); // conversion en angle °
mon_servo.write(angle_servo); // positionne le servo à l'angle voulu
delay (100); // pause entre 2 mesures et modif position servomoteur
}
Ca compile sans problème sous Arduino 1.0.
Regarder dans Sketch/Import Library si la librairie "servo" est bien présente dans la liste (rangée avec d'autres bibliothèques comme ethernet, sd...)