Jika Anda tidak tahu tentang arsitektur pengembangan dan desain mekanik / listrik di balik solusi IoT, mereka mungkin tampak seperti "memiliki kualitas atau kekuatan yang tampaknya supernatural". Sebagai contoh, jika Anda menunjukkan sistem IOT yang bekerja kepada orang-orang abad ke-18, mereka akan berpikir itu adalah sihir.Partikel ini semacam penghilang mitos semacam itu. Atau, lebih tepatnya, tentang petunjuk untuk menyempurnakan pengembangan IOT untuk proyek yang luar biasa di bidang manajemen energi surya.
Spoiler : tanpa mantra, hanya ide analitis untuk mengembangkan layanan yang cepat dan mudah.
Penafian : Kami tidak menawarkan solusi satu-semua-semua (itu tidak ada), hanya berbagi hal-hal yang kami temukan serius. Poin-poin ini mungkin merupakan fitur pembunuh sementara sebaliknya pengabaian mereka dapat membunuhnya. Pun dimaksud;)
Memperkenalkan sistem IoT untuk memvisualisasikan dan mengoptimalkan konsumsi energi surya
Kami merasa senang bekerja pada proyek peningkatan penggunaan energi yang dihasilkan sendiri. Intinya terletak pada memvisualisasikan dan mengoptimalkan penggunaan sistem photovoltaic (PV) untuk kedua perusahaan installer dan pelanggan akhir. Jadi, ketika Solar Manager dipasang sebagai hub pusat untuk mendistribusikan energi matahari yang dihasilkan antara perangkat rumah tangga, Anda menggunakan maksimum energi yang diproduksi sendiri.

Kami sudah menulis tentang perspektif bisnis dalam menggunakan energi matahari, dan sekarang mari selami tantangan teknologi dan petunjuk pengembangan.
Prasyarat mutlak
Sebelum kita mulai, mari kita perjelas. Ada satu hal yang berlaku untuk masing-masing dan setiap proyek, terlepas dari apakah itu sistem IoT atau pendaratan sederhana.
Jangan pernah memulai implementasi sebelum Anda memiliki pemahaman lengkap tentang apa yang ingin Anda capai (dan semua orang yang terlibat melakukannya).
Tidak ada yang namanya terbukti. Tidak, tidak ada telepatis, dan tidak ada yang membaca pikiran Anda. Perjelas, diskusikan, pastikan Anda berada di halaman yang sama.

Tentu saja, jika Anda tidak ingin menghabiskan dua kali lebih banyak waktu dan uang.
Misi
Jadi, apa yang kita miliki sebagai input? Konektivitas yang fleksibel dan firmware jarak jauh terpusat, 5 peran pengguna dengan UX dan set izin yang berbeda, mengonversi dan menganalisis data, sejumlah besar permintaan, dan, sebagai tambahan, membuat banyak data nilai waktu pada grafik.
Tantangan dan spesifik penerapan sistem IoT untuk konsumsi energi
Ketika datang ke pengembangan, 3 hal yang paling penting: stabilitas, relevansi, dan kecepatan. Apalagi ketika proyek tersebut membutuhkan arsitektur monolitik. Itu sebabnya logika keseluruhan, semua aliran pengguna, dan desain database harus sesederhana dan dioptimalkan mungkin. Jujur saja, pada 2019 tidak ada yang mau menunggu 40 detik karena 'data Anda sedang diproses'. Jadi, inilah daftar pertanyaan / jawaban untuk platform IoT yang kami rujuk:
- Apakah arsitekturnya sesuai dengan persyaratan dan spesifikasi?
- Bagaimana Anda mengonversi, memproses, dan menganalisis data yang dikumpulkan?
- Apa hubungan paling optimal antara lapisan orangtua-anak MVC / MVP? Bisakah mereka diskalakan tanpa diganggu?
- Apakah ada modul yang melakukan fungsi serupa / berdampingan? Bisakah mereka disatukan menjadi satu modul multiguna? Apakah itu akan memperkenalkan atau mengurangi kompleksitas?
- Apakah komunikasi antar tahap optimal?
- Bagaimana cara menyimpan data sebelum memvisualisasikannya?
- Apakah pengalaman pengguna (UX) sederhana dan jelas untuk setiap peran pengguna?
Pisahkan apa yang perlu didistribusikan, satukan yang serupa. Namun, jangan bingung dengan menciptakan kelas besar yang (harus) menyelesaikan beberapa tugas. Sebagai gantinya, buat yang kecil untuk satu tugas. Untuk tugas yang kompleks, buat beberapa kelas yang masing-masing memecahkan subtugas dan yang lain yang akan menggunakan mereka.
Solusi arsitek IoT cerdas
Smart di sini mengacu pada pembuatan arsitektur proyek yang cepat, dapat diukur, dioptimalkan, dan berkelanjutan yang sesuai dengan persyaratan proyek. Pertanyaan dasar yang muncul pada saat ini:
- Apa aliran arsitektur paling mudah dan paling langsung?
- Bagaimana membuat pengalaman pengguna untuk setiap peran yang paling sederhana?
- Bisakah kita merevisi arsitektur awal untuk skalabilitas dan optimalisasi kinerja yang lebih baik?
Untuk aplikasi web, ini melibatkan desain model hierarki (HMVC). Misalnya, untuk mengalokasikan sumber daya yang lebih baik dan memberikan respons yang lebih cepat, bekerja melalui koneksi antara API, ujung belakang, ujung depan, dan ujung. Konfigurasikan komunikasi cloud-lokal, menyimpan dan mentransfer data sehingga Anda mendapatkan respon yang benar dengan cepat (halo, Kapten Obvious!).

Jangan pernah meremehkan pentingnya berpikir melalui desain basis data (DB). Ini juga berlaku untuk hubungan antar koleksi dalam database. Anda memiliki banyak entitas, yang berinteraksi dalam berbagai cara, sehingga sangat penting untuk menjaga semua koneksi logis terkait di satu tempat.
Jadi, ketika Anda memiliki struktur awal, tentukan:
- Apakah ini (satu-ke-satu, satu-ke-banyak, banyak-ke-banyak) tipe hubungan yang optimal untuk koleksi ini? Apakah ini menyelesaikan tugas dengan paling efisien?
- Seberapa baik itu sesuai dengan tugas di layar tertentu?
- Apakah cocok dengan arsitektur umum proyek?
Optimalkan logika di balik setiap modul dan pastikan bahwa arsitektur umum dipertahankan. Pikirkan melalui set izin. Kemudian pikirkan lagi dan optimalkan. Ingatlah untuk mengatur jenis koneksi sehingga untuk setiap tugas Anda memiliki semua info yang diperlukan di satu tempat dan menangani permintaan dengan benar.
Misalnya, bayangkan database Anda adalah restoran cepat saji. Anda memiliki banyak klien, Anda perlu menyajikan makanan dengan cepat dan tepat seperti yang mereka pesan. Atau bisnis Anda sudah selesai. Itu persis sama untuk DB. Ya, ada puluhan koleksi dan Anda membutuhkan data dari 7-8 koleksi secara bersamaan. Jadi rancang hubungan sehingga mereka terhubung secara logis dan kembalikan respons dengan cepat.
Sistem IoT seperti restoran. Jangan membuat pelanggan menunggu.
Cara memplot [trilyun] data
Ingat waktu, ketika situs dimuat selama beberapa menit? Kami telah melihat aplikasi tempat dashboard memuat lebih lambat. Dan itu tidak boleh.
Grafik adalah normal baru. Visualisasi data umumnya digunakan dalam SCADA, IoT, dan proyek analitik apa pun dan karena suatu alasan. Melihat lonjakan konsumsi energi, tren pasar, CO2 di udara, dan hal-hal lain yang dapat Anda ukur (biasanya, seiring waktu) memberikan kesan yang jelas. Anda tahu, Anda mengerti, Anda bertindak. Dengan presentasi tekstual dari array data besar-besaran, mata Anda akan buram dalam waktu singkat.
Jadi, tantangannya terletak jika memplot grafik dengan jumlah pasangan waktu-nilai yang besar. Sebelum pengguna melihat data pada bagan, sistem harus menentukan semua poin untuk merencanakannya. Kami memiliki cukup banyak brainstorming untuk menentukan bagaimana cara cache data sehingga merencanakan bagan dengan pasangan nilai data 50K + membutuhkan waktu kurang dari 2 detik.

Dari awal hingga produksi, dan seterusnya
Selain dari aplikasi web, kami juga mengembangkan aplikasi iOS dan Android untuk instalasi, pemantauan, dan akses saat bepergian.
Hal penting yang perlu diingat ketika bekerja pada sistem IoT adalah menjaga kesederhanaan dan skalabilitas. Arsitektur IoT 5-tahap yang khas harus dipikirkan dengan baik untuk tidak membawa kompleksitas yang berlebihan.
Ketika setiap produk berkembang, Anda harus memikirkan cara melapisi fungsionalitas baru sambil tidak mengganggu fitur yang ada. Dan, tentu saja, jangan pernah lupakan pengujian unit.
Kurang dari setahun sejak diluncurkan
Sejak diluncurkan pada Oktober 2018, Solar Manager diadopsi dan digunakan oleh perusahaan grosir dan pemasang fotovoltaik terkemuka di Swiss.
Dengan meninjau dan mengoptimalkan kebiasaan penggunaan energi, konsumen mendapatkan yang terbaik dari PV mereka sehingga mereka menghemat biaya. Pada skala yang lebih global dan menurut Deloitte , solusi seperti itu membuat energi matahari bersaing dengan sumber daya tradisional. Ini, pada gilirannya, membuatnya menarik bagi konsumen dan bisnis residensial lainnya. Dan, akhirnya, bukankah itu terdengar sebagai dasar dari kota pintar yang kita semua nantikan?
Di belakang kesuksesan proyek IoT
Tidak ada 'panduan utama' untuk menciptakan produk yang sukses. Pertama, setiap proyek adalah unik dan membawa tantangannya sendiri. Kedua, bahkan jika Anda telah melakukan banyak proyek di daerah tersebut, permintaan teknologi dan pasar berkembang. Jadi pengalaman yang Anda miliki dari 2 atau bahkan setengah tahun yang lalu mungkin tidak relevan sekarang.
Anda juga dapat memeriksa GitHub kami untuk melihat banyak instrumen open-source gratis untuk pengembangan IOT.