Easyelectronics.ru

Электроника для всех
Текущее время: 05 дек 2021, 09:54

Часовой пояс: UTC + 5 часов



JLCPCB – Прототипы печатных плат за $2/5шт. два слоя. $5/5шт. четыре слоя
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 41 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 16 июн 2019, 16:05 
Заглядывает иногда

Зарегистрирован: 16 июн 2019, 00:50
Сообщения: 40
Заказывал я как-то в небезызвестном китайском красном магазинчике датчики качества воздуха для поделок, и попалось мне на глаза чудо под названием MQ-3, аж за целых 63 рубля. «Дай-ка, — думаю — куплю на попробовать, что это за зверь».

Ну, в общем, приехал он, такой красивый оранжевенький.
Вложение:
0.jpg
0.jpg [ 12.01 Кб | Просмотров: 2667 ]


Прогрел я его в течение 24 часов, подключил к USB (5В) и давай тестером мерить, что он там мне показывает. А показывает он всё очень неплохо: пары спирта чует не просто хорошо, а очень хорошо — достаточно в комнату с бокалом коньяка войти, он это уже «видит». Значения сопротивления в килоомах красивые и очень даже измеримые (мой экземпляр работает в диапазоне от ~1 до ~50 кОм).

Как результат поигрулек с этим датчиком родилась идея замутить рабочее устройство — алкотестер. Весь «этот ваш Энтеронет»© пестрит подобными устройствами, у всех, правда, они показывают погоду на Марсе (показания можно воспринимать как сильно оценочные), и мне стало очень интересно, что из данного датчика можно выжать, если сделать всё по науке.

Сходу, я выявил одну проблему, которая решена в самоделках коряво: сопротивление сенсора измерить нетривиально — в даташите его рекомендуют нагружать не менее, чем 100 кОм‑ами, и включают, зачем-то, в качестве верхнего плеча резистивного делителя.
Вложение:
1.png
1.png [ 7.53 Кб | Просмотров: 2667 ]


Предварительные исследования показали, что более всего интересующий диапазон значений сопротивления сенсора находится в районе от 2 до 10 кОм. В Интернете вопрос измеримости сопротивления сенсора в этом диапазоне решается просто — во второе плечо делителя ставится сопротивление 10 кОм и, вуаля, алкотестер готов. Но это не наш метод, особенно учитывая то, что в даташите рекомендовано измерять параметры датчика тестером со входным сопротивлением не менее 1 МОм.

В общем, в качестве какого плеча делителя установлен датчик, как я понимаю, не принципиально от слова вообще, а вот с измерением его сопротивления я решил вопрос закрыть и сделать всё «по науке». В итоге, родилась схема устройства с операционным усилителем сигнала с датчика, а также переменным коэффициентом усиления (либо x2, либо x12). В качестве ОУ поставил прецизионный усилитель AD822, так как побоялся большой погрешности при использовании сильно дешёвых LM358, например.
Вложение:
2.png
2.png [ 125.33 Кб | Просмотров: 2667 ]


Кроме всего прочего я захотел питание от валяющихся у меня аккумуляторов 18650, в качестве индикатора — недорогой китайский OLED дисплей 0.96".

Структурно схему можно разделить на следующие части:
  1. Схема зарядки аккумулятора. Выполнена на простом линейном заряднике STC4054 (U1).
  2. Схема питания устройства. В качестве «основного» БП используется повышающий преобразователь, выполненный на распространённом и дешевом контроллере MC34063 (U2). Блок питания сделан отключаемым в целях экономии заряда батареи в спящем режиме.
  3. Схема питания OLED дисплея. Использован самый простой линейный стабилизатор с фиксированным выходным напряжением в 3.0В LP2985AIM5-3.0 (U7).
  4. «Обвязка» дисплея. Дисплей покупал не модулем, а отдельно, в целях минимизации объема готового устройства (не люблю модули, они слишком громоздкие).
  5. Преобразователь уровней сигналов i2c для работы с дисплеем. TXS0102 (U6), их есть у меня.
  6. Собственно, измеритель, а точнее — усилитель с управляемым коэффициентом усиления. Выполнен на AD822 (U8). Коэффициент усиления переключается посредством подключения дополнительного резистора (R12) в цепь ОС ОУ маломощным MOSFET-ом BSS138 (VT3).
  7. Ну и сам микроконтроллер. Мне нравятся МК ATmega168PA. Они достаточно маленькие, их просто паять (TQFP32) — всего 32 ноги, в спячке они не хотят есть практически совсем, напряжение питания — от 1.8В (это бывает важно), имеющихся у них ресурсов для подобного устройства — с избытком.

