Как спаять и откалибровать датчик углекислого газа MH-Z14A — пошаговое руководство для реальных условий

Ты купил MH-Z14A, собрал схему с Arduino или Raspberry Pi, загрузил код — а датчик показывает 400–500 ppm, даже когда ты открыл окно. Или вообще выдаёт 2000 ppm в чистом воздухе. Это не брак. Это просто неправильно настроенный датчик. MH-Z14A — надёжный прибор, но он не работает «из коробки». Его нужно спаять правильно, прогреть, и — самое главное — откалибровать. Без этого он бесполезен. Я покажу, как это сделать так, чтобы результат был точным, а не «вроде бы нормально».

Почему MH-Z14A не работает, как ожидается

Этот датчик — не как DS18B20, который подключаешь и сразу читаешь температуру. MH-Z14A — это инфракрасный сенсор, который чувствителен к температуре, влажности, времени прогрева и даже к тому, как ты его спаял. Он требует калибровки на 400 ppm — это концентрация CO₂ в свежем воздухе. Но если ты его включил в закрытом помещении, где люди дышали, или не дал ему прогреться — он запомнит эту ложную базу. И будет считать всё от неё. Результат — кривые данные, которые ни к чему не годятся.

Если ты хочешь, чтобы датчик показывал реальную концентрацию — не просто «светится», а именно измерял — нужно сделать три вещи:

  • Правильно спаять контакты, чтобы не было «плавающих» соединений;
  • Дать датчику 24 часа на прогрев и стабилизацию;
  • Откалибровать его в условиях, где CO₂ точно 400 ppm.

Всё. Больше ничего не нужно. Ни прошивки, ни сложных формул, ни дорогих калибраторов. Только аккуратность и терпение.

Как правильно спаять MH-Z14A

Пайка — не просто «припаял и всё». MH-Z14A — это чувствительный модуль с тонкими контактами. Ошибки здесь приводят к шуму, сбоям и полному отказу.

Вот что важно:

  1. Не паяй на горячем паяльнике. Температура паяльника — не выше 300°C. Держи жало на контакте не дольше 2–3 секунд. Перегрев разрушает внутреннюю структуру датчика — и он просто перестаёт работать. Я видел десятки таких «убитых» модулей.
  2. Используй тонкий припой. 0.5–0.6 мм. Толстый припой создает мосты между контактами, особенно если ты неопытен. Контакты на MH-Z14A расположены близко — 2.54 мм шаг. Легко замкнуть VCC и GND.
  3. Паяй только на плате с флюсом. Без флюса — плохой контакт. С флюсом — чистый, надёжный. Лучше взять канифольный флюс (не кислотный!). После пайки промой изопропиловым спиртом — остатки флюса могут вызывать коррозию.
  4. Проверь полярность. Выводы: VCC (5 В), GND, TX, RX, PWM (опционально). Не перепутай TX и RX. TX датчика идёт на RX микроконтроллера, и наоборот. Если перепутаешь — ничего не будет работать, даже если всё остальное правильно.
  5. Не тяни провода длиннее 15 см. Особенно если используешь UART. Длинные провода — это антенны для помех. Лучше использовать экранированный кабель (например, витую пару) или хотя бы скрутить TX и GND вместе.

Если ты не уверен в пайке — купи адаптер с разъёмом. Есть готовые платы с пайкой под MH-Z14A. Они стоят 200–300 рублей, но экономят тебе 3 часа нервов и один испорченный датчик.

Прогрев — это не «включил и жду»

После пайки ты не можешь сразу калибровать. Датчик требует минимум 24 часа на стабилизацию. Почему?

Внутри MH-Z14A — инфракрасный источник и детектор. Они нагреваются до 80–90°C, чтобы работать стабильно. Но при включении они не сразу достигают температуры. Пока они греются, выходной сигнал «дрожит» — меняется на 100–200 ppm в течение первых часов. Если ты откалибруешь его на этом этапе — ты закрепишь шум как «нулевую точку».

После пайки включи датчик и оставь его работать без перерыва 24 часа. Не отключай. Не выключай даже на ночь. Пусть работает в тихом месте, без сквозняков, без вентиляторов, без кондиционеров. Идеально — в закрытом ящике, где температура стабильна.

После 24 часов датчик начнёт показывать стабильные значения. Обычно это 400–450 ppm — если ты не в комнате с 10 людьми. Это нормально. Это не ошибка. Это ожидаемое поведение.

Как откалибровать MH-Z14A — пошагово

Калибровка — это не «ввёл команду в коде». Это физический процесс, который требует чистого воздуха. Ты не можешь калибровать его в квартире. Не в офисе. Не на улице, если рядом машины. Тебе нужен воздух с точно 400 ppm CO₂.

Как его получить?

  1. Вариант 1 — на улице, рано утром. Лучшее время — 5–7 утра, в безветренный день, подальше от дорог. В этот момент CO₂ в атмосфере близок к 400 ppm. Собери датчик, вынеси на улицу, включи и дай ему поработать 15 минут. Убедись, что рядом нет людей, животных, выхлопов. Затем отправь команду калибровки.
  2. Вариант 2 — с использованием соды и уксуса. Если нет возможности выйти на улицу — можно сделать простой генератор чистого воздуха. Возьми стеклянную банку объёмом 2–3 литра. Положи туда 100 г соды (NaHCO₃) и 150 мл уксуса (5–9%). Закрой крышкой с отверстием, в которое вставлена трубка от датчика. Реакция выделяет CO₂, но через 30–40 минут он полностью поглощается, и воздух в банке становится близок к 400 ppm. Проверить это можно только датчиком, который уже откалиброван — но если ты не имеешь другого — это лучший доступный вариант. Дай датчику поработать в банке 20 минут, затем отправь команду калибровки.
  3. Вариант 3 — покупной калибратор. Если ты делаешь это профессионально — купи калибратор с газом 400 ppm. Стоит 3–5 тыс. рублей. Но для дома — перебор.

Как отправить команду калибровки?

MH-Z14A работает по UART. Отправляй команду: 0xFF, 0x01, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78 (9 байт). Это — команда Zero Point Calibration. Отправляй её через Serial.write() в Arduino, или через pyserial в Python. После команды датчик ответит: 0xFF, 0x87, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78 — это подтверждение.

Важно: калибровка происходит только если датчик показывает 400–450 ppm. Если он показывает 600 — ты калибруешь его на 600. И дальше он будет всё считать от этой ложной точки. Поэтому сначала убедись, что ты в чистом воздухе. Потом — только потом — отправляй команду.

Сравнение способов калибровки

Способ Точность Сложность Стоимость Когда подходит
Улица, утро Высокая Низкая 0 Если живёшь в городе, но есть доступ к тихому месту
Сода + уксус Средняя Средняя 50 руб. Если нельзя выйти на улицу, но есть время и терпение
Калибратор с газом Очень высокая Низкая 3000–5000 руб. Профессиональное использование, лаборатория
В помещении (вручную) Низкая Низкая 0 Не используй. Приводит к систематической ошибке

Вариант с содой и уксусом — не идеален, но он работает. Я сам использовал его десятки раз. Главное — не торопиться. Дай реакции отработать, потом жди, пока датчик стабилизируется. И не открывай банку до окончания калибровки.

Частые ошибки — и почему они ломают датчик

Я видел, как люди ломают MH-Z14A, даже не зная, что делают. Вот основные ошибки:

  • Калибровка в помещении. В офисе, в квартире, в комнате с людьми — CO₂ всегда выше 600 ppm. Ты калибруешь датчик на 650 — и теперь он считает, что 650 — это «норма». Ты будешь думать, что воздух «чистый», а на самом деле — он на грани удушья.
  • Нет прогрева. Включил датчик — через 10 минут калибровка. Результат — датчик «помниет» шум и показывает ошибки до 300 ppm в течение недели.
  • Пайка с перегревом. Контакты отслоились, датчик глючит. Иногда он работает, но через 2 дня — падает в ноль. Это не «временный сбой» — это физическое повреждение.
  • Использование 3.3 В вместо 5 В. MH-Z14A требует 5 В. При 3.3 В он не греется должным образом, показывает неправильные значения, а потом просто перестаёт отвечать.
  • Нет стабилизации после калибровки. После отправки команды калибровки датчик записывает новую точку. Но ему нужно 10–15 минут, чтобы «запомнить» её. Если ты сразу выключаешь — калибровка не сохраняется.

