Aller au contenu


Contenu de Jbot

Il y a 768 élément(s) pour Jbot (recherche limitée depuis 29-mai 13)



#23431 [Présentation] Joffrey

Posté par Jbot sur 16 juin 2010 - 06:03 dans Et si vous vous présentiez?

Bonjour,
Bon, je vais copier la présentation que j'avais fait sur le forum de Caliban :p

Comment vous appelez vous ?
Joffrey

Quel est votre age ?
25 ans

Où habitez vous ?
Paris

Quelle profession exercez vous ?
J'effectue une thèse sur la consommation d'énergie des systèmes embarqués multicoeur. (Donc plus ou moins de l'électronique et du software bas niveau :p)

possédez vous un ou des Robots (si oui, de quel type et lesquels) ?
Oui, un hexapode que vous pouvez voir sur mon site : http://kriegel.joffrey.free.fr/?cat=5
Je m'étais aussi amusé a faire un petit robot roulant a une époque, mais je ne l'utilise plus.

Quelles sont vos passions ?
La robotique, jouer de la basse.

Qu'est ce que la robotique pour vous ?
Une passion depuis 5 ans, lorsque j'ai participé a la coupe de France de robotique avec mon école. Depuis j'essaie, quand le temps me le permet, de faire des robots et tester des programmes.

Comment voyez vous la robotique dans l'avenir ?
Dans l'avenir la robotique occupera une part importante dans la vie. Que ce soit par les robots cuisiniers ou autre choses du genre, ou alors les drones (et surement futur robots) militaires et même l'exploration spatiale passera forcement par des robots évolués qui succèderont au rover.



#33177 [Présentation] Doc Gloumy

Posté par Jbot sur 09 août 2011 - 04:26 dans Et si vous vous présentiez?

sur un ancien pc portable (port //, série et usb de dispo).


:wub: C'est si rare de voir encore des pc avec port série de nos jours !

En tout cas, bienvenu et bonne chance pour ton projet!



#22233 [Processing et Arduino] Bras robotisé!

Posté par Jbot sur 28 décembre 2010 - 12:04 dans Programmation

[quote"MrAlexis44600"] de faire ce qu'il appelle de la cinématique inverse: j'aurais donc 6boutons, 2 par directions dans l'espace(repère x/y/z), et le logiciel recalculerait le angles en fonction des instructions(transformer une instruction de translation du bout du bras en instruction de rotation des articulations du bras). [/quote]

En général c'est cette méthode qui est utilisée, elle permet de n'avoir pas beaucoup de "boutons". Le plus souvent on ne mets pas des boutons + et - mais plutot des champs numérique ou tu viens écrire le X / Y / Z que tu veux directement, ce qui permet de faire des séquencements facilement pour ton bras (genre, va la, attrappe ca, puis reviens ici, pose le, puis va a cet endroit etc...).



#27147 [Maximus] Un empileur de pions !

Posté par Jbot sur 22 mai 2011 - 12:17 dans Robots roulants, chars à chenilles et autres machines sur roues

Non c'est faux, je l'ai fais a 2, Jbot et Jbot, les deux connectés sur le forum :p



#27109 [Maximus] Un empileur de pions !

Posté par Jbot sur 30 mars 2011 - 09:45 dans Robots roulants, chars à chenilles et autres machines sur roues

Le roi fait au grand maximum 160mm de large, alors que les robots adverse font largement plus. Donc j'essaierais de différencier par rapport à la largeur. C'est sur que c'est pas optimal mais je n'ai vraiment pas les ressources temporelle pour créer une balise de repérage de l'adversaire :(
Au pire si ca rate j'éviterais un roi, c'est tjrs mieux que de foncer sur un adversaire ^^



#27045 [Maximus] Un empileur de pions !

Posté par Jbot sur 12 janvier 2011 - 02:17 dans Robots roulants, chars à chenilles et autres machines sur roues

Oui je pense que je vais faire un bloc en une piece d'alu pliée pour faire le dessous et les deux cotés du robot. Du coup ca devrait etre un peu mieux. Je vais voir ca cette semaine ou la semaine prochaine.

Je vais aussi refaire la pince je pense.

Toute idée est d'ailleurs la bienvenue :D



#27035 [Maximus] Un empileur de pions !

Posté par Jbot sur 16 décembre 2010 - 09:53 dans Robots roulants, chars à chenilles et autres machines sur roues

Il compte assez bien pour savoir à chaque instant ou il est (avec 1mm de précision en gros), et l'endroit ou se trouvent les cases est connu. Donc il calcul la distance la plus proche entre sa position et toutes les cases bleus et il pose sur la plus proche.

C'est d'ailleurs grace au fait qu'il connaisse en permanence sa position que je peux le visualiser sur l'interface graphique.



#27032 [Maximus] Un empileur de pions !

Posté par Jbot sur 15 décembre 2010 - 04:39 dans Robots roulants, chars à chenilles et autres machines sur roues

Sur ebay :D
C'est beaucoup moins cher meme si ce n'est que les version 2009. (moitier prix)



#27127 [Maximus] Un empileur de pions !

Posté par Jbot sur 18 avril 2011 - 01:47 dans Robots roulants, chars à chenilles et autres machines sur roues

Le terme autonome veut juste dire qu'aucun etre humain ne pilote le robot. Aprés tu peux meme mettre un GPS dessus si tu veux (tu t'aideras des satéllites du coup) il n'en restera pas moins autonome.

Mais en effet on a le droit de créer des balises et de faire de la triangulation.

Je verrais pour le poster si je rajoute des trucs, pour moi ca sera que en francais vu que je ne pense pas pouvoir participer à la coupe d'europe avec mon niveau.



#27105 [Maximus] Un empileur de pions !

Posté par Jbot sur 30 mars 2011 - 08:06 dans Robots roulants, chars à chenilles et autres machines sur roues

Un petit test d'évitement.



Malheuresement ça introduit une trés grosse erreur d'estimation de position, surement due au mauvais alignement entre les roues codeuses et les roues motrice... Il va falloir regarder la méca de plus prés...



#27176 [Maximus] Un empileur de pions !

Posté par Jbot sur 04 juin 2011 - 07:21 dans Robots roulants, chars à chenilles et autres machines sur roues

Gros échec en 8eme de finale... J'ai perdu a cause d'un problème mécanique... Mon support de balise s'est cassé du coup paf pénalité car l'adversaire ne pouvait plus me détecter.
Tant pis, je ferais mieux l'année prochaine !



#27051 [Maximus] Un empileur de pions !

Posté par Jbot sur 06 mars 2011 - 11:50 dans Robots roulants, chars à chenilles et autres machines sur roues

Bon, après une petite aprem à installer l'électronique, j'ai pu avancer un peu.

Image IPB

Image IPB



C'est un bon gros tas de cable mais bon c'est ça qu'on aime ! :D



J'avais déjà mis une p'tite image sur les asservissements que je fais sur ce robot mais je vais reprendre ici ;)

