3、 控制软件设计
控制软件是整个控制系统的核心部分。其是在LabWindows/CVI平台上结合NI-DAQ及NI-4551和NI-4472卡开发的。LabWindows/CVI提供了控制软件开发所需的几个很关键的库——用于驱动数据采集卡完成数据输入输出的DAQ库和进行信号处理的高级分析库,且编程简单快捷,因此采用LabWindows/CVI作为本控制系统的软件开发平台给整个控制软件的实现过程带来很大的方便。
控制软件主要由参数数据的输入和确认,随机振动试验的运行控制和试验信息及结果的显示、存储和打印输出等部分组成。试验运行控制部分包括系统自检、系统传递函数估计、闭环控制和开环试验部分。
本控制软件的关键是闭环控制模块的设计。闭环控制要考虑控制的实时性,驱动信号发送的连续性、同步性和响应信号采集的同步性。同步性由于采集卡本身特性基本能够满足,连续性可以通过双缓冲发送技术得到解决,对于闭环控制的实时性问题,解决办法是采用多线程技术,为了确保驱动信号的连续发送,则为其开辟一个线程,并设为主线程,配合双缓冲技术可以达到连续发送;为响应信号采集和处理及结果实时显示开辟两个线程。真随机试验闭环控制流程见图3。
从用户角度考虑,友好的人机界面是最重要的。控制软件需要显示的数据有试验信息、参考谱、控制谱、驱动谱、互谱相位及系统传递函数矩阵等。由于其中包括文本和图形显示方式,所以为了便于用户查看,采用多文档界面(MDI)。主界面如图4所示,其他参数设置界面及自检界面等采用对话框形式,由于参数设置界面太多,只给出参考谱参数设置界面(见图5)和公共参数设置界面(见图6)。