Система мониторинга качества воды
Компоненты и расходные материалы
![]() |
| × | 1 | |||
| × | 1 | ||||
| × | 1 |
Необходимые инструменты и машины
![]() |
|
Приложения и онлайн-сервисы
![]() |
| |||
![]() |
|
Об этом проекте
Введение
В сентябре 2016 года водоочистное сооружение должно быть остановлено из-за попадания на него загрязненной воды. Компания водоснабжения не смогла определить источник загрязнения, что привело к серьезным нарушениям водоснабжения.
Мой университетский курс требует от студентов построения системы для решения общественных проблем. Автоматизированная система мониторинга качества воды упростит поиск источника загрязнения!
Обзор системы

4 датчика подключены к Arduino Genuino 101. Все они требуют некоторой схемы сопряжения, поскольку они являются датчиками с токовым выходом. Arduino Genuino 101 периодически собирает данные измерений, получает координаты GPS и загружает пакет данных в базу данных, используя канал передачи данных GPRS. Пользователи могут перейти на веб-сайт, чтобы просмотреть результат, как показано ниже.
Сенсорные зонды

Три выходных датчика тока от Global Water предоставлены ведущим лектором. В этом проекте я использую датчики температуры, pH и растворенного кислорода. К сожалению, датчик уровня растворенного кислорода неисправен.
Другой датчик - датчик мутности, который выдает уровень напряжения, пропорциональный количеству взвешенных твердых частиц в воде.
Сопряжение датчиков и Arduino
Резистор преобразует выходной ток в измеряемый уровень напряжения.
Модуль A7 GPRS и GPS

Я выбрал этот модуль A7, потому что он относительно дешевле, чем вариант SIM900, и сочетает в себе GPRS и GPS в одном корпусе!
Однако более дешевая цена имеет свою цену. Во-первых, GPS-антенна, которая идет в комплекте с модулем, на самом деле не является GPS-антенной, вам придется покупать ее самостоятельно. Во-вторых, по умолчанию он поддерживает только связь UART со скоростью 115200 бит / с, и даже если вы измените его с помощью программного обеспечения, он вернется к скорости передачи по умолчанию после выключения питания, а программный последовательный порт на 115200 бит / с очень ненадежен. Я выдергивал волосы 2 дня из-за этой проблемы. После этого я реализовал функцию изменения скорости передачи в коде Arduino.
И, поскольку это новый модуль, мне нужно создать свою собственную библиотеку для этого модуля. Исходные коды собираются из разных источников, например, с SIM900 и GPS-модуля Adafruit. Это грязно, но работает, пожалуйста, не осуждайте меня.
Для включения модуля должна быть разработана схема. Он имеет два контакта, вывод RESET и вывод PWR_KEY для управления. Напряжение подается на PWR_KEY не менее 2 секунд для загрузки модуля. Для сброса подтяните контакт RESET к GND. В противном случае следует подтянуть вывод RESET до 5 В. Сначала я перезагружаю модуль, а затем включаю модуль, чтобы убедиться, что он запускается нормально.
Источник питания
Отдельного упоминания здесь заслуживает источник питания (я так думаю?) Из-за датчиков токового выхода. Для работы им требуется минимум 10 В, больше, чем наши любимые 5 В. Поскольку я хотел продемонстрировать возможность удаленной работы этой системы, я выбрал литий-ионный аккумулятор.

Две последовательно соединенные литий-ионные батареи дадут 7,4–8,4 В, один понижающий преобразователь для понижения его до 5 В для нашего модуля Arduino и A7, еще один повышающий преобразователь для обеспечения шины питания 11 В для этих датчиков воды. При такой настройке система не будет работать долгое время, но это не главная проблема для данного прототипа.
Доска
Система построена на макетной плате. Плата и Arduino Genuino 101 прекрасно вписываются в корпус.

Корпус
Лектор также передал старый корпус с отверстиями, просверленными предыдущими студентами для проектов, связанных с датчиками воды. Чудесно!

Обратите внимание на разъемы датчиков. Я обнаружил, что они прикреплены к датчикам, поэтому искал разъемы, которые бы с ними сопрягались. Я нашел их с кодом GX16. Они очень универсальны и обязательно пригодятся в будущих проектах!
Веб-страница
Наконец, деталь, на создание которой с нуля у меня ушло несколько недель. У меня нулевые знания о сервере, веб-сайте, и на протяжении всего этого проекта я изучал PHP, SQL-запросы, JavaScript, CSS и HTML.
Я разместил этот веб-сайт в Microsoft Azure, потому что они предоставляют студентам бесплатные услуги. Он имеет ограничения, но его достаточно для этого приложения.
База данных предоставляется ClearDB в партнерстве с Azure. Опять же, ограничения памяти, но для этого проекта хватит.
Коды предоставлены в репозитории, но не забудьте добавить свои учетные данные в файл username_password.php.
Log.php выгружает все данные, полученные от Arduino, в базу данных.
Затем на веб-странице представлена карта Google с маркерами, показанными в местах, где есть данные измерений. Все остальные файлы php - это «инструменты» для доступа к базе данных для извлечения данных из базы данных.
Ответ веб-сайта довольно медленный, и, поскольку я только что взломал все это вместе, я хочу его улучшить. Предложения очень приветствуются. :)
Код
Система мониторинга качества воды
Коды веб-сайтов в / Website, эскизы Arduino и библиотека модулей A7 в /Arduinohttps://github.com/JohnHJ01/Water-Quality-Monitoring-SystemСхема
Схема всей системыПроизводственный процесс
- Аквапоника под управлением Raspberry Pi
- Как измерить качество воздуха на OpenSensors
- Система мониторинга качества воздуха и мусора в помещении
- Мониторинг CO2 с помощью датчика K30
- Система сигнализации Arduino:SERENA
- Водяной пистолет с датчиком движения
- Ворота бесконтактного мониторинга температуры
- Система мониторинга и обнаружения лесных пожаров (с SMS-оповещениями)
- Система вентиляции подвала / подвала
- Преимущества системы мониторинга качества окружающего воздуха на основе IoT