(一)系统测量
图5-29是系统测量程序的LabVIEW前面板。运行系统程序后,按下启动按钮,系统测量程序开始执行。其具体工作过程是:测量每个点前,先通过每个轴进行坐标定位,定位完成后,调用数据采集程序来进行数据采集,把所得的数据经过均值处理后显示于前面板上,并通过点亮LED来显示系统测量的进度。
图5-30是系统测量程序的LabVIEW后面板。其编程思路是:首先通过条件判断结构来判断是否按下启动按钮,若按下启动按钮,则执行条件结构里面的层叠式顺序结构;层叠式顺序结构执行的开始是把前面板的显示控件进行回零复位,接着开始执行个测量点的定位控制与数据采集测量程序,上一个测量点完成测量和数据处理显示后,马上执行下一个测量点的测量和处理显示,直到完成第30个点的测量和数据处理显示,每个测量点的定位控制与数据采集处理显示所用的总时间可以通过系统参数设置的前面板来进行设置;若在系统测量的过程中按下停止按钮,系统测量程序会通过调用InstStop函数来停止所有伺服电机的运动并退出系统测量程序。
(二)手动操作
图5-31手动操作程序的LabVIEW前面板。通过该前面板,可以设置任意一个轴的运动参数,包括电机运动的倍率、方向、速度和位移。按下相应轴的电动按钮,可以分别控制电机的正向点动操作和反向点动操作。
图5-32是手动操作程序的LabVIEW后面板。其编程思路是:首先通过条件判断结构判断任意一个轴的电动按钮是否按下,若有点动按钮按下,则执行相应轴的点动操作程序,手动操作程序把前面板的给定参数读取进来赋给定位控制子程序,用于点动控制伺服电机的运动;若在手动操作程序运行的过程中按下停止按钮,手动操作程序会立即停止所有轴的运动并退出手动操作的程序。
(三)数据接口测量
数据接口测量功能不同于上文提到的系统测量功能,系统测量功能需要用户自主设置每个测量点的参数,参数较多,且测量点数有限。在很多应用下,要求测试平台可以直接读取来自系统外部的测量坐标点的文件,无需太多设置就可以自动完成给定测量坐标点的测量。基于此,设计了数据接口测量的功能。图5-33是数据接口测量程序的LabVIEW前面板。通过该前面板来完成相对很少的参数设置,包括测量点数目的设置、每个测量点所用时间的设置、需读取的测量坐标表格文件的设置、风温和风速数据的存储路径设置以及每个轴的运动倍率的设置等。运行系统程序,按下启动按钮,数据接口测量程序执行,把每个测量点的当前坐标和对应的风温与风速数据显示出来,并通过点亮LED来直观显示测量的进度。若在测量过程中按下停止按钮,数据接口测量程序会马上停止测量并退出该程序。
图5-34是数据接口测量程序的LabVIEW后面板。其编程思路是:首先通过条件判断结构判断启动按钮是否按下,若有按下,则执行条件判断结构里面的层叠式顺序结构,开始对前面板的所有显示控件进行回零复位,接着执行FOR循环结构里面的程序,FOR循环程序结构的循环次数通过前面板的控件来设置,共有5个FOR循环结构,它们在程序执行的时间上是同步的。最上面的4个FOR循环结构用于每个测量点的定位控制,最下面的一个FOR循环结构用于每个测量点的数据采集、处理和显示;最上面的4个FOR循环结构的编程原理是一样的,分别控制X、Y、Z、R四个轴;该四个FOR循环结构的内部程序的工作过程是(以X轴的伺服控制为例,其他轴类似):先把X轴的坐标(以机械原点为参考点)读进来,通过计算、相关判断等处理后得到控制X轴的位移、速度参数,把之赋给伺服电机定位控制子程序,同时把读取该次的X坐标通过FOR循环的移位寄存器保存下来以用于和读取的下一个点的X坐标相比较,把作差的结果取值就是下面一个测量点的增量位移值,同时把作差的结果与0进行比较,若大于0则控制X轴正向运动,否则控制X轴反向运动。
另外,把增量位移值的值与5相除,用于控制每个点测量时每个轴的运动时间不超过5S。最下面的一个FOR循环结构用于每点定位完成后的风温和风速数据的采集,测量每个点的数据采集所用的时间与上面对每个点的定位控制程序所用的时间是一样的。为了确保在测量每个点定位完成时才开始测量数据,在最下面的FOR循环结构里面加入了一个两层的层叠式顺序结构。在该层叠式顺序结构里面,层用于延时,延时时间设计成一半的每点测量所用时间。当延时完成后,接着执行第二层里面的顺序,启动数据采集程序。当所有的点都测量完毕后,分别把X、Y、Z、R坐标以及对应的风温和风速数据输入给每个一维数组,并把六个一维数合并成一个二维数组。所有的测量点的坐标及测量数据都保存在该二维数组里面,最后把二维数组输入给电子表格来把数据保存起来。保存数据的电子表格文件支持用户使用TXT文本格式和EXCEL表格格式打开来查看数据。
http://www.dgzhenghang.cn