Aller au contenu


Photo

Creation d'un hexapode


  • Veuillez vous connecter pour répondre
64 réponses à ce sujet

#1 oron

oron

    Membre

  • Membres
  • 66 messages

Posté 25 juin 2012 - 06:58

Bonjour a tous,

Maintenant que j'ai fait pas présentation. Je vais vous expliquer mon projet.

On va commencer fort (mais j'ai tout mon temps).
aller on commence.....
C'est de creer un hexapod.... Oui gros gros projet. Surtout que j'ai plein d'idée en plus.

Ma premiere etape a été d'acheter une carte de programation (je suis partie sur le modele arduino mega)
Une fois ma carte reçu, j'avais en stock un servomoteur futaba S3003 (pour les connaisseurs)...

J'ai donc parcouru le net et je suis tombé sur un site (Je crois vous avez deja ue a faire a lui, il sera heureux....voici le liens de son blogICI)
J'ai donc regardé une vidéo pour savoir comment faire bouger le servomoteur. Premier test réussi en moins de 10min. (le temps de réécrire le code et bien le commenter,
pour bien tout comprendre, oui moi je pense que en commentant les lignes cela permet d'apprendre les fonction et autres....c'est une maniere d'apprendre).

Je commence donc a modifié les valeurs (valeur de depart et mouvement de tel angle a tel angle:

Fiere et contant de voir que j'avais bien compris tout le code.
Je me suis commander 18 servomoteurs (sa fait beaucoup quand meme).

Donc ma premiere etape et de pouvoir faire bouger le premiere étage de l'hexapod.(On va commencer gentillement)....
A quoi correspond pour moi le premier étage de mon hexapod. Il s'agit en faite de la rotation de la patte de l'hexapod vue de dessus.

Donc six servomoteurs.....
Je pense que je suis bien les étapes de ma constrction.

J'ai donc fait mon montage sur une breadbord. j'ai relié les fils de couleur rouge ensemble et noir ensemble sur la breadbord. idem pour le fils signal chaque fils signal relié
au sortie pwm de la carte arduino......Un petit accu pour alimenter les servomoteurs.

Me reste plus qu'a faire la progamation.
C'est la ou je seche un peu...
Je sais donc faire bouger un servomoteur de angleX a angleX.
Maintenant il faudrait donc que deux ou trois servomoteursfasse le meme mouvement.
Une fois le mouvement terminer cela a pour action de faire bouger les deux ou trois autres servomoteurs.


Merci de mon aide, j'espere avoir été claire, c'est toujours difficile de dire ce que l'on veut faire.
Alors si vous avez des questions, j'y répondrai.
Je vous mettrait egalement des photos. de la carte, montage, et projet.

A +

#2 oron

oron

    Membre

  • Membres
  • 66 messages

Posté 25 juin 2012 - 07:40

On commence avec quelques photos.

Commection des sorties pwm sur la carte arduino mega
J'ai choisi de prendre les sorties de 2 à 7.
IMG_0326.JPG

On continue On relie maintenent les entrées signals au cable pwm de la carte arduino. Attention a pas se trompé de fil.
Oui je sais il y a deux cable qui sont pas de la meme couleur ne vous en accupé pas j'avais plus de jaune... Je l'ai changerai après.

IMG_0329.JPG

Maintenant il me reste a alimenter les servomoteurs. Oui la carte ne fournira pas assez de puissance. (c'est ceux que j'ai compris).

Je vous mettrait des photos de mon montage je ne souhaiterai pas faire d'erreur, c'est pour ca que je vais vous montrer mon projet au fur et a meusure.
En espérant avoir de l'aide de la part de la communautée..
++

#3 Microrupteurman

Microrupteurman

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 2 210 messages
  • Gender:Male
  • Location:Aquitaine,Gironde
  • Interests:Tout

Posté 25 juin 2012 - 07:53

Salut, pour faire bouger plusieurs servo en meme temps il te faut un shield ssc32 .

 
Page Facebook : https://www.facebook...appartelier2.0/
Page Twitter :  https://twitter.com/2Appartelier (bateau seulement)
Boutique Robot-Maker : https://www.robot-ma...er-20/produits/

Besoin d'une impression 3D grand format ? Contactez moi !
 


#4 thermo_nono

thermo_nono

    Membre chevronné

  • Membres
  • PipPipPipPip
  • 825 messages

Posté 25 juin 2012 - 07:58

Super projet !
Tu sembles avoir bien débuté (j'avais peur en lisant que tu n'ai alimenté tous tes servomoteurs à partir de l'Arduino.. mais non, tu as l'air de bien avoir étudié la chose avant de te lancer).
Plus qu'à te souhaiter une bonne continuation.. je ne sais pas si je pourrai t'aider mais je suivrai ce sujet avec engouement. :P

#5 Black Templar

Black Templar

    Membre

  • Membres
  • PipPipPipPipPip
  • 1 430 messages
  • Gender:Male
  • Location:Lille

Posté 25 juin 2012 - 08:00

Salut Oron,

C'est un projet qui à l'air fort sympathique :)


Pourrais-tu nous faire voir le code que tu as déjà écrit pour que l'on sache un peu où tu en es ?

Car je ne vois pas de difficulté majeur à imposer le même mouvement à plusieurs servomoteur.
Je ne comprend donc pas où tu bloques

myServo1.write(val)
myServo2.write(val)
myServo3.write(val)

Maintenant il me reste a alimenter les servomoteurs. Oui la carte ne fournira pas assez de puissance. (c'est ceux que j'ai compris).

Ce qui influe surtout, c'est le type d'alimentation. Si tu alimente ta carte via le port USB, alors oui il te faut une alimentation externe pour tes moteurs car un port USB ne peut fournir que du 500mA sous 5V.
Par contre, si tu alimentes arduino avec une batterie 12V, alors, tu peux utiliser cette même batterie pour tes moteurs (s'ils fonctionnent en 12V).
Si tu dois alimenter tes moteurs en 5V, il n'est pas conseiller d'utiliser la sortie 5V de l'arduino car c'est la sortie régulée qui alimente directement le microcontroleur de l'arduino. (sortie régulé qui n'autorise d'ailleurs pas un grand courant de sortie... Je n'ai pas la valeur exacte, mais je dirais qu'il est déconseillé de dépasser 500mA aussi...) Donc si un de tes moteurs réclame trop de courant, il y aura une chute de tension, et c'est le reset du microcontroleur assuré.

Je vous mettrait des photos de mon montage je ne souhaiterai pas faire d'erreur,

Si tu as peut pour ton arduino, je te conseil de lire ce lien très instructif ^^ : http://ruggedcircuit...tml/ancp01.html

++
Black Templar

Mon site internet : http://ferdinandpiette.com/


#6 ashira

ashira

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 1 333 messages
  • Gender:Male

Posté 25 juin 2012 - 08:13

Salut oron,
Super comme projet, similaire au mien pour le chassis (quadrupèd pour moi).
j'ai deja commencé à programer une marche (dernier lien sur mon blog).
Pour programmer les servo attends à quelques pièges, comme les valeurs des angles qui sont différents pour chaque servo (parfois + de 10 degrés décart.. trés barbant.).
Si tu veux savoir autre chose n'hésite pas ;)
Bon courage!

#7 oron

oron

    Membre

  • Membres
  • 66 messages

Posté 25 juin 2012 - 08:21

Voici mon code:

#include <Servo.h>

int pos = 0; //position de depart

Servo myservo; //appel du servo myservo

void setup()
{
   myservo.attach(12); //attache du sgnal pwm12
}

Void loop () //boucle
{
for(pos = 60; pos < 120; pos++) // Mvt rot positif de X° à X°
{
  myservo.write(pos);
  delay(15);
}

for(pos = 120; pos >= 60; pos--)
  myservo.write(pos);
  delay(15);
 }
}


Rien de plus simple pour commander un servomoteur. Je tiens a preciser que je debut dans le code arduino, mais
j'ai des facilité je boss dans l'informatique j'ai deja ue a faire a du code donc je pense bien comprendre
et suis motivé a encore mieux comprendre le language arduino.
A vrai dire la je suis bloqué.
Donc si je copie le code pour les 6 servomoteurs en specifiant bien les sorties pwm et tout.
Ils devraient tous bouger ensemble.
Ca me parait logique .
Mais comment faire pour en faire bougé que trois puis trois (avec un shield ou il n'y en a pas besoin).
Je suis un peu perdu enfaite la.
Et merci pour vos encouragements

Et j'irai jeter un coup d'oeil a ton blog ashira.

#8 Black Templar

Black Templar

    Membre

  • Membres
  • PipPipPipPipPip
  • 1 430 messages
  • Gender:Male
  • Location:Lille

Posté 25 juin 2012 - 08:28

et suis motivé a encore mieux comprendre le language arduino.

Le langage Arduino, c'est du C++ avec quelques fonctionnalités en moins.
Mais en réalité, ça ressemble plus au langage C (vu qu'un programme en C est compilable en C++, jusque là, rien de choquant).
Si tu veux apprendre et comprendre comment programmer avec Arduino, je te conseil d'étudier le langage C : http://www.siteduzero.com/tutoriel-3-14189-apprenez-a-programmer-en-c.html
(langage qui te permettra en plus de coder tes propres programmes PC !)


A vrai dire la je suis bloqué.
Donc si je copie le code pour les 6 servomoteurs en specifiant bien les sortie pwm.
[...]
Mais comment faire pour en faire bougé que trois puis trois (avec un shield ou il n'y en a pas besoin).
Je suis un peu perdu enfaite la.


Là, je laisse les pro des servo te répondre !
A part quelques tests sur servomoteur, je n'ai jamais utilisé que des moteurs cc avec arduino.


++
Black Templar

Mon site internet : http://ferdinandpiette.com/


#9 oron

oron

    Membre

  • Membres
  • 66 messages

Posté 25 juin 2012 - 08:30

Je conais tres bien le site du zero, je lai utiliser plusieur.
Il est tres bien fait..

#10 ashira

ashira

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 1 333 messages
  • Gender:Male

Posté 25 juin 2012 - 08:42

Mais comment faire pour en faire bougé que trois puis trois (avec un shield ou il n'y en a pas besoin).

Pour faire ça tu utilises des pauses (delay ou intéruption).

void avant()
{
  
  
  s3.write(145);              //avant2  
  s6.write(75);
  delay(30);
  s5.write(60);
  s1.write(55);
  delay(180);
  s2.write(125);
  s4.write(130);
  delay(pas1);
  
  
  s3.write(110);              //avant1
  s6.write(55);
  delay(30);
  s5.write(110);
  s1.write(130);
  delay(180);
  s4.write(50);
  s2.write(50);
  delay(pas1);
}]

voila un exemple de mon code, je fais bouger mes servos dans l'ordre chronologique avec des pauses pour différencier les mouvements des pattes.

#11 oron

oron

    Membre

  • Membres
  • 66 messages

Posté 25 juin 2012 - 08:49

ok merci, j'y avait pas penser si j'ai bien
compris ton void avant voudrai dire qu'il s'agit des servos avant 2fois 3 servo
s1,s2,s3....s6 = se sont tes servos servomoteurs.
Tu les apelles dans un certain ordre avec des pauses pour chaque groupe.

#12 ashira

ashira

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 1 333 messages
  • Gender:Male

Posté 25 juin 2012 - 08:52

ok merci, j'y avait pas penser si j'ai bien
compris ton void avant voudrai dire qu'il s'agit des servos avant 2fois 3 servo
s1,s2,s3....s6 = se sont tes servos servomoteurs.
Tu les apelles dans un certain ordre avec des pauses pour chaque groupe.

Voila c'est ca, s1,2,3 pour la patte1 et les autres pour la patte2.
Tu fais un chassis fait maison ?

#13 oron

oron

    Membre

  • Membres
  • 66 messages

Posté 25 juin 2012 - 08:59

Oui je fait un chassis maison.
J'ai pas encore decidé avec quoi.
J'ai fait des tests avec un cd pour la base. mais trop souple trop petit en diametre je pense, Ca
rique d'etre sérré. Sinon j'ai un collègue qui a un laser qui peut decoupé le pmma 5mm (genre de pvc) et oui le pvc sa fond
ou j'avais pensé a du contreplaqué 5mm, il y a aussi le balsa mais ca demandera de le reforcer
Aprés si tu as d'autre matiere facile a travailler genre un carton ou un truc comme ca sutout que c'est pour les tests.

Je prevois ensuite de le faire en alu ou une matiere encore plus legere. Mais qui dit légé dit cassant...

#14 ashira

ashira

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 1 333 messages
  • Gender:Male

Posté 25 juin 2012 - 09:09

Oui je fait un chassis maison.
J'ai pas encore decidé avec quoi.
J'ai fait des tests avec un cd pour la base. mais trop souple trop petit en diametre je pense, Ca
rique d'etre sérré. Sinon j'ai un collègue qui a un laser qui peut decoupé le pmma 5mm (genre de pvc) et oui le pvc sa fond
ou j'avais pensé a du contreplaqué 5mm, il y a aussi le balsa mais ca demandera de le reforcer
Aprés si tu as d'autre matiere facile a travailler genre un carton ou un truc comme ca sutout que c'est pour les tests.

Je prevois ensuite de le faire en alu ou une matiere encore plus legere. Mais qui dit légé dit cassant...

En alu ce serait pas mal, je te conseil du pvc dur ou du plexi, enfin ce que tu veux sauf qqch de souple! Sinon les pattes se plient etc, moi je suis obligé de lui faire des atelles avec des morceaux de bois.. *damn*
Et aussi, tu as une idée de l'alimentation de tes servos ?

#15 oron

oron

    Membre

  • Membres
  • 66 messages

Posté 25 juin 2012 - 09:15

Et aussi, tu as une idée de l'alimentation de tes servos ?


Oui ca je sais, regarde cette vidéo.
Bon le debut est logique il explique plein de chose que beaucoup de gens connaisse(il faut bien les rappeller)
mais ca explique comment alimenter tes servo via une source externe en l'occurence des acuus
apres libre a toi d'alimenter le mombres de servo que tu veux selon le nombre pack d'accus que tu as sans oublier que plus tu as d'accus plus c'est lourd.
Pour les accus fait comme sur la video prend les accus avec un maximum de Miliampere. on en vend maintenet de tres bon a plus de 3000 Ma.

http://vimeo.com/19870515

#16 ashira

ashira

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 1 333 messages
  • Gender:Male

Posté 25 juin 2012 - 09:23

Oui ca je sais, regarde cette vidéo.
Bon le debut est logique il explique plein de chose que beaucoup de gens connaisse(il faut bien les rappeller)
mais ca explique comment alimenter tes servo via une source externe en l'occurence des acuus
apres libre a toi d'alimenter le mombres de servo que tu veux selon le nombre pack d'accus que tu as sans oublier que plus tu as d'accus plus c'est lourd.
Pour les accus fait comme sur la video prend les accus avec un maximum de Miliampere. on en vend maintenet de tres bon a plus de 3000 Ma.

http://vimeo.com/19870515

D'accord, donc si j'ai bien compris ton accu ne dépassera pas les 6 volts ?

#17 oron

oron

    Membre

  • Membres
  • 66 messages

Posté 25 juin 2012 - 09:24

Oui mes servomoteurs vont jusqu'a 6V. Donc pas plus de 6v d'accus sinon grrrrrrr

#18 ashira

ashira

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 1 333 messages
  • Gender:Male

Posté 25 juin 2012 - 09:41

Oui mes servomoteurs vont jusqu'a 6V.

Ok. C'était pour savoir si tu avais besoin de passer par une régulation de tension. ;)

#19 oron

oron

    Membre

  • Membres
  • 66 messages

Posté 25 juin 2012 - 09:45

Ok, d'accord et l'arduino sera alimenté via un autre accus si c'est pas trop lourd.
Désolé pour le doublon.

#20 ashira

ashira

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 1 333 messages
  • Gender:Male

Posté 25 juin 2012 - 09:49

Ok, d'accord et l'arduino sera alimenté via un autre accus si c'est pas trop lourd.
Désolé pour le doublon.

Ok, une petite pile 9v pourquoi pas^^




0 utilisateur(s) li(sen)t ce sujet

0 members, 0 guests, 0 anonymous users