Obsah:
- Krok 1: Potrebné súčasti
- Krok 2: Úvod do Dynamixelu 12A
- Krok 3: Komunikácia/ovládanie Dynamixel 12A
- Krok 4: Zapísanie pozície cieľa do Dynamixel Motor
- Krok 5: KÓD PYTHONU
Video: Sériové ovládanie Dynamixelu 12A odosielaním paketov: 5 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:55
DYNAMIXEL 12A
Krok 1: Potrebné súčasti
HARDWARE:
1. Dynamixel 12A alebo akýkoľvek motor Dynamixel
2. USB na Dynamixel.
SOFTVÉR:
1. Sprievodca Robotis Dynamixel.
2. Python --- nainštalovaný sériový balík
Krok 2: Úvod do Dynamixelu 12A
Motory Dynamixel sú veľmi presné a väčšinou sa používajú v robotike. Každý motor Dynamixel má vo vnútri mikrokontrolér STM. Aktuálny krútiaci moment, napätie, odber prúdu, teplotu, polohu atď. Môžete čítať z Dynamixels Motors.
Špecifikácia Dynamixel 12A:
Prevádzkové napätie --12v
Hmotnosť-55 g
Maximálny prúd -900mA
Krútiaci moment pri státí-15,3 kg. Cm
Krok 3: Komunikácia/ovládanie Dynamixel 12A
- Dynamixel 12A nie je ako bežné servomotory, ktoré majú 3pinový GND, PWM, VCC, poskytujú napájanie a signál PWM a riadia motor.
- Motory Dynamixel môžeme ovládať pomocou komunikačného protokolu Half Duplex UART.
Čo je polovičný duplexný komunikačný protokol?
Poloduplexný prenos údajov znamená, že údaje je možné prenášať v oboch smeroch na nosiči signálu, ale nie súčasne.
Teraz sa dozvedáme o protokole 1.0 pre Dynamixels od spoločnosti Robotis na ovládanie motorov Dynamixel.
- S motormi Dynamixel môžete komunikovať odosielaním paketov z vášho prenosného počítača/mikrokontroléra, ako je Arduino, r-pi atď., Do mikrokontroléra, ktorý je prítomný vo vnútri motorov Dynamixel.
- Každý Dynamixels má ID, ktoré je možné upraviť.
- Paket nie je nič iné ako sada bajtov.
V prípade protokolu Dynamixel 1.0 budete mať dva typy paketov
- Balíky inštrukcií
- Stavové pakety
Instruction Packet sú údaje príkazu odoslané do zariadenia.
Inštrukčný balíček vyzerá takto:
Header1, Header2, ID, Length, Instruction, Param 1… Param, NChecksum
0xFF, 0xFF, ID, Dĺžka, Inštrukcia Param 1… Param, NCHKSUM
Inštrukčný bajt hovorí, čo má robiť, či čítať údaje alebo písať do motora Dynamixel.
TABUĽKA RIADENIA DYNAMIXELOVÉHO MOTORA.-Riadiaca tabuľka je štruktúra, ktorá pozostáva z viacerých dátových polí na ukladanie stavu alebo na ovládanie zariadenia.
Viac o riadiacej tabuľke si prečítajte tuControl Table Robotis.
K údajom v riadiacej tabuľke môžeme pristupovať z ich adresy a tiež môžeme písať.
Krok 4: Zapísanie pozície cieľa do Dynamixel Motor
Pozícia cieľa paketu s pokynom na zápis
každý paket začína hlavičkou
H1 H2 ID OBJEKTÍN PAMÄŤ P1 P2 P3 CKSM
0xFF, 0xFF, 0x01, 0x05, 0x04, 0x1E, 0xF4, 0x01, 0xE2
Súbor inštrukcií LEN+p1+p2+p3+súčet chk = 5 bajtov
ID = ID motora Dynamixel 1-ID dynamixelu môžete nastaviť pomocou softvéru robotis dynamixel wizard
INST = reg-špecifikujúci zápis, ktorý píšete do motora.
P1 = Počiatočná adresa údajov-v riadiacej tabuľke Cieľová pozícia má adresu 30 (0x1E v hexadecimálnom formáte).
P2 = dolný bajt údajov
P3 = vyšší bajt údajov
Výpočet kontrolného súčtu bude čoskoro vysvetlený ………………….
Ak vyššie uvedený paket odošlete do Dynamixelu sériovo pomocou USB2Dynamixel, pozícia cieľa motora Dynamixel bude nastavená na 500.
Krok 5: KÓD PYTHONU
#Vyvinuté spoločnosťou Madhu. Posledná aktualizácia 19. júla 2019
sériový import
čas importu
ser = serial. Serial ('com36', '57142')
#change com port, moja prenosová rýchlosť dynamixel motors je 57142, môžete ju nastaviť pomocou softvéru Dynamixel wizard.
zatiaľ čo (1):
gp1 = vstup ('zadajte cieľovú pozíciu ID1 (0-1023)')
l = gp1 & 255 #nízky bajt
h = (gp1 >> 8) & 255 #vysoký bajt
li = [0xff, 0xff, 0x01, 0x05, 0x04, 0x1e, l1, h1]
#kontroluj výpočet sumy
crc = suma (li [2:])
low1 = crc & 255
chksum = 255-nízky1
li.append (chksum) #pridanie kontrolného súčtu
a = bytearray (li) #konvertovanie zoznamu na bytearray
ser.write (a) #Sériové odosielanie pomocou usb2dynamixels.
čas.spánok (0,5)
#Skopírujte vloženie kódu do python IDE. Nainštalujte balík pyserial. pripojte USB stranu usb2dynamixel k USB portu prenosného počítača a ďalší koniec k motoru Dynamixel. Zabezpečte externé napájanie 12 V pre USB2DYNAMIXEL.
SPUSTITE kód, zadajte hodnotu pozície cieľa. Pozri chod motora.
Odporúča:
Ovládanie žalúzií s ESP8266, integrácia Google Home a Openhab a webové ovládanie: 5 krokov (s obrázkami)
Ovládanie žalúzií S ESP8266, integráciou Google Home a Openhab a webovým ovládaním: V tomto návode vám ukážem, ako som k svojim žalúziám pridal automatizáciu. Chcel som mať možnosť pridať a odstrániť automatizáciu, takže všetka inštalácia je nasadená. Hlavnými časťami sú: krokový motor, krokový ovládač ovládaný bij ESP-01 prevodovka a montáž
Micro: bit MU Vision Sensor - Sériové pripojenie a OLED obrazovka: 10 krokov
Mikro: bitový snímač zraku MU - sériové pripojenie a obrazovka OLED: Toto je môj tretí sprievodca senzorom zraku MU. Doteraz sme sa pokúšali rozpoznať karty s číslami a tvarmi pomocou MU, ale na preskúmanie nášho senzora MU s komplexnejším projektom by sme chceli získať lepší výkon. Nemôžeme dostať toľko informácií
Ovládanie jasu Ovládanie LED na báze PWM pomocou tlačidiel, Raspberry Pi a Scratch: 8 krokov (s obrázkami)
Ovládanie jasu Ovládanie LED na základe PWM pomocou tlačidiel, Raspberry Pi a Scratch: Snažil som sa nájsť spôsob, ako vysvetliť, ako PWM funguje u mojich študentov, a tak som si dal za úlohu pokúsiť sa ovládať jas LED pomocou dvoch tlačidiel. - jedno tlačidlo zvyšuje jas LED diódy a druhé ju stmieva. Programovať
ESP8266 RGB LED STRIP WIFI ovládanie - NODEMCU Ako IR diaľkové ovládanie pre LED pás ovládané cez Wifi - Ovládanie smartfónu RGB LED STRIP: 4 kroky
ESP8266 RGB LED STRIP WIFI ovládanie | NODEMCU Ako IR diaľkové ovládanie pre LED pás ovládané cez Wifi | Ovládanie smartfónu RGB LED STRIP: Ahoj, v tomto návode sa naučíme, ako používať nodemcu alebo esp8266 ako IR diaľkové ovládanie na ovládanie RGB LED pásu a Nodemcu budete ovládať smartfónom cez wifi. V zásade teda môžete RGB LED STRIP ovládať pomocou svojho smartfónu
Dochádzkový systém odosielaním údajov RFID na server MySQL pomocou systému Python s Arduino: 6 krokov
Dochádzkový systém odosielaním údajov RFID na server MySQL pomocou systému Python s Arduino: V tomto projekte som prepojil RFID-RC522 s arduino a potom odosielam údaje RFID do databázy phpmyadmin. Na rozdiel od našich predchádzajúcich projektov v tomto prípade nepoužívame žiadny ethernetový štít, tu práve čítame sériové údaje pochádzajúce z