基于 C#的激光测距上位机程序设计
基于 C#的激光测距上位机程序设计
作者:白 鹏,周 崟,张 锐,王 浩
与其他的测量手段相比较,激光具有能量集中,不易受电磁波干扰的优点,广泛的应用于遥感遥测,土木建设,市政施工,军事国防等领域。并且激光测距仪相较于其他测距仪器体积更加小巧,重量更加轻便,是一种高精度的测距手段。本文阐述了一种激光测距的原理,并且利用 C#语言在 Visual Studio平台上编写了测距的上位机软件。经过实际的效果验证,上位机软件可准确地反应激光传感器的测量数值,波形显示模块可将测距数值实时显示,给工程测距人员较为直观的图形展示。
1 激光测距原理
目前,小型的激光测距传感器普遍采用相位法测量距离。相位式激光测距也称连续波激光测距。测量时首先由激光传感器的发射系统发出连续的光波,经调制后发射至被测目标,由被测目标返射回的回波激光信号经一定时间的延迟后进入接收系统,激光信号传导至光电探测器,再由解调器对延迟信号进行解调,并将解调之后的信号送到相位差比较模块中进行计算,最终得到相位差值。通常,只有在波长小于测尺长的情况下,有唯一解。所以在实际应用中一般选择几个测尺的长度作为参照。而且利用相位法测量时,为得到较高的测量精度,须选用高频激光信号作为测量源。
2 激光测距系统设计
2. 1 激光测距硬件系统介绍
本文使用 Hyperson 公司的 HPS - 167 系列的激光测距传感器,该传感器具有测距精度高、反应迅速等特点,在测距工程上被广泛的使用。在实际的使用中,常常需要把激光传感器挂载到载具上( 例如汽车的倒车雷达) ,需要较长的信号传输线路,但传感器的 RS232 接口的传输电压通常较低,在长距离传输时信号衰减比较明显,所以往往将传感器的、RS232 接口转接为传输电压较高的 RS485 传输,以保证信号在传输过程中的稳定。
2. 2 激光测距上位机程序设计
本程序主要有四个模块,分别是串口收发设置模块、距离数字显示模块、声音提示模块、测距波形显示模块。下面对这四个模块具体介绍。串口接收模块的功能是对上位机接口的参数的初始化,规定了传输的波特率、串口号等等。程序使用了 C#中的 GetPortNames 函数,自动获取插在工控机上设备的串口号。距离数字显示模块是上位机界面的核心部分,程序将串口传入的数据保存至 voDis 对象的 ovDis-tance 属性中。在实际的项目中往往不仅需要直观的数字显示,还需要声音的提示报警。为此,本程序设计了声音提示模块。该模块的最小接近距离可以人工设定,当被测距离小于最小设定距离时,就会发出“叮叮”的报警声提示用户。软件中还编写了波形显示模块,方便工程人员查看测距趋势。测距模块采用 Visual Studio 的Chart 控件,利用数据队列与定时器配合,不断地向Chart 控件中添加数据,实现波形按时间流动的效果。
3 小结
基于 C#编写的激光测距上位机程序可实现距离的快速捕获与显示,界面友好,操作性强,能实现基本的数据采集与存储; 对简单的工程测量与实验室的实验过程数据采集方面有一定的参考和借鉴价值。
本文章转自爱学术(aixueshu.com),如有侵权,请联系删除