Obsah:
- Krok 1: Požadované součásti
- Krok 2: Úvod do Dynamixel 12A
- Krok 3: Komunikace/ovládání Dynamixel 12A
- Krok 4: Zápis pozice cíle do Dynamixel Motor
- Krok 5: KÓD PYTHONU
Video: Řízení Dynamixel 12A sériovým odesíláním paketů: 5 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:18
DYNAMIXEL 12A
Krok 1: Požadované součásti
HARDWARE:
1. Dynamixel 12A nebo jakýkoli motor Dynamixel
2. USB na Dynamixel.
SOFTWARE:
1. Průvodce Robotis Dynamixel.
2. Python --- Sériový balíček nainstalován
Krok 2: Úvod do Dynamixel 12A
Motory Dynamixel jsou vysoce přesné a většinou se používají v robotice. Každý motor Dynamixel má uvnitř mikrokontrolér STM. Aktuální moment, napětí, odběr proudu, teplotu, polohu atd. Můžete číst z Dynamixels Motors.
Specifikace Dynamixel 12A:
Provozní napětí --12v
Hmotnost-55 g
Maximální proud -900mA
Utahovací moment-15,3 kg. Cm
Krok 3: Komunikace/ovládání Dynamixel 12A
- Dynamixel 12A není jako normální servomotory, které mají 3pin GND, PWM, VCC, poskytují napájení a signál PWM a ovládají motor.
- Motory Dynamixel můžeme ovládat pomocí komunikačního protokolu Half Duplex UART.
Co je poloviční duplexní komunikační protokol?
Half-duplexní přenos dat znamená, že data mohou být přenášena v obou směrech na nosiči signálu, ale ne současně.
Nyní se dozvídáme o protokolu 1.0 pro Dynamixels od Robotis k ovládání motorů Dynamixel.
- S motory Dynamixel můžete komunikovat zasíláním paketů z vašeho notebooku/mikrokontroléru, jako je Arduino, r-pi atd., Do mikrokontroléru, který je přítomen uvnitř motorů Dynamixel.
- Každý Dynamixels má ID, která lze upravit.
- Paket není nic jiného než sada bajtů.
V případě protokolu Dynamixel 1.0 budete mít dva typy paketů
- Instrukční balíčky
- Stavové pakety
Instruction Packet jsou příkazová data odeslaná do zařízení.
Instrukční balíček vypadá takto:
Header1, Header2, ID, Length, Instruction, Param 1… Param, NChecksum
0xFF, 0xFF, ID, délka, instrukce Param 1… Param, NCHKSUM
Instrukční bajt říká, co dělat, zda číst data nebo zapisovat do motoru Dynamixel.
ŘÍDÍCÍ TABULKA DYNAMIXELOVÉHO MOTORU.-Kontrolní tabulka je struktura, která se skládá z více datových polí pro ukládání stavu nebo ovládání zařízení.
Přečtěte si více o řídicí tabulce zdeControl Table Robotis.
Můžeme přistupovat k datům v řídicí tabulce z její adresy a také můžeme psát.
Krok 4: Zápis pozice cíle do Dynamixel Motor
Instrukční balíček pro zápis pozice cíle
každý paket začíná záhlavím
H1 H2 ID LEN INST P1 P2 P3 CKSM
0xFF, 0xFF, 0x01, 0x05, 0x04, 0x1E, 0xF4, 0x01, 0xE2
LEN instrukční byte+p1+p2+p3+součet chk = 5 bytů
ID = ID motoru Dynamixel 1-ID dynamxelu můžete nastavit pomocí softwaru robotis dynamixel wizard
INST = reg zápis specifikující, že píšete do motoru.
P1 = Počáteční adresa Data-V řídicí tabulce Cílová pozice má adresu 30 (0x1E v hexadecimálním).
P2 = dolní bajt dat
P3 = vyšší byte dat
Výpočet kontrolního součtu bude brzy vysvětlen ………………….
Pokud odešlete výše uvedený paket do Dynamixelu sériově pomocí USB2Dynamixel, pozice cíle motoru Dynamixel bude nastavena na 500.
Krok 5: KÓD PYTHONU
#Vyvinuto společností Madhu. Poslední aktualizace 19. 7. 2019
importovat sériově
čas importu
ser = serial. Serial ('com36', '57142')
#change com port odpovídajícím způsobem, moje přenosová rychlost dynamixel motors je 57142, můžete ji nastavit pomocí softwaru Dynamixel wizard.
zatímco (1):
gp1 = vstup ('zadejte pozici cíle ID1 (0-1023)')
l = gp1 & 255 #nízký bajt
h = (gp1 >> 8) & 255 #vysoký bajt
li = [0xff, 0xff, 0x01, 0x05, 0x04, 0x1e, l1, h1]
#zkontrolovat výpočet částky
crc = součet (li [2:])
low1 = crc & 255
chksum = 255-low1
li.append (chksum) #přidání kontrolního součtu
a = bytearray (li) #konvertování seznamu na bytearray
ser.write (a) #Sériové odesílání pomocí usb2dynamixels.
time.sleep (0,5)
#Zkopírujte vložený kód do python IDE. Nainstalujte balíček pyserial. připojte USB stranu usb2dynamixel k USB portu notebooku a další konec k motoru Dynamixel. Poskytněte USB2DYNAMIXEL externí napájecí zdroj 12 V.
SPUŠTĚTE kód, zadejte hodnotu pozice cíle. Viz běh motoru.
Doporučuje:
Oprava problému se sériovým portem/ovladačem Mac Lilypad USB: 10 kroků (s obrázky)
Oprava problému se sériovým portem/ovladačem Mac Lilypad USB: Je váš Mac od roku 2016 mladší než 2 roky? Nedávno jste upgradovali na nejnovější operační systém (Yosemite nebo cokoli novějšího)? Vaše USB/MP3 Lilypad již nefungují? Moje tutoriál vám ukáže, jak jsem opravil USB Lilypad. Chyba, na kterou jsem narazil, souvisela
Samostatné hodiny Arduino 3,3 W / externí 8 MHz programované z Arduino Uno prostřednictvím ICSP / ISP (se sériovým monitorováním!): 4 kroky
Samostatné hodiny Arduino 3,3 W / externí 8 MHz programované z Arduino Uno prostřednictvím ICSP / ISP (se sériovým monitorováním!): Cíle: Vybudovat samostatné Arduino, které běží na 3,3 V z externích hodin 8 MHz. Programovat jej prostřednictvím ISP (také známý jako ICSP, sériové programování v obvodu) z Arduino Uno (běží na 5V) Upravit soubor zavaděče a vypálit
Docházkový systém odesíláním dat RFID na server MySQL pomocí Pythonu s Arduino: 6 kroků
Docházkový systém odesíláním dat RFID na server MySQL pomocí Pythonu s Arduino: V tomto projektu jsem propojil RFID-RC522 s arduino a poté posílám data RFID do databáze phpmyadmin. Na rozdíl od našich předchozích projektů v tomto případě nepoužíváme žádný ethernetový štít, zde pouze čteme sériová data pocházející z
Zapouzdření krokového servomotoru se sériovým ovládáním přes Arduino pomocí 3D tiskárny - Pt4: 8 kroků
Zapouzdření krokového servomotoru pomocí sériového ovládání přes Arduino pomocí 3D tiskárny - Pt4: V tomto čtvrtém videu ze série Motor Step použijeme to, co jsme se dříve naučili, k vytvoření krokového servomotoru s ovládáním přes sériovou komunikaci a skutečným polohová zpětná vazba pomocí odporového kodéru monitorovaného Arduinem. V
LEVNÝ A SNADNÝ PICAXE ROBOT BOARD SE SÉRIOVÝM KABELEM: 12 kroků (s obrázky)
LEVNÝ A SNADNÝ PICAXE ROBOT BOARD SE SÉRIOVÝM KABELEM: Zde je návod, jak sestavit snadný, jednoduchý a levný PICAXE BOARD pro ovládání SUMO ROBOTU nebo pro použití na libovolném počtu dalších projektů PICAXE 18M2+