Taula de continguts:
- Pas 1: components necessaris
- Pas 2: Introducció a Dynamixel 12A
- Pas 3: Comunicació / control de Dynamixel 12A
- Pas 4: escriure la posició de l'objectiu al motor Dynamixel
- Pas 5: CODI DE PITÓ
Vídeo: Control de Dynamixel 12A mitjançant l’enviament de paquets en sèrie: 5 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:11
DYNAMIXEL 12A
Pas 1: components necessaris
HARDWARE:
1. Dynamixel 12A o qualsevol motor Dynamixel
2. USB a Dynamixel.
PROGRAMARI:
1. Assistent Robotis Dynamixel.
2. Python --- Paquet sèrie instal·lat
Pas 2: Introducció a Dynamixel 12A
Els motors Dynamixel són molt precisos i s’utilitzen sobretot en robòtica. Tots els motors Dynamixel tenen microcontrolador STM al seu interior. Podeu llegir el parell de corrent, la tensió, el consum de corrent, la temperatura, la posició, etc., des de Dynamixels Motors.
Especificacions de Dynamixel 12A:
Voltatge de funcionament - 12v
Pes: 55 g
Corrent màxim -900mA
Parell de parada: 15,3 Kg.cm
Pas 3: Comunicació / control de Dynamixel 12A
- El Dynamixel 12A no és com els servomotors normals que tenen GND de 3 pins, PWM, VCC, proporcionen font d'alimentació i senyal PWM i controlen el motor.
- Podem controlar motors Dynamixel mitjançant el protocol de comunicació UART Half Duplex.
Què és el protocol de comunicació Half Duplex?
La transmissió de dades semidúplex significa que les dades es poden transmetre en ambdues direccions en un portador de senyal, però no al mateix temps.
Ara coneixem el protocol 1.0 per a Dynamixels de Robotis per controlar motors Dynamixel.
- Podeu comunicar-vos amb motors Dynamixel enviant paquets des del vostre portàtil / microcontrolador com Arduino, r-pi, etc., al microcontrolador que hi ha dins dels motors Dynamixel.
- Tots els Dynamixels tenen identificadors que es poden modificar.
- Un paquet no és més que un conjunt de bytes.
Incloent el protocol Dynamixel 1.0 tindreu dos tipus de paquets
- Paquets d’instruccions
- Paquets d'estat
El paquet d’instruccions són les dades d’ordres enviades al dispositiu.
El paquet d’instruccions té aquest aspecte:
Capçalera1, Capçalera2, ID, Longitud, Instrucció, Param 1 … Param, NChecksum
0xFF, 0xFF, ID, Longitud, Instrucció Param 1 … Param, NCHKSUM
El byte d’instrucció indica què cal fer, si cal llegir dades o escriure al motor Dynamixel.
TAULA DE CONTROL D’UN MOTOR DYNAMIXEL.-La Taula de Control és una estructura que consta de múltiples camps de dades per emmagatzemar l’estat o controlar el dispositiu.
Llegiu més sobre la taula de control HereControl Table Robotis.
Podem accedir a les dades de la taula de control des de la seva adreça i també podem escriure.
Pas 4: escriure la posició de l'objectiu al motor Dynamixel
Paquet d'instruccions per escriure la posició de l'objectiu
cada paquet comença amb una capçalera
H1 H2 ID LEN INST P1 P2 P3 CKSM
0xFF, 0xFF, 0x01, 0x05, 0x04, 0x1E, 0xF4, 0x01, 0xE2
LEN-byte d'instruccions + p1 + p2 + p3 + chk sum = 5 bytes
ID = ID de motor Dynamixel 1: podeu definir l'ID de Dynamixel mitjançant el programari de l'assistent de robotix Dynamixel
INST = reg write-especificant que escriviu al motor.
P1 = Adreça inicial de la taula de control Data-In La posició de l'objectiu té una adreça 30 (0x1E en hexadecimal).
P2 = byte de dades inferior
P3 = byte de dades més alt
En breu s’explicarà el càlcul de la suma de verificació ………………….
Si envieu el paquet anterior a Dynamixel en sèrie mitjançant USB2Dynamixel, la posició de l'objectiu del motor de Dynamixel s'establirà a 500.
Pas 5: CODI DE PITÓ
#Desenvolupat per Madhu. Darrera actualització el 2019-07-19
importació de sèrie
temps d'importació
ser = serial. Serial ('com36', '57142')
#change com port en conseqüència, la velocitat de transmissió dels motors Dynamixel és de 57142, podeu configurar-lo mitjançant el programari de l'assistent Dynamixel.
mentre (1):
gp1 = input ('introduïu la posició de l'objectiu ID1 (0-1023)')
l = gp1 i 255 # octet baix
h = (gp1 >> 8) i 255 # octet alt
li = [0xff, 0xff, 0x01, 0x05, 0x04, 0x1e, l1, h1]
#check càlcul de la suma
crc = suma (li [2:])
baix1 = crc i 255
chksum = 255-baix1
li.append (chksum) #adding check sum
a = bytearray (li) #converting list in bytearray
ser.write (a) # Enviament en sèrie mitjançant usb2dynamixels.
time.sleep (0,5)
#Copieu el codi enganxat a IDE de python. Instal·leu el paquet pyserial. connecteu el costat USB d'usb2dynamixel al port USB del portàtil i un altre extrem al motor Dynamixel. Doneu un subministrament extern de 12v a USB2DYNAMIXEL.
EXECUTEU el codi i introduïu el valor de la posició de l'objectiu. Veure motor en marxa.
Recomanat:
Enviament de dades de sensors de vibració i temperatura sense fils a Excel mitjançant Node-RED: 25 passos
Enviament de dades de sensors de vibració i temperatura sense fils a Excel mitjançant Node-RED: introduïm el sensor de temperatura i vibració sense fils IoT Industrial de llarg abast de NCD, que ofereix fins a una distància de 2 milles l’ús d’una estructura de xarxa de malla sense fils. Aquest dispositiu incorpora un sensor de precisió de vibració i temperatura de 16 bits
Enviament de dades de vibració i temperatura sense fils a Fulls de càlcul de Google mitjançant Node-RED: 37 passos
Enviament de dades de vibració i temperatura sense fils a Fulls de càlcul de Google mitjançant Node-RED: presentació del sensor de temperatura i vibració sense fils IoT Industrial de llarg abast de NCD, que ofereix fins a una distància de 2 milles l’ús d’una estructura de xarxa de malla sense fils. Aquest dispositiu incorpora un sensor de precisió de vibració i temperatura de 16 bits
Bot d'enviament de correu mitjançant Python: 5 passos
Bot d'enviament de correu mitjançant Python: en aquest projecte aprendreu a enviar correus mitjançant python. Aquí he demostrat un projecte que es pot utilitzar per saber si teniu prou assistència per deixar un permís del collage / escola o no. percentatge mínim suposat d’atenció
Lifi (enviament de senyal analògic de música mitjançant led): 4 passos
Lifi (Enviament de senyal analògic de música mitjançant led): ADVERTÈNCIA - *** Disculpeu si és totalment il·legible, és el meu primer inescrutable, així que sigueu amable, lol *** _ Introducció: Durant els darrers anys hi ha hagut un ràpid creixement a la utilització de la regió de RF de l’espectre electromagnètic. Això és perquè
Encapsulació del motor servo pas amb control sèrie mitjançant Arduino mitjançant una impressora 3D - Pt4: 8 passos
Encapsulació del servomotor Step amb control serial mitjançant Arduino mitjançant una impressora 3D - Pt4: en aquest quart vídeo de la sèrie Motor Step, farem servir el que hem après anteriorment per construir un servomotor pas a pas amb control via comunicació serial i real retroalimentació de la posició mitjançant un codificador resistiu monitoritzat per un Arduino. A