TWD | USD

如何啟用 NB-IoT 和 Cat-M 的省電模式,並達到預期的能源消耗

作者:Markus Pihl, Vanja Samuelsson

提高物聯網 (IoT) 裝置的電池續航力,是低功率廣域網路 (LPWAN) 技術的關鍵目標之一。因此,省電特點在蜂巢式 LPWAN 技術、NB-IoT (Cat-NB1 與 Cat-NB2) 以及 Cat-M (LTE-M,又稱為 Cat M1) 中是不可或缺的要素。但是該如何發揮這些特點?在電流消耗方面又能觀察到哪些影響?

本文的目標是回答這些問題,探究省電特點的定義、計時器及其計算原理,以及計時器的啟用命令。所有內容都會附上電流消耗分佈圖,以了解對能源消耗的影響。

NB-IoT 及 Cat-M 的省電模式

NB-IoT 及 Cat-M 技術有兩種必要的省電特點:省電模式 (PSM) 和增強型非連續接收 (eDRX)。

PSM 模式能讓裝置設定睡眠及作用計時器並轉送到網路,即週期性追蹤區域更新 (TAU) (T3412) 和作用時間 (T3324) (圖 1)。網路接受後,會依照設定的時間讓裝置在系統中維持登錄狀態;如果裝置在這段時間內喚醒,則不需要進行重新連接程序。分離及重新連接程序可能會耗用大量能源。雖然睡眠期間無法與裝置聯絡,但有計時器,所以網路會得知裝置的下次喚醒時間,以及裝置為了接收呼叫資訊而維持作用的時間長度。裝置的深度睡眠模式最長可設定為 14 天。

現今 LTE 網路中已經有一般的 DRX,而 eDRX 則可延長其時間。在此機制下,裝置在作用時間階段內會有更長的時間監聽網路。對許多 IoT 裝置而言,在幾秒鐘或更長時間內聯絡不上是可以接受的。如此一來即可降低功耗,但相較於使用 PSM 的情況,裝置仍可聯絡上。相較之下,其降低功耗的程度比 PSM 還要少。eDRX 可以透過計時器的呼叫週期長度 (PCL) 及呼叫時間窗 (PTW) 進行配置 (圖 1)。

在蜂巢模組中設定 PSM 及 eDRX 計時器的命令,其定義詳見 3GPP 技術規格 TS 27.007,如下所示:

AT+CPSMS=[<mode>,,[, <RequestedPeriodicTAU>[, <RequestedActiveTime>]]]

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

PTW 是例外情形。本文將介紹 Thales 所制定的 PTW 命令,而且只有作為受測裝置 (DUT) 的 Thales Cinterion® 模組適用該命令:

AT^SEDRXS=[<mode>[, <AcT-type>[, <Requested_eDRX_value>][, <Requested_Paging_time_window>]]]

另外,本文還會介紹所謂的暫停模式,這是 Thales 為 Cinterion 模組提供的另一項專屬省電特點,可進一步讓模組進入最低能源消耗狀態。這個命令只需要設定一次。

AT^SCFG="MEopMode/PowerMgmt/Suspend",1

省電特點、PSM 計時器以及 eDRX 計時器的示意圖 (按此放大)圖 1:省電特點、PSM 計時器 (週期性 TAU 和作用時間),以及 eDRX 計時器 (PCL 及 PTW)。(圖片來源:Thales)

設定

為了視覺化呈現低功率模式,使用 Thales 兩組不同的 Cinterion 模組,並搭配 QoitechOtii 功率分析儀。

針對 PSM 計時器,則使用 Thales 的 DevKit ENS22-E,其出廠時已焊接到 NB-IoT 專屬模組上。在 NB-IoT 即時網路 (漫遊) 中,已使用全球通用的 MNO SIM 卡完成相關測量。

針對 eDRX 計時器,則使用 Cinterion® EMS31,這是一款位於 LGA DevKit 上的 Cat-M 專屬模組。由於在德國執行測試時沒有 Cat-M 網路,此模組是透過天線 (非有線) 連線到 Amarisoft 的 Cat-M 網路模擬器。

Qoitech 的 Otii 是多面向的功率分析儀,在此例中用於三種用途:

  • 進行視覺化及功率分佈分析
  • 控制無線電模組 (透過 GPIO 引腳)
  • 進行功率測量及同步 UART 記錄 (透過 RX/TX 引腳及主電源)

佈線是根據表 1 進行。

Thales 的 LGA 開發套件搭配蜂巢模組以及 Qoitech 的 Otii 圖片圖 2:測量設定:Thales 的 LGA 開發套件搭配蜂巢模組,以及 Qoitech 的 Otii。(圖片來源:Thales)

LGA DevKit 引腳 Otii 引腳
On GP02
RTS0 GP01
TXD0 TX
RXD0 RX
GND DGND
VUSB +5V
PWR(A) +
GND -

表 1:圖 2 設定中的引腳連線。

針對 PSM 測量,Cinterion ENS22-E NB-IoT 模組的電壓範圍為 2.8 V 至 4.2 V,其以 3.6 V 進行供電 (圖 3),能讓結果和模組硬體介面描述的電流消耗額定值相當。GPO 的數位電壓位準需要設定為 3 V (圖 3)。

Otii 專案 SUPPLY (電源) 的設定圖圖 3:Otii 的專案 SUPPLY (電源) 設定。(圖片來源:Thales)

VUSB => +5 V - 需要此供應電壓對 LGA DevKit 供電。注意!請勿額外透過 USB 對 DevKit 供電。

因此,電路板左下方的 DevKit 開關設定為左側 PWR – EXT,以及左側 ASC0 – RS232 (圖 4)。

DevKit 開關設定的圖片圖 4:DevKit 開關設定。(圖片來源:Thales)

根據測量設定,已使用 Otii 應用中的 UART 命令列。此功能需要在 Otii 專案設定的 LOGS (記錄) 區段中啟用。

在預設情況下,序列介面 ASC0 (RX0/TX0 配線) 會以 115200 鮑率運作 (圖 5)。

Otii 專案 LOGS (記錄) 的設定圖圖 5:Otii 專案 LOGS (記錄) 設定。(圖片來源:Thales)

如何計算 PSM 計時器?

PSM 方面,已使用 AT+CPSMS 命令來設定要求的週期性 TAU (T3412) 週期,以及要求的作用時間 (T3324)。此值需要以 8 位元二進位格式輸入,其中前 3 個位元代表 5 位元二進位數字的基礎乘數。這是 3GPP 中的規定,相關資訊請見 TS 24.008 規格 (圖 6)。

3GPP TS 24.008 中的週期性 TAU 及作用時間計算示意圖圖 6:3GPP TS 24.008 中的週期性 TAU 及作用時間計算。(圖片來源:Thales)

此模組當作應用範例時,會設定為每 7 分鐘向網路傳送一次追蹤區域更新訊息。這表示,週期性 TAU 會設定為 7 分鐘,即 420 秒。

此 7 分鐘期間,可以搭配使用 1 分鐘 (101) 乘數與 7 (00111) 值,或是 30 秒 (100) 乘數與二進位 14 (01110) 值 (圖 6)。

作用時間會依此運作,但會使用不同的基值。例如,10 秒的作用時間會使用 000 和 00101 值,前者作為 2 秒基礎乘數,後者等於 5,因此產生出以下命令:

at+cpsms=1,,,10001110,00000101

如何設定 PSM 計時器?

啟用 Devkit 的電源 (5 V,請見圖 7) 以及模組電源 (3.6 V,請見圖 7) 後,開啟 GPO2 (圖 7) 約 2 秒並再次關閉,即可啟動。

Otii 電源開關圖片圖 7:Otii 電源開關。(圖片來源:Thales)

模組將會啟動,並在 UART 記錄中使用以下非請求結果碼 (URC) 來指示:

\sHI2115-ssb-codeloaderl\e\sHI2115-codeloader&\e

^SYSSTART

現在可以將 AT 命令傳送給模組,以 1) 啟用暫停模式,2) 啟用登錄狀態顯示,以及 3) 檢查並設定 PSM 計時器:

  1. 如前所述,僅需傳送配置命令一次,即可啟用 Thales 專屬省電特點。此設定為非揮發性,並會一直維持到發生變更為止。

    at^scfg="MEOpMode/PowerMgmt/Suspend","1"

    ^SCFG: "MEOpMode/PowerMgmt/Suspend","1"

    OK

    +CIEV: suspendAvailable,1

    模組會使用 +CIEV URC,宣告暫停功能現已可用。如果暫停已啟用,則不會有 suspendAvailable URC。

  2. 在傳送「at+cereg=5」之後,模組會透過 URC 通知使用者模組登錄狀態的變動。此設定為揮發性,必須在重新啟動後重複設定。如果模組已經註冊,則可能只會回應 OK。在此情況下,可以傳送「at+cereg?」來請求狀態。
    複製
    at+cereg=5
    OK
     
    at+cereg?
    +CEREG: 5,5,C9F9,00323333,9,,,00001111,10100111
              |   |    |      |      |        |_Periodic-TAU(T3412): 10m
              |   |    |      |      |__________Active-Time (T3324): 30s
              |   |    |      |_________________Act:E-UTRAN(NB-S1 mode)
              |   |    |________________________CI - cell ID
              |   |_____________________________TAC - Tracking Area Code
              |_________________________________stat:5 registered roaming
    

    在上述範例中,模組在漫遊模式下登錄,並顯示網路目前配置的 PSM 值;每 10 分鐘進行 TAU 一次,作用時間為 30 秒。

  3. 現在可以使用「at+cpsms」命令來設定請求的值。此命令會觸發模組,向網路傳送追蹤區域更新 (TAU) 訊息。在網路的回應訊息 (追蹤區域更新接受) 中,模組會接收必須執行的值。也就是說,網路會決定要接收哪些值。這些值可望與請求的值相同,但無法保證。實際情況取決於行動網路供應商而定,以及供應商是否允許請求的值,或以其自己的值覆蓋這些值。供應商的值有時為固定值。
複製at+cpsms=1,,,10001110,00000101
OK
 
at+cereg?
+CEREG: 5,5,C9F9,00323333,9,,,00001111,10010100
          |   |    |      |      |        |_Periodic-TAU(T3412):  7m
          |   |    |      |      |__________Active-Time (T3324): 30s
          |   |    |      |_________________Act:E-UTRAN(NB-S1 mode)
          |   |    |________________________CI - cell ID
          |   |_____________________________TAC - Tracking Area Code
          |_________________________________stat:5 registered roaming
 
+CIEV: suspendReady,0
 
+CIEV: suspendReady,1

模組會使用 suspendReady URC 指示何時能夠進入暫停模式。只要出現「suspendReady,1」指示,即可設定 RTS0 (即圖 7 中的 GPO1) 讓模組進入暫停模式 5 秒 (5 秒為預設值且可變更,請參閱模組的 AT 規格文件)。

PSM 計時器對能源消耗有何影響?

圖 8 的測量值可供參考,其中顯示 Cinterion ENS22-E NB-IoT 在預設模式下的電流分佈,其中 PSM、eDRX 或暫停模式皆未啟用。

電流消耗分佈當作參考用測量值示意圖 (按此放大)圖 8:未啟用省電模式下的電流消耗分佈當作參考用測量值。(圖片來源:Thales)

標記區域中預期的平均電流消耗量約為 16 mA。

在啟用 PSM 計時器的情況下,如本例中的週期性 TAU 為 7 分鐘,作用時間為 10 秒,當網路接受這些計時器之後,電流消耗量會降至 13 mA 的平均值 (圖 9)。

請注意,網路可能已忽視 PSM 計時器的請求,改而建議使用其他計時器。一般來說,不同 MNO 及不同網路所允許的計時器組截然不同,因此在部署 IoT 裝置前需要了解這一點。

啟用 PSM 下的電流消耗分佈圖片 (按此放大)圖 9:啟用 PSM 下的電流消耗分佈。(圖片來源:Thales)

如果設定為暫停模式,模組會指出已準備好使用非請求結果碼 (URC) 進入暫停狀態。在切換 RTS 訊號之後,如本例中在 Otii 內設定為 GPO1 (圖 7),模組就會進入暫停模式,且平均功耗約為 3 µA (圖 10)。

啟用暫停模式時的電流消耗分佈圖片 (按此放大)圖 10:啟用暫停模式時的電流消耗分佈。(圖片來源:Thales)

如何計算 eDRX 計時器?

設定 eDRX 用的計時器值,會以相當直覺的方法進行計算。每種無線電接取技術都有其適用的計時器,如圖 11 的表格所示。

3GPP TS 24.008 中 eDRX 計時器的定義示意圖圖 11:3GPP TS 24.008 中 eDRX 計時器的定義。(圖片來源:Thales)

如何設定 eDRX 計時器?

可透過 LGA DevKit 上的 Cinterion EMS31 Cat-M 專屬模組,展示使用 eDRX 所帶來的影響。這款 LTE-M 模組的電源供應範圍介於 3.2 V 至 5.5 V。Otii 會以 3.8 V 對其進行供電。必須在 Otii 應用程式的專案設定中調整主電壓 (圖 3)。

在模組啟動後 (由 ^SYSSTART URC 指示),PSM 計時器必須增加,以延長作用階段 (5 分鐘),讓 eDRX 的影響更為明顯 [(設定 at+cpsms=1,,,00000110,00100101)、停用 eDRX (at+cedrxs=0),並以 at+cereg=4 來啟用登錄狀態顯示]。

複製
^SYSSTART
 
+CIEV: prov,1,sbmjp
 
at+cedrxs=0
OK
 
at+cpsms=1,,,00000110,00100101
OK
 
at+cereg=4
OK 

要檢查是否已依照請求停用 eDRX,請使用 at+cedrxrdp 命令,來讀取目前的動態 eDRX 參數。

複製
at+cedrxrdp
 
+CEDRXRDP: 0

在模組登錄到網路之後,應該會立即收到相關的 URC,其中顯示登錄狀態以及 5 分鐘的作用時間。

複製
+CEREG: 1,"0001","01A2D004",7,,,"00100101","00000110"
      |         |_TAU(T3412):  60min
                                   |_____Active-Time(T3324): 5min

使用 Otii 應用程式進行測量時,在作用期間每 1.25 ms 就能看到連續無線電監聽器峰值,如圖 10 所示,位於 1 分鐘時間戳記附近的區域。

現在,使用 3GPP 命令 at+cedrxs 或 Thales 專屬命令 at^sedrxs,即可傳送 eDRX 啟用命令。3GPP 命令的缺點是,無法設定呼叫時間窗 (PTW),但能使用 Thales Cinterion 模組上實作的專用 AT 命令進行設定。

根據圖 10 中的表格,Cat-M 中的 eDRX 值設為 20.48 秒 (「0010」),呼叫時間窗為 5.12 秒 (「0011」)。

複製
at^sedrxs=2,4,0010,0011
 
OK
 
+CEDRXP: 4,"0010","0010","0011"

模組會使用 +CEDRXP URC 向使用者通知 eDRX 值的變動,並顯示請求的 eDRX (PCL) 值「0010」、由網路設定且也必須由模組使用的值 (第 2 個「0010」),以及 PTW (「0011」)。

模組需要一些時間來適應變更的週期,最終會展現圖 12 所示的 eDRX 行為。

eDRX 計時器對能源消耗有何影響?

eDRX 計時器只會在作用階段中產生影響。配置的作用階段越短,eDRX 的影響就越小。

eDRX 非常適合需要很長時間間隔甚至一直能與網路保持聯繫的裝置。在這段時間內,裝置的接收器部分只會在一段指定的時間間隔 (PTW) 內啟用,而每個 eDRX (PCL) 週期都會重複這段時間。由於計時器的設定,行動網路會得知裝置會在哪一段時間監聽呼叫,並且只會在這段時間傳送呼叫給裝置。如此亦可節省網路 (eNodeB) 端的資源。

預設為 PTW,設定為 5 秒且未啟用 eDRX (圖 12)。在 eDRX 啟用後,平均電流消耗量立刻從 3 mA 降至 2 mA。

呼叫時間窗設為 5 秒作為參考值且未啟用 eDRX 的圖片 (按此放大)圖 12:呼叫時間窗設為 5 秒作為參考值,且未啟用 eDRX,而右側則是相同的 PWT,但啟用 eDRX,如標示。(圖片來源:Thales)

總結

根據 IoT 裝置的使用情境以及可用的網路技術,可以使用不同的省電特點來延長裝置的電池續航力。

在使用 PSM 的情況下,裝置的深度睡眠模式最長可設定為 14 天。

根據設定的時間間隔,裝置會定期喚醒、連線到網路,並可選擇傳送資料。在進入連線狀態後,裝置很快會進入作用但閒置的狀態,並在作用期間監聽傳入的資料。在這段作用時間內,可利用 eDRX 來配置裝置啟用接收器的時槽。

所有的設定值都是與網路一同配置。網路一律會知道裝置能在何時接收資料,以及可接收的時間長度。

在 Cat-M 中運作的裝置將比 NB-IoT 裝置需要更多的電力。裝置的睡眠時間越長,就能節省越多的能源。如果裝置監聽傳入資料的時槽越短且越少,耗電量最佳化的程度就越高。

因此,在最佳情況下,當 NB-IoT 裝置具有最大 PSM 及最短作用時間,且只有一個監聽峰值 (最小 PTW) 時,就是電力最佳化程度最高的作法。

聲明:各作者及/或論壇參與者於本網站所發表之意見、理念和觀點,概不反映 Digi-Key Electronics 的意見、理念和觀點,亦非 Digi-Key Electronics 的正式原則。

關於作者

Markus Pihl

Markus Pihl is a Senior Application Engineer at Thales with an Engineering degree in Telecommunication Technologies. He has 20 years of experience in the telecom industry with a focus on mobile networks. The last 4 years he has moved to work in depth with mobile devices, and in specific the cellular LPWAN Cinterion modules for Thales DIS.

Vanja Samuelsson

Vanja Samuelsson is the Founder of Qoitech. Her background is in product development for the telecom industry and most recently research and innovation on 5G, cellular IoT connectivity and low power IoT at Sony. Vanja has a Master of Science degree and a PhD in Electrical Engineering from Lund University, Sweden.