В общем, принципиальная схема вполне себе бесхитростная. Стоит ещё только заметить, что цепь БП, а также цепь питания всей схемы, за исключением питания МК, сделаны отключаемыми в целях экономии заряда аккумулятора. В качестве ключей я использовал P-канальные MOSFET-ы IRML6402, они как нельзя лучше сюда подходят. Ну и, опять же, их есть у меня.

Функционально, всё происходит следующим образом:
  • В спящем режиме, вся нагрузка отключена, БП отключен. МК питается напрямую от аккумулятора через диод Шоттки VD3.
  • При нажатии на кнопку S1 МК просыпается, включает повышающий преобразователь, нагрузку и начинает измерять сопротивление датчика. Ждёт стабилизации показаний. В штатном режиме МК питается от стабильного напряжения повышающего преобразователя через диод Шоттки VD4.
  • После стабилизации показаний схема готова к измерениям. Начало замера определяется по относительно значительному изменению сопротивления датчика.
  • Результат замера определяется как минимальное значение сопротивления датчика, после чего МК снова ожидает стабилизации значения сопротивления, что интерпретируется как готовность к следующему замеру.
  • Нажатием на кнопку S1 переключаются единицы измерения: либо это мг/л, либо промилле.
  • Длительное нажатие на кнопку S1 вызывает выключение устройства, переход в спящий режим, отключение всей нагрузки.
  • При нахождении в режиме готовности к замеру в течение 2 минут устройство автоматически переходит в спящий режим с отключением всей нагрузки.
  • При нахождении в активном режиме МК производит измерение напряжения на аккумуляторе. Напряжение подается на вывод PC0 МК через резистор R9. При понижении напряжения на аккумуляторе до 3.2В происходит выключение устройства с подачей соответствующего звукового сигнала и переходом в спящий режим.
  • При подаче питания 5В на micro-USB разъем XS1 начинается процесс зарядки аккумулятора. Через резистор R8 сигнал высокого уровня поступает на вход PD3 МК, сообщая о начале процесса зарядки. МК останавливает измерения, выключает нагрузку, переводя схему в режим зарядки. В режиме зарядки МК питается от подаваемого на XS1 напряжения 5В через диод Шоттки VD2.
  • В режиме зарядки МК отображает процесс зарядки миганием светодиода VD6. По окончании зарядки (определяется по уровню сигнала CHRG на входе PC1) МК останавливает мигание светодиода VD6, оставляя его включённым.
  • При отключении зарядного устройства от XS1 (низкий уровень на PD3) МК выключает диод VD6, переводит схему в спящий режим.

С учётом переключаемого коэффициента усиления схемы измерения сопротивления датчика, а также архитектуры МК, получилась схема четырёх-диапазонная измерения сопротивления датчика:
1. Ку = 2; напряжение питания МК в качестве опорного напряжения АЦП
2. Ку = 2; опорное напряжения АЦП = 1.1В
3. Ку = 12; опорное напряжения АЦП — напряжение питания МК
4. Ку = 12; опорное напряжения АЦП = 1.1В
Диапазоны переключаются МК автоматически при значениях напряжения на датчике, близким к некоторым условным границам диапазонов измерения.

В спящем режиме потребление устройства получилось вполне красивым: тестер на пределе 2мА не видит ни одного мкА! ))


Последний раз редактировалось Lehin 16 июн 2019, 16:13, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 16 июн 2019, 16:07 
Заглядывает иногда

Зарегистрирован: 16 июн 2019, 00:50
Сообщения: 40
Печатную плату развел на две стороны: на одной стороне расположены силовые элементы, сам датчик и «пищалка» (HPS16A, U3), на другой — измерительные цепи, логика, МК и дисплей. В результате получилась плата размером примерно 40x40 мм. Разводка выполнена с учётом изготовления платы вручную, в домашних условиях.
Вложение:
3.png
3.png [ 86.12 Кб | Просмотров: 2664 ]