Image IPB



Comme on peut le voir, il y a un double asservissement:

- A droite : un PID en vitesse pour chaque moteur qui est fait par la carte RoboClaw

- A gauche : un asservissement polaire PD fait par une arduino



L'asservissement polaire consiste à asservir l'angle et la distance du robot.

En fait on asservit 2 moteurs virtuel, un qui représente la distance ( = (distance_gauche + distance_droite) / 2 ) et un qui représente l'angle ( = distance_droite - distance_gauche).

Aprés ça reste des PID et PD basique donc il faut régler les gains et c'est chiant :p



Lien d'une petite vidéo de test faite ce soir ;)



Bon, pour ce qui est de l'estimation de position c'est pas encore ça, je cherche pourquoi c'est si peu précis :s



Une grande partie de la théorie peut etre trouvé ici : Lien



#27053 [Maximus] Un empileur de pions !

Posté par Jbot sur 07 mars 2011 - 08:42 dans Robots roulants, chars à chenilles et autres machines sur roues

Je fais tout tout seul sauf les pièces en métal, je me suis fait aider par un ami la. J'ai fais les plans et après on a fait les pièces. Sinon, non je ne fais pas parti d'un club de robotique, j'aime bien avoir mon robot à moi :p

Et oui je vais aller à Eurobot (la coupe de France uniquement), je suis déjà inscrit.

