基于TCS3200D型传感器的色度分析仪的设计与实现

2016-10-24 05:02王亭岭王宽方
关键词:微控制器监测仪色度

王亭岭, 王宽方

(华北水利水电学院,河南 郑州 450045)



基于TCS3200D型传感器的色度分析仪的设计与实现

王亭岭, 王宽方

(华北水利水电学院,河南 郑州 450045)

针对突发性水污染事件和非常态化下监测水质的需求,研制出了新颖的以智能色阶自动辨识系统为核心的多参数便携式色度分析仪,实现水源中待测物含量的快速、原地、定量测定及测试信息的实时无线远程传输。该分析仪以32位ARM Cortex-M3内核的微控制器STM32F107为系统控制核心,颜色传感器选用高分辨率数字式TCS3200D彩色光/频率转换器,并加入闭环反馈调节系统,同时整合北斗定位、GPRS短信服务功能和USB OTG主从功能。另外,μC/OS-Ⅱ在STM32F107上的移植减少了水质监测仪的运行时间,水质监测仪中多任务的调度也得到了合理高效的分配。测试结果安全稳定,可靠性强。该分析仪为市场提供了一种新颖、高效、廉价的水质分析仪器。

微控制器;颜色传感器;操作系统;闭环反馈;色度分析仪

随着我国经济的飞速发展及工业化程度的不断加深,芯片技术和集成电路技术得到快速发展。色度分析在工业进展和自动控制领域有着不可或缺的作用。传统的色度分析传感器需要光电二极管外加滤光片进行简单的测量,其精确度和稳定性不好,而且这种二极管电路输出的是模拟信号,需要加A/D采样电路,应用起来很不方便。光栅传感器能满足监测要求而且精确度高,但是价格比较昂贵,不利于大范围普及应用。文中采用的是TOAS公司的TCS3200D型传感器进行色度分析仪的设计。该色度分析仪依据R、G、B三色光与无光C 4种颜色分量的组合光进行测量,测量的结果是一个频率与光强成正比、占空比约为50%的方波,可与主控制器直接通讯[1]。与传统色度分析仪相比,该色度分析仪检测出来的结果更加准确、稳定,检测的效率高、分辨率高,而且界面友好、经济实用、操作简单、性价比高。

1 色度分析仪的硬件结构

主控制器是水质监测仪的核心,水质监测仪是以32位低功耗ARM Cortex-M3内核的微控制器STM32F107为核心,周围配备电压转换电路和稳定光源电路给USB接口和颜色传感器供电,通过其他I/O接口来调节和控制北斗模块、GPRS模块、温湿度模块、内存模块,外加键盘、显示屏、蜂鸣器等。色度分析仪的结构如图1所示。

图1 色度分析仪结构简图

嵌入式微处理器选用意法半导体公司的STM32系列中互连型微控制器STM32F107VCT6,该控制器集成了各种高性能工业标准接口,时钟频率72 MHz,包括10个定时器、2个12位 ADC、2个12位DAC、2个I2C接口、5个USART接口、3个SPI端口和高质量数字音频接口ⅡS。另外,STM32F107拥有全速USB OTG接口可以方便地与U盘通讯,并包含2路CAN2.0B接口以及以太网10/100 MAC模块,能够很好地满足此色度分析仪系统的设计要求。

TCS3200D属于可编程彩色光/频转换器,芯片上面含有4×6的光电二极管阵列,可输出频率与发光强度成正相关关系、占空比约50%的方波,量程可根据2个控制输入引脚进行调整,控制的是S2与S3管脚,切换使用4种颜色滤波片进行不同组合,输出的数字量可以直接接到微控制器或者其他逻辑电路,且这种电路不用添加A/D转换模块。当发光二极管发出的光穿过待测水质映射到TCS3200D芯片上时,该芯片就能监测出光的分量波形,STM32的计数器能够对波形进行采集与计算,进而求得相应分量的频率和光的颜色亮度[2]。还能通过外部键盘手动操作,进行数据的测试、发送、储存、删除。

GPRS选用TD-3000模块,同时整合北斗UM220定位,还有为该色度分析仪的便携式提供便携通讯功能的USB OTG模块,可以实现快速监测、定量分析、北斗定位及无线信息传输等诸多功能。亚太网络的组成加快了北斗系统的建设,在手持式水质监测仪中引入北斗模块,可以通过卫星定位实现对水质的移动监测。GPRS采用分组交换技术,能有效地传输高速数据,传输速度最高可达171.2 kb/s。这两种通讯模块相结合,提高了水质监测仪的性能。北斗UM220的硬件设计如图2所示。

图2 北斗模块电路

2 色度分析仪光亮闭环反馈设计

在色度分析仪的设计中,TCS3200D可编程彩色光/频转换器对光采集的灵敏度和稳定转化程度,直接决定了色度分析仪的性能和使用价值,为此要对光亮进行严格控制,以免影响监测结果。