Вся разработка схемы и платы велась с использованием свободно распространяемого пакета GEDA в Linux.

Далее поработал над корпусом устройства. Для 3D-моделирования использовалась программа OpenSCAD.
Вложение:
4.png
4.png [ 52.38 Кб | Просмотров: 2664 ]


Корпус был напечатан на 3D-принтере из ABS пластика (сенсор при работе заметно нагревается, этот факт повлиял на выбор пластика). Получилось что-то такое. Кривовато, но это мой фактически первый опыт работы с ABS.
Вложение:
5.jpg
5.jpg [ 66.88 Кб | Просмотров: 2664 ]


Хотелось бы получить прибор меньшего размера, но габариты, в основном, продиктованы размером 18650. На выбор 18650 повлияло (кроме того, что их есть у меня) также то, что цепь нагрева датчика кушает ни много, ни мало — 150-160 мА при напряжении 5В-5.2В. Это приводит к тому, что вся схема потребляет от 300 до 400 мА (или даже больше, конкретные цифры сейчас не помню) в зависимости от степени заряда аккумулятора.


Последний раз редактировалось Lehin 16 июн 2019, 16:16, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 16 июн 2019, 16:10 
Заглядывает иногда

Зарегистрирован: 16 июн 2019, 00:50
Сообщения: 40
Далее началось самое интересное — калибровка прибора с получением аппроксимирующей функции для расчёта концентрации алкоголя в воздухе.

Все устройства из Интернета, собранные на коленке измеряют напряжение на датчике. При включении его в качестве плеча резистивного делителя, напряжение не зависит линейно от сопротивления. Мы, таки, будем сначала рассчитывать сопротивление датчика, и уже потом пересчитывать его в концентрацию. Считаю, что это более правильно, да и удобно, поскольку есть возможность визуального контроля показаний для сопоставление с результатами предварительных исследований (напомню, сопротивление измерялось просто тестером).

Калибровку будем выполнять, пытаясь рассчитать и получить концентрацию паров алкоголя максимально точно. Нас, как программистов, математиков и немножко физиков, просто плющит от использования калибровочных данных от другого экземпляра сенсора, да еще и полученных не понятно как. А в процессе калибровки выяснилось, что всё не так просто, как кажется на первый взгляд.

Идея в целом: помещаем прибор в закрытую ёмкость, испаряем в ней некоторое количество спирта, перемешиваем всё это вентилятором, замеряем значение сопротивления датчика. Звучит просто, но на практике есть некоторое количество нюансов.

Первое — спирта надо не мало, а очень мало. В частности, при использовании 5-литровой бутыли, для достижения в ней концентрации паров примерно в 0.05 мг/л необходимо 1 мл спирта разбавить в 150 мл воды и этого раствора нужна всего одна капля!

Второе — полностью испарить даже одну каплю почти воды в закрытой таре с изначальной влажностью воздуха в ней порядка 50% не очень просто. Точнее, совсем не просто.

Третье, четвёртое и остальное будет потом. А пока изобретаем калибровочный стенд с испарителем и перемешивателем воздуха по совместительству. Когда-то я покупал два вентилятора 30x30x10 — один из них пошёл в дело, второй имеется в наличии. Его и используем. Придумываем ему трубу с плоской площадкой, куда на двухсторонний скотч будет приклеен кусок обычной бытовой нетканой салфетки для увеличения площади испарения калибровочного раствора. Также понадобится дырка сверху для закапывания раствора и пробка в неё.
Вложение:
6.png
6.png [ 19.35 Кб | Просмотров: 2663 ]


Печатаем, получаем что-то такое.
Вложение:
7.jpg
7.jpg [ 61.52 Кб | Просмотров: 2663 ]


Вся эта конструкция будет крепиться к верхней плоскости старой 5-литровой банки из под воды на двухсторонний скотч. В банке режем дверь для установки калибруемого прибора, крутим дыру в месте приклеивания испарителя, через крышку выводим провод от вентилятора. Дверь будем просто заклевать скотчем после установки в банку калибруемого прибора.
Вложение:
8.jpg
8.jpg [ 61.08 Кб | Просмотров: 2663 ]


Дальше началось веселье. Решил калибровку производить сериями: последовательно капать (и испарять) по 4-5 капель калибровочного раствора с измерениями сопротивления датчика после каждой капли, выбирая различные степени разведения раствора. После каждой серии производить проветривание банки, выдерживать паузу для окончательной просушки испарителя (на всякий случай).

