0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

4G模組PSM+超低功耗,手把手教你!

青山老竹農(nóng) ? 來源:jf_82863998 ? 作者:jf_82863998 ? 2024-10-15 07:31 ? 次閱讀

?合宙4G-Cat.1模組支持三種功耗模式:

  • 常規(guī)模式
  • 低功耗模式
  • PSM+模式

用戶可以根據(jù)不同的應(yīng)用場景,按需選擇不同的合宙4G-Cat.1模組功耗模式,以及三種功耗模式之間的相互轉(zhuǎn)換。

合宙4G-Cat.1模組優(yōu)異的低功耗表現(xiàn),既有來自硬件設(shè)計的加持,也有軟件協(xié)議算法的幫助。除實驗室數(shù)據(jù)外, 合宙更關(guān)注實網(wǎng)環(huán)境下的功耗表現(xiàn), 呈現(xiàn)給用戶的效果更多以實網(wǎng)在線表現(xiàn)為準(zhǔn)。

圖片?

圖片?

很多客戶的實際應(yīng)用場景,是不需要和服務(wù)器保持長連接的,一天甚至一周上傳一兩次數(shù)據(jù),就能滿足實際的項目需求了。

如果用合宙推薦的第二種低功耗模式,有些大材小用,針對這種情況——可以使用PSM+模式。

今天,帶大家過過PSM+模式下——LuatOS開發(fā)代碼。

一、主要硬件準(zhǔn)備

這里大致說下需要準(zhǔn)備的硬件條件:

  • 合宙Air780E全I(xiàn)O開發(fā)板一塊:
    測試前需要將開發(fā)板上端USB下方的C2處ESD吹掉,要不會有大約20微安的漏電流。
  • 支持?jǐn)?shù)據(jù)傳輸?shù)腢SB線一根;
  • 一個可調(diào)電源
    可調(diào)電源最好是能精確的捕捉到μA電流的電源,本次筆者使用的是合宙自研的Air9000P手持可調(diào)電源。

圖片?

二、PSM+超低功耗示例源碼下載

本文示例中用到的代碼,可以在這里gitee.com/openLuat/LuatOS-Air780E/tree/master/demo/pm

需要用的代碼在“780E_Lowpower”文件夾目錄下:

圖片?

如果您手上是其他模組,如Air780EP或者Air780EPS,則可以查看Air780EP/Air780EPS對應(yīng)倉庫下的 pm文件夾 。

三、PSM+超低功耗示例源碼

接下來,我們開始進(jìn)行PSM+超低功耗示例源碼的大致講解。

3.1 main.lua

LuatOS中,代碼的起始位置是從main.lua第一行開始的,本文使用的是 PSM+模式 ,所以打開第12行的注釋,屏蔽第11行的代碼。

圖片?

3.2 psm_plus.lua

1)設(shè)置服務(wù)器

進(jìn)入psm_plus.lua可以看到:

圖片?

在這里,改成用戶自己使用的服務(wù)器的IP/域名以及端口號;如果僅作測試,也可以使用合宙提供的測試服務(wù)器。

進(jìn)入后選擇打開TCP/UDP,根據(jù)用戶服務(wù)器類型自行選擇。

圖片?

打開后,如下圖紅框所示位置即是IP和端口號:

圖片?

local period = 36060*1000 --3小時喚醒一次

這一句是喚醒時間的設(shè)置,時間設(shè)置喚醒的時間單位為ms。所以如果你有更長時間的喚醒需求,如一天喚醒一次,可以改動最前面的3為24。

特別提醒:

這個TCP服務(wù)器僅能當(dāng)作測試來用,刷新一下網(wǎng)頁或者你電腦網(wǎng)絡(luò)有波動斷網(wǎng)一下,就會斷開,重新打開TCP端口就會變。

2)獲取喚醒原因

圖片?

上面兩句是獲取了一下當(dāng)前喚醒的原因,是正常開機(jī),還是設(shè)置的定時器啟動,或是串口/AGPIO喚醒。

3)testTask函數(shù)

直接拉到psm_plus.lua最后一行;其實上面所有的函數(shù)都是基于最后一行的task跑的:

圖片?

本句的意思是啟動一個task,在task里運行第14行的testTask函數(shù),并傳入了d1Name這個變量,傳入了netCB這個回調(diào)函數(shù),以及給testTask傳入了server_ip和server_port這兩個參數(shù)

接下來,我們看看testTask這個函數(shù)的前一小段:

圖片?

先判斷了一下當(dāng)前喚醒是什么原因喚醒的,并將對應(yīng)原因賦值給了一個叫做txData的變量,并且判斷了下是上電開機(jī)還是休眠喚醒。

如果是休眠喚醒,則主動退出飛行模式(因為模組在休眠的時候會進(jìn)入飛行模式,減小因為可能的網(wǎng)絡(luò)波動引起的功耗增大等異常)。

下面這一段就是與TCP服務(wù)器鏈接的全過程,如果鏈接失敗會重連3次:

圖片?

圖片?

接下來這段配置了uart1的波特率為9600,方便外部串口設(shè)備從串口喚醒模組(注:9600狀態(tài)下喚醒模組比較方便,如果是115200或其他波特率,可能需要發(fā)送多次數(shù)據(jù)才能走串口喚醒模組)。

如果不影響產(chǎn)品功能,需要將所有AGPIO在休眠狀態(tài)下的高電平輸出關(guān)閉,可以進(jìn)一步節(jié)省耗電,比如本示例中對GPIO32的操作就是這一原因。

關(guān)于AGPIO和GPIO對應(yīng)編號,如下圖所示:

圖片?

圖片?

最后這段代碼,啟動了深度休眠也就是PSM+模式的定時器:

圖片?

后面的 period參數(shù), 就是腳本最上面我們設(shè)置的定時休眠喚醒時間;后面進(jìn)入飛行模式,是避免因為基站網(wǎng)絡(luò)波動導(dǎo)致的異常功耗;然后,才真正進(jìn)入了PSM+模式。如果進(jìn)入不成功,15秒后會重啟模組。

  • 如果是串口喚醒,那么服務(wù)器會收到”uart1 wakeup“的數(shù)據(jù);
  • 如果是GPIO喚醒,那么服務(wù)器會收到"pad wakeup";
  • 如果是定時器喚醒,那么服務(wù)器會收到"timer wakeup";
  • 如果當(dāng)前是上電開機(jī)去鏈接服務(wù)器,那么服務(wù)器會收到"normal wakeup"。

在沒有數(shù)據(jù)發(fā)送的時候,模組實測待機(jī)功耗為下圖的3μA:

圖片?

今天的內(nèi)容就分享到這里啦,你學(xué)會了嗎?

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 4G
    4G
    +關(guān)注

    關(guān)注

    15

    文章

    5492

    瀏覽量

    118704
  • 超低功耗
    +關(guān)注

    關(guān)注

    5

    文章

    178

    瀏覽量

    18405
  • 模組
    +關(guān)注

    關(guān)注

    6

    文章

    1406

    瀏覽量

    30213
  • PSM
    PSM
    +關(guān)注

    關(guān)注

    1

    文章

    41

    瀏覽量

    13372
收藏 人收藏

    評論

    相關(guān)推薦

    Air780EP低功耗4G模組AT開發(fā):阿里云應(yīng)用

    Air780EP是合宙推出的一款低功耗4G全網(wǎng)通模組,兼容模組行業(yè)1618經(jīng)典封裝,支持OpenCPU開發(fā)及全功能數(shù)傳AT開發(fā),可廣泛應(yīng)用于多樣化的物聯(lián)網(wǎng)終端。
    的頭像 發(fā)表于 10-25 17:28 ?161次閱讀
    Air780EP<b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模組</b>AT開發(fā):阿里云應(yīng)用

    干貨篇:低功耗4G模組Air780E的串口通信

    ? 今天我們來講解低功耗4G模組Air780E的串口通信的基本用法,小伙伴們,學(xué)起來吧!
    的頭像 發(fā)表于 10-05 14:38 ?389次閱讀
    干貨篇:<b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模組</b>Air780E的串口通信

    合宙低功耗4G模組Air780EX——硬件設(shè)計手冊02

    在上文我們介紹了合宙低功耗4G模組Air780EX的主要性能和應(yīng)用接口, 本文我們將繼續(xù)介紹Air780EX的射頻接口,電氣特性,實網(wǎng)功耗數(shù)據(jù),結(jié)構(gòu)規(guī)格等內(nèi)容。
    的頭像 發(fā)表于 09-10 16:46 ?471次閱讀
    合宙<b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模組</b>Air780EX——硬件設(shè)計手冊02

    合宙低功耗4G模組Air780EP——硬件設(shè)計02

    合宙低功耗4G模組Air780EP——硬件設(shè)計
    的頭像 發(fā)表于 09-03 15:07 ?519次閱讀
    合宙<b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模組</b>Air780EP——硬件設(shè)計02

    合宙低功耗4G模組Air780E——產(chǎn)品規(guī)格書

    合宙低功耗4G模組Air780E的規(guī)格信息速覽
    的頭像 發(fā)表于 09-02 18:04 ?786次閱讀
    合宙<b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模組</b>Air780E——產(chǎn)品規(guī)格書

    合宙低功耗4G模組Air780EP——硬件設(shè)計01

    Air780EP是一款合宙低功耗LTECat1無線通信模組。 支持FDD-LTE/TDD-LTE的4G遠(yuǎn)距離無線 傳輸技術(shù)。 另外,模組提供了USB/UART/I2C等通用接口滿足Io
    的頭像 發(fā)表于 09-02 16:47 ?1474次閱讀
    合宙<b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模組</b>Air780EP——硬件設(shè)計01

    合宙低功耗4G模組Air780EP——產(chǎn)品規(guī)格書

    合宙低功耗4G模組Air780EP——產(chǎn)品規(guī)格信息介紹
    的頭像 發(fā)表于 08-30 18:07 ?1247次閱讀
    合宙<b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模組</b>Air780EP——產(chǎn)品規(guī)格書

    合宙低功耗4G模組Air700EAQ——開發(fā)板使用說明

    合宙低功耗4G模組Air700EAQ——開發(fā)板使用說明
    的頭像 發(fā)表于 08-30 17:14 ?998次閱讀
    合宙<b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模組</b>Air700EAQ——開發(fā)板使用說明

    合宙低功耗4G模組Air780EQ——硬件設(shè)計手冊01

    合宙低功耗4G模組Air780EQ的硬件設(shè)計介紹
    的頭像 發(fā)表于 08-29 18:15 ?2010次閱讀
    合宙<b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模組</b>Air780EQ——硬件設(shè)計手冊01

    手把手教你通過宏集物聯(lián)網(wǎng)工控屏&amp;網(wǎng)關(guān)進(jìn)行協(xié)議轉(zhuǎn)換,將底層PLC/傳感器的數(shù)據(jù)轉(zhuǎn)換為TCP協(xié)議并傳輸?shù)接脩?/a>

    手把手教你通過宏集物聯(lián)網(wǎng)工控屏&網(wǎng)關(guān)進(jìn)行協(xié)議轉(zhuǎn)換,將底層PLC/傳感器的數(shù)據(jù)轉(zhuǎn)換為TCP協(xié)議并傳輸?shù)接脩艚K端
    的頭像 發(fā)表于 08-15 13:29 ?363次閱讀
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b>通過宏集物聯(lián)網(wǎng)工控屏&amp;網(wǎng)關(guān)進(jìn)行協(xié)議轉(zhuǎn)換,將底層PLC/傳感器的數(shù)據(jù)轉(zhuǎn)換為TCP協(xié)議并傳輸?shù)接脩? />    </a>
</div>                            <div   id=

    手把手教你排序算法怎么寫

    今天以直接插入排序算法,給大家分享一下排序算法的實現(xiàn)思路,主要包含以下部分內(nèi)容:插入排序介紹插入排序算法實現(xiàn)手把手教你排序算法怎么寫在添加新的記錄時,使用順序查找的方式找到其要插入的位置,然后將
    的頭像 發(fā)表于 06-04 08:03 ?620次閱讀
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b>排序算法怎么寫

    【飛騰派4G版免費試用】4.手把手玩轉(zhuǎn)QT界面設(shè)計

    完成了使用Qt Designer進(jìn)行界面設(shè)計的全部流程!是不是覺得像魔法一樣神奇呢?趕緊試試吧! 接上三篇: 【飛騰派4G版免費試用】1.實戰(zhàn)交叉編譯環(huán)境搭建和手把手uboot編譯 【飛騰派4G版免費
    發(fā)表于 01-27 12:49

    工程送樣!手把手教你用好廣和通RedCap模組FG131&amp;amp;FG132系列

    工程送樣!手把手教你用好廣和通RedCap模組FG131&FG132系列
    的頭像 發(fā)表于 01-11 18:22 ?643次閱讀
    工程送樣!<b class='flag-5'>手把手</b><b class='flag-5'>教你</b>用好廣和通RedCap<b class='flag-5'>模組</b>FG131&amp;amp;FG132系列

    【飛騰派4G版免費試用】3.手把手玩轉(zhuǎn)制作rootfs根文件系統(tǒng)

    接上兩篇:【飛騰派4G版免費試用】1.實戰(zhàn)交叉編譯環(huán)境搭建和手把手uboot編譯 【飛騰派4G版免費試用】2.手把手實戰(zhàn)編譯Linux內(nèi)核 嗨,親愛的工程師、學(xué)生和愛好者們,我來啦!今
    發(fā)表于 01-09 10:49

    合宙 | 微安級超低功耗,【藍(lán)牙+4G】二合一模組全新定義等你來

    探討: 一款2秒一次廣播,功耗低于8微安,并且支持二次開發(fā)的超低功耗【藍(lán)牙+4G】二合一模組超低功耗【藍(lán)牙+
    的頭像 發(fā)表于 12-12 15:55 ?1606次閱讀