Talaan ng mga Nilalaman:

Prosthetic Arm na Nagtatrabaho Sa Isang Myosensor: 8 Mga Hakbang
Prosthetic Arm na Nagtatrabaho Sa Isang Myosensor: 8 Mga Hakbang

Video: Prosthetic Arm na Nagtatrabaho Sa Isang Myosensor: 8 Mga Hakbang

Video: Prosthetic Arm na Nagtatrabaho Sa Isang Myosensor: 8 Mga Hakbang
Video: The Controversy Around ABA Therapy (Applied Behavior Analysis) 2024, Nobyembre
Anonim
Image
Image

Ang proyektong ito ay ang pagbuo ng isang prosthetic arm para sa mga naputol na tao. Ang layunin ng proyektong ito ay ang paglikha ng isang abot-kayang prostetikong braso para sa mga taong hindi kayang bayaran ang isang propesyonal.

Dahil ang proyektong ito ay nasa yugto pa rin ng prototyping, maaari itong palaging mas mahusay tulad ng sa ngayon maaari lamang itong buksan at isara ang palad na makakakuha ng mga bagay-bagay! Gayunpaman, ito ay isang DIY prosthetic arm na maaaring gawin sa bahay o sa isang lokal na lab lab.

Hakbang 1: Kailangan ng Mga Materyales, Kagamitan at Makina

Mga Makina:

  1. 3d printer
  2. Laser Cutter
  3. Desktop CNC Machine

Mga tool:

  1. Linya ng Pangingisda
  2. 3mm filament
  3. Drill
  4. Superglue
  5. Mga butil ng butas
  6. Multimeter
  7. Soldering Station
  8. Machinable Wax
  9. Siliconfor molds

Mga Materyales:

  1. Copper Sheet
  2. 1x ATMEGA328P-AU
  3. 1x 16MHz Crystal
  4. 1x 10k risistor
  5. 2x 22pF capacitors
  6. 1x 10uF capacitor
  7. 1x 1uF capacitor
  8. 1x 0.1uF capacitor
  9. 1x Myosensor
  10. 5x micro motor servo
  11. 1x Arduino UNO

Software:

  1. Arduino IDE
  2. Fusion360
  3. Cura
  4. Agila
  5. GIMP

Hakbang 2: Disenyo ng 2D at 3D

2D & 3D Disenyo
2D & 3D Disenyo
2D & 3D Disenyo
2D & 3D Disenyo
2D & 3D Disenyo
2D & 3D Disenyo

Disenyo ng 3D

Ang unang hakbang ay ang pagdisenyo ng mga daliri, palad at braso ng prostetikong braso na isinasaalang-alang ang mga elektroniks na pupunta sa braso na prostetik. Upang maging matapat, ginamit ko bilang isang batayan ang bukas na mapagkukunan na proyekto ng inmoov at nagsimula ako mula doon.

Ang palad ay medyo isang mahirap na bahagi upang idisenyo dahil ang mga daliri ay dapat magkaroon ng iba't ibang mga ratio sa pagitan nila. Kaya:

Mga Daliri: Na-download ko ang mga daliri mula sa proyekto ng inmoov.

Palad:

  1. Una kong iginuhit ang layout ng palad at pinalabas ito.
  2. Pagkatapos gumawa ako ng mga butas para sa mga koneksyon ng daliri at bisig gamit ang mga sketch, ang cut command at ang fillet command.
  3. Pagkatapos nito, kailangan kong gumawa ng mga tubo upang maipasa ko ang mga linya ng pangingisda upang makontrol ko ang mga daliri sa pamamagitan ng mga motor.
  4. Panghuli, kailangang idagdag ang mga butas sa loob ng palad upang posible ang pagsara ng palad nang makuha ang linya ng pangingisda.

Forearm:

  1. Sa iba't ibang mga eroplano, lumikha ako ng dalawang sketch at ginamit ang utos ng ellipse. Ginamit ko ang loft command pagkatapos upang likhain ang nais na hugis.
  2. Pagkatapos, ginamit ang command ng shell upang gawing guwang ito at ang split command na gupitin ito sa kalahati upang maaari akong magdisenyo dito at para sa pinakamahusay na kakayahang mai-access kapag inilalagay ko ang aking electronics sa loob.
  3. Ginawa din ang isang sketch na malapit sa pulso, na inilabas at isinama sa pangunahing bisig upang makakonekta ito sa palad.
  4. Ang pagkakaroon ng kakayahang makita sa disenyo sa loob ng bisig, gumawa ako ng sketch sa mga sukat ng limang motor na gagamitin ko, isa para sa bawat daliri, at aking PCB (naka-print na circuit board) na gagamitin ko. Pagkatapos ay inilabas ko sila hanggang sa maabot nila ang kanais-nais na taas at tinanggal ang mga hindi kinakailangang bahagi sa likuran ng silindro gamit ang backspace.
  5. Panghuli, ang mga bakanteng bolts ay dinisenyo, sa paraang hindi gaanong nakikita sa pangkalahatang disenyo, upang maisara ang bisig gamit ang mga katulad na utos tulad ng nasa itaas.

Tinatapos ang disenyo, pinili ko ang bawat katawan at i-download ito bilang isang.stl file at 3D kong nai-print ang mga ito nang magkahiwalay.

2D Disenyo

Tulad ng pagnanais ko na ang aking mga linya ng pangingisda ay magkahiwalay habang sila ay pinapatakbo ng mga motor, nagpasya akong gumawa ng mga puwang sa paggabay para sa kanila. Para sa mga ito, hindi ko talaga kailangang mag-disenyo ng anumang bago ngunit gumamit ng mas maliit na ellipse kung kailan ginamit ko ang utos ng loft upang likhain ang bisig.

Na-export ko ang sketch na ito bilang isang.dxf file pagkatapos kong magamit ang laser cutter. Matapos ang nais kong hugis, nag-drill ako ng mga butas na 0.8mm sa loob ng puwang na nalaman kong kinakailangan.

Hakbang 3: Pag-print sa 3D

Pagpi-print sa 3D
Pagpi-print sa 3D
Pagpi-print sa 3D
Pagpi-print sa 3D
Pagpi-print sa 3D
Pagpi-print sa 3D
Pagpi-print sa 3D
Pagpi-print sa 3D

Matapos i-export ang bawat stl file, ginamit ko ang Cura upang makabuo ng.gcode ng iba't ibang bahagi ng mga daliri, ang palad at ang braso. Ang mga setting na ginamit ay nakalarawan sa mga larawan sa itaas. Ang materyal ng mga naka-print na bahagi ng 3D ay PLA.

Hakbang 4: Pagguhit at Pag-cast

Pagma-molde at Pag-cast
Pagma-molde at Pag-cast
Pagma-molde at Pag-cast
Pagma-molde at Pag-cast
Pagma-molde at Pag-cast
Pagma-molde at Pag-cast

Ang layunin ng pag-cast ng palad ay upang ang braso ng prosthetic ay magkaroon ng isang mas malakas na mahigpit na pagkakahawak dahil ang PLA ay maaaring madulas.

Disenyo ng 3D

  1. Gamit ang dati nang sketch ng palad, sinubukan kong gayahin ang aming palad sa pamamagitan ng pagdidisenyo ng uri ng mga bilog dito gamit ang arc command.
  2. Pagkatapos, inilabas ko ang mga ito sa iba't ibang taas at ginamit ang fillet command upang pakinisin ang mga gilid ng "bilog" sa loob.
  3. Pagkatapos, nagdisenyo ako ng isang kahon na may parehong sukat tulad ng aking machinable wax at inilagay ko ang negatibo ng aking disenyo doon gamit ang hiwa sa pagsamahin na utos.

Proseso ng CAM

Matapos na handa ang disenyo na gilingan gamit ang desktop CNC machine, kailangan kong makabuo ng gcode para doon. Sa aking kaso, gumagamit ako ng Roland MDX-40 CNC machine!

  1. Una, pumasok ako sa kapaligiran ng CAM ng Fusion360.
  2. Pagkatapos, pumili ako ng isang "bagong pag-setup" sa menu ng pag-setup.
  3. Pinili ko ang mga tamang parameter (tingnan ang mga larawan) at pinindot ang ok.
  4. Susunod, sa ilalim ng menu ng 3D, pinili ko ang adaptive clearing at pinili ang tamang mga parameter pagkatapos na ipasok ang tool na ginamit ko tulad ng ipinakita sa mga larawan.
  5. Panghuli, pinili ko ang adaptive clearing at nag-click sa proseso ng post. Natiyak kong para ito sa roland machine mdx-40 at nag-click ok upang makuha ang gcode.
  6. Pagkatapos nito, giniling ko ang bloke ng waks ayon sa aking disenyo gamit ang makina.

Pag-cast ng Silicon

  1. Una, pinaghalo ko ang dalawang solusyon ng silicon nang maingat na hindi maging sanhi ng anumang mga bula ng hangin, kasunod sa datasheet (matatagpuan ang link sa mga materyales), isinasaalang-alang ang ratio ng paghahalo, buhay ng palayok at oras ng demould.
  2. Pagkatapos, ibinuhos ko ito sa aking hulma mula sa pinakamababang punto na tinitiyak na ang contact point ay mananatiling pare-pareho at ang diameter ng ibinuhos na solusyon ay manipis hangga't maaari, upang maiwasan ang mga bula ng hangin.
  3. Matapos itapon ang silikon sa aking hulma, kailangan kong tiyakin na walang mga bula ng hangin ang nasa loob, kaya kinilig ako ang hulma gamit ang isang drill na may isang pahilig na kuko.
  4. Panghuli, dahil nakalimutan kong gawin ito sa aking disenyo, sinuntok ko ang mga butas sa aking silikon matapos itong handa, gamit ang mga butas ng butas, sa isang paraan na tumutugma sila sa mga butas na nasa ibabaw ng palad.

Hakbang 5: Disenyo at Produksyon ng Elektronika

Disenyo at Produksyon ng Elektronika
Disenyo at Produksyon ng Elektronika
Disenyo at Produksyon ng Elektronika
Disenyo at Produksyon ng Elektronika
Disenyo at Produksyon ng Elektronika
Disenyo at Produksyon ng Elektronika

Upang madisenyo ang aking board at maunawaan kung ano ang nangyayari sa mga pin ng microcontroller, kinailangan kong basahin ang datasheet nito. Bilang isang batayang PCB, ginamit ko ang micro satshakit at pagkatapos ay binago ko ito alinsunod sa mga pangangailangan ng aking system.

Tulad ng satshakit ay isang board na nakabatay sa DIY arduino, mababago ko ito alinsunod sa aking mga paghahanap para sa mga koneksyon ng aking mga bahagi sa arduino. Kaya, ang myosensor ay kumokonekta sa arduino gamit ang isang GND pin, isang VCC pin at isang analog pin. Samakatuwid, ang isang motor na servo ay gumagamit ng isang GND pin, isang VCC pin at isang PWM pin. Kaya, kailangan kong ilantad sa kabuuan ng anim na mga pin ng GND at VCC na isinasaalang-alang ang paggana ng board, isang analog at limang mga PWM na pin. Gayundin, kinailangan kong isaalang-alang upang mailantad ang mga pin para sa programa ng board (na kung saan ay MISO, MOSI, SCK, RST, VCC at GND).

Ang mga hakbang na ginawa ko ay:

  1. Una, na-download ko ang mga file ng agila ng micro-satshakit.
  2. Susunod, binago ko ang micro-satshakit ayon sa aking mga pangangailangan gamit ang Eagle. Ang isang gabay sa kung paano gamitin ang Eagle ay matatagpuan dito at dito.
  3. Matapos ma-rooting ang aking board, na-export ko ito bilang isang-p.webp" />

