Salu a tous
apres une longue absence due a des projet au niveau de l'iut (Space Invader en VHDL) qui m'on pris un temps fou je n'ai pas trop avancer le robot mais je mis suis remis ce weekend.
j'ai reussi (apres de longue heures) a controler un servo moteur via le controleur 16 servo piloter en I2C via la raspberry pi est j'ai codé une petit librairie qui simplifie beaucoup le code je n'ai qu'a rentre d'adresse du circuit cible, le servomoteur que je veux controler ainsi que l'angle voulu.Si vous ete interreser par cette librairie faites le moi savoir je la metterais en ligne
je ferai un petite video des que j'aurai programmer des mouvement au niveau du bras
si vous avez des question, des remarque ??
@++ Flo
- Robot Maker
- → Affichage d'un profil : Messages: flo_geek
Statistiques de la communauté
- Groupe Membres
- Messages 89
- Visites sur le profil 6 954
- Titre Membre occasionnel
- Âge 29 ans
- Date de naissance Novembre 4, 1994
-
Gender
Homme
2
Neutral
Outils utilisateur
Amis
flo_geek n'a pas encore ajouté d'ami.
Messages que j'ai postés
Dans le sujet : Androdroid V2.0
03 février 2013 - 10:03
Dans le sujet : Probleme sur code.
09 décembre 2012 - 01:15
Salut déjà il te manque plein de point virgule ensuite tu a plein de ligne de code hors de ta fonction loop qui sont déclaré dans aucune fonction à partir de // récupération du capteur droit
Essai de réglé ces erreurs tu devrait avoir moins de problème ensuite reposte nous les erreurs de compilation si il y en a encore @++
Essai de réglé ces erreurs tu devrait avoir moins de problème ensuite reposte nous les erreurs de compilation si il y en a encore @++
Dans le sujet : led rgb est arduino
08 décembre 2012 - 10:12
Salu
merci de ton aide mais j'ai reussi a trouver tous seul
voila dans la fonction passage j'ai 2 parametre d'entrés, et dans le code de la fontion je modifie un de ces parametre c'est pour cela que sa ne fonctionnait pas comme je le voulais.
voici le code fini :
maintenant je vais essayer de créer une libraire avec toute ces fonctions voila
si vous avez des question sur mon code hésiter pas />/>
@++ est merci encrore de votre aide />/>
merci de ton aide mais j'ai reussi a trouver tous seul
voila dans la fonction passage j'ai 2 parametre d'entrés, et dans le code de la fontion je modifie un de ces parametre c'est pour cela que sa ne fonctionnait pas comme je le voulais.
voici le code fini :
#define RED 9 //patte rouge #define GREEN 10 // patte verte #define BLEU 11 //patte bleu #define TAB 3 //taille des tableau int rouge[TAB] = {0, 255, 255}; //couleur rouge int blue[TAB] = {255, 255, 0}; //couleur bleu int vert[TAB] = {255, 0, 255}; //couleur verte int noir[TAB] = { 255,255,255}; int iblc = 0; //variable pour les boucle for int icouleur1p[3]; // valeur analogique des led pour la monté en intensiter int ipass[3] = {0, 0, 0}; void led (int iTab[3]) // fonction led qui allume la led avec la couleur decrite par RGB { analogWrite(RED, iTab[0]); //led rouge analogWrite(GREEN, iTab[1]);//led verte analogWrite(BLEU, iTab[2]);//led bleu } void fade (int icouleur1[3]) // monté puis descente en intensiter { led(noir); //led off icouleur1p = {255,255,255}; //valeur de depart de la led soit noir do // faire { if(icouleur1p[0] > icouleur1[0]) //si couleur led rouge > a couleur led rouge voulue { icouleur1p[0] = icouleur1p[0] - 1; // alors faire moins 1 a la led rouge } if(icouleur1p[1] > icouleur1[1]) //si couleur verte > a couleur led verte voulue { icouleur1p[1] = icouleur1p[1] - 1; //alors faire moins 1 a la led verte } if(icouleur1p[2] > icouleur1[2]) //si couleur bleu > a couleur bleu voulue { icouleur1p[2] = icouleur1p[2] - 1; //alors faire moins 1 a les bleu; } led(icouleur1p); // changement de couleur de la led delay(10); //delay de 10 pour la vitesse de transition }while((icouleur1p[0]> icouleur1[0]) || (icouleur1p[1] > icouleur1[1]) || (icouleur1p[2] > icouleur1[2]));//tant que la couleur rouge verte est bleu n'est pas celle voulue /*identique que avant mais la led diminue en intensiter*/ do { if(icouleur1p[0] < 255) { icouleur1p[0] = icouleur1p[0] + 1; } if(icouleur1p[1] < 255) { icouleur1p[1] = icouleur1p[1] + 1; } if(icouleur1p[2] < 255) { icouleur1p[2] = icouleur1p[2] + 1; } led(icouleur1p); delay(10); }while((icouleur1p[0] < 255) || (icouleur1p[1] < 255) || (icouleur1p[2] < 255)); } void pass(int iav[3], int iap[3]) //transition d'une couleur a une autre { ipass[0] = iav[0]; ipass[1] = iav[1]; ipass[2] = iav[2]; led(ipass);//afficher la couleur de depart do //faire { if(ipass[0] > iap[0]) //si val rouge de la led > val rouge de la led voulue { ipass[0]--; // faire -1 a la valeur de la led rouge } else if(ipass[0] < iap[0]) // sinon si val de la led rouge < val de la led voulue { ipass[0]++; //faire +1 a la valeur de la led rouge } if(ipass[1] > iap[1]) //meme chose pour le vert { ipass[1]--; } else if(ipass[1] < iap[1]) { ipass[1]++; } if(ipass[2] > iap[2]) //meme chose pour le bleu { ipass[2]--; } else if(ipass[2] < iap[2]) { ipass[2]++; } delay(10); led(ipass); // afficheur la valeur de la led modifier }while(ipass[0] != iap[0] || ipass[1] != iap[1] || ipass[2] != iap[2]);//tant que les couleur RGB sont diffrente des couleur voulue } void setup() { pinMode(RED, OUTPUT); pinMode(GREEN, OUTPUT); pinMode(BLEU, OUTPUT); } void loop() { pass(rouge, blue); //passage du rouge au bleu }
maintenant je vais essayer de créer une libraire avec toute ces fonctions voila
si vous avez des question sur mon code hésiter pas />/>
@++ est merci encrore de votre aide />/>
Dans le sujet : led rgb est arduino
16 novembre 2012 - 10:40
Voilà le code commenté
mike118 tu a tout à fait raison, cela est mieux pour la personne qui relie le code mais je n'ai toujours pas ce reflex
mike118 tu a tout à fait raison, cela est mieux pour la personne qui relie le code mais je n'ai toujours pas ce reflex
Dans le sujet : led rgb est arduino
15 novembre 2012 - 07:12
Ok d'ac je vais le commenter et le renvoyer
- Robot Maker
- → Affichage d'un profil : Messages: flo_geek
- Privacy Policy