Aller au contenu


Jekert

Inscrit(e) (le) 08 mars 2016
Déconnecté Dernière activité mars 25 2024 02:46
-----

#71241 Driver I2C 16 servomoteurs [testé par Jekert]

Posté par Jekert - 18 juin 2016 - 05:52

Salut,
J'ai commencé à toucher au driver 16 servos compris dans le kit pour robot quadrupède, donc voici le fil dédié au test de celui-ci.
 

6 - Driver.JPG

 
Donc le driver ressemble à ceci, il permet à une carte Arduino de contrôler jusqu'à 16 servomoteurs avec 2 broches de la carte. De plus on peut mettre plusieurs drivers en série (62 au maximum) et ainsi contrôler jusqu'à 992 servos avec seulement 2 sorties !
 
J'ai fait un petit montage afin de tester son fonctionnement ainsi que celui de la bibliothèque Adafruit_PWMServoDriver.h :

27 - Driver.jpg

 
Avec ce programme-ci, qui est une adaptation pour le driver du programme d'exemple de la bibliothèque Servo.h (je trouve qu'il est plus compréhensible que celui fourni avec la bibliothèque d'Adafruit) :

//Bibliothèques :
#include <Wire.h>
#include <Adafruit_PWMServoDriver.h>

//Driver :
Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver();

//Servos :
#define SERVOMIN 105 //Longueur minimum d'impulsion
#define SERVOMAX 460 //Longueur maximum d'impulsion
#define NBSERVO 0    //Nombre de servos-1
#define PAUSE 10
uint8_t servonum = 0;
int pos = 0;


void setup() 
{
  pwm.begin();

  pwm.setPWMFreq(50); //Fréquence utilisée par les servos analogiques

  yield();
}

void loop() 
{
   for (pos = SERVOMIN; pos <= SERVOMAX; pos++)
  //Rejoins un angle de 180° depuis 0° par pas de 1°
  {
    pwm.setPWM(servonum,0,pos);
    delay(PAUSE);
  }
  delay(2000);
  for (pos = SERVOMAX; pos >= SERVOMIN; pos--)
  //Rejoins un angle de 0° depuis 180° par pas de 1°
  {
    pwm.setPWM(servonum,0,pos);
    delay(PAUSE);
  }
  delay(2000);
  servonum++;
  if (servonum > NBSERVO) servonum = 0; 
}

Et voici une petite vidéo du programme en fonctionnement avec un servo (je la referais sûrement à cause de la mise au point) :

 
A bientôt ! :)




#71190 Servo SG90 de Tower Pro - 1.6kg.cm

Posté par Jekert - 16 juin 2016 - 10:51

D'après les tests que j'avais pu faire, un servomoteur consomme aux alentours de 70mA sans charges, ainsi qu'un maximum d'environ 250mA lorsqu'il est contraint. Je n'ai pas essayé d'aller plus loin afin de ne pas l'endommager mais pour le test je pense partir sur une intensité max 30% supérieur à celle mesurée (cas le plus défavorable + marge de sécurité) c'est-à-dire aux alentours 325mA. (si vous trouvez la marge trop ou pas assez élevée, n'hésitez pas à me le faire remarquer)
Une petite vidéo du test (pas très conventionnel, désolé):

  • Jan aime ceci


#70917 Arduino Nano [testée par Jekert]

Posté par Jekert - 07 juin 2016 - 10:06

Salut !

:13:

 
Ce fil sera dédié au test de la carte Arduino Nano disponible dans la boutique et notamment utilisable avec le kit pour robot quadrupède.

 

Description:
 
L'Arduino Nano est une carte créée afin de miniaturiser les systèmes à bases d'Arduino et ainsi de les rendre plus légers, ce qui est très pratique en robotique lorsque l'on travaille dans un espace restreint et où le poids peut être un des ennemis du Maker :) L'Arduino Nano mesure 45*18 mm et pèse environ 5g. De plus, elle possède la même puissance de calcul qu'une UNO et possède 2 pins analogiques supplémentaires (A6 et A7) et peut fournir 40 mA et 5V par pin digital.

2 - Ardunio Nano.JPG

9 - Nano 1e.JPG

 

Comparaison avec l'Arduino Uno :

10 - Comp Arduino.JPG

 

Et la Mega :

11 - Comp Arduino.JPG

 
Avant de commencer :

Comme vous avez pu le remarquer, l'Arduino Nano arrive sans les pins soudés à la carte, il vous faudra donc souder chaque pin à la carte afin de s'assurer que tous les pins sont en contact avec la carte . Les soudures se font plutôt facilement, il suffit de faire attention à souder chaque pin sans que les soudures se touchent. N'hésitez pas à utiliser une troisième main et de quoi retirer les soudures maladroites (tresse ou pompe à dessouder).
 

12 - Soudure Nano 1.JPG

13 - Soudure Nano 2.JPG

14 - Soudure Nano 3.JPG


Pour connecter la carte à votre PC, il vous faudra un câble MiniUSB qui ressemble à ceci:
 

15 - Cable miniUSB.JPG
 

Il n'est pas fournis avec la carte mais c'est un type de connecteur répandu, vous n'aurez aucun mal à en trouver un chez vous, ou dans le commerce si nécessaire.

 

Vérifier les soudures :

N'étant pas encore très à l'aise avec la soudure, j'ai préféré vérifier que toutes les sorties digitales fonctionnent correctement. Pour cela j'ai fait ce petit montage:

 

18 - Nano test sortie.JPG
19 - Nano test sortie.JPG
 

Il permet de tester chaque sortie digitale, de D2 à D13, avec quelques fils, une breadboard, une résistance et une led. Chaque sortie va émettre une tension de 5V 2 fois de suite pendant 1 seconde puis s'éteindre pendant une seconde. Il faudra donc que vous déplaciez l'extrémité du fil orange de droite à gauche.

Voici le programme du montage :

// Pins :
int led2 = 2;
int led3 = 3;
int led4 = 4;
int led5 = 5;
int led6 = 6;
int led7 = 7;
int led8 = 8;
int led9 = 9;
int led10 = 10;
int led11 = 11;
int led12 = 12;
int led13 = 13;

//Variables :
int a = 0;
int pin = 0;
int liste[] = {led2, led3, led4, led5, led6, led7, led8, led9, led10, led11, led12, led13};

void setup() {

  //Déclarations :
  pinMode(led2, OUTPUT);
  pinMode(led3, OUTPUT);
  pinMode(led4, OUTPUT);
  pinMode(led5, OUTPUT);
  pinMode(led6, OUTPUT);
  pinMode(led7, OUTPUT);
  pinMode(led8, OUTPUT);
  pinMode(led9, OUTPUT);
  pinMode(led10, OUTPUT);
  pinMode(led11, OUTPUT);
  pinMode(led12, OUTPUT);
  pinMode(led13, OUTPUT);
}

void loop() {
  
pin = liste [a];

if (a<11){
a++;
}
else{
  a = 0;
}

digitalWrite(pin, HIGH);
delay(1000);
digitalWrite(pin, LOW);
delay(1000);
digitalWrite(pin, HIGH);
delay(1000);
digitalWrite(pin, LOW);
delay(1000);

}

Voilà pour le début de mon test sur la carte Arduino Nano. J'ajouterais des détails sur le dernier montage prochainement.

 

A bientôt pour la suite :)

 

N'hésitez pas à poster vos questions, conseils ou commentaires ;)




#70802 Kit Robot Quadrupède [testé par Jekert]

Posté par Jekert - 05 juin 2016 - 04:02

Salut !

Je crée ce fil afin de vous présenter le kit robot quadrupède dont j'ai la chance de faire le test.

Le kit comporte donc :

Bref, il vous suffira d'ajouter une source d'alimentation d'une tension comprise entre 6 et 35V, un petit peu de patience et votre quadrupède sera prêt.

Ce fil sera consacré au kit en lui-même, si vous souhaitez plus d'informations sur l'un de ces produits en particulier, il y aura un fil différent pour chacun d'eux.

Et voici mon calendrier prévisionnel comportant les dates limites de chacune des étapes du test que je m'efforcerais de respecter :

  • [FAIT] Étape 0 (02/6): Réception du colis
  • [FAIT] Étape 1 (12/6): Présentation du colis + Arduino Nano
  • [FAIT] Étape 2 (17/6): Test des servomoteurs 9g
  • [FAIT] Étape 3 (22/6): Test du driver 16 servos
  • [FAIT] Étape 4 (26/6): Test du convertisseur 5V
  • [EN COURS] Étape 5 (03/7): Assemblage du kit et des servomoteurs
  • [EN ATTENTE] Étape 6 (09/7): Premiers pas du robot
  • [EN ATTENTE] Étape 7 (13/7): Fin de la rédaction du tutoriel

Les fils seront créés au fur et à mesure que le test progresse.

Si vous avez des questions, des conseils n'hésitez pas :)

Le déballage :
L'ayant reçu jeudi, voici une petite vidéo du déballage du colis :

 

 

Le colis fait environ 20*15*16 cm et pèse 690g.
Chaque élément est emballé dans une pochette plastique et/ou plusieurs couches de papier bulle sauf pour les fils et l'interrupteur. Et une fois que tout est déballé :

 

blogentry-9502-0-83900300-1464987629.jpg

 


À bientôt pour la suite du test !