Daftar Isi:

Iris Peka Cahaya: 4 Langkah
Iris Peka Cahaya: 4 Langkah

Video: Iris Peka Cahaya: 4 Langkah

Video: Iris Peka Cahaya: 4 Langkah
Video: Bagian-bagian Mata Manusia dan Fungsinya 2024, Desember
Anonim
Image
Image
Iris Sensitif Cahaya
Iris Sensitif Cahaya

Tutorial ini menunjukkan cara membuat diafragma iris yang, seperti iris manusia, akan melebar dalam cahaya rendah dan menyempit di lingkungan cahaya terang.

Langkah 1: Pencetakan 3D

Pencetakan 3D
Pencetakan 3D
Pencetakan 3D
Pencetakan 3D
Pencetakan 3D
Pencetakan 3D

Proses pembuatan komponen cetak 3D dari build ini dapat memiliki halaman tutorialnya sendiri, dan pada kenyataannya, itulah yang saya gunakan untuk membuatnya:

www.thingiverse.com/thing:2019585

Saya telah menyertakan file di sini untuk kenyamanan.

Beberapa catatan tentang contoh ini, bilah (atau daun) iris sebenarnya diproduksi dengan printer resin menggunakan file yang sama karena keterbatasan printer 3D. Juga, seluruh cetakan ditingkatkan 10%. Mendapatkan potongan-potongan untuk bekerja bersama membutuhkan beberapa pekerjaan detail, saya akhirnya membentuk potongan-potongan itu dengan kertas pasir halus, pisau utilitas, dan mata bor.

Iris lain yang saya selidiki selama proses ini:

souzoumaker.com/blog-1/2017/8/12/mechanica…

www.instructables.com/id/How-to-make-a-12-…

Langkah 2: Bagian

Bagian
Bagian
Bagian
Bagian
Bagian
Bagian

Gambar menunjukkan bagian-bagian yang Anda perlukan serta beberapa alat dan bahan yang saya gunakan untuk membuat model yang ditampilkan di galeri:

- Diafragma iris cetak 3D

- Motor servo Futaba S3003

- Mikrokontroler Arduino UNO

- Resistor Tergantung Cahaya: resistansi gelap 1M ohm / resistansi cahaya 10 ohm – 20k ohm

- Potensiometer analog 10k ohm

- resistor 500 ohm

- PCB (papan sirkuit tercetak)

- header (lima)

- kabel: hitam, merah, putih, dan kuning

- kabel konektor dupont (dua)

- besi solder (dan solder)

-multimeter

- guntingan kawat

Struktur yang menampung prototipe ini dibuat dengan MDF, kayu lapis 3/4 inci, lem kayu, pistol lem panas, kawat kaku (dari gantungan baju dan klip kertas), serta berbagai bor dan mata bor, gergaji meja dan gergaji pita, power sander dan banyak trial and error. Objek dari foto adalah iterasi ketiga.

Langkah 3: Membangun Sirkuit/Perumahan

Membangun Sirkuit/Perumahan
Membangun Sirkuit/Perumahan
Membangun Sirkuit/Perumahan
Membangun Sirkuit/Perumahan
Membangun Sirkuit/Perumahan
Membangun Sirkuit/Perumahan

Saya memiliki teka-teki gaya "ayam dan telur" saat merancang aspek ini. Karena saya tidak memiliki pengalaman dengan skema elektronik, saya lebih suka memikirkan rangkaian dalam hal konfigurasi sebenarnya, atau skema semu. Saya menemukan bahwa arsitektur rumah MDF/kayu lapis dan kabel saling membatasi dengan cara yang tidak terduga. Saya mencoba untuk datang dengan sesuatu yang secara visual sederhana dan mandiri.

-Potensiometer adalah ide tahap akhir selama brainstorming untuk menambahkan pengatur "sensitivitas", karena kondisi pencahayaan sekitar dapat sangat bervariasi, potensiometer dan resistor bersama-sama menggantikan resistor normal dalam aspek pembagi tegangan rangkaian. Saya tidak bisa menjelaskan secara detail tentang ini karena saya tidak benar-benar tahu cara kerjanya.

-Bagian vertikal dari housing (terbuat dari MDF) agak miring. Untuk memutar pada bidang yang sama dengan iris, saya menggunakan sander sabuk yang dipasang di meja untuk membuat sudut yang sama pada dudukan servo kayu yang saya rekatkan ke dasar kayu lapis.

-Saya juga menemukan bahwa servo lebih suka mengangkat papan MDF langsung dari alas daripada mengartikulasikan iris, jadi saya menambahkan staples penahan kawat yang disisipkan di bagian depan untuk mengunci kedua bagian. Sementara saya melakukannya, saya menambahkan pin untuk papan Arduino dari kabel yang sama. Omong-omong, kabel yang menghubungkan lengan aktuator ke servo adalah klip kertas.

-Iris pas dengan MDF, tetapi bahkan saya menambahkan manik lem panas untuk mencegah seluruh rumah berputar di soket, bukan hanya lengan aktuator. Ini membutuhkan penyelarasan yang lebih tepat dari lengan tuas servo daripada yang saya harapkan. Apa yang mungkin terlihat jelas bagi banyak orang yang menggunakan tutorial ini, meskipun tidak terduga bagi saya ketika saya mulai, adalah bahwa rotasi servo dan rotasi iris adalah 1:1. Saya harus membuat ekstensi lengan plastik kecil untuk servo agar mencapai radius yang sama dengan lengan aktuator iris. Kode awalnya mengambil keuntungan penuh dari potensi rotasi servo, tapi saya akhirnya mengukur rotasi sebenarnya dari iris, kemudian, melalui trial and error, menemukan nilai kustom untuk derajat rotasi servo yang mencapai efek yang menarik.

- Banyak koneksi kabel penting yang tersembunyi di bawah PCB pada gambar. Saya lupa memotret sisi PCB itu sebelum saya menempelkannya ke MDF. Ini yang terbaik, karena tidak ada yang boleh menyalin kekacauan yang saya sembunyikan di bawah potongan kecil PCB itu. Tujuan saya untuk PCB adalah memiliki header untuk konektor 5volt, Ground, dan servo sehingga bagian-bagiannya dapat dengan mudah terlepas untuk pemecahan masalah yang tidak terduga di masa mendatang, sebuah fitur yang berguna. Saya menunjukkan orientasi yang tepat untuk konektor header dengan selembar selotip pada MDF di samping PCB, meskipun saya kira saya bisa menulis langsung di MDF…sepertinya hal yang benar untuk dilakukan pada saat itu.

Langkah 4: Kode

Kode
Kode

#include // perpustakaan servo

Servis servo; //deklarasi nama servo

int sensorPin = A1; // pilih pin input untuk LDR

int sensorNilai = 0; // variabel untuk menyimpan nilai yang berasal dari sensor

int batas waktu = 0; //variabel untuk servo

int sudut = 90; //variabel untuk menyimpan pulsa

batalkan pengaturan()

{

serv.attach(9); // menempelkan servo pada pin 9 ke objek servo Serial.begin(9600); //set port serial untuk komunikasi

}

lingkaran kosong()

{

sensorValue = analogRead(sensorPin); // membaca nilai dari sensor

Serial.println(Nilai sensor); //mencetak nilai yang berasal dari sensor di layar

sudut = peta(nilai sensor, 1023, 0, 0, 88); //mengonversi nilai digital ke derajat rotasi untuk servo

serv.write(sudut); //membuat servo bergerak

penundaan(100);

}

Direkomendasikan: