本發(fā)明涉及物聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)通訊方法及裝置。
背景技術(shù):
LPWAN(Low Power Wide Area Network,低功耗廣域網(wǎng))作為近幾年才開始商用的物聯(lián)網(wǎng)接入技術(shù),在歐美的部分地區(qū)的發(fā)展初具規(guī)模,產(chǎn)業(yè)鏈基本成型,而在中國還處于剛剛起步的階段,可以說,LPWAN在物聯(lián)網(wǎng)領(lǐng)域?qū)?huì)大有所為的發(fā)展趨勢已成定局。目前LPWAN在中國最主要應(yīng)用在智能表行業(yè),目前在中國市場大范圍規(guī)模的應(yīng)用主要是在長距離(Long Range)技術(shù),而LoRa技術(shù)應(yīng)用中,主要有LoRa模塊、網(wǎng)關(guān)和其他設(shè)備以及由此形成提供的服務(wù)等。LoRaWAN(Long Range Wide Area Network,長距離廣域網(wǎng))協(xié)議是基于LoRa技術(shù)的一個(gè)LPWAN協(xié)議標(biāo)準(zhǔn)。根據(jù)基于的協(xié)議不同,目前國內(nèi)市場上的通訊模塊分為兩類,一類是基于LoRa私有協(xié)議開發(fā)的LoRa通訊模塊,由于此類模塊基于私有協(xié)議,所以不具有互通性,另一類是基于LoRaWAN開源協(xié)議開發(fā)的LoRaWAN通訊模塊,在數(shù)據(jù)通訊的過程中,主控模塊通過調(diào)用LoRaWAN通訊模塊可以實(shí)現(xiàn)與服務(wù)器的數(shù)據(jù)通訊。
現(xiàn)有技術(shù)中不同廠家生產(chǎn)的LoRaWAN通訊模塊的類型不同,對(duì)應(yīng)的通訊指令也不同,針對(duì)智能表中不同類型的LoRaWAN通訊模塊,智能表中安裝有與LoRaWAN通訊模塊的類型對(duì)應(yīng)的主控模塊,主控模塊可以根據(jù)本地保存的通訊指令,調(diào)用該類型的LoRaWAN通訊模塊,來與服務(wù)器進(jìn)行數(shù)據(jù)通訊。如果智能表中的LoRaWAN通訊模塊發(fā)生損壞,將該類型的LoRaWAN通訊模塊更換為其他類型的LoRaWAN通訊模塊,更換后的LoRaWAN通訊模塊因?yàn)榕c現(xiàn)有的主控模塊的類型不匹配,則無法與服務(wù)器進(jìn)行正常數(shù)據(jù)通訊。為了保證正常的數(shù)據(jù)通訊,此時(shí)只能更換主控模塊,使主控模塊的類型與LoRaWAN通訊模塊的類型相匹配,該方法操作起來較繁瑣,并且增加了智能表的維修成本。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供一種數(shù)據(jù)通訊方法及裝置,用以解決現(xiàn)有技術(shù)中LoRaWAN通訊模塊的類型與主控模塊的類型不匹配,造成的不能正常通訊,或維修時(shí)操作繁瑣的問題。
為了解決上述問題,本發(fā)明提供了一種數(shù)據(jù)通訊方法,該方法包括:
識(shí)別預(yù)先安裝的長距離廣域網(wǎng)LoRaWAN通訊模塊的目標(biāo)類型;
根據(jù)所述LoRaWAN通訊模塊的目標(biāo)類型,及自身針對(duì)至少兩種類型的LoRaWAN通訊模塊保存的各命令符集合,確定所述目標(biāo)類型的LoRaWAN通訊模塊對(duì)應(yīng)的目標(biāo)命令符集合;
根據(jù)所述目標(biāo)命令符集合,調(diào)用所述LoRaWAN通訊模塊與服務(wù)器進(jìn)行通訊。
進(jìn)一步地,所述根據(jù)所述目標(biāo)命令符集合,調(diào)用所述LoRaWAN通訊模塊與服務(wù)器進(jìn)行通訊包括:
在所述目標(biāo)命令符集合中確定入網(wǎng)連接請(qǐng)求的第一命令符,向所述LoRaWAN通訊模塊發(fā)送所述第一命令符,使所述LoRaWAN通訊模塊向服務(wù)器發(fā)送入網(wǎng)連接請(qǐng)求。
進(jìn)一步地,所述方法還包括:
如果在設(shè)定的時(shí)間長度內(nèi)未接收到入網(wǎng)連接成功的確認(rèn)信息;
判斷入網(wǎng)失敗的次數(shù)是否達(dá)到設(shè)定的次數(shù)閾值;
如果否,則繼續(xù)向所述LoRaWAN通訊模塊發(fā)送所述第一命令符,使所述LoRaWAN通訊模塊向服務(wù)器發(fā)送入網(wǎng)連接請(qǐng)求,如果是,確定入網(wǎng)失敗。
進(jìn)一步地,所述根據(jù)所述目標(biāo)命令符集合,調(diào)用所述LoRaWAN通訊模塊與服務(wù)器進(jìn)行通訊包括:
在所述目標(biāo)命令符集合中確定檢查網(wǎng)絡(luò)狀態(tài)的第二命令符,向所述LoRaWAN通訊模塊發(fā)送所述第二命令符,使所述LoRaWAN通訊模塊向服務(wù)器發(fā)送檢查網(wǎng)絡(luò)狀態(tài)請(qǐng)求。
進(jìn)一步地,所述根據(jù)所述目標(biāo)命令符集合,調(diào)用所述LoRaWAN通訊模塊與服務(wù)器進(jìn)行通訊包括:
如果當(dāng)前存在待發(fā)送的數(shù)據(jù),在所述目標(biāo)命令符集合中確定進(jìn)行數(shù)據(jù)發(fā)送的第三命令符,向所述LoRaWAN通訊模塊發(fā)送所述第三命令符及所述待發(fā)送的數(shù)據(jù),使所述LoRaWAN通訊模塊向服務(wù)器發(fā)送所述數(shù)據(jù)。
本發(fā)明提供了一種數(shù)據(jù)通訊裝置,該裝置包括:
識(shí)別模塊,用于識(shí)別預(yù)先安裝的長距離廣域網(wǎng)LoRaWAN通訊模塊的目標(biāo)類型;
確定模塊,用于根據(jù)所述LoRaWAN通訊模塊的目標(biāo)類型,及自身針對(duì)至少兩種類型的LoRaWAN通訊模塊保存的各命令符集合,確定所述目標(biāo)類型的LoRaWAN通訊模塊對(duì)應(yīng)的目標(biāo)命令符集合;
調(diào)用模塊,用于根據(jù)所述目標(biāo)命令符集合,調(diào)用所述LoRaWAN通訊模塊與服務(wù)器進(jìn)行通訊。
進(jìn)一步地,所述調(diào)用模塊,具體用于在所述目標(biāo)命令符集合中確定入網(wǎng)連接請(qǐng)求的第一命令符,向所述LoRaWAN通訊模塊發(fā)送所述第一命令符,使所述LoRaWAN通訊模塊向服務(wù)器發(fā)送入網(wǎng)連接請(qǐng)求。
進(jìn)一步地,所述調(diào)用模塊,具體用于如果在設(shè)定的時(shí)間長度內(nèi)未接收到入網(wǎng)連接成功的確認(rèn)信息;判斷入網(wǎng)失敗的次數(shù)是否達(dá)到設(shè)定的次數(shù)閾值;如果否,則繼續(xù)向所述LoRaWAN通訊模塊發(fā)送所述第一命令符,使所述LoRaWAN通訊模塊向服務(wù)器發(fā)送入網(wǎng)連接請(qǐng)求,如果是,確定入網(wǎng)失敗。
進(jìn)一步地,所述調(diào)用模塊,具體用于在所述目標(biāo)命令符集合中確定檢查網(wǎng)絡(luò)狀態(tài)的第二命令符,向所述LoRaWAN通訊模塊發(fā)送所述第二命令符,使所述LoRaWAN通訊模塊向服務(wù)器發(fā)送檢查網(wǎng)絡(luò)狀態(tài)請(qǐng)求。
進(jìn)一步地,所述調(diào)用模塊,具體用于如果當(dāng)前存在待發(fā)送的數(shù)據(jù),在所述目標(biāo)命令符集合中確定進(jìn)行數(shù)據(jù)發(fā)送的第三命令符,向所述LoRaWAN通訊模塊發(fā)送所述第三命令符及所述待發(fā)送的數(shù)據(jù),使所述LoRaWAN通訊模塊向服務(wù)器發(fā)送所述數(shù)據(jù)。
本發(fā)明提供了一種數(shù)據(jù)通訊方法及裝置,該方法包括:識(shí)別預(yù)先安裝的LoRaWAN通訊模塊的目標(biāo)類型;根據(jù)所述LoRaWAN通訊模塊的目標(biāo)類型,及自身針對(duì)至少兩種類型的LoRaWAN通訊模塊保存的各命令符集合,確定所述目標(biāo)類型的LoRaWAN通訊模塊對(duì)應(yīng)的目標(biāo)命令符集合;根據(jù)所述目標(biāo)命令符集合,調(diào)用所述LoRaWAN通訊模塊與服務(wù)器進(jìn)行通訊。由于本發(fā)明提供的數(shù)據(jù)通訊方法中保存了至少兩種類型的LoRaWAN通訊模塊的各命令符集合,根據(jù)更換后的LoRaWAN通訊模塊的類型確定主控模塊中保存的對(duì)應(yīng)的目標(biāo)命令符集合,根據(jù)目標(biāo)命令符集合實(shí)現(xiàn)LoRaWAN通訊模塊與主控模塊的正常通訊,因此保證了智能表與服務(wù)器之間的正常通訊,并且不需要更換主控模塊,智能表維修時(shí)操作簡單和成本降低。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實(shí)施例1提供的一種數(shù)據(jù)通訊方法的示意圖;
圖2為本發(fā)明實(shí)施例2提供的一種數(shù)據(jù)通訊方法的流程圖;
圖3為本發(fā)明實(shí)施例3提供的一種數(shù)據(jù)通訊方法的流程圖;
圖4為本發(fā)明實(shí)施例4提供的一種數(shù)據(jù)通訊方法的結(jié)構(gòu)示意圖;
圖5為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)通訊裝置的示意圖。
具體實(shí)施方式
為了實(shí)現(xiàn)智能表與服務(wù)器的正常通訊,簡化維修時(shí)操作步驟,并降低成本,本發(fā)明提供了一種數(shù)據(jù)通訊方法及裝置。
為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖本發(fā)明作進(jìn)一步地詳細(xì)描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明的一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
實(shí)施例1:
圖1為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)通訊方法的示意圖,該方法包括以下步驟:
S101:識(shí)別預(yù)先安裝的LoRaWAN通訊模塊的目標(biāo)類型。
本發(fā)明實(shí)施例提供的一種數(shù)據(jù)通訊方法應(yīng)用于智能表的主控模塊。該主控模塊可以為智能表中的CPU(Central Processing Unit,中央處理器)或MCU(Microcontroller Unit,微控制單元)等。
當(dāng)智能表上電后,主控模塊識(shí)別預(yù)先安裝的LoRaWAN通訊模塊的目標(biāo)類型,上電可以是智能表第一次被使用上電,也可以是LoRaWAN通訊模塊更換后上電。
在識(shí)別預(yù)先安裝的LoRaWAN通訊模塊的目標(biāo)類型時(shí),可以是由智能表的主控模塊通過引腳觸發(fā)所述LoRaWAN通訊模塊,所述LoRaWAN通訊模塊向所述主控模塊返回類型信息,所述主控模塊根據(jù)接收到的所述類型信息,以及本地保存的類型信息與LoRaWAN通訊模塊的類型的對(duì)應(yīng)關(guān)系,確定所述LoRaWAN通訊模塊的類型。
S102:根據(jù)所述LoRaWAN通訊模塊的目標(biāo)類型,及自身針對(duì)至少兩種類型的LoRaWAN通訊模塊保存的各命令符集合,確定所述類型的LoRaWAN通訊模塊對(duì)應(yīng)的目標(biāo)各命令符集合。
智能表的主控模塊中預(yù)先保存有LoRaWAN通訊模塊的至少兩種類型,以及每種類型的LoRaWAN通訊模塊的命令符集合,其中所述LoRaWAN通訊模塊的至少兩種類型不同,其中該智能表中保存的LoRaWAN通訊模塊的至少兩種類型,以及每種類型的LoRaWAN通訊模塊的命令符集合可以是在出廠前預(yù)先配置到智能表中的。
LoRaWAN通訊模塊的類型不同,每種類型的LoRaWAN通訊模塊的命令符集合也不同。智能表中的主控模塊通過調(diào)用智能表中的LoRaWAN通訊模塊,來與服務(wù)器進(jìn)行通訊,但是所述主控模塊在調(diào)用所述LoRaWAN通訊模塊時(shí),需要根據(jù)該類型的LoRaWAN通訊模塊的命令符集合中相應(yīng)命令符,對(duì)該LoRaWAN通訊模塊進(jìn)行調(diào)用。
為了使得所述主控模塊能夠匹配每種類型的LoRaWAN通訊模塊,可以將已知的每種類型的LoRaWAN通訊模塊的命令符集合都保存在本地。例如一共有兩種類型的LoRaWAN通訊模塊,分別為門思UM401LP通訊模塊和AUGTEK Genie-LDIT4系列通訊模塊,主控模塊中針對(duì)這兩種類型的LoRaWAN通訊模塊都保存有其各自對(duì)應(yīng)的命令符集合。
S103:根據(jù)所述目標(biāo)命令符集合,調(diào)用所述LoRaWAN通訊模塊完成數(shù)據(jù)通訊。
智能表中的主控模塊,根據(jù)每種類型的LoRaWAN通訊模塊的命令符集合,來調(diào)用相應(yīng)類型的LoRaWAN通訊模塊,從而與服務(wù)器進(jìn)行通訊。
主控模塊自身針對(duì)至少兩種類型的LoRaWAN通訊模塊保存的各命令符集合,也可以理解為該主控模塊可以實(shí)現(xiàn)至少兩種類型的現(xiàn)有主控模塊的功能,從而和至少兩種類型的LoRaWAN通訊模塊進(jìn)行信息交互,從而實(shí)現(xiàn)智能表與服務(wù)器之間的通訊。
當(dāng)確定了LoRaWAN通訊模塊的類型后,該主控模塊采用與該LoRaWAN通訊模塊的類型對(duì)應(yīng)的目標(biāo)命令符集合,生成對(duì)應(yīng)類型的通訊指令,從而與LoRaWAN通訊模塊進(jìn)行信息交互,使得LoRaWAN通訊模塊將接收到的通訊指令發(fā)送給服務(wù)器。
例如,如果主控模塊中保存的兩種類型的LoRaWAN通訊模塊分別為:門思UM401LP通訊模塊和AUGTEK Genie-LDIT4系列通訊模塊,并且針對(duì)這兩種類型的LoRaWAN通訊模塊保存有各命令符集合,所述主控模塊在調(diào)用所述LoRaWAN通訊模塊時(shí),如果識(shí)別出所述LoRaWAN通訊模塊為門思UM401LP通訊模塊,則主控模塊需要根據(jù)門思UM401LP通訊模塊的命令符集合中相應(yīng)命令符集合,對(duì)該門思UM401LP通訊模塊進(jìn)行調(diào)用,從而與LoRaWAN通訊模塊進(jìn)行信息交互,使得LoRaWAN通訊模塊將接收到的通訊指令發(fā)送給服務(wù)器。
由于本發(fā)明提供的數(shù)據(jù)通訊方法中保存了至少兩種類型的LoRaWAN通訊模塊的各命令符集合,根據(jù)更換后的LoRaWAN通訊模塊的類型確定主控模塊中保存的對(duì)應(yīng)的目標(biāo)命令符集合,根據(jù)目標(biāo)命令符集合實(shí)現(xiàn)LoRaWAN通訊模塊與主控模塊的正常通訊,因此保證了智能表與服務(wù)器之間的正常通訊,并且不需要更換主控模塊,智能表維修時(shí)操作簡單和成本降低。
實(shí)施例2:
在本發(fā)明實(shí)施例中進(jìn)行通訊可以包括以下至少一種通訊:入網(wǎng)過程中的通訊、業(yè)務(wù)數(shù)據(jù)傳輸過程中的通訊和網(wǎng)絡(luò)狀態(tài)檢測過程中的通訊。
在上述實(shí)施例的基礎(chǔ)上,本發(fā)明實(shí)施例中所述根據(jù)所述目標(biāo)命令符集合,調(diào)用所述LoRaWAN通訊模塊與服務(wù)器進(jìn)行通訊包括:
在所述目標(biāo)命令符集合中確定入網(wǎng)連接請(qǐng)求的第一命令符,向所述LoRaWAN通訊模塊發(fā)送所述第一命令符,使所述LoRaWAN通訊模塊向服務(wù)器發(fā)送入網(wǎng)連接請(qǐng)求。
智能表在入網(wǎng)連接成功后,才能與服務(wù)器進(jìn)行業(yè)務(wù)數(shù)據(jù)通訊,所以在與服務(wù)器進(jìn)行業(yè)務(wù)數(shù)據(jù)通訊前,確保入網(wǎng)連接成功,所以需要向服務(wù)器發(fā)送入網(wǎng)連接請(qǐng)求。
主控模塊中預(yù)先保存有至少兩種類型的LoRaWAN通訊模塊的命令符集合,確定了LoRaWAN通訊模塊的類型后,當(dāng)需要進(jìn)行入網(wǎng)時(shí),需要向服務(wù)器發(fā)送入網(wǎng)連接請(qǐng)求,所述主控模塊在該LoRaWAN通訊模塊的命令符集合中,確定入網(wǎng)連接請(qǐng)求對(duì)應(yīng)的第一命令符,對(duì)該LoRaWAN通訊模塊進(jìn)行調(diào)用。
所述對(duì)該LoRaWAN通訊模塊進(jìn)行調(diào)用,可以為主控模塊確定入網(wǎng)連接請(qǐng)求對(duì)應(yīng)的第一命令符,將所述第一命令符發(fā)送給該LoRaWAN通訊模塊,使得該LoRaWAN通訊模塊通過自身保存的通訊指令格式,對(duì)所述第一命令符進(jìn)行封裝,并將封裝后的第一命令符作為入網(wǎng)連接請(qǐng)求發(fā)送給服務(wù)器,從而實(shí)現(xiàn)與服務(wù)器的交互。
LoRaWAN通訊模塊向服務(wù)器發(fā)送入網(wǎng)連接請(qǐng)求,服務(wù)器接收到該入網(wǎng)連接請(qǐng)求,確認(rèn)智能表入網(wǎng),并會(huì)向智能表返回入網(wǎng)連接成功的確認(rèn)信息,LoRaWAN通訊模塊接收到該入網(wǎng)連接成功的確認(rèn)信息后,會(huì)將該入網(wǎng)連接成功的確認(rèn)信息返回主控模塊,如果主控模塊在設(shè)定的時(shí)間長度內(nèi)接收到服務(wù)器返回的入網(wǎng)連接成功的確認(rèn)信息,確定入網(wǎng)成功。
當(dāng)LoRaWAN通訊模塊接收到服務(wù)器返回的入網(wǎng)連接成功的確認(rèn)信息后,將該入網(wǎng)連接成功的確認(rèn)信息轉(zhuǎn)發(fā)給主控模塊,主控模塊接收到LoRaWAN通訊模塊轉(zhuǎn)發(fā)的入網(wǎng)連接成功的確認(rèn)信息后,如果該入網(wǎng)連接成功的確認(rèn)信息是在調(diào)用LoRaWAN通訊模塊后的設(shè)定的時(shí)間長度內(nèi)接收到的,則確定入網(wǎng)成功。在本發(fā)明實(shí)施例中當(dāng)LoRaWAN通訊模塊將服務(wù)器發(fā)送的入網(wǎng)連接成功的確認(rèn)信息轉(zhuǎn)發(fā)給主控模塊后,主控模塊可以識(shí)別該入網(wǎng)連接成功的確認(rèn)信息。該確認(rèn)信息的識(shí)別過程,與現(xiàn)有技術(shù)中智能表識(shí)別確認(rèn)信息的過程相同,在本發(fā)明實(shí)施例中對(duì)該過程不進(jìn)行贅述。
如果在設(shè)定的時(shí)間長度內(nèi)未接收到入網(wǎng)連接成功的確認(rèn)信息,可能是因?yàn)橥饨绛h(huán)境的干擾導(dǎo)致的,為了避免外界環(huán)境的干擾導(dǎo)致的發(fā)送不成功的情況,所述方法還包括:
如果在設(shè)定的時(shí)間長度內(nèi)未接收到入網(wǎng)連接成功的確認(rèn)信息,確定入網(wǎng)失敗,并更新入網(wǎng)失敗的次數(shù);
判斷入網(wǎng)失敗的次數(shù)是否達(dá)到設(shè)定的次數(shù)閾值;
如果否,則繼續(xù)向所述LoRaWAN通訊模塊發(fā)送所述第一命令符,使所述LoRaWAN通訊模塊向服務(wù)器發(fā)送入網(wǎng)連接請(qǐng)求,如果是,確定入網(wǎng)失敗。
判斷是否接收到入網(wǎng)連接成功的確認(rèn)信息的過程包括:所述智能表在向服務(wù)器發(fā)送入網(wǎng)連接請(qǐng)求后,啟動(dòng)定時(shí)器,判斷所述智能表在定時(shí)器對(duì)應(yīng)的設(shè)定的時(shí)間長度內(nèi)是否接收到服務(wù)器發(fā)送的入網(wǎng)連接成功的確認(rèn)信息,其中所述設(shè)定的時(shí)間長度在智能表中預(yù)先保存,所述設(shè)定的時(shí)間長度可以為5秒、10秒或15秒等。
由于外界環(huán)境的干擾,可能會(huì)導(dǎo)致智能表向服務(wù)器發(fā)送入網(wǎng)連接請(qǐng)求不成功,或者服務(wù)器向智能表發(fā)送的入網(wǎng)連接成功的確認(rèn)信息不成功,通過判斷入網(wǎng)失敗的次數(shù)是否達(dá)到設(shè)定的次數(shù)閾值,可以避免外界環(huán)境的干擾導(dǎo)致的發(fā)送不成功的情況。
如果入網(wǎng)失敗的次數(shù)沒有達(dá)到設(shè)定的次數(shù)閾值,則可以繼續(xù)向所述服務(wù)器發(fā)送入網(wǎng)連接請(qǐng)求;如果入網(wǎng)失敗的次數(shù)達(dá)到設(shè)定的次數(shù)閾值,則該智能表不能與服務(wù)器進(jìn)行數(shù)據(jù)通訊,確定入網(wǎng)失敗。
圖2為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)通訊方法的流程圖,該方法包括以下步驟:
S201:識(shí)別預(yù)先安裝的LoRaWAN通訊模塊的目標(biāo)類型。
S202:根據(jù)所述LoRaWAN通訊模塊的目標(biāo)類型,及自身針對(duì)至少兩種類型的LoRaWAN通訊模塊保存的各命令符集合,確定所述目標(biāo)類型的LoRaWAN通訊模塊對(duì)應(yīng)的目標(biāo)命令符集合。
S203:根據(jù)所述目標(biāo)命令符集合,確定入網(wǎng)連接請(qǐng)求的第一命令符,調(diào)用所述LoRaWAN通訊模塊向服務(wù)器發(fā)送入網(wǎng)連接請(qǐng)求。
S204:判斷在設(shè)定的時(shí)間長度內(nèi)是否接收到入網(wǎng)連接成功的確認(rèn)信息;如果是,進(jìn)行S208;如果否,進(jìn)行S205。
S205:確定入網(wǎng)失敗,并更新入網(wǎng)失敗的次數(shù)。
S206:判斷入網(wǎng)失敗的次數(shù)是否達(dá)到設(shè)定的次數(shù)閾值;如果是,返回S207;如果否,進(jìn)行S203。
S207:確定入網(wǎng)失敗。
S208:確定入網(wǎng)成功。
由于本發(fā)明實(shí)施例中向服務(wù)器發(fā)送入網(wǎng)連接請(qǐng)求,并確定入網(wǎng)連接成功后,與所述服務(wù)器進(jìn)行業(yè)務(wù)通訊,確保智能表與服務(wù)器之間的數(shù)據(jù)通訊能夠正常進(jìn)行。
實(shí)施例3:
為了保證業(yè)務(wù)通訊可以正常進(jìn)行,在上述各實(shí)施例的基礎(chǔ)上,本發(fā)明實(shí)施例提供的一種數(shù)據(jù)通訊方法中,所述根據(jù)所述目標(biāo)命令符集合,調(diào)用所述LoRaWAN通訊模塊與服務(wù)器進(jìn)行通訊包括:
在所述目標(biāo)命令符集合中確定檢查網(wǎng)絡(luò)狀態(tài)的第二命令符,向所述LoRaWAN通訊模塊發(fā)送所述第二命令符,使所述LoRaWAN通訊模塊向服務(wù)器發(fā)送檢查網(wǎng)絡(luò)狀態(tài)請(qǐng)求。
如果當(dāng)前網(wǎng)絡(luò)狀態(tài)不滿足業(yè)務(wù)通訊的條件,則可能導(dǎo)致在業(yè)務(wù)通訊過程中數(shù)據(jù)發(fā)送失敗或數(shù)據(jù)丟失的情況出現(xiàn),影響后續(xù)的操作。則需要在入網(wǎng)連接成功后,在與服務(wù)器進(jìn)行業(yè)務(wù)通訊前,檢查當(dāng)前網(wǎng)絡(luò)狀態(tài)。
具體地,入網(wǎng)連接成功,則智能表與服務(wù)器之間可以進(jìn)行數(shù)據(jù)通訊,入網(wǎng)連接成功后,智能表的主控模塊,根據(jù)所述LoRaWAN通訊模塊的類型的目標(biāo)命令符集合,確定檢查網(wǎng)絡(luò)狀態(tài)的第二命令符,調(diào)用所述LoRaWAN通訊模塊向服務(wù)器發(fā)送檢查網(wǎng)絡(luò)狀態(tài)請(qǐng)求。
所述調(diào)用所述LoRaWAN通訊模塊向服務(wù)器發(fā)送檢查網(wǎng)絡(luò)狀態(tài)的請(qǐng)求可以為主控模塊確定檢查網(wǎng)絡(luò)狀態(tài)對(duì)應(yīng)的第二命令符,將所述第二命令符發(fā)送給該LoRaWAN通訊模塊,使得該LoRaWAN通訊模塊通過自身保存的通訊指令格式,對(duì)所述第二命令符進(jìn)行封裝,并將封裝后的第二命令符,作為檢查網(wǎng)絡(luò)狀態(tài)請(qǐng)求發(fā)送給服務(wù)器,從而實(shí)現(xiàn)與服務(wù)器的交互。
主控模塊向服務(wù)器發(fā)送檢查網(wǎng)絡(luò)狀態(tài)請(qǐng)求后,接收是否接收到服務(wù)器針對(duì)該檢查網(wǎng)絡(luò)狀態(tài)請(qǐng)求發(fā)送的檢查網(wǎng)絡(luò)狀態(tài)的響應(yīng)信息,判斷當(dāng)前網(wǎng)絡(luò)狀態(tài)是否滿足業(yè)務(wù)通訊條件,如果能接收到服務(wù)器針對(duì)該檢查網(wǎng)絡(luò)狀態(tài)請(qǐng)求發(fā)送的確認(rèn)信息,則當(dāng)前網(wǎng)絡(luò)狀態(tài)下業(yè)務(wù)通訊所需的數(shù)據(jù)能夠正常發(fā)送和接收,確定當(dāng)前網(wǎng)絡(luò)狀態(tài)滿足業(yè)務(wù)通訊條件,如果未接收到服務(wù)器針對(duì)該檢查網(wǎng)絡(luò)狀態(tài)請(qǐng)求發(fā)送的確認(rèn)信息,確確定當(dāng)前網(wǎng)絡(luò)狀態(tài)不滿足業(yè)務(wù)通訊條件。
如果當(dāng)前網(wǎng)絡(luò)狀態(tài)滿足業(yè)務(wù)通訊條件,可以認(rèn)為當(dāng)前網(wǎng)絡(luò)狀態(tài)下接收和發(fā)送業(yè)務(wù)通訊所需的數(shù)據(jù)時(shí),不會(huì)出現(xiàn)數(shù)據(jù)發(fā)送失敗或數(shù)據(jù)丟失的情況,才能與服務(wù)器進(jìn)行業(yè)務(wù)通訊。
如果當(dāng)前網(wǎng)絡(luò)狀態(tài)不滿足業(yè)務(wù)通訊條件,可以認(rèn)為當(dāng)前網(wǎng)絡(luò)狀態(tài)下接收和發(fā)送業(yè)務(wù)通訊所需的數(shù)據(jù)時(shí),可能會(huì)出現(xiàn)數(shù)據(jù)發(fā)送失敗或數(shù)據(jù)丟失的情況,則智能表繼續(xù)按照設(shè)定的時(shí)間間隔發(fā)送檢查網(wǎng)絡(luò)狀態(tài)請(qǐng)求,直至確認(rèn)當(dāng)前網(wǎng)絡(luò)狀態(tài)滿足業(yè)務(wù)條件,再進(jìn)行后續(xù)步驟。設(shè)定的時(shí)間間隔例如可以是1秒、2秒或5秒等,其中所述設(shè)定的時(shí)間間隔預(yù)先保存在主控模塊中。
下面以一個(gè)具體的實(shí)施例對(duì)本發(fā)明上述實(shí)施例進(jìn)行說明,圖3為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)通訊方法的流程圖,如圖3所示,該方法包括:
主控模塊初始化。
智能表在上電后,需要對(duì)智能表中預(yù)先安裝的主控模塊進(jìn)行初始化,如配置主控模塊的芯片的IO(input output,輸入輸出)管腳、參數(shù)初始值、時(shí)鐘和UART(Universal Asynchronous Receiver/Transmitter,通用異步收發(fā)傳輸器)初始化等,以保證智能表在與服務(wù)器進(jìn)行數(shù)據(jù)通訊過程中的穩(wěn)定性和對(duì)數(shù)據(jù)進(jìn)行處理時(shí)的準(zhǔn)確性。具體地,為了使主控模塊正常工作,需要對(duì)主控模塊的芯片的IO管腳進(jìn)行初始化,即對(duì)主控芯片的所有引腳的連接進(jìn)行初始化;為了保證數(shù)據(jù)處理的準(zhǔn)確性,需要根據(jù)預(yù)先保存的配置文件,配置主控芯片內(nèi)的各個(gè)引腳的初始電平參數(shù)值和時(shí)鐘;為了使得主控模塊對(duì)其他模塊進(jìn)行控制,需要對(duì)UART初始化等。
所述對(duì)主控模塊初始化的過程屬于現(xiàn)有技術(shù),在本發(fā)明實(shí)施例中不做贅述。
識(shí)別LoRaWAN通訊模塊的目標(biāo)類型。
確定入網(wǎng)連接請(qǐng)求對(duì)應(yīng)的第一命令符,發(fā)送入網(wǎng)連接請(qǐng)求。
判斷入網(wǎng)連接是否成功,如果是,確定檢查網(wǎng)絡(luò)狀態(tài)請(qǐng)求對(duì)應(yīng)的第二命令符,發(fā)送檢查網(wǎng)絡(luò)狀態(tài)請(qǐng)求。
判斷當(dāng)前網(wǎng)絡(luò)狀態(tài)是否滿足業(yè)務(wù)通訊條件,如果是,處理業(yè)務(wù)通訊的數(shù)據(jù),進(jìn)行業(yè)務(wù)通訊。
由于本發(fā)明實(shí)施例中在與服務(wù)器進(jìn)行業(yè)務(wù)通訊前,檢查當(dāng)前網(wǎng)絡(luò)狀態(tài),并確定所述當(dāng)前網(wǎng)絡(luò)狀態(tài)滿足業(yè)務(wù)通訊條件后,才能與服務(wù)器進(jìn)行業(yè)務(wù)通訊,保證了業(yè)務(wù)通訊可以正常進(jìn)行。
實(shí)施例4:
在上述各實(shí)施例的基礎(chǔ)上,本發(fā)明實(shí)施例提供的一種數(shù)據(jù)通訊方法中,所述根據(jù)所述目標(biāo)命令符集合,調(diào)用所述LoRaWAN通訊模塊與服務(wù)器進(jìn)行通訊包括:
如果當(dāng)前存在待發(fā)送的數(shù)據(jù),在所述目標(biāo)命令符集合中確定進(jìn)行數(shù)據(jù)發(fā)送的第三命令符,向所述LoRaWAN通訊模塊發(fā)送所述第三命令符及所述待發(fā)送的數(shù)據(jù),使所述LoRaWAN通訊模塊向服務(wù)器發(fā)送所述數(shù)據(jù)。
如果存在待發(fā)送的數(shù)據(jù)時(shí),主控模塊需要調(diào)用LoRaWAN通訊模塊向服務(wù)器發(fā)送數(shù)據(jù)。所述調(diào)用LoRaWAN通訊模塊向服務(wù)器發(fā)送數(shù)據(jù),可以為確定發(fā)送數(shù)據(jù)對(duì)應(yīng)的第三命令符,將所述第三命令符和所述數(shù)據(jù)發(fā)送給該LoRaWAN通訊模塊,使得該LoRaWAN通訊模塊通過自身保存的通訊指令格式,對(duì)所述第三命令符和所述數(shù)據(jù)進(jìn)行封裝,并將封裝后的第三命令符和所述數(shù)據(jù),發(fā)送給服務(wù)器,從而實(shí)現(xiàn)與服務(wù)器的信息交互。
如果入網(wǎng)連接成功,且當(dāng)前網(wǎng)絡(luò)狀態(tài)滿足業(yè)務(wù)通訊的條件,則所述智能表可以與服務(wù)器進(jìn)行業(yè)務(wù)通訊。所述業(yè)務(wù)通訊包括接收服務(wù)器發(fā)送的下行業(yè)務(wù)數(shù)據(jù)和向服務(wù)器發(fā)送的上行業(yè)務(wù)數(shù)據(jù)。具體地,所述智能表的主控模塊將計(jì)量采集的上行業(yè)務(wù)數(shù)據(jù)如已用氣量等,通過調(diào)用所述LoRaWAN通訊模塊發(fā)送給服務(wù)器;所述智能表的主控模塊將接收到的服務(wù)器發(fā)送的下行業(yè)務(wù)數(shù)據(jù)如閥門開關(guān)控制數(shù)據(jù)等,并針對(duì)所述下行業(yè)務(wù)數(shù)據(jù)完成對(duì)應(yīng)的控制。
主控模塊向服務(wù)器發(fā)送上行業(yè)務(wù)數(shù)據(jù)后,如果接收到服務(wù)器針對(duì)所述上行業(yè)務(wù)數(shù)據(jù)發(fā)送的第一響應(yīng)信息,則確定所述服務(wù)器接收到所述上行業(yè)務(wù)數(shù)據(jù)。
主控模塊在接收到服務(wù)器發(fā)送的下行業(yè)務(wù)數(shù)據(jù)后,根據(jù)本地保存的下行業(yè)務(wù)數(shù)據(jù)與控制指令的對(duì)應(yīng)關(guān)系,判斷針對(duì)所述下行業(yè)務(wù)數(shù)據(jù)完成哪種控制,例如根據(jù)本地保存的下行業(yè)務(wù)數(shù)據(jù)與控制指令的對(duì)應(yīng)關(guān)系,識(shí)別出所述下行業(yè)務(wù)數(shù)據(jù)對(duì)應(yīng)的控制指令為閥門關(guān)閉控制,則所述主控模塊針對(duì)該閥門關(guān)閉控制的控制命令,控制閥門關(guān)閉。
下面以一個(gè)具體的實(shí)施例對(duì)本發(fā)明上述實(shí)施例進(jìn)行說明,圖4為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)通訊方法的結(jié)構(gòu)示意圖,如圖4所示,智能表中包括有主控模塊和LoRaWAN通訊模塊,其中主控模塊與LoRaWAN通訊模塊連接,另外智能表中還包括:分別于主控模塊連接的液晶顯示模塊、閥門控制模塊、采集模塊、電源模塊和IC讀寫通訊模塊。
所述主控模塊中存在針對(duì)至少兩種類型的LoRaWAN通訊模塊保存的各命令符集合,所述主控模塊與所述LoRaWAN通訊模塊之間通過串口進(jìn)行通訊,如果所述主控模塊識(shí)別到所述LoRaWAN通訊模塊的類型為門思UM401LP通訊模塊,則根據(jù)保存的各命令符集合,確定類型為門思UM401LP模塊的LoRaWAN通訊模塊的目標(biāo)命令符集合,根據(jù)所述目標(biāo)命令符集合,調(diào)用LoRaWAN通訊模塊與服務(wù)器進(jìn)行通訊。
主控模塊根據(jù)所述目標(biāo)命令符集合,確定將要發(fā)送的請(qǐng)求對(duì)應(yīng)的命令符,再將對(duì)應(yīng)的命令符發(fā)送給LoRaWAN通訊模塊,LoRaWAN通訊模塊將接收到的命令符進(jìn)行封裝,并對(duì)封裝后的命令符進(jìn)行多層加密,之后LoRaWAN通訊模塊通過無線通訊接口將加密后的數(shù)據(jù)發(fā)出。當(dāng)LoRaWAN通訊模塊收到服務(wù)器發(fā)送的信息,將信息進(jìn)行解密后發(fā)送給所述主控模塊。
此外,所述主控模塊通過調(diào)用液晶顯示模塊、閥門控制模塊、采集模塊和電源模塊可以分別完成對(duì)液晶顯示、閥門打開或關(guān)閉、計(jì)量采集和開機(jī)或關(guān)機(jī)等的控制。
由于本發(fā)明實(shí)施例提供的數(shù)據(jù)通訊方法中,所述主控模塊可以根據(jù)發(fā)送數(shù)據(jù)的第三命令符,將待發(fā)送的數(shù)據(jù)發(fā)送給服務(wù)器,實(shí)現(xiàn)了智能表與服務(wù)器之間的數(shù)據(jù)通訊。
圖5為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)通訊裝置的示意圖。
本發(fā)明實(shí)施例提供了一種數(shù)據(jù)通訊裝置,該裝置包括:
識(shí)別模塊51,用于識(shí)別預(yù)先安裝的長距離廣域網(wǎng)LoRaWAN通訊模塊的目標(biāo)類型;
確定模塊52,用于根據(jù)所述LoRaWAN通訊模塊的目標(biāo)類型,及自身針對(duì)至少兩種類型的LoRaWAN通訊模塊保存的各命令符集合,確定所述目標(biāo)類型的LoRaWAN通訊模塊對(duì)應(yīng)的目標(biāo)命令符集合;
調(diào)用模塊53,用于根據(jù)所述目標(biāo)命令符集合,調(diào)用所述LoRaWAN通訊模塊與服務(wù)器進(jìn)行通訊。
所述調(diào)用模塊53,具體用于在所述目標(biāo)命令符集合中確定入網(wǎng)連接請(qǐng)求的第一命令符,向所述LoRaWAN通訊模塊發(fā)送所述第一命令符,使所述LoRaWAN通訊模塊向服務(wù)器發(fā)送入網(wǎng)連接請(qǐng)求。
所述調(diào)用模塊53,具體用于如果在設(shè)定的時(shí)間長度內(nèi)未接收到入網(wǎng)連接成功的確認(rèn)信息;判斷入網(wǎng)失敗的次數(shù)是否達(dá)到設(shè)定的次數(shù)閾值;如果否,則繼續(xù)向所述LoRaWAN通訊模塊發(fā)送所述第一命令符,使所述LoRaWAN通訊模塊向服務(wù)器發(fā)送入網(wǎng)連接請(qǐng)求,如果是,確定入網(wǎng)失敗。
所述調(diào)用模塊53,具體用于在所述目標(biāo)命令符集合中確定檢查網(wǎng)絡(luò)狀態(tài)的第二命令符,向所述LoRaWAN通訊模塊發(fā)送所述第二命令符,使所述LoRaWAN通訊模塊向服務(wù)器發(fā)送檢查網(wǎng)絡(luò)狀態(tài)請(qǐng)求。
所述調(diào)用模塊53,具體用于如果當(dāng)前存在待發(fā)送的數(shù)據(jù),在所述目標(biāo)命令符集合中確定進(jìn)行數(shù)據(jù)發(fā)送的第三命令符,向所述LoRaWAN通訊模塊發(fā)送所述第三命令符及所述待發(fā)送的數(shù)據(jù),使所述LoRaWAN通訊模塊向服務(wù)器發(fā)送所述數(shù)據(jù)。
本發(fā)明提供了一種數(shù)據(jù)通訊方法及裝置,該方法包括:識(shí)別預(yù)先安裝的長距離廣域網(wǎng)LoRaWAN通訊模塊的目標(biāo)類型;根據(jù)所述LoRaWAN通訊模塊的目標(biāo)類型,及自身針對(duì)至少兩種類型的LoRaWAN通訊模塊保存的各命令符集合,確定所述目標(biāo)類型的LoRaWAN通訊模塊對(duì)應(yīng)的目標(biāo)命令符集合;根據(jù)所述目標(biāo)命令符集合,調(diào)用所述LoRaWAN通訊模塊與服務(wù)器進(jìn)行通訊。由于本發(fā)明提供的數(shù)據(jù)通訊方法中保存了至少兩種類型的LoRaWAN通訊模塊的各命令符集合,根據(jù)更換后的LoRaWAN通訊模塊的類型確定主控模塊中保存的對(duì)應(yīng)的目標(biāo)命令符集合,根據(jù)目標(biāo)命令符集合實(shí)現(xiàn)LoRaWAN通訊模塊與主控模塊的正常通訊,因此保證了智能表與服務(wù)器之間的正常通訊,并且不需要更換主控模塊,智能表維修時(shí)操作簡單和成本降低。
對(duì)于系統(tǒng)/裝置實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述的比較簡單,相關(guān)之處參見方法實(shí)施例的部分說明即可。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本申請(qǐng)的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本申請(qǐng)可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本申請(qǐng)可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器、CD-ROM、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
本申請(qǐng)是參照根據(jù)本申請(qǐng)實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。
這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。
這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。
盡管已描述了本申請(qǐng)的優(yōu)選實(shí)施例,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對(duì)這些實(shí)施例做出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實(shí)施例以及落入本申請(qǐng)范圍的所有變更和修改。
顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。