Go Down

Topic: Arduino + nunchuck + 2 moteurs (Read 1 time) previous topic - next topic

x3-NicOo

Bonjour, Pourriez-vous me donnez le code qui me permettrai de contrôler 2 moteurs Un peu comme ce robot :

Avec 2 Dc moteurs et une nunchuck.
Je ne me servirai que du joystick.

Merci d'avance  

                                                  x3-NicOo

Luj06

#1
Nov 26, 2010, 01:10 pm Last Edit: Nov 26, 2010, 01:11 pm by julien@pobot.org Reason: 1
Tout est là : articles sur Nunchuck pour contrôle de moteurs

- récupération des informations du Nunchuck
- commande des moteurs

Tu peux même améliorer le code en faisant une conversion des informations du joystick en commandes polaires des deux moteurs (voir l'animation et les explications mathématiques sur cette page : http://www.pobot.org/Telecommande-en-controle-polaire.html)

x3-NicOo


x3-NicOo

J'ai un nouveau problème, je n'arrive pas a récupérer les donnée de la nunchuck par usb, je suis cette methode :: http://www.arduino.cc/playground/Main/WiiChuckClass
Mais quand j'envoi le code suivant :
Code: [Select]
#include <math.h>

#include "Wire.h"
#include "WiiChuck.h"
//#include "nunchuck_funcs.h"

#define MAXANGLE 90
#define MINANGLE -90


WiiChuck chuck = WiiChuck();
int angleStart, currentAngle;
int tillerStart = 0;
double angle;

void setup() {
 //nunchuck_init();
 Serial.begin(115200);
 chuck.begin();
 chuck.update();
 //chuck.calibrateJoy();
}


void loop() {
 delay(20);
 chuck.update();


 Serial.print(chuck.readRoll());
   Serial.print(", ");  
 Serial.print(chuck.readPitch());
   Serial.print(", ");  

   Serial.print((int)chuck.readAccelX());
   Serial.print(", ");  
   Serial.print((int)chuck.readAccelY());
   Serial.print(", ");  

   Serial.print((int)chuck.readAccelZ());

   Serial.println();

}

et que je compile, il me met :
"WiiChuck" does not name a type

Que dois-je faire ? :-/

Luj06

Vérifie que le fichier WiiChuck.h est bien présent dans le répertoire de ton projet Arduino.

x3-NicOo

Par hasard, ne sauriez-vous pas me donner le code  :$
Je ne suis pas doué pour les faires

je voudrai avoir 4 sortie : Exemple :
Joystick vers l'avant : Pin 5 : on
Joystick vers l'arrière : pin 6 : on
joystick vers la gauche : pin 7 : on
joystick vers la droite : pin 8 : on

Luj06

#6
Nov 29, 2010, 12:32 am Last Edit: Nov 29, 2010, 12:34 am by julien@pobot.org Reason: 1
Il faut persévérer. Donner le code ne te servira à rien si tu ne sais pas l'envoyer dans la carte.

Tout est déjà dans l'archive zip qui se trouve sur le site web dont je t'ai envoyé le lien.

Bon, voici :

Code: [Select]

void setup()
{
  pinMode(5,OUTPUT);
  pinMode(6,OUTPUT);
  pinMode(7,OUTPUT);
  pinMode(8,OUTPUT);

  // ... initialisation du WiiChuck comme dans l'exemple

}

void loop()
{

delay(50);
chuck.update();

if (chuck.readJoyX() > 0) {
  digitalWrite(8,HIGH);
  digitalWrite(7,LOW);
} else if (chuck.readJoyX() < 0) {
  digitalWrite(8,LOW);
  digitalWrite(7,HIGH);
} else {
  digitalWrite(8,LOW);
  digitalWrite(7,LOW);
}

if (chuck.readJoyY() > 0) {
  digitalWrite(5,HIGH);
  digitalWrite(6,LOW);
} else if (chuck.readJoyX() < 0) {
  digitalWrite(5,LOW);
  digitalWrite(6,HIGH);
} else {
  digitalWrite(5,LOW);
  digitalWrite(6,LOW);
}

}



Peut-être veux-tu que je t'envoie une carte Arduino déjà programmée ?

x3-NicOo

non non, pour envoyer le code il n'y a pas de soucils.
Merci beaucoup, je vais essayer de faire fonctionner tout sa :)

Jean-François


[edit]Peut-être veux-tu que je t'envoie une carte Arduino déjà programmée ? [/edit]

C'est de l'ironie, ce qu'il entend par là c'est que si tu ne fais pas un minimum d'efforts, tu n'arrivera à rien...   ::)
MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

Luj06

J'ai édité l'article en remplaçant PC2 et PC3 par PORTC2 et PORTC3, les nouveaux noms de variable pour ces deux entrées sur les nouvelles Arduino.

Go Up