Talaan ng mga Nilalaman:
- Hakbang 1: Video Tutorial
- Hakbang 2: Kinakailangan ang Hardware at Tools
- Hakbang 3: Mga Modelo ng 3D ng Kamay at Forarmarm
- Hakbang 4: Assembly ng Mga Bahagi
- Hakbang 5: Mga Koneksyon ng Kamay (Tumatanggap)
- Hakbang 6: Mga Koneksyon ng Glove (Transmitter)
- Hakbang 7: Source Code ng Project
Video: Robotic Hand Na Kinokontrol ang Wireless Glove - NRF24L01 + - Arduino: 7 Hakbang (na may Mga Larawan)
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:14
Sa video na ito; Ang pagpupulong ng kamay ng 3D robot, kontrol ng servo, kontrol ng flex sensor, wireless control na may nRF24L01, Arduino receiver at transmitter source code ay magagamit. Sa madaling sabi, sa proyektong ito matututunan natin kung paano makontrol ang isang kamay ng robot gamit ang isang wireless glove.
Hakbang 1: Video Tutorial
Sa tutorial video na ito maaari mong makita ang robotic arm Assembly at marami pa. Nagdagdag ako ng isang video dahil ang ilang mga bahagi ng robotic arm Assembly ay napaka detalyado.
Hakbang 2: Kinakailangan ang Hardware at Tools
Kinakailangan Hardware
2x Arduino Board (Nano) -
2x nRF24L01 + Transceiver -
2x nRF24L01 + Adapter -
5x MG996R Servo -
5x 4.5 Inch Flex Sensor -
5x 10k Resistor -
2x 18650 3.7V Baterya -
1x 18650 Battery Holder -
1x 9V Baterya -
1x 9V Battery Connector -
1x Glove -
1x String / Braid Line -
3x Mini Breadboard -
Jumper Wires -
1x Rubber / Tyre o Spring
1x Steel Wire o Filament
3x Bolt (8mm diameter)
Mga Kinakailangan na Tool (Opsyonal)
Electronic Drill + Dremel Tool -
Anet A8 3D Printer -
PLA 22M 1.75mm Red Filament -
Hot Glue Gun -
Mga Tie ng Cable -
Super Fast Adhesive -
Screwdriver Wallet Set -
Naaayos na Solder -
Stand ng Soldering -
Solder Wire -
Heat Shrink Tube -
Wire Cable Cutter -
Lupon ng PCB -
Mga Screws Nuts Assortment Kit --https://goo.gl/EzxHyj
Hakbang 3: Mga Modelo ng 3D ng Kamay at Forarmarm
Ang kamay ay bahagi ng isang proyekto na bukas na mapagkukunan na tinatawag na InMoov. Ito ay isang naka-print na robot na 3D, at ito lamang ang pagpupulong ng kamay at bisig.
Para sa karagdagang impormasyon, bisitahin ang opisyal na website ng InMoov. Maaari mong bisitahin ang mga pahina ng "Assembly Sketches" at "Assembly Help" sa InMoov website para sa higit pang mga detalye sa pagpupulong.
Salamat sa InMoov - https://inmoov.fr/ -
Ang Anet A8 3D Printer ay ginagamit sa proyektong ito. Ang mga modelo ay nai-print sa pinakamababang pagiging madaling magaling.
Lahat ng mga bahagi ng 3D na ginamit sa proyektong ito
Hakbang 4: Assembly ng Mga Bahagi
Ang pagpupulong ng mga bahagi ng robotic arm ay napakadetalyado at kumplikado, kaya maaari mong bisitahin ang mga pahina ng "Assembly Sketches" at "Assembly Help" sa InMoov website para sa higit pang mga detalye sa pagpupulong. napakalinaw na ipinaliwanag sa website ng InMoov. O maaari mong panoorin ang video na ibinahagi ko.
www.inmoov.fr/ass Assembly-sketchs/
inmoov.fr/hand-and-forarm/
Isaalang-alang ang mungkahi na ito para sa tamang anggulo ng daliri:
Kapag pinagsama-sama ang mga daliri, siguraduhing na-orient ang mga bahagi nang tama bago nakadikit. Panatilihin ang lahat ng mga motor na servo sa 10 o 170 degree bago ilakip ang servo pulleys sa mga servo motor. Kapag pinataas ang servo pulleys, itago ang mga daliri sa sarado o binuksan na posisyon (ayon sa iyong mga anggulo ng servo). Pagkatapos ay balutin ang servo pulley hanggang sa ang mga wire ng tirintas o mga string ay nabatak.
Hakbang 5: Mga Koneksyon ng Kamay (Tumatanggap)
- Sa puntong ito, ang servos ay dapat na naka-mount sa bisig. Upang ikonekta ang mga ito sa power supply at Arduino, maaari kang gumamit ng isang maliit na breadboard.
- Tandaan na ikonekta ang negatibo sa breadboard sa GND ng Arduino. Ang lahat ng mga GND sa isang circuit ay kailangang konektado upang gumana ito.
- Inirerekumenda ko ang paggamit ng power adapter para sa nRF24L01 + module. Kung hindi man, maaaring masira ang komunikasyon dahil sa hindi sapat na kasalukuyang.
- Kung nakatagpo ka ng mga problemang ito: panginginig ng boses sa mga servo motor, hindi gumagana ang motor na servo, pagkasira ng komunikasyon at sa mga katulad na sitwasyon, ibigay ang iyong Arduino board na may panlabas na lakas (tulad ng USB).
- Kung gumamit ka ng iba't ibang mga pin kaysa sa mga pin na ipinakita sa ibaba, baguhin ang mga ito sa mga code.
Mga koneksyon ng Servo Motors:
Ang Servo-1 ay kumonekta sa analog 01 (A1) ng Arduino.
Ang Servo-2 ay kumonekta sa analog 02 (A2) ng Arduino.
Ang Servo-3 ay kumonekta sa analog 03 (A3) ng Arduino.
Ang Servo-4 ay kumonekta sa analog 04 (A4) ng Arduino.
Ang Servo-5 ay kumonekta sa analog 05 (A5) ng Arduino.
Mga koneksyon ng nRF24L01 Modyul:
Ang VCC ay kumonekta sa + 5V ng Arduino.
Kumonekta ang GND sa GND ng Arduino.
Kumonekta ang CE sa digital 9 pin ng Arduino.
Kumonekta ang CSN sa digital 10 pin ng Arduino.
Kumonekta ang SCK sa digital 13 pin ng Arduino.
Kumonekta ang MOSI sa digital 11 pin ng Arduino.
Kumonekta ang MISO sa digital 12 pin ng Arduino.
Hakbang 6: Mga Koneksyon ng Glove (Transmitter)
- Ang mga flex sensor ay nangangailangan ng isang circuit upang sila ay maging katugma sa Arduino. Ang mga Flex sensor ay variable na resistors, kaya inirerekumenda ko ang paggamit ng isang divider ng boltahe. Gumamit ako ng 10K risistor.
- Ang pangunahing GND (ground) wire na konektado sa lahat ng mga indibidwal na mga wire ng GND mula sa mga sensor, nakakakonekta sa GND ng Arduino. Ang +5 V mula sa Arduino ay papunta sa pangunahing positibong boltahe ng wire. Ang kawad mula sa bawat flex sensor ay konektado sa isang magkakahiwalay na analog input pin sa pamamagitan ng divider ng boltahe.
- Inhinang ko ang circuit sa isang maliit na PCB, isa na maaaring madaling mai-mount papunta sa guwantes. Maaari mong itayo ang circuit sa maliit na breadboard sa halip na PCB.
- Maaari mong gamitin ang 9V na baterya para sa circuit ng guwantes.
- Kung gumamit ka ng iba't ibang mga pin kaysa sa mga pin na ipinakita sa ibaba, baguhin ang mga ito sa mga code.
Mga koneksyon ng mga flex sensor:
Ang Flex-1 ay kumonekta sa analog 01 (A1) ng Arduino.
Ang Flex-2 ay kumonekta sa analog 02 (A2) ng Arduino.
Ang Flex-3 ay kumonekta sa analog 03 (A3) ng Arduino.
Ang Flex-4 ay kumonekta sa analog 04 (A4) ng Arduino.
Ang Flex-5 ay kumonekta sa analog 05 (A5) ng Arduino.
Mga koneksyon ng nRF24L01 Modyul:
Ang VCC ay kumonekta sa + 5V ng Arduino.
Kumonekta ang GND sa GND ng Arduino.
Kumonekta ang CE sa digital 9 pin ng Arduino.
Kumonekta ang CSN sa digital 10 pin ng Arduino.
Kumonekta ang SCK sa digital 13 pin ng Arduino.
Kumonekta ang MOSI sa digital 11 pin ng Arduino.
Kumonekta ang MISO sa digital 12 pin ng Arduino.
Hakbang 7: Source Code ng Project
Upang gumana nang tama ang source code, sundin ang mga rekomendasyon:
- I-download ang RF24.h library at ilipat ito sa folder ng Arduino libraries.
- Matapos ang mga flex sensor ay konektado o ang guwantes, basahin at tandaan ang minimum at maximum na mga halaga na nakita ng bawat flex sensor.
- Pagkatapos ay ipasok ang mga halagang ito sa transmitter (guwantes) na code.
- Panatilihin ang lahat ng servo motor sa 10 o 170 degree bago ilakip ang servo pulleys sa servo motor.
- Kapag pinataas ang servo pulleys, itago ang mga daliri sa sarado o binuksan na posisyon (ayon sa iyong mga posisyon sa servo).
- Pagkatapos ay balutin ang servo pulley hanggang sa mag-inat ang mga wire ng tirintas.
- Ilipat ang lahat ng mga daliri sa sarado at binuksan na posisyon sa pamamagitan ng pag-check ng servo motor nang paisa-isa.
- Pagkatapos makuha ang pinakamahusay na mga anggulo para sa mga motor ng servo (mga anggulo ng servo habang nakasara at nakabukas ang mga daliri).
- Ipasok ang mga anggulo ng servo motor at ibaluktot ang mga halaga ng sensor sa transmitter code tulad ng sumusunod.
flex sensor min. halaga, flex sensor max. halaga, servo min. anggulo, servo max. anggulo
(flex_val = mapa (flex_val, 630, 730, 10, 170);
- Mayroon lamang isang pagbabago sa code ng mapagkukunan ng tatanggap. Aling flex sensor sa transmitter ang makokontrol sa aling servo motor sa receiver? Halimbawa, nagpapadala ang msg [0] ng data ng x sensor-5. Kung nais mong kontrolin ang servo motor-5 gamit ang flex sensor-5, magagawa mo ito sa pamamagitan ng pag-type ng 'servo-5.write (msg [0])'.
- Kung gumamit ka ng iba't ibang mga pin kaysa sa mga pin na ipinakita sa circuit, baguhin ang mga ito sa parehong mga code.
Alam kong medyo kumplikado ito sa huling bahagi, ngunit mangyaring huwag kalimutan: walang mahirap! Kaya mo yan! Isipin mo lang, saliksikin, magtiwala sa iyong sarili at subukan.