目前廣泛使用的被動式射頻識別技術利用射頻信號來給電子標簽供能並讀取其所包含的數據信息,這種形式的通信方式較為方便,但是需要額外的讀寫器設備。與之相比,利用可見光進行通信的方式不僅簡單而且不需要額外設備。這種特性使得可見光通信技術受到了越來越多的關註。並且,類似LED燈的發光設備的使用非常普及,這就使得這些發光設備都可能成為可見光信號的發送端,這樣壹來,可見光通信系統的部署就會變得非常容易。
另外,隨著技術的發展,智能手機的功能越來越完善,其計算能力也有了較好的提升。因此手機已經有了足夠的計算能力來完成可見光通信系統中的工作量。所以,將手機作為可見光通信系統的接收端由其完成可見光信號的接收、讀取和識別就成為了可能。
技術實現要素:
本發明的目的是提供壹種可見光通信方法,該方法基於LED點陣和手機相機,可以利用可見光進行數據的傳輸。所提出的通信協議能夠有效地控制數據的傳輸過程,並保證數據在傳輸過程中的安全性和穩定性。
為了實現以上目的,本發明采用的技術方案為:
在可見光通信系統中,發送端將需要傳輸的數據編碼成二進制數據流,該二進制數據流再由LED點陣來表示。其中的編碼過程為:
步驟壹、將需要傳輸的數據表示成ASCII二進制碼。
步驟二、對ASCII二進制碼進行Base64編碼,得到Base64字符串。
步驟三、將Base64字符串表示成ASCII二進制碼。
因為ASCII編碼用8位二進制位表示壹個字符,而Base64編碼則是將6位二進制位表示成壹個字符,所以這樣的編碼方案對所要傳輸的數據起到了加密作用,提高了數據傳輸的安全性。
編碼後的二進制數據以幀為單位,通過LED點陣中各個LED燈的亮滅狀態表示出來,即壹個數據幀用壹個8*8個LED燈的狀態表示。接收端成功讀取LED點陣所表示的信息後,對每個數據幀進行解碼,得出原始想要傳輸的數據。其中的解碼過程為:
步驟壹、對獲取到的數據幀進行ASCII解碼,得出Base64字符串。
步驟二、對Base64字符串進行Base64解碼,得到ASCII二進制數據。
步驟三、將ASCII二進制數據還原為原始字符串。