Table des matières:
- Étape 1: Composants requis
- Étape 2: Présentation du Dynamixel 12A
- Étape 3: Communiquer/contrôler Dynamixel 12A
- Étape 4: Écriture de la position de l'objectif sur le moteur Dynamixel
- Étape 5: CODE PYTHON
Vidéo: Contrôler le Dynamixel 12A en envoyant des paquets en série : 5 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:05
DYNAMIXEL 12A
Étape 1: Composants requis
MATÉRIEL:
1. Dynamixel 12A ou n'importe quel moteur Dynamixel
2. USB vers Dynamixel.
LOGICIEL:
1. Assistant Robotis Dynamixel.
2. Python --- Paquet série installé
Étape 2: Présentation du Dynamixel 12A
Les moteurs Dynamixel sont très précis et principalement utilisés en robotique. Chaque moteur Dynamixel a un microcontrôleur STM à l'intérieur. Vous pouvez lire le couple actuel, la tension, l'appel de courant, la température, la position, etc., à partir de Dynamixels Motors.
Spécifications du Dynamixel 12A:
Tension de fonctionnement --12v
Poids-55g
Courant maximum --900mA
Couple de décrochage - 15,3 Kg.cm
Étape 3: Communiquer/contrôler Dynamixel 12A
- Dynamixel 12A n'est pas comme les servomoteurs normaux qui ont 3 broches GND, PWM, VCC, fournissent une alimentation et un signal PWM et contrôlent le moteur.
- Nous pouvons contrôler les moteurs Dynamixel en utilisant le protocole de communication Half Duplex UART.
Qu'est-ce que le protocole de communication semi-duplex ?
La transmission de données en semi-duplex signifie que les données peuvent être transmises dans les deux sens sur un support de signal, mais pas en même temps.
Maintenant, nous découvrons le protocole 1.0 pour Dynamixels de Robotis pour contrôler les moteurs Dynamixel.
- Vous pouvez communiquer avec les moteurs Dynamixel en envoyant des paquets depuis votre ordinateur portable/microcontrôleur comme Arduino, r-pi, etc., vers le microcontrôleur présent à l'intérieur des moteurs Dynamixel.
- Tous les Dynamixels ont des identifiants qui peuvent être modifiés.
- Un paquet n'est rien d'autre qu'un ensemble d'octets.
Dans le cas du protocole Dynamixel 1.0, vous aurez deux types de paquets
- Paquets d'instructions
- Paquets d'état
Le paquet d'instructions correspond aux données de commande envoyées à l'appareil.
Le paquet d'instructions ressemble à ceci:
En-tête1, En-tête2, ID, Longueur, Instruction, Param 1…Param, NChecksum
0xFF, 0xFF, ID, Longueur, Instruction Param 1…Param, NCHKSUM
L'octet d'instruction indique quoi faire, s'il faut lire les données ou écrire sur le moteur Dynamixel.
TABLE DE CONTRLE D'UN MOTEUR DYNAMIXEL.-La table de contrôle est une structure composée de plusieurs champs de données pour stocker l'état ou contrôler l'appareil.
En savoir plus sur la table de contrôle HereControl Table Robotis.
Nous pouvons accéder aux données de la table de contrôle à partir de son adresse et nous pouvons également écrire.
Étape 4: Écriture de la position de l'objectif sur le moteur Dynamixel
Paquet d'instructions pour écrire la position de l'objectif
chaque paquet commence par un en-tête
H1 H2 ID LEN INST P1 P2 P3 CKSM
0xFF, 0xFF, 0x01, 0x05, 0x04, 0x1E, 0xF4, 0x01, 0xE2
Octet d'instruction LEN+p1+p2+p3+chk sum=5 octets
ID = ID du moteur Dynamixel 1 - vous pouvez définir l'ID dynamixel à l'aide du logiciel assistant robotis dynamixel
INST=reg write-spécifiant que vous écrivez sur le moteur.
P1=Adresse de départ du Data-In de la table de contrôle La position de l'objectif a une adresse 30 (0x1E en hexadécimal).
P2=octet inférieur de données
P3=octet de données supérieur
Le calcul de la somme de contrôle sera expliqué sous peu………………….
Si vous envoyez le paquet ci-dessus à Dynamixel en série en utilisant USB2Dynamixel, la position d'objectif du moteur Dynamixel sera définie sur 500.
Étape 5: CODE PYTHON
#Développé par Madhu. Dernière mise à jour le 2019-07-19
importer la série
heure d'importation
ser=serial. Serial('com36', '57142')
#changez le port com en conséquence, le débit en bauds de mes moteurs dynamixel est de 57142, vous pouvez le définir à l'aide du logiciel assistant Dynamixel.
tandis que(1):
gp1=input('entrez la position de l'objectif ID1 (0-1023)')
l=gp1&255 #octet bas
h=(gp1>>8)&255 #octet de poids fort
li=[0xff, 0xff, 0x01, 0x05, 0x04, 0x1e, l1, h1]
#calcul de la somme de contrôle
crc=somme(li[2:])
bas1=crc & 255
chksum=255-low1
li.append(chksum) #ajout d'une somme de contrôle
a=bytearray(li) #conversion de la liste en bytearray
ser.write(a) #Envoyer en série en utilisant usb2dynamixels.
temps.sommeil (0,5)
#Copiez le code coller dans python IDE. Installez le paquet pyserial. connectez le côté USB d'usb2dynamixel au port USB de l'ordinateur portable et une autre extrémité au moteur Dynamixel. Donnez une alimentation externe 12v à USB2DYNAMIXEL.
Exécutez le code, entrez la valeur de la position de l'objectif. Voir moteur en marche.
Conseillé:
E-dés - Arduino Die/dés 1 à 6 dés + D4, D5, D8, D10, D12, D20, D24 et D30 : 6 étapes (avec photos)
E-dice - Arduino Die/dice 1 à 6 Dice + D4, D5, D8, D10, D12, D20, D24 et D30 : Il s'agit d'un projet arduino simple pour faire un dé électronique. Il est possible de choisir entre 1 à 6 dés ou 1 sur 8 dés spéciaux. Le choix se fait par simple rotation d'un encodeur rotatif. Voici les caractéristiques : 1 dé : montrant les gros points 2 à 6 dés : montrant les points
Système de présence en envoyant des données RFID au serveur MySQL à l'aide de Python avec Arduino : 6 étapes
Système de présence en envoyant des données RFID au serveur MySQL à l'aide de Python avec Arduino: Dans ce projet, j'ai interfacé RFID-RC522 avec arduino, puis j'envoie des données RFID à la base de données phpmyadmin. Contrairement à nos projets précédents, nous n'utilisons aucun bouclier Ethernet dans ce cas, ici nous lisons simplement les données série provenant d'ar
Bricolage d'une sirène de raid aérien avec des résistances, des condensateurs et des transistors : 6 étapes (avec photos)
Bricolage d'une sirène Air Raid avec des résistances, des condensateurs et des transistors: Ce projet de bricolage Air Raid Siren abordable convient à la recherche d'un circuit d'auto-oscillation composé uniquement de résistances, de condensateurs et de transistors qui peuvent enrichir vos connaissances. Et il convient à l'éducation à la défense nationale pour les enfants, en
Comment démonter un ordinateur avec des étapes et des images faciles : 13 étapes (avec des images)
Comment démonter un ordinateur avec des étapes et des images faciles : Il s'agit d'instructions sur la façon de démonter un PC. La plupart des composants de base sont modulaires et facilement démontables. Cependant, il est important que vous soyez organisé à ce sujet. Cela vous aidera à éviter de perdre des pièces, et aussi à faire le remontage ea
Utilisez des sorts pour contrôler votre ordinateur ! : 7 étapes (avec des images)
Utilisez des sorts pour contrôler votre ordinateur ! : Vous avez toujours voulu utiliser des sorts comme Harry Potter ? Avec un peu de travail et un peu de reconnaissance vocale, cela peut être maîtrisé. Choses dont vous avez besoin pour ce projet : Un ordinateur avec Windows XP ou Vista Un microphone Un peu de temps et de patience ! Si vous avez apprécié ce Instructabl