Proses manufaktur
| × | 1 | ||||
| × | 17 | ||||
| × | 1 | ||||
| × | 17 | ||||
| × | 1 | ||||
| × | 1 |
|
|
Tampilan Persistence of Vision (POV) umumnya adalah tampilan LED yang 'menampilkan' gambar dengan menampilkan bagian gambar pada waktu tertentu, secara berurutan dengan cepat. Otak manusia menganggap ini sebagai tampilan gambar yang berkelanjutan.
Di situs web "proyek hobi" disajikan jam muka bergaya analog yang relatif sederhana namun efektif secara visual ini. Bagian elektronik berisi dioda LED Arduino Nano 17 dan sensor efek Hall. Grup Dioda LED d1-d11, d12-d16, dan d17 memiliki warna berbeda untuk efek visual yang lebih baik.Perangkat ini ditenagai oleh baterai lithium ion melalui konverter langkah.
Bagian tersulit dari proyek ini bagi saya adalah stabilitas mekanis. Pada percobaan pertama, baterai disetel secara eksentrik dan pada kecepatan putaran yang lebih tinggi ada getaran yang sangat besar. Kemudian saya melakukan modifikasi dan meletakkan baterai di tengah putaran.
Untuk putarannya saya menggunakan motor listrik 12V yang dihubungkan ke catu daya variabel sehingga kecepatan putaran alat dapat dikontrol dengan mudah. Bergantung pada kecepatan rotasi perangkat, dalam kode Anda perlu mengatur nilai "delayMicroseconds" ke nilai yang ditentukan.
Video yang disajikan kurang jelas, karena untuk keperluan ini saya membutuhkan kamera dengan frame per second yang lebih baik.
// hobbyprojects// ArduinoNanoPropellerLEDAnalogClock20190403Aint LED1 =2;int LED2 =3;int LED3 =4;int LED4 =5;int LED5 =6;int LED6 =7;int LED7 =8;int LED8 =9;int LED9 =10;int LED10 =11;int LED11 =12;int LED12 =A1;int LED13 =A2;int LED14 =A3;int LED15 =A4;int LED16 =A5;int sensorPin =A0;unsigned int n,ADCvalue,propeller_posn;unsigned long beforeTime =0;byte hours =12; // set jam byte menit =15; // atur menitbyte detik =00; // set detik nilai;void setup() { pinMode(LED1,OUTPUT); pinMode(LED2,OUTPUT); pinMode(LED3,OUTPUT); pinMode(LED4,OUTPUT); pinMode(LED5,OUTPUT); pinMode(LED6,OUTPUT); pinMode(LED7,OUTPUT); pinMode(LED8,OUTPUT); pinMode(LED9,OUTPUT); pinMode(LED10,OUTPUT); pinMode(LED11,OUTPUT); pinMode(LED12,OUTPUT); pinMode(LED13,OUTPUT); pinMode(LED14,OUTPUT); pinMode(LED15,OUTPUT); pinMode(LED16,OUTPUT); pinMode(sensorPin,INPUT_PULLUP); if(jam ==12) jam =0;}void loop() { val =digitalRead(sensorPin); while (val ==RENDAH) { val =digitalRead(sensorPin); } if (milis()>=(waktu sebelumnya)) { waktu sebelumnya =waktu sebelumnya + 1000; detik =detik+1; if (detik ==60) { detik =0; menit =menit+1; } if (menit ==60) { menit =0; jam =jam+1; } if (jam ==12) { jam =0; } } propeller_posn=30; n=0; while(n <60) { drawMinuteMarker(); if ((propeller_posn==0) || (propeller_posn==5) || (propeller_posn==10) || (propeller_posn==15) || (propeller_posn==20) || (propeller_posn==25) || (propeller_posn==30) || (propeller_posn==35) || (propeller_posn==40) || (propeller_posn==45) || (propeller_posn==50) || (propeller_posn==55)) drawHourMarker(); if ((propeller_posn==0) || (propeller_posn==15) || (propeller_posn==30) || (propeller_posn==45)) drawQuarterMarker(); if((propeller_posn ==jam*5) || (( propeller_posn ==0 ) &&(jam ==0))) drawHoursHand(); if(propeller_posn ==menit) drawMinutesHand(); if(propeller_posn ==detik) drawSecondsHand(); delayMicroseconds(140); // untuk lebar piksel LED (ubah nilainya sesuai dengan kecepatan motor. Naikkan untuk kecepatan rendah, turunkan untuk motor kecepatan tinggi) displayClear(); drawInner_Circle(); delayMicroseconds (600); // untuk jarak antara piksel LED/penanda menit (ubah nilainya sesuai dengan kecepatan motor. Naikkan untuk kecepatan rendah, turunkan untuk motor kecepatan tinggi) n++; propeller_posn++; if(propeller_posn ==60) propeller_posn=0; } val =digitalRead(sensorPin); while (val ==HIGH) { val =digitalRead(sensorPin); } }//==========================void displayClear() { digitalWrite(LED1,LOW); digitalWrite(LED2,RENDAH); digitalWrite(LED3,RENDAH); digitalWrite(LED4,RENDAH); digitalWrite(LED5,RENDAH); digitalWrite(LED6,RENDAH); digitalWrite(LED7,RENDAH); digitalWrite(LED8,RENDAH); digitalWrite(LED9,RENDAH); digitalWrite(LED10,RENDAH); digitalWrite(LED11,RENDAH); digitalWrite(LED12,RENDAH); digitalWrite(LED13,RENDAH); digitalWrite(LED14,RENDAH); digitalWrite(LED15,RENDAH); digitalWrite(LED16,RENDAH); } void drawMinuteMarker() { digitalWrite(LED16,HIGH); } void drawHourMarker() { digitalWrite(LED15,HIGH); digitalWrite(LED14,TINGGI); } void drawQuarterMarker() { digitalWrite(LED13,HIGH); digitalWrite(LED12,TINGGI); } void drawHoursHand() { digitalWrite(LED1,HIGH); digitalWrite(LED2,TINGGI); digitalWrite(LED3,TINGGI); digitalWrite(LED4,TINGGI); digitalWrite(LED5,TINGGI); digitalWrite(LED6,TINGGI); digitalWrite(LED7,TINGGI); } void drawMinutesHand() { digitalWrite(LED1,HIGH); digitalWrite(LED2,TINGGI); digitalWrite(LED3,TINGGI); digitalWrite(LED4,TINGGI); digitalWrite(LED5,TINGGI); digitalWrite(LED6,TINGGI); digitalWrite(LED7,TINGGI); digitalWrite(LED8,TINGGI); digitalWrite(LED9,TINGGI); } void drawSecondsHand() { digitalWrite(LED1,HIGH); digitalWrite(LED2,TINGGI); digitalWrite(LED3,TINGGI); digitalWrite(LED4,TINGGI); digitalWrite(LED5,TINGGI); digitalWrite(LED6,TINGGI); digitalWrite(LED7,TINGGI); digitalWrite(LED8,TINGGI); digitalWrite(LED9,TINGGI); digitalWrite(LED10,TINGGI); digitalWrite(LED11,TINGGI); } void drawInner_Circle() { digitalWrite(LED1,HIGH); delayMicroseconds(30); digitalWrite(LED1,RENDAH); }
Proses manufaktur
Komponen dan persediaan Arduino UNO × 1 Resistor 221 ohm Anda dapat menentukan nilai resistansi resistor, pastikan nilai resistansi tidak terlalu kecil × 3 LED (generik) Saya menggunakan led biru, merah, hijau. × 3 Breadboard (generik) × 1 Kabel jumper (
Komponen dan persediaan Arduino Nano R3 × 1 Maxim Integrated DS3231M - ±5ppm, I2C Real-Time Clock × 1 Sakelar Tombol Tekan, Sesaat × 2 Modul matriks led 32x8 × 1 Alat dan mesin yang diperlukan Besi solder (generik) Aplikasi dan layan
Komponen dan persediaan Arduino Nano R3 × 1 matriks LED × 1 Resistor foto × 1 Breadboard (generik) × 1 DS3231 × 1 Aplikasi dan layanan online Arduino IDE Tentang proyek ini Membaca tampilan jam di sebuah ruangan pa
Komponen dan persediaan Arduino Nano R3 × 1 LED 5 mm:Merah × 1 LED 5 mm:Hijau × 1 LED (generik) × 1 Resistor 2K × 1 Kabel × 1 Alat dan mesin yang diperlukan Besi solder (generik) Pistol lem panas (generik)