可见光通信 VLC/LiFi 深度解析:为什么“用灯上网“信号必须非负,附可复现 Python 仿真(多径误码率地板实测)

可见光通信 VLC/LiFi 深度解析:为什么“用灯上网“信号必须非负,附可复现 Python 仿真(多径误码率地板实测) 一、什么是可见光通信用灯上网可见光通信Visible Light Communication, VLC指利用 400~700nm 可见光波段白光 LED 为主传输数据。它的商用昵称叫LiFi——对应 WiFi强调光版无线。核心想法特别朴素LED 可以每秒开关几百万次人眼根本察觉不到闪烁。于是你把数据编码成亮一下1、暗一下0接收端用一个光电二极管PD测光强变化就把数据解出来了。一盏照明的顶灯就这样顺便成了一个千兆级热点。二、VLC 与 RF 的本质区别信号必须非负这是全篇最该记住的一点。射频RF/WiFi通信里我们发的是一个可以正可以负的交流电磁波正交调制、负频复信号随便玩。但 VLC 不行。LED 发出的是光强光强只能 ≥ 0——你不能发负的亮度。所以 VLC 的收发机采用IM/DDIntensity Modulation / Direct Detection强度调制/直接检测发射端调的是 LED 的瞬时光强驱动电流信号天然非负接收端光电二极管直接把光强转成电流也是非负因此所有调制都必须叠加一个直流偏置保证光强不为负像 OOK 这种最简单的调制直接用亮1、灭0。这个非负约束带来一连串后果不能用负频率、不能随便复基带、带宽受 LED 调制带宽限制、收发端要直流耦合。理解了这条VLC 后面所有为什么和 RF 不一样都顺了。三、入门调制OOK 与它的误码率最简单的 VLC 调制就是OOKOn-Off Keying开关键控发 1 就开灯光强 A发 0 就关灯光强 0。接收端把收到的光强和一个门限比较门限取 A/2 时误码率最优。在 AWGN加性高斯白噪声信道下OOK 的理论误码率是BER Q( sqrt(SNR) / 2 )其中 Q 函数是高斯尾函数。这个公式说明每提高 3dB 信噪比误码率大概下一个数量级和你熟悉的 RF OOK 一致。四、动手仿真vlc_lifi_demo.py我写了一个vlc_lifi_demo.py做两件事解析公式算 AWGN 下 OOK 理论误码率用蒙特卡洛仿真对比**纯视距(LOS)和加了一条墙面反射(2径)**两种信道在不同 SNR 下的误码率。脚本核心完整文件见仓库vlc_lifi_demo.pyimport math def qfunc(x): return 0.5 * math.erfc(x / math.sqrt(2)) def ook_ber_awgn_db(snr_db): snr_lin 10 ** (snr_db / 10) return qfunc(math.sqrt(snr_lin) / 2)多径用一个简单 FIR 模拟直射径增益 1.0 延迟 0一条反射径增益 0.15 延迟 2 个码元。真实运行输出本地 Python 3 跑出[表1] AWGN 下 OOK 误码率 vs SNR (理论 蒙特卡洛) SNR(dB) | 理论BER | MC BER(LOS) | MC BER(2径) 0 | 3.0854e-01 | 3.0917e-01 | 3.1001e-01 5 | 1.8696e-01 | 1.8746e-01 | 1.9181e-01 10 | 5.6923e-02 | 5.6270e-02 | 6.6530e-02 15 | 2.4640e-03 | 2.3200e-03 | 7.6350e-03 20 | 2.8665e-07 | n/a | 8.0000e-05 25 | 3.0173e-19 | n/a | n/a 30 | 1.2984e-56 | n/a | n/a怎么读这张表理论 vs 蒙特卡洛 LOS 列几乎完全吻合验证了仿真模型没写错。高 SNR 时 LOS 列显示 n/a是因为 20 万比特里一个错都没出低于统计下限符合理论 BER≈1e-7 的预期。2 径列出现误码率地板注意 SNR 从 15dB 升到 20dBLOS 已经几乎不错了可 2 径误码率卡在 8e-5 左右不再下降。这就是多径反射造成的ISI码间串扰error floor——光被墙面/桌面反射后晚到两个码元把前一个码元冲花了再怎么提高发射功率也消不掉。这也解释了为什么真实 VLC 系统要做均衡、要限制符号率、要用更复杂的调制如 DCO-OFDM——单靠 OOK 太容易被多径坑。这里还有个常被忽略的瓶颈LED 本身的调制带宽。照明用的白光 LED 为了亮度和成本电-光响应往往只有几 MHz 到十几 MHz远低于射频载波。直接 OOK 想冲高速率会被 LED 带宽卡死。所以高速 VLC 要么用蓝光滤波后只驱动高频分量、要么用多 LED 阵列做空分复用MIMO这也是为什么LiFi 标称几个 Gbps通常是实验室理想条件家用照明级 LED 实际没那么猛。把下面这张表和 RF 对比一下就清楚 VLC 的定位维度WiFi/RFVLC/LiFi信号可负可以交流必须非负、加直流偏置穿墙可以不能光被墙挡住电磁干扰有医院受限无可进医院/矿井多径瑞利衰落等朗伯反射主导易 ISI 地板带宽来源授权/免许可射频段可见光免许可但受 LED 带宽限典型定位全屋广覆盖室内定点补盲/保密/无电磁环境五、信道到底长什么样Lambertian 发射与多径要把仿真做得更接近真实得知道 VLC 的信道增益怎么来。顶灯的 LED 不是向各个方向均匀发光的它遵循Lambertian 朗伯辐射模型发光强度随发射角余弦衰减越偏离法线方向越暗。直射径LOS的直流增益大致和LED 到 PD 的距离平方成反比、和发射/接收角度有关。这就解释了两件事为什么灯正下方信号最好、角落弱——朗伯衰减 距离平方为什么房间里必须靠反射补覆盖——灯照不到的死角靠墙面漫反射把光弹过去而这条反射路径又正好是制造多径 ISI 的元凶。所以室内 VLC 是一个直射为主、反射补盲、反射又带来串扰的矛盾体。工程上典型做法是布多盏 LED 灯多输入、接收端做角度分集并在基带做均衡把多径拖尾压平。我们仿真里那条增益 0.15、延迟 2 码元的反射径就是把一次墙面反射高度浓缩成的最简模型——真实房间是几十上百条这样的径叠加。六、VLC 的优劣势优势频谱无限免许可可见光不用像射频那样抢频段不穿墙、天然物理隔离办公室之间不串扰适合保密无电磁干扰医院/飞机/矿井等禁 RF 场景能用。劣势必须有光线直射/反射路径挡一下就断手挡灯就没网多径与 LED 调制带宽限制了速率反向信道手机→灯通常还得回 RF 补。七、与 6G 的关系VLC/LiFi 在 6G 里不是要取代 WiFi而是作为室内热点补盲与高精度定位的补充灯在哪、光就照到哪天然带位置感知。它和我们前面写过的太赫兹、RIS 一样都是 6G 频谱向更高频段/非传统介质扩展的一部分——只不过这次用的是你头顶那盏灯。八、小结VLC/LiFi 用 LED 照明顺便通信收发是 IM/DD 强度调制最本质约束光强非负、要直流偏置OOK 理论 BER Q(√SNR/2)本脚本本地复现室内反射多径会造成误码率地板提高功率无法消除必须靠均衡/更优调制。完整可复现脚本vlc_lifi_demo.py已随文附上python3 vlc_lifi_demo.py即可复现上表。想自己玩可以把反射增益改成 0.05/0.3、延迟改成 1/4 码元观察误码地板随多径强度怎么移动——这比只看公式直观得多。参考资料OOK 调制在 AWGN 下的误码率公式通信原理经典VLC IM/DD 强度调制直接检测原理可见光通信教材室内可见光多径信道与 ISIIEEE 802.15.7 / 光通信文献本仓库vlc_lifi_demo.py实测数据表运行日期 2026-09-18说明仿真中反射增益 0.15、延迟 2 码元为典型室内示意参数非某实测房间结论定性成立。