一種光子接收端及其解碼方法
【技術(shù)領(lǐng)域】
[0001]本申請(qǐng)涉及可見光通信技術(shù)領(lǐng)域,具體涉及一種光子接收端及其解碼方法。
【背景技術(shù)】
[0002]無線光通信技術(shù)又稱可見光通訊,其通過LED光源的高頻率閃爍來進(jìn)行通信,有光代表1,無光代表0,其傳輸速率高達(dá)每秒上千兆。無線光通信通過可見光來進(jìn)行數(shù)據(jù)傳輸,與微波技術(shù)相比,有相當(dāng)豐富的頻譜資源,是一般微波通信和無線通信無法比擬的;同時(shí)可見光通信可以適用于任何通信協(xié)議、適用于任何環(huán)境。
[0003]為了通信的安全性,使通信內(nèi)容不被人竊取,現(xiàn)有技術(shù)中將待發(fā)送信息經(jīng)編碼后,再以可見光的形式發(fā)送編碼后的信息,在接收端,通過相應(yīng)的解碼方式將接收的光信號(hào)恢復(fù)為原始數(shù)據(jù)。
[0004]目前,光子客戶端編碼采用的是以高電平的個(gè)數(shù)表示信號(hào),每個(gè)高電平持續(xù)時(shí)間約為2ms左右,每組最多四個(gè)高電平,每組電平數(shù)表示2bit信號(hào);由于高電平和低電平均會(huì)有一定的延遲時(shí)間,因此,光子接收端在接收信號(hào)時(shí)可以通過檢測(cè)其單片機(jī)I/O引腳上的高電平及低電平延遲時(shí)間對(duì)接收到的信號(hào)進(jìn)行解碼。
[0005]由于與上述現(xiàn)有的編碼方式對(duì)應(yīng)的解碼方式需輸出和檢測(cè)的高電平個(gè)數(shù)較多,導(dǎo)致信號(hào)很不穩(wěn)定,并且信號(hào)整體發(fā)送時(shí)間和接收時(shí)間較長(zhǎng),數(shù)據(jù)傳輸速度慢。
【發(fā)明內(nèi)容】
[0006]針對(duì)上述問題,本發(fā)明提供一種光子接收端及其解碼方法。
[0007]根據(jù)本申請(qǐng)的第一方面,本申請(qǐng)?zhí)峁┮环N光子接收端,包括:接收模塊,用于接收光信號(hào)并將其轉(zhuǎn)換為電流信號(hào);信號(hào)轉(zhuǎn)換模塊,用于將電流信號(hào)轉(zhuǎn)換為電壓信號(hào);去噪模塊,用于對(duì)電壓信號(hào)進(jìn)行濾波,濾除噪聲干擾信號(hào);解碼模塊,用于對(duì)去噪的電壓信號(hào)進(jìn)行解碼;
接收模塊、信號(hào)轉(zhuǎn)換模塊、去噪模塊和解碼模塊順次信號(hào)連接。
[0008]根據(jù)本申請(qǐng)的第二方面,本申請(qǐng)?zhí)峁┮环N與上述光子接收端的解碼模塊對(duì)應(yīng)的解碼方法,包括步驟:
將獲取的電壓信號(hào)按位轉(zhuǎn)換為N進(jìn)位制數(shù)據(jù):
當(dāng)檢測(cè)一電信號(hào)單元時(shí),檢測(cè)并記錄所述電信號(hào)單元內(nèi)的高低電平持續(xù)時(shí)間段:Til、Ti2…和Tij,1、j、N為自然數(shù);
運(yùn)算Ti2、Ti3…和Tij與Til的運(yùn)算值,并根據(jù)運(yùn)算值將電信號(hào)單元轉(zhuǎn)換為與N進(jìn)位制數(shù)據(jù)相應(yīng)的數(shù)字。
[0009]本申請(qǐng)的有益效果是:本申請(qǐng)?zhí)峁┮环N光子接收端及其解碼方法,通過解碼模塊對(duì)光子接收端接收到的具有編碼的光信號(hào)進(jìn)行解碼,提高了光子接收端與光子客戶端之間傳輸信息的可靠性,而且本申請(qǐng)的解碼模塊使得光子接收端恢復(fù)原始數(shù)據(jù)的誤碼率較低,進(jìn)一步提高傳輸數(shù)據(jù)的性能穩(wěn)定性。
【附圖說明】
[0010]圖1為本例的光子接收端原理圖;
圖2為例的解碼方法流程圖;
圖3為本例的解碼中代表數(shù)據(jù)O和I電壓信號(hào)單元波形圖;
圖4為本例的需解碼信息的電壓信號(hào)波形圖。
【具體實(shí)施方式】
[0011]下面通過【具體實(shí)施方式】結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步詳細(xì)說明。
[0012]本例提供一種光子接收端,如圖1所示,包括接收模塊1、信號(hào)轉(zhuǎn)換模塊2、去噪模塊3、解碼模塊4和信號(hào)輸出模塊5 ;接收模塊1、信號(hào)轉(zhuǎn)換模塊2、去噪模塊3、解碼模塊4和信號(hào)輸出模塊5順次信號(hào)連接。
[0013]接收模塊I用于接收光子客戶端發(fā)出的光信號(hào),并將其轉(zhuǎn)換為電流信號(hào);信號(hào)轉(zhuǎn)換模塊2用于將電流信號(hào)轉(zhuǎn)換為電壓信號(hào);去噪模塊3用于對(duì)電壓信號(hào)進(jìn)行濾波,濾除噪聲干擾信號(hào),由于可見光通信過程中,可見光周圍的一些其他光線可以產(chǎn)生噪聲,如日光燈,去噪模塊3可以中值濾波、小波變換等方式對(duì)電壓信號(hào)進(jìn)行分析去噪;解碼模塊4,用于對(duì)去噪的電壓信號(hào)進(jìn)行解碼,獲得光子客戶端發(fā)送的原始數(shù)據(jù);信號(hào)輸出模塊5用于將解碼模塊4恢復(fù)的原始數(shù)據(jù)發(fā)送至后臺(tái)工作系統(tǒng),后臺(tái)工作系統(tǒng)對(duì)該原始數(shù)據(jù)進(jìn)行相應(yīng)的操作處理,如在銀行交易系統(tǒng)中,后臺(tái)工作系統(tǒng)是POS機(jī)的交易平臺(tái),POS機(jī)根據(jù)信號(hào)輸出模塊5發(fā)送的數(shù)據(jù)信息進(jìn)行交易操作,在鑒權(quán)系統(tǒng)中,后臺(tái)工作系統(tǒng)是鑒權(quán)平臺(tái),鑒權(quán)平臺(tái)根據(jù)信號(hào)輸出模塊5發(fā)送的數(shù)據(jù)信息進(jìn)行權(quán)限認(rèn)證。
[0014]一種基于光通信的編碼方法,可把手機(jī)閃光燈發(fā)出的頻閃可見光及光子客戶端發(fā)出的頻閃可見光編碼,其編碼方法為:按位依次讀取N進(jìn)位制數(shù)據(jù),并編碼為電信號(hào)單元:將N進(jìn)位制數(shù)據(jù)中每個(gè)不同的數(shù)字編碼為不同的電信號(hào)單元,電信號(hào)單元內(nèi)的高低電平持續(xù)時(shí)間段分別為Til、Ti2…和Tij, 1、j、N為自然數(shù),不同的電信號(hào)單元以分隔標(biāo)志隔開;其中,電信號(hào)單元內(nèi)的高低電平并不默認(rèn)為先高電平后低電平,也可以先低電平后高電平,高低電平之間其分隔標(biāo)志可以為電平的跳變,或者以持續(xù)時(shí)間段不同的高低電平為特征電平,其分隔標(biāo)志為不同于特征電平的基準(zhǔn)電平,Ti2、Ti3…和Tij與Til的運(yùn)算值為預(yù)定值或預(yù)定范圍,這里的運(yùn)算是指:Ti2、Ti3…和Tij與Til的比值、乘積、差、和、倒數(shù)、和/或算余數(shù),由于不同的N進(jìn)位制數(shù)據(jù)的數(shù)字編碼為不同的電信號(hào)單元,所以不同的電信號(hào)單元的運(yùn)算值不同,即Ti2、Ti3…和Tij與Til的比值、乘積、差、和、倒數(shù)、和/或算余數(shù)值不等于T1-12、T1-13…和T1-1j與T1-1l的比值、乘積、差、和、倒數(shù)、和/或算余數(shù)值。
[0015]根據(jù)上述的編碼方法,本例的解碼模塊4包括轉(zhuǎn)換單元41和恢復(fù)單元42,轉(zhuǎn)換單元41用于將獲取的電壓信號(hào)按位轉(zhuǎn)換為N進(jìn)位制數(shù)據(jù):當(dāng)檢測(cè)一電信號(hào)單元時(shí),檢測(cè)并記錄電信號(hào)單元內(nèi)的高低電平持續(xù)時(shí)間段:!11、112?和1^,1、j、N為自然數(shù);運(yùn)算Ti2、Ti3…和Ti j與Til的運(yùn)算值,并根據(jù)運(yùn)算值將電信號(hào)單元轉(zhuǎn)換為與N進(jìn)位制數(shù)據(jù)相應(yīng)的數(shù)字;恢復(fù)單元42用于將N進(jìn)位制數(shù)據(jù)恢復(fù)為原始發(fā)送的數(shù)據(jù)。
[0016]與上述的編碼方法相對(duì)應(yīng),本例的轉(zhuǎn)換單元41運(yùn)算Ti2、Ti3…和Tij與Til的運(yùn)算值為預(yù)定值或預(yù)定范圍,這里的運(yùn)算也是指:Ti2、Ti3...和Tij與Til的比值、乘積、差、和、倒數(shù)、和/或算余數(shù),由于上述的編碼方法將不同的N進(jìn)位制數(shù)據(jù)的數(shù)字編碼為不同的電信號(hào)單元,所以不同的電信號(hào)單元的運(yùn)算值不同,即Ti2、Ti3…和Tij與Til的比值、乘積、差、和、倒數(shù)、和/或算余數(shù)值不等于T1-12、T1-13…和T1-1j與T1-1l的比值、乘積、差、和、倒數(shù)、和/或算余數(shù)值,根據(jù)不同的運(yùn)算值將不同的電信號(hào)單元轉(zhuǎn)換為與N進(jìn)位制數(shù)據(jù)相應(yīng)的數(shù)字。
[0017]例如,以二進(jìn)制數(shù)據(jù)為例,即當(dāng)N=2時(shí),檢測(cè)并記錄電信號(hào)單元內(nèi)的高低電平持續(xù)時(shí)間段T21和T22,運(yùn)算T22和T21的運(yùn)算值,根據(jù)運(yùn)算值判定該電信號(hào)單元代表的二進(jìn)位制數(shù)據(jù)I或0,以比值運(yùn)算為例:
當(dāng)(T22/T21)?1,該電信號(hào)單元代表的二進(jìn)位制數(shù)據(jù)O ;
當(dāng)(T22/T21)?m,m古1,該電信號(hào)單元代表的二進(jìn)位制數(shù)據(jù)l,m為設(shè)定的系數(shù)。
[0018]在一可選實(shí)施例中,可以采用計(jì)算第二電平持續(xù)時(shí)間段T22與第一電平持續(xù)時(shí)間段T21的差值,將該差值的絕對(duì)值與第三預(yù)定值TO進(jìn)行大小比較,根據(jù)該比較結(jié)果判定該電信號(hào)單元代表的二進(jìn)制數(shù)據(jù)是O還是I,具體方式如下:
當(dāng)|T22-T211 ( TO時(shí),該電信號(hào)單元代表的二進(jìn)制數(shù)據(jù)為O ;
當(dāng)|T22-T21|>T0時(shí),該電信號(hào)單元代表的二進(jìn)制數(shù)據(jù)為I。
[0019]或者,
當(dāng)I Τ22-Τ211 >Τ0時(shí),該電信號(hào)單元代表的二進(jìn)位制數(shù)據(jù)為O ;
當(dāng)|T22-T21| ( TO時(shí),該電信號(hào)單元代表的二進(jìn)位制數(shù)據(jù)為I。
[0020]在另一可選實(shí)施例中,可以采用計(jì)算第二電平持續(xù)時(shí)間段Τ22與第一電平持續(xù)時(shí)間段Τ21的和值,將該和值與第三預(yù)定值TO進(jìn)行大小比較,根據(jù)該比較結(jié)果判定該電信號(hào)單元代表的二進(jìn)位制數(shù)據(jù)O或1,具體方式如下:
當(dāng)(Τ22+Τ21) ( TO時(shí),該電信號(hào)單元代表的二進(jìn)位制數(shù)據(jù)O ;
當(dāng)(Τ22+Τ21)>Τ0時(shí),該電信號(hào)單元代表的二進(jìn)位制數(shù)據(jù)I。
[0021]在另一可選實(shí)施例中,可以采用計(jì)算第二電平持續(xù)時(shí)間段Τ22與第一電平持續(xù)時(shí)間段Τ21的乘積,將該乘積與第三預(yù)定值TO進(jìn)行大小比較,根據(jù)該比較結(jié)果判定該電信號(hào)單元代表的二進(jìn)位制數(shù)據(jù)O或1,具體方式如下:
當(dāng)(T22*T21) ( Τ0,該電信號(hào)單元代表的二進(jìn)制數(shù)據(jù)O ;
當(dāng)(Τ22*Τ21) >Τ0,該電信號(hào)單元代表的二進(jìn)制數(shù)據(jù)I。
[0022]解碼模塊4的解碼單元41通過檢測(cè)電信號(hào)單元內(nèi)的高電平和低電平的持續(xù)時(shí)間,然后通過通過運(yùn)算值對(duì)獲得的電信號(hào)單元進(jìn)行解碼,恢復(fù)單元42將解碼的數(shù)據(jù)恢復(fù)為原始數(shù)據(jù),提高了光子接收端與光子客戶端之間傳輸信息的可靠性,而且本申請(qǐng)的解碼模塊4使得光子接收端恢復(fù)原始數(shù)據(jù)的誤碼率較低,進(jìn)一步提高傳輸數(shù)據(jù)的性能穩(wěn)定性。
[0023]針對(duì)本例光子接收端的解碼模塊4,本例還提供一種與解碼模塊4對(duì)應(yīng)的解碼方法,其流程圖如圖2所示,包括步驟:
S1:將獲取的電壓信號(hào)按位轉(zhuǎn)換為N進(jìn)位制數(shù)據(jù)。
[0024]當(dāng)檢測(cè)一電信號(hào)單元時(shí),檢測(cè)并記錄電信號(hào)單元內(nèi)的高低電平持續(xù)時(shí)間段:Til、Ti2…和Tij,1、j、N為自然數(shù);運(yùn)算Ti2、Ti3…和Tij與Til的運(yùn)算值,并根據(jù)運(yùn)算值將電信號(hào)單元轉(zhuǎn)換為與N進(jìn)位制數(shù)據(jù)相應(yīng)的數(shù)字。
[0025]本步驟中,運(yùn)算Ti2、Ti3…和Tij與Til的運(yùn)算值為預(yù)定值或預(yù)定范圍,這里的運(yùn)算也是指:Ti2、Ti3…和Tij與Til的比值、乘積、差、和、倒數(shù)、和/或算余數(shù),由于上述的編碼方法將不同的N進(jìn)位制數(shù)據(jù)的數(shù)字編碼為不同的電信號(hào)單元,所以不同的電信號(hào)單元的運(yùn)算值不同,即Ti2、Ti3…和Tij與Til的比值、乘積、差、和、倒數(shù)、和/或算余數(shù)值不等于T1-12、T1-13…和T1-1j與T1-1l的比值、乘積、差、和、倒數(shù)、和/或算余數(shù)值,根據(jù)不同的運(yùn)算值將不同的電信號(hào)單元轉(zhuǎn)換為與N進(jìn)位制數(shù)據(jù)相應(yīng)的數(shù)字。
[0026]具體的,以二進(jìn)制數(shù)據(jù)為例,即當(dāng)N=2時(shí),檢測(cè)并記錄電信號(hào)單元內(nèi)的高低電平持續(xù)時(shí)間段T21和T22,運(yùn)算T22和T21的運(yùn)算值,根據(jù)運(yùn)算值判定該電信號(hào)單元代表的二進(jìn)位制數(shù)據(jù)I或0,以比值運(yùn)算為例:
當(dāng)(T22/T21)?1,該電信號(hào)單元代表的二進(jìn)位制數(shù)據(jù)O ;
當(dāng)(T22/T21)?m,m古1,該電信號(hào)單元代表的二進(jìn)位制數(shù)據(jù)l,m為設(shè)定的系數(shù)。
[0027]在其他實(shí)施例中,還可以采用計(jì)算第二電平持續(xù)時(shí)間段T22和第一