- Алкотестер на базе датчика MQ-3 и Arduino
- Digitrode
- цифровая электроника вычислительная техника встраиваемые системы
- Алкотестер своими руками на основе Arduino и датчика MQ-3
- Алкотестер на датчике Q3 и индикаторе 74Н595 4-bit led.
- Детектор алкоголя (алкотестер) на Arduino
- Необходимые компоненты
- Работа схемы
- Расчет уровня алкоголя
- Датчик MQ3
- Создание макета печатной платы для нашего проекта
- Заказ изготовления печатной платы
Алкотестер на базе датчика MQ-3 и Arduino
В настоящем проекте используется датчик содержания алкоголя MQ-3. Благодаря плате с датчиком SparkFun Gas Sensor Breakout Board, вы сможете подключить MQ-3 к микроконтроллеру Arduino для определения уровня промилле по вашему дыханию.
MQ-3 управляется теплотой вашего дыхания и определяет наличие алкоголя. Датчик выдает аналоговый сигнал (обычно интерпретируется в числовые величины от 150 до 1023, в зависимости от длительности нагрева датчика), который обрабатывается и интерпретируется программным кодом Arduino, с возможностью калибровки.
Сборка устройства
При подключении MQ-3 к плате SparkFun Breakout Board следуете принять во внимание, что полярность MQ-3 не играет никакой роли. Оба вывода A аналогичны выводам B. Центральный выводы по обеим сторонам являются выводами нагревательного элемента. Схема датчика работает от источника напряжения +5В DC. При установке датчика на плату надписи и логотип компании SparkFun должны находиться снизу, а датчик сверху платы!
Примечание: Поскольку MQ-3 может нагреваться и даже испускать посторонний запах при первом использовании. Это вполне нормально.
Калибровка: Если вы не будете спешить, то сможете узнать, какие цифровые значения соотносятся с процентными соотношениями и даже с концентрацией алкоголя в крови в случае использования алкогольно-респираторной трубки.
Разумеется, вам необходимо выполнить калибровку датчика MQ-3 на основании показаний датчика, вычисленных программным кодом Arduino, поскольку они могут изменяться. Для калибровки вы можете использовать бутылочку с изопропиловым спиртом для получения различных процентных соотношений во время тестирования. Не опускайте датчик в спирт! Просто позвольте парам спирта попасть на датчик и выполните считывание показаний.
Программный код
Программный код для Arduino представлен ниже.
Источник
Digitrode
цифровая электроника вычислительная техника встраиваемые системы
Алкотестер своими руками на основе Arduino и датчика MQ-3
Алкотестер или алкометр – это электронное устройство, которое используется для оценки концентрации алкоголя в образце выдыхаемого воздуха человеком. По этим данным определяется количество алкоголя в крови испытуемого. Этот прибор обычно используется дорожной полицией и медицинским персоналом. Впрочем, он может быть полезен и автолюбителям для адекватной оценки собственного состояния.
Алкотестер можно купить, хотя не везде, да и стоят они не дешево. Поэтому есть смысл сделать алкотестер самостоятельно на основе популярной среди радиолюбителей платы Arduino.
Самодельный алкотестер довольно прост в сборке. Главным образом он состоит из платы Arduino и датчика спирта MQ-3. Для индикация концентрации алкоголя в выдыхаемом человеком воздухе служат светодиоды в количестве десяти штук. К ним последовательно подключены резисторы сопротивлением 220 Ом для ограничения тока. Эти светодиоды с резисторами подключены к цифровому порту Arduino (линии D0-D9). Схема подключения компонентов самодельного алкотестера приведена на рисунке ниже.
Пару слов здесь следует посвятить датчику MQ-3. MQ-3 – это датчик спирта, показанный на изображении ниже. Он используется для оценки количества алкоголя, присутствующего в выдыхаемом воздухе. Этот сенсор специально предназначен для выявления алкоголя, поэтому он очень чувствителен в этом плане и быстро реагирует на алкоголь. Этот датчик также может обнаруживать бензин, но его чувствительность к бензолу очень мала. MQ-3 имеет 6 контактов, из которых два служат для активации нагревателя, и 4 контакта обеспечивают питание и передачу сигналов. Нагреватель обеспечивает необходимое рабочее состояние.
Вывод AD0 модуля датчика MQ-3 подключается к аналоговому входу A0, с которого мы собираемся прочитать информацию о концентрации спирта. Чувствительность сенсора настраивается с помощью переменного резистора, установленного на плате модуля датчика MQ-3.
Ниже приведен код (скетч) для работы самодельного алкотестера на основе Arduino.
Источник
Алкотестер на датчике Q3 и индикаторе 74Н595 4-bit led.
Алкотестер на ARDUINO PRO MINI под FLProg.
Алкотестер сделан на датчике Q3 и индикаторе 74Н595 4-bit led.
В начале программы, после включения запускается таймер на прогрев датчика.
После прогрева производится автоматическая установка и смещение «0».
При нажатии кнопки измерение загорается —— и можно дышать на датчик
пока не пропадет ——.
Производится 20 замеров и формирование массива для нахождения
среднего значения. Можно подключить зуммер чтобы пикал на начало
и конец измерения или светодиод. Затем индицируется содержание
алкоголя в мг/л. Следующий замер можно производить через минт 5
когда восстановится датчик.
Калибровал простейшим способом, в программе временно делается
прямой вывод на экран непосредственно с датчика. Прогреваем хорошо
датчик и записываем код ацп (например 61) это начало шкалы 0.04 мг/л ,
затем берем ватку смоченную спиртом и дуем на нее в сторону датчика,
Следуя datasheet максимальная концентрация 4 мг/л, смотрим код зашкала
(например 800) это будет верх шкалы. Так как нам нружны сотые доли
берем в масштабирование 4000. После такого отравления датчик долго
восстанавливается. Это конечно не совсем точно, но так как нас интересует
низ шкалы 0,16 мг/л то это вполне приемлемо.
Мжно откалибровать и другими способами. Перевод в промилле мг/л / 0.45
тоесть 0.16/0.34=0.356 промилле.
Источник
Детектор алкоголя (алкотестер) на Arduino
В этой статье мы рассмотрим подключение датчика алкоголя к плате Arduino и спроектируем на его основе детектор алкоголя (алкотестер), который будет способен определять уровень алкоголя в выдыхаемом воздухе и крови и на основании этого выдавать сигнал тревоги если уровень алкоголя превышает заданный уровень. Для данного проекта спроектирована печатная плата с помощью сервиса EASYEDA, исходники которой вы можете скачать ниже в статье.
Необходимые компоненты
- Плата Arduino Uno (купить на AliExpress).
- Шилд (плата расширения) детектора алкоголя для Arduino Uno.
- Датчик алкоголя (MQ3) (купить на AliExpress).
- Резистор 10 кОм (купить на AliExpress).
- Резистор 1 кОм (купить на AliExpress).
- ЖК дисплей 16х2 (купить на AliExpress).
- Источник питания.
- Потенциометр 10 кОм (купить на AliExpress).
- Светодиод (купить на AliExpress).
- Операционный усилитель LM358 (купить на AliExpress).
- Соединительные колодки.
- Кнопка.
Работа схемы
Схема детектора алкоголя (алкотестера) на основе платы Arduino представлена на следующем рисунке.
В схеме мы использовали датчик MQ3 для обнаружения алкоголя в выдыхаемом воздухе. ЖК дисплей 16×2 используется для отображения уровня алкоголя в единицах PPM (parts per million — частей на миллион, долей миллиона). Микросхема LM358 используется для конвертирования выхода датчика алкоголя в цифровой вид (опционально). Зуммер (buzzer) будет индицировать о высоком уровне алкоголя.
Работа схемы заключается в следующем. Мы будем сравнивать в схеме компаратора выходное напряжение с датчика алкоголя с заранее определенным значением (подсоединен к контакту D7). Также выход датчика алкоголя подсоединен к аналоговому контакту A0 платы Arduino. Зуммер подключен к контакту D9 платы Arduino. Соединения с ЖК дисплеем точно такие же, как и в примере работы с ЖК дисплеем в Arduino IDE (12, 11, 5, 4, 3, 2). Кнопка подключена к контакту D6 платы Arduino и используется для запуска процесса анализа уровня алкоголя.
Примечание : в схеме мы должны замкнуть все три контакта J2 для расчета PPM.
Для проектирования шилда детектора алкоголя для Arduino мы использовали сервис EasyEDA, в котором мы сначала нарисовали схему нашего устройства, а потом преобразовали ее в печатную плату, используя функцию автоматической трассировки в редакторе EasyEDA. Более подробно это процесс объяснен далее в статье.
Расчет уровня алкоголя
В соответствии с даташитом на датчик MQ3 уровень алкоголя в чистом воздухе составляет 0.04 mg/L.
Запустив в работу этот датчик в нашей комнате (в предположении что у нас чистый воздух в комнате) мы измерили напряжение на выходе этого датчика и оно составило 0.6 В. То есть если на выходе датчика будет напряжение 0.6 В при его работе в чистом воздухе, то уровень алкоголя будет составлять величину 0.04 mg/L.
То есть необходимый множитель (коэффициент) для расчета уровня алкоголя можно определить по формуле:
На основании этого коэффициента мы получим следующую формулу для расчета уровня алкоголя. Сразу отметим что она приближенная – мы используем не совсем стандартный подход в этом вопросе как вы уже, наверное, поняли.
Здесь v – это напряжение на выходе датчика алкоголя.
Поскольку с нашим датчиком мы имеем концентрацию алкоголя 0.40 mg/L в чистом воздухе, то за допустимую границу уровня алкоголя, выше которой нельзя управлять транспортным средством, мы примем 0.80 mg/L – это граница выбрана чисто в демонстрационных целях, вы самостоятельно сможете изменить ее потом в программе на ту, которая вам будет необходима.
Датчик MQ3
Датчик газов и алкоголя MQ3 сделан из материала SnO2, который имеет низкую проводимость в чистом воздухе. Когда в воздухе рядом с данным датчиком начинают появляться пары алкоголя его проводимость начинает увеличиваться в зависимости от концентрации алкоголя. Таким образом, измеряя разность напряжений на выходе датчика при его работе в чистом воздухе и при его работе в условиях наличия паров алкоголя, можно определить наличие алкоголя в воздухе.
Датчик MQ3 отличается малой стоимостью и хорошо подходит для применения в различных устройствах, определяющих концентрацию алкоголя. Датчик отличается хорошей чувствительностью и долгим сроком службы.
Создание макета печатной платы для нашего проекта
В этом разделе статьи мы рассмотрим проектирование печатной платы для нашего проекта детектора алкоголя. Если вам это не интересно, то вы можете просто пропустить этот раздел.
Для проектирования печатной платы для нашего проекта мы выбрали онлайн-сервис EasyEDA, который, по нашему мнению, является очень удобным в подобных вопросах. Он является проектом с открытым исходным кодом и содержит много подложек (footprints). После создания печатной платы в сервисе EasyEDA можно достаточно дешево заказать ее изготовление. На этом же сервисе по изготовлению печатных плат продается достаточно много различных электронных компонентов, которые можно заказать вместе с изготовлением своей печатной платы. Конечно, для жителей стран СНГ этот сервис может быть не очень интересен, но все же решил не удалять ссылку на него при переводе статьи с сайта-источника.
При проектировании печатной платы в EasyEDA вы можете сделать проект своей печатной платы общедоступным чтобы другие пользователи могли скачивать и редактировать его. К примеру, макет печатной платы для рассматриваемого в этой статье проекта детектора алкоголя доступен по адресу:
Вы можете посмотреть печатную плату в этом сервисе со всех сторон, используя опцию ‘Layers’.
Вы также можете посмотреть как будет выглядеть плата после изготовления, используя кнопку Photo View в EasyEDA.
Заказ изготовления печатной платы
После окончания работы по проектированию печатной платы вы можете заказать ее изготовление на сайте JLCPCB.com. Для осуществления этого вам будет необходим Gerber файл печатной платы, для этого можно в редакторе EasyEDA нажать кнопку Fabrication Output (заказа изготовления) и затем подгрузить этот файл на странице заказа печатной платы.
При заказе печатной платы на сайте JLCPCB.com необходимо нажать на кнопку Quote Now или Buy Now, выбрать количество экземпляров печатной платы, число слоев меди, толщину печатной платы, вес меди и даже цвет печатной платы как показано на рисунке.
После выбора всех необходимых опций печатной платы необходимо нажать кнопку “Save to Cart” и тогда вас перебросит на страницу, где вы можете загрузить Gerber файл, который мы скачали с EasyEDA. Загрузите ваш Gerber файл и нажмите на “Save to Cart”. В завершение нажмите Checkout Securely чтобы завершить оформление заказа. В нашем случае стоимость изготовления печатной платы составила $2, сделали ее за 48 часов и доставили службой доставки DHL за 5 дней.
В результате печатная плата к нам пришла вот в такой вот коробке:
Внутри нее была наша печатная плата, к которой мы припаяли необходимые компоненты.
После этого все, что осталось сделать – это смонтировать шилд поверх платы Arduino и подсоединить ЖК дисплей. После этого можно загружать программу в плату Arduino и начинать тестировать работу схемы.
Источник