色度分析仪的光照来源于LED灯,由于发光二极管的光照强度不稳定,每次系统上电之后发光二极管发出的光都会有1%以上的误差,这对监测结果的稳定性有很大影响[3]。为此,文中设计了一款光亮闭环反馈调节电路。经试验验证,此光亮反馈电路的精度可以达到0.01%,能满足实际应用.该色度分析仪的光亮反馈电路如图3所示。

如图3的光亮闭环反馈调节电路中,电压转换芯片 SN74LVC4245把微控制器输出的3.3 V电压转换为5.0 V,给X9C103X芯片供电,X9C103X芯片为100阶高精度数字电位器,电位器阻值是以阶梯式增加的。NCP4300为射极跟随器放大电路,起到放大信号的作用。LM2791为开关电容电流调节器,输入电压的范围为3.0~5.8 V,由可变电压控制输出电流。监测光强的信号先从NCP4300基极输入,从发射极输出至微控制器,微控制器根据数值大小控制X9C103X的阻值来改变LM2791的输入电压,从而改变其输出电流,最后达到控制LED光强的目的。

图3 光亮闭环反馈调节电路图

3 色度分析仪频率采样流程设计

色度分析仪的核心是频率采样流程,理清采样流程,对设计色度分析仪至关重要,需要弄清楚微控制器的采样频率和颜色传感器的采样频率,使二者的采样频率趋于同步才能获得需要的结果。为此,要设定好微控制器的采样频率。

STM32F107定时器由可编程预分频器驱动的16位自动装载计数器构成,计数器的计数范围为1 000~65 535,颜色传感器的输出频率范围为2 Hz~500 kHz,根据TCS3200D颜色分量频率的不同,STM32F107定时器的工作频率和工作模式也会不同[4],所以设计了频率采样流程,在不同频率下采样都能顺利进行。频率采样流程如图4所示。

定时器基频设置为72 MHz,如果计数器无溢出且计数值大于1 000,那么传感器输出频率范围为1 099~72 000 Hz,满足工作频率的要求,然后读取并比较寄存器的值。

如果计数器无溢出且计数值小于1 000,计数误差会大于1‰,此时运用定时计数法来计算颜色频率,传感器的输出频率在72 kHz~500 kHz时,定时器设置定时为150 ms,计数器计数范围为1 080~7 500。

图4 频率采样流程图

如果计数寄存器有溢出,设定定时器时基工作频率为7.2 MHz,若读取的溢出标志无溢出则保存计数器的值,传感器输出频率在110~7 200 Hz范围;若读出的溢出标志有溢出,说明传感器输出频率在2 Hz~1 099 kHz范围,则设定定时器时基工作频率为120 kHz,重新读取计数寄存器并保存。

4 在μC/OS-Ⅱ操作系统上的移植

μC/OS-Ⅱ操作系统在Cortex-M3内核上的移植主要集中在OS_CPU.H、OS_CPU_C.C、OS_CPU_A.ASM这3个文件中,对这3个文件的参数数据进行修改就可以达到移植的目的[5]。将各个模块的程序当成任务,将工程文件都放在USER文件夹中,在STM32的架构上再添加HARDWARE文件用来放置外设库文件;添加μC/OS-Ⅱ-CORE、μC/OS-Ⅱ-PORT、μC/OS-Ⅱ-CONFIG这3个文件,用来放置μC/OS-Ⅱ的配置文件。主程序中,在μC/OS-Ⅱ系统工作之前,首先调用系统初始化函数OSInit(),初始化μC/OS-Ⅱ变量和数据结构;然后创建最低优先级空闲任务OS_TaskIdle(),这个任务处于就绪状态;接着调用OS_TaskCreate()函数建立最高优先级的启动任务项,在启动任务中创建其他任务;最后调用OSStart(),由μC/OS-Ⅱ内核控制,开始多任务运行[6]。μC/OS-Ⅱ的工作流程如图5所示。

图5 μC/OS-Ⅱ工作流程图

USB OTG技术在μC/OS-Ⅱ操作系统上的移植主要在文件USB_core中操作,对于读写大容量设备的操作在文件usbh_usr.c中完成,通过修改内部函数达到便携式应用的目的。f_mount为在 FATFS 模块上注册/注销一个工作区,f_open为创建/打开一个用于访问文件的文件对象,f_read为从一个文件读取数据,f_write为函数写入数据到一个文件,Buffer为指向存储读取数据的缓冲区的指针。当文件过小时,用F-LSEEK扩展文件大小[7]。

μC/OS-Ⅱ中最多可以支持256个任务,对于此次水质监测仪项目的任务,在操作系统中也进行了有序的划分,对于不同功能模块的任务调度设置了不同的优先级。主控系统任务优先级划分见表1。

在水质监测项目中,μC/OS-Ⅱ操作系统在Cortex-M3内核上的移植,将主要模块对应的程序成功移植到μC/OS-Ⅱ操作系统中,极大地优化了内核,缩短了任务处理时间,方便了任务调度,取得了比较理想的效果。

表1 系统功能优先级划分

5 系统测试结果分析

用标准信号源监测无光分量时的系统误差,在标准频率发生器输出条件下,使用本测试仪器进行波形采集,频率范围为600 kHz~10 Hz,信号接收并处理后,精度达到0.01%.其次,用不同颜色光分量监测,待LED发光状态稳定后,使用TCS3200D接收光信号,接收R、G、B、C 4个颜色滤光片的分量,经过各种算法处理后的信号精度达到0.03%左右,试验数据误差最大达到0.025%,最小达到0.019%,满足0.1%的设计要求。

传统的光电二极管水质监测仪的精确度在0.1%左右,分辨率0.02 mg/L,响应时间10 s,测量范围0~10 mg/L,而文中自主研发的水质分析仪精确度在0.03%左右,分辨率0.01 mg/L,响应时间5 s,测量范围0~20 mg/L,而且价格便宜功能齐全,可以现场操作,能够卫星定位等。

该水质分析仪对某一样品的测试结果见表2。该测试数据表明,此色度分析仪精度上满足0.1%的要求。

表2 自主研发的水质分析仪的测试结果

6 结 语

立足于水质可持续发展和市场化的需求,文中研制出一款新颖的多功能、高精度便携式色度分析仪,解决了我国在监测水质方面遇到的实质性问题,具有极高的应用价值。相对于常规的色度分析仪,文中所设计的水质分析仪具有友好的人机交换界面、可移植操作的μC/OS-Ⅱ操作系统、误差范围达到0.01%的监测结果、增加色度分析仪稳定性的光亮闭环反馈调节电路、USB OTG模块、北斗模块、GPRS模块等,为科研和应用提供了一个新的仪器,具有一定的实用价值。

[1]高富强,李岭,安康.基于RGB的颜色辨识系统设计[J].传感器与微系统,2012,31(10):84-87.

[2]张菁,杨应平,章金敏,等.基于TCS3200D的颜色再现与分类[J].武汉大学学报(工学版),2013,46(2):257-260.

[3]王世龙,王丽娜,王宏博,等.多功能气动误差测量仪[J].仪表技术与传感器,2010(9):27-29.

[4]李锦明,李娜娜,马游春.基于高精度A/D的石英挠性加速度计数据采集的设计[J].仪表技术与传感器,2012(2):22-24.

[5]王田苗.嵌入式系统设计与实例开发—基于ARM微处理器μC/OS-Ⅱ实时操作系统[M].北京:清华大学出版社,2003:3-20.

[6]任哲.嵌入式实时操作系统μC/OS-Ⅱ原理及应用[M].北京:北京航空航天大学出版社,2009:10-25.

[7]龚跃玲,汪玲彦.基于STM32的USB OTG数据通讯的实现[J].微型机与应用,2011,30(10):32-37.

(责任编辑:杜明侠)

Design and Implementation of Color Analyzer Based on TCS3200D Sensor

WANG Tingling, WANG Kuanfang

(North China University of Water Resources and Electric Power, Zhengzhou 450045, China)

For some emergent water pollution incidents and abnormal demands for monitoring water quality, a multi-parameter and portable color analyzer utilizing a intelligent-level and automatic-identification system as the core was designed, which could realize to measure the content of the test matter in water sources in situ rapidly and quantitatively, and the test information can be wirelessly and remotely transformed in real time. This system used 32-bit ARM Cortex-M3 kernel micro-controller STM32F107 as the control core, used a high-resolution and digital TCS3200D color light/frequency converter as the color sensor and added a closed-loop feedback control system. At the same time, the system integrated Beidou navigation system, GPRS short message service and USB OTG master-slave function. Moreover, μC/OS-Ⅱ transplanting on STM32F107 could reduce the operation time of the water quality monitoring system, the multitasking scheduling in the water quality monitoring system was reasonably and efficiently arranged. The test results are stable and reliable by the water quality monitoring system, and the market will get a new, efficient and cheap water quality analytical instrument.

micro-controller; color sensor; operating system; closed-loop feedback; color analyzer

2015-10-19

王亭岭(1975—),男,河南郑州人,副教授,硕士,主要从事嵌入式系统方面的研究。E-mail:wangtl@ncuu.edu.cn。

10.3969/j.issn.1002-5634.2016.01.017

TV213.4;TP29

A

1002-5634(2016)01-0089-04

猜你喜欢
微控制器监测仪色度
自我血糖监测仪对糖尿病患者治疗护理依从性分析
基于物联网的电压监测仪自诊断系统研究及应用
TASKING针对英飞凌第三代AURIX微控制器推出多核开发环境
基于STM32F207的便携式气井出砂监测仪设计
一种基于数据可视化技术的便携式物联网环境监测仪
物联网技术在微控制器实验教学中的应用
用于高品质电动汽车的分布式并行计算
基于改进色度模型的非接触式心率检测与估计
景德镇早期青白瓷的器型与色度
如何提高苹果的着色度