Daftar Isi:
- Langkah 1: Menyiapkan Raspberry Pi
- Langkah 2: Menyiapkan NoCAN
- Langkah 3: Menyatukan Perangkat Keras UFire
- Langkah 4: Perangkat Keras NoCAN
- Langkah 5: Programkan Node CANZERO
- Langkah 6: Bagaimana Semua Ini Diikat Bersama?
- Langkah 7: Menyiapkan Chronograf atau Grafana
- Langkah 8: Beberapa Perbaikan
Video: Simpan dan Grafik Data EC/pH/ORP Dengan TICK Stack dan Platform NoCAN: 8 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:55
Ini akan membahas cara menggunakan Platform NoCAN oleh Omzlo dan sensor uFire untuk mengukur EC, pH, dan ORP. Seperti yang dikatakan situs web mereka, terkadang lebih mudah untuk menjalankan beberapa kabel ke node sensor Anda. CAN memiliki keunggulan komunikasi dan daya dalam satu kabel sehingga sinyal dan baterai tidak menjadi masalah. Firmware node bisa lebih sederhana; tidak repot dengan mode tidur atau pengaturan WiFi, misalnya. Platform NoCAN juga memiliki beberapa fitur hebat seperti memprogram node melalui bus CAN.
Platform NoCAN menggunakan Raspberry Pi, jadi semua yang dapat dilakukan akan tersedia. Kami akan memanfaatkannya dengan menginstal tumpukan TICK. Itu akan memungkinkan kita menggunakan InfluxDB untuk menyimpan pengukuran. Ini adalah basis data berbasis deret waktu yang dibuat khusus untuk hal semacam ini. Itu juga dilengkapi dengan Chronograf untuk membuat dasbor dan menampilkan semua data yang akan kita ambil ini. T dan K adalah singkatan dari Telegraf dan Kapasitor. Telegraf berada di antara data yang Anda kirim dan database Influx. Kapasitor adalah mesin acara. Ketika sesuatu terjadi, itu dapat mengirimi Anda pemberitahuan melalui berbagai metode. Dan, hanya karena saya lebih menyukainya daripada Chronograf, saya akan menginstal Grafana untuk dasbor.
Langkah 1: Menyiapkan Raspberry Pi
Buka halaman Unduh Rasbian dan unduh gambar dengan desktop dan perangkat lunak yang direkomendasikan, lalu flash ke kartu SD.
Setelah gambar ada di kartu SD Anda, Anda harus memiliki dua volume, root dan boot. Buka terminal saat boot dan ketik:
sentuh ssh
Itu akan mengaktifkan SSH.
Kemudian ketik:
nano wpa_supplicant.conf
Dan salin/tempel yang berikut ini setelah Anda memodifikasinya untuk pengaturan county dan WiFi Anda sendiri:
negara=AS
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="NETWORK-NAME" psk="NETWORK-PASSWORD" }
Kode negara berasal dari sini.
Aktifkan SPI:
echo "dtparam=spi=on" >> config.txt
Letakkan kartu SD di Raspberry Pi Anda, tunggu sebentar dan ketik:
Anda harus berada di prompt login. Kata sandinya adalah raspberry.
Langkah 2: Menyiapkan NoCAN
Omzlo menyediakan panduan instalasi menyeluruh. Tetapi saya memutuskan untuk membuatnya lebih mudah bagi diri saya sendiri dan belajar sedikit tentang skrip Bash. Jadi mulailah Raspberry Pi Anda dan SSH atau terminal serial ke dalamnya.
Saya belajar bahwa banyak waktu pengembangan dapat digunakan untuk membuat skrip Bash yang baik seperti apa pun yang Anda coba instal. Ada 1000 cara untuk menyelesaikan sesuatu, beberapa lebih sederhana untuk dipahami atau dijalankan daripada yang lain. Pada akhirnya, saya tidak benar-benar berbuat banyak. Jika Anda menjalankan:
wget https://ufire.co/nocan.sh && chmod +x nocan.sh && sudo./nocan.sh
Di terminal Raspberry Pi Anda, itu akan mengunduh dan menjalankan skrip.
Lalu itu:
- Mengunduh daemon Omzlo NoCAN dan menginstalnya di /usr/bin untuk memudahkan akses, membuat folder ~/.nocand dan menulis file konfigurasi yang sangat mendasar dengan kata sandi yang disetel ke 'kata sandi'. Anda mungkin harus mengubahnya ke sesuatu yang lain, di ~/.nocand/config.
- Mengunduh klien Omzlo NoCAN dan menyalinnya di /usr/bin dan membuat file konfigurasi dasar dengan set kata sandi yang sama. Ada di ~/.nocanc.conf.
- Menyiapkan layanan Systemd yang membuat daemon NoCAN tetap berjalan.
- Menulis file python ke ~/.nocand, nocan_ufire.py. Ini akan berbicara dengan firmware node NoCAN dan melakukan pengukuran EC, pH, dan ORP, mengurai hasilnya dan menambahkannya ke database InfluxDB.
- Menambahkan repo InfluxData ke apt dan menginstal tumpukan TICK. Dan karena saya lebih menyukainya daripada Chronograf, ia juga menginstal Grafana.
- Membuat database Influx kosong
Beberapa gotcha yang mungkin Anda temui:
- Lokal Anda mungkin tidak diatur, jadi jalankan dpkg-reconfigure locales
- Instalasi Grafana mungkin hang, jadi coba lagi.
-
Daemon masuk mungkin tidak dimulai tepat waktu agar skrip menambahkan database, ketik
curl -i -XPOST https://localhost:8086/query --data-urlencode "q=CREATE DATABASE nocan"
- Skrip ini hanya berfungsi sebagai pengguna pi default. Anda harus mengubah pi ke nama pengguna Anda jika sesuai jika Anda berada di bawah pengguna yang berbeda.
Hal terakhir adalah menambahkan pekerjaan cron. Saya tidak dapat menemukan cara yang sangat baik untuk membuat skrip yang ini, jadi ketik 'crontab -e' untuk mengedit secara manual dan tambahkan '* * * * * python /home/pi/.nocand/nocan_ufire.py'.
Setelah semuanya selesai, Anda dapat memverifikasi bahwa semuanya sudah diatur dan berjalan sebagaimana mestinya. Grafana tinggal di https://[Alamat Raspberry Pi]:3000/. Anda akan melihat halaman login, admin/admin adalah default.
Chronograf dapat ditemukan di https://[Alamat Raspberry Pi]:8888/
Langkah 3: Menyatukan Perangkat Keras UFire
Sebelum kita dapat merakit perangkat keras, ada satu hal yang harus diperhatikan. Papan uFire ISE dapat digunakan untuk mengukur pH dan ORP. Perangkat kerasnya sama, tetapi perangkat lunaknya berbeda. Karena perangkat kerasnya sama, itu berarti alamat I2C, secara default, juga sama. Dan sensor berkomunikasi melalui I2C sehingga perlu diubah. Untuk proyek ini, kita akan memilih salah satu papan ISE dan menggunakannya untuk mengukur ORP. Ikuti langkah-langkah di sini, ubah alamat menjadi 0x3e.
Sekarang setelah alamatnya diubah, menyatukan perangkat keras menjadi mudah. Pengaturan ini didasarkan pada pekerjaan sebelumnya yang pada dasarnya melakukan hal yang sama tetapi menggunakan BLE daripada CAN untuk mengirimkan data. Anda dapat membacanya di Arduino Project Hub. Semua perangkat sensor menggunakan sistem koneksi Qwiic jadi hubungkan semuanya bersama-sama dalam satu rantai, hanya ada satu cara untuk memasukkan kabel Qwiic ke Qwiic. Anda memerlukan satu kabel Qwiic ke Male untuk menghubungkan salah satu sensor ke node CANZERO. Kabelnya konsisten dan diberi kode warna. Hubungkan hitam ke GND node, merah ke pin +3.3V atau +5V, biru ke pin SDA yaitu D11, dan kuning ke pin SCL di D12.
Untuk proyek ini, informasi suhu diharapkan berasal dari sensor EC, jadi pastikan untuk memasang sensor suhu ke papan EC. Semua papan memiliki kemampuan untuk mengukur suhu sekalipun. Jangan lupa untuk memasang probe EC, pH dan ORP ke sensor yang sesuai. Mereka mudah dipasang dengan konektor BNC. Jika Anda memiliki selungkup, memasukkan semua ini ke dalam akan menjadi ide yang bagus, terutama mengingat air akan terlibat.
Langkah 4: Perangkat Keras NoCAN
Merakit perangkat keras NoCAN juga mudah. Pasang PiMaster ke Raspberry Pi dan temukan catu daya yang cocok untuknya.
Ikuti instruksi Omzlo tentang membuat kabel untuk proyek Anda.
Terapkan node Anda dan temukan tempat untuk PiMaster.
Langkah 5: Programkan Node CANZERO
Salah satu hal hebat tentang pengaturan ini adalah Anda dapat mengakses node bahkan setelah mereka di-deploy. Mereka diprogram melalui kabel CAN, sehingga Anda dapat memprogram ulang kapan pun Anda mau.
Untuk itu, Anda perlu menginstal Arduino IDE, PiMaster di jaringan Anda, dan node Anda terhubung ke bus CAN. Anda juga memerlukan program bernama nocanc yang diinstal di komputer pengembangan Anda. Semua itu dijelaskan di halaman instalasi Omzlo.
Kunjungi GitHub dan salin kode ke sketsa Arduino IDE baru. Ubah papan menjadi Omzlo CANZERO dan pilih node di menu 'Port'. Kemudian tinggal klik upload seperti biasa. Jika semuanya berjalan sesuai rencana, Anda harus memiliki node terprogram yang siap untuk melakukan beberapa pengukuran.
Langkah 6: Bagaimana Semua Ini Diikat Bersama?
Sekarang semua perangkat lunak dan perangkat keras sudah diatur, mari luangkan waktu sejenak untuk berbicara tentang bagaimana semua itu benar-benar akan bekerja. Dan pamerkan keterampilan GIMP saya…
Singkatnya:
- Node CANZERO terhubung ke PiMaster dan ditempatkan di suatu tempat
- Setiap menit pekerjaan Cron dijalankan di PiMaster. Ini akan mengeksekusi skrip python.
- Skrip python akan mengirim perintah ke node yang menyuruhnya melakukan pengukuran atau tindakan lainnya.
- Node akan menjalankan apa perintah itu dan mengembalikan hasilnya dalam format JSON.
- Skrip python akan menerima hasil itu, menguraikannya, dan memperbarui InfluxDB dengannya.
Langkah terakhir adalah melihat pengumpulan data dalam beberapa grafik yang terlihat bagus.
Langkah 7: Menyiapkan Chronograf atau Grafana
Hal terakhir yang harus dilakukan adalah mengatur beberapa grafik di Chronograf atau Grafana.
Anda harus menyiapkan sumber data. Default untuk InfluxDB baik-baik saja. Alamatnya adalah 'https://localhost:8086' dan tidak ada nama pengguna atau kata sandi.
Keduanya serupa karena disusun ke dalam Dasbor yang memiliki sejumlah grafik di dalamnya. Keduanya memiliki area Jelajahi yang memungkinkan Anda melihat pengukuran dan membuat grafik secara interaktif. Ingat nama databasenya adalah 'nocan' dan disusun menjadi beberapa pengukuran dengan satu nilai.
Seperti yang saya sebutkan, saya lebih suka Grafana karena lebih dapat dikonfigurasi daripada Chronograf. Ini juga ramah seluler, di mana Chronograf tidak. Grafik mudah disematkan dan dibagikan
Langkah 8: Beberapa Perbaikan
- Anda dapat mengatur nama host Raspberry Pi Anda untuk mengaksesnya lebih mudah di jaringan Anda. Anda dapat melakukannya di raspi-config. Saya mengubah milik saya menjadi nocan, jadi saya bisa membuka nocan.local untuk mengaksesnya (tidak berfungsi di Android).
- Anda dapat menginstal program seperti ngrok untuk mengakses Raspberry Pi Anda di luar jaringan Anda.
- Gunakan salah satu metode yang disediakan Kapasitor untuk memberikan notifikasi.
- Tambahkan lebih banyak sensor, tentu saja.
Direkomendasikan:
Buat Plot Indah Dari Data Arduino Langsung (dan Simpan Data ke Excel): 3 Langkah
Buat Plot Indah Dari Data Arduino Langsung (dan Simpan Data ke Excel): Kita semua suka bermain dengan fungsi P…lotter kami di Arduino IDE. Namun, meskipun dapat berguna untuk aplikasi dasar, data akan terhapus karena lebih banyak poin ditambahkan dan itu tidak terlalu menyenangkan untuk mata. Plotter Arduino IDE tidak
Membaca dan Membuat Grafik Data Sensor Cahaya dan Suhu Dengan Raspberry Pi: 5 Langkah
Membaca dan Membuat Grafik Data Sensor Cahaya dan Suhu Dengan Raspberry Pi: Dalam Instruksi ini Anda akan belajar cara membaca sensor cahaya dan suhu dengan raspberry pi dan konverter analog ke digital ADS1115 dan membuat grafiknya menggunakan matplotlib. Mari kita mulai dengan bahan-bahan yang dibutuhkan
Log Data dan Plot Grafik Online Menggunakan NodeMCU, MySQL, PHP dan Chartjs.org: 4 Langkah
Data Log dan Plot Grafik Online Menggunakan NodeMCU, MySQL, PHP dan Chartjs.org: Instruksi ini menjelaskan bagaimana kita dapat menggunakan papan Node MCU untuk mengumpulkan data dari beberapa sensor, mengirimkan data ini ke file PHP yang dihosting yang kemudian menambahkan data ke sebuah database MySQL. Data tersebut kemudian dapat dilihat secara online sebagai grafik, menggunakan bagan bagan.js.A
Simpan Data Sensor Arduino ke MYsql Menggunakan Pemrosesan: 6 Langkah
Menyimpan Data Sensor Arduino ke MYsql Menggunakan Processing: Sejujurnya sulit untuk menyimpan data Arduino ke MySQL secara langsung sehingga dalam kecanduan Arduino IDE saya menggunakan Processing IDE yang mirip dengan Arduino IDE tetapi dengan banyak penggunaan yang berbeda dan Anda dapat mengkodekannya java.Catatan: jangan jalankan Arduino serial moni
Sensor Kabut - Foton Partikel - Simpan Data Online: 5 Langkah (dengan Gambar)
Sensor Kabut - Foton Partikel - Simpan Data Online : Untuk mengukur banyaknya kabut atau asap di udara kami membuat sensor kabut ini. Ini mengukur jumlah cahaya yang diterima LDR dari laser, dan membandingkannya dengan jumlah cahaya di sekitarnya. Ini memposting data di lembar google secara realtime melalui IFTTT