Через несколько очень неудачных попыток получения гладкой кривой зависимости сопротивления от концентрации паров выяснилось следующее: не получается. Проанализировал результат, пришел к выводу, что размер капли должен зависеть от объемной плотности раствора и его поверхностного натяжения. Точно зная, что плотность спирта отличается от плотности воды и интуитивно понимая, что поверхностное натяжение у спирта и воды также различается, измерил количество капель воды и спирта в одном миллилитре. Разница получилась просто огромная: 20 капель воды на 1 мл, спирта — 30 капель!

С учетом этого переработал методику. Вместо того, чтобы рассчитывать степень разведения спирта с целью получить раствор, обеспечивающий точное значение концентрации паров спирта в банке, я решил выбирать удобные концентрации раствора, после замерять количество капель в 1 мл, после чего уже рассчитывать концентрацию паров спирта в банке в перерасчёте на 1 каплю. Спирт отмерять по 1 мл шприцем. Это сработало.

К слову, испаритель также сработал: чтобы полностью (до визуального полного исчезания следов влаги на салфетке) испарить каплю чистой воды требуется порядка 10 минут. Показания прибора, в процессе его калибровки, стабилизируются через примерно 6 минут после закапывания 1 капли раствора.

Итак, были выбраны следующие степени разведения калибровочного раствора (имеется в наличии ректификат 95.57 % по массе):
• 1:150, 20 капель / мл. Концентрация паров спирта примерно 0.05 мг/л на 1 каплю.
• 1:50, 20 капель / мл. Концентрация паров спирта примерно 0.15 мг/л на 1 каплю.
• 1:14, 22 капли / мл. Концентрация паров спирта примерно 0.47 мг/л на 1 каплю.
• 1:2.8, 28 капель / мл. Концентрация паров спирта примерно 0.47 мг/л на 1 каплю.
• Чистый спирт, 30 капель / мл. Концентрация паров спирта примерно 5.15 мг/л на 1 каплю.

Последний калибровочный раствор был использован только для одного измерения (5.15 мг/л). К 10 мг/л датчик начал сильно корявиться, вести себя сильно «нелинейно» (о линейности там и так говорить не приходится), его показания только ухудшают аппроксимацию.


Последний раз редактировалось Lehin 16 июн 2019, 16:32, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 16 июн 2019, 16:12 
Заглядывает иногда

Зарегистрирован: 16 июн 2019, 00:50
Сообщения: 40
В общем, после кропотливого и вдумчивого сбора данных, повторного проведения пары серий измерений получили примерно такую картину. График отображает зависимость 1/R от концентрации паров спирта, поскольку в определённый момент меня посетила мысль, что на самом деле, от концентрации паров зависит проводимость, поэтому именно на неё и надо смотреть.
Вложение:
9.png
9.png [ 9.06 Кб | Просмотров: 2662 ]


Подбор аппроксимирующей функции был не прост, поскольку о физике процессов, происходящих в датчике я, мягко говоря, имею только смутное и крайне скудное представление. Остановился на формуле (как функции расчета концентрации на основании значения сопротивления датчика) A / (x^2 + B*x + C), где коэффициенты A,B и C подбираются методом наименьших квадратов. В этом деле, а также в отображении данных нам сильно помог матпакет maxima.

В результате получилась неплохая, на мой взгляд, кривулина, а также её аппроксимация. По горизонтали — сопротивление датчика в килоомах, по вертикали — значение концентрации паров в мг/л.
Вложение:
10.png
10.png [ 14.04 Кб | Просмотров: 2662 ]


Нарисуем её более подробно в особо интересующем нас диапазоне:
Вложение:
11.png
11.png [ 17.73 Кб | Просмотров: 2662 ]


Остаётся только вколотить формулу в прошивку МК, опционально умножить на 2.22 для отображения значений в промилле, а не мг/л, и — вуаля — прибор вполне готов.

В качестве заключения можно сказать, что умозрительный анализ получившихся данных, также полученная аппроксимация, вид графика, степень соответствия аппроксимации исходным данным навевают на мысль, что полученный прибор является не просто абы каким показометром, а вполне способен выдавать достаточно достоверные данные о концентрации алкоголя в выдыхаемом воздухе. Это, с учётом типа датчика (полупроводниковый сенсор), не тянет на метрологию, но для бытового применения и оценки состояния при принятии решения о посадке за руль — на мой взгляд вполне. А все разговоры в этих ваших Энтеронетах о том, что сенсор кривой-косой, меряет плохо, показания корявые, не стабильные — суть есть несоблюдение требований даташита, лени при проведении измерений, а также подборе аппроксимирующей функции (простая полиномиальная аппроксимация до 4-й степени не работает, логарифмическая — тоже). В моём случае несколько последовательных замеров дают разброс в значениях уже рассчитанной концентрации паров спирта не более 5 процентов в интересном для нас диапазоне значений.

Если у кто-то дочитал до конца (таки, получилось многабукаф) и есть вопросы — велкам. Все дополнительные материалы, если кому-то будет интересно, выложу. Всё, я закончил. Можно кидаться в меня тапками, но с учётом того, что это мой первый пост на данном ресурсе.

С уважением к сообществу,
Lehin


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 16 июн 2019, 18:00 
Заглядывает иногда
Аватара пользователя

Зарегистрирован: 19 июн 2013, 22:36
Сообщения: 42
По моему, очень хороший приборчик получился. Главное - очень полезный и необходимый в определенных ситуациях. Были у меня несколько разных дешевых показометров, при использовании которых, уверенности не прибавлялось, а наоборот. А хороший, надежный прибор, как я понимаю, стоит хороших денег. В общем хороший пост и отличная конструкция. Как всегда, продуманная и дотошно просчитанная.
Один вопрос - цена вопроса?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 16 июн 2019, 18:34 
Заглядывает иногда

Зарегистрирован: 16 июн 2019, 00:50
Сообщения: 40
Mishultz писал(а):
...
Один вопрос - цена вопроса?

Закалькулировал приблизительную стоимость комплектующих по ценам китайцев. Исключение - керамические конденсаторы, резисторы и пищалка. Эти позиции посчитал по ценам московских барыг из известного радиомагазина. Получилось в районе 550 630 рублей. Вроде бы ничего не забыл.
[upd] Забыл про держатель для 18650, +70 рублей у барыг. Исправил.
Show "Список комплектующих"


Последний раз редактировалось Lehin 16 июн 2019, 18:52, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 16 июн 2019, 18:50 
Заглядывает иногда
Аватара пользователя

Зарегистрирован: 19 июн 2013, 22:36
Сообщения: 42
Lehin писал(а):
Получилось в районе 550 рублей.

Отличная цена для такой достойной вещицы. Надо повторять конструкцию. Поэтому еще вопрос. Какой размер прошивки? В 8-ю мегу влезет? (У меня только 8е и 328е в таком корпусе) Хоть и 328й на такое дело не жалко, но всё же?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 16 июн 2019, 18:56 
Заглядывает иногда

Зарегистрирован: 16 июн 2019, 00:50
Сообщения: 40
Mishultz писал(а):
... Какой размер прошивки? В 8-ю мегу влезет? (У меня только 8е и 328е в таком корпусе) Хоть и 328й на такое дело не жалко, но всё же?

Чуть больше 12Кб, в 8 мегу не влезет. Плавающая точка, однако... Шрифты для дисплея, 2 штуки: 5х7 + большие (16х22) цифры и спецсимволы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 16 июн 2019, 19:26 
Заглядывает иногда
Аватара пользователя

Зарегистрирован: 19 июн 2013, 22:36
Сообщения: 42
Lehin писал(а):
Чуть больше 12Кб, в 8 мегу не влезет.

Понятно, EEPROM не поможет. Ну и ладно. А вот можно ли допилить, что бы измерять в процессе зарядки? А то ведь, как обычно бывает, надо бы срочно ехать а аккумулятор разряжен.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 16 июн 2019, 20:27 
Заглядывает иногда

Зарегистрирован: 16 июн 2019, 00:50
Сообщения: 40
Mishultz писал(а):
Lehin писал(а):
Чуть больше 12Кб, в 8 мегу не влезет.

Понятно, EEPROM не поможет. Ну и ладно. А вот можно ли допилить, что бы измерять в процессе зарядки? А то ведь, как обычно бывает, надо бы срочно ехать а аккумулятор разряжен.