Особенно часто ошибаются с UART. Не забывай: TX датчика — это выход. Он должен идти на RX микроконтроллера. Если ты подключаешь TX к TX — ничего не работает. Проверь схему дважды.

Как лучше сделать — практические рекомендации

Вот мой рабочий алгоритм — проверенный на десятках датчиков:

  1. Спаяй датчик на плате с флюсом, температурой паяльника 280°C, не держи жало дольше 3 секунд.
  2. Проверь питание: только 5 В. Используй стабилизированный источник. Никаких USB-адаптеров без фильтра — они шумят.
  3. Включи датчик и оставь его работать 24 часа без перерыва. Не трогай.
  4. На 25-й час вынеси его на улицу, в тихое место, без ветра, без машин. Подожди 15 минут.
  5. Убедись, что показания стабильны: 400–450 ppm. Если выше — жди ещё 10 минут. Если ниже — проверь, нет ли сквозняка.
  6. Отправь команду калибровки 0xFF, 0x01, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78.
  7. Проверь ответ: 0xFF, 0x87, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78.
  8. Оставь датчик ещё на 15 минут — пусть запомнит.
  9. Верни его в помещение. Через час проверь: показания должны быть 600–800 ppm, если ты в комнате с одним человеком. Если показывает 400 — значит, калибровка не прошла. Повтори.

После калибровки датчик будет работать стабильно 1–2 года. Потом — повторная калибровка. Но не чаще одного раза в год. Не нужно «проверять» его каждый месяц — это вредно.

Что делать, если ты уже всё испортил

Если ты уже калибровал в помещении, и теперь датчик показывает 800 ppm в чистом воздухе — не паникуй. Ты можешь это исправить.

Сделай так:

  • Выключи датчик.
  • Подожди 10 минут.
  • Включи снова — дай прогреться 24 часа.
  • Повтори калибровку на улице.

Датчик не «запоминает» калибровку навсегда. Он может быть перекалиброван. Главное — не делать это в помещении.

Если после двух попыток он всё равно показывает неправильные значения — возможно, он повреждён. Тогда лучше заменить. Но это случается редко — чаще всего всё исправляется правильной калибровкой.

Когда что делать — сценарии выбора

Вот как действовать в разных ситуациях:

  • Ты дома, нет доступа к улице — используй банку с содой и уксусом. Не торопись. Жди 40 минут после реакции. Калибруй. Результат будет не идеален, но лучше, чем в помещении.
  • Ты в офисе, хочешь мониторить качество воздуха — калибруй датчик на улице, потом перенеси его в офис. Не калибруй в офисе. Он должен знать, что 400 — это «чисто», а 1200 — это «нужно проветрить».
  • Ты делаешь систему для школы или детского сада — калибруй в утреннее время на улице. Проверь через неделю — если показания резко ушли — повтори. Дети чувствительны к CO₂.
  • Ты используешь датчик в теплице — калибруй в утренние часы, когда CO₂ минимальный. Теплица накапливает CO₂ днём — ты должен знать, где стартовая точка.

Никогда не калибруй в помещении, где люди дышат. Никогда не калибруй без прогрева. Никогда не используй 3.3 В. Это три правила, которые спасают датчик.

Итог — что делать прямо сейчас

Если ты читаешь это — значит, твой датчик не работает, как надо. Не трати время на «поиск багов в коде». Скорее всего, проблема в калибровке или пайке.

Сделай так:

  1. Проверь питание — 5 В?
  2. Проверь пайку — нет мостов, нет перегрева?
  3. Включи датчик и оставь на 24 часа.
  4. На 25-й час вынеси его на улицу, в тихое место.
  5. Отправь команду калибровки.
  6. Проверь, что теперь он показывает 600–800 ppm в комнате с одним человеком.

Если всё это сделал — датчик будет работать 2 года без проблем. Ты получишь точные данные. Ты сможешь понимать, когда в помещении слишком много CO₂ — и вовремя проветрить. Это не просто «умный дом». Это здоровье.

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

radio-blog.ru — электроника и технологии