Предварительная спецификация компонентов для прототипа v0.1
Назначение: собрать первую отладочную версию четырёхканального газоанализатора, чтобы подключить реальные датчики, снять характеристики и начать разработку аппаратных адаптеров. Это не серийная спецификация и не документ для сертифицированного прибора.
Граница решения
В программном ядре сейчас заложены каналы O₂, CO, H₂S и CO₂. Три электрохимических сенсора уже выбраны в проекте по даташитам: DD Scientific S+4OX, GS+4CO и GS+4H2S. Для CO₂ используется временная модель, поэтому его закупку нельзя завершить без отдельного выбора технологии и рабочего диапазона.
Старый прибор исследовался только как источник требований. Его контроллер FM33, номера GPIO, EEPROM и аналоговые коэффициенты не являются обязательной схемой нового изделия.
Закупать сейчас - на один прототип
| Узел | Позиция / кандидат | Кол-во | Для чего | Статус |
| Контроллер | STM32L452CET6, LQFP-48 | 2 | Основной MCU, низкое потребление, RTC, SPI/I²C, SWD | Можно покупать |
| Отладка MCU | NUCLEO-L452RE или ST-LINK/V3MINI | 1 | Прошивка и отладка первой платы | Можно покупать |
| Прецизионный АЦП | AD7124-8BRUZ | 2 | 24-битный Σ-Δ ADC для аналоговых каналов, запас входов для температуры/батареи/диагностики | Можно покупать |
| Отладка АЦП | EVAL-AD7124-8ASDZ | 1 | Проверить шум, фильтры и интерфейс до своей платы | Очень желательно |
| Аналоговый тракт CO/H₂S | LMP91000SD/NOPB, 14-WSON | 3 | Программируемый потенциостат/TIA: два рабочих канала и один запасной/для экспериментов | Можно покупать для макета |
| Внешняя память | 24LC256-I/SN или pin-compatible 24C256 в SOIC-8 | 2 | Настройки, калибровки и журнал; 32 КиБ, I²C | Можно покупать |
| Датчик O₂ | DD Scientific S+4OX + штатная PCB-колодка | 1 | Канал кислорода, 0-25 % O₂ | Покупать у авторизованного поставщика |
| Датчик CO | DD Scientific GS+4CO + штатная PCB-колодка | 1 | Канал CO, 0-2000 ppm | Покупать у авторизованного поставщика |
| Датчик H₂S | DD Scientific GS+4H2S + штатная PCB-колодка | 1 | Канал H₂S, 0-100 ppm | Покупать у авторизованного поставщика |
| Температура/влажность | SHT41-AD1B-R2 или готовый breakout | 1 | Независимая температура для компенсации и диагностики среды | Можно покупать |
| Экран для макета | OLED-модуль 1.3", 128×64, I²C, SSD1306/SH1106 | 1 | Первый интерфейс без выбора финального LCD | Можно покупать как временный |
| Органы управления | Тактовые кнопки 6×6 мм + колпачки | 3 | Навигация/подтверждение/выход | Можно покупать |
| Звуковое оповещение | Пьезоизлучатель 3.3 В, пассивный, 12 мм | 1 | Настраиваемые шаблоны тревоги | Можно покупать |
| Вибрация | Вибромотор 3 В + MOSFET низкой стороны + защитный диод | 1 | Тактильное оповещение | Можно покупать для макета |
| Световая индикация | Красный и зелёный LED, 0603/0805 | 2-3 каждого | Тревога, питание, диагностика | Можно покупать |
| Сервис | SWD-разъём 2×5, 1.27 мм; UART-разъём; test points | по 1 | Прошивка, журналирование, измерения | Можно покупать |
Для микросхем берём по две штуки: одна для монтажа, одна на случай ошибки пайки или диагностики. Для сенсоров не нужно покупать «россыпь про запас»: у них есть срок хранения и дрейф, а замена требует последующей калибровки.
Обвязка, защита и «мелочь» - добавить в закупку
Это перечень для одной первой платы без финальной нумерации R/C/U. Количество уточняется после схемы, но позиции нужны уже сейчас, чтобы не остановить монтаж из-за одной защиты или конденсатора.
| Узел | Компонент / пример | Оценка количества | Зачем нужен | Статус |
| Усилитель O₂ | TLV2322IDR (двухканальный RRIO ОУ) | 1-2 | Кандидат для референсного двухэлектродного тракта O₂ | Купить для эксперимента; не фиксировать как серийный |
| Усиление CO/H₂S | LMP91000 из основной таблицы | 2 рабочих + 1 запас | Потенциостат и трансимпедансный усилитель для трёхэлектродных сенсоров | Уже учтён |
| Прецизионная обвязка AFE | 0.1 %, 25 ppm/°C, 0603: 10 Ω, 100 Ω, 1 kΩ, 10 kΩ, 100 kΩ, 1 MΩ | по 10 каждого | Набор для TIA, опорных делителей и проверки усиления | Купить набором |
| Конденсаторы AFE | C0G/NP0: 100 пФ, 1 нФ, 10 нФ; X7R: 100 нФ, 1 мкФ | по 10 каждого | Устойчивость усилителей, аналоговые фильтры, развязка | Купить набором |
| Фильтры ADC | 0.1 % резисторы + C0G/NP0 конденсаторы | по схеме, ориентир 3 канала | Входные RC-фильтры перед AD7124-8 | Номиналы после измерений |
| Защита USB-C | TVS/ESD-диод для VBUS 5 V и малой ёмкости ESD-защита линий CC/D+/D− | 1 комплект | Защита от статики и импульсов на внешнем разъёме | Купить после выбора разъёма USB-C |
| Защита датчиков | Серийные резисторы и низкоутечечная ESD-защита только на внешних цифровых линиях | по схеме | Защита, не искажающая токи электрохимического сенсора | Обязательно проверить утечку; TVS прямо на электрод не ставить |
| Предохранитель USB | Самовосстанавливающийся PTC 0.5 A, 6 V или выше | 1 | Ограничение аварийного тока от USB | Купить |
| Предохранитель батареи | Самовосстанавливающийся PTC 1.0-1.5 A, под фактический пик | 1 | Защита батарейной ветви при ошибке монтажа/коротком замыкании | Купить после power budget |
| Защита от переполюсовки | P-MOSFET для «идеального диода» либо Schottky-диод | 1 | Защита при подключении батареи/внешнего DC | Купить для макета |
| Ключ мотора | AO3400A или аналогичный N-MOSFET logic-level + Schottky-диод SS14 | 1+1 | Управление вибромотором и подавление выброса напряжения | Купить |
| Ключ зуммера/LED | N-MOSFET logic-level или NPN-транзистор + базовый/затворный резистор | 1-2 | Не нагружать GPIO током исполнительных узлов | Купить |
| Питание 3.3 V | TPS63070 + индуктивность и конденсаторы строго по reference design | 1 комплект | Buck-boost от 1S Li-ion для цифровой шины | После power budget |
| Тихое аналоговое питание | ADP7118-3.3 + 2.2 мкФ на входе/выходе | 1 комплект | Отделить шум DC/DC от ADC и AFE | Купить для макета |
| USB-C питание | Розетка USB-C, две Rd 5.1 kΩ на CC1/CC2, предохранитель и TVS | 1 комплект | Приём питания от USB-C без передачи данных | Только вместе со схемой зарядки |
| Заряд и защита Li-ion | Контроллер заряда, защита от переразряда/КЗ, NTC, разъём батареи | 1 комплект | Безопасная работа аккумулятора | Заблокировано до выбора аккумулятора |
| Тактирование | LSE-кварц 32.768 кГц + 2 нагрузочных конденсатора; место под HSE-кварц | 1 комплект | Точное время журнала и резерв для отладки | Купить |
| Сброс и загрузка | Кнопка RESET, подтяжки NRST/BOOT0, SWD-разъём | 1 комплект | Восстановление и прошивка платы | Купить |
| I²C | Подтягивающие резисторы 4.7 kΩ, места под 2.2/10 kΩ | 2-4 | Память, сенсоры, дисплей | Купить набором |
| Монтаж | Гребёнки, винтовые клеммы, PCB-колодки датчиков, test points | по схеме | Безопасное подключение модулей и измерений | Купить |
Про выпрямитель
В выбранной архитектуре нет входа переменного напряжения, поэтому диодный мост не нужен и в BOM не включается. Если питание будет от внешнего AC-адаптера, выпрямление должно происходить в сертифицированном сетевом блоке питания до входа прибора. На самой плате при питании от USB-C или Li-ion нужны PTC-предохранители, TVS/ESD, защита от переполюсовки и корректный зарядный узел - именно они закрывают ожидаемые риски.
Что должно войти в первую плату
O₂ / CO / H₂S sensors -> отдельные аналоговые front-end -> AD7124-8 -> STM32L452
CO₂ module (цифровой) ---------------------------------------> I²C/UART STM32
Temperature/RH module ---------------------------------------> I²C STM32
24C256 (settings + calibration + log) ----------------------> I²C STM32
OLED + buttons + buzzer + vibration + LEDs -----------------> GPIO/PWM STM32
Battery / USB-C / charger -> 3.3 V digital + quiet analog rail
Важные правила разводки
- У каждого электрохимического датчика должен быть отдельный входной канал и разъём/колодка. Не паять датчики непосредственно за выводы: это прямо запрещено даташитами CO и H₂S и лишает их гарантии.
- Аналоговую землю, питание АЦП и потенциостатов отделить от шумных цепей экрана, мотора, зуммера и DC/DC; соединение земель предусмотреть в одной контролируемой точке.
- Поставить раздельные test points для электродов/выхода TIA, входов ADC, опорного напряжения, 3.3 V analog, 3.3 V digital и батареи.
- Не закладывать фиксированные коэффициенты старой прошивки в номиналы: усиление выбирается после снятия реальных сигналов конкретных сенсоров.
Пассивные компоненты и обвязка для макета
Эти позиции можно заказать наборами, но окончательные номиналы в BOM платы утверждать только после схемы.
| Группа | Что подготовить | Примечание |
| Развязка | 100 нФ X7R 0603, 1 мкФ X7R 0603/0805, 4.7/10 мкФ X7R | У каждой ИС своё размещение у вывода питания; для прототипа заложить не менее 20 штук 100 нФ |
| Прецизионные резисторы | 0.1 %, 25 ppm/°C: 10 Ω, 100 Ω, 1 kΩ, 10 kΩ, 100 kΩ, 1 MΩ | Нужны для TIA, делителей, контроля и эксперимента; Rtia окончательно задаётся по датчику |
| Обычные резисторы | 1 %, E24, 0603 | Подтяжки I²C, LED, затворы MOSFET, делители батареи |
| Защита входов | Последовательные резисторы, RC-фильтры, ESD-защита для внешних разъёмов | Нельзя ставить защиту, создающую заметную утечку в цепи сенсора, без проверки |
| Ключи нагрузки | N-MOSFET logic-level + диод для мотора; отдельный транзистор при необходимости для зуммера | Номиналы зависят от фактического тока выбранных оповещателей |
| Часы | 32.768 кГц LSE-кварц для RTC MCU + предусмотренное место под батарейку RTC | Нужны для корректного времени журнала |
Питание - пока только архитектурное решение
Для макета рекомендуются отдельные домены 3.3 V digital и 3.3 V analog. В качестве кандидатов:
- buck-boost для питания от одного Li-ion: TPS63070; его вход 2-16 V и выход можно задать 3.3 V;
- малошумящий LDO для аналоговой части после преобразователя: ADP7118 в варианте 3.3 V;
- отдельный зарядный контроллер, защита аккумулятора, USB-C разъём, предохранитель и NTC - только после выбора аккумулятора, потребления экрана/CO₂-модуля и требуемой автономности.
Не заказывать аккумулятор, зарядник и корпус в серию до расчёта пикового тока: CO₂ NDIR-модуль, подсветка, мотор и зуммер могут определять питание сильнее, чем MCU. Литиевую батарею нельзя подключать к экспериментальной плате без защиты от переразряда, короткого замыкания и корректного зарядного узла.
Позиции, по которым закупка заблокирована
| Позиция | Почему нельзя выбрать сейчас | Что нужно решить |
| CO₂-сенсор | В коде временно указан 0-50 000 ppm, а технология и финальный диапазон не утверждены | Диапазон (например 0-1 %, 0-4 %, 0-5 %), требуемая точность/T90, температура и бюджет |
| CO₂ front-end | Электрохимический и NDIR-сенсор требуют принципиально разных схем | После выбора CO₂-модуля определить I²C/UART/analog, питание и механику газового канала |
| Кислородный front-end | S+4OX - двухэлектродный сенсор; нельзя автоматически копировать трехэлектродную схему CO/H₂S | Собрать референсную схему производителя и снять сигнал на 0/20.9/25 % O₂ |
| Финальный дисплей и корпус | Не определены габариты, читаемость на улице, степень IP, мембрана и газовый путь | Утвердить механику и сценарии работы |
| Аккумулятор и зарядка | Не задано требуемое время работы и токи выбранных модулей | Составить power budget и требования безопасности |
| Номиналы TIA/фильтров | Они зависят от реального выхода каждого сенсора и нужной полосы | Провести стендовые измерения и выбрать усиление с запасом от перегрузки |
Для CO₂ как стендовой, а не финальной, позиции допустим модуль Sensirion SCD30: интерфейсы I²C/UART/PWM, питание 3.3-5.5 V, диапазон по I²C/UART до 40 000 ppm. Он не покрывает заявленные в эмуляторе 50 000 ppm и его точность нормирована прежде всего до 10 000 ppm, поэтому не должен попасть в финальную BOM без пересмотра диапазона.
До заказа печатной платы - обязательные проверки
- Зафиксировать диапазоны и допустимую задержку каждого канала, особенно CO₂.
- Сделать на макетной/оценочной плате по одному измерению нуля, рабочей точки и перегрузки для O₂, CO и H₂S; записать диапазон токов и требуемую полосу.
- Сверить reference circuits производителя для S+4OX и GS+4CO/GS+4H2S с выбранным AFE. LMP91000 - кандидат для макета, не утверждённая серийная схема.
- Посчитать средний и пиковый ток всех модулей, затем выбрать аккумулятор, защиту, зарядку и DC/DC.
- Выпустить отдельную схему и BOM с reference designator, корпусом, производителем, допустимой заменой и количеством на плату. Только эта BOM является основанием для заказа PCB.
Источники выбора
- Даташиты из репозитория:
tests/S+4OX.pdf,tests/GS+4CO.pdf,tests/GS+4H2S.pdf,tests/3 ELECTRODE CIRCUIT.pdf,tests/OXYGEN CIRCUIT.pdf. - AD7124-8 - данные производителя: 24-битный ADC, до 8 дифференциальных входов, PGA и диагностические функции.
- STM32L452CE - данные производителя: активный MCU, 512 KiB Flash, 160 KiB SRAM, RTC, SPI/I²C и LQFP-48.
- LMP91000 - данные производителя: одноканальный программируемый аналоговый front-end для электрохимических сенсоров.
- SCD30 - данные производителя: ограничения стендового кандидата CO₂.