J'ai une nouvelle vidéo mais ma connexion internet chez moi est trop pourri, je l'uplaoderais demain au boulot :D



#27098 [Maximus] Un empileur de pions !

Posté par Jbot sur 28 mars 2011 - 12:24 dans Robots roulants, chars à chenilles et autres machines sur roues

Sauf que j'avais rien à lui dire à ce pauvre petit :D

Bon, dimanche soir, j'ai ajouté une ptite fonctionnalité au robot.
J'ai ajouté 2 capteurs de contact sur ses "fesses" pour qu'il puisse se positionner automatiquement dans sa zone de départ.

Du coup lorsqu'il démarre, il se cale contre un mur pour initialiser sa valeur en Y, puis se tourne et se cale contre un deuxieme mur (a la perpendiculaire du premier) pour initialiser son X et théta.

delta_motor.max_speed = 12000;
alpha_motor.max_speed = 5000;
// go back to touch the wall
set_new_command(&bot_command_delta, -1000);

while( (digitalRead(LEFT_REAR_SENSOR) == 0) || (digitalRead(RIGHT_REAR_SENSOR) == 0) ) {
delay(100);

}
// Set the Y position and theta
my_robot->theta = PI/2;
my_robot->pos_Y = DISTANCE_REAR_WHEELS;
my_robot->pos_X = 0;

delay(100);
// Stop the motors
set_new_command(&bot_command_alpha, 0);
set_new_command(&bot_command_delta, 0);
// Go forward, turn, and go bachward to touch the other wall
set_new_command(&bot_command_delta, 150);
delay(2000);
set_new_command(&bot_command_alpha, (color * PI/2 * RAD2DEG));
delay(4000);
set_new_command(&bot_command_delta, -1000);

while( (digitalRead(LEFT_REAR_SENSOR) == 0) || (digitalRead(RIGHT_REAR_SENSOR) == 0) ) {
delay(100);

}

// Set the X and theta values
my_robot->pos_X = color * (1500 - DISTANCE_REAR_WHEELS);
if(color == 1) {
my_robot->theta = PI;
}
else {
my_robot->theta = 0;
}

delay(100);

// Stop the motors
set_new_command(&bot_command_alpha, 0);
set_new_command(&bot_command_delta, 0);

delay(1000);
// Go in the middle of the starting area
set_new_command(&bot_command_delta, 100);

delay(2000);
// Set the speed to the maximum
delta_motor.max_speed = DELTA_MAX_SPEED;
alpha_motor.max_speed = ALPHA_MAX_SPEED;[/code]

J'ferais ptete une vidéo, même si ça n'a pas forcement d'interet :p



#27054 [Maximus] Un empileur de pions !

Posté par Jbot sur 08 mars 2011 - 09:37 dans Robots roulants, chars à chenilles et autres machines sur roues

Voici une petite vidéo de l'estimation de position. ca marche plutot pas mal. Je lui fais faire des rectangle pour voir si il sait toujours ou il est, et il n'y a pas trop de déviation.



La vidéo de démo.



Bon, c'est reparti pour une semaine de boulot :'(



#27107 [Maximus] Un empileur de pions !

Posté par Jbot sur 30 mars 2011 - 08:53 dans Robots roulants, chars à chenilles et autres machines sur roues

Pour différencier l'adversaire et un pion je vais mettre des capteurs en hauteur je pense. Et sinon oui je vais éviter les pions qui sont deja sur mes cases. La pour l'instant c'etait juste pour faire un test donc j'évitais tout ce qui passe :p



#27062 [Maximus] Un empileur de pions !

Posté par Jbot sur 17 mars 2011 - 11:19 dans Robots roulants, chars à chenilles et autres machines sur roues

Bon, j'ai un peu fait joujou avec le robot pour voir si en "conditions réelles" il arrive à attrapper un pion et le mettre ou il faut puis continuer sa route.
Il arrive bien a detecter le pion et a le poser ou il faut, par contre aprés il passe son temps a "re detecter" le meme pion. J'ai donc cherché une solution pour l'empecher de faire ça. Du coup, j'ai cherché comment savoir si pour aller a son prochain "waypoint", le pion n'est pas en travers de son chemin. Dit mathématiquement : Le segment (trajectoire) coupe t il le cercle (pion) ?

Aprés quelques recherches sur internet (bah oui j'ai pas fait de trigo depuis des années moi :D) j'ai trouvé que ca se resumais en gros à la résolution d'une équation du second degrés.
Les étapes sont donc :
Equation parametrique de la droite:
x = x0 + t*dx avec dx=x1-x0
y = y0 + t*dy avec dy=y1-y0

Equation du cercle:
(x-xc)^2 + (y-yc)^2 = R^2

substitution:
(t*dx+Ox)^2 + (t*dy+Oy)^2 = R^2 avec Ox=x0-xc et Oy=y0-yc

ce qui nous donne l'équation du second degré:

A*t^2 + B*t + C = 0

avec
A=dx^2+dy^2
B=2*(dx.Ox+dy.Oy)
C= Ox^2+Oy^2-R^2

Le but est de chercher si Delta est positif (il y a intersection) ou negatif.
sachant que delta = B^2 - 4*A*C

J'ai donc fait une ptite fonction C sur l'arduino mais je ne suis pas bien sur que ça marche :
char trajectory_intersection_pawn(struct Point *start, struct Point *end, struct Point *center, int radius)
{
char result = 0;
int delta = 0;

delta = pow(2*( (end->x-start->x)*(start->x-center->x) + (end->y-start->y)*(start->y-center->y) ),2) - 4*(pow(end->x-start->x, 2) + pow(end->y-start->y, 2))*(pow((start->x-center->x), 2)+pow((start->y-center->y),2)-pow(radius,2));
if( delta >= 0)
result = 1;

return result;
}[/code]

Donc si quelqu'un a une idée plus simple, ou dont il est sur que ca fonctionne, je suis prenneur :p

Au passage, ça a fait apparaitre un bug que je n'avais pas remarqué encore. Lorsque le robot dépose un pion et recule, il ne recule pas de la bonne distance, la commande suivante est exécutée beaucoup trop tot, il faut que j'investigue la dessus :D

Le robot est en remaniement mécanique aujourd'hui et demain donc je ferais des tests ce week-end ! (Normalement il aura sont toit et une plaque à l'arriere).

Voila, c'etait le racontage de vie de la journée :p



#27113 [Maximus] Un empileur de pions !

Posté par Jbot sur 11 avril 2011 - 01:28 dans Robots roulants, chars à chenilles et autres machines sur roues

Une ptite photo de Maximus sur un vrai terrain en train de porter un pion et un roi :D



Image IPB



#27070 [Maximus] Un empileur de pions !

Posté par Jbot sur 21 mars 2011 - 07:02 dans Robots roulants, chars à chenilles et autres machines sur roues

Y avait pas particulièrement de problème, a part qu'il fallait faire une tranchée dans la plaque avant pour pouvoir faire passer la courroie quand on monte le panneau donc ca me plaisait pas :p

Le connecteur sert en effet a faire passer les signaux d'un coté a l'autre de l'alu, et de pouvoir déconnecter l'elec a l'arrière avec seulement un connecteur (et pas tout débrancher un par un pour tout remettre par la suite).

Bon, ca commence à marchouiller, j'vais ptete faire une vidéo ce soir :p



#27136 [Maximus] Un empileur de pions !

Posté par Jbot sur 02 mai 2011 - 07:43 dans Robots roulants, chars à chenilles et autres machines sur roues

C'est un protocole série, donc ca te lit ce qu'il y a écrit sur le code barre, par exemple dans mon cas, ca me renvoi "KING" ou "QUEEN". Après il suffit d'associer une action différente pour chaque chaine de caractère par exemple, ou tu interprète comme tu veux.



#27072 [Maximus] Un empileur de pions !

Posté par Jbot sur 21 mars 2011 - 08:52 dans Robots roulants, chars à chenilles et autres machines sur roues

Bon je viens de comprendre d'ou viens "un" probleme... Il y a apparemment des parasites sur mon lien série entre les deux arduinos (pourtant ils sont a 5cm l'un de l'autre...). Du coup le 2eme arduino recoit de temps en temps des mauvaises commandes (genre au lieu d'aller a (X,Y) il va a (X, 8000) ) -_-

J'investigue pour trouver une solution :s


Edit :
Exemple qui vient de m'arriver :

Le master envoie :
Go to :-1100 192
Go to :-700 350
Go to :-700 700
Go to :-700 1600
Go to :-350 700

Le slave recoit :
goto_xy -1100.00 187.10
goto_xy -700.00 350.00
goto_xy -700.00 700.00
goto_xy -700.00 1600.00
goto_xy -350.00 -5443.90



#27170 [Maximus] Un empileur de pions !

Posté par Jbot sur 03 juin 2011 - 08:47 dans Robots roulants, chars à chenilles et autres machines sur roues

14eme ce soir !
Il ne reste plus qu'a prier pour demain matin ;)

Merci de votre soutient :D



#27073 [Maximus] Un empileur de pions !

Posté par Jbot sur 21 mars 2011 - 10:44 dans Robots roulants, chars à chenilles et autres machines sur roues

Bon, ben je ne trouve pas de solution pour le moment. J'ai essayé d'entortillonner les câbles série avec une masse, ca ne change rien, puis j'ai essayé de mettre un "caisson" en métal autour des moteurs et ca ne change rien non plus (je pensais que les parasites viendraient de la).

Du coup la je vais essayer de mettre le code des deux cartes sur une seule... Le problème c'est que j'ai peur de rater des interruptions des odomètres du coup. On verra bien.

Si quelqu'un a une idée je suis preneur :p



#27180 [Maximus] Un empileur de pions !

Posté par Jbot sur 06 juin 2011 - 04:09 dans Robots roulants, chars à chenilles et autres machines sur roues

Petit ajout de derniere minute :

Le 25 et 26 JUIN se déroulera la coupe d'Ile de France.

Bien évidement une grande partie des meilleurs robots y participeront !
J'y participerais aussi donc si vous voulez voir Maximus en live (bon faut que je répare le truc qui a cassé pendant le match), c'est la qu'il faudra etre car aprés il risque de finir au cimetiere des robots :p


l'Institut des Sciences et Techniques des Yvelines les 25 et 26 juin 2011.
63 Boulevard Roger Salengro, 78 711 Mantes la Ville.



#27078 [Maximus] Un empileur de pions !

Posté par Jbot sur 22 mars 2011 - 01:25 dans Robots roulants, chars à chenilles et autres machines sur roues

Merci de vos conseils ^^

Je vais voir ce que je peux faire ce soir (je vais deja essayer de relier la carosserie et le GND electrique).

J'ai pas de cable blindé sous la main donc je vais faire sans pour l'instant. J'essaierais aussi de changer le port de l'uart (ca vient ptete de la on ne sait jamais).



Je vais aussi essayer en suivant un peu l'idée de Myke, etant donné que je transmets des nombre en ascii (de 0 a 9 donc en hexa ca représente de Ox30 a 0x39) je vais "filtrer" les valeurs que je recois avec un (& 0x3F) et un ( | 0x30) ce qui permettra deja de s'assurer d'enlever les erreurs éventuelles sur les 4 bits de poids fort. Mais bon c'est sur que ca supprimera pas toutes les erreurs..





Pour Esprit qui réclamait une vidéo, voila un ptit test que j'ai fais :

Une vidéo.