本發(fā)明涉及電能表領(lǐng)域,尤其是一種基于面向?qū)ο髤f(xié)議與傳統(tǒng)協(xié)議的電能表自適應(yīng)方法、裝置及電能表。
背景技術(shù):
:目前,主站與采集終端采用的是q/gdw376.1通訊協(xié)議,而采集終端與計(jì)量終端間采用的則是dl/t645通訊協(xié)議,由于采集系統(tǒng)各層次間的通訊協(xié)議尚未統(tǒng)一,同一系統(tǒng)采用兩種不同的通訊協(xié)議,會存在數(shù)據(jù)溯源、兼容性等問題。同時(shí),行業(yè)各單位正在推行統(tǒng)一電能信息采集系統(tǒng)的通訊標(biāo)準(zhǔn)《電能信息采集與管理系統(tǒng)-面向?qū)ο蟮幕ゲ僮餍詳?shù)據(jù)交換協(xié)議》(dl/t698通訊協(xié)議),但是在新老協(xié)議過渡階段,由于新老系統(tǒng)并存,因此提供一種既能向下兼容老的dl/t645通訊協(xié)議又能滿足最新的dl/t698通訊協(xié)議的電能表,成為目前亟待解決的問題。技術(shù)實(shí)現(xiàn)要素:針對上述現(xiàn)有技術(shù)中存在的問題,本發(fā)明旨在提供一種基于面向?qū)ο髤f(xié)議與傳統(tǒng)協(xié)議的電能表自適應(yīng)方法、裝置及電能表,將能夠自動識別接收到的數(shù)據(jù)的協(xié)議類型,以提高電能表的兼容性,降低電能表的更換成本。為此,本發(fā)明采用的技術(shù)方案為:一種基于面向?qū)ο髤f(xié)議與傳統(tǒng)協(xié)議的電能表自適應(yīng)方法,所述方法包括:所述電能表接收主站或采集終端發(fā)送來的命令信號;所述電能表識別所述命令信號對應(yīng)的通信協(xié)議,所述通信協(xié)議包括基于面向?qū)ο髤f(xié)議或傳統(tǒng)協(xié)議;根據(jù)所述通信協(xié)議解析所述命令信號,并根據(jù)解析結(jié)果執(zhí)行相應(yīng)的操作。進(jìn)一步地,電能表識別所述命令信號對應(yīng)的通信協(xié)議之前,還為所述命令信號開辟一數(shù)據(jù)緩沖區(qū),將所述命令信號存儲于所述數(shù)據(jù)緩沖區(qū)中。進(jìn)一步地,根據(jù)所述通信協(xié)議解析所述命令信號,包括:在確定出所述命令信號對應(yīng)的所述通信協(xié)議是所述基于面向?qū)ο髤f(xié)議或傳統(tǒng)協(xié)議時(shí),解析所述命令信號;或在確定出所述命令信號對應(yīng)的所述通信協(xié)議不是基于面向?qū)ο髤f(xié)議,也不是所述傳統(tǒng)協(xié)議時(shí),判定所述命令信號錯(cuò)誤并丟棄所述命令信號。進(jìn)一步地,所述傳統(tǒng)協(xié)議為dl/t645協(xié)議,所述基于面向?qū)ο髤f(xié)議為dl/t698協(xié)議。進(jìn)一步地,確定電能表識別所述命令信號對應(yīng)的通信協(xié)議,包括:判斷所述數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)長度是否為0;若判斷結(jié)果為否,提供一第一頭部識別指針,將所述第一頭部識別指針放置于所述數(shù)據(jù)緩沖區(qū)隊(duì)首處;判斷數(shù)據(jù)的起始字符是否為68h;若判斷結(jié)果為是,獲取數(shù)據(jù)的長度字節(jié),判斷是否符合dl/t698協(xié)議;若判斷結(jié)果為是,判斷地址域是否符合dl/t698協(xié)議;若判斷結(jié)果為是,判斷幀頭校驗(yàn)符是否符合dl/t698協(xié)議;若判斷結(jié)果為是,判斷幀校驗(yàn)符是否符合dl/t698協(xié)議;若判斷結(jié)果為是,執(zhí)行步驟判斷數(shù)據(jù)的結(jié)束字符是否為16h;若判斷結(jié)果為是,判定所述命令信號符合dl/t698協(xié)議,根據(jù)所述通信協(xié)議解析所述命令信號,并根據(jù)解析結(jié)果執(zhí)行相應(yīng)的操作;若上述判斷結(jié)果為否,均需將所述第一頭部識別指針的地址增加1,丟棄所述第一頭部識別指針之前所在地址的字節(jié),重新判斷數(shù)據(jù)緩沖區(qū)中數(shù)據(jù)的起始字符是否為68h。更進(jìn)一步地,當(dāng)所述第一頭部識別指針移動至所述數(shù)據(jù)緩沖區(qū)的尾部指針處時(shí),判定所述命令信號對應(yīng)的通信協(xié)議不是所述基于面向?qū)ο髤f(xié)議。進(jìn)一步地,確定所述命令信號對應(yīng)的通信協(xié)議是否為所述傳統(tǒng)協(xié)議,包括:判斷所述數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)長度是否為0;若判斷結(jié)果為否,提供一第二頭部識別指針,將所述第二頭部識別指針放置于所述數(shù)據(jù)緩沖區(qū)隊(duì)首處;判斷數(shù)據(jù)的第一個(gè)起始字符是否為68h;若判斷結(jié)果為是,判斷數(shù)據(jù)的第二個(gè)起始字符是否為68h;若判斷結(jié)果為是,獲取數(shù)據(jù)的長度字節(jié),判斷是否符合dl/t645協(xié)議;若判斷結(jié)果為是,判斷數(shù)據(jù)的校驗(yàn)碼是否符合dl/t645協(xié)議;若判斷結(jié)果為是,判斷數(shù)據(jù)的結(jié)束字符是否為16h;若判斷結(jié)果為是,判定該命令信號符合dl/t645協(xié)議,根據(jù)所述通信協(xié)議解析所述命令信號,并根據(jù)解析結(jié)果執(zhí)行相應(yīng)的操作;若上述判斷結(jié)果為否,均需將所述第二頭部識別指針的地址增加1,丟棄所述第二頭部識別指針之前所在地址的字節(jié),重新判斷數(shù)據(jù)的第一個(gè)起始字符是否為68h。更進(jìn)一步地,當(dāng)所述第二頭部識別指針移動至所述數(shù)據(jù)緩沖區(qū)的尾部指針處時(shí),判定所述命令信號對應(yīng)的通信協(xié)議不是所述傳統(tǒng)協(xié)議。本發(fā)明采用的另一種技術(shù)方案為:一種基于面向?qū)ο髤f(xié)議與傳統(tǒng)協(xié)議的電能表自適應(yīng)裝置,包含:接收模塊,用于接收主站或采集終端發(fā)送來的命令信號;識別模塊,用于識別所述命令信號對應(yīng)的通信協(xié)議,所述通信協(xié)議包括基于面向?qū)ο髤f(xié)議或傳統(tǒng)協(xié)議;解析及執(zhí)行模塊,根據(jù)所述通信協(xié)議解析所述命令信號,并根據(jù)解析結(jié)果執(zhí)行相應(yīng)的操作。進(jìn)一步地,還包括一數(shù)據(jù)緩沖模塊,在電能表識別所述命令信號對應(yīng)的所述通信協(xié)議之前,將所述命令信號存儲于所述數(shù)據(jù)緩沖模塊中。進(jìn)一步地,所述的解析及執(zhí)行模塊,用于根據(jù)所述通信協(xié)議解析所述命令信號,包括:在確定出所述命令信號對應(yīng)的所述通信協(xié)議是所述基于面向?qū)ο髤f(xié)議或傳統(tǒng)協(xié)議時(shí),解析所述命令信號;或在確定出所述命令信號對應(yīng)的所述通信協(xié)議不是基于面向?qū)ο髤f(xié)議,也不是所述傳統(tǒng)協(xié)議時(shí),判定所述命令信號錯(cuò)誤并丟棄所述命令信號。進(jìn)一步地,所述識別模塊,確定所述命令信號對應(yīng)的所述通信協(xié)議是否為所述基于面向?qū)ο髤f(xié)議,包括:判斷所述數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)長度是否為0;若判斷結(jié)果為否,提供一第一頭部識別指針,將所述第一頭部識別指針放置于所述數(shù)據(jù)緩沖區(qū)隊(duì)首處;判斷數(shù)據(jù)的起始字符是否為68h;若判斷結(jié)果為是,獲取數(shù)據(jù)的長度字節(jié),判斷是否符合dl/t698協(xié)議;若判斷結(jié)果為是,判斷地址域是否符合dl/t698協(xié)議;若判斷結(jié)果為是,判斷幀頭校驗(yàn)符是否符合dl/t698協(xié)議;若判斷結(jié)果為是,判斷幀校驗(yàn)符是否符合dl/t698協(xié)議;若判斷結(jié)果為是,執(zhí)行步驟判斷數(shù)據(jù)的結(jié)束字符是否為16h;若判斷結(jié)果為是,判定所述命令信號符合dl/t698協(xié)議,根據(jù)所述通信協(xié)議解析所述命令信號,并根據(jù)解析結(jié)果執(zhí)行相應(yīng)的操作;若上述判斷結(jié)果為否,均需將所述第一頭部識別指針的地址增加1,丟棄所述第一頭部識別指針之前所在地址的字節(jié),重新判斷數(shù)據(jù)緩沖區(qū)中數(shù)據(jù)的起始字符是否為68h。更進(jìn)一步地,所述識別模塊,當(dāng)所述第一頭部識別指針移動至所述數(shù)據(jù)緩沖區(qū)的尾部指針處時(shí),判定所述命令信號的通信協(xié)議不是所述基于面向?qū)ο髤f(xié)議。進(jìn)一步地,所述識別模塊,確定所述命令信號對應(yīng)的所述通信協(xié)議是否為所述傳統(tǒng)協(xié)議,包括:判斷所述數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)長度是否為0;若判斷結(jié)果為否,提供一第二頭部識別指針,將所述第二頭部識別指針放置于所述數(shù)據(jù)緩沖區(qū)隊(duì)首處;判斷數(shù)據(jù)的第一個(gè)起始字符是否為68h;若判斷結(jié)果為是,判斷數(shù)據(jù)的第二個(gè)起始字符是否為68h;若判斷結(jié)果為是,獲取數(shù)據(jù)的長度字節(jié),判斷是否符合dl/t645協(xié)議;若判斷結(jié)果為是,判斷數(shù)據(jù)的校驗(yàn)碼是否符合dl/t645協(xié)議;若判斷結(jié)果為是,判斷數(shù)據(jù)的結(jié)束字符是否為16h;若判斷結(jié)果為是,判定該命令信號符合dl/t645協(xié)議,根據(jù)所述通信協(xié)議解析所述命令信號,并根據(jù)解析結(jié)果執(zhí)行相應(yīng)的操作;若上述判斷結(jié)果為否,均需將所述第二頭部識別指針的地址增加1,丟棄所述第二頭部識別指針之前所在地址的字節(jié),重新判斷數(shù)據(jù)的第一個(gè)起始字符是否為68h。更進(jìn)一步地,所述識別模塊,當(dāng)所述第二頭部識別指針移動至所述數(shù)據(jù)緩沖區(qū)的尾部指針處時(shí),判定所述命令信號的通信協(xié)議不是所述傳統(tǒng)協(xié)議。本發(fā)明采用的又一技術(shù)方案為:一種電能表,包含上述基于面向?qū)ο髤f(xié)議與傳統(tǒng)協(xié)議的電能表自適應(yīng)裝置。本發(fā)明具有如下優(yōu)點(diǎn)或有益效果:本發(fā)明使電能表能夠兼容dl/t645與dl/t698兩種協(xié)議,實(shí)現(xiàn)了這兩種協(xié)議的自適應(yīng)識別,提高了采集系統(tǒng)間通訊的交互效率。此外,本發(fā)明提高了表計(jì)兼容性,降低了電能表的更換成本。附圖說明參考所附附圖,以更加充分的描述本發(fā)明的實(shí)施例。然而,所附附圖僅用于說明和闡述,并不構(gòu)成對本發(fā)明范圍的限制。圖1為本發(fā)明實(shí)施例一的流程示意圖一;圖2為本發(fā)明實(shí)施例一的流程示意圖二;圖3為本發(fā)明實(shí)施例一判斷命令信號是否符合dl/t698協(xié)議的流程示意圖;圖4為本發(fā)明實(shí)施例一判斷命令信號是否符合dl/t654協(xié)議的流程示意圖;圖5為本發(fā)明實(shí)施例二電能表自適應(yīng)裝置的結(jié)構(gòu)示意圖。具體實(shí)施方式下面結(jié)合說明書附圖和具體實(shí)施方式對本發(fā)明進(jìn)行詳細(xì)說明。實(shí)施例一本實(shí)施例為一種基于面向?qū)ο髤f(xié)議與傳統(tǒng)協(xié)議的電能表自適應(yīng)方法,具體流程如圖1所示。如圖1所示的基于面向?qū)ο髤f(xié)議與傳統(tǒng)協(xié)議的電能表自適應(yīng)方法,其步驟如下:s1、電能表接收主站或采集終端發(fā)送來的命令信號;s2、電能表識別該命令信號對應(yīng)的通信協(xié)議;s3、根據(jù)該通信協(xié)議對命令信號進(jìn)行解析,并根據(jù)解析結(jié)果執(zhí)行相應(yīng)的操作。具體來說,在該電能表的自適應(yīng)識別方法中,電能表接收到主站或采集終端發(fā)送來的命令信號后,對該命令信號進(jìn)行識別,判斷該命令信號對應(yīng)的通信協(xié)議,并在判定后根據(jù)該通信協(xié)議對命令信號進(jìn)行解析,然后電能表根據(jù)解析結(jié)果執(zhí)行相應(yīng)的操作。其中,主站或采集終端發(fā)送的命令信號通過傳統(tǒng)協(xié)議以及基于面向?qū)?yīng)的基于面向?qū)ο髤f(xié)議,其中傳統(tǒng)協(xié)議為dl/t645協(xié)議(即電能表之前使用的傳統(tǒng)協(xié)議),基于面向?qū)ο髤f(xié)議為dl/t698協(xié)議(即基于面向?qū)ο蟮男聟f(xié)議)。相應(yīng)的,電能表接收到命令信號后,判斷該命令信號是符合dl/t645協(xié)議還是dl/t698協(xié)議。進(jìn)一步來講,電能表識別命令信號對應(yīng)的通信協(xié)議之前,要為該命令信號開辟一數(shù)據(jù)緩沖區(qū),并將該命令信號存儲于該數(shù)據(jù)緩沖區(qū)中,形成一環(huán)形隊(duì)列結(jié)構(gòu)。在進(jìn)行通信協(xié)議識別時(shí),通過識別緩沖區(qū)中的從頭部指針到尾部指針的數(shù)據(jù)是否符合鏈路層幀格式,若不符合,則將頭部指針向前移動一個(gè)字節(jié)(丟棄之前的頭部指針對應(yīng)的字節(jié))再進(jìn)行識別,直至出現(xiàn)符合完整的一幀數(shù)據(jù)。若當(dāng)頭部指針到尾部指針都沒有出現(xiàn)符合通信協(xié)議對應(yīng)的鏈路層幀格式的一幀數(shù)據(jù)時(shí),說明該命令信號并不符合該通信協(xié)議,則需要對其是否屬于其他通信協(xié)議進(jìn)行判斷或者直接丟棄。具體來說,在電能表接收到命令信號后,為每一通訊信道開辟的數(shù)據(jù)緩沖區(qū),為環(huán)形隊(duì)列結(jié)構(gòu),其中:ptail為環(huán)形隊(duì)列尾部指針,每接收到一個(gè)數(shù)據(jù)加加,指向下一個(gè)數(shù)據(jù)存儲的位置;phead_645為環(huán)形隊(duì)列645協(xié)議的第二頭部識別指針;phead_698為環(huán)形隊(duì)列698協(xié)議的第一頭部識別指針。在進(jìn)行識別時(shí),協(xié)議擁有各自獨(dú)立的頭部指針phead,尾部指針ptail則由物理接收層控制偏移;在各自的識別流程中通過識別phead到ptail的數(shù)據(jù)是否符合鏈路層幀格式,若不符合則phead加1,丟棄一個(gè)字節(jié),識別,直至phead等于ptail;若符合則定格phead,繼續(xù)識別其他幀格式條件,直至符合完整的一幀。進(jìn)一步來講,如圖2所示,在步驟s2中,電能表判斷命令信號對應(yīng)的通信協(xié)議過程包括步驟:s21、判斷該命令信號對應(yīng)的通信協(xié)議是否為dl/t698協(xié)議,若是,執(zhí)行步驟s3;否則,執(zhí)行步驟s22;s22、判斷該命令信號對應(yīng)的通信協(xié)議是否為dl/t645協(xié)議,若是,執(zhí)行步驟s3;否則,執(zhí)行步驟s23;s23、判定該命令信號錯(cuò)誤并丟棄該命令信號。具體來說,在電能表判斷命令信號對應(yīng)的通信協(xié)議的過程中,首先判斷是否符合dl/t698協(xié)議,若不是再判斷是否符合dl/t645協(xié)議。若該命令信號的通信協(xié)議即不符合dl/t698也不符合dl/t645,則說明該命令信號是錯(cuò)誤的,電能表不能夠?qū)υ撔盘栠M(jìn)行識別,所以丟棄該信號。如表1所示,其為dl/t698通信協(xié)議的幀格式:表1dl/t698通信協(xié)議的幀格式所以,如圖3所示,判斷該命令信號是否符合dl/t698協(xié)議的過程包括步驟:s211、判斷數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)長度是否為0,若不是,執(zhí)行步驟s212;否則,退出識別過程;s212、將第一頭部識別指針放置于數(shù)據(jù)緩沖區(qū)隊(duì)首處;s213、判斷起始字符是否為68h,若是,執(zhí)行步驟s214;否則,執(zhí)行步驟s2110;s214、獲取長度字節(jié),判斷是否符合dl/t698協(xié)議,若是,執(zhí)行步驟s215;否則,執(zhí)行步驟s2110;s215、判斷地址域是否符合dl/t698協(xié)議,若是,執(zhí)行步驟s216;否則,執(zhí)行步驟s2110;s216、判斷幀頭校驗(yàn)符是否符合dl/t698協(xié)議,若是,執(zhí)行步驟s217;否則,執(zhí)行步驟s2110;s217、判斷幀校驗(yàn)符是否符合dl/t698協(xié)議,若是,執(zhí)行步驟s218;否則,執(zhí)行步驟s2110;s218、判斷結(jié)束字符是否為16h,若是,執(zhí)行步驟s219;否則,執(zhí)行步驟s2110;s219、判定該命令信號符合dl/t698協(xié)議,執(zhí)行步驟s3;s2110、將第一頭部識別指針的地址增加1,丟棄第一頭部識別指針之前所在地址的字節(jié),返回步驟s213。其中,值得指出的是,當(dāng)?shù)谝活^部識別指針移動至數(shù)據(jù)緩沖區(qū)的尾部指針處時(shí),判定命令信號的通信協(xié)議不是所述基于面向?qū)ο髤f(xié)議。如表2所示,其為dl/t645通信協(xié)議的幀格式:表2dl/t645通信協(xié)議的幀格式說明代碼幀起始符68h地址域a0~a5幀起始符68h控制碼c數(shù)據(jù)域長度l數(shù)據(jù)域data校驗(yàn)碼cs結(jié)束符16h所以,如圖4所示,判斷該命令信號是否符合dl/t645協(xié)議的過程包括步驟:s221、判斷數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)長度是否為0,若不是,執(zhí)行步驟s222;否則,退出識別過程;s222、將第二頭部識別指針放置于數(shù)據(jù)緩沖區(qū)隊(duì)首處;s223、判斷第一個(gè)起始字符是否為68h,若是,執(zhí)行步驟s224;否則,執(zhí)行步驟s229;s224、判斷第二個(gè)起始字符是否為68h,若是,執(zhí)行步驟s225;否則,執(zhí)行步驟s229;s225、獲取數(shù)據(jù)域長度字節(jié),判斷是否符合dl/t645協(xié)議,若是,執(zhí)行步驟s226;否則,執(zhí)行步驟s229;s226、判斷校驗(yàn)碼是否符合dl/t645,若是,執(zhí)行步驟s227;否則,執(zhí)行步驟s229;s227、判斷結(jié)束字符是否為16h,若是,執(zhí)行步驟s228;否則,執(zhí)行步驟s229;s228、判定該命令信號符合dl/t645協(xié)議,執(zhí)行步驟s3;s229、將第二頭部識別指針的地址增加1,丟棄第二頭部識別指針之前所在地址的字節(jié),返回步驟s223。其中,值得指出的是,當(dāng)?shù)诙^部識別指針移動至數(shù)據(jù)緩沖區(qū)的尾部指針處時(shí),判定命令信號的通信協(xié)議不是所述傳統(tǒng)協(xié)議。在上述提出的基于面向?qū)ο髤f(xié)議與傳統(tǒng)協(xié)議的電能表自適應(yīng)方法中,電能表能夠兼容dl/t645與dl/t698兩種協(xié)議,實(shí)現(xiàn)了這兩種協(xié)議的自適應(yīng)識別,提高了采集系統(tǒng)間通訊的交互效率。此外,本發(fā)明提高了表計(jì)兼容性,降低了電能表的更換成本。實(shí)施例二本實(shí)施例涉及一種基于面向?qū)ο髤f(xié)議與傳統(tǒng)協(xié)議的電能表自適應(yīng)裝置,如圖5所示,該裝置包含:接收模塊,用于接收主站或采集終端發(fā)送來的命令信號;識別模塊,用于識別所述命令信號對應(yīng)的通信協(xié)議,所述通信協(xié)議包括基于面向?qū)ο髤f(xié)議或傳統(tǒng)協(xié)議;解析及執(zhí)行模塊,根據(jù)所述通信協(xié)議解析所述命令信號,并根據(jù)解析結(jié)果執(zhí)行相應(yīng)的操作;數(shù)據(jù)緩沖模塊,在電能表識別所述命令信號對應(yīng)的所述通信協(xié)議之前,將所述命令信號存儲于所述數(shù)據(jù)緩沖模塊中。所述的解析及執(zhí)行模塊,用于根據(jù)所述通信協(xié)議解析所述命令信號,包括:在確定出所述命令信號對應(yīng)的所述通信協(xié)議是所述基于面向?qū)ο髤f(xié)議或傳統(tǒng)協(xié)議時(shí),解析所述命令信號;或在確定出所述命令信號對應(yīng)的所述通信協(xié)議不是基于面向?qū)ο髤f(xié)議,也不是所述傳統(tǒng)協(xié)議時(shí),判定所述命令信號錯(cuò)誤并丟棄所述命令信號。具體地說,所述識別模塊,確定所述命令信號對應(yīng)的所述通信協(xié)議是否為所述基于面向?qū)ο髤f(xié)議,包括:判斷所述數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)長度是否為0;若判斷結(jié)果為否,提供一第一頭部識別指針,將所述第一頭部識別指針放置于所述數(shù)據(jù)緩沖區(qū)隊(duì)首處;判斷數(shù)據(jù)的起始字符是否為68h;若判斷結(jié)果為是,獲取數(shù)據(jù)的長度字節(jié),判斷是否符合dl/t698協(xié)議;若判斷結(jié)果為是,判斷地址域是否符合dl/t698協(xié)議;若判斷結(jié)果為是,判斷幀頭校驗(yàn)符是否符合dl/t698協(xié)議;若判斷結(jié)果為是,判斷幀校驗(yàn)符是否符合dl/t698協(xié)議;若判斷結(jié)果為是,執(zhí)行步驟判斷數(shù)據(jù)的結(jié)束字符是否為16h;若判斷結(jié)果為是,判定所述命令信號符合dl/t698協(xié)議,根據(jù)所述通信協(xié)議解析所述命令信號,并根據(jù)解析結(jié)果執(zhí)行相應(yīng)的操作;若上述判斷結(jié)果為否,均需將所述第一頭部識別指針的地址增加1,丟棄所述第一頭部識別指針之前所在地址的字節(jié),重新判斷數(shù)據(jù)緩沖區(qū)中數(shù)據(jù)的起始字符是否為68h。當(dāng)所述第一頭部識別指針移動至所述數(shù)據(jù)緩沖區(qū)的尾部指針處時(shí),判定所述命令信號的通信協(xié)議不是所述基于面向?qū)ο髤f(xié)議。具體地說,所述識別模塊,確定所述命令信號對應(yīng)的所述通信協(xié)議是否為所述傳統(tǒng)協(xié)議,包括:判斷所述數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)長度是否為0;若判斷結(jié)果為是,提供一第二頭部識別指針,將所述第二頭部識別指針放置于所述數(shù)據(jù)緩沖區(qū)隊(duì)首處;判斷數(shù)據(jù)的第一個(gè)起始字符是否為68h;若判斷結(jié)果為是,判斷數(shù)據(jù)的第二個(gè)起始字符是否為68h;若判斷結(jié)果為是,獲取數(shù)據(jù)的長度字節(jié),判斷是否符合dl/t645協(xié)議;若判斷結(jié)果為是,判斷數(shù)據(jù)的校驗(yàn)碼是否符合dl/t645協(xié)議;若判斷結(jié)果為是,判斷數(shù)據(jù)的結(jié)束字符是否為16h;若判斷結(jié)果為是,判定該命令信號符合dl/t645協(xié)議,根據(jù)所述通信協(xié)議解析所述命令信號,并根據(jù)解析結(jié)果執(zhí)行相應(yīng)的操作;若上述判斷結(jié)果為否,均需將所述第二頭部識別指針的地址增加1,丟棄所述第二頭部識別指針之前所在地址的字節(jié),重新判斷數(shù)據(jù)的第一個(gè)起始字符是否為68h。當(dāng)所述第二頭部識別指針移動至所述數(shù)據(jù)緩沖區(qū)的尾部指針處時(shí),判定所述命令信號的通信協(xié)議不是所述傳統(tǒng)協(xié)議。實(shí)施例三本實(shí)施例涉及一種電能表,本實(shí)施例中的電能表包含上述實(shí)施例二中的基于面向?qū)ο髤f(xié)議與傳統(tǒng)協(xié)議的電能表自適應(yīng)裝置。本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本申請的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本申請可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本申請可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲介質(zhì)(包括但不限于磁盤存儲器、cd-rom、光學(xué)存儲器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。本申請是參照根據(jù)本申請實(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ī)程序指令也可存儲在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲器中,使得存儲在該計(jì)算機(jī)可讀存儲器中的指令產(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è)方框中指定的功能的步驟。對于本領(lǐng)域的技術(shù)人員而言,閱讀上述說明后,各種變化和修正無疑將顯而易見。因此,所附的權(quán)利要求書應(yīng)看作是涵蓋本發(fā)明的真實(shí)意圖和范圍的全部變化和修正。在權(quán)利要求書范圍內(nèi)任何和所有等價(jià)的范圍與內(nèi)容,都應(yīng)認(rèn)為仍屬本發(fā)明的意圖和范圍內(nèi)。當(dāng)前第1頁12