Добрый день всем!


В предыдущей части обсуждалась общая информация и особенности технологии NB-IoT, а здесь предлагаю подробно рассмотреть режимы энергосбережения PSM и eDRX, а также команды, с помощью которых этими режимами можно управлять.



Режимы сохранения энергии в NB-IoT


Устройствам, которые работают от батарейки, важно потреблять как можно меньше энергии. Для этого в NB-IoT предусмотрены два режима энергосбережения: Power Saving Mode, PSM и Extended idle mode DRX, eDRX. Рассмотрим их подробнее.


Режим сохранения энергии PSM, Power Saving Mode


Согласно спецификации 3GPP TS 23.682, Power Saving Mode (PSM) – это режим, аналогичный отключению питания, при котором устройство, тем не менее, остается зарегистрированным в сети. Любопытно, что режим PSM появился в спецификациях 3GPP раньше, чем NB-IoT – в 3GPP Release 12.


Устройство NB-IoT инициирует режим PSM, включая значения двух таймеров в запросы ATTACH REQUEST/TAU REQUEST, посылаемые в процедурах Attach и TAU (TAU, Tracking Area Update — это периодическая процедура, которая используется в LTE для уведомления сети о доступности и местоположении мобильного устройства).


Первый таймер — T3324 Active Timer — определяет время, в течение которого устройство остается доступным со стороны сети после процедуры Attach, TAU или передачи данных.


Второй таймер — T3412 Extended periodic TAU Timer — определяет период процедуры TAU.


Режим PSM и таймеры T3324, T3412 показаны на рис. 1:



Если сеть разрешает использование режима PSM, то значения этих таймеров включаются в ответные сообщения ATTACH ACCEPT/TAU ACCEPT. При определении значений таймеров сеть может принимать во внимание не только значения, запрашиваемые устройством, но и локальную конфигурацию. Другими словами, сеть не обязана подтверждать в точности те значения таймеров, которые запросило устройство. Зато устройство обязано применить значения, полученные от сети.


Длительность нахождения устройства в режиме PSM определяется как разница между Extended periodic TAU Timer и Active Timer (T3412-T3324). Так как значение T3324 Active Timer может быть равно нулю, то максимальное теоретическое время нахождения устройства в режиме PSM равняется максимальному времени T3412 Extended periodic TAU Timer и составляет 413 дней и 8 часов (!!!). Максимальное значение T3324 Active Timer составляет 3 часа и 6 минут (186 минут).


Когда устройство находится в режиме PSM, оно недоступно со стороны сети (для так называемых mobile terminating сервисов).


GSMA рекомендует операторам сотовой связи сохранять и передавать устройству (после выхода последнего из режима PSM) как минимум последний пакет данных длительностью 100 бит.


Устройство может выйти из режима PSM в любое время (например, если устройству нужно срочно передать какие-нибудь данные, как на картинке выше).


Режим сохранения энергии eDRX (Extended idle mode DRX)


eDRX (Extended idle mode DRX) можно считать дополнительным режимом энергосбережения устройства, он появился в спецификациях 3GPP Release 13. DRX означает прерывистый приём (Discontinuous Receiving). Метод прерывистого приема известен в сотовой связи давно, и заключается в том, что для сохранения энергии приемный тракт устройства включается периодически в определенные промежутки времени, а большую часть времени отключен. Сеть «знает» об этом и посылает сигналы вызова (paging) только в «правильные» моменты времени. Расширенный режим прерывистого приёма (eDRX) позволяет существенно увеличить период времени, когда приемный тракт устройства выключен. Согласно спецификации 3GPP TS 23.682, период прерывистого приема eDRX в режиме NB-IoT составляет от 20,48 до 10485,76 секунды (10485 секунд — это почти 3 часа).


Сравнение «старого» DRX и «нового» eDRX представлено на рис. 2:



Устройство NB-IoT активирует режим eDRX, передавая значение длительности периода eDRX в запросах ATTACH REQUEST/TAU REQUEST, посылаемых в процедурах Attach и TAU. Если сеть разрешает использование режима eDRX, то значение периода eDRX включается в ответные сообщения ATTACH ACCEPT/TAU ACCEPT. Сеть не обязана подтверждать запрошенное устройством значение периода eDRX, а вот устройство обязано применить значение, переданное сетью.


Как и в случае с PSM, при использовании режима eDRX GSMA рекомендует операторам сохранять и передавать устройству как минимум последний пакет данных длительностью 100 бит. Впрочем, как следует из опроса, проведенного ассоциацией GSM, операторы намерены сохранять намного больше нисходящих данных (от приложения к устройству).


Режим eDRX может применяться одновременно с режимом PSM.


Режимы PSM и eDRX входят в число минимальных требований к сетям NB-IoT, рекомендованных GSMA.


Команды управления устройством NB-IoT (AT-команды)


Стандартные AT-команды описываются в спецификации 3GPP TS 27.007. Всего команд очень много, здесь рассмотрим только те, с помощью которых можно управлять режимами энергосбережения устройства NB-IoT. Кроме того, разные производители могут немного по-своему интерпретировать стандартные или изобретать новые команды. Поэтому для большей определенности посмотрим команды NB-IoT-модуля N21.


Команда управления режимом PSM


Для задания параметров режима PSM используется команда AT+CPSMS:


AT+CPSMS=[mode],[Requested_Periodic-RAU],[Requested_GPRS-READY-timer],[Requested_Periodic-TAU],[Requested_Active-Time]

Параметры команды AT+CPSMS:


  • mode (0 — PSM выключен, 1 — PSM включен)
  • Requested_Periodic-RAU, T3312 (применим к 2G/3G, в NB-IoT не используется)
  • Requested_GPRS-READY-timer, T3314 (применим к 2G/3G, в NB-IoT не используется)
  • Requested_Periodic-TAU, T3412 (применим к LTE, используется в NB-IoT)
  • Requested_Active-Time, T3324 (применим к 2G/3G/LTE, используется в NB-IoT)

Таким образом, для настройки параметров PSM в режиме NB-IoT используются три параметра: mode, Requested_Periodic-TAU и Requested_Active-Time.


Запрашиваемая длительность нахождения устройства в режиме PSM — это разница между значениями Requested_Periodic-TAU и Requested_Active-Time.


Кодирование значения Requested_Active-Time (T3324)


Requested_Active-Time кодируется в виде последовательности, состоящей из 8 бит, где старшие биты 8, 7, 6 представляют собой множитель, биты 5, 4, 3, 2, 1 – значение.


Таблица 1. Множители Requested_Active-Time (T3324)
Бит 8 Бит 7 Бит 6 Множитель
0 0 0 2 секунды
0 0 1 1 минута
0 1 0 6 минут (1/10 часа)
1 1 1 Таймер деактивирован
Другие значения должны быть интерпретированы как 1 минута (в текущей версии протокола)

Пример кодирования значения Requested_Active-Time (T3324):
00000101 — Requested_Active-Time
000 – множитель, 2 секунды,
00101 – значение, 5,
5 х 2 секунды = 10 секунд — запрашиваемое значение Requested_Active-Time.


Максимальное значение Requested_Active-Time (T3324) составляет 3 часа и 6 минут (186 минут).


Кодирование значения Requested_Periodic-TAU (T3412)


Requested_Periodic-TAU кодируется в виде последовательности, состоящей из 8 бит, где старшие биты 8, 7, 6 представляют собой множитель, младшие биты 5, 4, 3, 2, 1 – значение.


Таблица 2. Множители Requested_Periodic-TAU (T3412)
Бит 8 Бит 7 Бит 6 Множитель
0 0 0 10 минут
0 0 1 1 час
0 1 0 10 часов
0 1 1 2 секунды
1 0 0 30 секунд
1 0 1 1 минута
1 1 0 320 часов. Примечание: данное значение применимо только к таймерам T3312 extended и T3412 extended (см. TS 24.301). Если оно принято в сообщении с включенной проверкой целостности, значение должно быть интерпретировано как 320 часов. В противном случае оно должно быть интерпретировано как 1 час.
1 1 1 Таймер деактивирован

Пример кодирования значения Requested_Periodic-TAU (T3412):
00100001 — Requested_Periodic-TAU
001 – множитель, 1 час,
00010 – значение, 2,
2 х 1 час = 2 часа — запрашиваемое значение Requested_Periodic-TAU


Максимальное значение таймера Requested_Periodic-TAU T3412 составляет 9920 часов или 413 дней и 8 часов.


Примеры команды AT+CPSMS


AT+CPSMS=0    // Режим PSM выключен

AT+CPSMS=1,"","","00100001","00100011"    // Режим PSM включен, Requested_Periodic-TAU: 2 часа, Requested_Active-Time: 3 минуты, длительность PSM: 1 час и 57 минут

Команда управления режимом eDRX


Для задания параметров режима eDRX используется команда AT+CEDRXS:


AT+CEDRXS=[mode],[AcT-type],[Requested_eDRX_value]

Параметры команды AT+CEDRXS:


1. mode — режим:


  • 0 — режим eDRX выключен
  • 1 — режим eDRX включен
  • 2 — режим eDRX включен, разрешены незапрашиваемые сообщения (URC)

2. AcT-type — технология радиодоступа:


  • 1 – EC-GSM-IoT
  • 2 – GSM
  • 3 – 3G
  • 4 – LTE, LTE-M
  • 5 – NB-IoT

3. Requested_eDRX_value — длительность периода eDRX. Значение кодируется в виде двоичной последовательности, состоящей из 4-х бит. Согласно спецификации 3GPP TS 23.682, период eDRX в режиме NB-IoT находится в диапазоне от 20,48 до 10485,76 секунд. Значения Requested_eDRX_value в режиме NB-IoT приведены в таблице 3.


Таблица 3. Длительность периода eDRX
Requested_eDRX_value в режиме NB-IoT Длительность периода eDRX, с
0010 20,48
0011 40,96
0100 20,48
0101 81,92
0110 20,48
0111 20,48
1000 20,48
1001 163,84
1010 327,68
1011 655,36
1100 1310,72
1101 2621,44
1110 5242,88
1111 10485,76


Примеры команды AT+CEDRXS


AT+CEDRXS=0    // режим eDRX выключен

AT+CEDRXS=1,5,"0010"    // режим eDRX включен, технология радиодоступа - NB-IoT, длительность периода eDRX - 20,48 секунды

P.S. Статья не претендует на абсолютную истину и может содержать неточности. Если вы заметили неточности, хотите поделиться инсайдерской информацией или просто высказать своё мнение – добро пожаловать в комментарии!


Предыдущая часть: NB-IoT, Narrow Band Internet of Things. Общая информация и особенности технологии.

Комментарии (3)


  1. BurlakovSG
    16.01.2019 18:14

    Где Вы брали модули? Сколько стоит плата N20 DEMO?


    1. avan Автор
      16.01.2019 20:31

      У нас есть партнер — производитель модулей (Neoway). Мы — их официальный дистрибьютор в РФ. По стоимости платы я завтра уточню — напишу!


  1. ZAQWERTY
    17.01.2019 11:10

    Как всё запутано с этими таймерами! Не могли разработчики стандарта придумать что-то попроще!?