Технически, возможно. Но есть проблема: в процессе зарядки МК питается от USB для того, чтобы снять нагрузку с аккумулятора, поскольку в противном случае контроллер зарядки не сможет понять, когда аккум заряжен полностью. Питание развязано через Шоттки. Таким образом, каким будет питание МК если в процессе заряда включить повышающий преобразователь, предположить сложно - всё будет зависеть от соотношения напряжения ЗУ и выходного напряжения повышающего преобразователя. А это напряжение используется в качестве опорного для АЦП. Что будет с показаниями прибора? А при смене ЗУ?

Имхо, проще выключать на время зарядки.

P.S. И да, у нас, алкоголиков, при, соответственно, регулярном использовании прибора, ситуация "надо ехать, а батарея разряжена" маловероятна. ))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 16 июн 2019, 20:59 
Старожил
Аватара пользователя

Зарегистрирован: 28 дек 2011, 11:24
Сообщения: 4477
Откуда: г. Липецк
Стандартный алкотестер меряет промиле. А что меряет этот?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 16 июн 2019, 21:14 
Старожил
Аватара пользователя

Зарегистрирован: 21 мар 2016, 01:19
Сообщения: 814
Сама по себе работа хорошая.
Но беда/проблема этих датчиков в том, что реагируют они на целый спектр газов. И если кто-то перед измерением рядом, простите, пукнет - измеряемый субъект внезапно окажется "аппаратно пьян". Опять же - калибровка у Вас делается смесью "чистого воздуха" и паров спирта, а в выдыхаемом человеком воздухе высока концентрация углекислого газа, который эти датчики тоже худо-бедно чуют.
Еще одна проблема - достаточно большой период выхода на стабильные показания после включения. Так что не получится использовать прибор по принципу - включил, померил, выключил. Добавляется второй этап - подождать ~10 мин.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 16 июн 2019, 21:23 
Заглядывает иногда

Зарегистрирован: 16 июн 2019, 00:50
Сообщения: 40
anakost писал(а):
Стандартный алкотестер меряет промиле. А что меряет этот?

Все алкотестеры измеряют концентрацию паров спирта в выдыхаемом воздухе. Для посадки за руль есть точное её значение - 0.16 мг/л. Этот прибор умеет показывать либо концентрацию паров в мг/л, либо расчётное значение концентрации алкоголя в крови в промилле.


Последний раз редактировалось Lehin 16 июн 2019, 21:41, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 16 июн 2019, 21:38 
Заглядывает иногда

Зарегистрирован: 16 июн 2019, 00:50
Сообщения: 40
ИгорР писал(а):
Сама по себе работа хорошая.
Но беда/проблема этих датчиков в том, что реагируют они на целый спектр газов. И если кто-то перед измерением рядом, простите, пукнет - измеряемый субъект внезапно окажется "аппаратно пьян". Опять же - калибровка у Вас делается смесью "чистого воздуха" и паров спирта, а в выдыхаемом человеком воздухе высока концентрация углекислого газа, который эти датчики тоже худо-бедно чуют.
Еще одна проблема - достаточно большой период выхода на стабильные показания после включения. Так что не получится использовать прибор по принципу - включил, померил, выключил. Добавляется второй этап - подождать ~10 мин.


Именно такой информацией забит интернет и именно всё это я и хотел проверить. )))))))

Прежде, чем заморачиваться подобным устройством катал датчик на столе, подключенным к тестеру в течение, наверно, месяца, а то и больше. Мои наблюдения несколько отличаются от стандартного набора фраз из интернета. По пунктам:

1. Да, реагируют. Анализируем и сравниваем даташиты. Берём очень известную лавку под названием Figaro. Именно эти датчики устанавливают в промышленных устройствах. Ну, по крайней мере в тех, которые я видел. К датчику этой конторы применимо всё, что вы говорите. Без исключения. Изучение даташита на MQ-3 приводит к мысли, что он гораздо более избирателен.
Show График чувствительности


2. Даже высокие концентрации CO2 дадут погрешность измерений не более 15% (на глаз, судя по графикам в даташите). На "простите, пукнет" он не отреагирует вообще. ))) Калибровка и цифры, полученные в результате калибровки, очень хорошо соответствуют ожидаемым (помним, до этого я месяц-два наблюдал и мерил "на коленке"). Был удивлён сему факту, но это так.

