Aller au contenu


Information tutoriel

  • Ajouté le: juin 16 2010 06:49
  • Date Updated: nov. 19 2012 10:45
  • Lectures: 5951
 


* * * * *
0 Notes

Transformer un servomoteur en capteur de position

Posté par Guest_Invité_* on juin 16 2010 06:49
Étant donné qu'un servomoteur contient un asservissement de position à l'intérieur de lui, il était donc logique que l'on puisse lire cette position même depuis l'extérieur.

Voici comment récupérer la position de votre servomoteur en ne soudant uniquement qu'un fil.

- Tout d'abord, ouvrez votre servomoteur (En général il y a 4 vis a enlever au dos du servo)
- Ensuite, soudez le fil comme mentionné sur cette image :
(Il faut souder sur le point du milieu)

Image IPB

C'est un peu diffèrent sur les servo HITEC, par exemple sur un HS-422 il faut enlever la petite carte a l'intérieur du servomoteur et souder sur l'autre face :

Image IPB

Vous pouvez ensuite proprement remettre la petite carte en place :

Image IPB

Une fois la soudure faite, il ne vous reste plus qu'a connecter le fil sur votre entrée analogique préférée ;-)
La tension de sortie sera proportionnelle à la position du servo-moteur.

Par exemple dans un de mes projets, j'ai connecté la sortie du servomoteur à l'entrée analogique de la carte SSC-32.

Vous pouvez voir sur l'image ci-dessous les 4 ports ADC de la carte SSC-32 entourés en rouge. (A,B,C,D)

Image IPB

Après il suffit d'envoyer au SSC-32 les commandes du type : "VA <cr>" ce qui renvoi la valeur lue sur l'entrée analogique.
Etant donné qu'il y a 4 entrées analogiques, vous pouvez utiliser les commandes "VA VB VC VD" au choix.

Voici un exemple de lecture en JAVA, mais qui pourrait être utilisé dans n'importe quel langage :
Code : Java
/* Read VA */
serialcom.writeByte((byte)'V');
serialcom.writeByte((byte)'A');
serialcom.writeByte((byte)13);
 
va = serialcom.readByte();
System.out.println("VA = " + va);

Vous pouvez maintenant utiliser vos servomoteurs à la fois comme moteurs, mais aussi comme capteur de position.