鲍亦澄,陈宜保,孙文博,王合英
(清华大学 物理系,北京 100084)
基于微控制器的拉曼光谱仪控制系统
鲍亦澄,陈宜保,孙文博,王合英
(清华大学 物理系,北京 100084)
使用STM32F303微控制器为核心,重新设计了高精度长焦距双光栅光谱仪(SPEX1403)的控制系统. 重新设计的控制系统具有测量拉曼光谱的全部功能,具有完善的可编程加减速功能,并使用USB VCP协议与计算机通讯.
拉曼光谱仪;控制系统;微控制器;USB虚拟串口
80年代初进口的高精度长焦距双光栅光谱仪(型号SPEX1403),原用于拉曼光谱教学实验,该光谱仪分辨率高(0.15 cm-1)[1],专门为拉曼光谱测量设计. 控制器在实验过程中经常发生故障,无法启动,即使启动成功,实验过程中也经常发生死机或者显示错乱. 而且受当时技术所限,原来的控制系统在设计上比较笨重,且缺少内部存储器,若干重要参量无法保存,必须每次开机后设置,使用不够方便. 但该光谱仪的光学和机械部件极为优良,是1台非常有价值的光谱仪器,也有其他研究人员对该型号光谱仪控制系统进行改造的先例[2-3]. 为了继续利用该光谱仪进行教学和科研实验,笔者采用ARM控制芯片,重新设计并制作了光谱仪控制器,使得这台具有高分辨率的长焦距光谱仪重新在近代物理实验教学中发挥作用.
拉曼光谱测量系统的结构图如图1所示. 控制核心使用STM32F303微控制器. 该微控制器是基于ARM Cortex-M4核心的32位微控制器,不但具有强大的计算性能,还有丰富的外部设备.
图1 拉曼光谱测量系统的结构图
通过内置的通用串行总线物理层控制器(USB PHY)可以方便、高速地与计算机连接. 该微控制器同时负责USB通讯、命令解析以及脉冲信号的产生等工作,使得电路核心只需1片芯片,减小了电路的规模[4].
由于使用了USB接口作为通讯接口,此系统的控制器非常小巧(仅3.5英寸硬盘大小),且只需通过1条USB连接线连接计算机,避免了某些改造方式需要拆开计算机机箱安装专用板卡的麻烦,并且也不需要过时的并行接口,使得普通笔记本电脑也能轻松使用该控制器运行整个实验. 所有的脉冲生成和安全功能都由控制器硬件掌控,具有最高的优先级,不会因为USB传输失败或者计算机运行非实时操作的原因而造成脉冲不稳定,甚至发生危险.
本系统硬件基于成品STM32F3 DISCOVERY 开发板,引出其自带的USB接口和GPIO,并将部分GPIO连接至LED和DB-25接口. 其中LED为指示用,DB-25接口则负责传输脉冲控制信号至步进电机驱动器(Mini Step Driver, MSD).
常用的USB设备通常需要配置传输端点,使用前需要安装特定的USB驱动程序. 由于本系统并没有大量数据传输的需求(只需要传输命令),此处使用这样的开发模式不但没有必要,而且由于编写基于libusb的上位机具有一定难度,提高了研究人员进一步开发控制器的门槛.
为此,笔者选择了基于USB通讯设备类(Communication device class, CDC)[5-6]的USB虚拟串口(Virtual COM port, VCP)传输模式. 大部分常用的操作系统(包括Windows, Linux, OS X)都预装了USB VCP驱动程序,一般只要插上该控制器即可正确识别,并且添加一虚拟串口设备(在Windows下一般为COM*,在Linux和OS X下一般位于/dev/tty.usbmodem*,*为系统分配序号). 此串口设备和标准串口设备相同,原来能通过串口通讯的程序无需修改即可直接应用于该设备. 注意到USB VCP设备没有像普通串口规定波特率,其传输速率可以达到USB协商速率(在本控制器上,为USB 2.0全速,即12 Mbps),远超一般RS232串口的11.52 Mbps的速率. 引入USB VCP使得普通用户可以仅凭借串口编程的知识,轻松体验USB接口的高速传输速率的优势.
为了方便使用,本控制器预留了若干个指示运行状态的LED指示灯,可以让使用者清楚地了解到控制器的运行状态(是否正在运行,波数运行方向,脉冲信号速度,USB通讯指示等).
本系统的通讯通过自定义的命令集来实现,实现了设定实验参量、回读设定参量、运行、运行情况查询等实验必需功能. 此外,本系统也为拉曼光谱测量添加了若干实用功能,保证了系统的稳定运行.
此光谱仪使用步进电机带动正弦驱动机构来移动光栅到合适角度,从而实现波数的扫描. 步进电机启动时,需要使用低于最大空载启动频率的脉冲,如果直接使用高速脉冲启动步进电机,将由于扭矩不足而造成步进电机丢步. 对于此光谱仪现有的开环系统,丢步将造成未知的光栅角度,从而造成错误的光谱扫描范围.
为了解决该问题,必须引入合适的加速和减速脉冲序列,来实现缓慢的加速过程[7-8]. 系统使用STM32内置高级定时器可以生成所需要的时钟,配合软件实现自定义的加减速脉冲序列,在实际使用中,定义了256点的脉冲间隔序列,其加减速效果良好,在反复启停测试中未发现丢步.
由于光谱仪的光程长、拉曼光谱信号弱,故系统采用具有高量子效率的光电倍增管作为光电探测器. 但光电倍增管不能接受强光的照射,工作情况下的强光照射将导致其损坏. 在拉曼光谱测量中,必然需要用到较强的激光,也必然会在激发出拉曼信号的同时激发出更强的瑞利散射信号,如果扫描范围中包含了所使用的激光的波长(如直接从反斯托克斯峰扫描到斯托克斯峰,必然经过与泵浦激光同频率的瑞利散射峰),那么较强的瑞利散射信号就有可能对光电倍增管造成损害.
本系统可以直接通过USB VCP设定激光波长的范围,并在运行中产生正确的快门信号,当扫描到设定的激光波长范围时,自动用机械快门挡住光电倍增管,实现对光电倍增管的保护.
根据USB VCP类似于标准串口设备的原理,LabVIEW程序可以直接通过VISA读写模块对虚拟串口设备进行操作,即格式化生成所需的命令字符串并发送,然后查询控制器返回的运行结果即可.
笔者为拉曼光谱实验所编写的LabVIEW控制程序界面截图如图2所示. 在教学实验中,可以设定到简单模式,程序会自动设定好参量并且发送到控制器,一方面防止学生对控制器不熟悉,错误操作造成故障;另一方面,也防止过多参量的设置给学生带来压力. 对于科研人员,可以在切换到高级模式后,详细地调节控制器的各个参量,优化扫描过程.
图2 LabVIEW程序界面
控制系统改造完成,已经成功应用于近代物理实验教学,图3是利用本系统测量到四氯化碳和酒精的拉曼光谱图. 本项目也为在物理实验教学中对一些高精度指标的旧仪器装备进行基于现代通信技术接口的改进,使其使用更为方便,在教学中发挥更大的作用.
(a)CCl4
(b)C2H6O
基于微控制器的拉曼光谱仪控制系统实现了对光谱仪的自动控制,可以让拉曼光谱教学实验顺利开展,提高了光谱的分辨精度,从而使开展更多的研究性实验成为可能,同时还能让学生更好地接触到科研级别的拉曼测量,激发了学生的学习兴趣. 由于控制器的性能较好,且具有可编程性,易于后续开发更新或者推广.
[1] SPEX Industries, Inc. SPEX-1403 operation & maintenance instructions [Z]. 1984.
[2] 缪凤英,王华,唐新桂,等. SPEX-1403拉曼光谱仪扫描控制和数据采集系统的研制[J]. 光散射学报, 2000,12(1):46-48.
[3] 彭卫群,欧榕,韦国恒,等. SPEX-DM1B替代系统BD-POW的研制[J]. 光散射学报,1993,5(1):28-32.
[4] STMicroelectronics. STM32F303VC reference ma-nual [Z]. 2015.
[5] 吴明琪,马潮. 嵌入式系统的USB虚拟串口设计[J]. 单片机与嵌入式系统应用,2005(4):62-63.
[6] 方旭. 基于STM32处理器的两种USB通信方法的实现[J]. 科技信息,2010(21):589-591.
[7] 杨超,张冬泉. 基于S曲线的步进电机加减速的控制[J]. 机电工程,2011,28(7):813-817.
[8] 仪慧玲,张仁杰. 基于STM32的步进电机S曲线加减速算法的优化[J]. 信息技术,2015(3):178-181.Raman spectrometer control system based on microcontroller
[责任编辑:任德香]
BAO Yi-cheng, CHEN Yi-bao, SUN Wen-bo, WANG He-ying
(Department of Physics, Tsinghua University, Beijing 100084, China)
The control system for a high resolution double Raman spectrometer was rebuilt based on a STM32F303 microcontroller. This control system included all the function needed for Raman spectrum measurement, guaranteeing high performance with programmable acceleration. The system utilized USB VCP protocol through full-speed USB port to communicate with computer, making it easy to develop software for host computer and extend the system for other experiments.
Raman spectrometer; control system; microcontroller; USB virtual COM port
2016-05-31;修改日期:2016-09-07
教育部基础学科拔尖学生培养试验计划资助(No.20160204);基金委基础科学人才培养资助(No.J1210018)
鲍亦澄(1995-),男,浙江杭州人,清华大学物理系2013级本科生.
指导教师:陈宜保(1973-),男,湖北兴山人,清华大学物理系高级工程师,硕士,主要从事实验物理教学工作.
TH744.1; TP332
A
1005-4642(2016)11-0007-03
“第9届全国高等学校物理实验教学研讨会”论文