基于PSD的激光跟踪测量控制系统研究*
2015-03-02陆永华
刘 斌,陆永华 ,杨 超
(南京航空航天大学机电学院,江苏南京210016)
0 引 言
激光跟踪测量系统源于机器人计量学,它是计算机技术、电子技术、精密机械、控制技术相结合的产物[1],是一种新型的无导轨型坐标测量系统[2]。
激光跟踪测量系统按其跟踪头数量和工作原理可以分为三种:单站式球坐标法、双站式三角法和多站式距离交会法[3]。单站式球坐标法的典型应用是一站式激光跟踪仪[4],测量一个长度值和两个角度值,从而计算出点空间坐标值。目前,瑞士Leica 公司最近推出的LTD840 激光跟踪仪带有T-Probe 及T-Scan 功能,测量范围可达40 m,美国API 公司生产的3D/6D激光跟踪仪精度可达5 ppm[5-6]。双站式三角法的典型应用是经纬仪系统,利用完全相同的两台经纬仪通过对点的方式测量纯角度值,英国Surrey 大学采用两台空间相对位置经严格标定的激光跟踪仪作为测量基站,由空间角度关系计算了被测点三维坐标[7]。多站式距离交会法的典型应用是全站仪,采用多路激光以不同角度跟踪测量被测点到测站间的距离,计算空间点信息,日本国家计量研究院建立了四路激光跟踪干涉测量系统[8-9],2009年清华大学刘永东博士设计了三站激光跟踪坐标测量系统[10]。
本课题研究的激光跟踪测量系统结合单站式球坐标和双站式三角法的优势,设计一种基于三角法的一站式PSD 激光跟踪测量系统。通过利用三角法原理设计测量系统本体和测头部分,系统本体利用步进电机带动转镜使激光光斑移动,测头部分主要采集数据。本研究应用VC+ +6.0 软件在上位机开发基于对话框的可执行控制程序,下位机采用两个STM32 微处理器,其中一个处理采集来的数据并通过射频模块无线发送,另外一个微处理器则接收发送的数据并通过串口传给上位机。由上、下位机共同组成该激光跟踪测量系统的控制系统。
1 工作原理
三角法测量原理如图1 所示。
图1 三角法测量原理示意图
笔者研究的激光跟踪测量系统左、右转镜之间的距离为固定已知常量L,测量过程中步进电机带动转镜运动,测得左、右转镜的转角分别为α1,α2,β1,β2,经过左右转镜的激光束在测头上交会,该交会点即为靶标点P。通过解三角形可得:
或
式中:α1,α2—测得的水平方向角度值;β1,β2—测得的竖直方向角度值;L—固定的已知常量。
2 工作流程
基于三角法原理设计的激光跟踪测量系统结构如图2 所示。该测量系统结构包括系统本体和测头部分两个单元。系统本体上主要是步进电机带动转镜运动,以改变激光光斑在空间的坐标位置。测头部分装有位置敏感探测器(PSD)以采集激光光斑在PSD 上的位置信息,并内嵌了各种电子模块对采集的数据进行处理。笔者研究的激光跟踪控制系统也相应的分为两个部分,上位机采用工控机IPC、运动控制卡PCI-8134 实现对系统本体上步进电机的运动控制,下位机以嵌入式微处理器STM32 为主控制器,配合运放模块、A/D 转换模块、射频模块等电子设备处理PSD 传感器的数据并无线发射。
图2 测量控制系统
上位机控制系统主要由控制器、驱动单元、执行单元组成,控制系统流程如图3 所示。工控机通过PCI总线与运动控制卡PCI-8134 进行通信,通过调用运动控制卡的库函数来实现对步进电机的运动控制。
图3 上位机控制流程图
下位机控制系统主要由信息采集单元、数据处理单元和各电子模块组成。控制系统流程如图4 所示。
下位机分为信息的发送方和接收方,均以微处理器STM32 为主控制器。发送方位置敏感检测器PSD采集激光光斑在PSD 上的重心位置信息,并将采集的模拟信号传送给PSD 处理板SPB100 进行放大处理,经PSD 处理板输出的放大的模拟量不能直接传送给微处理器STM32 处理,必须经过模/数转换模块AD7606 将输出的模拟量转变成数字量在传给微处理器,虽然微处理器STM32 本身带有多个通道的A/D转换功能,但是受电压的限制,STM32 的参考电压是3.3 V,而PSD 处理板的输出模拟电压在正负10 V 的范围,所以PSD 处理板的输出模拟电压不能直接送到STM32 处理,同时,陀螺仪MPU6050 通过UART 不断的向微处理器发送采集的测头角度信息,最后经过微处理器处理的数据通过SPI 总线传给频率为2.4 GHz的射频模块NRF24L01 进行发送。接收方射频模块NRF24L01 接收发送端发送的数据,并通过SPI 总线将接收的数据传送给微处理器STM32,微处理器接收到射频模块传送过来的数据便立即通过UART 经UART转USB 模块传送给工控机IPC。
图4 下位机控制流程图
3 系统硬件设计
3.1 运动控制模块
运动控制单元主要是运动控制卡连接步进电机驱动器以驱动步进电机,该控制系统采用的是凌华PCI-8134 系列四轴步进和伺服运动控制卡,它具有32 位PCI 总线,即插即用,输出脉冲频率最高可达2.4 MHz,通过调用运动控制卡自带的动态链接库函数即可实现对步进电机精确可靠的运动控制功能。运动控制卡通过PCI 总线与工控机通信,并向外引出了接线端子,运动控制卡与电机驱动器单轴的连接示意图如图5 所示,其他轴的连接与此类似。
3.2 主控制器模块
控制系统采用的微处理器为STM32F103C8T6,ARM 32-bit Cortex-M3 CPU 主频高达72 MHz,片内提供了多个通信接口,包括2 个IIC 接口、3 个USART 接口、2 个SPI 接口、1 个CAN 接口和1 个USB 接口。该处理器最小系统的引脚定义如图6 所示。图6 中只给出了要用到的引脚描述。端口PA2、PA3 分别与陀螺仪MPU6050 的RX、TX 连接,用于读取陀螺仪绕三轴旋转的角度、角速度和角加速度。PA4、PA5、PA6、PA7是STM32 的SPI1 片内外设接口,分别与无线射频模块的SPI 口连接,用于将STM32 处理的数据通过无线方式发送。端口PA0、PA1、PA8、PA11、PA12、PB13、PB14 与模数转换模块AD7606 连接,PA0 用于选择转换范围,PA1 提供片选信号,PA8 提供开始转换信号,PA11 用于复位,PA12 提供是否正处于转换状态,PB13 提供时钟信号,PB14 用于数据传输。
图5 控制器连接示意图
图6 STM32 最小系统
3.3 陀螺仪模块
陀螺仪安装在激光跟踪测量系统本体和测头部分,其作用是读出本体和测头三轴的角度值,通过对比得出测头和系统本体的相对角度值,用于后续的误差补偿,以提高测量提供的精度。陀螺仪模块如图7所示。
图7 陀螺仪模块
陀螺仪与MCU 既可以采用串口通讯,也可以利用IIC 接口通讯,这里采用串口通讯方式。MPU6050 不断的向MCU 发送信息,其输出的每帧数据分为3 个数据包,分别为角度包、角速度包和角加速度包,3 个数据包通过包头提供的标识信息进行区分,若包头数据为0X51 则接收的数据为角度信息,若包头数据为0X52 则接收的数据为角速度信息,若包头数据为0X53 则接收的数据为角加速度信息。上位机设置波特率为115 200 bps,每隔10 ms 输出一帧数据,通过判断包头标识得到角度信息,对角度包进行解析得出系统本体和测头绕三轴旋转的角度。
3.4 无线通讯模块
本研究采用无线通讯模块NRF24L01 如图8 所示。其工作频段为2.4 GHz~2.5 GHz,内置数据链路层,SPI 口通讯方式,自动应答及自动重发功能,地址及CRC 检验功能。该模块共有两个,分别用于数据的发送和接收,其通讯接口是一样的,可通过软件设置工作模式。无线传输的数据为PSD 传感器采集的位置信息和陀螺仪角度信息,将其打包成一个数据帧,共27 个字节,采用自动应答和自动重发功能,选择通道0进行数据的发送和接收。
图8 NRF24L01 模块
发送数据时,系统将配置寄存器位PRIM_RX 置低,使NRF24L01 工作在发送模式,接收节点地址TX_ADDR 和有效数据TX_PLD 通过SPI 口写入TX_FIFO,设置CE 位为高,启动发射。发送完数据后,系统将通道0 设置为接收模式来接收应答信号,若在有效时间内接收到应答信号,则状态寄存器TX_DS 位置高并将数据从TX_FIFO 清除,若未接收到应答信号,则重新发送数据。当需要接收数据时,系统将配置寄存器位PRIM_RX 置高,使NRF24L01 工作在接收模式,配置EN_RXADDR 寄存器使能接收通道0,配置EN_AA寄存器使能自动应答功能,配置RX_PW_P0 寄存器选择有效数据宽度为8 位,设置CE 位为高,启动接收。接收到数据后,系统将数据存储在RX_FIFO 中,同时RX_DR 位置高,并产生接收中断,发送确认应答信号,MCU将数据以合适的速率通过SPI 口将数据读出。
3.5 PSD 模块
PSD 传感器及处理电路如图9 所示。
图9 PSD 传感器及处理电路
本研究采用方形二维SiTek 2L20 PSD,位置非线性最大±0.8%,测量精度可达1 μm,当有激光光斑照射到光敏面上时,PSD 会产生光电流,光电流经4 个电极引脚引出,经PSD 处理板处理。PSD 处理板采用SiTek SPC02,该电路包括了电流电压并放大电路、加减法运算、除法运算等功能,将光电流转化成只有X、Y独立的两路电压模拟信号输出。
4 系统软件设计
上位机软件是在VC+ +6.0 环境下编写的程序,主要由运动控制部分、与下位机通讯部分和数据处理显示部分3 部分组成,上位机图形用户界面如图10所示。
图10 上位机图形用户界面
运动控制部分采用PID 控制算法实现了对步进电机的控制功能,包括初始化设置,绝对运动控制和相对运动控制。初始化设置是开始测量前对测量参数进行选择,例如测针长度、测量时间间隔等;绝对运动控制通过输入电机位置对电机进行控制,实现了电机运动位置的粗调;相对运动控制通过设置参数和方向按钮对电机进行控制,实现了电机运动位置的微调,PSD 激光跟踪程序主要采用逐次逼近算法,分别让两束激光轮流交替向PSD 传感器坐标原点靠近,并不断重合在PSD 坐标原点处,实现自动跟踪功能。与下位机通讯部分实现了接收下位机传输的数据信息的功能,下位机通过串口转USB 接口模块与工控机IPC 连接,将采集的陀螺仪角度信息和激光光斑在PSD 上的位置信息传输给该程序。数据处理显示部分实现了数据运算处理并显示的功能,首先该程序测得的激光光斑转角信息代入坐标计算公式,对陀螺仪角度信息解码,将接收的PSD 处理器电压值转换成位置量,并将这些数据信息在图形用户界面上输出显示。
下位机软件部分用Keil 编写,将程序烧入微控制器实现控制功能。下位机程序主要由陀螺仪MPU6050模块、模/数转换AD7606 模块、无线射频NRF24L01 模块、串口通信模块等子程序组成,下位机控制系统框图如图11 所示。
图11 下位机控制系统框图
MPU6050 模块子程序实现串口接收数据包,判别角度数据包并解码。AD7606 模块子程序实现MCU通过GPIO 口对AD 转换进行控制,通过SPI 口接收转换的数据。NRF24L01 模块子程序实现通过SPI 通信对射频模块的控制和数据的发送接收。串口通信子程序实现USART 协议收发数据。各个模块子程序通过嵌入式实时操作系统UCOS 进行任务的调度和数据通信,使系统更可靠、稳定。
5 实验及结果分析
被测对象选用某涡轮转子叶片,被测对象如图12 所示。
图12 被测对象
测量装置如图13 所示。
图13 测量装置
笔者在测量时将其10 ×10 等分,测得部分数据如表1 所示。
以上数据显示了该测量系统和三坐标测量机的实验结果。数据显示,该测量系统的实验精度大约在亚毫米级,基本满足大尺寸坐标测量的要求。影响测量系统精度的主要因素包括激光初始对零位置、传感器精度、信道存在干扰等因素。在改善测量环境的基础上,系统精度有较大的提升空间。
表1 实验数据
6 结束语
通过对激光跟踪仪、双站式经纬仪及多站式全站仪等坐标测量系统进行研究,本研究结合单站式球坐标和双站式三角法的优势,设计了PSD 激光跟踪控制系统,光路的瞬间遮挡不会对测量产生影响,避免了采用昂贵的激光干涉系统,测量前只需光斑对零,避免了经纬仪系统相互定位;开发了基于对话框的图形用户界面,并加入了嵌入式控制系统,利用嵌入式实时操作系统μC/OS 进行任务调度和同步通信,在实现激光跟踪测量功能的同时,使控制系统的稳定性和可靠性得到了提高。
通过大量的测量实验证明,该控制系统可成功应用于激光跟踪测量。
[1]谢 黧.激光跟踪测量系统研究[J]. 机械设计与制造,2010(6):263-265.
[2]孙玉玺,陆永华. 双光斑重叠式PSD 空间点位测量系统研究[J].机电工程,2014,31(2):145-149.
[3]候宝芬.精密激光跟踪测量技术的研究[D]. 西安:中国科学院西安光学精密机械研究所,2012.
[4]张滋黎,邾继贵,耿 娜,等.双经纬仪三维坐标测量系统设计[J].传感技术学报,2010,21(5):660-664.
[5]张滋黎,邾继贵,耿 娜,等.一种新型自动激光经纬仪引导跟踪方法[J].光电工程,2010,37(4):1-7.
[6]张亚娟,裘祖荣,李杏华,等. 激光跟踪系统“鸟巢”坐标的球面标定法[J].天津大学学报,2014,37(3):235-261.
[7]袁正茂,韩 锋,李鸣阳,等.基于激光跟踪仪的大尺寸外形辅助测量装置研究[J]. 航空精密制造技术,2014,50(1):9-11.
[8]周培松,卢荣胜,周维虎,等.四象限探测器用于激光跟踪仪目标脱靶量测量[J].光电技术应用,2014,29(1):75-79.
[9]ZHANG Z L,ZHU J G,ZHOU H,et al. The Guidance Methodology of a New Automatic Guided Laser Theodolite System[C]. Proceedings of SPIE-The International Society for Optical Engineering,2008:5-8.
[10]SHIRINZADEH B,TEOH P L,TIAN Y,et al.Laser interferometry-based guidance methodology for high precision positioning of mechanisms and robots[J].Robotics and computer integrated manufacturing,2010,26(1):74-82.