- Digitrode
- цифровая электроника вычислительная техника встраиваемые системы
- Анализатор качества воздуха своими руками на основе Arduino и датчика Sharp GP2Y1014AU0F
- В поисках счастья
- программист в поисках счастья
- Монитор качества воздуха своими руками: Часть 1 – Начало
- Вторая версия Монитора качества воздуха
- Создаем детектор пыли на основе Ардуино
- Оптический датчик пыли GP2Y1010AU0F
- Почему GP2Y1010AU0F
- Как работает датчик пыли?
- Комплектующие
- Сборка Ингалятора
- Схема соединений
- Код проекта
Digitrode
цифровая электроника вычислительная техника встраиваемые системы
Анализатор качества воздуха своими руками на основе Arduino и датчика Sharp GP2Y1014AU0F
Загрязнение воздуха является серьезной проблемой во многих городах, и индекс качества воздуха ухудшается с каждым днем. Согласно отчету Всемирной организации здравоохранения, больше людей погибает преждевременно от воздействия опасных частиц, присутствующих в воздухе, чем от автомобильных аварий. По данным Агентства по охране окружающей среды (EPA), воздух в помещении может быть в 2-5 раз токсичнее, чем воздух снаружи. Поэтому в сегодняшних реалиях желательно иметь под рукой анализатор качества воздух, который мы с вами создадим в рамках данного проекта.
В данном проекте мы собираемся соединить датчик Sharp GP2Y1014AU0F с Arduino Nano для измерения плотности пыли в воздухе. Помимо датчика пыли и Arduino Nano, для отображения измеренных значений также используется OLED-дисплей. Датчик пыли GP2Y1014AU0F компании Sharp очень эффективен для обнаружения очень мелких частиц, таких как сигаретный дым. Он разработан для использования в очистителях воздуха и кондиционерах.
Sharp GP2Y1014AU0F — это крошечный шестиконтактный оптический датчик качества воздуха / пыли с аналоговым выходом, предназначенный для обнаружения частиц пыли в воздухе. Работает по принципу лазерного рассеяния. Внутри модуля датчика инфракрасный излучающий диод и фотодатчик расположены по диагонали рядом с отверстием для впуска воздуха, как показано на следующем изображении.
Когда воздух, содержащий частицы пыли, попадает в камеру датчика, частицы пыли рассеивают свет ИК-светодиода в сторону фотодетектора. Интенсивность рассеянного света зависит от пылевых частиц. Чем больше в воздухе пылинок, тем больше яркость света. Выходное напряжение на выводе VOUT датчика изменяется в зависимости от интенсивности рассеянного света. Распиновка датчика следующая:
1 – V-LED питание светодиода (подключите к 5 В через резистор 150 Ом), 2 – LED-GND вывод заземления светодиода (подключить к GND), 3 – LED используется для включения/выключения светодиода (подключить к любому цифровому выводу Arduino), 4 – S-GND контакт заземления датчика (подключить к GND Arduino), 5 – VOUT вывод аналогового выхода датчика (подключить к любому аналоговому выводу), 6 – VCC положительный вывод питания (подключить к 5V Arduino).
Также в нашем проекте будет использоваться стандартный OLED-дисплей. OLED (Organic Light-Emitting Diodes) – это технология самосветового излучения, созданная путем размещения ряда органических тонких пленок между двумя проводниками. Яркий свет излучается, когда на эти пленки подается электрический ток. OLED-дисплеи используют ту же технологию, что и телевизоры, но имеют меньше пикселей, чем в большинстве наших телевизоров.
Схема подключения датчика Sharp GP2Y1014AU0F и сопутствующих компонентов к Arduino приведена далее:
Схема очень проста, поскольку мы подключаем только датчик GP2Y10 и модуль OLED-дисплея к Arduino Nano. Датчик GP2Y10 и модуль OLED-дисплея питаются от +5 В и заземления. Вывод V0 соединен с выводом A5 Arduino Nano. Вывод светодиода датчика подключен к цифровому выводу 12 на Arduino. Поскольку модуль OLED-дисплея использует связь SPI, мы установили связь SPI между модулем OLED и Arduino Nano. В качестве конденсатора используется конденсатор емкостью 220 мкФ, а резистор взят с сопротивлением 150 Ом.
Теперь перейдем к программной части. В коде используются библиотеки Adafruit_GFX и Adafruit_SSD1306. Эти библиотеки можно загрузить из диспетчера библиотек в среде разработки Arduino и установить оттуда.
Датчик пыли не требует какой-либо библиотеки, так как мы считываем значения напряжения непосредственно с аналогового вывода Arduino. Полный код Arduino приведен далее.
Как только оборудование и код готовы, пора проверить датчик. Для этого подключите Arduino к ноутбуку, выберите плату и порт и нажмите кнопку загрузки. Как вы можете видеть на изображении ниже, плотность пыли будет отображаться на OLED-дисплее.
Источник
В поисках счастья
программист в поисках счастья
Монитор качества воздуха своими руками: Часть 1 – Начало
Недавно в подарок получил ионизатор и увлажнитель воздуха, который очищает воздух, увлажняет его и ионизирует. И хотя лично я разницы не чувствую, а, учитывая зиму и работающие батареи, эффект очень кратковременный, я задумался об оценке не только качества работы этого устройства, но и такого привычного для всех действия как уборки квартиры. Позднее мысль пошла дальше и я решил, что неплохо бы иметь переносной монитор качества воздуха.
Для начала я купил датчик пыли на основе sharp GP2Y1010AU0F прменяется для обнаружения PM2.5 частиц (менее 2.5 микрон) и сигаретного дыма. Принцип действия довольно простой: фототранзистор распознает свет, отражённый от частиц, который посылает инфракрасный светодиод.
Для того, чтобы считать данные с датчика, согласно DataSheet-у нужно включить инфракрасный светодиод, подождать 280 микросекунд, и затем померить выходное напряжение датчика.
Здесь мы делим значение, которое считали с датчика на 1024 – это максимальное значение, которое может считать Arduino Uno на аналоговых пинах и умножаем на 5 – напряжение, которое мы подали на датчик.
Согласно DataSheet-у типичное напряжение, которое показывает датчик при отсутствии пыли – это 0.9 вольт, так что просто вычтем это значение и будем считать, что наличие пыли начинается при напряжении > 0.9 вольт.
Второе, что нужно сделать – это отображать считанные значения. Простейший вариант – это напечатать в консоль, но когда ходишь по городу, то лучше иметь какой-нить маленький дисплей и я купил 0.96″ OLED дисплей с интерфейсом i2c, которому требуется 2 аналоговых пина (SDA на A4, а SCL на A5) плюс напряжение и земля.
Теперь необходимо добавить датчики температуры и влажности для полноты информации. Например подойдёт DHT22 – это два датчика в одном.
просто читаем влажность и температуру с помощью библиотечных функций dht.readHumidity() и dht.readTemperature() и выводим их на экран:
Ещё нужен источник питания, такой, чтобы можно было легко носить “прибор” с собой. Например подойдут пальчиковые (АА) батарейки, которые можно вставить в батарейный отсек и приделать к ним разъём с клеммой для лёгкого способа подключения к Arduino
Источник
Вторая версия Монитора качества воздуха
Некоторое время назад я описывал прибор для мониторинга качества воздуха в помещении, который можно сделать самостоятельно из деталей заказанных на известном китайском интернет магазине.
И вот появилась новая версия прибора.
Доработки в новой версии небольшие, в основном касаются прошивки. Но добавление нового датчика BME280 существенно расширило функциональность прибора.
Теперь стала доступна информация о температуре, влажности окружающего воздуха и атмосферном давлении.
Для тех кто собрал прибор первой версии его доработка и усовершенствование будет простейшей задачей. Просто добавить новый датчик и пере прошить контроллер.
Новый датчик подключается по интерфейсу I2C прямо к уже установленным часам.
При наличии датчика BME280 прибор будет каждые 15 секунд переключать панель показывающую параметры измерения пыли в режим демонстрации температуры, влажности, атмосферного давления, и через 15 секунд обратно в режим демонстрации пыли.
Датчик BMP280 вынесен из корпуса что бы на него не оказывало влияние нагрев остальных компонентов прибора. На картинке это маленький радиатор в верхнем левом углу.
Для работы остальных датчиков используется вентилятор, который не спеша продувает корпус.
Еще в данной версии появилась возможность использовать прибор без наличия датчика формальдегида. В старой прошивки без этого датчика не работал датчик пыли.
→ Тут можно взять новую прошивку
→ Тут Архив с файлами скриптов
→ Тут инструкция о том как самостоятельно собрать подобный прибор
Инструкцию о том как прошивать контроллер можно посмотреть тут.
Источник
Создаем детектор пыли на основе Ардуино
Сохраняйте здоровье, следя за уровнем загрязнения воздуха в вашем доме с помощью детектора пыли на основе Arduino.
Из-за увеличения загрязнения воздуха и связанных с этим проблем со здоровьем, измерение качества воздуха становится все более необходимым в больших городах. На рынке имеется множество датчиков, позволяющих измерять качество воздуха, и недавно я заказал оптический датчик пыли GP2Y1010AU0F от Sharp. Этот датчик пыли имеет небольшие размеры и может обнаруживать частицы пыли и дыма в окружающей среде. Во время работы он потребляет очень мало энергии, что делает его идеальным для постоянно включенной системы мониторинга.
В этом руководстве рассказывается, как подключить оптический датчик пыли Sharp к Arduino. Показания датчика будет отображаться на OLED-экране. Система упакована в старый ингалятор, который позволяет подавать воздух в датчик для удобства тестирования.
Оптический датчик пыли GP2Y1010AU0F
Датчик имеет крошечный шестиконтактный интерфейс подключения, и обычно он поставляется с коннектором. Датчик генерирует аналоговый выходной сигнал на выводе pin5 -Vo, он не требует никаких внешних компонентов для работы и требует только источник питания 3,3 В, что облегчает взаимодействие с платой Arduino. Некоторые примеры применения этого датчика включают в себя:
- Очиститель воздуха
- Кондиционер воздуха
- Монитор воздуха
- Детектор PM2.5
Почему GP2Y1010AU0F
Я выбрал этот датчик пыли по следующим причинам:
- Он использует новейшие технологии для зондирования, включая инфракрасный светодиод, набор линз, фотодиодный детектор и электромагнитный экран.
- Он имеет высокую чувствительность к пыли, а также быстрое время отклика между датчиком и микроконтроллером.
- Благодаря трем проводам (VCC, GND и сигнал), ведущим к микроконтроллеру, этот датчик может быть подготовлен с использованием простой аппаратной структуры, что облегчает взаимодействие новичков с Arduino.
- Небольшой размер датчика позволяет легко установить его в устройство контроля качества воздуха или в любой другой небольшой проект.
Как работает датчик пыли?
Датчик пыли использует метод оптического зондирования для обнаружения пыли. Фотодатчик и инфракрасный светодиод, известный как ИК-светодиод, оптически расположены в модуле датчика пыли. Фотодатчик (PT) обнаруживает отраженные инфракрасные лучи светодиодов, которые отражаются от частиц пыли в воздухе.
Модуль GP2Y1010AU0F может распознавать мельчайшие частицы в воздухе, что позволяет обнаруживать даже сигаретный дым. Высокий выходной импульс от датчика срабатывает при обнаружении пыли.
Комплектующие
- Arduino Nano или Arduino UNO
- OLED 128 x 32
- Датчик пыли GP2Y1010AU0F
- Макет
- Резистор 100 Ом
- Конденсатор 220 мкФ
- Ингалятор
- Труба
- Круглый кусок пластика
- Горячий клеевой пистолет
Сборка Ингалятора
Возьмите старый ингалятор и найдите круглый кусок пластика (сработает даже крышка от бутылки). Приклейте одну сторону трубы к ингалятору горячим клеевым пистолетом. Другая сторона трубы идет к детектору области пыли.
Схема соединений
Подключите датчик пыли к Arduino, как показано на рисунке ниже.
- Подключите контакт 3.3V / 5V платы Arduino к контакту Vcc модуля датчика пыли.
- Подключите V-светодиод датчика к резистору 100 Ом. Подключите выводы LED-GND и S-GND датчика к заземляющему выводу Arduino.
- Вывод светодиода датчика должен быть соединен с цифровым выводом Arduino pin12, который известен как выходной вывод модуля датчика пыли.
- Вывод V0, который является аналоговым выводом, должен быть подключен к аналоговому выводу Arduino A0. Код Arduino выведет уровень концентрации пыли датчика на OLED 128X32.
На фото выше итоговый результат нашего собранного устройства анализа уровня пыли на Ардуино.
Код проекта
Код для нашего анализатора уровня пыли Arduino вы можете скопировать ниже:
В начале кода мы подключаем необходимые библиотеки. После загрузки кода на экране дисплея вы увидите показания вашего устройста.
Источник