3. Период выхода на стабильные показания - минута-две. Не 10. У меня стабильными считаются показания, если за 1 сек значение первой производной не выходит за пределы 0,2%. Измерения производятся 20 раз в секунду. По факту, этого достаточно, чтобы датчик вышел на рабочий режим.

Да, после того, как подышали алкотой, тестеру требуется довольно много времени, чтобы восстановиться. Но не потому, что датчик. А потому что в рабочем пространстве образуется какое-то количество паров спирта, а само пространство проветривается ооочень слабо. Ну, в принципе, после того, как тестер что-то там показал, 20 минут он нужен не будет, и это точно. ))) Мы же говорим о персональном устройстве, а не о продувалке для гаи.

И да, спасибо за оценку моей работы. )


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 16 июн 2019, 22:34 
Старожил
Аватара пользователя

Зарегистрирован: 21 мар 2016, 01:19
Сообщения: 814
Да я вообще-то не из интернета. У меня два таких датчика работают. Один дома, другой на работе. И таки да - они очень хорошо реагируют на спирт. Даже не коньяк - а полусухое красное и вентилятор работает на полную мощность. Это факт. Как факт и про другой источник газов, куда от него деться :)
Ну про время - да, может и пара минут, но все равно не мгновенная готовность.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 17 июн 2019, 12:01 
Заглядывает иногда

Зарегистрирован: 16 июн 2019, 00:50
Сообщения: 40
ИгорР писал(а):
Да я вообще-то не из интернета. У меня два таких датчика работают. Один дома, другой на работе. И таки да - они очень хорошо реагируют на спирт. Даже не коньяк - а полусухое красное и вентилятор работает на полную мощность. Это факт. Как факт и про другой источник газов, куда от него деться :)
Ну про время - да, может и пара минут, но все равно не мгновенная готовность.


Да, готовность не мгновенная. Но, на мой взгляд, время получилось вполне разумное.

Насколько я понял, у Вас эти датчики нюхают воздух в комнате. Тоже неплохое применение. Но оно не позволяет Вам объективно оценить, насколько сильно влияние других газов факторов. Лично я могу утверждать достаточно точно: влияние других факторов (в том числе и СО2 в выдыхаемом воздухе) сказывается на границе чувствительности датчика, в диапазоне, выходящем даже за пределы характеристик по даташиту. Похоже, что Ваше применение датчиков как раз в таком режиме и работает.

Поясню. По результатам калибровки и последующих замеров, "надуть" в тестер чистым дыханием можно, скажем, до 0,035 мг/л уже в пересчёте на этанол, в зависимости от состояния и индивидуальных особенностей организма. Не надо также забывать, что при этом в выдохе таки содержится какое-то незначительное количество паров алкоголя (естественный фон), и это количество также входит в эти 0,035 мг/л. Другими словами, эти показания в 0.035 мг/л учитывают как естественный фон паров алкоголя, так и все побочные влияния на сенсор (СО2, влажность, температура). Интересующий же нас диапазон находится несколько в другой области, в районе 0,16 мг/л. И там уже влияние остальных факторов можно считать не то, чтобы ничтожным, но не слишком значительным. В моём случае, по крайней мере, результирующие цифры замеров не зависят от окружающей среды, хотя сопротивление сенсора "в чистом воздухе" может отличаться весьма значительно (15 - 50 кОм).

Ну и плюсом - механическая конструкция устройства спроектирована так, чтобы в объеме вокруг датчика сформировать атмосферу, максимально приближенную к выдоху, т.е. чтобы в зоне измерения был только выдыхаемый воздух.

Ну вот как-то так.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 17 июн 2019, 12:14 
Старожил
Аватара пользователя

Зарегистрирован: 21 мар 2016, 01:19
Сообщения: 814
Ок, наверное, Вы правы. Тем более, я посмотрел - у меня несколько другие датчики, с более низкой избирательностью по газам. Просто давно уже делал и забыл, какие именно использовал. Ну и повторюсь - работа хорошая, мне понравилась.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 17 июн 2019, 12:29 
Заглядывает иногда

Зарегистрирован: 16 июн 2019, 00:50
Сообщения: 40
ИгорР писал(а):
Ок, наверное, Вы правы. Тем более, я посмотрел - у меня несколько другие датчики, с более низкой избирательностью по газам. Просто давно уже делал и забыл, какие именно использовал. Ну и повторюсь - работа хорошая, мне понравилась.

