本发明属于仿真测试,具体涉及一种基于神经网络的硬件在环仿真测试系统及方法。
背景技术:
1、硬件在环(hardware in loop,hil)仿真测试技术是一种利用软件来模拟或部分模拟被控对象,以测试真实控制器工作状况的测试技术。它在当前的工程实践中广泛应用,为控制系统的开发和验证提供了有效的方法。一个hil系统主要包括了控制器,硬件接口和仿真模型三个主要部分。
2、在当前常见的硬件在环仿真技术中,通常用matlab simulink来搭建仿真模型。用户想要搭建一个仿真模型,首先需要根据系统的物理特性,将模型分解成多个基础的子系统。这些子系统可以是机械、电气、液压或控制系统等。为了描述各个子系统的行为,用户可以查阅相关资料,了解与系统状态相关的模型算法,并得到描述系统状态的数学方程,将系统分解成数学方程的形式有助于理解系统动态特性和相互作用。接下来,用户可以利用matlab simulink工具箱中的各种模块,如加法、乘法、积分、传递函数等,来实现仿真模型。根据系统方程进行配置和连接各个模块,以构建系统的数学模型。在搭建好仿真模型后,用户还可以根据实际实验数据对系统参数进行调整,帮助用户更好地匹配实际系统的特性,并确保仿真模型的准确性和可靠性。
3、最后,用户可以使用matlab simulink提供的仿真工具来运行和验证搭建的模型。通过对模型进行仿真测试和分析,用户可以评估系统的性能、响应和稳定性。基于仿真结果,用户可以进一步改进和优化模型,以满足系统设计和验证的需求。
4、在上述的hil系统开发过程中,matlab simulink提供的工具库确实能够使仿真模型搭建更加直观,但将真实物理模型转换为数学方程组的过程具有一定挑战性。这需要用户深入理解模型的工作原理或借助领域专家的知识和经验,找到相应的模型公式,如果用户不熟悉该领域知识,则需要先学习部分领域知识才能进行建模。因此,以数学方程的方式呈现模型虽然能够使系统更直观,但这也会导致开发过程复杂化、流程延长等问题。
技术实现思路
1、针对现有技术中的上述不足,本发明提供的基于神经网络的硬件在环仿真测试系统及方法解决了现有的硬件在环仿真测试过程中,通过构建控制对象的数学模型来实现仿真时存在的仿真过程复杂,流程延长的问题。
2、为了达到上述发明目的,本发明采用的技术方案为:一种基于神经网络的硬件在环仿真测试系统,包括:
3、仿真模型搭建模块:用于根据控制对象特点搭建对应的神经网络仿真模型;
4、数据通信模块:用于作为所述神经网络仿真模型与控制器之间的数据通信媒介;
5、控制器:用于通过数据通信模块控制所述神经网络仿真模型,进而使神经网络仿真模型对控制器信号进行实时处理并响应,实现硬件在环仿真测试。
6、进一步地,所述仿真模型搭建模块包括控制对象分析单元、神经网络结构确定单元、数据集构建单元以及神经网络训练单元;
7、所述控制对象分析单元用于分析控制对象的数据拟合特点;
8、所述神经网络结构确定单元用于根据控制对象的数据拟合特点,确定神经网络结构;
9、所述数据集构建单元用于构建与控制对象相关的数据集;
10、所述神经网络训练单元用于根据构建的数据集训练神经网络,获得神经网络仿真模型。
11、进一步地,所述仿真模型搭建模块还包括神经网络验证单元;
12、所述神经网络验证单元用于对神经网络仿真模型的数据拟合效果进行验证及网络参数修改,获得通过验证的神经网络仿真模型。
13、一种硬件在环仿真测试方法,包括以下步骤:
14、s1、确定控制对象,并构建与其相关的数据集;
15、s2、选择神经网络,根据控制对象的复杂程度调整神经网络的具体结构,并配置其网络参数;
16、s3、利用数据集对神经网络进行训练,获得训练好的神经网络仿真模型;
17、s4、通过控制器对训练好的神经网络仿真模型进行控制,使神经网络仿真模型对控制器信号进行处理及响应,实现硬件在环仿真测试。
18、进一步地,所述步骤s1中,所述控制对象的数据集中数据为与控制对象相关的输入序列及其对应的输出序列。
19、进一步地,所述步骤s2中,在确定神经网络的具体结构时,所述控制对象的复杂程度与神经网络中隐藏层和神经元的数量成正比。
20、进一步地,所述步骤s2中,配置神经网络的参数包括神经网络各层权重和层间偏置;
21、所述权重和偏置通过对神经网络的训练确定并优化。
22、进一步地,所述步骤s3具体为:
23、s31、随机初始化权重和偏置;
24、s32、通过时间步将数据集中的输入序列逐个输入至神经网络中,并计算当前时间步的隐藏状态和输出;
25、s33、基于当前时间步的隐藏状态和输出,计算神经网络的输出和目标输出之间的误差;
26、s34、基于误差,利用反向传播算法计算损失函数对于神经网络参数的梯度,并使用梯度下降算法更神经网络的参数,直到达到训练步数,得到完成训练的神经网络仿真模型。
27、进一步地,所述步骤s3中,当完成训练的神经网络仿真模型对控制对象的模拟准确率低于预设阈值时,调整神经网络仿真模型的网络结构,并再次进行训练,进而获得训练好的神经网络仿真模型;
28、其中,调整神经网络仿真模型的网络结构包括调整网络层数和神经元数量。
29、进一步地,所述步骤s4中,当控制对象改变时,通过调整神经网络的训练数据集或优化算法,形成对应的神经网络仿真模型,进而实现硬件在环仿真测试。
30、本发明的有益效果为:
31、(1)降低仿真模型的搭建难度。在传统的仿真模型搭建过程中,需要通过实验,观察数据特性,或者查阅相关资料,得到描述系统状态的方程;而本发明中利用神经网络的方法,只需要根据模型数据集训练网络,即可搭建出仿真模型。
32、(2)增加仿真模型的适用范围。在传统的硬件在环测试系统中,如果要更换新的控制对象,则需要重新搭建仿真数学模型;而在本发明中,只需要更换数据集,重新训练神经网络,即可完成模型的替换。
33、(3)实现更加精准的预测效果。传统的方法搭建的数学模型,计算结果和实际实验结果可能有一定误差,这是不可避免的,因为理想模型无法考虑众多复杂的影响因素;而本发明通过构建神经网络可以察觉到一些数学模型无法注意的数据特点,以提高预测数据的真实性和准确性。
1.一种基于神经网络的硬件在环仿真测试系统,其特征在于,包括:
2.根据权利要求1所述的基于神经网络的硬件在环仿真测试系统,其特征在于,所述仿真模型搭建模块包括控制对象分析单元、神经网络结构确定单元、数据集构建单元以及神经网络训练单元;
3.根据权利要求2所述的基于神经网络的硬件在环仿真测试系统,其特征在于,所述仿真模型搭建模块还包括神经网络验证单元;
4.一种基于权利要求1~3任一项权利要求所述的基于神经网络的硬件在环仿真测试系统的硬件在环仿真测试方法,其特征在于,包括以下步骤:
5.根据权利要求4所述的硬件在环仿真测试方法,其特征在于,所述步骤s1中,所述控制对象的数据集中数据为与控制对象相关的输入序列及其对应的输出序列。
6.根据权利要求4所述的硬件在环仿真测试方法,其特征在于,所述步骤s2中,在确定神经网络的具体结构时,所述控制对象的复杂程度与神经网络中隐藏层和神经元的数量成正比。
7.根据权利要求4所述的硬件在环仿真测试方法,其特征在于,所述步骤s2中,配置神经网络的参数包括神经网络各层权重和层间偏置;
8.根据权利要求7所述的硬件在环仿真测试方法,其特征在于,所述步骤s3具体为:
9.根据权利要求8所述的硬件在环仿真测试方法,其特征在于,所述步骤s3中,当完成训练的神经网络仿真模型对控制对象的模拟准确率低于预设阈值时,调整神经网络仿真模型的网络结构,并再次进行训练,进而获得训练好的神经网络仿真模型;
10.根据权利要求4所述的硬件在环仿真测试方法,其特征在于,所述步骤s4中,当控制对象改变时,通过调整神经网络的训练数据集或优化算法,形成对应的神经网络仿真模型,进而实现硬件在环仿真测试。