Isi kandungan:

Peta Pintar Idaho Dengan Data LED + Seni: 8 Langkah (dengan Gambar)
Peta Pintar Idaho Dengan Data LED + Seni: 8 Langkah (dengan Gambar)

Video: Peta Pintar Idaho Dengan Data LED + Seni: 8 Langkah (dengan Gambar)

Video: Peta Pintar Idaho Dengan Data LED + Seni: 8 Langkah (dengan Gambar)
Video: SAMSUNG GALAXY NOTE 8 (tutorial cara menggambar menggunakan pen) 2024, Julai
Anonim
Image
Image

Oleh jwolin Ikuti Lagi oleh pengarang:

Peta Dunia Pintar Dengan Skrin Data dan Pencahayaan Boleh Diprogram DMX
Peta Dunia Pintar Dengan Skrin Data dan Pencahayaan Boleh Diprogram DMX
Iris berjanggut - Membahagi dan Menakluk
Iris berjanggut - Membahagi dan Menakluk
Iris berjanggut - Membahagi dan Menakluk
Iris berjanggut - Membahagi dan Menakluk
Jam Animasi LED SMART Bersambung Web Dengan Panel Kawalan Berasaskan Web, Pelayan Masa Diselaraskan
Jam Animasi LED SMART Bersambung Web Dengan Panel Kawalan Berasaskan Web, Pelayan Masa Diselaraskan
Jam Animasi LED SMART Bersambung Web Dengan Panel Kawalan Berasaskan Web, Pelayan Masa Diselaraskan
Jam Animasi LED SMART Bersambung Web Dengan Panel Kawalan Berasaskan Web, Pelayan Masa Diselaraskan

Saya selalu mahukan cara untuk menampilkan data geografi secara artistik dan dinamik dengan "melukis" peta dengan cahaya. Saya tinggal di Idaho dan menyukai negeri saya, jadi saya fikir ini adalah tempat yang baik untuk bermula! Selain menjadi karya seni dengan kesan pencahayaan yang sejuk, ia juga memberikan maklumat berguna. Sebagai contoh, anda dapat menunjukkan "peta panas" bagi setiap kepadatan penduduk, tahap kerpasan, ketinggian / minimum ketinggian, bilangan kawasan hutan belantara, dan lain-lain. Setelah melakukan peta Idaho ini, saya terdorong untuk melakukan sesuatu yang serupa di skala global!

Untuk arahan ini, anda memerlukan perkara berikut:

  • (2) Lembaran 2'x4 '1 / 4MDF
  • (1) Papan pinus 10 'sekeping 1 "x8"
  • (1) lembaran akrilik penyebar cahaya
  • 2 rentetan dari (50) ws2812B LED terindeks prewire
  • Bekalan kuasa 5 volt
  • Noda, cat, gam
  • Arduino Micro atau setaraf

Alat Diperlukan

  • Mesin CNC
  • Besi pematerian
  • Pengapit
  • Kertas pasir

Langkah 1: Lekatkan Kayu

Lekatkan Kayu
Lekatkan Kayu
Lekatkan Kayu
Lekatkan Kayu
Lekatkan Kayu
Lekatkan Kayu
Lekatkan Kayu
Lekatkan Kayu

Setiap kali saya memasang panel kayu, saya selalu memasangkan biskut. Ini mengelakkan perpecahan akibat penyusutan ketika kayu mengering. Ini sangat penting dalam projek ini kerana luas permukaan yang menghubungkan kepingan bersama akan berkurang kerana operasi mengemas CNC. Setelah mendapat sebiji gam yang baik di kedua-dua belah dan juga di kedua-dua bahagian rongga biskut, jepit dan biarkan selama 24 jam.

Setelah melepaskan penjepit, gunakan sander telapak tangan (atau jika anda berani menggunakan sander) dan pasangkan sendi dengan halus. Selalunya anda akan mempunyai gam yang merapatkan sendi dan anda ingin meletakkan permukaan papan sehingga rata dan bebas cela mungkin.

sekarang kita mempunyai tiga panel yang kita perlukan mari kita beralih ke kerja CNC!

Langkah 2: CNC the Three Panel (Panel Sempadan, Inti Pinus dan Panel LED)

CNC Tiga Panel (Panel Sempadan, Inti Pinus dan Panel LED)
CNC Tiga Panel (Panel Sempadan, Inti Pinus dan Panel LED)
CNC Tiga Panel (Panel Sempadan, Inti Pinus dan Panel LED)
CNC Tiga Panel (Panel Sempadan, Inti Pinus dan Panel LED)
CNC the Three Panel (Panel Sempadan, Inti Pinus dan Panel LED)
CNC the Three Panel (Panel Sempadan, Inti Pinus dan Panel LED)
CNC the Three Panel (Panel Sempadan, Inti Pinus dan Panel LED)
CNC the Three Panel (Panel Sempadan, Inti Pinus dan Panel LED)

