Tentang proyek ini
Apa itu "FizViz"?
Kami membuat Visualisasi Fisik dari data yang menyajikan informasi dalam format besar, sangat keren, dengan cara yang langsung dapat dibaca. Konsepnya adalah Anda akan menggantung satu set widget FizViz di kantor, bengkel, atau di mana pun Anda ingin menonton dan berbagi data yang penting:
- Berapa banyak produk yang saya jual hari ini? Bagaimana jika dibandingkan dengan rata-rata saya?
- Berapa banyak orang yang mengunjungi situs web saya? Berapa halaman yang mereka lihat?
- Apakah saya mendapatkan lebih banyak lalu lintas karena posting video kucing saya baru-baru ini, atau apakah semua orang terpental karena tidak ada hubungannya dengan produk saya?
Atau, sambungkan ke sumber data lain:
- Berapa banyak waktu yang tersisa dalam pekerjaan pencetakan 3D saya?
- Berapa banyak orang di sini?
- Berapa banyak entri Tantangan yang telah diajukan untuk Tantangan Arduino Terbesar di Dunia Hackster?
Mengapa Kami Membuat FizViz?
Tahun lalu, tim kami membuat dan meluncurkan produk "nyata" pertama kami. Kami merancang, mengubah, mengumpulkan dana, membangun, mendesain ulang, bersertifikat, tertawa, menangis, bersumpah, dan akhirnya..... mengirimkan produk. Jauh lebih sulit dari yang kita duga (tapi itulah yang dikatakan semua orang).
Lalu... Kami mulai menonton metrik obsesif. Berapa banyak orang yang mengunjungi halaman produk kami? Toko kami? Berapa lama mereka tinggal? Bagaimana mereka sampai di sana? Apa yang terjadi ketika kita men-tweet, blog, memposting, dan berbagi? Mengapa kami hanya menjual 10 unit saat kami tidak melakukan hal-hal itu?
Pikiran yang ingin tahu ingin tahu.
Meskipun kami adalah tim yang berdedikasi, tidak semua orang memiliki akses atau minat untuk menyisir Google Analytics dengan cermat untuk mencoba menjawab pertanyaan ini. Dan, kami yang menemukan bahwa kami akhirnya mencari analitik kunci yang sama, terkadang berkali-kali dalam sehari. Seringkali, mereka tidak banyak berubah saat kita melihat, atau banyak berubah saat kita tidak melihat.
Jelas, tidak ada kekurangan alat dan sistem online untuk memfilter, meringkas, dan menggabungkan data dalam setiap bentuk dan bentuk. Namun, mereka membawa Anda menjauh dari alur Anda, dan membutuhkan pengetahuan (agak misterius) tentang alur kerja untuk mencapai hal-hal yang Anda minati.
Dan, sejujurnya, mereka tidak terlalu menarik.
Mereka tidak membuat orang-orang di sekitar kantor bersorak. Mereka tidak menyiarkan pencapaian tim, dan terburu-buru melihat kesuksesan menumpuk. Mereka adalah pengalaman yang steril, digital, dan biasanya menyendiri.
Bagaimana cara kerja FizViz?
Widget FizViz terdiri dari 3 komponen:
1) PC atau Tablet Windows (kami menyukai Surface) yang memanen data Anda dan menggunakan Windows Remote Arduino untuk mengirim status saat ini ke Widget FizViz.
2) Sebuah Arduino MKR1000 yang menerima data dari PC melalui WiFi dan menjalankan kontrol fisik pada Widget FizViz.
3) Komponen fisik yang menampilkan data . Saat ini, kami mendapat dukungan untuk:
- Strip Lampu NeoPixel untuk efek LED berwarna
- Motor Stepper untuk membuat dial dan pengukur
- Sakelar untuk Meniadakan atau Mengkalibrasi Pengukur Anda (kami menggunakan sakelar buluh untuk menemukan nol di Widget RotoMoto FizViz kami)
Pada dasarnya, PC melakukan tugas berat - menarik data dari sumber data Anda (kami telah menyertakan sumber untuk memanen Google Analytics) dan kemudian mengirimkan status dan perintah ke Arduino yang mendorong instalasi fisik.
Kami telah menyediakan semua skema dan info untuk mendapatkan widget NeoPixel dasar dengan motor stepper yang aktif dan berjalan. Setelah itu, Anda bisa berkreasi sesuka Anda.
Visi kami adalah terus membangun widget yang berbeda untuk berbagai jenis data. Kami telah memulai dengan satu contoh, tetapi FizViz benar-benar tentang membuat visualisasi yang tepat untuk jenis data yang ingin Anda tampilkan. Tidak ada aturan!
Ikhtisar Listrik
Menghubungkan FizViz cukup mudah. Skema terbaru kami selalu ditemukan di repositori FizViz-Electrical di GitHub. Berikut adalah beberapa catatan tentang komponen:
- Arduino MKR1000 - Otak operasi kami. Tidak banyak yang bisa dikatakan di sini kecuali ukurannya kecil, dan berfungsi dengan baik!
- Strip NeoPixel - Menghubungkan ke strip NeoPixel cukup mudah - kami menggunakan resistor 460ohm (R1) antara pin data dan Arduino. Kemudian, biasanya, kami menghubungkan catu daya untuk strip langsung ke catu daya 5v utama kami untuk sistem. NeoPixel Uberguide Adafruit adalah kitab suci dalam hal mengintegrasikan NeoPixels, dan termasuk perpustakaan Arduino yang dapat Anda gunakan dalam proyek Anda untuk menyederhanakan kontrol. Strip mungkin memiliki dua kabel ground (hitam). Keduanya terhubung ke pin ground.
- Adafruit TB6612 Breakout Board - Mengontrol motor stepper tipikal. Sangat keren untuk membuat benda-benda yang bergerak secara akurat seperti dial, gauge, atau slider. Kami menggunakannya untuk menggerakkan jarum di RotoMoto FizViz kami. Tidak terlalu banyak untuk ditambahkan di sini. Kami mengikuti petunjuk yang diberikan oleh Adafruit, membuatnya kompatibel dengan perpustakaan Arduino Stepper bawaan untuk kontrol.
- Saklar Buluh - Widget RotoMoto FizViz kami menggunakan magnet di jarum dan sakelar buluh untuk mendeteksi saat jarum berada di nol. Sakelar yang berbeda seperti sakelar kontak mikro atau sakelar tekanan juga dapat digunakan di sini, bergantung pada mekanisme widget Anda.
Kami mengemas barang elektronik kami ke dalam Papan Tempat Memotong Roti Setengah Ukuran Adafruit Perma-Proto untuk dimasukkan ke dalam widget kami, tetapi tergantung pada faktor bentuk Anda, Anda mungkin memerlukan bentuk alternatif. Berikut tampilan kami:
Ikhtisar Kode Firmware / Arduino
Repositori FizViz-Arduino kami di GitHub berisi sketsa Arduino versi terbaru dan terhebat yang mendukung Widget FizViz. Ada lebih banyak informasi tentang hal-hal spesifik yang diperlukan untuk menjalankan dan menjalankan proyek di sana, tetapi berikut adalah beberapa sorotan penting:
- Konfigurasi WiFi - Perhatikan catatan seputar konfigurasi WiFi. Jika Anda memiliki jaringan WiFi yang lebih eksotis, Anda mungkin perlu menggali lebih dalam di sini.
- Ketergantungan Eksternal - Kami cukup ringan dalam hal dependensi eksternal, tetapi kami mereferensikan beberapa pustaka yang mungkin perlu Anda instal. Pustaka terbaru selalu dirujuk di bagian bawah halaman.
Ikhtisar Windows / Arduino Jarak Jauh
Repositori FizViz-Windows kami di GitHub adalah rumah dari kode Windows untuk FizViz. Sekali lagi, ada banyak informasi yang lebih spesifik di GitHub, jadi kami sarankan untuk membaca instruksi di sana secara mendetail.
Strategi kami adalah memulai dengan kode Pengkabelan Arduino Jarak Jauh dari ms-iot. Alih-alih mengontrol pin langsung dari aplikasi Windows, kami menyiapkan beberapa pesan kontrol Firma kustom. Kami membuat perubahan kecil pada kode pengkabelan jarak jauh untuk memungkinkan pengiriman pesan khusus ke lapisan Firmata. Kemudian kami mengimplementasikan penangan pesan khusus di proyek Arduino yang memperbarui status FizViz berdasarkan perintah kontrol dari aplikasi Windows.
Kami juga menambahkan dukungan untuk mengumpulkan data analitik dari Google Analytics karena ini adalah kasus penggunaan utama kami untuk Widget FizViz kami sendiri. Semoga bermanfaat sebagai referensi, meskipun Anda memutuskan untuk menyambung ke sumber data yang berbeda. Ada sejumlah langkah yang diperlukan untuk menyiapkan akun Google Analytics untuk akses API, jadi harap periksa catatan repo untuk detail selengkapnya.
Widget #1 - "RotoMoto"
Kami membangun RotoMoto untuk menampilkan semua fitur FizViz. Ini melatih platform dengan menunjukkan aplikasi yang sangat keren dari pencahayaan dan kontrol stepper kami di widget yang bisa Anda banggakan untuk digantung di kantor mana pun. Impian kami adalah memiliki suite yang terdiri dari 4 atau 5 wanita cantik ini yang tergantung berdampingan, tetapi kami akan membutuhkan lebih banyak MKR1000 untuk mewujudkannya!
Konstruksi RotoMoto Anda sendiri cukup mudah. Bahkan jika Anda tidak memiliki semua alat yang sama, ada banyak cara untuk mencapai efek yang sama seperti kami dengan apa pun yang bisa Anda dapatkan. Artikel selanjutnya menjelaskan build dan di mana Anda mungkin dapat membuat beberapa penyesuaian untuk efek yang berbeda.
Repositori CAD
Pertama, kami menyimpan file CAD kami di Github di repo FizViz-CAD. Anda akan menemukan versi STEP dan STL dari berbagai bagian yang kami buat untuk membuat widget RotoMoto kami.
Bagian Tambahan
Di atas dan di luar desain CAD kami, berikut adalah daftar bagian yang kami gunakan dalam perakitan kami:
Deskripsi Supplier Part # CatatanStepper Pulley McMaster-Carr 1375K15 15 gigiKatrol Jarum McMaster-Carr 1375K28 30 gigiBearing McMaster-Carr 60355K701 Bekas 2Belt McMaster-Carr 7887K28 Sekrup Motor Stepper De Mode Elec. 54-410-100 2.6mmx8mmReed Switch Digikey 306-1124-1-ND Magnet Digikey 469-1002-ND 0.5"Dx0.125"H
Papan Gunung
Tulang punggung bangunan RotoMoto adalah papan pemasangan. Pada dasarnya, ini menampung komponen mekanik dan listrik dan menyimpan semuanya dengan rapi di balik bezel layar yang menyala.
Kami menggunakan ShopBot CNC untuk menggiling papan pemasangan kami dari papan MDF Tebal 1". Ada berbagai cara lain untuk memotong bentuk (pemotong laser, gergaji ukir, dll.) tetapi karena CNC ada di sini, itulah yang kami gunakan .
Bezel
Sejauh ini, fitur utama dari bangunan kami adalah bezel yang menyala. Kami memotong bagian ini dari lembaran akrilik setebal 1/2". Sekali lagi, di ShopBot. Kunci teknik iluminasi adalah bahwa di mana pun "buram" di mana permukaan dipotong akan diterangi. Anda dapat membuat tanda menggunakan Dremel atau tangan lainnya -alat juga.
Kami menyediakan model CAD kami yang dipotong menjadi dua karena lebih efisien menggunakan material dengan cara ini. Gabungkan kedua bagian bersama-sama dengan semen akrilik, atau gabungkan modelnya jika Anda berencana melakukannya dalam satu potongan (demikianlah demo kami dibuat).
Cincin Dalam
Cincin Bagian Dalam adalah bagian penting dalam pembuatannya - tempat strip NeoPixel dipasang dan disembunyikan di balik bingkai akrilik. Fabrikasi kami terdiri dari pencetakan 3D dalam potongan besar pada TAZ5 kami dari PLA, dan kemudian menempelkannya. Setelah cukup banyak pengisi, dan priming, kami memiliki cincin yang cukup solid.
Motor dan Mekanik
Repositori CAD berisi file untuk dudukan motor untuk Sanyo Pancake Stepper kami serta tensioner sabuk dan poros. Pemasangan cukup lurus ke depan - sabuk dan puli dipasang seperti yang ditunjukkan di bawah ini. Menggunakan dua bantalan di dudukan membantu meningkatkan kekakuan dan menjaga poros tetap lurus.
Pengkabelan
Mendapatkan semuanya agar sesuai agak sulit. Pertama, Anda merekatkan atau merekatkan strip NeoPixel ke Cincin Bagian Dalam agar terpasang dengan kuat di tempatnya. Kemudian, kabel untuk sakelar buluh dan NeoPixels melewati lubang di badan dudukan. Setelah itu, cincin bagian dalam meluncur melalui bezel dan masuk ke dudukan.
Sebuah gambar bernilai seribu kata.....
Langkah-Langkah Menyelesaikan
Hal terakhir yang harus dikemas dalam kabel dan mengamankan semuanya. Ini sangat pas, tapi kami mengemas semuanya. Selesaikan pemasangan kabel, dan Anda harus memiliki RotoMoto sendiri!
Kode
FizViz-Windows
Repo GitHub kami yang berisi kode Sumber Windows untuk FizViz.https://github.com/iotdesignshop/FizViz-Windows FizViz-Arduino
Repositori GitHub kami yang berisi sumber Arduino untuk platform FizViz.https://github.com/iotdesignshop/FizViz-Arduino Suku cadang dan penutup khusus
FizViz-CAD
Repositori GitHub yang berisi file CAD terbaru untuk Widget FizVizhttps://github.com/iotdesignshop/FizViz-CAD Skema
Repositori FizViz-Listrik
Skema EAGLE dan Versi Bitmap dari Desain Elektronik FizViz Terbaruhttps://github.com/iotdesignshop/FizViz-Electrical.git