Matapos ang pagkakaroon ng panloob at panlabas na mga landas ng aking board bilang png, oras na upang makabuo ng gcode ng mga ito upang mai-mill ito sa roland mdx-40 desktop cnc machine. Para sa henerasyon ng.gcode Gumamit ako ng mga mod module. Ang mga setting na dapat itakda sa mga modyul na fab at matatagpuan dito.

Panghuli, hinihinang ko ang lahat ng kailangan ko alinsunod sa aking board ng agila. Ang larawan ng eskematiko at ang soldered board ay matatagpuan sa itaas.

Ang dahilan para sa paggawa ng aking sariling PCB Board sa halip na gumamit ng isang Arduino UNO ay ang puwang na naiipon ko kapag gumagamit ako ng aking sariling board.

Hakbang 6: Assembly

Assembly
Assembly
Assembly
Assembly
Assembly
Assembly

Kaya, pagkatapos mai-print ang mga daliri:

  1. Kailangan kong mag-drill sa mga butas sa loob ng isang 3.5mm diameter drill at ang mga labas na butas na may 3mm diameter drill. Sa loob ng mga butas ay nangangahulugang ang bahagi na kapag ang mga bahagi ay konektado ito ay mula sa loob at labas ng butas, ang bahagi na kapag nakakonekta ito ay mula sa labas.
  2. Pagkatapos nito kailangan kong superglue muna sa pangalawang daliri at ang pangatlo sa pang-apat.
  3. Pagkatapos nito, kinonekta ko ang mga bahagi 1 + 2 na may 3 + 4 na may 5 sa pamamagitan ng maliit na mga butas gamit ang isang filament na may 3mm diameter.
  4. Panghuli, ang mga daliri ay handa nang tipunin kasama ng palad at pagkatapos ay sa braso.

Kaya, oras na upang ipasa ang linya ng pangingisda sa mga daliri.

Ang isang linya ay nagpunta mula sa likurang bahagi ng daliri sa pamamagitan ng tubo sa konektor ng daliri-palad at sa bisig at ang kabilang linya ay mula sa harap na bahagi ng daliri patungo sa butas sa loob ng palad at sa braso

Ang isang espesyal na tala ay ipasa ang linya ng pangingisda sa isang piraso ng kahoy na may butas dito na may diameter nito at gumawa ng isang buhol. Kung hindi man kapag hinila ang linya, maaari itong bumaba sa daliri, na nangyari sa akin kahit gaano karaming mga buhol ang ginawa ko.

  • Matapos ang linya ng pangingisda ay naipasa sa mga daliri, ang palad at ang braso ay dapat na konektado ng ilang mga naka-print na bolt ng 3D na bot,
  • Ipinasa ko muli ang mga linya sa pamamagitan ng puwang ng butas ng laser cut upang paghiwalayin ang mga ito at pagkatapos ay ikonekta ang mga ito sa mga motor na servo.
  • Ang paglakip sa linya ng pangingisda sa tamang posisyon ng servo ay medyo mahirap. Ngunit, ang ginawa ko ay kunin ang matinding mga posisyon ng daliri at ikonekta ito sa matinding posisyon ng servo.
  • Matapos kong makita ang mga tamang posisyon, nag-drill ako ng mga butas sa mga espesyal na puwang para sa mga servo at inikot ang mga servos sa mga tamang lugar na tinitiyak na ang dalawa sa mga servo ay medyo naitaas mula sa iba pa, kung hindi man ay mabangga sila sa panahon ng kanilang operasyon.

Hakbang 7: Programming

Programming
Programming

Bago isulat ang programa, kinailangan kong gawin ang nabagong micro-satshakit upang ma-program. Upang magawa iyon, kailangan kong sundin ang mga hakbang sa ibaba:

  1. Ikonekta ang Arduino Uno sa pc.
  2. Piliin ang tamang port at ang Arduino Uno board sa ilalim ng mga tool.
  3. Sa ilalim ng> File> Mga halimbawa, hanapin at buksan ang "ArduinoISP" sketch.
  4. I-upload ang sketch sa Arduino.
  5. Idiskonekta ang Arduino mula sa pc.
  6. Ikonekta ang board sa Arduino na sumusunod sa eskematiko sa larawan.
  7. Ikonekta ang Arduino sa pc.
  8. Piliin ang board na "Arduino / Genuino Uno" at ang programer na "Arduino bilang ISP".
  9. Mag-click sa> Mga Tool> Burn Bootloader.
  10. Matapos ang bootloader ay matagumpay na nagawa, maaari naming isulat ang aming programa:

