Robotique-Projet
Bonjour et bienvenu sur le forum ROBOTIQUE-PROJET

Merci de nous rejoindre, pour avoir accès aux forum en entier,

il suffis juste de s'inscrire sa prends 2 minutes, et bien sur de faire sa

présentation, au plaisir de se croisé sur le forum.

Hésité pas a passez me voir sur ma chaîne Twitch pour plus de contenue https://www.twitch.tv/azary_darkbest
Robotique-Projet
Bonjour et bienvenu sur le forum ROBOTIQUE-PROJET

Merci de nous rejoindre, pour avoir accès aux forum en entier,

il suffis juste de s'inscrire sa prends 2 minutes, et bien sur de faire sa

présentation, au plaisir de se croisé sur le forum.

Hésité pas a passez me voir sur ma chaîne Twitch pour plus de contenue https://www.twitch.tv/azary_darkbest
Robotique-Projet

Forum sur la Robotique & Informatique & Programmation

REJOIGNEZ MA CHAÎNE TWITCH NE MANQUEZ RIEN DE MES GAMME PLAYER
AFIN DE ME SOUTENIR POUR L'AFFILIATION.


Nos partenaires



Rejoignez Notre Discord Les amies.

Vous me retrouverez sur le pseudo ๖̶̶̶ۣۣۜζ͜͡Dark Best

-21%
Le deal à ne pas rater :
LEGO® Icons 10329 Les Plantes Miniatures, Collection Botanique
39.59 € 49.99 €
Voir le deal

Vous n'êtes pas connecté. Connectez-vous ou enregistrez-vous

Voir le sujet précédent Voir le sujet suivant Aller en bas  Message [Page 1 sur 1]

Dark Best

Dark Best
Fondateur
Fondateur
hack de mon RobotSapien ( seb03000 ) Robosapien
Depuis près de 2 ans j'avais acheté un RobotSapien

d'occasion , mais je n'avais pas la télécommande qui aller avec.

Donc je me suis dis , il devrais avoir un système de hacke qui me permettrai de lui faire des

mouvements a partir d'une carte Arduino , j'ai parcouru pas mal de page sur le net , j'ai récolté

pas mal d'information.

Il s'avère que mon hackage fonctionne , de plus je viens de finir sa programmation

( un début très concret, je dois dire ).

