Mundarija:

Paketlarni ketma -ket yuborish orqali Dynamixel 12A ni boshqarish: 5 qadam
Paketlarni ketma -ket yuborish orqali Dynamixel 12A ni boshqarish: 5 qadam

Video: Paketlarni ketma -ket yuborish orqali Dynamixel 12A ni boshqarish: 5 qadam

Video: Paketlarni ketma -ket yuborish orqali Dynamixel 12A ni boshqarish: 5 qadam
Video: Shu yaxshimi endi). ACTIVIST 2024, Noyabr
Anonim
Paketlarni ketma -ket yuborish orqali Dynamixel 12A ni boshqarish
Paketlarni ketma -ket yuborish orqali Dynamixel 12A ni boshqarish

DINAMIXEL 12A

1 -qadam: zarur komponentlar

QURILMA:

1. Dinamixel 12A yoki har qanday Dynamixel dvigateli

2. USB -dan Dynamixel -ga.

Dasturiy ta'minot:

1. Robotis Dynamixel ustasi.

2. Python --- Seriya to'plami o'rnatilgan

2 -qadam: Dynamixel 12A -ga kirish

Dynamixel dvigatellari juda aniq va asosan robototexnika sohasida qo'llaniladi. Har bir Dynamixel dvigatelida STM mikrokontroleri mavjud. Dynamixels Motors -dan joriy moment, kuchlanish, oqim chizig'i, harorat, pozitsiya va boshqalarni o'qishingiz mumkin.

Dynamixel 12A texnik xususiyatlari:

Ishlash kuchlanishi -12V

Og'irligi-55 g

Maksimal oqim -900 mA

Turg'un moment-15,3 kg

3 -qadam: Dynamixel 12A bilan aloqa o'rnatish/boshqarish

  • Dynamixel 12A 3pinli GND, PWM, VCC ga ega, quvvat manbai va PWM signalini beradigan va dvigatelni boshqaradigan oddiy servo dvigatellarga o'xshamaydi.
  • Biz Dynamixel dvigatellarini Half Duplex UART aloqa protokoli yordamida boshqarishimiz mumkin.

Yarim dupleks aloqa protokoli nima?

Yarim dupleks ma'lumotlarni uzatish degani, ma'lumot uzatuvchi orqali har ikki yo'nalishda ham uzatilishi mumkin, lekin bir vaqtning o'zida emas.

Endi biz Dynamixel dvigatellarini boshqarish uchun Robotis -dan Dynamixels uchun Protokol 1.0 haqida bilib olamiz.

  • Siz Dynamixel dvigatellari bilan noutbuk/mikrokontrollerdan Arduino, r-pi va boshqalar kabi paketlarni Dynamixel dvigatellari ichidagi mikrokontrollerga yuborish orqali muloqot qilishingiz mumkin.
  • Har bir Dynamixel -da o'zgartirish mumkin bo'lgan identifikatorlar mavjud.
  • Paket - bu baytlar to'plamidan boshqa narsa emas.

Dynamixel 1.0 protokoli mavjud bo'lsa, sizda ikki xil paket bo'ladi

  • Ko'rsatmalar to'plami
  • Vaziyat paketlari

Instruction Packet - bu qurilmaga yuboriladigan buyruq ma'lumotlari.

Ko'rsatmalar to'plami quyidagicha ko'rinadi:

Header1, Header2, ID, Uzunlik, Ko'rsatma, Param 1… Param, NChecksum

0xFF, 0xFF, identifikator, uzunlik, yo'riqnoma 1… Param, NCHKSUM

Ko'rsatma bayti nima qilish kerakligini, ma'lumotlarni o'qish yoki Dynamixel dvigateliga yozishni aytadi.

DINAMIXEL MOTORNING NAZORAT JADVALI.-Boshqaruv jadvali-bu holatni saqlash yoki qurilmani boshqarish uchun bir nechta Ma'lumotlar maydonidan iborat tuzilma.

Boshqarish jadvali haqida ko'proq ma'lumotni bu erda o'qing: Control Table Robotis.

Biz nazorat jadvalidagi ma'lumotlarga uning manzilidan kira olamiz va yozishimiz ham mumkin.

4 -qadam: Dinamixel dvigateliga maqsad pozitsiyasini yozish

Maqsadni yozish bo'yicha ko'rsatmalar to'plami

har bir paket sarlavhadan boshlanadi

H1 H2 ID LEN INST P1 P2 P3 CKSM

0xFF, 0xFF, 0x01, 0x05, 0x04, 0x1E, 0xF4, 0x01, 0xE2

LEN-ko'rsatma bayt+p1+p2+p3+chk sum = 5 bayt

ID = Dynamixel dvigatel identifikatori 1-siz robotis dynamixel sehrgar dasturidan foydalanib, dinamixel identifikatorini o'rnatishingiz mumkin.

INST = reg yozish-bu sizning motorga yozayotganingizni bildiradi.

P1 = Ma'lumotlarning boshlang'ich manzili-Boshqaruv jadvalida Maqsad pozitsiyasi 30 (o'n oltilikda 0x1E) manzilga ega.

P2 = ma'lumotlarning past bayti

P3 = ma'lumotlarning yuqori bayti

Cheksumni hisoblash tez orada tushuntiriladi ………………….

Agar siz yuqoridagi paketni USB2Dynamixel yordamida Dynamixel Serial -ga yuborsangiz, Dynamixel dvigatelining maqsad pozitsiyasi 500 ga o'rnatiladi.

5 -qadam: PITON KODI

#Madhu tomonidan ishlab chiqilgan. Oxirgi yangilanish 19.07.2019

ketma -ket import qilish

import vaqti

ser = serial. Serial ('com36', '57142')

#portni mos ravishda o'zgartiring, mening dinamixel dvigatellarim tezligi 57142, siz uni Dynamixel sehrgar dasturi yordamida sozlashingiz mumkin.

vaqt (1):

gp1 = kiritish ('ID1 gol pozitsiyasini kiriting (0-1023)')

l = gp1 va 255 #past bayt

h = (gp1 >> 8) va 255 #yuqori bayt

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

#summa hisobini tekshiring

crc = sum (li [2:])

past1 = crc & 255

chksum = 255-past1

li.append (chksum) #adding chek summasi

a = bytearray (li) #ro'yxatni bytearrayga aylantirish

ser.write (a) #Serial usb2dynamixels yordamida yuboring.

vaqt uyqu (0,5)

#Python IDE -ga kodni nusxalash. Pyserial paketini o'rnating. usb2dynamixelning USB tomonini noutbukning USB portiga, boshqa uchini Dynamixel dvigateliga ulang. USB2DYNAMIXELga tashqi 12V quvvat manbai bering.

Kodni ishga tushiring, maqsad pozitsiyasini kiriting. Dvigatel ishlayotganini ko'ring.

Tavsiya: