国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于STM32的可見光通信系統(tǒng)之OOK調(diào)制技術(shù)

2019-01-17 08:37劉正翔
通信電源技術(shù) 2018年11期
關(guān)鍵詞:碼元正弦波方波

劉正翔

(福州職業(yè)技術(shù)學(xué)院,福建 福州 350108)

0 引 言

隨著社會科技的發(fā)展,信息化生活對上網(wǎng)的需求越來越高,無線接入的用戶數(shù)量也急劇增加,無線通信的頻譜資源越來越擁擠。可見光通信技術(shù)解決了諸如此類問題。早在2000年,日本已提出可見光通信技術(shù),并仿真了其可行性。2009年,日本科學(xué)家在中川實驗室提出了一種可見光通信系統(tǒng),它基于CSMA/CD的全雙工多址接入的,可實現(xiàn)100 Mbps的傳輸速率[1]。之后歐美國家在政府的支持下,也在可見光通信領(lǐng)域取得很多科研成果。國內(nèi)的復(fù)旦大學(xué)、北京郵電大學(xué)、解放軍信息工程大學(xué)等高??蒲袡C(jī)構(gòu)也對可見光通信系統(tǒng)進(jìn)行了深入研究,復(fù)旦大學(xué)在實驗室使用1 W的LED燈泡,實現(xiàn)了4臺電腦同時高速上網(wǎng)[2]。

除了傳輸速度快,可見光通信技術(shù)的安全性、綠色健康,以及在隧道、高速公路、交通阻塞方面的應(yīng)用也引起了人們的興趣。

STM32系列CPU是ST公司生產(chǎn)的基于ARM Cortex?-M3內(nèi)核的高性能、低成本、低功耗的CPU,2.0~3.6 V的電源供電。由于其主頻可達(dá)到72 MHz,片上集成32-512 KB的Flash,及6-64 KB的SRAM存儲器。片內(nèi)硬件資源豐富,最多可達(dá)112個GPIO口,11個定時器,13個通信接口,包含IIC、USART、SPI、IIS、CAN、USB、SDIO等接口,而價格卻與普通單片機(jī)差不多,因此得到廣泛的應(yīng)用。

1 OOK調(diào)制工作原理

選擇合適的無線通信系統(tǒng)調(diào)制技術(shù),對提高系統(tǒng)傳輸速率有重要意義??梢姽馔ㄐ畔到y(tǒng)的調(diào)制技術(shù)一般有開關(guān)鍵控OOK,脈沖位置調(diào)制PPM,正交頻分復(fù)用調(diào)制OFDM,單載波頻域均衡SC-FDE,無載波幅度相位調(diào)制CAP等。其較為簡單高效的調(diào)制技術(shù)是脈沖位置調(diào)制PPM方式。它是將脈沖的相對位置來傳輸信息的調(diào)制方式。OFDM調(diào)制方式是把信道劃分成很多相互正交的子信道,將原本高速傳輸?shù)男畔⒘?,轉(zhuǎn)變成相對低速的多個并行的子數(shù)據(jù)流,并分別將其調(diào)制到各個相互正交的子信道中傳輸,接收端再用相關(guān)技術(shù)區(qū)分開來,其很大的優(yōu)勢是可減少相互串?dāng)_。而OOK調(diào)制技術(shù)則廣泛地與NRZ不歸零編碼結(jié)合來調(diào)制,是一種極為有效的調(diào)制方式。下面重點介紹OOK調(diào)制技術(shù)原理[4]。設(shè)二進(jìn)制振幅鍵控2ASK信號表達(dá)式為:

e2ASK(t)=s(t)cos(ωct+θ)

eOOK(t)=Acos(ωct+θ)

OOK信號的產(chǎn)生有兩種方法,分別是模擬調(diào)制法和鍵控法,如圖1所示。

圖1 2ASK/OOK信號調(diào)制器原理圖

本文采用OOK的數(shù)字鍵控法,即使用開關(guān)電路通斷來控制LED發(fā)光強(qiáng)度變化,它將可見光信號轉(zhuǎn)成固定頻率的載波(正弦波形),可以很好地克服發(fā)射端信號失真的問題,接收端通過相干解調(diào)與非相干解調(diào),經(jīng)帶通濾波器、低通濾波器、抽樣判決等過程來還原信號[6]。

2 可見光通信的OOK調(diào)制實現(xiàn)

根據(jù)OOK調(diào)制技術(shù)工作原理得知,OOK調(diào)制技術(shù)的實現(xiàn),不管是模擬相乘法還是數(shù)字鍵控法,其本質(zhì)都是載波與輸入信源相乘(模擬開關(guān)也可認(rèn)為是用“0”和“1”相乘的一種方式)。因此,要調(diào)制OOK信號就需要先得到兩個輸入信號,分別是s(t)和cosωct,即信號源與載波的產(chǎn)生。然后可通過模擬CD4066芯片,輸出為調(diào)制后的OOK信號[5]。值得關(guān)注的是,輸出的OOK調(diào)制信號并不能直接用于驅(qū)動白光LED來控制產(chǎn)生光強(qiáng)度信號,還需考慮滿足LED調(diào)制特性。

2.1 信號源的產(chǎn)生

為了產(chǎn)生能隨時更改的信源信號,本系統(tǒng)使用計算機(jī)串口調(diào)試軟件發(fā)出要傳輸?shù)臄?shù)據(jù)(信源),通過串口發(fā)送到STM32系列CPU,再編程將二進(jìn)制信號通過STM32引腳輸出到模擬開關(guān)CD4066,輸出的信號經(jīng)LED驅(qū)動電路放大后驅(qū)動LED發(fā)送光信號,從而實現(xiàn)信號調(diào)制過程。信號源產(chǎn)生的過程如圖2所示。

圖2 使用STM32編程信號源進(jìn)行調(diào)制

本系統(tǒng)采用的STM32系列CPU為STM32F103C8T6。計算機(jī)通過串口通信發(fā)送信源數(shù)據(jù)到該CPU,即在計算機(jī)上安裝串口調(diào)試軟件,設(shè)置波特率9 600,每次傳送8bit數(shù)據(jù),1個停止位,沒有校驗位。輸入要發(fā)送的數(shù)據(jù)“VLCLiFi”7個字母,點擊“發(fā)送”,即可被STM32的串口接收到,如圖3所示。

圖3 串口調(diào)試軟件發(fā)送6個字符界面

STM32串口USART編程接收數(shù)據(jù)前,定義一個32字節(jié)的C語言數(shù)組RX_BUF[32]用來保存接收到的數(shù)據(jù)。程序運行時,打開USART串口中斷等待接收數(shù)據(jù)。當(dāng)接收到“VLCLiFi”字符串后,將它保存在數(shù)組unsigned char RX_BUF[32]中。由于一個字符剛好占1個字節(jié),因此可通過以下程序段,按字節(jié)將字符轉(zhuǎn)成二進(jìn)制bit信號,從STM32引腳串行發(fā)送出去[3]。

for(i=0;i<8;i++)

{

flag=temp&0x80;

if(flag) LED=1;

else LED=0;

Delay_us(10); //碼元持續(xù)時間

temp=temp<<1;

}

由于STM32在主頻72 MHz時執(zhí)行一個指令的時間約為70 ns。理論上,該段程序輸出的方波頻率可達(dá)1 MHz以上,這意味著碼元的持續(xù)時間可達(dá)到1 μs,而后續(xù)3.2節(jié)產(chǎn)生的載波頻率500 kHz,即周期2 μs。因此要調(diào)整STM32的IO引腳上輸出方波的頻率要小于500 kHz(碼元持續(xù)時間大于2 μs),這樣經(jīng)過模擬開關(guān)后,碼元為“1”時,才可能得到一個完整的正弦波。此處選擇10 μs的碼元持續(xù)時間。其中temp是數(shù)組RX_BUF[32]的一個字節(jié)元素。單個字節(jié)8位循環(huán)順序發(fā)送完畢,接著發(fā)送下一個字節(jié)元素,直到6個字符都發(fā)送完為止。

2.2 正弦載波的產(chǎn)生

本系統(tǒng)需要一個正弦波作為載波,產(chǎn)生500 kHz的正弦波(即周期為2 μs)。采用LC正弦振蕩器方式,LC振蕩器的作用是產(chǎn)生頻率為500 kHz、輸出幅度大于1 V的載波。電路圖4所示,L2、C2、C3、C4構(gòu)成并聯(lián)諧振回路,圖中的4個電阻是穩(wěn)定三極管靜態(tài)工作點;其中,R1、R2也是分壓式偏置電阻;C1為基極耦合電容,三極管發(fā)射極通過它交流接地。

圖4 OOK調(diào)制模塊電路圖

值得注意的是,電路中的三極管Q1選用了高頻三極管 2SC1815,使載波的峰值足夠大。調(diào)制信號從STM32的PA2引腳輸出后,輸入開關(guān)模擬4066芯片,進(jìn)而輸出OOK信號,如圖5所示。

仿真實驗表明,STM32的GPIO引腳發(fā)出的方波正常,即“VLCLiFi”的二進(jìn)制信號波形。OOK信號也能在方波為“1”時是正弦波形,方波為低電平“0”時值為0,但略有波紋。而4066芯片雖能正確實現(xiàn)模擬開關(guān)功能,但對載波幅度有一定影響。

圖5 OOK調(diào)制后的仿真波形圖

2.3 LED光源的調(diào)制特性

由于STM32的電流較小,LED白光的強(qiáng)度變化并不能明顯表現(xiàn)出來,無法達(dá)到LED調(diào)試要求。為了準(zhǔn)確地把OOK調(diào)制出來的電信號高低電平有效轉(zhuǎn)化成白光LED的強(qiáng)度大小,必須滿足LED調(diào)制特性。LED調(diào)制能力用光功率-電流曲線來表示,該曲線呈線性,且直流偏置線應(yīng)盡量位于線性部分的中心處時,可以使光調(diào)制度變大[3]。此外,也要考慮LED的響應(yīng)時間,即為LED燈亮、滅的延遲時間,從該特性可得到LED跟隨外部控制信號變化的快慢程度。為了驅(qū)動LED燈,對應(yīng)的驅(qū)動電路可采用運算放大器THS3001電路[3],有明顯放大效果。而驅(qū)動電路若采用三極管共集電極放大電路[6],既可把OOK信號的電流量放大,又能給LED一個直流偏置(LED芯片的偏置電流一般100 mA以上),使之工作在線性狀態(tài),參考電路[6]如圖6所示。

圖6 驅(qū)動LED燈電路圖

3 總 結(jié)

本文詳細(xì)分析了室內(nèi)可見光通信系統(tǒng)中的OOK(2ASK)調(diào)制技術(shù),并通過計算機(jī)串口調(diào)試軟件發(fā)送即將傳輸?shù)臄?shù)據(jù)到STM32開發(fā)板,經(jīng)過程序處理,將要發(fā)送的信息轉(zhuǎn)成二進(jìn)制代碼,從GPIO引腳串行發(fā)送出去。為了使用模擬開關(guān)進(jìn)行調(diào)制,設(shè)計對應(yīng)振蕩電路,產(chǎn)生500 kHz的正弦波作為載波,與STM32產(chǎn)生的方波共同送入4066芯片進(jìn)行模擬開關(guān)運算,輸出OOK調(diào)制信號??紤]到LED的調(diào)制特性,需要專門電路驅(qū)動LED,滿足光功率-電流曲線近似線性時,才能獲取更好的電信號控制LED光強(qiáng)度,有效發(fā)送信息至接收端。

猜你喜歡
碼元正弦波方波
便攜式多功能頻率計的設(shè)計與實現(xiàn)
基于參數(shù)預(yù)估計和滑動FFT的MFSK信號類內(nèi)識別方法*
基于ZYNQ的IRIG-B(DC)碼設(shè)計與實現(xiàn)
基于樸素貝葉斯的無線局域網(wǎng)絡(luò)入侵防御技術(shù)研究
LFM-BPSK復(fù)合調(diào)制參數(shù)快速估計及碼元恢復(fù)
測繪技術(shù)在土地資源管理中的應(yīng)用
采用BC5016S的純正弦波逆變器設(shè)計及制作
基于STM32的風(fēng)力擺控制系統(tǒng)的設(shè)計
一種防垢除垢的變頻電磁場發(fā)生裝置
Matlab環(huán)境下基于遺傳算法的正弦波信號參數(shù)提取
丰都县| 黔南| 宿迁市| 诏安县| 禄劝| 平舆县| 临泽县| 江门市| 抚宁县| 常山县| 松潘县| 乌兰浩特市| 通海县| 商南县| 甘德县| 综艺| 阿拉善左旗| 巩义市| 建湖县| 张北县| 班戈县| 宜君县| 安仁县| 大洼县| 安西县| 宁乡县| 苏尼特左旗| 杨浦区| 伊宁县| 蒙阴县| 双辽市| 宜宾市| 宝应县| 石棉县| 常山县| 湟中县| 磐安县| 大余县| 黎川县| 惠安县| 黑河市|