Агуулгын хүснэгт:
- Алхам 1: Шаардлагатай бүрэлдэхүүн хэсгүүд
- Алхам 2: Dynamixel 12A -ийн танилцуулга
- Алхам 3: Dynamixel 12A -тай харилцах/хянах
- Алхам 4: Зорилгын байрлалыг Dynamixel Motor дээр бичих
- Алхам 5: PYTHON код
Видео: Пакетуудыг цуваа илгээж Dynamixel 12A -ийг удирдах нь: 5 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:00
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 тэжээл өгөх.
Кодыг ажиллуулаад зорилгын байрлалын утгыг оруулна уу. Мотор ажиллаж байгааг харах.
Зөвлөмж болгож буй:
Raspberry PI 3 - TtyAMA0 -аас BCM GPIO 14 ба GPIO 15: 9 алхам хүртэлх цуваа холболтыг идэвхжүүлнэ үү
Raspberry PI 3 - TtyAMA0 руу BCM GPIO 14 ба GPIO 15 руу цуваа холболтыг идэвхжүүлээрэй: Би саяхан Raspberry Pi (3b) дээрээ UART0 -ийг идэвхжүүлэх сонирхолтой байсан бөгөөд үүнийг стандарт 9 ашиглан RS -232 дохионы түвшний төхөөрөмжтэй шууд холбох боломжтой болсон. USB-RS-232 адаптераар дамжуулах шаардлагагүй d-sub холбогчийг холбоно уу. Миний сонирхсон зүйлийн нэг хэсэг
Mac Lilypad USB цуваа порт/драйверын асуудлыг засах: 10 алхам (зурагтай)
Mac Lilypad USB цуваа порт/драйверын асуудлыг засах: 2016 оны байдлаар таны Mac 2 нас хүрээгүй байна уу? Та саяхан хамгийн сүүлийн үеийн OS (Yosemite эсвэл шинэ хувилбар) руу шинэчлэгдсэн үү? Таны Lilypad USBs/MP3 ажиллахаа больсон уу? Миний Энэ заавар нь Lilypad USB -ээ хэрхэн яаж зассан болохыг харуулах болно
Arduino -той SMS илгээж байна -- TC35 GSM модуль: 5 алхам
Arduino -той SMS илгээж байна || TC35 GSM модуль: Энэхүү жижиг төсөл дээр би TC35 GSM модулийг хэрхэн зөв ашиглах, мөн Arduino Uno ашиглан хэрхэн SMS илгээх талаар хэрхэн ашиглахыг танд үзүүлэх болно
Нодемку температур ба чийгшлийн мэдээллийг Thingspeak руу илгээж байна: 7 алхам
Nodemcu Thingspeak руу температур, чийгшлийн мэдээллийг илгээж байна: Энд бид энэ хичээлд nodemcu -ийг dht11 мэдрэгчтэй холбож, температур, чийгшлийн өгөгдлийг thingspeak серверт илгээх болно. Энд бид мөн температур, чийгшлийн графикийг thingspeak серверт зурсан болно
Arduino нь Python ашиглан Dht11 өгөгдлийг MySQL сервер (PHPMYADMIN) руу илгээж байна: 5 алхам
Arduino нь Python ашиглан Dht11 өгөгдлийг MySQL Сервер (PHPMYADMIN) руу илгээж байна: Энэ төсөлд би DHT11 -ийг arduino -той холбож, дараа нь чийгшил, температур болох dht11 -ийн өгөгдлийг phpmyadmin мэдээллийн санд илгээж байна. Өмнөх төслөөс ялгаатай нь бид энэ тохиолдолд ямар ч Ethernet бамбай ашигладаггүй, энд бид зүгээр л уншиж байна