Terdapat tiga panel yang membentuk projek ini. Anda dapat melihat model dalam perisian yang saya gunakan. Data peta dibeli dari pek peta maptorian bebas royalti yang sangat baik. Perincian dan nilai yang luar biasa di sini! Fail CAD dilampirkan pada langkah seterusnya jika anda mahukan DXF untuk CAD atau fail Vektor.

Panel teras LED pada dasarnya adalah lembaran MDF 1/4 "mesin yang memegang LED dengan geseran yang ketat. Anda akan melihat pada panel ini" poket "besar di sekitar LED. Ini untuk membolehkan cahaya meresap secepat mungkin untuk mengelakkan titik panas pada akrilik.

Inti adalah panel pinus yang kami susun pada langkah sebelumnya dan mewakili latar belakang projek tersebut. Agar cahaya sampai ke panel akrilik, kami membuat mesin di setiap daerah.

Akhirnya panel atas dimesin hanya dengan garis besar daerah dan asrama negeri. Setiap daerah mempunyai rak kecil yang akan menerima akrilik penyebar cahaya 1/8.

Bercakap tentang akrilik, masa untuk mesin ini seterusnya.

Langkah 3: Mesin Daerah dari Lembaran Akrilik

Image
Image
Mesin Daerah dari Lembaran Akrilik
Mesin Daerah dari Lembaran Akrilik
Mesin Daerah dari Lembaran Akrilik
Mesin Daerah dari Lembaran Akrilik

Memesin daerah dari akrilik memerlukan sedikit percubaan dan kesilapan. Akrilik boleh mencair jika dimesin perlahan sehingga kadar suapan yang betul diperlukan untuk mendapatkan hasil yang baik. Petua lain adalah menggunakan alat sebesar mungkin dengan penyedut yang baik untuk membersihkan kerepek. Alat kecil cenderung tidak membersihkan kerepek dengan mudah dan menghasilkan haba yang menghasilkan lebur yang tidak diingini.

Saya dapat memperoleh resolusi yang saya perlukan dengan 1/8 potongan dua seruling seruling pada 18, 500rpm dan kadar suapan 200ipm. Kalkulator suapan dan kelajuan berguna di sini! Saya akan mengesyorkannya di cnccookbook.com Satu kepingan seruling akan berfungsi lebih baik tetapi saya tidak memilikinya. Menyimpan tab kecil pada bahagian ini dalam kerja CAM adalah penting untuk memastikan kepingan yang sudah selesai tidak terlepas dan diproyeksikan ke dalam bilik!

Ofset ajaib untuk membuat daerah dengan ukuran yang tepat, ternyata menjadi 0,075 kemunduran dari garis tengah pada gambar kad. Ini membuat peruntukan 1/2 dari sempadan 1/8 ditambah sedikit tambahan untuk panel jatuh di tempatnya. Sebilangan kecil pengamplasan diperlukan pada kepingan tertentu untuk membuatnya jatuh ke tempatnya. Sekali lagi, sekumpulan geseran kepingan yang sesuai menjadikan kerja ini cepat dan mudah.

Menjadikan semua daerah sesuai dengan satu bahagian akrilik adalah kerja mudah dengan perisian vektrik saya yang mempunyai ciri bersarang untuk memaksimumkan penggunaan lembaran.

Hanya untuk keseronokan, saya mula menguji beberapa keping. Mula ikut. Sejuk!

Mahukan fail untuk pemesinan daerah. Pasti! Lihat lampiran.

Langkah 4: Cat dan Noda

Cat dan Noda
Cat dan Noda
Cat dan Noda
Cat dan Noda
Cat dan Noda
Cat dan Noda

Sebelum kita mengumpulkan semua kepingan kita, kita mesti cat dan noda terlebih dahulu. Saya menggunakan gabungan noda untuk panel kayu, cat semburan untuk lapisan sempadan dan putih reflektif untuk lapisan LED. Kerja cepat dan kami menuju ke perhimpunan. Bersenang-senang!

Langkah 5: Lekatkan Panel

Lekatkan Panel
Lekatkan Panel
Lekatkan Panel
Lekatkan Panel
Lekatkan Panel
Lekatkan Panel

Kini tiba masanya untuk melekatkan panel bawah ke bahagian bawah inti pinus dan kemudian panel sempadan negara MDF hingga ke inti pinus. Saya hanya menggunakan beberapa siri pengapit untuk melakukan ini.

