APP下载

基于可见光通信的光定位系统*

2019-01-22黄俊嘉劳健涛肖嘉荣余志贤王小由唐小煜

物理通报 2019年2期
关键词:接收端原理图上位

黄俊嘉 劳健涛 肖嘉荣 余志贤 王小由 唐小煜

(华南师范大学物理与电信工程学院 广东 广州 510006)

1 引言

随着移动通信技术的发展与居民生活质量的提高,人们对于精度高、实时性强、污染性低的定位与导航服务的需求度越来越大.目前,基于GPS全球定位系统的室外无线电定位技术的发展已经相当成熟,具有良好的稳定性与精确度,并且广泛用于交通、农业、测量等众多领域.然而对于室内定位领域,基于GPS的定位系统在室内环境中无法提供较好的定位服务,与此同时目前室内定位的解决方案,如WiFi、蓝牙、DFID等,具有部署难、成本高、功耗大等缺点,导致了用户的体验满意度不高[1].为此,本文提出基于可见光通信的光定位系统,在满足室内照明的基础上实现室内的实时定位服务,并且具有成本低、部署易、功耗低的优点.

2 系统方案设计

在可见光定位体系中,基于光电探测器件的可用于定位服务的信号参数主要有:信号到达角度、信号到达时间、信号强度等.由于测量信号到达角度与信号到达时间需要高成本的精密光电检测器,以及直接测量多个LED光源的光照强度容易导致系统的测量误差大,抗干扰能力降低等情况,因此为达到定位系统精度高、成本低等性能指标,本文采用的是一种基于区分多光源信号的光强测量方案.系统框架如图1所示.

图1 系统框架图

从图1可知,本光定位系统主要由发射端、接收端与PC端3部分构成.在发射端,由AD9833信号发生器电路产生多路不同频率差异较大的正弦波信号,经过基于TL082芯片的LED驱动电路分别对多个LED灯进行调制,同时保证了LED灯的正常照明;在接收端,基于BPW34硅光电二极管的光电转换电路将环境的光信号转换成电信号,并且通过基于OPA567的放大电路进行信号的放大,以便于后续对信号的处理.电信号分别通过不同截止频率的带通滤波器分别将LED驱动电路对应频率的电信号提取出来,进而通过峰值检测器转换成幅度信息,由STM32通过ADC采集并传输到PC端;PC端则通过三角定位算法处理STM32传送的信号,最终得出接收点的位置信息并显示.

3 硬件设计

3.1 信号发射端

本光定位系统的发射端主要用于实现电信号到光信号的转换,在保证LED灯能正常照明的同时,还确保其光信号能达到可被接收端区分与处理的性能指标要求.为此,本文提出了一种由基于AD9833的信号发生器电路与基于TL082芯片的LED驱动电路所构成的信号发射端设计.

3.1.1 基于AD9833的信号发生器电路

AD9833是由ADI公司生产的一款低功耗的可编程波形发生器,具有良好的频率响应与稳定性,图2对信号发生器电路原理进行了分析.相比于传统的信号发生器电路,该电路具有良好的可部署性,其输出频率与相位都可以通过编程进行调整,大大提高了光定位系统的部署调试效率.同时,该信号发生器电路具有0.004 Hz的高分辨率以及12.65 mW的低功耗性能,能满足较多应用场景的要求.信号发生器电路原理图如图2所示.

图2 信号发生器电路原理图

3.1.2 基于TL082芯片的LED驱动电路

为满足信号发生器电路信号在电压上能在LED的导通区进行调制,同时在电流上能有效驱动LED灯以达到正常照明效果,本文提出了一种基于TL082芯片的LED驱动电路,电路原理图如图3所示.

图3 LED驱动电路原理图

由图3可知,该LED驱动电路是一种由TL082运算放大器与NPN三极管所构成的射极跟随器电路.该电路是一种典型的电流放大器电路,具有输出阻抗小,输出能力强,以及可降低后级对前级的影响等特点.其中,R2与R3可控制LED驱动信号的直流偏置电压;R1与R4起到了保护LED灯的限流作用.

3.2 信号接收端

本光定位系统的发射端主要用于实现光信号到电信号的转换,并对电信号进行处理,提取出可用于定位算法的有效信息.

在光电转换部分,本系统采用BPW34硅光电二极管接收可见光信号并将其转换为电流信号,再经过跨阻运算放大器将电流信号转换成电压信号,图4为光电转换电路原理.其中,LMH6629是TI公司生产的跨阻运算放大器,具有工作电压低、噪声小等优点.相比起常用于光电转换的OPA567,LMH6629在低电压电源工作时,其允许信号的直流偏置更低,对交流信号的放大效果更明显.

图4 光电转换电路原理图

4 软件设计

4.1 数据传输设计

由于本系统采用STM32的3路ADC同时采集3路信号的AD值,然而串口通信只有1路通道.为使接收端能正确接收并区分发送端传输的数据,本系统对通信数据的帧结构进行了规范,图5为系统的传输数据结构.

图5 传输数据结构图

STM32通过设置定时器触发数据传输,分别设置不同路信号的帧头为0x01,0x02,0x03…以及统一的帧尾0x00.同时在传输数据前先对数据进行预处理,确保数据中不包含当前帧的帧头标志以及帧尾标志.

4.2 定位算法设计

本文结合无线测距技术与光信道的传输问题,对RSSI的定位技术进行简化与改进,提出了一种基于光强信号的RSSI 3点定位算法[2].该算法的核心思想为将光强信号数据转换为相应的距离数据,通过在3个已知点,即3个LED灯的坐标基础上对距离数据进行计算与整合,最终得出所求点的坐标[3].

在传统的定位方案上,光强信号到距离数据的转换一般使用最小二乘曲线拟合法.但该方法在定位系统部署时需要测试大量数据,且抗干扰能力差.为此,本文提出了一个关于光强信号到距离数据的经验转换公式[4]

(1)

其中,d为转换后光源点到定位点的距离;E为光照信号强度;A为探测设备在单位距离上所测得的光照信号强度的绝对值;n为环境影响因子,对测试结果进行修正得出.

对3个LED光源分别以距离数据为半径作圆,在理想情况下,3个圆会相交于一点,图6是理想情况的3点定位图,其中点A,点B,点C分别为已知的光源点,相交点D则为所求的定位点.而在实际情况下,3个圆并不会完全相交于一点,图7是一般情况的3点定位图.其中,点A与点B为两个圆的圆心,其坐标分别为(xA,yA)和(xB,yB),点E和点F分别为圆A与圆B的交点,点G为AB与EF的交点.通过公式推导与计算,可以得出点G的坐标(xG,yG)

同理可求得另外两个中心点的坐标(xH,yH)和(xI,yI),结合3个中心点形成的三角形,计算出该三角形的重心即为所求定位点的坐标.

图6 理想情况的3点定位图

图7 一般情况的3点定位图

通过Matlab对该光定位算法进行仿真,图8是系统的仿真结果.其中,三角形标记点为LED灯坐标点,绿色圆圈为所求定位点,红色星星为光定位算法的计算结果.仿真结果表明,该定位算法的时间复杂度与空间复杂度较小,且具有良好的定位精度[5].

图8 定位算法系统仿真图

4.3 上位机设计

为了能更好地将定位结果进行可视化,本文采用C#语言编写上位机,通过串口接收光强信号数据流,同时执行RSSI 3点定位算法和滤波算法,将RSSI 3点定位算法和滤波算法的执行移植到处理速度更快的个人电脑上进行处理,以实现更高的相应速度.将定位坐标点显示于PictureBox窗口,实现定位信息的实时显示.图9是上位机界面内容.在接收到定位算法输出的坐标点数据后,将其显示于图10中的运动轨迹展示窗口,实现实时显示定位信息.在此之外,我们设计了数据导出功能,以便于对算法进行拟合和测试.

图9 上位机界面

5 测试结果与分析

本系统以90 cm×90 cm×90 cm的箱体作为室内模拟环境,同时在箱体上部安装3个额定功率为10 W的白光LED灯,用于实现箱体内的正常照明以及光信号的传递.待其他系统设备完成部署并初始化后,实验员通过黑色不反光直尺匀速移动系统接收端,图10是系统内部图与移动轨迹,同时在上位机观察其运动轨迹,测量定位误差大小.图11是上位机还原物体的运动轨迹结果.

测量结果显示,该系统在被测物体静止时的定位效果较为理想,其测量误差在2 cm以内;而在运动过程中,被测物体在抖动较小的情况下测量误差在1~4 cm范围内,在抖动较大的情况下误差则维持在6 cm以内.

图10 移动轨迹演示图

图11 上位机显示的运动轨迹图

6 结束语

本文设计并实现了一套以STM32F103VE单片机为主控的基于可见光通信的光定位系统,其在软硬件方面都针对实际应用场景进行优化.实验结果证明,该系统无论在影响用户体验满意度的人机交互的友好度上,还是在定位精度、系统功耗等评判装置的性能指标上,都有非常好的实现效果,对于高校学生的科研课题或企业的研发工作都有良好的参考价值与思维扩展价值.

猜你喜欢

接收端原理图上位
基于扰动观察法的光通信接收端优化策略
电路原理图自动布图系统的设计与实现
纯多播BC 信道并存单播MAC 信道的天线效率研究
基于Protel DXP 2004层次原理图的设计
手机无线充电收发设计
特斯拉 风云之老阿姨上位
电子电路识图方法的探究
基于ZigBee和VC上位机的教室智能监测管理系统
基于盲波束形成的MIMO雷达稳健参数估计
维修电工线路板的接线技巧分析