Съдържание:
- Стъпка 1: Необходими компоненти
- Стъпка 2: Въведение в Dynamixel 12A
- Стъпка 3: Комуникация/управление на Dynamixel 12A
- Стъпка 4: Записване на целева позиция в Dynamixel Motor
- Стъпка 5: ПИТОН КОД
Видео: Управление на Dynamixel 12A чрез последователно изпращане на пакети: 5 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:50
ДИНАМИКСЕЛ 12А
Стъпка 1: Необходими компоненти
Хардуер:
1. Динамикал 12А или всеки двигател на Динамиксел
2. USB към Dynamixel.
СОФТУЕР:
1. Съветник Robotis Dynamixel.
2. Python --- Инсталиран сериен пакет
Стъпка 2: Въведение в Dynamixel 12A
Двигателите Dynamixel са много прецизни и се използват най -вече в роботиката. Всеки двигател Dynamixel има STM микроконтролер вътре. Можете да прочетете текущия въртящ момент, напрежението, изтеглянето на тока, температурата, позицията и т.н. от Dynamixels Motors.
Спецификации на Dynamixel 12A:
Работно напрежение -12v
Тегло-55гр
Максимален ток -900 mA
Затягащ момент-15,3 кг
Стъпка 3: Комуникация/управление на Dynamixel 12A
- Dynamixel 12A не е като нормалните серво мотори, които имат 3pin GND, PWM, VCC, дават захранване и PWM сигнал и управляват двигателя.
- Можем да контролираме двигателите Dynamixel, използвайки Half Duplex UART комуникационен протокол.
Какво представлява полудуплексният комуникационен протокол?
Полудуплексното предаване на данни означава, че данните могат да се предават в двете посоки по носител на сигнал, но не едновременно.
Сега научаваме за Протокол 1.0 за Dynamixels от Robotis за управление на Dynamixel двигатели.
- Можете да комуникирате с двигатели Dynamixel, като изпращате пакети от вашия лаптоп/микроконтролер като Arduino, r-pi и т.н., към микроконтролера, който присъства в двигателите Dynamixel.
- Всеки Dynamixels има идентификационни номера, които могат да се променят.
- Пакетът не е нищо друго освен набор от байтове.
В случай на Dynamixel протокол 1.0 ще имате два вида пакети
- Пакети с инструкции
- Пакети на състоянието
Инструкционен пакет е командната информация, изпратена до Устройството.
Пакетът с инструкции изглежда така:
Header1, Header2, ID, Length, Instruction, Param 1… Param, NChecksum
0xFF, 0xFF, ID, дължина, инструкция Param 1… Param, NCHKSUM
Инструкционният байт казва какво да правите, дали да четете данни или да пишете на двигателя Dynamixel.
КОНТРОЛНА ТАБЛИЦА НА ДИНАМИКСЕЛЕН ДВИГАТЕЛ.-Таблицата за управление е структура, която се състои от множество полета с данни за съхраняване на състоянието или за управление на устройството.
Прочетете повече за контролната таблица тук Контролна таблица Robotis.
Можем да осъществяваме достъп до данните в контролната таблица от нейния адрес и също така можем да пишем.
Стъпка 4: Записване на целева позиция в Dynamixel Motor
Пакет с инструкции за запис на целева позиция
всеки пакет започва със заглавка
H1 H2 ID LEN INST P1 P2 P3 CKSM
0xFF, 0xFF, 0x01, 0x05, 0x04, 0x1E, 0xF4, 0x01, 0xE2
LEN-инструкция байт+p1+p2+p3+chk сума = 5 байта
ID = Идентификатор на Dynamixel двигател 1-можете да зададете идентификатор на Dynamixel с помощта на софтуер за съветник за Dynamisxel Wizard
INST = reg запис, посочващ, че пишете на двигателя.
P1 = Начален адрес на Data-In контролната таблица Целевата позиция е с адрес 30 (0x1E в шестнадесетичен код).
P2 = по -нисък байт данни
P3 = по -висок байт данни
Изчислението на контролната сума ще бъде обяснено скоро ………………….
Ако изпратите горния пакет към Dynamixel Serially чрез USB2Dynamixel, целта на двигателя на Dynamixel ще бъде зададена на 500.
Стъпка 5: ПИТОН КОД
#Разработен от Мадху. Последна актуализация на 2019-07-19
импортиране на сериен
време за импортиране
ser = serial. Serial ('com36', '57142')
#съответно променете com порта, скоростта на предаване на моите динамични мотори е 57142, можете да я настроите с помощта на софтуера на съветника Dynamixel.
докато (1):
gp1 = вход ('въведете целева позиция ID1 (0-1023)')
l = gp1 & 255 #нисък байт
h = (gp1 >> 8) & 255 #висок байт
li = [0xff, 0xff, 0x01, 0x05, 0x04, 0x1e, l1, h1]
#проверете изчислението на сумата
crc = сума (li [2:])
ниско1 = crc & 255
chksum = 255-ниско1
li.append (chksum) #добавяне на контролна сума
a = bytearray (li) #конвертиране на списък в bytearray
ser.write (a) #Серийно изпращане с помощта на usb2dynamixels.
time.sleep (0.5)
#Копирайте кодовата паста в python IDE. Инсталирайте pyserial пакет. свържете USB страната на usb2dynamixel към USB порта на лаптопа и друг край към двигателя Dynamixel. Дайте външно 12v захранване на USB2DYNAMIXEL.
Пуснете кода, въведете стойността на позицията на целта. Вижте работещия двигател.
Препоръчано:
Как да използвате SIM800L за изпращане на SMS и контролно реле чрез SMS: 3 стъпки
Как да използвате SIM800L за изпращане на SMS и контролно реле чрез SMS: Описание: Този урок показва как да използвате SIM800L за изпращане на sms и получаване на sms за управление на релето. Модулът SIM800L е малък по размер и може да се използва за взаимодействие с Arduino за изпращане на sms, получаване на sms, обаждане, получаване на повикване и др. В този урок
Lifi (Изпращане на музикален аналогов сигнал чрез светодиод): 4 стъпки
Lifi (Изпратете музикален аналогов сигнал чрез светодиод): ПРЕДУПРЕЖДЕНИЕ !!!-*** Съжалявам, ако това е напълно нечетливо, това е първият ми неразбираем, така че бъдете любезни *** _ Въведение: През последните няколко години има бърз растеж в използването на радиочестотната област на електромагнитния спектър. Това е защото
Система за присъствие чрез изпращане на RFID данни към MySQL сървъра с помощта на Python с Arduino: 6 стъпки
Система за присъствие чрез изпращане на RFID данни към MySQL сървъра, използвайки Python с Arduino: В този проект аз се свързах с RFID-RC522 с arduino и след това изпращам данни от RFID до базата данни phpmyadmin. За разлика от предишните ни проекти, в този случай не използваме никакъв Ethernet щит, тук просто четем серийните данни, идващи от ar
Домашна автоматизация: Автоматична комутационна платка с управление на димера чрез Bluetooth чрез Tiva TM4C123G: 7 стъпки
Домашна автоматизация: Автоматична комутационна платка с управление на димера чрез Bluetooth чрез Tiva TM4C123G: В днешно време имаме дистанционни управления за нашите телевизори и други електронни системи, които направиха живота ни наистина лесен. Чудили ли сте се някога за домашната автоматизация, която да даде възможност за управление на тръбни светлини, вентилатори и други електрически
Защитете отделните отделни файлове чрез Изпращане до с Ccleaner: 4 стъпки
Secure Shred отделни файлове, използващи Send to With Ccleaner: Тази инструкция ще покаже, че трябва да добавите опция Send To към десния бутон, което ще ви позволи да изтриете файл с CCleaner