Langkah 6: Kabelkan LED dengan Fit Gesekan dan Sambungkan Arduino

Wire Up LED Dengan Fit Gesekan dan Sambungkan Arduino
Wire Up LED Dengan Fit Gesekan dan Sambungkan Arduino
Wire Up LED dengan Fit Gesekan dan Sambungkan Arduino
Wire Up LED dengan Fit Gesekan dan Sambungkan Arduino
Wire Up LED dengan Fit Gesekan dan Sambungkan Arduino
Wire Up LED dengan Fit Gesekan dan Sambungkan Arduino

Pekerjaan mimpi buruk ini sangat sederhana dengan toleransi geseran di sini. Saya menggunakan hujung belakang pen untuk menekannya ke tempatnya. Yang hampir masuk dan tidak akan keluar tanpa kekuatan yang ketara. Tidak ada gam apa pun yang digunakan untuk bahagian projek ini. Ini menjadikan pemasangan, CARA mudah! Saya telah melakukan banyak projek di mana saya terpaksa membuat pendawaian selama berjam-jam dan ini memerlukan masa 10 minit. Ini adalah kaedah termudah. Saya cuba menyatukan negara dalam urutan zigzag agar pengelompokan dapat dilakukan agar setiap daerah mengikut urutan.

Menyambung ke arduino adalah mudah melalui penggunaan papan roti kecil dan wayar penyambung. Bekalan kuasa adalah pembelian ebay. 5v dan 8amps berlebihan untuk projek ini tetapi memberi banyak perbelanjaan. Pendawaian perkara-perkara ini sangat mudah. + 5v ke pin VCC, Ground ke pin ground dan kemudian powerkan helai dengan sumber 5v yang sama. Satu-satunya pin yang tersisa adalah pin data yang memberi kekuatan pada tali! Dalam kes saya, saya menggunakan D7 untuk data. Sekarang ke pengaturcaraan!

Langkah 7: Pengekodan Arduino

Mengekodkan Arduino
Mengekodkan Arduino
Mengekodkan Arduino
Mengekodkan Arduino

LED dikuasakan oleh arduino yang membuat kek coding. Beberapa rutin awal dipinjam (iaitu dicuri) dari perpustakaan ws2813fx yang sangat baik di github. Sangat mudah untuk mengubah rutin ini untuk melakukan apa yang saya perlukan. Skop penuh kod ini sukar untuk dijelaskan secara keseluruhan tetapi berikut adalah beberapa sorotan!

Inilah rutin demonstrasi yang ada:

# menentukan FX_MODE_STATIC 0 # menentukan FX_MODE_BLINK 1 # menentukan FX_MODE_BREATH 2 # menentukan FX_MODE_COLOR_WIPE 3 # menentukan FX_MODE_COLOR_WIPE_INV 4 # menentukan FX_MODE_COLOR_WIPE_REV 5 # menentukan FX_MODE_COLOR_WIPE_REV_INV 6 # menentukan FX_MODE_COLOR_WIPE_RANDOM 7 # menentukan FX_MODE_RANDOM_COLOR 8 # menentukan FX_MODE_SINGLE_DYNAMIC 9 # menentukan FX_MODE_MULTI_DYNAMIC 10 # menentukan FX_MODE_RAINBOW 11 # menentukan FX_MODE_RAINBOW_CYCLE 12 # menentukan FX_MODE_SCAN 13 # menentukan FX_MODE_DUAL_SCAN 14 # menentukan FX_MODE_FADE 15 # menentukan FX_MODE_THEATER_CHASE 16 # menentukan FX_MODE_THEATER_CHASE_RAINBOW 17 # menentukan FX_MODE_RUNNING_LIGHTS 18 # menentukan FX_MODE_TWINKLE 19 # menentukan FX_MODE_TWINKLE_RANDOM 20 # menentukan FX_MODE_TWINKLE_FADE 21 # menentukan FX_MODE_TWINKLE_FADE_RANDOM 22 # menentukan FX_MODE_SPARKLE 23 # menentukan FX_MODE_FLASH_SPARKLE 24 #tentukan FX_MODE_HYPER_SPARKLE 25 #tentukan FX_MODE_STROBE 26 #tentukan FX_MODE_STROBE_RAINBOW 27 # tentukan FX_MODE_MULTI_STROBE 28 # tentukan FX_MODE_BLINK_RAINBOW 29 #define FX_MODE_FINE_ODE ne FX_MODE_CHASE_RANDOM 32 # menentukan FX_MODE_CHASE_RAINBOW 33 # menentukan FX_MODE_CHASE_FLASH 34 # menentukan FX_MODE_CHASE_FLASH_RANDOM 35 # menentukan FX_MODE_CHASE_RAINBOW_WHITE 36 # menentukan FX_MODE_CHASE_BLACKOUT 37 # menentukan FX_MODE_CHASE_BLACKOUT_RAINBOW 38 # menentukan FX_MODE_COLOR_SWEEP_RANDOM 39 # menentukan FX_MODE_RUNNING_COLOR 40 # menentukan FX_MODE_RUNNING_RED_BLUE 41 # menentukan FX_MODE_RUNNING_RANDOM 42 # menentukan FX_MODE_LARSON_SCANNER 43 # menentukan FX_MODE_COMET 44 # menentukan FX_MODE_FIREWORKS 45 # menentukan FX_MODE_FIREWORKS_RANDOM 46 # menentukan FX_MODE_MERRY_CHRISTMAS 47 # menentukan FX_MODE_FIRE_FLICKER 48 # menentukan FX_MODE_FIRE_FLICKER_SOFT 49 # menentukan FX_MODE_FIRE_FLICKER_INTENSE 50 # menentukan FX_MODE_CIRCUS_COMBUSTUS 51 # menentukan FX_MODE_HALLOWEEN 52 # menentukan FX_MODE_BICOLOR_CHASE 53 # menentukan FX_MODE_TRICOLOR_CHASE 54 # menentukan FX_MODE_ICU 55

Dan perhatikan salah satu contoh rutin.

uint16_t WS2812FX:: mode_breath (void) {// 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 // langkah uint16_t nafas_delay_steps = {7, 9, 13, 15, 16, 17, 18, 930, 19, 18, 15, 13, 9, 7, 4, 5, 10}; // nombor ajaib untuk pernafasan LED uint8_t breath_brightness_steps = {150, 125, 100, 75, 50, 25, 16, 15, 16, 25, 50, 75, 100, 125, 150, 220, 255}; // lebih banyak nombor ajaib!

jika (SEGMENT_RUNTIME.counter_mode_call == 0) {

SEGMENT_RUNTIME.aux_param = breath_brightness_steps [0] + 1; // kami menggunakan aux_param untuk menyimpan kecerahan}

uint8_t breath_brightness = SEGMENT_RUNTIME.aux_param;

jika (SEGMENT_RUNTIME.counter_mode_step <8) {nafas_kebaikan--; } lain {nafas_kebaikan ++; }

// kemas kini indeks kelewatan semasa apabila kecerahan sasaran dicapai, mulakan semula setelah langkah terakhir

jika (breath_brightness == breath_brightness_steps [SEGMENT_RUNTIME.counter_mode_step]) {SEGMENT_RUNTIME.counter_mode_step = (SEGMENT_RUNTIME.counter_mode_step + 1)% (sizeof (nafas_brightness_steps) }

int lum = peta (nafas_brightness, 0, 255, 0, _brightness); // pastikan kecerahan di bawah kecerahan yang ditetapkan oleh pengguna

uint8_t w = (SEGMENT.colors [0] >> 24 & 0xFF) * lum / _brightness; // ubah warna RGBW dengan maklumat kecerahan uint8_t r = (SEGMENT.colors [0] >> 16 & 0xFF) * lum / _brightness; uint8_t g = (SEGMENT.colors [0] >> 8 & 0xFF) * lum / _brightness; uint8_t b = (SEGMENT.colors [0] & 0xFF) * lum / _brightness; untuk (uint16_t i = SEGMENT.start; i <= SEGMENT.stop; i ++) {Adafruit_NeoPixel:: setPixelColor (i, r, g, b, w); }

SEGMENT_RUNTIME.aux_param = nafas_kebolehan;

kembali nafas_delay_steps [SEGMENT_RUNTIME.counter_mode_step]; }

Sumber penuh boleh dimuat turun dari repositori gsub ws2812fx.

Langkah 8: Nikmati Paparan Cahaya Artistik

Saya sangat gembira dengan hasilnya! Ia sangat menggembirakan untuk menonton dan saya teruja untuk terus bermain-main dengan pelbagai konfigurasi paparan data! Jangan ragu untuk mengemukakan sebarang pertanyaan atau hubungi saya untuk maklumat yang saya terlepas.

Peraduan LED 2017
Peraduan LED 2017
Peraduan LED 2017
Peraduan LED 2017

Hadiah Kedua dalam Peraduan LED 2017

Peraduan Arduino 2017
Peraduan Arduino 2017
Peraduan Arduino 2017
Peraduan Arduino 2017

Naib Johan dalam Peraduan Arduino 2017

Disyorkan: