Агуулгын хүснэгт:

Пакетуудыг цуваа илгээж Dynamixel 12A -ийг удирдах нь: 5 алхам
Пакетуудыг цуваа илгээж Dynamixel 12A -ийг удирдах нь: 5 алхам

Видео: Пакетуудыг цуваа илгээж Dynamixel 12A -ийг удирдах нь: 5 алхам

Видео: Пакетуудыг цуваа илгээж Dynamixel 12A -ийг удирдах нь: 5 алхам
Видео: errore clima e3 comfee, midea. kfr26g 2024, Арваннэгдүгээр
Anonim
Пакетуудыг цуваа илгээж Dynamixel 12A -ийг удирдах
Пакетуудыг цуваа илгээж Dynamixel 12A -ийг удирдах

DYNAMIXEL 12A

Алхам 1: Шаардлагатай бүрэлдэхүүн хэсгүүд

ТОНОГ ТӨХӨӨРӨМЖ:

1. Динамиксел 12А эсвэл аливаа Dynamixel мотор

2. USB -ээс Dynamixel руу.

ПРОГРАММ:

1. Robotis Dynamixel шидтэн.

2. Python --- Цуваа багц суулгасан

Алхам 2: Dynamixel 12A -ийн танилцуулга

Dynamixel мотор нь маш нарийн бөгөөд ихэвчлэн роботт ашигладаг. Dynamixel мотор бүрт STM микроконтроллер байдаг. Та Dynamixels Motors дээрээс одоогийн эргэлт, хүчдэл, гүйдэл, температур, байрлал гэх мэтийг уншиж болно.

Dynamixel 12A техникийн үзүүлэлтүүд:

Ашиглалтын хүчдэл -12v

Жин-55 гр

Хамгийн их гүйдэл -900 мА

Тасалгааны эргэлт-15.3 кг

Алхам 3: Dynamixel 12A -тай харилцах/хянах

  • Dynamixel 12A нь 3pin GND, PWM, VCC, цахилгаан хангамж, ХОУХ -ны дохио өгч, моторыг хянадаг ердийн servo мотортой адил биш юм.
  • Бид Halam Duplex UART холбооны протокол ашиглан Dynamixel моторуудыг хянах боломжтой.

Хагас дуплекс харилцааны протокол гэж юу вэ?

Хагас дуплекс өгөгдөл дамжуулах гэдэг нь өгөгдлийг дохио дамжуулагч дээр хоёр чиглэлд дамжуулах боломжтой боловч нэгэн зэрэг дамжуулахгүй гэсэн үг юм.

Одоо бид Dynamixel моторыг хянахын тулд Robotis -аас Dynamixels протокол 1.0 -ийн талаар олж мэдэв.

  • Та Dynamixel мотортой Arduino, r-pi гэх мэт зөөврийн компьютер/микроконтроллероос пакетуудыг Dynamixel мотор дотор байгаа микроконтроллер руу илгээх замаар харилцах боломжтой.
  • Динамиксел бүр өөрчилж болох ID -тай байдаг.
  • Пакет бол багц байтаас өөр зүйл биш юм.

Dynamixel протокол 1.0 -ийн хувьд танд хоёр төрлийн пакет байх болно

  • Зааварчилгааны багцууд
  • Статус пакетууд

Зааварчилгааны багц нь төхөөрөмж рүү илгээгдсэн тушаалын өгөгдөл юм.

Зааварчилгааны багц дараах байдлаар харагдаж байна.

Толгой1, Толгой2, ID, Урт, Заавар, Парам 1… Парам, NChecksum

0xFF, 0xFF, ID, Урт, Зааварчилгаа 1… Парам, NCHKSUM

Зааварчилгааны байт нь юу хийхээ, өгөгдлийг унших эсвэл Dynamixel мотор дээр бичихийг хэлж өгдөг.

DYNAMIXEL MOTOR ХЯНАЛТЫН ХҮСНЭГТ. -Хяналтын хүснэгт нь статусыг хадгалах эсвэл төхөөрөмжийг удирдах олон өгөгдлийн талбараас бүрдэх бүтэц юм.

Хяналтын хүснэгтийн талаархи дэлгэрэнгүй мэдээллийг эндээс уншаарай Control Table 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 мотор ID 1-та robotis dynamixel wizard програм хангамж ашиглан динамиксель ID тохируулж болно.

INST = reg бичих-таны мотор руу бичиж буйг зааж өгнө.

P1 = Өгөгдөл-Хяналтын хүснэгтийн эхлэх хаяг Зорилгын байрлал нь 30 хаягтай (арван зургаатын 0x1E) байна.

P2 = бага байт өгөгдөл

P3 = өгөгдлийн өндөр байт

Хяналтын дүнг тооцоолох ажлыг удахгүй тайлбарлах болно ………………….

Хэрэв та дээрх пакетийг USB2Dynamixel ашиглан Dynamixel Serial руу илгээвэл Dynamixel хөдөлгүүрийн зорилгын байрлалыг 500 болгож тохируулна.

Алхам 5: PYTHON код

#Мадху боловсруулсан. Хамгийн сүүлийн шинэчлэлт 2019.07.19

Цуваа импортлох

импортлох хугацаа

сер = цуваа. Цуваа ('com36', '57142')

#комын портыг өөрчилсний дагуу миний динамиксель моторын дамжуулах хурд 57142 байна, та үүнийг Dynamixel wizard програм хангамж ашиглан тохируулж болно.

байхад (1):

gp1 = оролт ('ID1 гоолын байрлалыг оруулна уу (0-1023)')

l = gp1 & 255 #бага байт

h = (gp1 >> 8) & 255 #өндөр байт

li = [0xff, 0xff, 0x01, 0x05, 0x04, 0x1e, l1, h1]

#нийлбэр тооцоог шалгах

crc = нийлбэр (ли [2:])

бага1 = crc & 255

chksum = 255-low1

li.append (chksum) #adding чекийн нийлбэр

a = bytearray (li) #жагсаалтыг bytearray болгон хөрвүүлэх

ser.write (a) #usb2dynamixels ашиглан цувралаар илгээнэ үү.

цаг унтах (0.5)

#Python IDE дахь кодыг буулгана уу. Pyserial багцыг суулгана уу. usb2dynamixel -ийн USB талыг зөөврийн компьютерын USB порт руу, нөгөө үзүүрийг Dynamixel мотортой холбоно уу. USB2DYNAMIXEL -д гадаад 12V тэжээл өгөх.

Кодыг ажиллуулаад зорилгын байрлалын утгыг оруулна уу. Мотор ажиллаж байгааг харах.

Зөвлөмж болгож буй: