Talaan ng mga Nilalaman:
- Hakbang 1: Kinakailangan ang Mga Bahagi
- Hakbang 2: Panimula sa Dynamixel 12A
- Hakbang 3: Pakikipag-usap / pagkontrol sa Dynamixel 12A
- Hakbang 4: Pagsulat ng Posisyon ng Layunin sa Dynamixel Motor
- Hakbang 5: PYTHON CODE
Video: Pagkontrol sa Dynamixel 12A sa pamamagitan ng Pagpapadala ng Mga Packet Serial: 5 Mga Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:10
DYNAMIXEL 12A
Hakbang 1: Kinakailangan ang Mga Bahagi
HARDWARE:
1. Dynamixel 12A o anumang Dynamixel motor
2. USB kay Dynamixel.
SOFTWARE:
1. Robotis Dynamixel wizard.
2. Python --- Na-install ang serial package
Hakbang 2: Panimula sa Dynamixel 12A
Ang mga motor na Dynamixel ay lubos na tumpak at kadalasang ginagamit sa Robotics. Ang bawat motor na Dynamixel ay mayroong STM microcontroller sa loob. Maaari mong basahin ang kasalukuyang metalikang kuwintas, boltahe, kasalukuyang pagguhit, temperatura, posisyon, atbp., Mula sa Dynamixels Motors.
Mga pagtutukoy ng Dynamixel 12A:
Operating Boltahe --12v
Timbang - 55g
Max kasalukuyang --900mA
Stall Torque - 15.3 Kg.cm
Hakbang 3: Pakikipag-usap / pagkontrol sa Dynamixel 12A
- Ang Dynamixel 12A ay hindi tulad ng normal na servo motors na mayroong 3pin GND, PWM, VCC, nagbibigay ng power supply at PWM signal at kontrolin ang motor.
- Maaari naming makontrol ang mga Dynamixel motor gamit ang Half Duplex UART na protocol sa komunikasyon.
Ano ang Half Duplex Communication Protocol?
Ang paghahatid ng data na Half-duplex ay nangangahulugang ang data ay maaaring mailipat sa parehong direksyon sa isang signal carrier, ngunit hindi sa parehong oras.
Ngayon natututunan namin ang tungkol sa Protocol 1.0 para sa Dynamixels mula sa Robotis upang makontrol ang mga Dynamixel motor.
- Maaari kang makipag-usap sa mga motor ng Dynamixel sa pamamagitan ng pagpapadala ng mga packet mula sa iyong laptop / microcontroller tulad ng Arduino, r-pi, atbp., Sa microcontroller na naroroon sa loob ng mga Dynamixel motor.
- Ang bawat Dynamixels ay may mga ID na maaaring mabago.
- Ang isang packet ay walang iba kundi ang Set ng bytes.
Isama ang Dynamixel protocol 1.0 magkakaroon ka ng dalawang uri ng mga packet
- Mga packet ng pagtuturo
- Mga packet ng katayuan
Ang Instruction Packet ay ang data ng utos na ipinadala sa Device.
Ganito ang hitsura ng packet ng pagtuturo:
Header1, Header2, ID, Haba, Tagubilin, Param 1… Param, NChecksum
0xFF, 0xFF, ID, Haba, Tagubilin Param 1… Param, NCHKSUM
Sinasabi ng tagubilin ng byte kung ano ang gagawin, magbasa man ng data o sumulat sa motor na Dynamixel.
CONTROL TABLE OF A DYNAMIXEL MOTOR.-Ang Control Table ay isang istraktura na binubuo ng maraming mga patlang ng Data upang maiimbak ang katayuan o upang makontrol ang aparato.
Magbasa nang higit pa tungkol sa Control table HereControl Table Robotis.
Maaari naming ma-access ang data sa control table mula sa address nito at maaari din kaming magsulat.
Hakbang 4: Pagsulat ng Posisyon ng Layunin sa Dynamixel Motor
Tagubilin Packet na Isulat ang posisyon ng Layunin
ang bawat packet ay nagsisimula sa isang header
H1 H2 ID LEN INST P1 P2 P3 CKSM
0xFF, 0xFF, 0x01, 0x05, 0x04, 0x1E, 0xF4, 0x01, 0xE2
LEN-tagubilin byte + p1 + p2 + p3 + chk kabuuan = 5 bytes
ID = Dynamixel motor ID 1-maaari mong itakda ang dynamixel id gamit ang robotis dynamixel wizard software
INST = reg sumulat-tumutukoy na ang iyong pagsusulat sa motor.
P1 = Panimulang address ng Data-Sa control table Posisyon ng layunin ay pagkakaroon ng isang address na 30 (0x1E sa hexadecimal).
P2 = mas mababang byte ng data
P3 = mas mataas na byte ng data
Ang pagkalkula ng Checksum ay ipapaliwanag nang ilang sandali ………………….
Kung ipadala mo ang packet sa itaas sa Dynamixel Serial gamit ang USB2Dynamixel, ang posisyon ng layunin ng motor na Dynamixel ay maitatakda sa 500.
Hakbang 5: PYTHON CODE
# Binuo ni Madhu. Huling pag-update noong 2019-07-19
import Serial
oras ng pag-import
ser = serial. Serial ('com36', '57142')
#change com port nang naaayon, ang aking dynamixel motors baud rate ay 57142, maaari mo itong itakda gamit ang Dynamixel wizard software.
habang (1):
gp1 = input ('ipasok ang posisyon ng layunin ng ID1 (0-1023)')
l = gp1 & 255 # mahinang byte
h = (gp1 >> 8) & 255 # mataas na byte
li = [0xff, 0xff, 0x01, 0x05, 0x04, 0x1e, l1, h1]
#check ang pagkalkula ng kabuuan
crc = kabuuan (li [2:])
mababa1 = crc & 255
chksum = 255-mababa1
li.append (chksum) #dagdag ang pagsumite ng kabuuan
a = bytearray (li) # listahan ng pag-convert sa bytearray
ser.write (a) #Serially magpadala gamit ang usb2dynamixels.
oras. pagtulog (0.5)
#Copy ang code paste sa python IDE. I-install ang pyserial package. ikonekta ang USB side ng usb2dynamixel sa USB port ng laptop at isa pang pagtatapos sa Dynamixel motor. Magbigay ng panlabas na 12v na supply sa USB2DYNAMIXEL.
Patakbuhin ang code, ipasok ang halaga ng posisyon ng layunin. Makita ang pagpapatakbo ng motor.
Inirerekumendang:
Pagkontrol sa Irigasyon Sa pamamagitan ng Internet + Arduino + Ethernet: 3 Mga Hakbang
Pagkontrol ng Irigasyon Sa pamamagitan ng Internet + Arduino + Ethernet: Nais kong ipakilala sa iyo sa isang proyekto na ipinatupad ko sa panahon ng kapaskuhan sa taong ito. Lumikha ako ng isang sistemang nakatuon sa web para sa paghahalaman, na dalubhasa sa pagbebenta at paglilinang ng iba't ibang uri ng halaman, puno, bulaklak
Attendance System sa pamamagitan ng Pagpapadala ng Data ng RFID sa MySQL Server Gamit ang Python With Arduino: 6 Hakbang
Attendance System sa pamamagitan ng Pagpapadala ng Data ng RFID sa MySQL Server Paggamit ng Python Sa Arduino: Sa Proyekto na ito nakipag-interfaced ako sa RFID-RC522 sa arduino at pagkatapos ay nagpapadala ako ng data ng RFID sa phpmyadmin database. Hindi tulad ng aming mga nakaraang proyekto hindi kami gumagamit ng anumang ethernet na kalasag sa kasong ito, narito binabasa lamang namin ang serial data na nagmumula sa ar
Pagkontrol ng LED sa pamamagitan ng Potentiometer Sa Arduino Uno R3: 6 Mga Hakbang
Pagkontrol sa LED ng Potentiometer Sa Arduino Uno R3: Dati, gumamit kami ng Serial Monitor upang magpadala ng data sa control board, na maaaring nakakaaliw upang malaman ang isang bagong software. Sa araling ito, tingnan natin kung paano baguhin ang ilaw ng isang LED ng isang potensyomiter, at matanggap ang data ng potentiomete
ESP8266-NODEMCU $ 3 WiFi Modyul # 2 - Pagkontrol ng Mga Wireless na Pin Sa Pamamagitan ng WEB PAGE: 9 Mga Hakbang (na may Mga Larawan)
ESP8266-NODEMCU $ 3 WiFi Module # 2 - Wireless Pins Controlling Through WEB PAGE: Isang bagong mundo ng mga micro computing na ito ang dumating at ang bagay na ito ay ang ESP8266 NODEMCU. Ito ang unang bahagi na nagpapakita kung paano mo mai-install ang kapaligiran ng esp8266 sa iyong arduino IDE sa pamamagitan ng pagsisimula ng video at bilang mga bahagi sa
Pagkontrol ng Mga Device Sa Pamamagitan ng Arduino Sa Paglipat ng Mekanikal: 8 Mga Hakbang (na may Mga Larawan)
Pagkontrol ng Mga Device Sa Pamamagitan ng Arduino Sa Paglipat ng Mekanikal: Ang Arduino ay maaaring magamit upang makontrol ang mga aparato sa pamamagitan ng paggamit ng simpleng mga mechanical switch na isang relay