Donc je vous mes des photos ( pour vous donnez la preuve que c'est bien mon robot )

est un petit tuto qui vas avec , est bien sur la programmation que j'ai réalisé.


Matériel acheté pour se hacke:

Carte Arduino Uno Rev 3 ICI

Log shield pour Arduino sur carte SD avec horloge RTC et zone de prototypage à pastilles carrées ICI
Le shield pour Arduino sur carte SD n'est pas obligatoire, vous pouvais faire le hack sans ce shield

Une pile carré de 9V ICI

Est des file pour la soudure ou la connexion



Voila la photo:


Redimensionnée à 75% (800 x 600) - Cliquez pour agrandirhack de mon RobotSapien ( seb03000 ) Img_2011





Alors commençons.


Redimensionnée à 75% (800 x 600) - Cliquez pour agrandirhack de mon RobotSapien ( seb03000 ) Img_2012


Redimensionnée à 75% (800 x 1067) - Cliquez pour agrandirhack de mon RobotSapien ( seb03000 ) Img_2013


Redimensionnée à 75% (800 x 600) - Cliquez pour agrandirhack de mon RobotSapien ( seb03000 ) Img_2018


Redimensionnée à 75% (800 x 1067) - Cliquez pour agrandirhack de mon RobotSapien ( seb03000 ) Img_2014

  • Dévisser les 4 vis à l'arrière du Robosapien (2 au niveau des épaules, 2 au niveau des hanches) pour accéder au PCB
  • Repérer le connecteur de la tête situé en haut du PCB (photo ci-dessus)
  • Retirer les différentes nappes de fils du PCB afin de pouvoir démonter ce dernier
  • Repérer le fils noir et blanc sur le « head connector ». Le noir correspond au GND, et le blanc au signal infrarouge (IR-OUT)
  • Retourner le PCB et souder un fil noir au point de soudure
    correspondant au GND puis un fil blanc à celui correspondant au signal
    infrarouge , ( ou dénudé le file noir et le blanc , puis réunissé lé comme je les fait )
  • Souder le « nouveau » fil blanc a la patte centrale d'un petit toggle switch 3-Pin
    puis ajouter un autre fil blanc à l'une des deux autres pattes. Cette
    manipulation permettra de switcher le Robosapien en mode télécommande ou
    Arduino.
  • Percer un trou quelque part sur le robot pour y placer le switch comme sur la photo si dessous.
    J'ai personnellement choisi l'arrière à côté du transducteur (voir photo
    ci-dessous)
  • Remonter le tout !

Redimensionnée à 75% (800 x 600) - Cliquez pour agrandirhack de mon RobotSapien ( seb03000 ) Img_2015

Redimensionnée à 75% (800 x 1067) - Cliquez pour agrandirhack de mon RobotSapien ( seb03000 ) Img_2016

Redimensionnée à 75% (800 x 1067) - Cliquez pour agrandirhack de mon RobotSapien ( seb03000 ) Img_2017


Redimensionnée à 75% (800 x 1067) - Cliquez pour agrandirhack de mon RobotSapien ( seb03000 ) Img_2019

Le petit code sur lequel nous allons nous baser pour simuler les
données normalement envoyées par la télécommande.
Arduino permet donc de simuler la télécommande et communiquer en série
avec le robot. Avant de mettre le tout sous tension, il est important de
positionner le switch en mode manuel avant d'allumer le robot. Une fois ce dernier allumé, il convient alors de mettre le switch sur la position Arduino. Puis, branchez le fil blanc sur le PIN 3 de la carte, le fil noir sur le GND
puis optionnellement une LED sur le pin 13 ou une autre pin que vous voulez. Il faut ensuite uploader le
code ci-dessous sur la carte.

Code:
/*
 * écrire des codes IR Robosapien
 * écrire des données codées comme décrit ici:
 */
int led = 9; //LED bleu De la carte RTC sur pin 9
int LedControl = 13;    // Afficher lorsque le contrôle est sur on
const int irPin = 3;
const int tsDelay = 833; // selon les l'estimations

enum roboCommand {
  // un très petit sous-ensemble de commandes
  turnRight = 0x80,
  rightArmUp = 0x81,
  rightArmOut = 0x82,
  tiltBodyRight = 0x83,
  rightArmDown = 0x84,
  rightArmIn = 0x85,
  walkForward = 0x86,
  walkBackward = 0x87,
  turnLeft = 0x88,
  leftArmUp = 0x89,
  leftArmOut = 0x8A,
  tiltBodyLeft = 0x8B,
  leftArmDown = 0x8C,
  leftArmIn = 0x8D,
  stopMoving = 0x8E,
  RSWakeUp = 0xB1,

 
  // Bruitage
  whistle = 0xCA,
  roar = 0xCE,
  RSRightHandStrike = 0xC0,
  RSRightHandSweep = 0xC1,
  burp = 0xC2,
  RSRightHandStrike2 = 0xC3,
  RSHigh5 = 0xC4,
  RSFart = 0xC7,
  RSLeftHandStrike = 0xC8,
  RSLeftHandSweep = 0xC9,
};


void setup()
{
  pinMode(irPin, OUTPUT);
  digitalWrite(irPin, HIGH);
  pinMode(LedControl,OUTPUT);
  pinMode(led,OUTPUT);
  Serial.begin(9600);
  Serial.println("RobSapien Start"); 
}

void delayTs(unsigned int slices) {
  delayMicroseconds(tsDelay * slices);
}

void writeCommand(int cmd) //  type 'int' non 'robo Command' d'un environnement Arduino
{
 
  digitalWrite(irPin, LOW);
  delayTs(8);
   
  for(char b = 7; b>=0; b--) {
    digitalWrite(irPin, HIGH);
    delayTs( (cmd & 1<<b) ? 4 : 1 );
    digitalWrite(irPin, LOW);
    delayTs(1);       
  }
 
  digitalWrite(irPin, HIGH);
  digitalWrite(LedControl,HIGH);
  digitalWrite(led,HIGH);
}


void loop()
{

  //Fonction du bras gauche

  writeCommand(leftArmUp); // Lève le bras gauche
  delay(5000);
 
  writeCommand(rightArmUp);//Lève le bras droit
  delay(5000);

  writeCommand(leftArmOut); // Tourne l'avants bras gauche
  delay(2000);
 
  writeCommand(rightArmOut);//Tourne l'avants bras droit
  delay(2000);

  writeCommand(leftArmDown);//tir son bras gauche verre le bas
  delay(5000);
 
  writeCommand(rightArmDown);//tir son bras droit verre le bas
  delay(5000);

  writeCommand(leftArmIn);//Ramène son bras gauche verre les hanche
  delay(2000);
 
  writeCommand(rightArmIn);//Ramène son bras droit verre les hanche
  delay(2000);

  writeCommand(tiltBodyLeft);//Le corp du robot ce balance sur la gauche
  delay(5000);

  writeCommand(turnLeft);//Le robot bouge en cercle pour aller sur sa gauche
  delay(5000);
 
  writeCommand(turnRight);//Le robot bouge en cercle pour aller sur sa droite
  delay(5000);

  writeCommand(RSLeftHandStrike);//mouvement du bras gauche posture qui fait montré une chose
  delay(5000);

  writeCommand(RSLeftHandSweep);//mouvement du bras gauche posture qui ramase une chose
  delay(5000);

  writeCommand(tiltBodyRight);//Le corp du robot ce balance sur la droite
  delay(5000);

  writeCommand(RSRightHandSweep);//mouvement du bras droit se balance et se penche
  delay(5000);

  writeCommand(RSHigh5);//mouvement des du bras droit qui salut
  delay(5000);



  //Fonction stop

  writeCommand(stopMoving);//RoboSapiens en mode stop ou repos
  delay(3000);




  // fonction du corp

  writeCommand(walkBackward);//Le robot bouge est recule est fait divers mouvement
  delay(6000);

  writeCommand(walkForward);//Le robot bouge est avance est fait divers mouvement
  delay(6000);


  //Fonction aléatoire

  writeCommand(whistle);//RoboSapiens movement des bras aléatoire plus bruitage
  delay(5000);


  writeCommand(roar);//RoboSapiens movement des bras aléatoire plus bruitage ( même    chose )
  delay(5000);

  writeCommand(burp);//RoboSapiens movement des genoux plus bruitage ( même chose )
  delay(5000);

  writeCommand(RSWakeUp);//RoboSapiens movement des deux bras plus bruitage ( même    chose )
  delay(5000);

  writeCommand(RSRightHandStrike);//RoboSapiens movement du bras droit plus hanche ( même chose )
  delay(5000);

  writeCommand(RSRightHandStrike2);//mouvement des deux bras
  delay(5000);

  writeCommand(RSFart);//mouvement des de bras mode posture qui attend
  delay(5000);
 
}

Voila le code complet ^^
Moi
perso j'ai couper le son de la voix du robot , car sa me prenais la
tête , du coup je vais voir si cela est possible a lui rajouté une voix différente
pour chaque mouvement.
Voila les amies fin du tuto.

https://www.youtube.com/c/DarkBest

Invité

avatar
Invité
Super tuto' encore. Il faudrait que tu fasses des vidéos sur Ulysse, ton RobotSapien,.....

Dark Best

Dark Best
Fondateur
Fondateur
Merci Tuc.

Les vidéo se feront promis.

Pour Ulysse vas falloir attendre encore un peut.

https://www.youtube.com/c/DarkBest

Invité

avatar
Invité
Pas de problème ;)

Dark Best

Dark Best
Fondateur
Fondateur
Re les amies , comme promis voici la vidéo de mon RoboSapiens hacké


https://www.youtube.com/c/DarkBest

Invité

avatar
Invité
Bravo. ;)

celianvdb

celianvdb
Membre
Membre
Ce sujet ne serai pas mieu dans tuto divers et bidouillage , je demande avant de deplacer comeme ^^

Dark Best

Dark Best
Fondateur
Fondateur
OUI donc je vais faire un doublon pour le transféré merci celian de l'avoir signalé.

https://www.youtube.com/c/DarkBest

raideurs

raideurs
Membre
Membre
waaaaa!!! extraordinaire deja que moi je galere pour faire un petit robot, mais la c'est légendaire!  apprend moi oooh grand maitre de l'arduino ;)

Contenu sponsorisé


Voir le sujet précédent Voir le sujet suivant Revenir en haut  Message [Page 1 sur 1]

Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum