Tentang proyek ini
Pendahuluan
Pada September 2016, pabrik pengolahan air harus ditutup karena air yang tercemar mengalir ke pabrik. Perusahaan penyedia air tidak dapat menentukan sumber kontaminasi dan ini menyebabkan gangguan layanan air yang serius.
Kursus universitas saya mengharuskan siswa untuk membangun sistem untuk memecahkan masalah masyarakat. Sistem pemantauan kualitas air otomatis akan memudahkan pekerjaan menemukan sumber polusi!
Ikhtisar Sistem
4 sensor dihubungkan ke Arduino Genuino 101. Semuanya memerlukan beberapa rangkaian antarmuka karena merupakan sensor keluaran arus. Arduino Genuino 101 mengumpulkan data pengukuran secara berkala, mendapatkan koordinat GPS, dan mengunggah bundel data ke dalam database menggunakan tautan data GPRS. Pengguna dapat pergi ke situs web untuk melihat hasilnya seperti yang ditunjukkan di bawah ini.
Sensor probe
Ketiga sensor keluaran arus tersebut berasal dari Global Water yang diberikan oleh dosen pembimbing. Saya menggunakan sensor suhu, pH, dan tingkat oksigen terlarut dalam proyek ini. Sayangnya, sensor tingkat oksigen terlarut rusak.
Sensor lainnya adalah sensor kekeruhan, yang menghasilkan tingkat tegangan sebanding dengan jumlah partikel padat tersuspensi di dalam air.
Sensor Antarmuka dan Arduino
Sebuah resistor mengubah output arus menjadi level tegangan yang dapat diukur.
A7 GPRS dan modul GPS
Saya memilih modul A7 ini karena relatif lebih murah dibandingkan varian SIM900, serta menggabungkan GPRS dan GPS dalam satu paket!
Namun, harga yang lebih murah memang datang dengan harga. Pertama, antena GPS yang disertakan dengan modul sebenarnya bukan antena GPS, Anda harus membelinya sendiri. Kedua, ini hanya mendukung komunikasi UART 115200 bps secara default, dan bahkan jika Anda mengubahnya menggunakan perangkat lunak, itu akan kembali ke baud rate default setelah siklus daya, dan Serial Perangkat Lunak pada 115200 bps sangat sangat tidak dapat diandalkan. Saya menarik rambut saya selama 2 hari untuk masalah ini. Setelah itu saya mengimplementasikan fungsi perubahan baud rate dalam kode Arduino.
Dan, karena ini adalah modul baru, saya perlu membuat perpustakaan sendiri untuk modul ini. Kode sumber dikumpulkan dari berbagai tempat, seperti SIM900, dan modul GPS Adafruit. Ini berantakan, tetapi berhasil, tolong jangan mengutuk saya.
Sirkuit harus dirancang untuk mengaktifkan modul. Ini memiliki dua pin, pin RESET dan pin PWR_KEY untuk dikendalikan. Tegangan diterapkan ke PWR_KEY setidaknya selama 2 detik untuk mem-boot modul. Untuk mereset, tarik pin RESET ke GND. Jika tidak, pin RESET harus ditarik hingga 5V. Pertama-tama saya menyetel ulang modul, lalu melanjutkan untuk menyalakan modul untuk memastikan modul dapat dijalankan dengan baik.
Sumber Daya
Sumber daya layak disebutkan secara khusus di sini (saya pikir?) Karena sensor keluaran saat ini. Mereka membutuhkan minimal 10V untuk beroperasi, lebih tinggi dari 5V kita tercinta. Karena saya ingin mendemonstrasikan kemampuan sistem ini untuk bekerja dari jarak jauh, saya memilih baterai Li-Ion.
2 baterai Li-Ion secara seri akan memberikan 7.4-8.4V, satu konverter buck untuk menurunkannya ke 5V untuk modul Arduino dan A7 kami, konverter boost lain untuk menyediakan rel daya 11V untuk sensor air tersebut. Dengan pengaturan ini, sistem tidak akan berjalan dalam waktu yang lama, tetapi itu bukan perhatian utama untuk prototipe ini.
Papan
Sistem ini dibangun di atas papan prototipe. Board dan Arduino Genuino 101 sangat pas dengan enklosurnya.
Lampiran
Dosen juga memberikan kandang lama, dengan lubang yang dibor oleh mahasiswa sebelumnya untuk proyek yang berhubungan dengan sensor air. Luar biasa!
Perhatikan konektor ke sensor. Saya menemukan mereka terpasang pada sensor, jadi saya mencari-cari konektor yang cocok dengan mereka. Saya menemukannya dengan kode GX16. Mereka sangat serbaguna dan pasti akan berguna dalam proyek masa depan!
Halaman web
Akhirnya, bagian yang membutuhkan waktu berminggu-minggu untuk saya buat dari awal. Saya tidak memiliki pengetahuan di server, situs web, dan selama proyek ini saya belajar PHP, kueri SQL, JavaScript, CSS, dan HTML.
Saya meng-host situs web di Microsoft Azure karena mereka menyediakan layanan gratis untuk siswa. Muncul dengan keterbatasan, tetapi cukup untuk aplikasi ini.
Database disediakan oleh ClearDB, dalam kemitraan dengan Azure juga. Sekali lagi, keterbatasan memori, tetapi cukup untuk proyek ini.
Kode disediakan di repo, tetapi ingat untuk menambahkan kredensial Anda ke file username_password.php.
Log.php membuang semua data yang diterima dari Arduino ke dalam database.
Kemudian halaman web menyajikan Google Map, dengan penanda yang ditampilkan di lokasi yang memiliki data pengukuran. File php lainnya adalah "alat" untuk mengakses database untuk mengambil data dalam database.
Tanggapan situs webnya cukup lambat, dan karena saya baru saja meretas semua ini bersama-sama, saya ingin memperbaikinya. Saran sangat diterima. :)
Kode
Sistem Pemantauan Kualitas Air
Kode situs web di /Website, sketsa Arduino, dan pustaka modul A7 di /Arduinohttps://github.com/JohnHJ01/Water-Quality-Monitoring-System Skema
Skema untuk keseluruhan sistem