Isi kandungan:

RoboGlove: 12 Langkah (dengan Gambar)
RoboGlove: 12 Langkah (dengan Gambar)

Video: RoboGlove: 12 Langkah (dengan Gambar)

Video: RoboGlove: 12 Langkah (dengan Gambar)
Video: Detik-Detik Pegawai PLN Kesetrum di Tiang Listrik 2024, Julai
Anonim
RoboGlove
RoboGlove

Kami adalah sekumpulan pelajar ULB, Université Libre de Bruxelles. Projek kami terdiri daripada pengembangan sarung tangan robot yang mampu membuat daya cengkaman membantu orang meraih sesuatu.

GULA

Sarung tangan mempunyai sambungan wayar yang menghubungkan jari ke beberapa motor servo: wayar dilekatkan pada hujung jari dan servo, jadi apabila servo bertukar, wayar ditarik dan jari dilenturkan. Dengan cara ini, dengan mengawal cengkaman yang dilakukan oleh pengguna melalui beberapa sensor tekanan di hujung jari, kita dapat menggerakkan motor dengan cara terkawal dan membantu mencengkam dengan membengkokkan jari secara sepadan dengan putaran motor dan sehingga ke penggulungan wayar. Dengan cara ini kita seharusnya dapat membiarkan orang yang lemah mencengkam objek atau menolong orang yang berada dalam keadaan fisiologi untuk mencengkam objek dan menyimpannya tanpa usaha.

REKAAN

Model ini telah dikembangkan untuk membuat pergerakan tangan bebas sebanyak mungkin. Sebenarnya, kami 3D mencetak hanya bahagian yang sangat diperlukan yang kami perlukan untuk menyambungkan wayar, motor dan jari.

Kami mempunyai cupola atas yang dicetak dalam PLA pada setiap jari: ini adalah bahagian terminal di mana wayar harus disambungkan dan ia mesti memberi perlindungan kepada sensor tekanan yang terpasang di dalamnya. Sensor tekanan dilekatkan, dengan lem panas, di antara hujung PLA dan sarung tangan.

Kemudian kami mempunyai dua cincin cetak 3D, setiap jari, yang menjadi petunjuk untuk wayar. Ibu jari adalah satu-satunya jari yang hanya mempunyai satu cincin yang dicetak. Terdapat satu wayar per jari, dilipat separuh di hujung jari. Kedua bahagian melewati dua panduan bahagian cupola dan di kedua cincin: mereka dimasukkan terus ke dalam lubang yang kami buat di bahagian luar cincin ini. Kemudian mereka disatukan ke dalam roda yang disambungkan terus ke motor. Roda telah direalisasikan agar dapat melilit wayar: kerana motor kita mempunyai putaran tidak lengkap (lebih rendah dari 180 °) kita menyedari roda untuk menarik wayar untuk jurang 6 sentimeter iaitu jarak perlu menutup tangan sepenuhnya.

Kami juga telah mencetak dua plat untuk memasang motor servo dan arduino ke lengan. Lebih baik memotongnya dengan kayu atau plastik tegar dengan pemotong laser.

Langkah 1: Senarai Beli-belah

Senarai membeli-belah
Senarai membeli-belah
Senarai membeli-belah
Senarai membeli-belah
Senarai membeli-belah
Senarai membeli-belah

Sarung tangan dan wayar:

1 sarung tangan yang ada (mesti dijahit)

Seluar jeans lama atau kain kaku yang lain

Wayar nilon

Tiub polietilena berketumpatan rendah (Diameter: Ketebalan 4mm: 1mm)

Elektronik:

Arduino Uno

1 Bateri Pemegang bateri 9V + 9V

1 suis elektronik

1 papan kenyataan

3 motor servo (1 per jari)

3 baling-baling (disediakan dengan servo)

4 Bateri AA + 4 AA Bateri pemegang

3 sensor tekanan (1 per jari)

3 perintang 330 ohm (1 setiap jari)

6 wayar elektrik (2 per sensor)

Skru, kacang dan lekapan:

Panjang 4 M3 10mm (untuk memperbaiki Arduino)

Panjang 2 M2.5 12mm (untuk memasang pemegang bateri 9V)

6 kacang yang sesuai

Panjang 6 M2 10mm (2 per servo untuk memasang roda ke servo)

12 ikatan kabel kecil (untuk memasang plat dan suis)

7 ikatan kabel besar (2 per motor dan 1 untuk pemegang bateri 4 AA)

