眾所周知,無線通訊時,因周圍電磁環(huán)境,其通訊信號難免會受到干擾。ZigBee無線網(wǎng)絡(luò)協(xié)議在設(shè)計時已經(jīng)充分
考慮了各種抗干擾手段,這些抗干擾手段也通過了國際IEEE的認可,并頒布了相關(guān)標準,但無線通訊信號會受干擾是
一個不爭的事實。
今天我們要討論的主題是無線信號受干擾時如何確保我們的刷卡數(shù)據(jù)不丟失和不受干擾。使用過無線網(wǎng)絡(luò)的讀者
會有這種感受:從網(wǎng)絡(luò)內(nèi)一臺電腦復(fù)制大型文件到另一臺電腦(它們之間通過無線網(wǎng)絡(luò)連接),其傳輸速度不是恒定
的,當有信號干擾時,其速度會突然很慢,但干擾信號消失時,其傳輸速度恢復(fù);但傳輸?shù)奈募粫p壞,這是因為
有通訊協(xié)議。
我們的通訊協(xié)議將要傳輸?shù)臄?shù)據(jù)打包成一個一個的數(shù)據(jù)幀,通訊數(shù)據(jù)幀包括了幀號、幀頭、幀長度、幀數(shù)據(jù)校驗
等部分組成。其通訊步驟如下:
1、電腦首先發(fā)出查詢指令給該機,該機收到電腦的查詢指令后,會將該機當前的數(shù)據(jù)情況應(yīng)答給電腦。應(yīng)答內(nèi)容包括
:機號、型號、未采集數(shù)據(jù)天數(shù)、微采集數(shù)據(jù)日期、未采集數(shù)據(jù)數(shù)量、未采集數(shù)據(jù)將分成的通訊幀數(shù)量等。
2、當電腦收到機器的應(yīng)答幀,并檢查完畢校驗位后,就已知該機器數(shù)據(jù)記錄情況;然后電腦發(fā)出收集數(shù)據(jù)命令。
3、當機器收到收集數(shù)據(jù)命令后,會將要傳輸?shù)臄?shù)據(jù)打包、編號,然后逐個數(shù)據(jù)幀傳輸給電腦。
4、電腦在接收到最后一個幀號(因之前已經(jīng)知道該機器本次傳輸?shù)膸瑪?shù)量)后,開始逐個校驗本次接收的全部數(shù)據(jù)幀
,然后將校驗失敗的數(shù)據(jù)幀丟失,將數(shù)據(jù)完好的數(shù)據(jù)幀按編號排序整理。
5、電腦整理完畢后,如果發(fā)現(xiàn)所接收的數(shù)據(jù)幀的編號不完整,如本次共接收100個幀,經(jīng)校驗后10、23、58號幀數(shù)據(jù)
受干擾,電腦將發(fā)“重傳指定幀號”命令。
6、機器接收到“重傳指定幀號”命令后,將指定的數(shù)據(jù)幀:10、23、58號幀重新傳輸給電腦。
7、重復(fù)第5、6部直道所有的數(shù)據(jù)幀全部正確地傳輸完畢。
8、電腦發(fā)出“標記已傳輸數(shù)據(jù)”命令,機器在接收到此命令后,自動將剛才已經(jīng)正確傳輸給電腦的刷卡記錄作上“已
傳輸”標記。有“已傳輸”標記的數(shù)據(jù)下次收集新數(shù)據(jù)時將不會再次傳輸給電腦。
從上面的通訊過程我們假設(shè)在機器傳輸100條刷卡數(shù)據(jù)給電腦時受到了無線信號干擾,導(dǎo)致了其中的10、23、58
號幀被破壞,電腦在校對數(shù)據(jù)時要求將10、23、58號幀重新傳輸,如果再次被干擾,電腦還將要求重新傳輸受干擾的
幀,直到全部準確接收為止。
上述傳輸過程與我們使用無線網(wǎng)絡(luò)傳輸文件的原理是相同的,當無線網(wǎng)絡(luò)信號收到干擾時,其被干擾的僅是某個
通訊幀,或多個通訊幀,但我們的通訊協(xié)議會檢查出受干擾的通訊幀,然后自動重傳受干擾的數(shù)據(jù)幀,直到全部正確
為止。這樣在無線網(wǎng)絡(luò)信號受干擾時,僅產(chǎn)生了數(shù)據(jù)重傳而不是數(shù) 據(jù)丟失。在通訊干擾嚴重的時候,我們僅能感覺到
通訊速度慢了,而不是數(shù)據(jù)丟失了或被破壞了。
考慮了各種抗干擾手段,這些抗干擾手段也通過了國際IEEE的認可,并頒布了相關(guān)標準,但無線通訊信號會受干擾是
一個不爭的事實。
今天我們要討論的主題是無線信號受干擾時如何確保我們的刷卡數(shù)據(jù)不丟失和不受干擾。使用過無線網(wǎng)絡(luò)的讀者
會有這種感受:從網(wǎng)絡(luò)內(nèi)一臺電腦復(fù)制大型文件到另一臺電腦(它們之間通過無線網(wǎng)絡(luò)連接),其傳輸速度不是恒定
的,當有信號干擾時,其速度會突然很慢,但干擾信號消失時,其傳輸速度恢復(fù);但傳輸?shù)奈募粫p壞,這是因為
有通訊協(xié)議。
我們的通訊協(xié)議將要傳輸?shù)臄?shù)據(jù)打包成一個一個的數(shù)據(jù)幀,通訊數(shù)據(jù)幀包括了幀號、幀頭、幀長度、幀數(shù)據(jù)校驗
等部分組成。其通訊步驟如下:
1、電腦首先發(fā)出查詢指令給該機,該機收到電腦的查詢指令后,會將該機當前的數(shù)據(jù)情況應(yīng)答給電腦。應(yīng)答內(nèi)容包括
:機號、型號、未采集數(shù)據(jù)天數(shù)、微采集數(shù)據(jù)日期、未采集數(shù)據(jù)數(shù)量、未采集數(shù)據(jù)將分成的通訊幀數(shù)量等。
2、當電腦收到機器的應(yīng)答幀,并檢查完畢校驗位后,就已知該機器數(shù)據(jù)記錄情況;然后電腦發(fā)出收集數(shù)據(jù)命令。
3、當機器收到收集數(shù)據(jù)命令后,會將要傳輸?shù)臄?shù)據(jù)打包、編號,然后逐個數(shù)據(jù)幀傳輸給電腦。
4、電腦在接收到最后一個幀號(因之前已經(jīng)知道該機器本次傳輸?shù)膸瑪?shù)量)后,開始逐個校驗本次接收的全部數(shù)據(jù)幀
,然后將校驗失敗的數(shù)據(jù)幀丟失,將數(shù)據(jù)完好的數(shù)據(jù)幀按編號排序整理。
5、電腦整理完畢后,如果發(fā)現(xiàn)所接收的數(shù)據(jù)幀的編號不完整,如本次共接收100個幀,經(jīng)校驗后10、23、58號幀數(shù)據(jù)
受干擾,電腦將發(fā)“重傳指定幀號”命令。
6、機器接收到“重傳指定幀號”命令后,將指定的數(shù)據(jù)幀:10、23、58號幀重新傳輸給電腦。
7、重復(fù)第5、6部直道所有的數(shù)據(jù)幀全部正確地傳輸完畢。
8、電腦發(fā)出“標記已傳輸數(shù)據(jù)”命令,機器在接收到此命令后,自動將剛才已經(jīng)正確傳輸給電腦的刷卡記錄作上“已
傳輸”標記。有“已傳輸”標記的數(shù)據(jù)下次收集新數(shù)據(jù)時將不會再次傳輸給電腦。
從上面的通訊過程我們假設(shè)在機器傳輸100條刷卡數(shù)據(jù)給電腦時受到了無線信號干擾,導(dǎo)致了其中的10、23、58
號幀被破壞,電腦在校對數(shù)據(jù)時要求將10、23、58號幀重新傳輸,如果再次被干擾,電腦還將要求重新傳輸受干擾的
幀,直到全部準確接收為止。
上述傳輸過程與我們使用無線網(wǎng)絡(luò)傳輸文件的原理是相同的,當無線網(wǎng)絡(luò)信號收到干擾時,其被干擾的僅是某個
通訊幀,或多個通訊幀,但我們的通訊協(xié)議會檢查出受干擾的通訊幀,然后自動重傳受干擾的數(shù)據(jù)幀,直到全部正確
為止。這樣在無線網(wǎng)絡(luò)信號受干擾時,僅產(chǎn)生了數(shù)據(jù)重傳而不是數(shù) 據(jù)丟失。在通訊干擾嚴重的時候,我們僅能感覺到
通訊速度慢了,而不是數(shù)據(jù)丟失了或被破壞了。