Daftar Isi:

Mouse UDARA 3D - Arduino + Pemrosesan: 5 Langkah
Mouse UDARA 3D - Arduino + Pemrosesan: 5 Langkah

Video: Mouse UDARA 3D - Arduino + Pemrosesan: 5 Langkah

Video: Mouse UDARA 3D - Arduino + Pemrosesan: 5 Langkah
Video: Arduino project 😎^ Arduino #arduino #2022 #2021 #2023 #dc #arduinoproject #diy #foryou 2024, Juli
Anonim
Mouse UDARA 3D | Arduino + Pemrosesan
Mouse UDARA 3D | Arduino + Pemrosesan

Mouse UDARA 3D | Arduino + ProcessingSaya seorang mahasiswa desain Industri, dan tahun lalu sebagai bagian dari kursus yang disebut "Teknologi sebagai materi RAW" saya membangun proyek ini sebagai pekerjaan akhir saya. Saya bekerja sebagian besar waktu dengan SolidWorks, perangkat lunak CAD untuk desain dan rekayasa. Memutar benda padat di layar dilakukan dengan menggunakan tombol tengah mouse. Saya mencari sesuatu yang lebih intuitif. Ini adalah bagaimana saya akhirnya melakukan mouse udara 3D, di mana rotasi sebenarnya dari suatu objek dilakukan dengan menggerakkan mouse di udara tengah pada semua 3 sumbu - dengan cara yang sama Anda akan memutar objek jika Anda memegangnya di tangan Anda. Saya menggunakan Arduino, beberapa sensor dan sketsa Pemrosesan. CATATAN:- Sampai sekarang, ini hanya demonstrasi konsep, karena tidak ada plug-in yang sebenarnya untuk bekerja dengan SolidWork (tapi tentu saja, jangan ragu untuk tulis satu jika Anda tahu caranya:)- Karena semua perangkat keras bukan milik saya, mouse 3D sebenarnya sudah lama hilang, dan saya menggunakan beberapa foto dan video untuk mencoba memahami semua ini, dan memberi Anda beberapa ide jika Anda ingin mencoba dan membangunnya sendiri… Nikmatilah… (Ini adalah instruksi pertama saya) Berikut adalah demo video dari proyek yang telah selesai

Langkah 1: Perangkat Keras dan Barang

Perangkat Keras dan Barang
Perangkat Keras dan Barang
Perangkat Keras dan Barang
Perangkat Keras dan Barang
Perangkat Keras dan Barang
Perangkat Keras dan Barang
Perangkat Keras dan Barang
Perangkat Keras dan Barang

Ini bukan instruksi termurah karena didasarkan pada akselerometer 3 sumbu + sensor kompas. Hal-hal yang Anda perlukan:* Mouse - yang digunakan lebih baik (hanya karena digunakan dan lebih murah), mouse apa pun harus melakukannya. Anda memang perlu memiliki ruang untuk menampung sensor dan beberapa kabel tambahan, jadi jangan gunakan mouse ekstra ramping / ekstra kecil.* Modul Kompas dengan Kompensasi Kemiringan - HMC634 - Ini adalah sensor 3 sumbu, dibeli di SpurkFun untuk ~ $149* Konverter Level Logika - HARUS! Karena Arduino adalah 5V dan sensor 3 sumbu adalah 3.3V, Anda memerlukan salah satunya untuk mengubah 5V menjadi 3.3V. Ini memiliki nama besar, tetapi hanya berharga $1,95 di SparkFun.* Detektor Optik Besar / Fototransistor - Ini adalah sensor optik sederhana, yang digunakan dalam proyek ini untuk mendeteksi saat mouse diangkat dari permukaan kerja. Dibeli di SparkFun seharga $2,25 Jika Anda tidak memiliki cukup ruang untuk menempatkan mouse ini di dalam mouse pilihan Anda, Anda dapat menggunakan mouse ini, yang lebih kecil dan lebih murah. * Satu (1) LED - apalagi warnanya, ultra terang akan bekerja lebih baik.* 2 Resistor - Satu (1) x 100Ω dan Satu (1) x 100KΩ (Untuk sensor optik)* Papan Arduino - DA! Saya menggunakan model Diecimila. Duemilanove yang lebih baru tersedia di SparkFun dengan harga sekitar $29,95 (Seharusnya juga berfungsi) + Perangkat lunak Arduino diinstal.* Perangkat lunak pemrosesan diinstal.* Kode sumber proyek (Jangan khawatir, Anda akan mengunduhnya dalam beberapa detik.)Plus:Beberapa lem panas (untuk memperbaiki barang-barang di tempatnya)Beberapa sekrup kecil. Sekitar 10cm dari jangkar kayu 6mm (Dia.) Beberapa kabel tambahan. Besi solder. Sesuatu untuk memotong plastik, saya menggunakan pisau pemotong dan file (UNTUK pembentukan). ("Ok, jangan membenci saya untuk langkah ini, bahasa Inggris adalah bahasa kedua saya, jika saya salah, saya minta maaf, saya yakin Anda akan mengerti apa yang saya ambil sebentar lagi. Anda akan melihatnya di gambar")

Langkah 2: Elektronik

Elektronik
Elektronik
Elektronik
Elektronik

Semuanya perlu disolder bersama… Di satu sisi…CATATAN: Sensor 3 sumbu adalah barang kecil yang mahal, periksa kembali kabel sebelum menyalakan semuanya… Lihat skema terlampir untuk semua kabel yang digunakan dalam proyek ini. Kode sumber terlampir hanya dapat berfungsi jika Anda menggunakan nomor pin yang sama dengan yang saya gunakan, tetapi jangan ragu untuk mengubahnya saat menghubungkan selama Anda mengubah nomor yang sesuai dalam kode. Menghubungkan sensor 3 sumbu ke konverter level logika: Sensor VCC -> Arduino 3V3Sensor GND -> Arduino GndSensor SDA -> Konverter TXI (Chan1) Konverter TXO (Chan1) -> Arduino ANALOG IN 4Sensor SCL -> Konverter TXI (Chan2) Konverter TXO (Chan2) -> Arduino ANALOG IN 5Converter GND (setidaknya salah satunya) -> Arduino GndConverter HV -> Arduino 5VConverter LV -> Arduino 3V3Sensor optik ke Arduino:Lihat gambar terlampirDigital in = Pin 11 pada ArduinoLED:GND ke beberapa GND (Saya menggunakan salah satu sensor optik)+ ke Arduino PIN 13 (Ini dilakukan karena pin ini sudah memiliki resistor terpasang, jika Anda menggunakan yang berbeda, pastikan untuk menggunakan resistor agar LED tidak terbakar)

Langkah 3: Mempersiapkan Mouse

Mempersiapkan Mouse
Mempersiapkan Mouse
Mempersiapkan Mouse
Mempersiapkan Mouse
Mempersiapkan Mouse
Mempersiapkan Mouse

Di sinilah sensor menemukan tempatnya di dalam rumah mouse. Temukan tempat terbaik untuk memasang sensor 3 sumbu. Pastikan itu diratakan dan perhatikan orientasinya (Anda akan tahu kapan Anda akan memiliki sensor di tangan) Anda dapat memperbaikinya sesuka Anda, saya menggunakan 2 potong jangkar kayu pendek, dibor untuk menerima 2 sekrup kecil, dan lem panas ke papan utama mouse. Untuk sensor optik, bentuk lubang persegi panjang di bagian bawah mouse, idenya adalah agar sensor "melihat" meja sepanjang waktu. Ketika mouse diangkat dan status sensor "terbuka" (tidak ada meja untuk dilihat) mouse beralih ke mode 3D (menjalankan sketsa Pemrosesan)Bentuk lubang lain untuk merutekan kabel tambahan (dari sensor ke Arduino) keluar dari perumahan plastik. Milik saya terletak di sisi kanan mouse. Perbaiki LED di mana akan ditampilkan. Dalam proyek ini LED adalah indikator mode 3D. Saya menempatkan milik saya di sebelah roda mouse silikon. Saat mouse diangkat, roda memiliki cahaya biru yang bagus.

Langkah 4: Kode Sumber

Kode untuk Arduino ditulis oleh Shachar Geiger, guru saya, Dan telah dimodifikasi oleh saya untuk proyek ini. Kode kubus 3D adalah kode dasar yang ditemukan di situs web Processing. Saya memodifikasinya sedikit. Dalam kode, potongan ini mengubah informasi mentah yang berasal dari sensor (biasanya -180 hingga 180 x 10) menjadi 0-255 getHeading();Serial.write ('x');x = (x +1800) / 14;Serial.write(x);Serial.write('y');y = (y+1800) / 14;Serial.write(y);Serial.write('z');z= (z+1800) / 14;Serial.tulis(z); Informasi dari sensor dan Arduino masuk ke sketsa Pemrosesan untuk setiap sumbu terpisah, tetapi dengan huruf sumbu sebelumnya (untuk exp. X12 Y200 Z130), kode berikut menghapus huruf dan hanya menyisakan nilai yang akan dikirim ke COM port while(port.available() == 0){}char reading = 0; while (reading != 'x') {while(port.available() == 0){}reading = (char)port.read ();}X = port.read(); while (membaca != 'y') {while(port.available() == 0){}reading = (char)port.read();}Y = port.read(); while (membaca != 'z') {while(port.available() == 0){}reading = (char)port.read();}Z = port.read(); Potongan kode ini menghapus semua nilai negatif… if ((X != -1) && (Y != -1) && (Z != -1)){rotateZ(-(float)Y/25.0);rotateX((float)X/25.0);rotateY((float)Z/25.0);pX = X;pY = Y;pZ = Z;} else {rotateZ(-(float)pY/25.0);rotateX((float)pX /25.0);rotateY((float)pZ/25.0);} File ZIP terlampir berisi Arduino dan kode Pemrosesan

Langkah 5: Video

Itu saja…Ini adalah proyek akhir dalam sebuah video. Ada kesalahan kecil (Anda dapat melihat bahwa kubus kadang-kadang "melompat" di video), Ini karena sumbu Z, mungkin tidak terjadi pada Anda …

Direkomendasikan: