国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

淺談OTA技術(shù)在家用變頻空調(diào)中的應(yīng)用

2024-01-11 08:31:18李超王波
制冷 2023年4期
關(guān)鍵詞:室外機(jī)固件運(yùn)轉(zhuǎn)

李超,王波

(小米科技(武漢)有限公司,武漢,430073)

近幾年物聯(lián)網(wǎng)發(fā)展迅速,它賦予空調(diào)很多新穎的功能,如遠(yuǎn)程操控、智能聯(lián)動(dòng)、智能診斷、OTA升級(jí)等[1-2]。其中OTA升級(jí)是非常重要的功能,它解決了空調(diào)安裝后的軟件bug修復(fù)、功能迭代、用戶定制等傳統(tǒng)空調(diào)的痛點(diǎn)問題[7-8]。目前空調(diào)行業(yè)內(nèi),受到室內(nèi)外機(jī)通信速率低導(dǎo)致升級(jí)時(shí)間長、芯片空間小導(dǎo)致OTA成本高等因素的影響,一般都只是對(duì)空調(diào)室內(nèi)機(jī)的程序進(jìn)行了OTA升級(jí),未升級(jí)室外機(jī)的程序。

空調(diào)室外機(jī)的程序主要包含壓縮機(jī)、外風(fēng)機(jī)、PFC的驅(qū)動(dòng)算法,以及一些空調(diào)制冷、制熱的系統(tǒng)控制算法,這一部分程序影響空調(diào)運(yùn)行的可靠性、舒適性等,其OTA需求也是十分強(qiáng)烈。

本文就空調(diào)室外機(jī)的程序OTA進(jìn)行論述,主要對(duì)提高室外機(jī)程序OTA的速度、降低OTA成本等瓶頸問題進(jìn)行討論。

1 空調(diào)OTA功能框架及控制流程

空調(diào)控制系統(tǒng)一般由Wi-Fi模塊、室內(nèi)機(jī)主板和室外機(jī)主板組成,其中室內(nèi)機(jī)主板和Wi-Fi模塊之間通過串口TTL通信,室內(nèi)機(jī)主板和室外機(jī)主板之間通過強(qiáng)電電流環(huán)通信,如圖1。

圖1 空調(diào)控制系統(tǒng)通信框圖

在室外機(jī)也具備OTA能力的控制系統(tǒng)中,為了使每次升級(jí)的室內(nèi)機(jī)固件和室外機(jī)固件都一一對(duì)應(yīng),不出現(xiàn)交叉配套的現(xiàn)象,需要將室內(nèi)機(jī)固件和室外機(jī)固件合并到同一固件包內(nèi)上傳到云端。

OTA過程一般為Wi-Fi模組從云端獲取最新的固件包,存儲(chǔ)到模組的Code flash中,然后再傳輸給室內(nèi)機(jī),室內(nèi)機(jī)收到固件包之后,按照既定的流程對(duì)室外機(jī)固件和室內(nèi)機(jī)固件進(jìn)行拆包傳輸升級(jí)。常規(guī)流程如圖2。

圖2 空調(diào)控制器程序OTA流程圖

上述OTA流程中,有以下幾點(diǎn)可以提高整個(gè)OTA過程的穩(wěn)定性及可靠性:

(1)在室內(nèi)機(jī)固件包和室外機(jī)固件包的開始部分,增加固件碼頭信息,明確當(dāng)前固件包的合法性校驗(yàn)數(shù)據(jù)以及固件版本,如圖3。OTA時(shí),空調(diào)先收到固件碼頭信息,對(duì)固件的合法性進(jìn)行檢查,如果不適配本機(jī)型或者錯(cuò)誤的固件,不允許進(jìn)行OTA升級(jí);另外模組中的固件版本比當(dāng)前室內(nèi)機(jī)或者室外機(jī)的固件版本還低,也不允許進(jìn)行OTA升級(jí)。只有合法且需要升級(jí)的固件,才會(huì)進(jìn)行OTA。

圖3 程序固件包組成示意圖

(2)上傳云端的固件包,包含室外機(jī)固件包和室內(nèi)機(jī)固件包,且將室外機(jī)固件包置于室內(nèi)機(jī)固件包前面,如圖3。此方法可以在升級(jí)時(shí),室內(nèi)機(jī)在正常運(yùn)行區(qū)對(duì)室外機(jī)固件進(jìn)行傳輸,保證室內(nèi)機(jī)bootloader區(qū)域的空間最小化和功能最簡化,提高bootloader區(qū)的運(yùn)行可靠性。

(3)室內(nèi)機(jī)在上電時(shí),從內(nèi)外機(jī)MCU中獲取當(dāng)前室內(nèi)外機(jī)的固件版本,并從模組獲取需要升級(jí)的室內(nèi)外機(jī)目標(biāo)版本,通過對(duì)版本對(duì)比,確定OTA的執(zhí)行流程,如室外機(jī)無需進(jìn)行OTA,則會(huì)直接跳過室外機(jī)的OTA,減少OTA時(shí)長。

(4)室內(nèi)外機(jī)的數(shù)據(jù)傳輸,采用Xmodem協(xié)議。眾所周知,Xmodem協(xié)議是高可靠性的文件傳輸通信方式。室內(nèi)外機(jī)在正常運(yùn)轉(zhuǎn)時(shí),采用常規(guī)的串口通信;在需要更新室外機(jī)固件時(shí),內(nèi)外機(jī)切換到Xmodem通信模式進(jìn)行文件傳輸,提高室外機(jī)OTA的效率以及穩(wěn)定性。

2 雙模式通訊波特率

因弱電通信受傳輸距離不夠長、受強(qiáng)電干擾嚴(yán)重、成本高等原因,家用變頻空調(diào)內(nèi)外機(jī)通信電路普遍采用強(qiáng)電電流環(huán)通信[3]。但強(qiáng)電通信在變頻壓縮機(jī)運(yùn)行期間,容易受到PFC驅(qū)動(dòng)和壓縮機(jī)驅(qū)動(dòng)的IGBT開關(guān)信號(hào)干擾,所以為了通信的穩(wěn)定性和可靠性,一般室內(nèi)外機(jī)通信的波特率都在1,200 bps以下,導(dǎo)致OTA室外機(jī)固件時(shí),耗時(shí)非常長。

為避免空調(diào)運(yùn)行的干擾導(dǎo)致OTA數(shù)據(jù)異常,在OTA期間,空調(diào)室內(nèi)外機(jī)一般會(huì)先執(zhí)行關(guān)機(jī)動(dòng)作?;诖嗽颍贠TA室外機(jī)固件時(shí),將室內(nèi)外機(jī)通信的波特率提高,由原來的1,200 bps提高至4,800 bps,可以將OTA時(shí)長大幅縮短。

3 程序參數(shù)分區(qū)OTA

在空調(diào)產(chǎn)品上市銷售后,如果不是軟件bug和新增控制功能,一般升級(jí)都是根據(jù)售后反饋的問題進(jìn)行參數(shù)的優(yōu)化,使空調(diào)運(yùn)行更穩(wěn)定,效果更好。所以對(duì)于相對(duì)穩(wěn)定的空調(diào)產(chǎn)品來說,升級(jí)參數(shù)的概率遠(yuǎn)大于升級(jí)程序的概率。然而參數(shù)所占空間一般只有1~2Kbytes,而程序升級(jí)則高達(dá)數(shù)百Kbytes,所以在只需要升級(jí)參數(shù)的時(shí)候,只對(duì)參數(shù)進(jìn)行OTA,可以極大程度的縮短OTA時(shí)間[6]。其具體做法是:

(1)將固件包分為室內(nèi)機(jī)程序、室內(nèi)機(jī)參數(shù)、室外機(jī)程序、室外機(jī)參數(shù)4個(gè)部分,在合并這4部分到同一個(gè)固件包的同時(shí),給每一個(gè)部分增加一條固件包信息,包括版本號(hào)、校驗(yàn)碼等信息,如圖4(a)。

圖4 程序參數(shù)分區(qū)OTA示意圖

(2)在室內(nèi)機(jī)收到Wi-Fi模組傳輸?shù)墓碳畔⒑?,先與空調(diào)器室內(nèi)外機(jī)當(dāng)前的室內(nèi)外機(jī)程序版本號(hào)、參數(shù)版本號(hào)進(jìn)行對(duì)比,判斷出哪一部分需要進(jìn)行升級(jí)。如果是需要升級(jí)的部分,則進(jìn)行OTA升級(jí),如果不需要升級(jí)的部分,則跳過該部分的升級(jí),流程如圖4(b)。

4 部分程序OTA

一般情況下,程序編寫完成,在編譯的時(shí)候,編譯地址、內(nèi)存占用等都會(huì)根據(jù)編譯的規(guī)則進(jìn)行調(diào)整,所以程序中任何小的改動(dòng),都有可能影響整個(gè)編譯結(jié)果[4]。這種情況下,只要程序升級(jí),那么一定是對(duì)整個(gè)芯片的flash進(jìn)行刷寫,是否能有方法做到只升級(jí)程序變動(dòng)的地方呢?這里提出一種方案,如下:

在上一節(jié)所述基礎(chǔ)上,我們?cè)诰帉懣照{(diào)控制程序的時(shí)候,將程序中各個(gè)功能按照模塊來劃分,如將室內(nèi)機(jī)程序劃分為:通信控制模塊、傳感器采樣模塊、擺葉控制模塊、內(nèi)風(fēng)機(jī)控制模塊等;將室外機(jī)程序劃分為:壓縮機(jī)驅(qū)動(dòng)模塊、室外風(fēng)機(jī)驅(qū)動(dòng)模塊、PFC模塊、頻率控制模塊、膨脹閥控制模塊等。

各個(gè)模塊之間,通過變量映射、參數(shù)傳遞函數(shù)等方式進(jìn)行消息互通,并解掉所有的耦合關(guān)系,這樣一來每個(gè)模塊都被獨(dú)立封裝了起來。最后在編譯程序的時(shí)候,指定每個(gè)功能模塊的編譯地址和占用空間,這樣各個(gè)功能就成了獨(dú)立的模塊。編譯后,由于各模塊之間完全解耦,程序沒有變化的模塊,其占用的MCU存儲(chǔ)區(qū)間的內(nèi)容也不會(huì)產(chǎn)生變化,如圖5。

圖5 程序模塊解耦編譯示意圖

在生成OTA固件包時(shí),我們也是先給每個(gè)功能模塊打上碼頭信息標(biāo)簽,按照類似圖3的方式進(jìn)行升級(jí)控制。

這種部分程序OTA的方法,可以有效減短程序功能迭代時(shí)候的OTA時(shí)長。但此方法也有明顯的缺點(diǎn):程序模塊解耦,工作量非常大;每個(gè)模塊占用的空間都需要為升級(jí)程序提前做好預(yù)留,對(duì)MCU存儲(chǔ)空間要求較高。

5 不對(duì)等分區(qū)的OTA

上述第3、4節(jié)描述了縮短OTA耗時(shí)的方法,本節(jié)則描述一種如何減小OTA所需芯片容量空間的方法,以降低OTA成本。

具備OTA功能的空調(diào)器,一般會(huì)將芯片的Flash空間劃分為3部分:Bootloader區(qū)、App區(qū)、備份區(qū)。其中Bootloader區(qū)為啟動(dòng)引導(dǎo)區(qū),用作校驗(yàn)分區(qū)固件、切換啟動(dòng)分區(qū)等;App區(qū)和備份區(qū)一般是相同大小的兩個(gè)空間,用作互相備份程序,避免在OTA期間,因掉電、通信故障等情況導(dǎo)致空調(diào)無程序,無法運(yùn)行[5]。

眾所周知,芯片的價(jià)格與其Flash空間息息相關(guān),空間越大,芯片價(jià)格越高。傳統(tǒng)的芯片分區(qū)方案,使得備份區(qū)的利用率低,方案成本高。

這里提出一種方法,將芯片的Flash空間也劃分為3部分:Bootloader區(qū)、App區(qū)、應(yīng)急運(yùn)轉(zhuǎn)區(qū)。其中App區(qū)與傳統(tǒng)的分區(qū)功能一致,但應(yīng)急運(yùn)轉(zhuǎn)區(qū)將空調(diào)的控制功能簡化,僅做空調(diào)運(yùn)轉(zhuǎn)必需的最小控制系統(tǒng),舍去復(fù)雜的控制功能。

在OTA期間,如果App區(qū)因各種原因升級(jí)失敗,無法在App區(qū)運(yùn)轉(zhuǎn),此時(shí)程序?qū)⑻D(zhuǎn)到應(yīng)急運(yùn)轉(zhuǎn)區(qū)運(yùn)行,為用戶繼續(xù)提供制冷、制熱等服務(wù),并持續(xù)的獲取新的App區(qū)的固件,在App區(qū)固件升級(jí)成功后,再跳轉(zhuǎn)到App區(qū),運(yùn)行功能齊全的控制。

因應(yīng)急運(yùn)轉(zhuǎn)區(qū)的功能最小系統(tǒng),其代碼量遠(yuǎn)小于App區(qū),所以此時(shí)可按照App區(qū)空間大,應(yīng)急運(yùn)轉(zhuǎn)區(qū)空間小的方案來劃分芯片F(xiàn)lash空間。

如圖6所示,程序包大小同為80 Kbytes,傳統(tǒng)分區(qū)方式的App區(qū)和備份區(qū)會(huì)各占124 Kbytes,芯片總?cè)萘啃柽x型為256 Kbytes;而以不對(duì)等分區(qū)方式的App區(qū)滿足大于80 Kbytes,并將應(yīng)急運(yùn)轉(zhuǎn)區(qū)簡化到30 Kbytes以內(nèi),這樣芯片容量僅需128 Kbytes即可滿足需求。

圖6 不對(duì)等分區(qū)OTA方案示意圖

以上,可以得出,使用不對(duì)等的分區(qū)方案,將備份區(qū)縮小,并用作為應(yīng)急運(yùn)轉(zhuǎn)區(qū),可以在滿足設(shè)備不“變磚”的情況下,還能大幅縮小芯片容量需求,降低了芯片的成本。

6 總結(jié)

空調(diào)器在售出安裝后,出現(xiàn)軟件bug、功能迭代、用戶定制等需求時(shí),如果沒有OTA功能,就需要售后工程師上門服務(wù),對(duì)空調(diào)企業(yè)來說,這是一筆非常大的支出。而OTA功能完美的解決了這個(gè)問題,既節(jié)省了空調(diào)企業(yè)的開支,也以最快的速度響應(yīng)了用戶的需求。

靈活的改良空調(diào)器的OTA方案,在安全可靠的前提下使得OTA耗時(shí)長、OTA成本高等痛點(diǎn)問題得到良好的解決,本文論述的4種方法可廣泛用于空調(diào)器及其他電器的OTA場(chǎng)景,具有一定的實(shí)用價(jià)值。

猜你喜歡
室外機(jī)固件運(yùn)轉(zhuǎn)
某超高層公寓變制冷劑流量空調(diào)室外機(jī)周圍熱環(huán)境數(shù)值模擬研究
基于CFD模擬分析的深圳某超高層公寓多聯(lián)機(jī)室外機(jī)布置研究
復(fù)舊運(yùn)轉(zhuǎn)
《獅來運(yùn)轉(zhuǎn)》萌翻石獅
海峽姐妹(2019年1期)2019-03-23 02:42:56
橫百葉不同開度對(duì)室外機(jī)周圍熱環(huán)境的影響模擬
時(shí)來運(yùn)轉(zhuǎn)
基于固件的遠(yuǎn)程身份認(rèn)證
空調(diào)室外機(jī)用環(huán)保遮陽擋
提取ROM固件中的APP
電腦愛好者(2015年7期)2015-04-09 08:54:02
一種通過USB接口的可靠固件升級(jí)技術(shù)
连平县| 和平县| 延边| 东阳市| 宜黄县| 克山县| 囊谦县| 韶关市| 高碑店市| 天等县| 搜索| 靖江市| 义马市| 桐梓县| 乌拉特中旗| 宽城| 汾西县| 珲春市| 西充县| 揭东县| 河南省| 鹤峰县| 定陶县| 赤壁市| 三门县| 偃师市| 河南省| 克什克腾旗| 车险| 德保县| 三河市| 凌云县| 平度市| 思茅市| 兴安盟| 彭山县| 金秀| 铁岭市| 太湖县| 修水县| 永春县|