基于CPLD 与STM32 结合的一种地物光谱仪设计
2022-03-09郝冬辉汤英文罗彩任
郝冬辉 汤英文 罗彩任
(闽南师范大学物理与信息工程学院,福建 漳州 363000)
1 概述
随着光谱技术的发展,不同的光谱仪应用在不同的场景当中。地物光谱仪通过光谱仪对光信息的抓取、数值仪器显示和分析,在野外探测、农业方面有广泛的应用[1]。然而目前的地物光谱仪的光谱数据采集模块大多以单一的单片机作为控制器,存在以下不足:
1.1 单片机为控制器的地物光谱仪常常以数码管和液晶为显示器,此类显示器虽然能显示数字和字母,但点阵数量较少,处理速度也较慢。
1.2 常见的单片机由于其内核处理器速度的限制,无法驱动图像传感器进行高速稳定的工作,限制了对于复杂功能软件系统的开发。
对此,我们采用了CPLD 进行驱动图像传感器工作。CPLD 为复杂可编程逻辑器件,是从PAL 和GAL 器件发展出来的器件,相对而言规模大,结构复杂,属于大规模集成电路范围[2]。一般由逻辑块、可编程互连通道和I/O 块三部分构成采用CMOS、EPROM、EEPROM、快闪存储器和SRAM 等编程技术,从而构成了高密度、高速度和低功耗的可编程逻辑器件,无需外部存储器芯片,使用简单。故CPLD 具备很好的并行处理和自定义模块能力,适合实现数据的高速采集。
2 系统硬件设计
2.1 地物光谱仪工作原理
由光学理论可知,一束光线照射到物体上会发生反射,而地物光谱仪的工作原理就是采集物体反射的光线,反射光线经过仪器入射狭缝后经过准直系统将光线变为平行光,再经过光栅处理以及聚焦系统后传入CMOS 图像传感器。通过CPLD 驱动图像传感器进行光谱数据采集,再经过与标准白板的光谱数据进行对比分析以及通过相应的算法处理得出光谱曲线,从而测出待测物的反射率以分析以方便后续的分析与评价[3]。
2.2 系统硬件组成
地物光谱仪硬件系统主要有数据采集模块、通讯接口模块以及微处理模块组成。其基本工作流程如图1 所示。
图1 地物光谱仪硬件系统组成图
微处理器模块:光谱仪的性能在于其光谱数据采集模块,而微处理器只需要满足基本需求即可,故微处理器选择STM32F4 系列单片机作为主控制器,采用的是ST 公司的STM32F4 系列的芯片作为处理器,同时搭载ALTERA 公司的EPM570T100C5N 型号的CPLD 芯片[4]。STM32F4 系列芯片其工作频率可以达到168MHz, 自带了各种常用的通信外设,如USART、I2C、SPI 等,外设接口丰富;同时M4 内核还具有丰富的总线矩阵和多通道的DMA,传输数据速率很快;同时提供3 个12 位的ADC,两个DAC,1 个低功耗的RTC,12个通用16 位定时器,其中包括两个用于电机控制的PWM定时器,两个通用32 位定时器。
虽然STM32F4 系列的内部时钟最高可以实现168MHz,但是单独使用32 位单片机控制图像传感器进行数据的采集还是会出现数据采集不稳定的现象。对此我们使用CPLD 来控制图像传感器进行数据采集。故此选择ALTERA 公司的EPM570 系列型号芯片,内部由570 个逻辑单元,相当于440个宏单元,逻辑是实现能力强大。该芯片最大工作频率可以达到304MHz,内置非易失性Flash 存储器,通过取代分立式非易失存储器件减少元件数;具备实时在系统可编程能力(ISP)。器件在工作状态时能够下载第二个设计,降低远程现场升级的成本[5]。
数据采集模块:通常使用光电传感器进行光谱数据的采集,光电传感器分为CCD 和CMOS。CCD 传感器是由一行行紧密排列在硅衬底上的MOS 电容器阵列构成的。光照射每个像素由于光电效应,CCD 的内部会产生空穴电子对并累积,由于CCD 只有一个读出端口,因此需要串行的方式将每个像素的电荷在像素之间进行转移到输出端口。最终将电荷转换为电压,进行放大和AD 转换得到图像。CMOS 的光电信息转换功能与CCD 的基本相似,区别就在于这两种传感器的光电转换后信息传送的方式不同。CMOS 具有读取信息的方式简单、输出信息速率快、耗电省、体积小、重量轻、集成度高、价格低等特点。CCD 显著的特点是技术较为成熟,由于像素点众多,故成像质量高,具备较高的灵敏度和低噪声,响应速度较快,有自扫描功能,图像畸变小,无残像。考虑光谱数据成像质量因素,使用CCD 图像传感器进行光谱数据采集。
数据传输模块:为了方便进行数据传输,采用蓝牙技术进行数据传输。蓝牙技术是一种无线数据和语音通信开放的全球规范,它是基于低成本的近距离无线连接,为固定和移动设备建立通信环境的一种特殊的近距离无线技术连接。蓝牙属于无线通信模块,开发成本较低,但是传输距离较短,故功耗较低,因此体积较小,可以方便地嵌套与整合到产品中,目前这种技术应用非常广泛[6-8]。因此选用ESP32 芯片进行蓝牙传输,ESP32 是集成2.4 GHz Wi-Fi 和蓝牙双模的单芯片方案,采用台积电超低功耗的40 nm 工艺,具有超高的射频性能、稳定性、通用性和可靠性,以及超低的功耗,适用于各种应用场景。
2.3 系统软件设计
光谱仪软件部分由两部分组成,一部分为光谱仪采集系统软件设计,另一部分为光谱传输处理系统软件设计。根据需求将光谱仪的系统界面分为几个模块:(1)仪器参数设置部分,包括光谱仪的校准、设置、样品信息等。(2)测量主界面部分,吸光度、透过率以及记录储存。(3)曲线绘制部分,即光谱图的绘制。(4)数据管理部分,负责数据管理和存储以及打印输出等,具体框图如图2 所示。
图2 软件模块结构框图
数据采集模块与数据传输模块是整个软件系统的核心部分,系统上电后对整个设备进行初始化。包括5 个IO 口、电量监控、光谱仪状态、蓝牙等模块以及串口和定时器的初始化。随后是判断蓝牙的连接状态,初始化成功后蓝牙等待连接,若连接成功则给光谱仪进行上电操作并将蓝牙设定为SPP(透传模式)。若连接失败,则重新初始化设备。移动端还会在7 秒内给STM32 单片机发送一组数据,用于判断连接是否保持。若超过7 秒未接收到数据,则重新初始系统,进行设备重新连接。若一直保持连接状态,则等待移动端发出的采集指令,收到指令后控制光谱仪采集数据[9]。设定等待数据采集的延时为250ms,随后将这段时间内采集到的数据发送到移动端显示。
2.3.1 光谱采集系统软件
光谱采集系统软件设计采用模块化的方法,按照实现的功能不同,采集系统软件部分可以划分为CCD 驱动模块和数据传输模块,其中CCD 驱动模块程序包括采集程序,A/D转换程序,数据传输程序主要为蓝牙模块驱动程序。
其中CCD 驱动模块由CPLD 驱动CCD 进行光信号的采集,并将光信号进行一系列处理后转化为电信号,即光谱数据,蓝牙传输模块负责与移动端进行通信:通过蓝牙协议,将采集到的光谱数据传给移动端,同时也可以接收移动端发送的指令[10-11]。
2.3.2 光谱处理传输系统软件
移动端的光谱处理部分是将采集系统通过蓝牙传输上来的光谱数据进行一些处理,形成所测物质的光谱图,再和光谱图库中的光谱数据进行匹配,找出与之相对应的谱图,形成反射率与波长的图像关系。
以保证设备工作的稳定性。还有就是ESP32 也集成了WIFI 模块,WIFI 也是一种很好的数据无线传输方式,也可以用于便携式光谱仪设备数据传输的开发。
3 测试与总结
LED 暖白光的参考光谱如图3 所示。
图3 LED 灯的参考光谱图
在400-700nm 波段具有两个特征峰。通过使用了本文中设计的光谱数据移动传输系统来采集室内的暖白LED 灯的谱图,所得到的结果如图4 所示。
图4 LED 灯测试图库
对比两图的光谱特征,可以得出设备通过蓝牙传输的数据是正确的数据,该设计的功能基本得到了实现。
目前国内外主要通过采用提高城市反射率来达到节能、降低城市热岛效应。而作为至少占据城市20%-40%的城市道路,其反射率的高低直接与城市热岛效应相关联。因此提高城市道路反射率以及确保城市道路反射率符合标准就尤为重要。为了更好验证设计仪器的可靠性,通过配合标准白板,在户外进行了柏油路道路路面的反射率测试,结果如图5 和6 所示,为监测城市道路地面反射率提供一个可行的方法。
图5 柏油路路面图
图6 柏油路的地物光谱图
通过形成的谱图可以看出该设计仪器的正确性。除了本次研究中的城市道路反射率之外,还有建筑物墙体、反射涂料以及建筑物屋面等反射率,这些都共同影响着城市热岛效应。而地物光谱仪能够便捷快速且准确地测量出物体的反射率,这为测量城市人造表面反射率提供了精准快捷的办法,也为城市监管城市表面反射率并调整以改善城市热岛效应提供了可循途径。