基于ESP8266的远程无线光功率监测仪设计

2018-01-15 06:18,,,,
单片机与嵌入式系统应用 2018年1期
关键词:监测仪量程光缆

,,,,

(浙江中欣动力测控技术有限公司,宁波 315010)

引 言

随着光纤通信技术的不断发展、传输速度的不断提高,光纤通信在通信的各个领域起着越来越重要的作用。然而,在实际应用中光缆的管理维护水平却远远落后于光缆的发展水平,光缆的故障次数在不断增加,每年因通信光缆故障而造成的经济损失巨大。因此,通过对光缆线路的实时监测与管理,降低光缆阻断的发生率,缩短故障历时显得至关重要。光功率的远程实时监测是光纤传输网实时监控的重要方法之一,通过对光缆中通信光的功率值的实时监控,可根据光功率的变化趋势作出预警,从而及时发现故障隐患,并在出现故障时快速报警,配合人工测试,尽快加以修复[1]。

随着WiFi技术的不断成熟和普及,无线网络已经渗透到诸多领域,给人们的工作和生活带来了极大的便利。乐鑫信息科技(上海)有限公司的SoC芯片ESP8266,该芯片内置Tensilica L106超低功耗32位微型MCU,集成WiFi MAC/BB/RF/PA/LNA,适应各种无线WiFi 环境[2]。

本文介绍了一种基于ESP8266的光功率无线实时自动监测仪,通过ESP8266的WiFi功能实现与远程上位机通信,并利用其内置的MCU作为控制器,结合24位的模/数转换器ADS1246以及外围电路,实现光功率测量。

1 系统工作原理

实际使用的光缆一般都是多个芯构成的,其中某一芯或者几芯用来传输光信号,其他则作为备用光纤。监测光纤选取的是正在传输光信号的光纤,即在用光纤。在用光纤的末端安装一个97/3的分光器,3%的通信光作为监测设备的输入光信号,另外97%的通信光返回到通信光路或通信设备。无线光功率监测仪的系统工作原理如图1所示。光电转换模块将检测到的光信号转变为电流信号,经I/V变换后输出电压信号,经过程控放大后送入ADS1246进行模/数转换,ESP8266中的MCU通过判断和控制选择合适的量程,再对采集的电压进行软件滤波,运算处理后得到光功率值与设置的告警阈值相比较,如果超过门限则通过WiFi网络向远程上位机发送告警。

图1 无线光功率监测仪工作原理图

2 硬件设计

2.1 光电探测器

光电探测器是光电转换的关键器件,用于将光信号转换为电流信号。PIN光电二极管具有高响应度、低暗电流、宽动态范围、高线性度、重复性好、价格便宜等优点[3]。因此设计中采用重庆浩铎光电科技有限公司InGaAs PIN。该器件能响应850~1 650 nm波长,暗电流为0.5 nA,响应度是0.85 A/W,动态范围为-70~+10 dBm。

2.2 I/V转换及程控放大

光纤中光信号通常很弱,从nW级到mW级,这就要求仪表必须有多个量程并且能够根据光信号大小范围自动切换量程。由于输入信号比较小,其量程切换实际上是放大倍数的切换。I/V转换及量程切换电路主要由一个8路模拟开关MAX4638和一个低功耗低噪声单电源双路运放OPA2344组成,除了第1路是50 Ω,其他每相邻的两个通道上的电阻值相差10倍,电阻值从100 Ω到100 MΩ。ESP8266根据ADS1246采样值确定信号放大倍数,通过模拟开关选择合适的放大电阻,使电压信号满足ADC输入范围要求。

2.3 模/数转换设计

经过放大后的信号送入ADC芯片进行模/数转换,将模拟量转换成可供MCU直接数据处理的数字量。考虑光纤的入射光功率是稳定连续的,因此对ADC芯片转换速度要求并不高,同时考虑系统设计的高精度和高动态范围要求,选用TI的24位高精度模拟转换器ADS1232。ADS1232采用近年来流行的Σ-Δ积分转换技术,具有分辨率高、线性度好、成本低等特点,得到了很广泛的应用。ADS1232的接口电路如图2所示。

图2 ADS1232接口电路图

2.4 ESP8266 WiFi传输和系统控制设计

ESP8266是一个完整且自成体系的WiFi网络方案,能够独立运行,也可以作为从机搭载于其他主机MCU运行。ESP8266在搭载应用并作为设备中唯一的应用处理器时,能够直接从外接闪存中启动。内置的高速缓冲存储器有利于提高系统性能,并减少内存需求。ESP8266高度片内集成,包括天线开关balun、电源管理转换器,因此仅需极少的外部电路,且包括前端模组在内的整个解决方案在设计时将所占PCB空间降到最小。ESP8266内置Tensilica L106超低功耗32位微型MCU,CPU时钟速度最高可达到160 MHz,支持实时操作系统系统,当前WiFi协议栈只用了20%的MIPS,有相当富余的资源可以来用做应用开发。考虑光功率检测仪的控制和计算要求,MCU和WiFi芯片的价格因数,ESP8266是目前最具性价比的一个选择[4]。

3 系统软件设计

3.1 ESP8266SDK和Eclipse IDE简介

ESP8266 SDK:用户根据自己的ESP8266型号在乐鑫官网上下载需要的SDK。SDK包含了常用的外设驱动,为用户提供了一个简单、快速、高效的开发物联网产品的软件开发平台,虽然其底层代码对用户不透明,但都提供了接口函数,用户不必关心底层网络,如WiFi、TCP/IP等具体实现,根据编程手册就可以直接调用这些函数接口[5]。

Eclipse IDE:它是由安可信发布的一款用于ESP8266二次开发的软件平台,由Eclipse集成了相关插件,相对于官方开发环境配置。Eclipse IDE简易、方便,最重要的是可以在Windows下直接运行,编译过后能够直接生成bin文件,通过烧写工具将bin文件烧入ESP8266即可。

3.2 WiFi通信及自定义传输结构

ESP8266 SDK已经包含了LWIP协议栈,Socket可以配置成TCP、UDP等传输方式,只需在应用层调用相关的接口函数。UDP不需要建立连接就可以进行数据传输,比较容易出现信息丢失、反转和覆盖。但是考虑到UDP传输速度比较快并且系统要传输的数据量比较小,设计中采用UDP模式,在使用前需初始化WiFi功能:①串口初始化,用来在后台修改通信参数;②设置工作模式为WiFi终端模式;③登录WiFi路由器;④设置UDP接收发送缓冲区大小、重发次数、重发时间间隔;⑤打开UDP套接字。同时,为了保证数据传输的正确性、完整性、有效性,设计了一种通信帧格式,如下所示:

帧头源地址目的地址命令码数据长度数据区检验帧尾0x55SRC_ADRDES_ADRFCLENDATARC0x0D

图3 光功率数据采集流程图

除了帧头和帧尾是固定一个字节,其他部分都是两个字节。

3.3 光功率数据采集程序流程

光功率数据采集流程如图3所示。采集模块中量程分为8档,ESP8266的MCU微控制器根据采集到的ADC值自动调整量程,量程稳定以后连续采样32次取平均,获得功率值后再和设定的告警阈值比较,发现超过阈值就主动向上位机发送告警消息。

结 语

文中引入WiFi和MCU二合一的ESP8266芯片,实

[1] 曹俊忠,鲍振武. 光缆光功率实时监测[J]. 光通信研究,2003(2):34-37.

[2] 乐鑫IOT团队.ESP8266 系统描述[EB/OL]. [2017-09].http://espressif.com/.

[3] 池瑞军,胡封东,杨芳利,等. 光缆线路自动监测及管理系统设计方案[J]. 继电器,2004,32(17):67-69.

[4] 乐鑫IOT团队. Espressif IOT Demo Smart Light/Plug/Sensor[EB/OL].[2017-09]. http://wiki.ai-thinker.com/_media/esp8266/docs/.

[5] 朱浩翔,郭为民,杨宁. 基于ESP8266的充电桩数据采集器设计[J]. 微型机与应用,2017,36(9):92-84.

王旭峰(工程师),主要研究方向为光纤网络嵌入式产品设计。

猜你喜欢
监测仪量程光缆
基于惯性导航量程扩展的滚动再次受控方法
宽量程计量自动切换及远程传输技术
铺条长长的海底光缆
煤气化装置中吹扫转子流量计量程选取探讨
基于STM32F207的便携式气井出砂监测仪设计
一种基于数据可视化技术的便携式物联网环境监测仪
气吹法光缆敷设
无卤阻燃光缆及防蚁光缆
无卤阻燃光缆及防蚁光缆
PM2.5环境监测仪设计