Daftar Isi:

Omnik Inverter Off It's Cloud dan di My MQTT: 3 Langkah (dengan Gambar)
Omnik Inverter Off It's Cloud dan di My MQTT: 3 Langkah (dengan Gambar)

Video: Omnik Inverter Off It's Cloud dan di My MQTT: 3 Langkah (dengan Gambar)

Video: Omnik Inverter Off It's Cloud dan di My MQTT: 3 Langkah (dengan Gambar)
Video: Describe your perfect vacation. #philippines #angelescity #expat #travel #filipina #phillipines 2024, November
Anonim
Inverter Omnik Off It's Cloud dan di MQTT Saya
Inverter Omnik Off It's Cloud dan di MQTT Saya
Inverter Omnik Off It's Cloud dan di MQTT Saya
Inverter Omnik Off It's Cloud dan di MQTT Saya

Saya memiliki instalasi tenaga surya menggunakan inverter string Omnik. Omnik adalah produsen inverter PV yang berbasis di China dan mereka membuat perangkat yang sangat efisien. Opsional, Anda dapat menginstal modul WiFi untuk membuatnya "terhubung". Saya sangat puas dengan perangkat ini, dengan dua pengecualian penting.

  1. Ini "menelepon ke rumah" ke layanan cloud berbasis China dan selama perangkat terhubung ke Internet, ini tidak dapat dimatikan. Saya tidak suka itu.
  2. Inverter tidak memiliki API terdokumentasi yang layak (juga layanan cloud). Karena otomatisasi rumah dan perangkat IoT condong ke pesan MQTT, saya ingin itu mengirim pesan MQTT.

Untuk proyek ini, yang menyelesaikan kedua masalah, kami beralih ke teman kami yang pilih-pilih tetapi dapat diandalkan, ESP8266. Saya menggunakan Wemos D1, tetapi inkarnasi apa pun yang Anda suka dapat digunakan. Rencananya adalah:

  1. Tidak memberikan modul WiFi dari inverter kredensial apa pun ke jaringan WiFi rumah. Ini memecahkan masalah 1.
  2. Biarkan Wemos secara berkala terhubung ke Access Point Inverter untuk memperoleh data yang kita inginkan. Kita dapat menggunakan protokol non-web yang direkayasa ulang untuk itu. Saya menggunakan kode ini sebagai titik awal.
  3. Kemudian putuskan sambungan, sambungkan ke jaringan rumah dan publikasikan data tersebut sebagai pesan MQTT.

Bill of material kami sangat sederhana:

  • Satu Wemos D1, untuk dibeli melalui situs web Wemos atau situs lelang favorit Anda;
  • Satu catu daya USB dengan kabel USB-mini.

Tidak ada kabel yang dibutuhkan sama sekali. Biayanya di bawah 10 EURO.

Saya berasumsi Anda sudah memiliki

  • inverter Omnik dengan modul WiFi terpasang;
  • infrastruktur MQTT (broker, dashboard);
  • versi terbaru dari Arduino IDE dengan dukungan untuk prosesor ESP8266 terpasang.
  • beberapa keakraban dengan hal di atas.

Ada beberapa instruksi tentang MQTT dan menggunakan Arduino IDE untuk prosesor ESP8266, tetapi jangan ragu untuk bertanya di bagian komentar.

Langkah 1: Putuskan Sambungan Omnik Dari Internet Secara Permanen

Putuskan Sambungan Omnik Dari Internet Secara Permanen
Putuskan Sambungan Omnik Dari Internet Secara Permanen

Jika, seperti saya, Anda memiliki inverter yang terhubung ke jaringan WiFi Anda, sangat sulit untuk memutuskannya. Setiap perubahan yang Anda buat pada pengaturan WiFi diperiksa sebelum diterapkan. Alih-alih melompat melalui rintangan seperti mengubah kata sandi enkripsi router dan inverter, kemudian mengubah kembali router, saya memutuskan untuk mengambil pendekatan yang lebih bersih dan mulai dari awal.

Pergi ke inverter dan lakukan tindakan berikut:

  • tekan tombol Bawah sampai Set berkedip, lalu tekan Enter
  • Tekan tombol Bawah hingga WiFi berkedip, lalu tekan Enter
  • Tekan tombol Atas sehingga Ya berkedip, lalu tekan Enter

Hubungkan ke inverter

Buka komputer Anda dan temukan jaringan WiFi yang disebut AP_xxxxxxxx, angka penyajian x. Hubungkan ke sana. Bergantung pada sistem operasinya, Anda mungkin perlu membuatnya "melupakan" jaringan itu terlebih dahulu jika Anda telah terhubung sebelumnya, karena sekarang kata sandi WiFi yang mungkin tersimpan telah hilang.

Amankan titik akses inverter

Setelah terhubung, buka browser Anda, masukkan 10.10.100.254 dan tekan Enter. Sebuah popup login akan muncul. Masukkan admin di kedua bidang untuk masuk. JANGAN ikuti wizard dan konfigurasikan titik akses. Klik Advanced di menu sebelah kiri, lalu submenu Wireless point.

Lakukan perubahan berikut:

  • Metode enkripsi ke WPA2PSK
  • Jenis enkripsi ke TKIP
  • Masukkan kata sandi Wi-Fi. Tuliskan kata sandi, Anda akan membutuhkannya untuk segera terhubung ke inverter.

Klik Simpan dan modul WiFi akan dimulai ulang. Anda akan kehilangan koneksi karena sekarang memerlukan kata sandi. Sambungkan kembali, dan masukkan kata sandi WiFi. Sekali lagi, Anda mungkin perlu membuat PC Anda "melupakan" jaringan AP_xxxxxxxx terlebih dahulu. Anda sekarang harus terhubung ke inverter lagi melalui tautan WiFi yang aman.

Amankan halaman konfigurasi inverter

Buka browser Anda, masukkan 10.10.100.254 dan tekan Enter lagi. Sebuah popup login akan muncul. Sekali lagi masukkan admin di kedua bidang untuk masuk. Klik Akun di menu sebelah kiri. Ubah nama pengguna dan kata sandi menjadi dua string yang unik dan tidak sepele. Anda harus memasukkan keduanya dua kali. Tulislah. Klik Simpan dan modul WiFi akan dimulai ulang. Tunggu beberapa detik dan muat ulang halaman. Verifikasi bahwa Anda sekarang memerlukan nama pengguna dan kata sandi baru untuk membuka halaman konfigurasi. Inverter Anda sekarang memiliki lapisan keamanan ekstra terhadap perubahan yang dibuat oleh pihak luar.

Ini menyimpulkan semua pekerjaan yang harus dilakukan pada inverter. Sekarang terputus dari Internet, cukup aman, tetapi masih berfungsi sebagai Titik Akses WiFi yang dapat kita gunakan untuk menanyakannya.

Langkah 2: Unduh dan Konfigurasikan Perangkat Lunak untuk Wemos D1

Unduh dan Konfigurasikan Perangkat Lunak untuk Wemos D1
Unduh dan Konfigurasikan Perangkat Lunak untuk Wemos D1

Unduh perangkat lunak untuk Wemos. Anda dapat menemukan kode di sini. Anda perlu membuat beberapa perubahan untuk mengonfigurasinya untuk jaringan rumah dan inverter Anda

  • homeSsid: nama jaringan WiFi rumah Anda
  • homePassword: kata sandi jaringan WiFi rumah Anda
  • omnikSsid: nama jaringan WiFi Omnik Anda. Seharusnya terlihat seperti AP_xxxxxxxxx
  • omnikPassword: kata sandi jaringan WiFi Omnik Anda yang Anda tetapkan di langkah sebelumnya
  • omnikIP: alamat IP dari inverter. Ini selalu {10, 10, 100, 254}
  • omnikCommand: string byte yang diperlukan untuk menanyakan inverter Anda, lihat di bawah.
  • mqtt_server: nama host dari broker MQTT Anda
  • mqtt_port: nomor port TCP, biasanya 1883 untuk koneksi tidak aman atau 8883 untuk koneksi aman (SSL)
  • mqtt_username dan mqtt_password: kredensial untuk broker MQTT Anda
  • mqtt_clientID: masukkan beberapa digit acak di sini
  • mqtt_outTopic: topik pesan MQTT.

Array byte omnikCommand khusus untuk inverter individual Anda. Saya menerbitkan alat kecil sebagai spreadsheet Google untuk menghitung string. Anda perlu memasukkan nomor seri (sekitar 10 digit desimal) di sel B1 dan menggunakan string yang dihitung di sel B4 di sketsa Anda.

Agar berhasil mengkompilasi kode, Anda juga memerlukan pustaka PubSubClient.h. Pastikan papan dan port yang tepat (Wemos D1) dipilih, lalu unggah sketsa ke papan. Anda dapat meletakkan papan Wemos kecil dalam wadah plastik kecil untuk perlindungan dan menghubungkannya ke catu daya USB. Letakkan di suatu tempat yang tidak terlalu jauh dari inverter dan router WiFi Anda dan Anda sudah siap!

Loop utama dalam perangkat lunak terhubung ke WiFi inverter, lalu membuat koneksi TCP ke sana, membaca data, memutus, menghubungkan ke jaringan WiFi rumah, lalu ke broker MQTT, dan menerbitkan data yang diformat ulang di sana. Dibutuhkan hanya kurang dari 15 detik untuk melakukan semua koneksi dan pemutusan ini. Setelah itu, ada penundaan 20 detik, sehingga data harus dipublikasikan kira-kira setiap 35 detik.

Langkah 3: Beberapa Kata Tentang Pesan, Pialang, dan Pengujian

Beberapa Kata Tentang Pesan, Pialang, dan Pengujian
Beberapa Kata Tentang Pesan, Pialang, dan Pengujian
Beberapa Kata Tentang Pesan, Pialang, dan Pengujian
Beberapa Kata Tentang Pesan, Pialang, dan Pengujian
Beberapa Kata Tentang Pesan, Pialang, dan Pengujian
Beberapa Kata Tentang Pesan, Pialang, dan Pengujian

Kode mengeluarkan sedikit data debug, jadi jika ada yang tidak berfungsi, cukup sambungkan WeMos ke PC Anda lagi, mulai Arduino IDE dan tekan CTRL+SHFT+M untuk memulai konsol serial. Pastikan kecepatan diatur ke 115200.

Anda dapat menggunakan broker Anda sendiri, atau menggunakan layanan berbasis cloud. Saya menjalankan sendiri, Mosquitto diinstal pada NAS Synology saya. Jika Anda setuju dengan layanan cloud, Anda dapat menggunakan Adafruit atau Amazon AWS atau yang lainnya.

Pesannya adalah string JSON yang diformat seperti ini:

Saat boot, pesan berikut diterbitkan:

Ini dapat digunakan untuk mendeteksi reboot yang tidak terduga.

Pesan normal terlihat seperti ini:

Daya dalam watt, tegangan dalam Volt, arus dalam Amps, frekuensi dalam Hertz, Energi dalam kiloWatthour dan suhu dalam derajat Celcius.

Saya menggunakan mosquitto_sub untuk memeriksa pesan.

mosquitto_sub -h nama host -t "Solar/Omnik" -u pengguna -P kata sandi -p 1883 -v

Lihat tangkapan layar untuk hasilnya. Semua pesan diterbitkan dengan tanda pertahankan disetel ke true.

Di ponsel saya, saya menggunakan aplikasi bernama MQTT Dash dan saya telah menyertakan sablon dan apa yang harus dimasukkan untuk menunjukkan tombol daya hijau itu.

Direkomendasikan: