<?xml version="1.0" encoding="iso-8859-1" ?>
<rss version="2.0">
<channel>
	<title><![CDATA[BRIEL : Réalisation d'un robot bipède]]></title>
	<link>http://www.robot-maker.com/forum/blog/78-briel-realisation-dun-robot-bipede/</link>
	<description><![CDATA[BRIEL : Réalisation d'un robot bipède Syndication]]></description>
	<pubDate>Tue, 05 Jun 2018 14:35:56 +0000</pubDate>
	<webMaster>webmaster@robot-maker.com (Robot Maker)</webMaster>
	<generator>IP.Blog</generator>
	<ttl>60</ttl>
	<item>
		<title>4) BRIEL : Tests sur une Jambe !</title>
		<link>http://www.robot-maker.com/forum/blog/78/entry-91-4-briel-tests-sur-une-jambe/</link>
		<category></category>
		<description><![CDATA[Avant de faire du code pour pouvoir bouger la Jambe de Briel dans tous les sens il faut faire attention aux angles MIN et MAX de d&#233;battement !&#160;<br />&#160;<br />Pour cela on va utiliser ce code :&#160;<br />&#160;<br />&#160;<pre class='prettyprint lang-auto linenums:0'>
//Biblioth&#232;ques :
#include &lt;Wire.h&gt;
#include &lt;Adafruit_PWMServoDriver.h&gt;

#define NBSERVO 5

//Driver :
Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver();

// Jambe1 
#define MIN0 93
#define MAX0 450
#define MIN1 96
#define MAX1 451
#define MIN2 101
#define MAX2 451
#define MIN3 105
#define MAX3 440
#define MIN4 111
#define MAX4 440



// Tableau qui attribue &#224; chaque servo sa place sur le driver pour 16 servo
uint8_t servomoteur&#91;NBSERVO&#93; = {0, 1, 2, 3, 5};

//Servos :
//Liste des longueurs minimum d'impulsions pour - 90&#176;
uint16_t servomoins90&#91;NBSERVO&#93; = {MIN0, MIN1, MIN2, MIN3, MIN4};

//Liste des longueurs minimum d'impulsions pour + 90&#176;
uint16_t servoplus90&#91;NBSERVO&#93; =  {MAX0, MAX1, MAX2, MAX3, MAX4};

#define PAUSE 5000

void setup() {
  
  pwm.begin();
  pwm.setPWMFreq(50); //Fr&#233;quence utilis&#233;e par les servos analogiques
  
}

void loop() {

  testSensJambeDroite();

}

void writeServo(uint8_t i, int8_t degree)
{
  uint16_t x = map(degree,-90, 90, servomoins90&#91;i&#93;, servoplus90&#91;i&#93;);
  pwm.setPWM(servomoteur&#91;i&#93;,0,x);
}


void testSensJambeDroite() {
   for(uint8_t i = 0; i&lt; 5; i++) {
    writeServo(i, 0);
  }
  delay(PAUSE);
  for(uint8_t i = 0; i&lt; 5; i++) {
    writeServo(i, 15);
  }
  delay(PAUSE);
}



</pre>Avec ce code on obtient le r&#233;sultat suivant :&#160;<br />&#160;<br />[vid&#233;o]<br />&#160;<br />En observant comment s'orientent les servomoteurs dans le sens "positif", ( d&#233;placement de +15&#176; ) on va savoir comment sont orient&#233;s chacune des articulations. Le faible d&#233;placement permet de garantir que quelque soit le sens de d&#233;placement le servomoteur ne va pas rentrer en but&#233; ! =)<br /><br />Une fois le sens positif de chaque axe connu on va pouvoir d&#233;finir si les valeurs maximum d'amplitude de chaque articulations de notre bip&#232;des sont -90&#176; ou +90&#176; afin de se mettre dans cette position :<br />&#160;<br /><br /><a class='resized_img' rel='lightbox[91]' id='ipb-attach-url-' href="https://www.robot-maker.com/forum/uploads/monthly_06_2018/blogentry-5864-0-57346000-1528102356.jpg" title="limiteMax.JPG - Taille : 113,62 Ko"><span rel='lightbox'><img class='bbc_img' itemprop="image" src="https://www.robot-maker.com/forum/uploads/monthly_06_2018/blogentry-5864-0-57346000-1528102356.jpg" class='bbc_img linked-image' alt="limiteMax.JPG" /></span></a>
<br />&#160;<br />&#160;<br />Une fois les limite Max d&#233;finies, on va les stocker dans un tableau, et on va pouvoir ex&#233;cuter le code suivant permettant de tester un mouvement "fluide" alternant de 0 &#224; 90&#176; sur chacune des articulations :&#160;<br />&#160;<pre class='prettyprint lang-auto linenums:0'>
//Biblioth&#232;ques :
#include &lt;Wire.h&gt;
#include &lt;Adafruit_PWMServoDriver.h&gt;

#define NBSERVO 5

//Driver :
Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver();

// Jambe1 
#define MIN0 93
#define MAX0 450
#define MIN1 96
#define MAX1 451
#define MIN2 101
#define MAX2 451
#define MIN3 105
#define MAX3 440
#define MIN4 111
#define MAX4 440



// Tableau qui attribue &#224; chaque servo sa place sur le driver pour 16 servo
uint8_t servomoteur&#91;NBSERVO&#93; = {0, 1, 2, 3, 5};

//Servos :
//Liste des longueurs minimum d'impulsions pour - 90&#176;
uint16_t servomoins90&#91;NBSERVO&#93; = {MIN0, MIN1, MIN2, MIN3, MIN4};

//Liste des longueurs minimum d'impulsions pour + 90&#176;
uint16_t servoplus90&#91;NBSERVO&#93; =  {MAX0, MAX1, MAX2, MAX3, MAX4};

// Position Max orient&#233; des servomoteurs en degr&#233;s
int8_t limiteMax&#91;NBSERVO&#93; = { -90, -90, -90, -90,  90};

#define PAUSE 5000


void setup() {
  
  pwm.begin();
  pwm.setPWMFreq(50); //Fr&#233;quence utilis&#233;e par les servos analogiques
  
}

void loop() {

  test90JambeDroite();

}

void writeServo(uint8_t i, int8_t degree)
{
uint16_t x = map(degree,-90, 90, servomoins90&#91;i&#93;, servoplus90&#91;i&#93;);
pwm.setPWM(servomoteur&#91;i&#93;,0,x);
}

void test90JambeDroite() {
&#160; for(uint8_t i =0 ;i=&lt;255; i++ ){
&#160; &#160; for(uint8_t j = 0; j &lt; 5; j++) {
&#160; &#160; &#160; writeServo( j, (limiteMax&#91;j&#93;*i)/255 );
&#160; &#160; }
&#160; }
&#160; delay(PAUSE);
&#160; for(uint8_t i =255 ; i&gt;=0 ; i-- ){
&#160; &#160; for(uint8_t j = 0; j &lt; 5; j++ ) {
&#160; &#160; &#160; writeServo(j, (limiteMax&#91;j&#93;*i)/255 );
&#160; &#160; }
&#160; }
&#160; delay(PAUSE);
}


</pre>&#160;<br /><br /><br />&#160;<br />Vous remarquerez que le mouvement "fluide" est obtenu en d&#233;composant le mouvement souhait&#233; en plusieurs mouvements ex&#233;cut&#233;s les uns &#224; la suite des autres.&#160;<br />Notre fonction "<span  style='color: rgb(0,0,0)'><span  style='font-family: monospace'><span  style='font-size: 12px'><span  style='background-color: rgb(250,250,250)'>test90JambeDroite()</span></span></span></span>" d&#233;coupe l'ensemble de la plage d'amplitude 0 &#224; 90&#176; en 256 mouvements!&#160;&#160;<br />&#160;<br />Le r&#233;sultat en vid&#233;o :&#160;<br />&#160;<br />&#160;<br />Maintenant qu'on a l'ensemble qui est bien calibr&#233; et qu'on connait les sens des servo et si on faisait un test de flexion sur une jambe ?&#160;<br /><br />Voici le code :&#160;<br /><br />On test la fonction comme &#231;a&#160;<br />Video de test<br />&#160;<br />Oura ! La jambe semble faire la flexion souhait&#233;e !&#160;<br />Comme &#231;a a l'air de bien marcher on va monter l'&#233;lectronique sur la jambe et refaire les essais.&#160;<br /><br />Vid&#233;o de test :<br />&#160;<br />Oups... Le robot semble pas bien droit ... Sans la charge pas de probl&#232;me mais avec la batterie on voit appara&#238;tre un probl&#232;me de jeu dans les servomoteurs! Oui... On rappel qu'on utilise des servomoteurs &#224; moins de 7&#8364;50 pour ce projet... On ne pouvait pas s'attendre &#224; quelque chose de parfait ... Mais rassurez vous le projet ne s'arr&#234;te pas l&#224; ! Ce r&#233;sultat &#233;tait attendu et il y a bien entendu une parade ! Il faut "contrer le jeu " .&#160;<br /><br />Nouveau code :&#160;<br /><br />Video .&#160;<br /><br /><br />Et l&#224; &#231;a va mieux! =)&#160;<div id='attach_wrap' class='rounded clearfix'>
	<h4>Image(s) jointe(s)</h4>
	<ul>
		
			<li class=''>
				
			</li>
		
	</ul>
</div>]]></description>
		<pubDate>Wed, 23 May 2018 11:42:00 +0000</pubDate>
		<guid>http://www.robot-maker.com/forum/blog/78/entry-91-4-briel-tests-sur-une-jambe/</guid>
	</item>
	<item>
		<title>3) BRIEL : Calibration des servomoteurs et montage de la première jambe</title>
		<link>http://www.robot-maker.com/forum/blog/78/entry-90-3-briel-calibration-des-servomoteurs-et-montage-de-la-premiere-jambe/</link>
		<category></category>
		<description><![CDATA[Maintenant que l'&#233;lectronique est pr&#234;te, avant d'assembler votre bip&#232;de il vous faudra calibrer les valeurs pour chacun de vos servomoteurs.&#160;<br />&#160;<br />Pour cela on va commencer par calibrer les 5 servomoteurs pour tester la premi&#232;re jambe compl&#232;te.&#160;<br />&#160;<br />Puisqu'on utilise un <a href='http://www.robot-maker.com/shop/drivers-d-actionneurs/32-driver-i2c-pour-16-servomoteurs.html' class='bbc_url' title=''>driver de servomoteur&#160;</a>&#160;pour piloter nos servomoteurs :<br /><p class='bbc_indent'  style='margin-left: 40px'><a href='http://www.robot-maker.com/shop/drivers-d-actionneurs/32-driver-i2c-pour-16-servomoteurs.html' class='bbc_url' title=''><img class='bbc_img' src='http://www.robot-maker.com/shop/100-home_default/driver-i2c-pour-16-servomoteurs.jpg' alt='Image IPB'  /></a></p>N'h&#233;sitez pas &#224; jeter un oeil au <a href='http://www.robot-maker.com/forum/topic/10586-driver-i2c-16-servomoteurs-teste-par-jekert/' class='bbc_url' title=''>sujet d&#233;di&#233; au test de ce driver</a>&#160;pour en savoir un peu plus sur son utilisation et par ici pour <a href='http://www.robot-maker.com/ouvrages/14092017-reception-multiplexeur-pilotage-moteurs/' class='bbc_url' title=''>beaucoup plus de d&#233;tails sur le fonctionnement du driver</a>.&#160;<br />&#160;<br />Nous allons partir du code de base suivant :&#160;<br />&#160;<pre class='prettyprint lang-auto linenums:0'>
//Biblioth&#232;ques :
#include &lt;Wire.h&gt;
#include &lt;Adafruit_PWMServoDriver.h&gt;

#define NBSERVO 5

//Driver :
Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver();

#define PAUSE 5000

uint8_t servomoteur&#91;NBSERVO&#93; = {0, 1, 2, 3, 5}; // d&#233;fini sur quelle voie du driver sera branch&#233; chaque servomoteurs

//Servos :
//Liste des longueurs minimum d'impulsions pour - 90&#176; modifier la valeurs 120 par les valeurs r&#233;elles pour chaque servo
uint16_t servomoins90&#91;NBSERVO&#93; = {120, 120, 120 , 120, 120};

//Liste des longueurs minimum d'impulsions pour + 90&#176; modifier la valeur 450 par les valeurs r&#233;elles pour chaque servo
uint16_t servoplus90&#91;NBSERVO&#93; = {450, 450, 450, 450, 450}; 


void setup()
{
 pwm.begin();
 pwm.setPWMFreq(50); //Fr&#233;quence utilis&#233;e par les servos analogiques
}

void loop() 
{
 for(uint8_t i = 0; i&lt; NBSERVO; i++) {
  writeServo(i, 0);
 }
 delay(PAUSE);
 for(uint8_t i = 0; i&lt; NBSERVO; i++) {
  writeServo(i, 90);
 }
 delay(PAUSE);
 for(uint8_t i = 0; i&lt; NBSERVO; i++) {
  writeServo(i, -90);
 }
 delay(PAUSE);

}


void writeServo(uint8_t i, int16_t degree)
{
 uint16_t x = map(degree,-90, 90, servomoins90&#91;i&#93;, servoplus90&#91;i&#93;);
 pwm.setPWM(servomoteur&#91;i&#93;,0,x);
}
</pre>Dans le code ci dessus les valeurs 120 et 450 sont mises arbitrairement.&#160;<br />Il faudra trouver les valeurs r&#233;elles pour chaque servomoteurs afin que le servomoteur passe bien par les 3 positions&#160;<br />0&#176; 90&#176; et -90&#176;.&#160;<br />&#160;<br />Pour cela on va ajouter au fur et &#224; mesure des #define pour chaque servomoteur. Cela permet de plus facilement &#233;diter les valeurs.<br />&#160;<br />Voil&#224; mon code apr&#232;s calibration :&#160;<pre class='prettyprint lang-auto linenums:0'>
//Biblioth&#232;ques :
#include &lt;Wire.h&gt;
#include &lt;Adafruit_PWMServoDriver.h&gt;

#define NBSERVO 5

//Driver :
Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver();

#define PAUSE 5000

uint8_t servomoteur&#91;NBSERVO&#93; = {0, 1, 2, 3, 5}; // d&#233;fini sur quelle voie du driver sera branch&#233; chaque servomoteurs

// Jambe1 
#define MIN0 93
#define MAX0 450
#define MIN1 96
#define MAX1 451
#define MIN2 101
#define MAX2 451
#define MIN3 105
#define MAX3 440
#define MIN4 111
#define MAX4 440

//Servos :
//Liste des longueurs minimum d'impulsions pour - 90&#176; 
uint16_t servomoins90&#91;NBSERVO&#93; = {MIN0, MIN1, MIN2, MIN3, MIN4};

//Liste des longueurs minimum d'impulsions pour + 90&#176; 
uint16_t servoplus90&#91;NBSERVO&#93; = {MAX0, MAX1, MAX2, MAX3, MAX4}; 


void setup()
{
 pwm.begin();
 pwm.setPWMFreq(50); //Fr&#233;quence utilis&#233;e par les servos analogiques
}

void loop() 
{
 for(uint8_t i = 0; i&lt; NBSERVO; i++) {
  writeServo(i, 0);
 }
 delay(PAUSE);
 for(uint8_t i = 0; i&lt; NBSERVO; i++) {
  writeServo(i, 90);
 }
 delay(PAUSE);
 for(uint8_t i = 0; i&lt; NBSERVO; i++) {
  writeServo(i, -90);
 }
 delay(PAUSE);

}


void writeServo(uint8_t i, int16_t degree)
{
 uint16_t x = map(degree,-90, 90, servomoins90&#91;i&#93;, servoplus90&#91;i&#93;);
 pwm.setPWM(servomoteur&#91;i&#93;,0,x);
}
</pre>Le r&#233;sultat en vid&#233;o :&#160;<br /><iframe id="ytplayer" class="EmbeddedVideo" type="text/html" width="640" height="390" src="http://youtube.com/embed/3ttXDb1ONjs?html5=1&fs=1" frameborder="0" allowfullscreen webkitallowfullscreen /></iframe><br />&#160;<br />Comme vous pourrez le constater, en plus de faire un mouvement de 180&#176; complet, les palonniers sont mis de tel sortes &#224; ce que&#160; les trous de fixations des palonniers soient bien "align&#233;s" lorsque le servomoteur est en position 0&#176; 90&#176; et -90&#176;.<br />Il est important de bien placer le palonnier des servomoteurs comme sur la vid&#233;o pour le montage.&#160;<br />&#160;<br />Maintenant on va pouvoir monter la premi&#232;re jambe.&#160;<br /><br />Pour cela on va mettre tous les servomoteurs &#224; la position "Z&#233;ro " en utilisant ce code :&#160;<pre class='prettyprint lang-auto linenums:0'>
//Biblioth&#232;ques :
#include &lt;Wire.h&gt;
#include &lt;Adafruit_PWMServoDriver.h&gt;

#define NBSERVO 5

//Driver :
Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver();

#define PAUSE 5000

uint8_t servomoteur&#91;NBSERVO&#93; = {0, 1, 2, 3, 5}; // d&#233;fini sur quelle voie du driver sera branch&#233; chaque servomoteurs

// Jambe1 
#define MIN0 93
#define MAX0 450
#define MIN1 96
#define MAX1 451
#define MIN2 101
#define MAX2 451
#define MIN3 105
#define MAX3 440
#define MIN4 111
#define MAX4 440

//Servos :
//Liste des longueurs minimum d'impulsions pour - 90&#176; 
uint16_t servomoins90&#91;NBSERVO&#93; = {MIN0, MIN1, MIN2, MIN3, MIN4};

//Liste des longueurs minimum d'impulsions pour + 90&#176; 
uint16_t servoplus90&#91;NBSERVO&#93; = {MAX0, MAX1, MAX2, MAX3, MAX4}; 


void setup()
{
 pwm.begin();
 pwm.setPWMFreq(50); //Fr&#233;quence utilis&#233;e par les servos analogiques
 zeroJambeDroite();
}

void loop() 
{

 //Do nothing

}


void writeServo(uint8_t i, int16_t degree)
{
 uint16_t x = map(degree,-90, 90, servomoins90&#91;i&#93;, servoplus90&#91;i&#93;);
 pwm.setPWM(servomoteur&#91;i&#93;,0,x);
}

void zeroJambeDroite()
{
 for(uint8_t i = 0; i&lt; 5; i++) {
   writeServo(i, 0);
 }
}


</pre>Puis monter chacun des servomoteurs de la jambe&#160; afin d'obtenir ce r&#233;sultat en position z&#233;ro de la jambe :&#160;<br />&#160;<br /><a class='resized_img' rel='lightbox[86]' id='ipb-attach-url-' href="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-94512900-1525608416.jpg" title="20180506_140719.jpg - Taille : 82,44 Ko"><span rel='lightbox'><img class='bbc_img' itemprop="image" src="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-94512900-1525608416.jpg" class='bbc_img linked-image' alt="20180506_140719.jpg" /></span></a>
<br />&#160;<br />Oura ! On a une premi&#232;re jambe de mont&#233;e avec des servomoteurs dont les valeurs&#160; 0&#176; + 90&#176;&#160; et -90&#176; sont calibr&#233;es!&#160;<br /><br />On va maintenant pouvoir s'int&#233;resser &#224; faire bouger cette jambe !&#160;<br />&#160;]]></description>
		<pubDate>Tue, 22 May 2018 21:56:00 +0000</pubDate>
		<guid>http://www.robot-maker.com/forum/blog/78/entry-90-3-briel-calibration-des-servomoteurs-et-montage-de-la-premiere-jambe/</guid>
	</item>
	<item>
		<title><![CDATA[2) L'électronique de BRIEL]]></title>
		<link>http://www.robot-maker.com/forum/blog/78/entry-89-2-lelectronique-de-briel/</link>
		<category></category>
		<description><![CDATA[<strong class='bbc'>Rapides calculs :</strong><br />&#160;<ul class='bbc'><li>On est partit sur l'utilisation de 10 servomoteurs MG995 et d'apr&#232;s la doc chaque MG995 est aliment&#233; en 5V peut consommer au maximum environ 1,45 A au couple max...&#160;<br />
<br />
On a 10 servomoteurs&#160;=&gt; 10 * 1,45 A = 14,5 A au maximum ...<br />
Soit environ 72,5 W max (&#160; 14,5 A* 5 V) ce qui n'est pas rien&#160;<br />
<br />
Auquel on est cens&#233; ajouter la consommation du reste mais qui sera n&#233;gligeable devant ce gros chiffre puisqu'on ajoutera pas de moteurs ...<br />
&#160;</li><li>On veut pouvoir tenir une quinzaine de minutes sur batterie.&#160;&#160;<br />
=&gt;&#160; 72,518, / 4&#160; = 18 Wh&#160; environ&#160;<br />
<br />
Mais il ne faut pas n&#233;gliger le rendement des convertisseurs qu'on va utiliser! On suppose qu'ils sont de 85%&#160;<br />
=&gt; 22Wh d&#233;bit&#233; par la batter environ seront n&#233;cessaire&#160; ( 18 * 100 / 85)<br />
&#160;</li><li>On peut choisir des batteries Lipo 3S ( 12V ) ou 2S. ( 8V)&#160;&#160;<br />
En 3S 22 Wh&#160; on peut approximer &#231;a &#224; une capacit&#233; de batterie de 1,8 Ah&#160; ...&#160; ( 22/12)&#160;<br />
En 2S 22 Wh &#231;a nous donne une capacit&#233; de batterie de 2,75 Ah ... ( 22 / 8 )</li></ul>&#160;<br /><strong class='bbc'>Choix des composants :&#160;</strong><ul class='bbc'><li>Vu qu'on est joueur on retiendra 14A volontairement histoire de voir ce que &#231;a donne pour la suite.&#160;&#160;<br />
On va donc choisir deux <a href='http://www.robot-maker.com/shop/alimentation/74-convertisseur-5v-7a.html' class='bbc_url' title=''>convertisseurs 5V 7A</a>pour alimenter l'ensemble.&#160; 2*7A = 14A<br />
<a href='http://www.robot-maker.com/shop/alimentation/74-convertisseur-5v-7a.html' class='bbc_url' title=''><img class='bbc_img' src='http://www.robot-maker.com/shop/274-large_default/convertisseur-5v-7a.jpg' alt='Image IPB'  /></a><br />
&#160;</li><li>Pour les batteries on va choisir une <a href='http://www.robot-maker.com/shop/alimentation/208-batterie-lipo-3s.html' class='bbc_url' title=''>Lipo 3S 2,2 Ah</a> disponibles puisque 2,2Ah &gt; 1,8Ah calcul&#233; !<br />
<a href='http://www.robot-maker.com/shop/alimentation/208-batterie-lipo-3s.html' class='bbc_url' title=''><img class='bbc_img' src='http://www.robot-maker.com/shop/789-large_default/batterie-lipo-3s.jpg' alt='Image IPB'  /></a><br />
&#160;</li><li>Vu qu'on a 10 servomoteurs, &#231;a fait un peu beaucoup, on va utiliser <a href='http://www.robot-maker.com/shop/drivers-d-actionneurs/32-driver-i2c-pour-16-servomoteurs.html' class='bbc_url' title=''>un driver pour servomoteur I2C</a> qui va g&#233;rer les servomoteurs pour nous! Et tout&#160; &#231;a avec uniquement 2 fils !&#160; Vu qu'&#224; lui tout seul il peut g&#233;rer 16 servomoteurs &#231;a sera suffisant pour notre besoin!<br />
<a href='http://www.robot-maker.com/shop/drivers-d-actionneurs/32-driver-i2c-pour-16-servomoteurs.html' class='bbc_url' title=''><img class='bbc_img' src='http://www.robot-maker.com/shop/100-large_default/driver-i2c-pour-16-servomoteurs.jpg' alt='Image IPB'  /></a><br />
Youpi !<br />
=&gt; Code plus petit et plus simple<br />
=&gt; Pas de probl&#233;matique de timer utilis&#233;<br />
=&gt; Moins de m&#233;moire de programme &#224; utiliser ,&#160;<br />
=&gt; Moins de GPIO de l'arduino utilis&#233;&#160;<br />
&#160;</li><li>Gr&#226;ce au point pr&#233;c&#233;dent on va pouvoir choisir d'utiliser <a href='http://www.robot-maker.com/shop/cartes-programmables/46-clone-arduino-nano.html' class='bbc_url' title=''>une arduino Nano</a> !&#160;<br />
=&gt; Carte &#233;quivalent &#224; la uno, avec autant de GPIO et code compatible directement&#160; car m&#234;me microcontr&#244;leur<br />
=&gt;&#160;mais carte plus petite et donc plus l&#233;g&#232;re<br />
=&gt; plus &#233;conomique<br />
=&gt; Contraintes, des connecteurs &#224; souder, mais c'est tr&#232;s facile &#224; faire et c'est plus pratique que les connecteur femelles sur la uno.<br />
<a href='http://www.robot-maker.com/shop/cartes-programmables/46-clone-arduino-nano.html' class='bbc_url' title=''><img class='bbc_img' src='http://www.robot-maker.com/shop/156-large_default/clone-arduino-nano.jpg' alt='Image IPB'  /></a></li></ul>&#160;<br />&#160;<br /><strong class='bbc'>Sch&#233;mas de c&#226;blage de l'ensemble :&#160;</strong><ul class='bbc'><li>La batterie est reli&#233;e &#224; un interrupteur g&#233;n&#233;rale qui permet de couper le robot sans avoir &#224; d&#233;brancher la batterie en passant par un connecteur XT60 pour faciliter le changement de batterie si besoin.<br />
&#160;</li><li>La sortie 12V&#160; + GND en sortie de l'interrupteur va alimenter les deux convertisseurs 5V 7A et le Vin&#160; + GND de la arduino nano directement.&#160; le Vin de la arduino nano supporte sans probl&#232;me du 12V et il vaut mieux ne pas parasiter le 5V de la nano avec le 5V des servo qui peut &#234;tre un peu bruit&#233;...&#160; encore un peu de soudures seront n&#233;cessaire.&#160;<br />
&#160;</li><li>Les servomoteurs et les convertisseurs seront branch&#233;s directement sur le driver pour servo. Les connecteurs d&#233;j&#224; pr&#233;sent sur les servomoteurs et les convertisseurs permettent de se brancher directement sans faire aucune modifications.<br />
&#160;</li><li>Le driver de servomoteur sera reli&#233; &#224; l'arduino par 4 fils femelle femelle &#224; condition d'avoir soud&#233; les pins sur la nano. Sinon il est possible de directement souder les fils sur la nano ... Les 4 fils &#224; brancher sont GND 5V SDA (= A4) et SCL ( = A5) .&#160;<br />
&#160;</li></ul>Sch&#233;mas :<br /><br /><a class='resized_img' rel='lightbox[89]' id='ipb-attach-url-' href="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-38546700-1527040720.png" title="schemas.png - Taille : 587,07 Ko"><span rel='lightbox'><img class='bbc_img' itemprop="image" src="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-38546700-1527040720.png" class='bbc_img linked-image' alt="schemas.png" /></span></a>
<br />&#160;<br />Remarque : Les 5V 7A sont branch&#233;s ainsi pour garder une r&#233;partition a peu pr&#232;s &#233;quilibr&#233;e si on rajoute des servomoteurs suppl&#233;mentaires par la suite ...&#160; Pour ajouter des bras par exemple ...<br />&#160;<br />Pour faire ce c&#226;blage on utilise&#160; :&#160;<br />=&gt; <a href='http://www.robot-maker.com/shop/composants/37-interrupteur-de-puissance.html' class='bbc_url' title=''>un interrupteur On / Off&#160;</a><br /><a href='http://www.robot-maker.com/shop/composants/37-interrupteur-de-puissance.html' class='bbc_url' title=''><img class='bbc_img' src='http://www.robot-maker.com/shop/118-home_default/interrupteur-de-puissance.jpg' alt='Image IPB'  /></a><br />=&gt;&#160;<a href='http://www.robot-maker.com/shop/composants/245-paire-de-fils-rouge-et-noir.html' class='bbc_url' title=''>du fil noir et rouge&#160;<br /><img class='bbc_img' src='http://www.robot-maker.com/shop/843-home_default/paire-de-fils-rouge-et-noir.jpg' alt='Image IPB'  /></a><br />=&gt;&#160;<a href='http://www.robot-maker.com/shop/alimentation/209-connecteur-xt60.html' class='bbc_url' title=''>un connecteur XT60 m&#226;le</a>&#160;<br /><a href='http://www.robot-maker.com/shop/alimentation/209-connecteur-xt60.html' class='bbc_url' title=''><img class='bbc_img' src='http://www.robot-maker.com/shop/790-home_default/connecteur-xt60.jpg' alt='Image IPB'  /></a><br />=&gt; de la <a href='http://www.robot-maker.com/shop/composants/183-gaine-thermoretractable.html#/32-diametre-5mm' class='bbc_url' title=''>gaine thermo 5mm</a><br /><a href='http://www.robot-maker.com/shop/composants/183-gaine-thermoretractable.html#/32-diametre-5mm' class='bbc_url' title=''><img class='bbc_img' src='http://www.robot-maker.com/shop/661-home_default/gaine-thermoretractable.jpg' alt='Image IPB'  /></a><br />=&gt; <a href='http://www.robot-maker.com/shop/accessoires-robotiques/42-nappe-de-40-fils-femelle-femelle.html' class='bbc_url' title=''>Du fil femelle femelle&#160;</a><br /><a href='http://www.robot-maker.com/shop/accessoires-robotiques/42-nappe-de-40-fils-femelle-femelle.html' class='bbc_url' title=''><img class='bbc_img' src='http://www.robot-maker.com/shop/141-home_default/nappe-de-40-fils-femelle-femelle.jpg' alt='Image IPB'  /></a><br />&#160;<br />&#160;<br />Photo&#160; du c&#226;blage avec seulement 5 servomoteurs pour commencer afin de d&#233;j&#224; tester une jambe :&#160;<br /><a class='resized_img' rel='lightbox[89]' id='ipb-attach-url-' href="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-45996600-1527036370.jpg" title="câblage 5 servo.JPG - Taille : 218,15 Ko"><span rel='lightbox'><img class='bbc_img' itemprop="image" src="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-45996600-1527036370.jpg" class='bbc_img linked-image' alt="câblage 5 servo.JPG" /></span></a>
<br /><br />&#160;<br />&#160;<div id='attach_wrap' class='rounded clearfix'>
	<h4>Image(s) jointe(s)</h4>
	<ul>
		
			<li class=''>
				
			</li>
		

			<li class=''>
				
			</li>
		
	</ul>
</div>]]></description>
		<pubDate>Tue, 08 May 2018 18:30:00 +0000</pubDate>
		<guid>http://www.robot-maker.com/forum/blog/78/entry-89-2-lelectronique-de-briel/</guid>
	</item>
	<item>
		<title>1) Choix de la structure de BRIEL</title>
		<link>http://www.robot-maker.com/forum/blog/78/entry-87-1-choix-de-la-structure-de-briel/</link>
		<category></category>
		<description><![CDATA[<strong class='bbc'>Contraintes</strong><br />&#160;<ul class='bbc'><li>Utilise des servomoteurs bas de gamme / &#233;conomique =&gt; Les <a href='http://www.robot-maker.com/shop/moteurs-et-actionneurs/30-servomoteur-towerpro-mg995.html' class='bbc_url' title=''>MG995</a> et voir leur limites</li></ul><a href='http://www.robot-maker.com/shop/moteurs-et-actionneurs/30-servomoteur-towerpro-mg995.html' class='bbc_url' title=''><img class='bbc_img' src='http://www.robot-maker.com/shop/91-large_default/servomoteur-towerpro-mg995.jpg' alt='Image IPB'  /></a><br />&#160;<br />&#160;<ul class='bbc'><li>Avoir un bip&#232;de avec suffisamment de degr&#233;s de libert&#233; ( on notera DOF =&gt;&#160; Degrees Of Freedom / degr&#232;s de libert&#233;)&#160; pour faire des mouvements sympas&#160;: En effet le but c'est d'apprendre / exp&#233;rimenter</li></ul><ul class='bbc'><li>Utiliser des pi&#232;ces standard pour &#234;tre facilement reproductible en kit&#160;</li></ul>&#160;<br />Avant de regarder quelle est la configuration retenue pour la suite n'h&#233;sitez pas &#224; jeter un oeil sur<br /><a href='http://www.robot-maker.com/shop/blog/93_Etudes-des-diff%C3%A9rentes-cofigurations-de-robot.html' class='bbc_url' title=''>l'&#233;tude des configurations de robot bip&#232;de&#160; " existantes connues "&#160;</a><br /><a href='http://www.robot-maker.com/shop/blog/93_Etudes-des-diff%C3%A9rentes-cofigurations-de-robot.html' class='bbc_url' title=''></a><br /><a class='bbc_url' href='http://www.robot-maker.com/shop/blog/93_Etudes-des-diff%C3%A9rentes-cofigurations-de-robot.html'><a class='resized_img' rel='lightbox[87]' id='ipb-attach-url-' href="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-79900600-1527041379.jpg" title="config.JPG - Taille : 30,44 Ko"><img class='bbc_img' itemprop="image" src="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-79900600-1527041379.jpg" class='bbc_img linked-image' alt="config.JPG" /></a>
</a><br />&#160;<br /><strong class='bbc'>La premi&#232;re structure retenue pour le moment :&#160;</strong><br /><br />10DOF =&gt;&#160;5 DOF&#160; par jambes,&#160;<br />Soit&#160; 5 servomoteurs par jambes soit 10 au total pour notre bip&#232;de!&#160;<br />&#160;<br />Vue d'ensemble sans les servomoteurs :<br /><br /><a class='resized_img' rel='lightbox[87]' id='ipb-attach-url-' href="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-49477300-1525609129.jpg" title="20180505_051719.jpg - Taille : 75,93 Ko"><span rel='lightbox'><img class='bbc_img' itemprop="image" src="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-49477300-1525609129.jpg" class='bbc_img linked-image' alt="20180505_051719.jpg" /></span></a>
<br />&#160;<br />Vue d&#233;taill&#233;e :&#160;<br /><br /><br />Le bassin :<br /><br /><a class='resized_img' rel='lightbox[87]' id='ipb-attach-url-' href="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-15703100-1525610475.jpg" title="20180505_052824.jpg - Taille : 50,82 Ko"><span rel='lightbox'><img class='bbc_img' itemprop="image" src="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-15703100-1525610475.jpg" class='bbc_img linked-image' alt="20180505_052824.jpg" /></span></a>
<br />&#160;<br />Les hanches :&#160;<br /><br /><a class='resized_img' rel='lightbox[87]' id='ipb-attach-url-' href="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-33109400-1525610364.jpg" title="20180505_052759.jpg - Taille : 31,69 Ko"><span rel='lightbox'><img class='bbc_img' itemprop="image" src="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-33109400-1525610364.jpg" class='bbc_img linked-image' alt="20180505_052759.jpg" /></span></a>
<br />&#160;<br />Les cuisses :<br /><br /><a class='resized_img' rel='lightbox[87]' id='ipb-attach-url-' href="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-76798300-1525610251.jpg" title="20180505_052645.jpg - Taille : 44,93 Ko"><span rel='lightbox'><img class='bbc_img' itemprop="image" src="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-76798300-1525610251.jpg" class='bbc_img linked-image' alt="20180505_052645.jpg" /></span></a>
<br />&#160;<br />Les tibias :&#160;<br /><br /><a class='resized_img' rel='lightbox[87]' id='ipb-attach-url-' href="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-20322400-1525609495.jpg" title="20180505_052457.jpg - Taille : 42,99 Ko"><span rel='lightbox'><img class='bbc_img' itemprop="image" src="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-20322400-1525609495.jpg" class='bbc_img linked-image' alt="20180505_052457.jpg" /></span></a>
<br />&#160;<br />Les chevilles :<br /><br /><a class='resized_img' rel='lightbox[87]' id='ipb-attach-url-' href="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-49811400-1525609303.jpg" title="20180505_052442.jpg - Taille : 40,69 Ko"><span rel='lightbox'><img class='bbc_img' itemprop="image" src="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-49811400-1525609303.jpg" class='bbc_img linked-image' alt="20180505_052442.jpg" /></span></a>
<br />&#160;<br />Les pieds :<br /><br /><a class='resized_img' rel='lightbox[87]' id='ipb-attach-url-' href="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-75521900-1525609210.jpg" title="20180505_052226.jpg - Taille : 44,74 Ko"><span rel='lightbox'><img class='bbc_img' itemprop="image" src="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-75521900-1525609210.jpg" class='bbc_img linked-image' alt="20180505_052226.jpg" /></span></a>
<br />&#160;<br />&#160;<br /><strong class='bbc'>Mod&#233;lisation / Sch&#233;mas cin&#233;matique de la structure :&#160;</strong><br />&#160;<div id='attach_wrap' class='rounded clearfix'>
	<h4>Image(s) jointe(s)</h4>
	<ul>
		
			<li class=''>
				
			</li>
		

			<li class=''>
				
			</li>
		

			<li class=''>
				
			</li>
		

			<li class=''>
				
			</li>
		

			<li class=''>
				
			</li>
		

			<li class=''>
				
			</li>
		

			<li class=''>
				
			</li>
		

			<li class=''>
				
			</li>
		
	</ul>
</div>]]></description>
		<pubDate>Sun, 06 May 2018 12:12:00 +0000</pubDate>
		<guid>http://www.robot-maker.com/forum/blog/78/entry-87-1-choix-de-la-structure-de-briel/</guid>
	</item>
	<item>
		<title>0) Présentation du projet BRIEL</title>
		<link>http://www.robot-maker.com/forum/blog/78/entry-86-0-presentation-du-projet-briel/</link>
		<category></category>
		<description><![CDATA[<span  style='font-size: 18px'><strong class='bbc'>Introduction :&#160;</strong></span><br />&#160;<br /><a class='resized_img' rel='lightbox[86]' id='ipb-attach-url-' href="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-21211700-1527036779.jpg" title="Briel fini.jpg - Taille : 76,87 Ko"><span rel='lightbox'><img class='bbc_img' itemprop="image" src="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-21211700-1527036779.jpg" class='bbc_img linked-image' alt="Briel fini.jpg" /></span></a>
<br />&#160;<br /><strong class='bbc'>BRIEL&#160; :</strong> Biped Robot for Interactive Experimentation and Learning&#160;<br />&#160;<br />Il s'agit de la r&#233;alisation d'un robot bip&#232;de afin d'exp&#233;rimenter les probl&#233;matiques li&#233; &#224; ce genre de Robot.&#160;<br />L'ensemble des produits utilis&#233;s sur ce projet seront disponible sur la <a href='http://www.robot-maker.com/shop/' class='bbc_url' title=''>boutique</a> !<br />&#160;<br /><br /><br />&#160;<br /><span  style='font-size: 18px'><strong class='bbc'>Plan du Blog :&#160;</strong></span><br /><br /><a href='http://www.robot-maker.com/forum/blog/78/entry-87-1-choix-de-la-structure-de-briel/' class='bbc_url' title=''>1) Choix de la structure</a><br /><a class='resized_img' rel='lightbox[87]' id='ipb-attach-url-' href="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-49477300-1525609129.jpg" title="20180505_051719.jpg - Taille : 75,93 Ko"><span rel='lightbox'><img class='bbc_img' itemprop="image" src="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-49477300-1525609129.jpg" class='bbc_img linked-image' alt="20180505_051719.jpg" /></span></a>
<br />=&gt;Choix de la configuration,&#160;<br />=&gt;Du nombre de degr&#232;s de libert&#233;,&#160;<br />=&gt;D&#233;finition des plans de montage,&#160;<br />=&gt;Liste du mat&#233;riel pour la structure :<br />&#160;<br /><a href='http://www.robot-maker.com/forum/blog/78/entry-89-2-lelectronique-de-briel/' class='bbc_url' title=''>2) Choix de l'&#233;lectronique et c&#226;blage</a>&#160;<br />&#160;<br /><a class='resized_img' rel='lightbox[86]' id='ipb-attach-url-' href="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-80661900-1525806937.png" title="elec Briel.png - Taille : 272,56 Ko"><span rel='lightbox'><img class='bbc_img' itemprop="image" src="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-80661900-1525806937.png" class='bbc_img linked-image' alt="elec Briel.png" /></span></a>
<br />=&gt; Calcul de consommations estim&#233;<br />=&gt; Liste du mat&#233;riel<br />=&gt; Sch&#233;mas de c&#226;blage<br /><br /><a href='http://www.robot-maker.com/forum/blog/78/entry-90-3-calibration-des-servomoteurs/' class='bbc_url' title=''>3) Calibration des servomoteurs et montage d'une jambe&#160;</a><br />&#160;<br />=&gt; Code de calibration<br />=&gt; Explication de la m&#233;thode utilis&#233;e<br />=&gt; Montage de la premi&#232;re jambe<br />&#160;<br /><a class='resized_img' rel='lightbox[86]' id='ipb-attach-url-' href="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-94512900-1525608416.jpg" title="20180506_140719.jpg - Taille : 82,44 Ko"><span rel='lightbox'><img class='bbc_img' itemprop="image" src="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-94512900-1525608416.jpg" class='bbc_img linked-image' alt="20180506_140719.jpg" /></span></a>
<br /><em class='bbc'>Briel 1&#232;re jambe mont&#233;e installation de l'&#233;lectronique</em><br />&#160;<br />4) Test d'une jambe seule<br />&#160;<br /><a class='resized_img' rel='lightbox[86]' id='ipb-attach-url-' href="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-36922900-1525804989.jpg" title="20180507_211910.jpg - Taille : 57,97 Ko"><span rel='lightbox'><img class='bbc_img' itemprop="image" src="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-36922900-1525804989.jpg" class='bbc_img linked-image' alt="20180507_211910.jpg" /></span></a>
<br /><em class='bbc'>Briel sur une seule Jambe 5 DOF</em><br />&#160;<br />=&gt; Photos<br />=&gt; Vid&#233;os de d&#233;mo<br />=&gt; Premi&#232;res conclusion&#160;<br />&#160;<br />5) Test sur deux jambes&#160;<br />&#160;<br /><a class='resized_img' rel='lightbox[86]' id='ipb-attach-url-' href="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-87252400-1525805234.jpg" title="Briel.jpg - Taille : 77,63 Ko"><span rel='lightbox'><img class='bbc_img' itemprop="image" src="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-87252400-1525805234.jpg" class='bbc_img linked-image' alt="Briel.jpg" /></span></a>
<br /><em class='bbc'>Briel sur ses deux Jambes 10 DOF</em><br />&#160;<br />=&gt; Photo<br />=&gt; Vid&#233;os de d&#233;mo&#160;<br />=&gt; Nouvelles conclusions<br />&#160;<br />6) R&#233;flexions pour la suite &#224; donner<br /><a class='resized_img' rel='lightbox[86]' id='ipb-attach-url-' href="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-21211700-1527036779.jpg" title="Briel fini.jpg - Taille : 76,87 Ko"><span rel='lightbox'><img class='bbc_img' itemprop="image" src="https://www.robot-maker.com/forum/uploads/monthly_05_2018/blogentry-5864-0-21211700-1527036779.jpg" class='bbc_img linked-image' alt="Briel fini.jpg" /></span></a>
<br /><br />&#160;<br />=&gt; Etude du co&#251;t du projet<br />=&gt; Propositions d'am&#233;liorations&#160;<br />&#160;<br /><div id='attach_wrap' class='rounded clearfix'>
	<h4>Image(s) jointe(s)</h4>
	<ul>
		
			<li class=''>
				
			</li>
		

			<li class=''>
				
			</li>
		

			<li class=''>
				
			</li>
		

			<li class=''>
				
			</li>
		

			<li class=''>
				
			</li>
		
	</ul>
</div>]]></description>
		<pubDate>Sat, 05 May 2018 02:32:00 +0000</pubDate>
		<guid>http://www.robot-maker.com/forum/blog/78/entry-86-0-presentation-du-projet-briel/</guid>
	</item>
</channel>
</rss>