Alat terpakai:

Pencetak 3D (Ultimaker 2)

Bahan untuk menjahit

Pistol gam panas

Pilihan: pemotong laser

Langkah 2: Sediakan Struktur Boleh Pakai

Sediakan Struktur Boleh Pakai
Sediakan Struktur Boleh Pakai

Struktur yang boleh dipakai telah dibuat dengan beberapa pakaian: dalam keadaan kita menggunakan sarung tangan biasa untuk juruelektrik dan kain jeans untuk struktur di sekitar pergelangan tangan. Mereka dijahit bersama.

Tujuannya adalah untuk mempunyai struktur boleh pakai yang fleksibel.

Strukturnya harus lebih kuat daripada sarung tangan bulu biasa kerana harus dijahit.

Kami memerlukan struktur yang boleh dipakai di pergelangan tangan untuk menahan pembekal kuasa dan penggerak, dan kami memerlukannya agar stabil, jadi kami memilih untuk membuat penutup dapat disesuaikan dengan menggunakan jalur Velcro (jalur pelekat automatik) pada pergelangan jeans.

Beberapa batang kayu dijahit di dalamnya untuk menjadikan seluar jeans lebih kaku.

Langkah 3: Sediakan Bahagian Berfungsi

Sediakan Bahagian Berfungsi
Sediakan Bahagian Berfungsi

Bahagian tegar direalisasikan melalui percetakan 3D dalam PLA dari fail.stl dalam keterangan:

Cincin Jari x5 (dengan skala yang berbeza: skala 1x 100%, skala 2x 110%, skala 2x 120%);

Finger Extremity x3 (dengan skala yang berbeza: skala 1x 100%, skala 1x 110%, skala 1x 120%);

Roda untuk motor x3

Untuk bahagian jari, skala yang berbeza diperlukan kerana ukuran yang berbeza dari setiap jari dan setiap phalanx.

Langkah 4: Betulkan Sensor ke Ekstremitas

Betulkan Sensor ke Ekstremitas
Betulkan Sensor ke Ekstremitas

Sensor tekanan mula-mula dipateri ke wayar kabel.

Mereka kemudian dilekatkan dengan penggunaan pistol gam di bahagian hujung jari: sebilangan kecil gam diletakkan di dalam hujung, di sisi dengan dua lubang, kemudian sensor segera digunakan dengan bahagian aktif (bulat) di gam (mempunyai piezoelektrik menghadap bahagian dalam struktur dan bahagian plastik secara langsung pada gam). Kabel kabel harus melintasi bahagian atas jari ke punggungnya, agar kabel elektrik dapat berjalan di bahagian belakang tangan.

Langkah 5: Betulkan Bahagian Bercetak 3D ke Sarung Tangan

Betulkan Bahagian Bercetak 3D ke Sarung Tangan
Betulkan Bahagian Bercetak 3D ke Sarung Tangan

Semua bahagian yang kaku (hujung, cincin) harus dijahit ke sarung tangan agar terpaku.

Untuk meletakkan cincin dengan betul, pakai sarung tangan terlebih dahulu dan cuba pasangkan cincin, satu per phalanx, tanpa menyentuh mereka semasa penutupan tangan. Kira-kira, cincin pada indeks akan dipasang 5mm di atas pangkal jari dan 17 hingga 20mm di atas yang pertama. Mengenai jari tengah, cincin pertama akan berada lebih kurang 8 hingga 10mm di atas pangkal jari, dan yang kedua sekitar 20mm di atas yang pertama. Untuk apa yang berkaitan dengan ibu jari, ketepatan yang diperlukan sangat rendah, kerana tidak berisiko mengganggu cincin yang lain, jadi cubalah memakainya pada sarung tangan yang usang, lukis garis di sarung tangan di mana anda lebih suka memiliki cincin supaya anda dapat menjahitnya.

Mengenai jahitan, tidak diperlukan teknik atau kemampuan tertentu. Dengan jarum, benang jahit berpusing di sekeliling cincin, melewati permukaan sarung tangan. Langkah 3-4mm antara dua lubang pada sarung tangan sudah membuat lekapan yang cukup kuat, tidak perlu membuat jahitan yang sangat padat.

Teknik yang sama digunakan untuk memperbaiki hujung kaki: bahagian atas hujungnya berlubang untuk membuat jarum melintas dengan mudah, jadi hanya bentuk seperti salib di bahagian atas jari yang harus dijahit ke sarung tangan.

Kemudian panduan polietilena juga harus diperbaiki, dengan mengikuti tiga kriteria:

hujung distal (menghadap jari) harus menghadap ke arah jari, untuk mengelakkan geseran tinggi dengan wayar nilon yang akan masuk ke dalamnya;

hujung distal harus cukup jauh untuk tidak mengganggu penutupan tangan (sekitar 3cm lebih rendah daripada pangkal jari cukup baik, 4 hingga 5cm untuk ibu jari);

tiub mesti saling melintasi sesedikit mungkin, untuk mengurangkan sebahagian besar sarung tangan dan pergerakan setiap tiub

Mereka diperbaiki dengan menjahitnya ke sarung tangan dan pergelangan tangan, dengan teknik yang sama seperti di atas.

Untuk mengelakkan risiko meluncur melalui jahitan, beberapa gam ditambahkan di antara tiub dan sarung tangan.

Langkah 6: Sediakan Roda untuk Servos

Sediakan Roda untuk Servos
Sediakan Roda untuk Servos

Kami menggunakan roda yang direka khas, dilukis dan 3D dicetak oleh kami sendiri untuk projek ini (fail.stl dalam keterangan).

Setelah roda dicetak, kita harus memasangkannya ke baling-baling servo dengan memasang skru (skru M2, 10mm). Oleh kerana lubang baling-baling lebih kecil dengan diameter 2mm dengan mengacaukan M2, tidak diperlukan kacang.

3 baling-baling boleh digunakan pada setiap servo.

Langkah 7: Pasangkan Motor ke Lengan

Betulkan Motor ke Lengan
Betulkan Motor ke Lengan

Langkah ini merangkumi pemasangan motor ke lengan; untuk melakukan itu, kami perlu mencetak plak PLA tambahan untuk mendapatkan sokongan.

Sebenarnya motor tidak dapat dipasang terus ke lengan kerana roda, yang diperlukan untuk menarik wayar, dapat disekat semasa gerakan kerana sarung tangan. Oleh itu, kami mencetak plak PLA berdimensi 120x150x5 mm.

Kemudian kami memasang plak pada sarung tangan kami dengan beberapa ikatan kabel: kami membuat lubang ke sarung tangan hanya menggunakan gunting, kemudian kami membuat lubang ke plak plastik dengan gerudi dan menyatukan semuanya. Empat lubang ke dalam plak diperlukan di tengahnya, di antara perimeternya, untuk melewati ikatan kabel. Mereka dibuat dengan gerudi. Ini di bahagian tengah dan bukan di sisi pinggan untuk dapat menutup seluar jeans di lengan tanpa piring menyekatnya kerana plat tidak lentur.

Kemudian lubang yang lain juga digerudi ke plak plastik untuk memperbaiki motor. Motor dipasang dengan dua ikatan kabel bersilang. Beberapa gam ditambahkan di sisi mereka untuk memastikan pemasangannya.

Motor harus dipasang sedemikian rupa sehingga roda tidak saling mengganggu. Jadi ada yang terpisah di sebelah kiri dan kanan tangan: dua di sisi, dengan roda berpusing ke arah yang berlawanan dan satu di sisi yang lain.

Langkah 8: Kod Arduino

Kod di Arduino
Kod di Arduino

Kodnya telah dikembangkan dengan cara yang mudah: untuk menggerakkan atau tidak motor. Servo digerakkan hanya jika bacaan melebihi nilai tertentu (ia diperbaiki oleh percubaan dan kesalahan kerana kepekaan setiap sensor tidak sama). Terdapat dua kemungkinan lenturan, rendah untuk daya rendah dan sepenuhnya untuk daya kuat. Setelah jari dibengkokkan, kekuatan pengguna tidak diperlukan untuk menjaga kedudukan jari tetap. Sebab pelaksanaan ini adalah kerana sebaliknya telah disebutkan bahawa jari perlu terus menerus memberikan kekuatan pada sensor dan sarung tangan tidak memberi kelebihan. Untuk melepaskan lenturan jari, kekuatan baru harus diterapkan pada sensor tekanan, bertindak sebagai perintah berhenti.

Kita boleh membahagikan kod dalam tiga bahagian:

Sensor masuk:

Mula-mula kami menginisialisasi tiga pemboleh ubah integer: membaca1, membaca2, membaca3 untuk setiap sensor. Sensor dimasukkan ke input analog A0, A2, A4. Setiap pemboleh ubah untuk bacaan ditetapkan seperti:

  • membaca1 di mana ditulis nilai yang dibaca dalam input A0,
  • membaca2 di mana dituliskan nilai yang dibaca dalam input A2,
  • membaca3 di mana ditulis nilai yang dibaca dalam input A4

Dua ambang ditetapkan dengan jari yang sesuai dengan dua kedudukan pengaktifan servo. Ambang ini berbeza untuk setiap jari kerana daya yang dikenakan tidak sama untuk setiap jari dan kepekaan ketiga sensor tidak sama persis.

Permulaan motor:

Tiga pemboleh ubah char (save1, save2, save3), satu untuk setiap motor diinisialisasi pada 0. Kemudian pada penyediaan kami menentukan pin di mana kami memasang motor masing-masing: pin 9, pin 6 dan pin 3 untuk servo1, servo2, servo3; semua dimulakan pada nilai 0.

Kemudian servo digerakkan melalui perintah servo.write () yang dapat memperbaiki sudut yang diterima sebagai input pada servo. Juga melalui percubaan dan kesalahan dua sudut yang baik, yang diperlukan untuk membengkokkan jari dalam dua posisi yang sesuai dengan cengkaman kecil dan cengkaman besar, dijumpai.

Oleh kerana satu motor perlu berpusing ke arah yang berlawanan kerana penetapannya, titik permulaannya tidak sifar tetapi sudut maksimum dan penurunan apabila daya dikenakan untuk dapat membalikkan arah yang berlawanan.

Pautan antara sensor dan motor:

Pilihan save1, save2, save3 dan reading1, reading2, reading3 bergantung pada pematerian. Tetapi untuk setiap jari, sensor dan motor mesti mempunyai nombor yang sama.

Kemudian dalam gelung, jika keadaan digunakan untuk menguji apakah jari sudah berada dalam posisi membongkok atau tidak dan jika tekanan diterapkan atau tidak pada sensor. Apabila sensor mengembalikan nilai, daya perlu diterapkan tetapi dua kes berbeza mungkin:

  • Sekiranya jari belum dibengkokkan, membandingkan nilai ini yang dikembalikan oleh sensor ke ambang, sudut yang sesuai diterapkan pada servo.
  • Sekiranya jari sudah dibengkokkan, ini bermaksud bahawa pengguna ingin melepaskan lenturan dan kemudian sudut permulaan diterapkan pada servo.

Ini dilakukan untuk setiap motor.

Kemudian kami menambah kelewatan 1000 ms untuk mengelakkan terlalu kerap menguji nilai sensor. Sekiranya nilai penundaan yang terlalu kecil diterapkan, berisiko untuk membuka kembali tangan secara langsung setelah menutupnya sekiranya kekuatan dikenakan pada waktu yang lebih lama daripada waktu tunda.

Semua proses untuk satu sensor ditunjukkan dalam carta alir di sini di atas.

KOD SELURUH

#masuk servo servo1; Servo servo2; Servo servo3; int membaca1; int membaca2; int membaca3; char save1 = 0; // servo bermula dari keadaan 0, keadaan tidur char save2 = 0; char save3 = 0; persediaan kosong (kekosongan) {Serial.begin (9600); servo2.attach (9); // servo pada pin digital 9 servo2.write (160); // titik awal untuk servo servo1.attach (6); // servo pada pin digital 6 servo1.write (0); // titik awal untuk servo servo3.attach (3); // servo pada pin digital 3 servo3.write (0); // titik awal untuk servo

}

gelung void (kekosongan) {reading1 = analogRead (A0); // dilampirkan pada analog 0 bacaan2 = analogRead (A2); // dilampirkan pada analog 2 bacaan3 = analogRead (A4); // dilampirkan pada analog 4

// if (bacaan2> = 0) {Serial.print ("Nilai sensor ="); // Contoh arahan yang digunakan untuk penentukuran ambang sensor pertama

// Serial.println (membaca2); } // else {Serial.print ("Nilai sensor ="); Bersiri.println (0); }

if (reading1> 100 dan save1 == 0) {// jika sensor mendapat nilai tinggi dan tidak dalam keadaan tidur save1 = 2; } // pergi ke keadaan 2 yang lain jika (membaca1> 30 dan simpan1 == 0) {// jika sensor mendapat nilai sederhana dan tidak dalam keadaan tidur save1 = 1; } // harus menyatakan 1 yang lain jika (membaca1> 0) {// jika nilainya tidak sifar dan tidak ada syarat sebelumnya yang betulkan save1 = 0;} // pergi ke keadaan tidur

jika (save1 == 0) {servo1.write (160); } // lepaskan yang lain jika (save1 == 1) {servo1.write (120); } // sudut sederhana menarik yang lain {servo1.write (90); } // sudut tarikan maksimum

jika (membaca2> 10 dan save2 == 0) {// sama dengan servo 1 save2 = 2; } lain jika (membaca2> 5 dan simpan2 == 0) {save2 = 1; } lain jika (membaca2> 0) {save2 = 0;}

jika (save2 == 0) {servo2.write (0); } lain jika (save2 == 1) {servo2.write (40); } lain {servo2.write (60); }

jika (membaca3> 30 dan save3 == 0) {// sama dengan servo 1 save3 = 2; } lain jika (membaca3> 10 dan simpan3 == 0) {save3 = 1; } lain jika (membaca3> 0) {save3 = 0;}

jika (save3 == 0) {servo3.write (0); } lain jika (save3 == 1) {servo3.write (40); } lain {servo3.write (70); } kelewatan (1000); } // tunggu sebentar

Langkah 9: Betulkan Arduino, Baterai dan Papan Verob ke Lengan

Betulkan Arduino, Bateri dan Papan Pengawal ke Lengan
Betulkan Arduino, Bateri dan Papan Pengawal ke Lengan
Betulkan Arduino, Bateri dan Papan Pengawal ke Lengan
Betulkan Arduino, Bateri dan Papan Pengawal ke Lengan

Plat lain dicetak dalam PLA untuk memperbaiki pemegang bateri dan arduino.

Plat mempunyai dimensi: 100x145x5mm.

Terdapat empat lubang untuk mengacaukan arduino dan dua lagi untuk memasang pemegang bateri 9V. Lubang dibuat di pemegang bateri 6V dan di piring untuk menggunakan tali leher untuk memasangkannya bersama. Beberapa gam ditambahkan untuk memastikan pemasangan pemegang ini. Suis dipasang dengan dua ikatan kabel kecil.

Terdapat juga empat lubang yang digunakan untuk memasang piring pada seluar jeans dengan menggunakan tali leher.

Papan kawalan diletakkan di arduino seperti perisai.

Langkah 10: Sambungkan Elektronik

Sambungkan Elektronik
Sambungkan Elektronik

Litar disolder di papan tanda seperti yang dilaporkan dalam skema di atas.

Arduino mempunyai bateri 9V sebagai bekalan dan suis disambungkan di antaranya untuk mematikan Arduino. Bateri 6V diperlukan untuk motor servo yang memerlukan banyak arus dan pin ketiga servo disambungkan di pin 3, 6 dan 9 untuk mengawalnya dengan PWM.

Setiap sensor disambungkan di sisi oleh 5V Arduino dan di sisi lain oleh perintang 330 ohm yang disambungkan ke tanah dan pin A0, A2 dan A4 untuk mengukur ketegangan.

Langkah 11: Tambahkan Wayar Nilon

Tambah Wayar Nilon
Tambah Wayar Nilon

Kawat nilon dibuat untuk melewati kedua-dua lubang di hujung kaki dan cincin seperti yang dilihat dalam gambar, maka kedua-dua bahagian dawai akan masuk ke dalam panduan polietilena dan tetap bersama hingga hujung panduan, ke motor. Panjang wayar ditentukan pada ketika ini, mereka perlu cukup panjang untuk mengelilingi roda servo dengan jari lurus.

Mereka dipasang pada roda dengan simpul melewati dua lubang kecil yang terdapat pada fail.stl dan dengan gam panas untuk penstabilan tambahan.

Langkah 12: Nikmati

Ia berfungsi seperti yang diharapkan.

Pada dorongan pertama ia membengkokkan jari dan pada yang kedua melepaskannya. Tidak diperlukan daya ketika jari dibengkokkan.

Namun tiga masalah masih ada:

- Kita harus berhati-hati membuat impuls lebih pendek dari 1 saat untuk menggerakkan servo jika tidak, wayar segera dilepaskan setelah ditarik seperti yang dijelaskan dalam langkah 8 mengenai kod Arduino.

- Bahagian plastik sedikit tergelincir jadi kami telah menambahkan sedikit gam panas di hujung untuk menambahkan geseran.

- Jika beban berat di jari, sensor akan memiliki nilai yang besar sepanjang waktu dan servo akan terus berputar.

Disyorkan: