Технология LoRa в вопросах и ответах
Участники разных уровней LoRa Alliance производители программного обеспечения, микроэлектроники, операторы связи и т. д. (рис. 1).
В LoRa Alliance входят такие компании, как IBM, Semtech, Cisco, Inmarsat, Swisscom и др. Поскольку данный протокол и поддерживающие его устройства появились не столь давно, у пользователей возникает много вопросов на эту тему. Компания Semtech, разработавшая метод модуляции LoRa, предлагает читателям нашего журнала ответы на наиболее частые из них.
Что такое модуляция LoRa?
Технология модуляции LoRa (Long Range) представляет собой метод модуляции, который обеспечивает значительно бóльшую дальность связи (зону покрытия), чем другие конкурирующие с ним способы. Метод основывается на технологии модуляции с расширенным спектром и вариации линейной частотной модуляции (Chirp Spread Spectrum, CSS) с интегрированной прямой коррекцией ошибок (Forward Error Correction, FEC). Технология LoRa значительно повышает чувствительность приемника и, аналогично другим методам модуляции с расширенным спектром, использует всю ширину полосы пропускания канала для передачи сигнала, что делает его устойчивым к канальным шумам и нечувствительным к смещениям, вызванным неточностями в настройке частот при использовании недорогих опорных кварцевых резонаторов. Технология LoRa позволяет осуществлять демодуляцию сигналов с уровнями на 19,5 дБ ниже уровня шумов, притом что для правильной демодуляции большинству систем с частотной манипуляцией (Frequency Shift Keying, FSK) нужна мощность сигнала как минимум на 8-10 дБ выше уровня шума. Модуляция LoRa определяет тот физический уровень1(Physical Layer, PHY, иногда его называют слой), который может быть использован с различными протоколами и в различных вариантах сетевой архитектуры, таких как сетка (Mesh), звезда (Star), точка-к‑точке (point-to-point) и т. п.
Что такое LoRaWAN?
Модуляция LoRa является, как уже говорилось выше, физическим уровнем, а LoRaWAN (Long Range Wide-Area Networks, LoRaWAN) это MAC-протокол для высокоемких сетей с большим радиусом действия и низким собственным потреблением мощности, который организация LoRa Alliance стандартизировала для маломощных глобальных радиальных сетей (Low Power Wide Area Networks, LPWAN) типа звезда. Протокол LoRaWAN оптимизирован для малобюджетных сенсоров с работой от батарей и включает в себя различные классы узлов, обеспечивая компромисс между скоростью доставки информации и временем работы устройств при использовании питания от батарей/аккумуляторов. Протокол обеспечивает полную двустороннюю связь, а архитектура (посредством специальных методов шифрования) обеспечивает общую надежность и безопасность всей системы. Архитектура LoRaWAN также была разработана с целью облегчить обнаружение мобильных объектов для отслеживания активов предприятий, что является одним из наиболее быстро растущих приложений на уровне Интернета вещей (Internet of Things, IoT). Протокол LoRaWAN разрабатывается для использования в общенациональных сетях крупных операторов связи. С этой целью организация LoRa Alliance стандартизирует свой протокол LoRaWAN с учетом совместимости и взаимодействия со всеми основными глобальными операторами связи.
Что такое LoRa шлюз?
Шлюзы LoRa предназначены для использования в радиальных звездообразных сетевых архитектурах большого радиуса действия, они используются в системе LoRaWAN. Из-за свойств технологии LoRa эти шлюзы могут представлять собой многоканальные мультимодемные трансиверы, которые способны выполнять демодуляцию на нескольких каналах одновременно, и даже одновременную демодуляциию множества сигналов на одном и том же канале. Эти шлюзы используют иные радиочастотные компоненты, чем те, которые применяются в конечной точке для обеспечения высокой мощности излучения непосредственно радиосигнала. Шлюзы служат в качестве интерфейса в виде прозрачного моста для передачи сообщений между конечными устройствами и центральным сервером сети.
Шлюзы подключаются к сетевому серверу через стандартные IP-соединения, а конечные устройства используют односкачковую беспроводную связь к одному или нескольким шлюзам. Все конечные точки связи, как правило, являются двунаправленными, но они также поддерживают функционирование в режиме, обеспечивающем возможность осуществления группового обновления программного обеспечения по радиоканалу или передачу иных массовых сообщений, что позволяет сократить активное время на их передачу. В зависимости от желаемой их канальной емкости и мест установки доступны разные версии шлюзов, они могут устанавливаться внутри помещений или на вышках (рис. 2).
Какова возможная скорость передачи данных по протоколу LoRaWAN?
Скорость передачи данных по протоколу LoRaWAN в системе LoRa лежит в диапазоне 0,3-11 кбит/с. Для Европы доступен один GFSK-канал2(Gaussian Frequency-Shift Keying, GFSK) для передачи информации с потоком данных в 50 кбит/с. В Северной Америке из-за ограничений, накладываемых FCC (Federal Communications Commission Федеральная комиссия по электросвязи США), минимальная скорость передачи данных составляет 0,9 кбит/с. Чтобы продлить срок службы батареи/аккумулятора в конечном устройстве и общую пропускную способность сети, сетевой сервер LoRaWAN управляет скоростью передачи данных и радиочастотным выходом каждого конечного устройства по отдельности. Управление осуществляется с помощью алгоритма адаптивной скорости передачи данных (Adaptive Data Rate, ADR). Это имеет решающее значение для высокой производительности сети и позволяет осуществлять ее необходимую масштабируемость. Сеть может быть развернута с минимальными инвестициями в ее инфраструктуру и с той ее емкостью, которая необходима для данного конкретного применения. Если развернуто много шлюзов, то технология ADR будет смещать скорость передачи данных в сторону повышения, что обеспечит масштабирование емкости сети в пределах от 6 до 8 раз.
Что такое концентратор LoRa?
В свете рассматриваемой темы используются оба термина и шлюз, и концентратор. Но они эквивалентны, только если о них идет речь как о компонентах системы LoRa. В других отраслях под определением шлюз и концентратор подразумеваются совершенно разные компоненты.
Насколько успешно система LoRa противостоит внешним радиопомехам?
Модем LoRa на совмещенном GMSK-канале имеет возможность подавления помех до 19,5 дБ (за счет Гаусовой фильтрации). Говоря иными словами, он может принимать и демодулировать сигналы на 19,5 дБ ниже уровня помех или шумов. Этот иммунитет к помехам позволяет использовать простую и недорогую систему с LoRa-моду-ляцией в тех местах, где имеется тяжелая спектральная обстановка, или в гибридных сетях связи. В этих случаях использование технологии LoRa позволяет расширить диапазон покрытия связи, в то время как другие варианты модуляции тут оказываются бессильны.
Какова скорость передачи данных в LoRaWAN?
Протокол LoRaWAN определяет конкретный набор скоростей передачи данных, но оконечный чип или так называемый PHY (интегральная схема, предназначенная для выполнения функций физического уровня сетевой модели OSI) способен предоставить больше вариантов. Так, ИМС SX1272 поддерживает скорости передачи данных от 0,3 до 37,5 кбит/с, а SX1276 от 0,018 до 37,5 кбит/с.
Что такое оконечное устройство системы LoRa или ее точка?
Оконечные устройства (Еnd Points) являются элементами сети системы LoRa, где они выполняют такие функции, как измерение или управление и контроль. Они располагаются удаленно и имеют батарейное питание. Используя сетевой протокол LoRaWAN, эти конечные точки могут быть настроены для связи с шлюзом LoRa (концентратором или базовой станцией) рис. 3.
Что означает адаптивная скорость передачи данных?
Адаптивная скорость передачи данных (ADR), как уже говорилось ранее, представляет собой метод, при котором фактическая скорость передачи данных регулируется таким образом, чтобы обеспечить надежную доставку пакетов, обеспечить оптимальную производительность сети и необходимый масштаб для ее загрузки. Так, например, узлы, более близкие к шлюзу, будут использовать и более высокую скорость передачи данных (следовательно, время активной передачи по радиоканалу сократится), и меньшую выходную мощность. Только самые удаленные узлы будут использовать низкую скорость передачи данных и высокую выходную мощность передатчика. Технология ADR может внести необходимые изменения в сетевую инфраструктуру и компенсировать таким образом различные потери на трассе передачи сигнала. Чтобы увеличить срок службы батареи конечных устройств и общую пропускную способность сети, сетевая инфраструктура LoRa управляет скоростью передачи данных, а радиочастотный выход подстраивается посредством использования технологии ADR для каждого конечного устройства индивидуально.
Какова фактическая мощность антенны передатчика устройств LoRa?
Выходная мощность непосредственно на выходе чипа равна +20 дБм, а на антенне, после согласования и фильтрации, в результате неизбежных потерь она составляет уже +19 дБм ±0,5 дБ. Различные государства и даже их регионы имеют разные правила для максимально допустимой мощности. Чтобы достичь разрешенного максимума и, соответственно, максимальной зоны покрытия, протокол LoRaWAN позволяет установить различные значения выходной мощности, приемлемые для различных мест использования системы.
Какова стоимость использования решений LoRa?
С устройствами LoRa (например, SX1272 или SX1276) может применяться более дешевый кварцевый резонатор. В отличие от этой технологии, в узкополосных системах необходимо использовать дорогой термостатированный кварцевый генератор, так как для них необходимо свести к минимуму дрейф частоты как во время приема, так и во время передачи. Типичный перечень элементов для полного конечного узла в зависимости от объема и особенностей имеет стоимость на уровне $5-10. Увеличение зоны покрытия передачи означает не только более простую сетевую инфраструктуру, но и позволяет снизить общие затраты на ее развертывание, так как отпадает необходимость в ретрансляторах (репитерах). Более низкие уровни энергопотребления дают возможность использовать более дешевые батареи и экономить на обслуживании сети.
Что представляет собой система обнаружения активности канала в LoRa?
Чтобы определить, присутствует сигнал или нет, вместо использования индикатора мощности принятого сигнала (RSSI) в системе LoRa для идентификации присутствия сигнала используется комбинированная адаптивная система обнаружения активности канала (Channel Activity Detection, CAD). Она может различать шум и полезный сигнал LoRa. Процесс функционирования этой системы требует двух символов. Если система обнаружила сигнал, то прерывание по CAD_Detected даст подтверждение, и в этом случае, чтобы получить полезные данные, устройство останется в режиме приема.
Почему выходная мощность моего LoRa-устройства или модуля не в состоянии достичь мощности в 20 дБм?
Спецификация дает значение выходной мощности в +20 дБм непосредственно на выходе микросхемы. Полосовой фильтр и высокочастотный ключ, как и все радиочастотные элементы, характеризуются определенными потерями. После согласования антенны и фильтрации типичная мощность в антенне составит +19 дБм.
Можно ли часто выполнять переключения между режимами модуляции FSK и LoRa?
Да, это не вызовет никаких проблем. Устройство LoRa может переключаться с режима частотной манипуляции FSK в режим модуляции LoRa и наоборот. Операция выполняется с помощью простой записи в SPI-регистр. Такое переключение не окажет никакого заметного влияния на производительность или надежность устройства. Устройство LoRa может быть настроено и без проблем переконфигурировано в части любого из параметров, как это указано в спецификациях.
Что надо делать, если выходная мощность не в состоянии достичь значения в +20 дБм?
Мы советуем предпринять следующие шаги:
- Пожалуйста, убедитесь, что вы правильно подключили вывод (PA_Boost) для установки мощности на 20 дБм. Для каждого диапазона существуют два выходных порта. Один из них мощный (называется PA_boost), другой высокой эффективности (RFO).
- Проверьте конфигурацию в SW. Должны быть правильно настроены три регистра: RegPaConfig, RegOcp и RegPaDac. Это означает, что необходимо выбрать правильный вывод микросхемы для правильного выхода в SW, а затем установить правильное значение, соответствующее необходимому уровню мощности.
- Убедитесь, что разводка вашей платы совпадает с эталонной конструкцией, которую предлагает компания Semtech. Правильная разводка печатной платы крайне важна для достижения максимально возможной выходной мощности.
Как выполнить приемо-сдаточные испытания для проверки качества серийной продукции при массовом производстве системы LoRa?
Чтобы проверить и гарантировать качество продукции в условиях серийного производства, важен контроль трех параметров: допустимое отклонение частоты (точность установки частоты), выходная мощность и чувствительность. Частоту и мощность легко проверить с помощью анализатора спектра. Если ваш генератор сигналов не может генерировать сигнал LoRa, то мы настоятельно советуем проводить испытания чувствительности в режиме FSK.
В чипе имеется только одна радиочастотная цепь, а FSK- и LoRa-демодуляция выполняются в его цифровой части. Потенциально путь прохождения радиочастотного сигнала может быть нарушен, например из-за наличия непропая в цепи постоянного тока, поэтому данную цепь также необходимо проверять. Цифровая часть чипа та, где выполняется собственно модуляция LoRa и FSK, не связана непосредственно со сборкой конечного устройства. Таким образом, тестирование чувствительности в режиме FSK является вполне достаточным для его проверки в ходе приемо-сдаточных испытаний. Цифровая часть и модуляция LoRa протестированы непосредственно при испытаниях на качество самих чипов.
Как правильно выбрать кварцевый резонатор для устройства LoRa?
Как правило, обычный кварцевый резонатор (XTAL) с точностью ±10 ppm является вполне достаточным для большинства систем с шириной полосы рабочих частот 62,5 кГц и выше. Для устройств с рабочей шириной полосы частот меньшей, чем 62,5 кГц, мы настоятельно советуем использовать термокомпенсированные кварцевые генераторы (ТСХО). Для более подробной информации о требованиях к кварцевому резонатору, пожалуйста, обратитесь к спецификации и инструменту для проектирования модемов LoRa и сопутствующих этому расчетов LoRa Modem Calculator, а также к справочному материалу по выбору и применению кварцев в устройствах системы LoRa (AN1200.14 LoRa Modulation: Crystal Oscillator Guidance).
Как измерить точность частоты сигнала в режиме модуляции LoRa для широкополосных LoRa-систем?
Если это необходимо просто для измерения, можно использовать режим синтезатора частоты передатчика (FSTX), как это указано в таблице регистров LoRa, чтобы сгенерировать тональную модуляцию несущей (CW) на основе возможностей конфигурации системы LoRa.
Какая связь между шириной полосы (BW), символьной скоростью (Rs) и скоростью передачи данных (DR)?
В теории, Rs = BW/(2^SF), DR = SF(BW/2^SF)CR, но для того чтобы оценить скорость и необходимое время работы радиоканала передачи данных для различных вариантов конфигурации, мы настоятельно рекомендуем использовать инструмент для проектирования модемов LoRa и выполнения необходимых сопутствующих расчетов LoRa Modem Calculator компании Semtech.
Как сделать правильный выбор рабочей ширины полосы частот LoRa, коэффициента расширения спектра и скорости кодирования?
Протокол LoRaWAN использует, в первую очередь, установку полосы в 125 кГц, но другие запатентованные протоколы могут использовать и другие настройки. Изменение таких параметров, как полоса (Band Width, BW), коэффициент расширения спектра (Spreading Factor, SF) и скорость кодирования (Coding Rate, CR), меняет энергетический баланс линии связи и время работы радиоканала, что оказывает влияние на срок службы батареи по сравнению с компромиссным значением в части используемой ширины рабочей полосы частот. Чтобы сделать оценку в части компромиссных решений, следует использовать инструмент для проектирования модемов LoRa и выполнения необходимых сопутствующих расчетов (LoRa Modem Calculator).
Какие шаги необходимо предпринять для устранения проблемы в том случае, когда два модуля SX127x от разных производителей не в состоянии общаться друг с другом?
Во‑первых, необходимо проверить, не имеет ли место недопустимое смещение центральной частоты, которое может быть вызвано разными частотами кварцевых резонаторов этих двух устройств. Рабочая ширина полосы частот канала BW, центральная частота и скорость передачи данных являются производными от частоты кварцевого генератора. Во‑вторых, проверьте настройки программного обеспечения и прошивки с обеих сторон для значений частоты, ширины полосы, коэффициента расширения спектра и скорости, а также саму структуру пакетов кодирования. Необходимо, чтобы они находились в полном соответствии.
Возможна ли ситуация, когда в режиме LoRa будет получен неправильный пакет даже с включенной функцией проверки контрольной суммы пакета?
В режиме LoRa, даже если контрольная сумма пакета (CRC) будет ошибочна, пакет все равно будет помещен в очередь FIFO. Бит PayloadCrcError должен проверяться перед тем, как из пакета будут извлечены полезные данные. В режиме Explicit Header существует вероятность того, что обнаружение ошибки может привести к возникновению пакета-призрака. В одном случае ошибочный заголовок содержит включенный бит CrсOn и, следовательно, полезные данные будут неверны. Модем отметит эти данные включением бита PlayloadCrcError, в этом случае данные могут быть просто отфильтрованы. В другом случае, если ошибочный заголовок имеет выключенный флаг CrcOn, пакет будет считаться верным. Такие пакеты появляются нечасто, будут иметь случайную длину (извлеченную из ошибочного заголовка) и могут быть легко отфильтрованы на принимающей стороне, например по непредвиденно странному размеру этого пакета.
Можно ли с помощью устройства LoRa отправить или получить пакет полезной нагрузки с неограниченной длиной?
Нет, максимальная длина пакета в режиме LoRa составляет 256 байт.
Можно ли использовать выводы DIOx в режиме LoRa? Должны ли все выводы DIOx быть подключены к микропроцессору?
Когда вы начинаете разработку, проверьте сопоставление DIO как в режиме LoRa, так и в режиме FSK. Вы можете найти информацию о сопоставлении DIO в руководстве режима LoRa для SX127x. DIO работают не так, как более привычные нам (типичные) GPIO. Они имеют несколько специальных сигналов прерываний (или тактовых выходов) для отображения событий и состояния чипсета, которые позволяют создавать FW-разработки более простыми в реализации. Теоретически, вы можете не подключать выводы DIO, а затем, с помощью подтягивающих резисторов, определять статус результата. Однако мы советуем использовать выводы DIO настолько, насколько это возможно для использования функциональности внешних прерываний, которые экономят производительность процессора и дают возможность работать в режиме низкого энергопотребления (когда идет прием или передача данных, процессор может находиться в спящем режиме).
Почему в режиме LoRa имеется два регистра RSSI? В чем их различие?
Оба регистра и RegPktRssiValue, и RegRssiValue полезны в режиме LoRa. RegPktRssiValue относится к уровню RSSI-пакетов, а регистр RegRssiValue похож на тот RSSI, который можно найти при использовании режима FSK (то есть не в режиме LoRa).
LoRa может осуществлять демодуляцию пакета ниже уровня шума (PktRssi-результат). В этом случае значение CurrentRssi будет равно или больше, чем уровень шума. Для получения более подробной информации о том, как вычислить эти два значения RSSI, можно обратиться к Semtech API или последним версиям спецификаций LoRa.
Как можно рассчитать фактическую скорость цифрового потока и время работы радиоканала для системы LoRa?
Следуйте инструкциям, перечисленным ниже:
1. Символьная скорость: Rs= BW/2SF.
2. Время передачи одного символа: Ts= 1/Rs.
3. Длительность преамбулы: Tpreamble= (npreamble+4,25)Tsym,
где npreamble запрограммированная длина преамбулы,
взятая из значений регистров RegPreambleMsbи RegPreambleLsb.
4. Количество символов в полезной нагрузке:
Tpayload = payloadSymNbTsym.
5. Длительность передачи пакета: Tpacket = Tpreamble+Tpayload.
Все это легко вычислить с помощью калькулятора LoRa, который может быть загружен с сайта компании Semtech.
Можно ли длину полезной нагрузки в режиме LoRa для любой скорости передачи установить равной 256 байт?
Устройство LoRa SX127x в режиме LoRa имеет FIFO 256 байт. В теории, для передачи или приема могут быть использованы все 256 байт. Тем не менее при конфигурации системы для работы с низкой скоростью передачи данных время работы радиоканала при 256 байт полезной нагрузки будет очень длительным (несколько секунд или даже больше). С точки зрения устойчивости к замираниям при прохождении сигнала (так называемый фединг), а также в случае высокого уровня помех для радиосвязи в окружающей среде это не всегда приемлемо. Таким образом, такая конфигурация не сможет обеспечить высокую устойчивость в большинстве сложных для радиосвязи сред. Как выход из положения, предполагается, что в случае, если желательно иметь длинную полезную нагрузку с низкой скоростью передачи данных, такой пакет необходимо разбить на несколько более коротких пакетов.
Система LoRa это ячеистая сеть, топология точка к точке или радиальная сеть типа звезда?
Сама модуляция LoRa является низшим физическим уровнем (слоем) PHY, поэтому может быть использована во всех сетевых топологиях. Ячеистая сеть расширяет диапазон сети, но это происходит за счет ее пониженной пропускной способности, она требует дополнительных ресурсов на синхронизацию, а также влечет снижение срока службы батареи из-за синхронизации и постоянных прыжков по частотам. С наличием увеличенного энергетического баланса линии связи и более широких возможностей системы LoRa, для расширения диапазона покрытия нет необходимости в использовании сети ячеистой архитектуры (Mesh), поэтому для LoRaWAN была выбрана радиальная архитектура типа звезда. Она позволила оптимизировать пропускную способность сети, увеличить срок службы батареи и упростить ее развертывание.
Доступны ли для LoRa сетевые протоколы IPv6 или 6LoWPAN?
Да, система LoRa и протоколы IPv6 и 6LoWPAN совместимы. Протоколы компании Actility (как партнера LoRa), а также и других партнеров с поддержкой 6LoWPAN могут использоваться с LoRaWAN.
Какова пропускная способность шлюза LoRa? Сколько узлов могут быть подсоединены к одному шлюзу?
Емкость, в первую очередь, является следствием того числа пакетов, которые могут быть получены в данный момент времени. Один шлюз SX1301 с восемью каналами, используя протокол LoRaWAN, способен получить около 1,5 млн пакетов в день. Таким образом, если ваше приложение отправляет один пакет в час, то один шлюз SX1301 может с успехом обслуживать около 62 500 конечных устройств
Чему равно максимальное значение энергетического выигрыша кодирования в режиме LoRa?
По основам модуляции LoRa рекомендую посмотреть документ «LoRa Modulation Basics» на сайте для разработчиков систем на основе устройств LoRa — https://lora-developers.semtech.com/library/product-documents/
И непосредственно по теме энергетического выигрыша кодирования в режиме LoRa есть исследование от IEEE — https://ieeexplore.ieee.org/document/8903531
Если имеется ввиду энергетический бюджет канала связи, то его максимальное значение достигает 170 дБ у трансиверов серии SX126x, выпускаемых компанией Semtech.