Сборка DIY-модуля LoRaWAN: пайка RFM95W и антенна PCB своими руками

Если ты читаешь это, скорее всего ты уже решил собрать собственный LoRaWAN-узел — и не просто купить готовый модуль, а именно спаять RFM95W с антенной прямо на плате. Это имеет смысл: ты получаешь полный контроль над конструкцией, понимаешь каждый элемент и можешь заточить модуль под свою задачу — будь то датчик температуры на даче, метеостанция на крыше или трекер для полезной нагрузки.

Я расскажу так, как объяснял бы другу, который умеет держать паяльник, но с LoRa ещё не работал. Без теории радиофизики, без абстракций — только то, что влияет на результат.

Что тебе понадобится перед началом

Прежде чем браться за паяльник, убедись, что всё на столе. Половина проблем при сборке DIY-модулей — это не плохая пайка, а отсутствие нужной мелочи в самый ответственный момент.

  • RFM95W — сам трансивер, 868 МГц (для Европы/СНГ) или 915 МГц (для Америки). Проверь частоту перед заказом, это критично.
  • Контроллер — Arduino Pro Mini, ESP32, STM32 или совместимая плата. Главное — наличие SPI и 3.3В логический уровень.
  • Антенна PCB — печатная антенна, спроектированная под твою частоту. О выборе — ниже.
  • Кварц/генератор — RFM95W нужен внешний опорный генератор, обычно 32 МГц. На некоторых платах он уже впаян.
  • Конденсаторы и дроссели — из даташита: 100 нФ и 10 мкФ на питание, плюс цепь согласования антенны.
  • Провода, макетная плата или своя PCB — зависит от того, делаешь ты прототип или финальную версию.
  • Паяльник с тонким жалом — 25–40 Вт, не больше. RFM95W не терпит перегрева.
  • Флюс и оплётка — без них пайка SMD-компонентов превращается в мучение.

Подключение RFM95W: распиновка и обвязка

RFM95W общается с контроллером по SPI. Это четыре сигнальных линии плюс питание и земля. Вот минимальная обвязка, без которой чип не заработает:

  1. VCC → 3.3В — строго 3.3В. 5В сожжёт чип. Если у тебя Arduino, которая работает от 5В, используй стабилизатор или плату с 3.3В логикой.
  2. GND → GND — очевидно, но земля должна быть надёжной. Плохой контакт земли — плавающие ошибки приёма.
  3. MISO, MOSI, SCK, NSS — линии SPI. NSS — это чип-селект, подтягивается к земле через резистор 10 кОм при необходимости.
  4. DIO0 — прерывание от радиомодуля. Без него ты не узнаешь, что пришёл пакет. Подключается к пину с внешним прерыванием на контроллере.
  5. RST — сброс модуля. Можно подключить к любому GPIO, но не обязательно, если не планируешь программный перезапуск.
  6. Антенный вывод (ANT) — здесь начинается самое интересное.

На питание обязательно поставь конденсатор 100 нФ и 10 мкФ параллельно, как можно ближе к ножке VCC. RFM95W потребляет до 120 мА при передаче — и если питание просядет, модуль уйдёт в сброс или начнёт передавать с ошибками.

Антенна PCB: что это и почему это не просто кусок дорожки

Печатная антенна (PCB antenna) — это проводник определённой формы и размера, вытравленный прямо на текстолите платы. Она работает как четвертьволновый вибратор на рабочей частоте. Для 868 МГц длина волны — около 34.5 см, четверть — примерно 8.6 см.

Но просто нарисовать кусок длиной 8.6 см недостаточно. Геометрия критична: ширина, изгибы, зазор до полигона земли, толщина текстолита (обычно 1.6 мм), диэлектрическая проницаемость материала (FR4 — около 4.4). Всё это влияет на импеданс и КСВ.

Типы печатных антенн для LoRa

Тип Коэффициент усиления Размер Сложность проектирования Для каких задач
Инверсный F (IFA) 1–2 dBi Компактная Средняя Компактные устройства, датчики
Прямоугольный патч 2–4 dBi Средняя Низкая Прототипы, стационарные узлы
Меандр PIFA 2–3 dBi Компактная Высокая Устройства с жёсткими ограничениями по размеру
Диполь на краю платы 2 dBi Удлинённая Низкая Простые DIY-проекты

Для первого DIY-проекта я рекомендую инверсную F-антенну (IFA). Она компактная, её параметры хорошо изучены, и в интернете много проверенных размеров под FR4 1.6 мм.

Пошаговая сборка: от платы до первого пакета

Шаг 1: Подготовка платы

Если делаешь на макетке — сначала разводи дорожки для SPI и питания. Если делаешь свою PCB — размещай RFM95W с учётом того, что антенная часть должна смотреть за пределы платы, и под ней не должно быть медных слоёв (полигон земли обрезается в зоне антенны).

Ключевое правило: зона под антенной должна быть свободна от меди на всех слоях. Даже земляной полигон под антенной меняет её импеданс. Оставь зону 10–15 мм вокруг антенны чистой.

Шаг 2: Пайка RFM95W

RFM95W — это QFN-корпус с контактной площадкой снизу. Паять его вручную можно, но нужна аккуратность:

  1. Залуди контактную площадку на плате флюсом. Не жалей флюс — он тянет олово точно на контакт.
  2. Установи RFM95W на площадку, совмести ключи (точка на корпусе и на плате).
  3. Припаяй сначала одну угловую ножку для фиксации, проверь ровность, затем остальные.
  4. Если паяешь феном — нанеси пасту на все контакты, установи чип, нагрей феном до 280–300°C. Не держи фен на одном месте дольше 3–4 секунд.
  5. После пайки проверь мультиметром на короткое замыкание между соседними ножками.

Шаг 3: Обвязка питания

Поставь конденсаторы 100 нФ и 10 мкФ максимально близко к ножкам VCC и GND. Если используешь длинные провода от источника питания — добавь ещё один электролит 47 мкФ на входе питания платы.

Важно: линия питания RFM95W должна идти звездой от точки подключения, а не проходить последовательно через другие компоненты. Общие провода — источник помех.

Шаг 4: Антенна и согласование

Здесь большинство делает первую ошибку. Антенна PCB — это не просто дорожка, а часть колебательного контура. Её нужно согласовать с выходом RFM95W (50 Ом).

Типичная цепь согласования — П-контур из двух конденсаторов и одного дросселя между выводом ANT и антенной. Номиналы зависят от конкретной геометрии антенны и платы. Для начала можно поставить перемычку (0 Ом) и проверить, работает ли вообще. Потом — настроить согласование, если дальность не устраивает.

Если не хочешь возиться с согласованием — используй готовый печатный дизайн антенны из документации Semtech или из проверенных open-source проектов. Размеры там уже рассчитаны под стандартный FR4.

Шаг 5: Подключение к контроллеру и прошивка

Подключай по схеме SPI. Для Arduino это стандартные пины (11-MOSI, 12-MISO, 13-SCK), NSS — любой цифровой пин (обычно 10), DIO0 — пин 2 (прерывание 0).

Установи библиотеку LMIC (LoRaMAC-in-C) или RadioLib. LMIC — стандарт де-факто для Arduino + LoRa, но требует настройки под твою частоту и регион. RadioLib проще в начале и поддерживает больше плат.

Минимальный тестовый скетч: отправляй один пакет каждые 10 секунд и проверяй приём на другом модуле или на шлюзе (например, на Raspberry Pi с приёмником).

Частые ошибки, которые убивают результат

Несовпадение частоты антенны и модуля. Если RFM95W на 868 МГц, а антенна спроектирована под 915 МГц — ты потеряешь 15–20% дальности. Антенна должна быть рассчитана под твою конкретную частоту.

  • Пайка без флюса. Холодные соединения, перемычки между ножками, непайанные контакты — всё это даёт плавающие ошибки, которые невозможно отладить логическим анализатором.
  • Питание 5В на RFM95W. Модуль мгновенно выходит из строя. Если не уверен — проверь мультиметром до включения.
  • Длинные провода к антенне. Каждый лишний сантиметр провода между выводом ANT и антенной — это потери. Идеально — антенна прямо на плате, без проводов.
  • Забыли про DIO0. Без прерывания библиотека не узнает о принятом пакете. Ты будешь думать, что модуль не работает, а проблема в одном проводе.
  • Нет конденсаторов на питание. При передаче RFM95W потребляет импульсами. Без конденсаторов напряжение просядет, модуль перезагрузится, пакет не уйдёт.
  • Медный полигон под антенной. Это самая незаметная ошибка. Земляной полигон под PCB-антенной сдвигает резонанс и убивает КСВ. Вырезай медь в зоне антенны.

Что выбрать: своя плата или готовый модуль на базе RFM95W

Если цель — быстро запустить работающий узел, разумнее взять готовую плату с RFM95W (например, HopeRF RFM95W breakout или аналог) и подключить внешнюю антенну через SMA-разъём. Это избавит от проблем с согласованием и даст стабильный результат.

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

Как проверить, что всё работает

  1. Замерь потребляемый ток в режиме приёма — должен быть около 10–15 мА. Если ноль или очень много — модуль не подключён или закорочен.
  2. Запусти скетч с отправкой пакетов и проверь на стороне приёмника (второй модуль или шлюз). Если пакеты приходят — аппаратная часть работает.
  3. Если пакеты не приходят — проверь частоту, скорость (SF и BW) и SPI-подключение. Чаще всего проблема в софте, а не в железе.
  4. Для проверки антенны можно использовать антенный анализатор или SWR-метр. КСВ ниже 1.5 — отлично, ниже 2.0 — приемлемо. Выше 3.0 — антенна не согласована.

Практические рекомендации

  • Начни с внешней антенны. Сначала собери модуль с SMA-разъёмом и внешней антенной (даже простым четвертьволновым штырём). Убедись, что LoRa работает. Потом переходи к PCB-антенне.
  • Используй флюс в шприце (жидкий). Он удобнее твёрдого канифольного флюса для SMD-пайки. После сборки промой плату изопропиловым спиртом.
  • Не экономь на конденсаторах. Поставь и керамику 100 нФ, и тантал 10 мкФ. Керамика фильтрует ВЧ-помехи, тантал сглаживает импульсы тока.
  • Делай выводы антенны короткими. Идеально — антенна начинается прямо от вывода ANT чипа. Любой лишний проводник — это паразитная индуктивность.
  • Проверяй землю. Все точки GND должны сходиться в одну точку рядом с модулем. Звезда, а не цепочка.

Итог: что делать дальше

Сборка DIY-модуля LoRaWAN на RFM95W с печатной антенной — задача вполне реальная для человека с базовыми навыками пайки. Главное — не торопиться с антенной, правильно развязать питание и не забыть про прерывание DIO0.

Порядок действий: собери минимальную обвязку на макетке, подключи внешнюю антенну, запусти первый пакет. Когда убедишься, что связь работает — переходи к проектированию своей PCB с печатной антенной. Первый прототип может не дать максимальную дальность — это нормально. Дорабатывай геометрию антенны итеративно, замеряя КСВ после каждой версии.

Если нужна стабильная работа прямо сейчас — бери готовый модуль с внешней антенной. Если хочешь компактное и красивое решение — вкладывай время в PCB-антенну. Оба пути рабочие, выбор зависит от твоей задачи.

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