Daftar Isi:

Lampu Halaman Interaktif, Lampu Jalan: 3 Langkah
Lampu Halaman Interaktif, Lampu Jalan: 3 Langkah

Video: Lampu Halaman Interaktif, Lampu Jalan: 3 Langkah

Video: Lampu Halaman Interaktif, Lampu Jalan: 3 Langkah
Video: Membuat Lampu Lapangan #lampu 2024, Desember
Anonim
Lampu Halaman Interaktif, Lampu Jalan
Lampu Halaman Interaktif, Lampu Jalan
Lampu Halaman Interaktif, Lampu Jalan
Lampu Halaman Interaktif, Lampu Jalan

Saya ingin membangun semacam lampu halaman interaktif untuk halaman belakang saya. Idenya adalah, ketika seseorang berjalan satu arah, itu akan memicu animasi ke arah Anda berjalan. Saya mulai dengan Dollar General $1,00 solar lights

Langkah 1: Usus Lampu Solor

Uts the Solor Lights
Uts the Solor Lights
Uts the Solor Lights
Uts the Solor Lights
Uts the Solor Lights
Uts the Solor Lights

Langkah pertama adalah mematikan lampu untuk memberi jalan bagi hal-hal yang lebih menyenangkan. Saya mulai dengan memotong led asli dan baterai. Pastikan untuk menyimpan bagian-bagian ini karena akan berguna dalam proyek lain. Saya juga melepas kubah krom yang ada di bagian bawah lampu surya dan menempelkannya ke atas seperti yang terlihat di foto.

Langkah 2: Memasang Lampu yang Lebih Baik

Memasang Lampu yang Lebih Baik
Memasang Lampu yang Lebih Baik
Memasang Lampu yang Lebih Baik
Memasang Lampu yang Lebih Baik
Memasang Lampu yang Lebih Baik
Memasang Lampu yang Lebih Baik

untuk lednya saya pakai waterproof ws2811b yang bisa dilihat disini

www.ebay.com/itm/50-X-12mm-LED-Module-RGB-…

Saya awalnya berencana untuk menempatkan sensor PIR di dalam lampu surya. tapi ini terbukti menjadi masalah karena sensor pada dasarnya tidak bisa melihat melewati plastik. itu harus memiliki semacam kepatutan penyaringan UV. jadi saya memilih sesuatu yang lebih seperti ini

www.thingiverse.com/thing:2590216

Langkah 3: Pengkodean

jika Anda ingin membuat lampu tidak menggunakan sensor atau hanya berjalan sepanjang waktu cari saja tempat yang dikomentari sebagai "mengubah status bendera" dan atur ke eter 1 atau 0 saya akan menambahkan lebih banyak foto ketika saya menyelesaikan ini sendiri jadi ini masih dalam proses tetapi saya pikir itu terlalu rapi untuk tidak langsung dibagikan. Terima kasih telah melihat

batalkan pengaturan() {

// letakkan kode setup Anda di sini, untuk dijalankan sekali: FastLED.addLeds(leds, NUM_LEDS); Serial.begin(9600); pinMode(tombolPin1, INPUT); pinMode(tombolPin2, INPUT); }

lingkaran kosong() {

Serial.println(FlagState);

if(FlagState == 0){ ForwardLeds(); } if(FlagState == 1){ RevLeds(); } if(FlagState == 2){ Menunggu(); } }

void TeruskanLeds(){

FirstLed = -1; Led Terakhir = 16; for(int i=0; i < 8; i++){ LastLed--; FirstLed++; leds[LastLed] = CRGB::Putih; leds[FirstLed] = CRGB::Putih; penundaan (750); FastLED.show(); Serial.print("Pass putih"); Serial.print (i); Serial.println ("dari 8"); } FirstLed = -1; Led Terakhir = 16; for(int i=0; i < 8; i++){ LastLed--; FirstLed++; leds[LastLed] = CRGB::Biru; leds[FirstLed] = CRGB::Biru; penundaan (250); FastLED.show(); Serial.print("Pass Biru"); Serial.print (i); Serial.println ("dari 8"); } FirstLed = -1; Led Terakhir = 16; for(int i=0; i < 8; i++){ LastLed--; FirstLed++; leds[LastLed] = CRGB::Ungu; leds[FirstLed] = CRGB::Ungu; penundaan (250); FastLED.show(); Serial.print("Pass Merah "); Serial.print (i); Serial.println ("dari 8"); } FirstLed = -1; Led Terakhir = 16; for(int i=0; i < 8; i++){ LastLed--; FirstLed++; leds[LastLed] = CRGB::Hitam; leds[FirstLed] = CRGB::Hitam; penundaan (250); FastLED.show(); Serial.print("Mematikan led"); Serial.print (i); Serial.println ("dari 8"); } Status Bendera = 2; // mengubah status flag } void RevLeds(){ Serial.println("di terbalik"); FirstLed = 8; Led Terakhir = 7; for(int i=0; i < 8; i++){ LastLed++; FirstLed--; leds[LastLed] = CRGB::Putih; leds[FirstLed] = CRGB::Putih; penundaan (750); FastLED.show(); Serial.print("Kartu putih"); Serial.print (i); Serial.println ("dari 8"); } FirstLed = 8; Led Terakhir = 7; for(int i=0; i < 8; i++){ LastLed++; FirstLed--; leds[LastLed] = CRGB::Biru; leds[FirstLed] = CRGB::Biru; penundaan (250); FastLED.show(); Serial.print("Kartu biru"); Serial.print (i); Serial.println ("dari 8"); } FirstLed = 8; Led Terakhir = 7; for(int i=0; i < 8; i++){ LastLed++; FirstLed--; leds[LastLed] = CRGB::Ungu; leds[FirstLed] = CRGB::Ungu; penundaan (250); FastLED.show(); Serial.print("Kartu merah"); Serial.print (i); Serial.println ("dari 8"); }

FirstLed = 8;

Led Terakhir = 7; for(int i=0; i < 8; i++){ LastLed++; FirstLed--; leds[LastLed] = CRGB::Hitam; leds[FirstLed] = CRGB::Hitam; penundaan (250); FastLED.show(); Serial.print("Mematikan Led"); Serial.print (i); Serial.println ("dari 8"); } Status Bendera = 2; //mengubah status flag } void Waiting(){ buttonState1 = digitalRead(buttonPin1); buttonState2 = digitalRead(buttonPin2); if(buttonState1 == HIGH){ Serial.println("maju dipicu"); Status Bendera = 0; } else if(buttonState2 == HIGH){ Serial.println("Rev dipicu"); Status Bendera = 1; } Serial.println("Perulangan Selesai menunggu"); }

Direkomendasikan: