1.软件版本

MATLAB2013b

2.本算法理论知识

可见光通信,2篇比较好的论文:

http://wenku.baidu.com/view/3c077736a32d7375a4178022.html

http://www.docin.com/p-121488388.html

3.核心代码

%OFDM transmitter and receiver for Visible light communication.
clc;
clear all;
close all;
warning off;
addpath 'func\'%参数初始化
%the OFDM symbols
Nsc           = 256;
%frame length
Lf            = 10;
%发送数据
tx_data       = func_seq('PRBS_15','PRBS',2e5);
%MQAM
M             = 4;
%QAM objects
[mods,demods] = func_MQAM(Nsc,'M',M,'SymbolOrder','Gray');
SNR           = [1:1:8];%高斯白噪声
Ng            = 0.1;
%training sequence
TS_level      = [1,1];
%samples per symbol
Nfft          = 8*Nsc;
%cyclic prefix length
Np            = round(Ng*Nfft);
%发送前调制
y_Tx_mod      = func_OFDM_modulator(tx_data,mods,Np,Lf,TS_level,Nfft);for i = 1:length(SNR)iSNRs = SNR(i);%可见光信道y_Tx_bef = y_Tx_mod;Fs       = 40e9;Ts       = 1/Fs;F_AWG    = 1.25e9;F_RF     = 0e9;                                AWG      = upsample(y_Tx_bef,Fs/F_AWG);          n        = (1:length(AWG))';S_RF     = AWG.*exp(1j*2*pi*F_RF*n*Ts);         %%LED信道SNRdb    = func_LED_channel();y_Rx        = func_decimate2(S_RF,Fs/F_AWG);%最后加入白噪声y_Rx2       = awgn(y_Rx,SNRs+SNRdb,'measured');%OFDM解调[rx_data,Y] = func_OFDM_demodulator(y_Rx2,demods,Np,Lf,TS_level,Nfft);[Nerr,BER]  = func_error(rx_data,15,0); Bers(i)     = BER;
endfigure;
plot(Y(1:Nsc/2,:),'r.');
hold on;
plot(Y(Nsc/2+1:end,:),'b.');
title('Received constellation');
xlabel('I');
ylabel('Q');
grid on;%计算误码率
figure;
semilogy(SNR,Bers,'b-o');
hold on;
xlabel('SNR');
ylabel('BER');
grid on;
legend('OFMD-4QAM');
axis([0,12,1e-5,1]);

4.操作步骤与仿真结论

最后仿真结果如下所示:

这个是最后接收后的星座图,这里我们使用的OFDM-4QAM的调制方法,所以最后可以看到四个星座点。

这个是误码率曲线,从上面的仿真结果可知,当SNR=8的时候,误码率在10-4左右。

5.参考文献

[1]刘雨溪, 于蕾. 基于测量矩阵优化的OFDM系统CS信道估计[J]. 中国新通信, 2016(6):4.

A01-95

6.完整源码获得方式

方式1:微信或者QQ联系博主

方式2:订阅MATLAB/FPGA教程,免费获得教程案例以及任意2份完整源码

【光通信】用于可见光通信的OFDM发射机和接收机相关推荐

  1. STK中的传感器、雷达、发射机、接收机、天线

    1. 来自STK官网的解释 主要信息来源:https://help.agi.com/stk/ STK在线帮助版本:12.0 Google在线翻译,有补充. 1.1 Sensor(传感器) Sensor ...

  2. 基于STC12单片机实现nRF24L01遥控器发射机和接收机开源程序分享

    基于STC12单片机实现nRF24L01遥控器发射机和接收机开源程序分享 ✨这是一个来源于开源的基于nRF24L01控制的项目,资料齐全,仅供个人学习研究使用,其其可靠性自行验证.

  3. 【Python】Python 仿真OFDM发射机、信道和接收机-实现多种调制方式

    目录 1 引言 2 Python实现 2.1 初始化和定义函数 2.1.1 初始化参数 2.1.2 可视化导频插入的格式 2.1.3 定义调制和解调方式 2.1.4 定义信道 2.2 OFDM仿真过程 ...

  4. 中波电台发射机、接收机系统设计

    一.指标要求 发射机技术指标要求: 接收机技术指标要求: 二.系统结构框图 发射机系统结构框图: 在实际电路中,信号经振幅调制后可能会出现较多的谐波分量.所以在制作硬件电路时,最好在振幅调制后级级联带 ...

  5. 从零在FPG上实现OFDM(一)

    目录 前言 一.OFDM介绍 二.ODFM时域与频域变化 1.时域变化: 1.频域变化: 总结 前言 最近有空学习了一些关于OFDM的类容,并且想准备在FPGA实现,所以准备记录下这一过程,准备从零在 ...

  6. 华为大搞5G光通信,火星人快步紧跟

    华为大搞5G光通信,火星人快步紧跟 在两地之间,如何快速.有效地传输大批数据包?除了借助光纤通信,别无他法. 当今,华为大搞5G光通信,火星人快步紧跟 注:本文附件是光纤通信"迷" ...

  7. 2023年可见光通信(LiFi)研究新进展

    可见光无线通信Light Fidelity(LiFi)又称"光保真技术",是一种利用可见光进行数据传输的全新无线传输技术.LiFi是一种以半导体光源作为信号发射源,利用无需授权的自 ...

  8. 零中频接收机频率转换图_初探“光通信”光接收机

    光通信系统包含信源的光发射机.传递光波的信道.信宿的光接收机.对于光纤通信,信道是光纤光缆,对于自由空间光通信,信道是自由空间,或大气中或太空中,对于水下光通信,信道则是水......,无论信道怎么变 ...

  9. 超通俗易懂科普:什么是光通信?

    本文介绍可以一次性快速传输海量信息的技术. 什么是光通信 什么是光通信? 光通信就是使用光,向对方传输信息的技术. 光通信的基本结构 我们身边的电脑和手机,通过电信号"0和1"发送 ...

最新文章

  1. mysql 日期和时间戳互换
  2. java寻找最大的字母_【LeetCode(Java) - 744】寻找比目标字母大的最小字母
  3. 美团点评稳定价格措施及稳定价格期结束 超额配股权失效
  4. koa --- 使用Github OAuth登录
  5. MySQL(6)视图
  6. UVa140 Bandwidth 【最优性剪枝】
  7. 之前安装vmware player卸载失败出现msi '' failed,就安装不vmware station
  8. c语言不借助其他变量交换a b的值,C++面试题之数a、b的值互换(不使用中间变量)...
  9. appcan双击返回退出系统
  10. 疫期免费 “零接触”云迁移~工具替代人力! 人不聚,活儿继续!
  11. YDUI Touch InfiniteScroll无限加载数据测试
  12. 抱抱脸(hugging face)教程-中文翻译-使用 Tokenizers 的 tokenizers
  13. IPv4掩码与掩码位数的转换
  14. 利用浏览器保存和下载视频
  15. win10 office提示‘VBE6EXT.OLB不能被加载‘怎么办
  16. move_uploaded_file()移动文件失败?
  17. 202个DIY及科技网站大集合
  18. 暗棋单机版_中国象棋暗棋下载_中国象棋暗棋安卓版下载 v1.6.8 安卓单机版_飞飞巴士下载...
  19. 跟着小老弟来学习Kotlin中的逆变和协变
  20. 线程学习基础(1):单线程爬虫和多线程爬虫的效率比照

热门文章

  1. python dict sorted
  2. Boosting for PRML
  3. CentOS 3.7 安装Linux kexec工具失败
  4. win32汇编系统函数简单小示例图解
  5. DebugView调试C#程序 学习总结
  6. Java struts 2 源码阅读入门
  7. 树、森林与二叉树的相互转换
  8. [Xcode 实际操作]六、媒体与动画-(3)使用CoreImage框架设置图片的单色效果
  9. HDU 1166 敌兵布阵
  10. 《Linux命令行与shell脚本编程大全 第3版》Shell脚本编程基础---43