Еще раз спасибо за оценку работы. ))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 17 июн 2019, 12:33 
Старожил
Аватара пользователя

Зарегистрирован: 28 дек 2011, 11:24
Сообщения: 4477
Откуда: г. Липецк
Наверно можно будет впихнуть и в ATmega8 если перейти на математику с фиксированной точкой. Но исходники автор не открывал...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 17 июн 2019, 13:16 
Старожил

Зарегистрирован: 19 мар 2013, 19:37
Сообщения: 3008
Откуда: Санкт-Петербург
Круть. Основательность подхода безмерно радует - что в плане корпуса (ну в смысле подвод воздуха к датчику), что калибровка, что схемотехника, насколько я способен её понять (наверное, такая реализация питания для вас - что-то привычное, что вы делали 100 раз и уже не задумываясь делаете?)

Вопрос по калибровке: а при долгом нахождении во "включённом состоянии" в измеряемой среде - параметры датчика не плывут?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 17 июн 2019, 15:59 
Заглядывает иногда

Зарегистрирован: 16 июн 2019, 00:50
Сообщения: 40
anakost писал(а):
Наверно можно будет впихнуть и в ATmega8 если перейти на математику с фиксированной точкой. Но исходники автор не открывал...

Не думаю, что таки удастся впихнуть в мегу8. Хотя, если совсем всё заоптимизировать, то вполне возможно. Но вот только смысла особого я не вижу, если честно. Иногда понятность кода лучше, чем лишний килобайт. ATmega168PA у китайцев стоит меньше 80 рублей. Смысл ставить 8 мегу?

P.S. И да, если кто-то заинтересуется с целью повторить, или даже просто, то код я выложу, не вопрос. Мне не жалко. Коммерческих секретов в нём нет. ))))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 17 июн 2019, 16:04 
Заглядывает иногда

Зарегистрирован: 16 июн 2019, 00:50
Сообщения: 40
aamonster писал(а):
Круть. Основательность подхода безмерно радует - что в плане корпуса (ну в смысле подвод воздуха к датчику), что калибровка, что схемотехника, насколько я способен её понять (наверное, такая реализация питания для вас - что-то привычное, что вы делали 100 раз и уже не задумываясь делаете?)

Вопрос по калибровке: а при долгом нахождении во "включённом состоянии" в измеряемой среде - параметры датчика не плывут?


Не сто раз. Реализация питания - это одна из фишек, которая мне была интересна, поскольку именно в таком виде делалось первый раз.

По калибровке. Сложно сказать, но тот факт, что калибровочные серии, между которыми могло пройти и пара часов, хорошо (почти идеально) сопоставляются друг с другом (см. графики), намекает на то, что с параметрами датчика при длительном нахождении в среде все ок. Каждая калибровочная серия - до 50 минут (в зависимости от скорости испарения и количества замеров в серии).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 17 июн 2019, 16:06 
Старожил

Зарегистрирован: 10 окт 2014, 00:48
Сообщения: 7709
Lehin, вы бы лучше развили вариант схемы для "меня посетила мысль, что на самом деле, от концентрации паров зависит проводимость".


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 17 июн 2019, 17:45 
Заглядывает иногда

Зарегистрирован: 16 июн 2019, 00:50
Сообщения: 40
u37 писал(а):
Lehin, вы бы лучше развили вариант схемы для "меня посетила мысль, что на самом деле, от концентрации паров зависит проводимость".

Мои извинения. Можете вопрос переформулировать? )


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алкотестер на китайском датчике MQ-3
СообщениеДобавлено: 17 июн 2019, 18:00 
Старожил

Зарегистрирован: 10 окт 2014, 00:48
Сообщения: 7709
Сейчас вы измеряете "сопротивление", в том или ином виде. Потом производите пересчет вида "1/R" для получения измеряемой характеристики (% спирта). По теории погрешностей, операция деления сильно ухудшает достоверность результата на краю диапазона.
Если изменить схему включения и измерять не "сопротивление", а обратную величину, "проводимость", то перевод измерено-вычислено будет вестись по более простым формулам, мало влияющим на снижение точности.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 41 ]  На страницу 1, 2  След.


Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB