Répondre à la discussion
Page 1 sur 7 12 3 4 5 6 DernièreDernière
Affichage des résultats 1 à 30 sur 186

nunchuck+lcd+arduino



  1. #1
    pseudok

    nunchuck+lcd+arduino


    ------

    je compte rajouter au montage (breadboard avec lcd +port de la nunchuck relié à l'arduino + arduino relié à l'ordi) un servo

    le souci s'est que je ne vois pas comment alimenter ce servo puisque dans la carte arduino le 5V et le gnd sont occupés
    que puis je faire ??
    j'ai déja essayé de l'alimenter par un pile carré et il à surchauffer (le servo)

    de plus sur quelle chiffre des ports digital de l'arduino puis je mettre le fil blanc sachant que le 12, 11 6,5,4,3,2 sont occupés par la lcd

    merci de votre aide
    je reste à votre disposition

    -----

  2. Publicité
  3. #2
    Yoruk

    Re : nunchuck+lcd+arduino

    On reste sur l'autre sujet, svp.
    La robotique, c'est fantastique !

  4. #3
    pseudok

    Re : nunchuck+lcd+arduino

    oui
    je pense que certaines personne pourrais prendre peur et ne pas faire l'effort de me répondre si pour cela elles doivent
    préalablement lire 4 pages d'ou pourquoi je me suis permis de creer un autre post
    je m'occupe maintenant de faire fonctionner 2 servos à l'aide d'une nunchuck sur un montage dans lequel figure une lcd sur la breadbord et les ports de la nunchuck
    relié sur la carte arduino uno
    part contre en se qui concerte le sujet que je traite

    j'obtient bien les informations que je souhaitais sur la nunchuck
    les 2 parties du code dont je posais des questions? sont par consequent inutiles n'est ce pas ??

    et donc j'ai le code me permettant d'afficher les informations de la nunchuck

    maintenant je désire juste rajouter 2 servo au montage (avec la lcd sur la breadbord.....)
    donc comme les port 5V et GND sont occupé par des fils reliant la breadbord

    ou puis je connecter (prealablement car je n'ai que 1 servo à ma disposition ) juste un servo .
    Il faut l'alimenter avec des piles n'est ce pas ??
    n'ayant a ma disposition que 1 pile carée 9v comment puis je faire ??
    (le servo a enormement surchauffé lorsque j'ai utilisé cette pille)


    je reste à votre disposition
    Dernière modification par pseudok ; 29/10/2014 à 15h04.

  5. #4
    Yoruk

    Re : nunchuck+lcd+arduino

    1-Les parties de ton code, j'en sais rien, utilises le minimum dont tu as besoin, et donc vire ce qui ne sert à rien. Tu devrais être capable de déduire ce qui est utile ou non, en fonction de ce qui t'es demandé. Dans une étude, l'idée n'est pas de tenter de mettre des bouts de code trouvés un peu partout pour voir tout ce qui est possible de faire, mais de t'adapter à ce qui est demandé. Je dois afficher des accélérations seulement ? Très bien, je cherche un code permettant de le faire, et j'ajoute uniquement ce dont j'ai besoin.

    2-Un servo (lequel d'ailleurs ?) s'alimente en 5v (à priori). Il te faut un régulateur pour passer du 9 au 5, sinon ça va griller.

    3-Comment est alimenté globalement ton montage ? On en déduira le type de régulateur qui va bien.

    4-Le 5v de la arduino, tout comme le GND, c'est un faux problème... Tu utilises ta breadboard (tu maitrises bien cet outil ?) pour créer une ligne de 5v et de GND sur lesquelles tu vas relier tout ce que tu veux.

    5-Pour piloter des servos, tu as des librairies existantes qui existent. Documente toi sur le site arduino.
    La robotique, c'est fantastique !

  6. A voir en vidéo sur Futura
  7. #5
    pseudok

    Re : nunchuck+lcd+arduino

    si pour toi sur la nunchuck j'ai une ligne de 5v et une ligne de gnd
    pourquoi pas relié le servo sur ces lignes et pas sur une pile
    (ps : pour l'instant j'ai un materiel manquant .je n'ai qu'un seul servo , (le pan and tilt=2 servos reliés) arriveront dans les jours qui suivent )
    (de + selon toi , lorsque j'aurais les 2 servos, il vaut mieux relier les cables noir et rouge sur un boitier de pile ou sur la breadbord )

    voici mon code pour faire fonctionner le servo relié à l'arduino
    puisje l'introduire dans mon code de la lcd?

    #include <Servo.h>;
    #include <Wire.h>;

    // Doit être ajusté en fonction de chaque nunchuck
    #define ZEROX 530
    #define ZEROY 530
    #define ZEROZ 530

    // adresse I2C du nunchuck
    #define WII_NUNCHUK_I2C_ADDRESS 0x52

    // définition d'une variable Servo
    Servo servomoteur;

    // définition d'une variable counter
    int counter;

    // définition d'un tableau de données
    uint8_t data[6];

    void setup()
    {
    // on attache le servomoteur à la pin 11 (PWM)
    servomoteur.attach(11);

    // initialisation du nunchuck
    Wire.begin();

    Wire.beginTransmission(WII_NUN CHUK_I2C_ADDRESS);
    Wire.write(0xF0);
    Wire.write(0x55);
    Wire.endTransmission();

    Wire.beginTransmission(WII_NUN CHUK_I2C_ADDRESS);
    Wire.write(0xFB);
    Wire.write(0x00);
    Wire.endTransmission();
    }


    void loop()
    {
    // on demande 6 octets au nunchuck
    Wire.requestFrom(WII_NUNCHUK_I 2C_ADDRESS, 6);

    counter = 0;
    // tant qu'il y a des données
    while(Wire.available())
    {
    // on récupère les données
    data[counter++] = Wire.read();
    }

    // on réinitialise le nunchuck pour la prochaine demande
    Wire.beginTransmission(WII_NUN CHUK_I2C_ADDRESS);
    Wire.write(0x00);
    Wire.endTransmission();

    if(counter >= 5)
    {
    // on extrait les données
    // dans mon exemple j'utilise uniquement les données d'accélération sur l'axe Y
    double accelX = ((data[2] << 2) + ((data[5] >> 2) & 0x03) - ZEROX);
    double accelY = ((data[3] << 2) + ((data[5] >> 4) & 0x03) - ZEROY);
    double accelZ = ((data[4] << 2) + ((data[5] >> 6) & 0x03) - ZEROZ);

    // on limite la valeur entre -180 et 180
    int value = constrain(accelY, -180, 180);
    // on mappe cette valeur pour le servomoteur soit entre 0 et 180
    value = map(value, -180, 180, 0, 180);
    // on écrit sur le servomoteur la valeur
    servomoteur.write(value);

    // un petit delai pour pas saturer le servomoteur
    delay(100);
    }
    }

  8. #6
    Yoruk

    Re : nunchuck+lcd+arduino

    Je ne sais pas sous quelle tension il faut alimenter la manette. 5v ou 3v3, ou autre, je n'en sais rien.

    Encore une fois, le câblage c'est un faux problème. Tu relies les 5v et les GND des servos entre eux, OK, mais que ce soit sur la breadboard ou sur un fil volant, techniquement le résultat est le même. Tout dépend du coté "pratique" et des risques de court-circuit qu'il peut y avoir.

    Attention, mélanger du code je t'ai déjà expliqué que c'est casse-gu****, ajoute uniquement ce dont tu as besoin à ton code qui marche (ici, les servos). Quel angle doit piloter le servo ? Il à une course limitée n'oublie pas... Son amplitude de déplacements est compatible avec ce que tu veux faire ?
    La robotique, c'est fantastique !

  9. Publicité
  10. #7
    pseudok

    Re : nunchuck+lcd+arduino

    en faite

    moi personnellement j'alimente la manette sur du 3.3V

    d'àpres ce montage
    gnd (manette)------gnd (arduino)
    3.3v (manette)-----3.3V (arduino )
    et les 2 autre port sur A4 A5

    certaines personne disent qu'il faut relié le 3.3 de la manette su le 5 V de l'ardui
    por l'instant je n'ai jamais fait comme ca et sa marche


    puis je relier la le fil noirdu servo sur le gnd de la breadboard
    et le fils rouge sur le 5 v . Sa ne resque pas de griller


    en ce qui concerne le code je sais que celui que j'ai indiqué prend pour l'instant juste en compte l'acceleration
    ( de maniere grossiere , la telecomande bouge suivant un axe preci X Y ou Z et le servo bouge en fonction de cette axe préci )

    j'ai déja testé le code seul avec une ardui + le servo + la manette
    et il semble fonctionner

  11. #8
    pseudok

    Re : nunchuck+lcd+arduino

    en faite


    parbla suite lorsque j'aurais 2 servos

    je ferais prendre par un servo 1 les données d'accéleration suivant un axe préci(exemple Y)
    et par un autre servo les données suiivant un autre axe (exemple X)

    et j'aurais un code de ce genre

    int value = constrain(accelY, -180, 180); (ce sont les valeurs de l'acceleration Y qui seront ecrite sur le servo 1)
    // on mappe cette valeur pour le servomoteur soit entre 0 et 180
    value = map(value, -180, 180, 0, 180);
    // on écrit sur le servomoteur la valeur
    servo1.write(value);


    value = constrain(accelX, -180, 180); (ce st les valeurs de l'acce X prise par le servo 2)
    // on mappe cette valeur pour le servomoteur soit entre 0 et 180
    value = map(value, -180, 180, 0, 180);
    // on écrit sur le servomoteur la valeur
    servo2.write(value);


    pour les valeurs d'angles je pense d'après ce que j'ai écris que c'est -180 à 180
    ce qui selon moi semble cohérent pour 2 servo relié ensemble
    (bien sur il faut faire attention que ce soit conforma à la librairie)
    Dernière modification par pseudok ; 29/10/2014 à 16h09.

  12. #9
    Yoruk

    Re : nunchuck+lcd+arduino

    Très bien, tu peux donc ajouter cela à ta boucle loop(), tandis que dans ta boucle setup() tu définit ton servo (notamment la pin sur lequel il est branché).

    Tu répèteras cela pour ton 2eme servo.
    La robotique, c'est fantastique !

  13. #10
    pseudok

    Re : nunchuck+lcd+arduino

    ok je fais le montage et je te recontacte

  14. #11
    Yoruk

    Re : nunchuck+lcd+arduino

    Si tu n'en as jamais utilisé, je te conseille vraiment de faire fonctionner les exemples fournis avec la arduino pour faire tourner les servos.
    La robotique, c'est fantastique !

  15. #12
    pseudok

    Re : nunchuck+lcd+arduino

    non j'ai déja fais fonctinoner la manette avec 1 seul servo et sa marche

  16. Publicité
  17. #13
    pseudok

    Re : nunchuck+lcd+arduino

    je rencontre un probleme dans le code pour faire fonctionner 1 seul servo je rencontre des problèmes
    il n'est pas validé ce qui est bizarre vur que je l'ai déja utilisé et il marché comme il faut

    la ligne qui pose problème est foncé

    #include <math.h>
    #include "Wire.h"
    #include "WiiChuck.h"
    #include "LiquidCrystal.h"
    #include <Servo.h>;

    LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

    #define MAXANGLE 90
    #define MINANGLE -90
    #define ZEROX 530
    #define ZEROY 530
    #define ZEROZ 530

    #define WII_NUNCHUK_I2C_ADDRESS 0x52

    Servo servomoteur;
    int counter;
    uint8_t data[6];

    WiiChuck chuck = WiiChuck();

    int angleStart, currentAngle;
    int tillerStart = 0;
    double angle;


    void setup() {
    //nunchuck_init();
    lcd.begin(16, 2);

    Serial.begin(115200);
    chuck.begin();
    chuck.update();
    //chuck.calibrateJoy();


    servomoteur.attach(11);
    Wire.begin();

    Wire.beginTransmission(WII_NUN CHUK_I2C_ADDRESS);
    Wire.write(0xF0);
    Wire.write(0x55);
    Wire.endTransmission();

    Wire.beginTransmission(WII_NUN CHUK_I2C_ADDRESS);
    Wire.write(0xFB);
    Wire.write(0x00);
    Wire.endTransmission();




    }


    void loop()
    {
    chuck.update();
    //nunchuk.update();

    // ce q j'ai enlevé

    //nunchuk.update();

    Wire.requestFrom(WII_NUNCHUK_I 2C_ADDRESS, 6);

    counter = 0;

    while(Wire.available())
    data[counter++] = Wire.read();
    }


    Wire.beginTransmission(WII_NUN CHUK_I2C_ADDRESS);
    Wire.write(0x00);
    Wire.endTransmission();

    if(counter >= 5)
    {


    double accelX = ((data[2] << 2) + ((data[5] >> 2) & 0x03) - ZEROX);
    double accelY = ((data[3] << 2) + ((data[5] >> 4) & 0x03) - ZEROY);
    double accelZ = ((data[4] << 2) + ((data[5] >> 6) & 0x03) - ZEROZ);


    int value = constrain(accelY, -180, 180);

    value = map(value, -180, 180, 0, 180);

    servomoteur.write(value);


    delay(100);
    }

    { lcd.setCursor(0, 0);
    lcd.print(chuck.readJoyX());
    lcd.print(' ');
    lcd.print(chuck.readJoyY());
    lcd.print(' ');
    lcd.print(chuck.cPressed()?"c1 ":"c0");
    lcd.print(' ');
    lcd.print(chuck.zPressed()?"z1 ":"z0");
    lcd.print(' ');
    lcd.setCursor(0, 1);
    lcd.print((int)chuck.readAccel X());
    lcd.print(' ');
    lcd.print((int)chuck.readAccel Y());
    lcd.print(' ');
    lcd.print((int)chuck.readAccel Z());
    lcd.print(' ');
    delay(500);
    lcd.clear();
    }


    voila ce qu'on me dit

    sketch_oct29c:75: error: expected constructor, destructor, or type conversion before '.' token
    sketch_oct29c:76: error: expected constructor, destructor, or type conversion before '.' token
    sketch_oct29c:77: error: expected constructor, destructor, or type conversion before '.' token
    sketch_oct29c:79: error: expected unqualified-id before 'if'
    sketch_oct29c:98: error: expected unqualified-id before '{' token

  18. #14
    Yoruk

    Re : nunchuck+lcd+arduino

    Erreur de syntaxe.... Trois lignes plus haut, il manque pas un "{" ?

    Code:
    while(Wire.available())
    La robotique, c'est fantastique !

  19. #15
    pseudok

    Re : nunchuck+lcd+arduino

    voila le code
    il montre {

    varie_fina2.ino: In function 'void loop()':
    varie_fina2:130: error: expected `}' at end of input



    Code PHP:
    #include <math.h>
    #include "Wire.h"
    #include "WiiChuck.h"
    #include "LiquidCrystal.h"
    #include <Servo.h>;
    #include <Wire.h>;


    LiquidCrystal lcd(12115432);

    #define MAXANGLE 90
    #define MINANGLE -90


    // Doit être ajusté en fonction de chaque nunchuck
    #define ZEROX 530  
    #define ZEROY 530
    #define ZEROZ 530

    // adresse I2C du nunchuck
    #define WII_NUNCHUK_I2C_ADDRESS 0x52

    // définition d'une variable Servo
    Servo servomoteur;

    // définition d'une variable counter
    int counter;

    // définition d'un tableau de données
    uint8_t data[6];
    WiiChuck chuck WiiChuck();

    int angleStartcurrentAngle;
    int tillerStart 0;
    double angle;


    void setup() {
      
    //nunchuck_init();
      
    lcd.begin(162);

      
    Serial.begin(115200);
      
    chuck.begin();
      
    chuck.update();
      
    //chuck.calibrateJoy();
      
      
      // on attache le servomoteur à la pin 11 (PWM)
      
    servomoteur.attach(11);

      
    // initialisation du nunchuck
      
    Wire.begin();

      
    Wire.beginTransmission(WII_NUNCHUK_I2C_ADDRESS);
      
    Wire.write(0xF0);
      
    Wire.write(0x55);
      
    Wire.endTransmission();

      
    Wire.beginTransmission(WII_NUNCHUK_I2C_ADDRESS);
      
    Wire.write(0xFB);
      
    Wire.write(0x00);
      
    Wire.endTransmission();



    }


    void loop()

        
    // on demande 6 octets au nunchuck
        
    Wire.requestFrom(WII_NUNCHUK_I2C_ADDRESS6);

        
    counter 0;
        
    // tant qu'il y a des données
        
    while(Wire.available())
        {
          
    // on récupère les données
          
    data[counter++] = Wire.read();
        }

        
    // on réinitialise le nunchuck pour la prochaine demande
        
    Wire.beginTransmission(WII_NUNCHUK_I2C_ADDRESS);
        
    Wire.write(0x00);
        
    Wire.endTransmission();

        if(
    counter >= 5)
        {
          
    // on extrait les données
          // dans mon exemple j'utilise uniquement les données d'accélération sur l'axe Y
          
    double accelX = ((data[2] << 2) + ((data[5] >> 2) & 0x03) - ZEROX);
          
    double accelY = ((data[3] << 2) + ((data[5] >> 4) & 0x03) - ZEROY);
          
    double accelZ = ((data[4] << 2) + ((data[5] >> 6) & 0x03) - ZEROZ);

          
    // on limite la valeur entre -180 et 180
          
    int value constrain(accelY, -180180);
          
    // on mappe cette valeur pour le servomoteur soit entre 0 et 180
          
    value map(value, -1801800180);
          
    // on écrit sur le servomoteur la valeur
          
    servomoteur.write(value);

          
    // un petit delai pour pas saturer le servomoteur
          
      
      
    chuck.update();
    //nunchuk.update();

                    // ce q j'ai enlevé 
       
    //nunchuk.update();
         
         
    lcd.setCursor(00);
         
    lcd.print(chuck.readJoyX());
         
    lcd.print(' ');
         
    lcd.print(chuck.readJoyY());
         
    lcd.print(' ');
         
    lcd.print(chuck.cPressed()?"c1":"c0");
         
    lcd.print(' ');
         
    lcd.print(chuck.zPressed()?"z1":"z0");
         
    lcd.print(' ');
         
    lcd.setCursor(01);
         
    lcd.print((int)chuck.readAccelX()); 
         
    lcd.print(' ');  
         
    lcd.print((int)chuck.readAccelY()); 
         
    lcd.print(' ');  
         
    lcd.print((int)chuck.readAccelZ()); 
         
    lcd.print(' '); 
         
    delay(500);
         
    lcd.clear();


  20. #16
    Yoruk

    Re : nunchuck+lcd+arduino

    ça te saute pas aux yeux qu'il manque un "}" ? (genre à la fin du bloc if(counter >= 5) ) ?
    La robotique, c'est fantastique !

  21. #17
    pseudok

    Re : nunchuck+lcd+arduino

    j'ai trouvé l'erreur c'est le { en trop là counter = 0;

    je vais faire le montage je peux bien brancher le servo sur la breadbord??

    pas de risque de griller quelque chose

  22. #18
    pseudok

    Re : nunchuck+lcd+arduino

    par contre le fil blanc du servo je ne peux pas le brancher dans le 11 car il est pris par la lcd


    je peux le mettre ou 13, 10 9 8 7 ?? est ce que s'est la meme chose

    bien sur faudra modifier legerement le code

  23. Publicité
  24. #19
    Yoruk

    Re : nunchuck+lcd+arduino

    Oui tu peux....

    C'est pas parce que tu travailles sur de la breadboard que rien ne va griller... Un court-circuit, c'est un court-circuit !
    La robotique, c'est fantastique !

  25. #20
    Yoruk

    Re : nunchuck+lcd+arduino

    Citation Envoyé par pseudok Voir le message
    par contre le fil blanc du servo je ne peux pas le brancher dans le 11 car il est pris par la lcd


    je peux le mettre ou 13, 10 9 8 7 ?? est ce que s'est la meme chose

    bien sur faudra modifier legerement le code
    Oui tout à fait, tant que tu met à jour le code. Je ne pense pas qu'il faille une sortie PWM (marquée d'un ~) pour piloter un servo (mais à vérifier dans la doc), donc tout autre sortie digitale devrait fonctionner...
    La robotique, c'est fantastique !

  26. #21
    pseudok

    Re : nunchuck+lcd+arduino

    merci

    oui ca marche

    j'ai mi le fil blanc dans le 13 et les 2 autres dans la breadboard
    donc bouger la manette fait bouger le servo et on voit sur la lcd les valeurs changers

  27. #22
    pseudok

    Re : nunchuck+lcd+arduino

    par contre

    le souci que je rencontre


    le rythme du servo est également très sacadé comment puis je amélioré ca ( on ma parler d'un smoothing)??
    Dernière modification par pseudok ; 29/10/2014 à 17h26.

  28. #23
    Yoruk

    Re : nunchuck+lcd+arduino

    Plutôt que de lire toutes les secondes le valeur et l'appliquer direct au servi, tu peux :
    -lire plusieurs valeurs séparées de XX secondes, faire une moyenne, et l'envoyer au servo
    -faire en sorte que si la différence entre deux valeurs qui se suivent est inférieure à tel seuil, tu ne fais rien.

    Ou, tu demandes à "on" te d'expliquer son lissage.
    La robotique, c'est fantastique !

  29. #24
    pseudok

    Re : nunchuck+lcd+arduino

    comment puis je faire cette moyenne ?

  30. Publicité
  31. #25
    Yoruk

    Re : nunchuck+lcd+arduino

    Bin... En faisant la somme des valeurs, et en divisant par le nombre total de relevés...

    Tu peux utiliser un tableau, par exemple.
    La robotique, c'est fantastique !

  32. #26
    pseudok

    Re : nunchuck+lcd+arduino

    d'accord je vais essayé
    par contre j'ai encore quelquse questions

    1) l'illumination de l'ecran de la lcd tremble est-ce due à un défaut d'alimentation?
    d'ou ma question lorsque j'aurais en ma possession mon 2eme servo soit 2 servo serait t il préferable de les alimenter avec une pile ou depuis les bornes 5V et gnd de la breadboard
    pour informantion l'alimentation de la nunchuck est 3;3V (le 5V possible mais limitant sa durée de vie)

    2)dans mon code j'ai doit valeurs à remplacer

    // Doit être ajusté en fonction de chaque nunchuck
    #define ZEROX 530
    #define ZEROY 530
    #define ZEROZ 530

    selon toi ces valeurs correspondent il à les valeurs initiale de l'accéleration survant l'axe X,Y,Z

    ce qui me fait douter c'est que mes 3 valeurs d'accélerations initiales ne sont pas identique (-195 33 115)

  33. #27
    Yoruk

    Re : nunchuck+lcd+arduino

    1-Peut-être un faux contact, mais un défaut d'alimentation est aussi possible. Tu alimentes l'écran avec quelle tension ? (Si tu le la connais pas, il faut lire la doc de l'écran).

    Je ne pense pas que le régulateur de tension de la arduino soit taillé pour de si grosses consommations de courant (écran, manette, servo...). Je te conseille vraiment de mettre un régulateur externe pour la soulager.
    PS : si la manette est conçue pour du 3v3, il n'y a pas à réfléchir, tu lui donnes du 3v3, point barre. Toute autre tension risque de la griller. Et si tu voulais faire les choses correctement, il faudrait aussi corriger les niveaux des signaux logiques, mais ça c'est autre chose...

    2-Oui, il doit y avoir des valeurs de calibration initiales à régler. Désolé, je n'ai aucune idée de comment procéder...
    La robotique, c'est fantastique !

  34. #28
    pseudok

    Re : nunchuck+lcd+arduino

    peut etre que la luminosité de l'écran tremble car ma résistance variable est mal branchée

    en faite j'ai 5 tous(f g h i j) et lorsque je place la résistance elle prend place sur l'espacement des 5 tous
    donc il n'était pas possaible de placé les 3 fils dans des trou à coté
    voit par toi meme Nom : SAM_0851.JPG
Affichages : 15
Taille : 472,1 Ko

    donc il arrive des fois que la résistance se débrance car dans 2 trous j'ai les bornes de la résistance + 1 fil electrique
    comment puis je la branché autrement car je ne peux pas mettre les fils dans les trous (a b c d e)


    COMMENT METTRE en PLACE UN R2GULATEUR EXTERNE??

  35. #29
    Yoruk

    Re : nunchuck+lcd+arduino

    Ta PJ n'est pas encore visible. Tu peux toujours trouver une breadboard plus grande, enfin il me semble que tu n'as pas grand chose placé dessus.

    Régulation ? Tu peux chercher un peu aussi... http://www.sonelec-musique.com/elect...g_tension.html

    PS : Encore une fois, relis toi et soigne ton orthographe svp, tu es difficile à lire.
    La robotique, c'est fantastique !

  36. #30
    pseudok

    Re : nunchuck+lcd+arduino

    S'est quoi la PJ ?

    ok pour la régulation mais je suis pas sur de pouvoir l'appliquer après cette lecture car je souhaitais connaître le coté pratique
    par contre il est bien possible de remplacer cette "régulation" par un boitier de 4 piles relié au 2 servos ??

    de plus , lorsque j'ecrivais le code je t'ai soumis mes problèmes pour obtenir les valeurs accélérations s'affichant sur l'écran
    en remplacant dans le code les lcd par des Serial
    et allant dans outils > moniteur serie

    car j'obtient ca

    šI¤iAÚAšia!†ŽHHa$ÒÒÉ\’„IaÚ4pÚ Ú0žIpž!0ÚڞšÈÁašIÀ0ž5aš4IžÀÀÐ ÐÒžIÐa24Iš40ÚÈ0a´Ð4Ò440È0´aš IžI0šžžžÉ´4žžÈ4žž!aža4šIž5š42I pšš5a24éIš4ša´žžÉ!4ažÉ!04aš40È ù’ašÉ!ašIš4aš4IšÈa04I`ÉI`š%aš4 IšÉašáašI`š4%ùaI2IžA5È0a´2I4šI ž0IÉ0%

    ??


    voici le code que j'utilise et qui me renvoi n'importe quoi

    #include <math.h>
    #include "Wire.h"
    #include "WiiChuck.h"
    #include "LiquidCrystal.h"

    LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

    #define MAXANGLE 90
    #define MINANGLE -90



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


    void setup() {
    //nunchuck_init();
    lcd.begin(16, 2);

    Serial.begin(115200);
    chuck.begin();
    chuck.update();
    //chuck.calibrateJoy();


    }





    void loop()
    {
    chuck.update();



    Serial.print(chuck.readJoyX()) ;
    Serial.print(' ');
    Serial.print(chuck.readJoyY()) ;
    Serial.print(' ');
    Serial.print(chuck.zPressed()? "z1":"z0");
    Serial.print(' ');
    Serial.print(chuck.cPressed()? "c1":"c0");
    Serial.print(' ');

    Serial.print((int)chuck.readAc celX());
    Serial.print(' ');
    Serial.print((int)chuck.readAc celY());
    Serial.print(' ');
    Serial.print((int)chuck.readAc celZ());
    Serial.print(' ');
    delay(500);

    }

Page 1 sur 7 12 3 4 5 6 DernièreDernière

Discussions similaires

  1. LCD affichant les info (axes X Y Z ) de la nunchuck Wii
    Par pseudok dans le forum Électronique
    Réponses: 0
    Dernier message: 27/10/2014, 12h11
  2. arduino wii nunchuck
    Par pseudok dans le forum Électronique
    Réponses: 5
    Dernier message: 25/10/2014, 01h05
  3. Arduino anti rebond avec arduino
    Par sari12 dans le forum Électronique
    Réponses: 13
    Dernier message: 23/10/2014, 18h04
  4. Communication arduino-arduino avec module Xbee
    Par TPESI22012 dans le forum Électronique
    Réponses: 2
    Dernier message: 23/12/2013, 18h24
  5. Arduino
    Par askico dans le forum Électronique
    Réponses: 1
    Dernier message: 24/01/2012, 22h31
Découvrez nos comparatifs produits sur l'informatique et les technologies.