// kasama ang library na ginamit ko para sa mga servo motor

# isama ang # isama ang SoftwareSerial mySerial (7, 8); # tukuyin ang MYO_PIN A0 int sensorValue; float boltahe; // humirang ng isang pangalan sa aking servo VarSpeedServo servo1; VarSpeedServo servo2; VarSpeedServo servo3; VarSpeedServo servo4; VarSpeedServo servo5; #define PINKY 5 #define PINKY_PIN 10 #define RINGFINGER 4 #define RINGFINGER_PIN 9 #define MIDDLE 3 #define MIDDLE_PIN 3 #define INDEX 2 #define INDEX_PIN 5 #define THUMB 1 #define THMBININ (); // ang pin kung saan ko ikinabit ang aking motor servo1.attach (THUMB_PIN); servo2.attach (INDEX_PIN); servo3.attach (MIDDLE_PIN); servo4.attach (RINGFINGER_PIN); servo5.attach (PINKY_PIN); defaultPosition (THUMB, 40); defaultPosition (INDEX, 40); defaultPosition (MIDDLE, 40); defaultPosition (RINGFINGER, 40); defaultPosition (PINKY, 40); mySerial.begin (9600); mySerial.print ("Initializing…"); } void loop () {sensorValue = analogRead (A0); boltahe = sensorValue * (5.0 / 1023.0); mySerial.println (boltahe); pagkaantala (100); kung (boltahe> 1) {closePosition (PINKY, 60); closePosition (RINGFINGER, 60); closePosition (MIDDLE, 60); closePosition (INDEX, 60); closePosition (THUMB, 60); } iba pa {openPosition (PINKY, 60); openPosition (RINGFIGER, 60); openPosition (MIDDLE, 60); openPosition (INDEX, 60); openPosition (THUMB, 60); }} void defaultPosition (uint8_t daliri, uint8_t _speed) {kung (daliri == PINKY) servo5.write (90, _speed, true); kung hindi man kung (daliri == RINGFINGER) servo4.write (70, _pabilis, totoo); kung hindi man kung (daliri == MIDDLE) servo3.write (20, _pabilis, totoo); kung hindi man kung (daliri == INDEX) servo2.write (20, _pabilis, totoo); kung hindi man kung (daliri == THUMB) servo1.write (20, _pabilis, totoo); } walang bisa closePosition (uint8_t daliri, uint8_t _speed) {kung (daliri == PINKY) servo5.write (180, _speed, true); kung hindi man kung (daliri == RINGFINGER) servo4.write (180, _pabilis, totoo); kung hindi man kung (daliri == MIDDLE) servo3.write (180, _speed, true); kung hindi man kung (daliri == INDEX) servo2.write (180, _pabilis, totoo); kung hindi man kung (daliri == THUMB) servo1.attach (180, _pabilis, totoo); } walang bisa openPosition (uint8_t daliri, uint8_t _speed) {kung (daliri == PINKY) servo5.write (0, _speed, true); kung hindi man kung (daliri == RINGFINGER) servo4.write (0, _pabilis, totoo); kung hindi man kung (daliri == MIDDLE) servo3.write (0, _pabilis, totoo); kung hindi man kung (daliri == INDEX) servo2.write (0, _pabilis, totoo); kung hindi man kung (daliri == THUMB) servo1.write (0, _pabilis, totoo); } // Matapos isulat ang programa ay i-upload namin ito sa board sa pamamagitan ng> Sketch> I-upload gamit ang Programmer // Ngayon ay maaari mong alisin ang kagustuhan ang iyong micro satshakit mula sa iyong arduino at paandarin ito sa pamamagitan ng power bank // At voila !! Meron kang prosthetic arm

Inirerekumendang: