Daftar Isi:

Kursi Roda Terkendali Computer Vision Dengan Manekin: 6 Langkah (dengan Gambar)
Kursi Roda Terkendali Computer Vision Dengan Manekin: 6 Langkah (dengan Gambar)

Video: Kursi Roda Terkendali Computer Vision Dengan Manekin: 6 Langkah (dengan Gambar)

Video: Kursi Roda Terkendali Computer Vision Dengan Manekin: 6 Langkah (dengan Gambar)
Video: Proses pasang Ring Jantung atau Cincin Jantung #cardio #cardiology #ringjantung 2024, Juli
Anonim
Image
Image
Kursi Roda Terkendali Visi Komputer Dengan Manekin
Kursi Roda Terkendali Visi Komputer Dengan Manekin
Kursi Roda Terkendali Visi Komputer Dengan Manekin
Kursi Roda Terkendali Visi Komputer Dengan Manekin

Proyek oleh AJ Sapala, Fanyun Peng, Kuldeep Gohel, Ray LC. Dapat diinstruksikan oleh AJ Sapala, Fanyun Peng, Ray LC.

Kami membuat kursi roda dengan roda yang dikendalikan oleh papan Arduino, yang pada gilirannya dikendalikan oleh raspberry pi yang menjalankan openCV melalui Processing. Ketika kami mendeteksi wajah di openCV, kami menggerakkan motor ke arahnya, memutar kursi roda sehingga menghadap orang tersebut, dan manekin (melalui mulutnya) akan mengambil gambar yang sangat menakutkan dan membagikannya kepada dunia. Ini jahat.

Langkah 1: Desain, Prototipe, dan Skema Kursi Roda

Desain, Prototipe, dan Skema Kursi Roda
Desain, Prototipe, dan Skema Kursi Roda
Desain, Prototipe, dan Skema Kursi Roda
Desain, Prototipe, dan Skema Kursi Roda
Desain, Prototipe, dan Skema Kursi Roda
Desain, Prototipe, dan Skema Kursi Roda
Desain, Prototipe, dan Skema Kursi Roda
Desain, Prototipe, dan Skema Kursi Roda

Konsep awal didasarkan pada gagasan bahwa benda yang dapat dipindahkan akan dapat memata-matai teman sekelas yang tidak curiga dan mengambil gambar jelek mereka. Kami ingin menakut-nakuti orang dengan bergerak ke arah mereka, meskipun kami tidak mengantisipasi masalah mekanis motor menjadi begitu sulit. Kami mempertimbangkan fitur yang akan membuat karya tersebut semenarik mungkin (dengan cara yang jahat) dan memutuskan untuk menerapkan manekin di kursi roda yang dapat bergerak ke arah orang menggunakan visi komputer. Prototipe hasil dibuat oleh AJ dari kayu dan kertas, sementara Ray dan Rebecca membuat OpenCV berjalan pada raspberry pi, memastikan bahwa wajah dapat dideteksi dengan andal.

Langkah 2: Bahan dan Pengaturan

Bahan dan Pengaturan
Bahan dan Pengaturan
Bahan dan Pengaturan
Bahan dan Pengaturan
Bahan dan Pengaturan
Bahan dan Pengaturan

1x kursi roda (https://www.amazon.com/Medline-Lightweight-Transpo…

2x motor skuter

2x papan motor Cytron

1x arduino UNO R3 (https://www.amazon.com/Arduino-Uno-R3-Microcontrol…

1x raspberry pi 3 (https://www.amazon.com/Raspberry-Pi-RASPBERRYPI3-M…

1x kamera raspberry pi v2 (https://www.amazon.com/Raspberry-Pi-Camera-Module-…

Baterai isi ulang 1x12v

kayu lapis

L-kurung

lantai karet

Langkah 3: Fabrikasi Motor ke Attachment Kursi Roda dan Kepala Manekin

Fabrikasi Motor ke Attachment Kursi Roda dan Kepala Manekin
Fabrikasi Motor ke Attachment Kursi Roda dan Kepala Manekin
Fabrikasi Motor ke Attachment Kursi Roda dan Kepala Manekin
Fabrikasi Motor ke Attachment Kursi Roda dan Kepala Manekin
Fabrikasi Motor ke Attachment Kursi Roda dan Kepala Manekin
Fabrikasi Motor ke Attachment Kursi Roda dan Kepala Manekin
Fabrikasi Motor ke Attachment Kursi Roda dan Kepala Manekin
Fabrikasi Motor ke Attachment Kursi Roda dan Kepala Manekin

AJ membuat peralatan yang memasang motor skuter (2) ke bagian bawah kursi roda dan memasang braket pitch ke timing belt karet yang dibuat khusus. Setiap motor dipasang secara terpisah dan dipasang pada roda yang sesuai. Dua roda, dua motor. Motor kemudian diumpankan dengan daya dan ground melalui dua papan motor Cytron ke Arduino (1) ke Raspberry Pi (1), semua elemen ditenagai dengan baterai isi ulang 12 volt (1). Peralatan motor dibuat menggunakan kayu lapis, braket L, braket persegi, dan pengencang kayu. Dengan membuat penyangga kayu di sekitar motor yang sebenarnya, memasang motor di bagian bawah kursi roda jauh lebih mudah dan dapat dipindahkan untuk mengencangkan timing belt. Peralatan motor dipasang dengan mengebor rangka logam kursi roda dan mengunci kayu ke rangka dengan braket-L.

Timing belt dibuat dari lantai karet. Lantai karet sudah dibuat pitch yang ukurannya sama dengan braket pemintalan motor. Setiap bagian dipangkas dengan lebar yang sesuai dengan braket pemintalan motor. Setiap potongan karet yang dipotong digabungkan bersama menciptakan "sabuk" dengan mengampelas satu ujung dan ujung yang berlawanan dan menerapkan sedikit lem Tongkang untuk menyambung. Tongkang sangat berbahaya, dan Anda harus memakai masker saat menggunakannya, juga menggunakan ventilasi. Saya membuat beberapa jenis ukuran timing belt: super ketat, kencang, sedang. Sabuk kemudian perlu dihubungkan ke roda. Roda itu sendiri memiliki sejumlah kecil area permukaan di pangkalan untuk menemani sabuk. Ruang kecil ini diperbesar dengan silinder kardus dengan karet timing belt yang direkatkan ke permukaannya. Dengan cara ini timing belt dapat menangkap roda untuk membantunya berputar selaras dengan motor skuter yang berputar.

AJ juga membuat dummy head yang mengintegrasikan modul kamera Raspberry Pi. Ray menggunakan kepala dummy dan memasang kamera Pi dan papan ke daerah mulut dummy. Slot dibuat untuk antarmuka USB dan HDMI, dan batang kayu digunakan untuk menstabilkan kamera. Kamera dipasang pada potongan cetak 3D khusus yang memiliki lampiran untuk 1/4-20 sekrup. File terlampir (diadopsi agar sesuai oleh Ray dari thingaverse). AJ menciptakan kepala menggunakan karton, lakban, dan wig pirang dengan spidol. Semua elemen masih dalam tahap prototipe. Kepala boneka itu dipasang ke tubuh manekin wanita dan ditempatkan di kursi kursi roda. Kepala ditempelkan pada manekin menggunakan batang karton.

Langkah 4: Menulis dan Mengkalibrasi Kode

Menulis dan Mengkalibrasi Kode
Menulis dan Mengkalibrasi Kode
Menulis dan Mengkalibrasi Kode
Menulis dan Mengkalibrasi Kode

Rebecca dan Ray pertama kali mencoba menginstal openCV langsung di raspi dengan python (https://pythonprogramming.net/raspberry-pi-camera-… namun tampaknya tidak berfungsi secara langsung. Akhirnya setelah banyak upaya menginstal openCV menggunakan python dan gagal, kami memutuskan untuk menggunakan Processing on pi karena library openCV di Processing bekerja dengan cukup baik. Lihat https://github.com/processing/processing/wiki/Rasp…Perhatikan juga bahwa library ini bekerja dengan port GPIO yang kemudian dapat kami gunakan mengontrol arduino menggunakan komunikasi Serial.

Ray menulis kode visi komputer yang bergantung pada file xml yang dilampirkan untuk mendeteksi wajah. Pada dasarnya ia melihat apakah bagian tengah dari persegi panjang menghadap ke kanan atau kiri dari tengah, dan menggerakkan motor ke arah yang berlawanan sehingga memutar kursi ke muka. Jika wajah cukup dekat, motor dihentikan untuk mengambil gambar. Jika tidak ada wajah yang terdeteksi, kami juga berhenti agar tidak menyebabkan cedera yang tidak perlu (Anda dapat mengubah fungsi itu jika menurut Anda itu tidak cukup jahat).

Rebecca menulis kode Arduino untuk antarmuka dengan papan motor menggunakan komunikasi Serial dengan Pemrosesan pada pi. Kunci penting adalah membuka port serial usb ACM0 ke Arduino dan menghubungkan raspberry pi ke Arduino melalui kabel usb. Hubungkan Arduino dengan driver motor DC untuk mengontrol kecepatan dan arah motor, mengirimkan perintah arah dan kecepatan dari raspberry pi ke Arduino. Pada dasarnya kode Pemrosesan Ray memberi tahu motor kecepatan yang harus dijalankan sementara Arduino membuat tebakan yang adil tentang durasi perintah.

Langkah 5: Integrasikan Kursi Roda, Manekin, serta Kode dan Tes

Image
Image
Integrasikan Kursi Roda, Manekin, serta Kode dan Tes
Integrasikan Kursi Roda, Manekin, serta Kode dan Tes
Integrasikan Kursi Roda, Manekin, serta Kode dan Tes
Integrasikan Kursi Roda, Manekin, serta Kode dan Tes

Menempatkan semua bagian bersama-sama, kami menemukan bahwa masalah utama adalah koneksi motor ke roda kursi roda, karena timing belt sering lepas. Kedua motor dipasang dengan

kursi roda terbalik untuk pemasangan yang lebih mudah. Kedua motor beroperasi dengan baik saat terpasang ke sumber baterai 12 volt. Ketika kursi roda itu sendiri terbalik, motor mengalami kesulitan menggerakkan kursi ke belakang dan ke depan karena berat kursi itu sendiri. Kami mencoba hal-hal seperti mengubah lebar timing belt, menambahkan pasak ke sisi sabuk, dan meningkatkan kekuatan penggerak, tetapi tidak ada yang bekerja dengan andal. Namun, kami dapat menunjukkan dengan jelas saat wajah berada di setiap sisi kursi, motor akan bergerak ke arah yang berlawanan karena deteksi wajah dengan raspberry pi, sehingga kode Pemrosesan dan Arduino bekerja sebagaimana dimaksud, dan motor dapat dikontrol dengan tepat. Langkah selanjutnya adalah membuat cara mengemudi roda kursi yang lebih kokoh dan membuat manekin stabil.

Langkah 6: Nikmati Kursi Roda Manekin Jahat Baru Anda

Nikmati Kursi Roda Manekin Jahat Baru Anda
Nikmati Kursi Roda Manekin Jahat Baru Anda
Nikmati Kursi Roda Manekin Jahat Baru Anda
Nikmati Kursi Roda Manekin Jahat Baru Anda
Nikmati Kursi Roda Manekin Jahat Baru Anda
Nikmati Kursi Roda Manekin Jahat Baru Anda
Nikmati Kursi Roda Manekin Jahat Baru Anda
Nikmati Kursi Roda Manekin Jahat Baru Anda

Kami belajar banyak tentang fabrikasi motor dan driver. Kami berhasil menjalankan deteksi wajah pada mesin kecil dengan raspberry pit. Kami menemukan cara mengontrol motor dengan papan motor dan cara kerja motor. Kami membuat beberapa manekin, figur, dan prototipe keren, dan bahkan memasukkan kamera ke mulutnya. Kami bersenang-senang sebagai tim yang mengolok-olok orang lain. Itu adalah pengalaman yang berharga.

Direkomendasikan: