总的来说所谓硬件在环(HIL,Hardware In the Loop),是一种测试方**。这种方法主要测试对象为控制器,这个控制器可以是任何控制器,比较典型的就是汽车上各种控制器,变速箱控制器(TCU),发动机控制器(ECU)等等。 主要解决的问题就是在整个产品开发周期中尽可能快的验证控制器的性能、稳定性以及可靠性。下面,我以一个电机控制器的开发过程为例,大致讲一下硬件在环在整个产品开法过程中的作用。我们开发一款电机控制器,其最终目的就是实现对电机转速或扭矩的精确控制,如下图:

从原理图中,我们可以看出,这个控制器的开发实际是分两部分的,一部分是软件,一部分是硬件。这两部通常是由不同的人或团队进行开发。当电机的控制算法,也就是软件部分完成初版后,电机控制器及电机硬件还未到位,我们无法将软件下载到电机控制器中,再连接电机进行测试,这时我们如何验证控制算法的逻辑呢?如果等待控制器及电机硬件到位后测试,发现问题后再整改,岂不是大大影响了开发效率,于是就有了软件在环(SIL)的测试方法,如下图:

这种测试方法是软件层面的,需要建立相关的模型,形成一个软件层面的信号流闭环,从而验证软件的基本的逻辑,降低后期整个系统的风险。这也是软件在环名字的由来。 OK,软件在环测试通过了,电机控制器也到位了,但是电机由于是其他团队研发生产,还是没到位,这时,想要继续测试,怎么办呢?这时候,硬件在环(HIL)就派上用场了,如下图:

其中,电子负载模拟器和各种模拟信号的板卡,都是很标准的产品,就像你出去购买一瓶可乐一样,很容易买到。我们从上述原理图中可以看到,这种测试方法的目的就是对控制器进行物理层的逻辑测试,以验证当算法真实下载到控制器后,仍能按我们设计的软件逻辑达到预期效果。这种测试方法,使用电子负载及各种信号板卡模拟真实的电机,响应控制器的输入输出,让控制器以为接了一个真实的电机。所以这种测试方法也叫作半实物仿真。通过硬件在环仿真测试后,当电机最终到位,组成系统后进行测试时,能达到我们最初设计目标---对电机转速或扭矩的精确控制的概率会大大上升,从整个产品开发流程来看,提高了产品开发的效率和质量,软件在环(SIL)和硬件在环(HIL)也是产品V字型开发流程的两个重要环节。 从上述硬件在环的基本原理,我们可以看出,硬件在环的核心是模型建立。模型建立越准确,最终硬件在环结果就更能反映最终控制器组成系统后的真实情况。对于一个简单系统,这个模型的建立相对容易,最终结果会相对准确,但是简单的系统,使用硬件在环测试方法就显得性价比不高。所以硬件在环的测试方法更多应用在复杂系统,比如汽车,飞机,宇宙飞船之类的系统。但是复杂系统建立模型是一件很难的事,需要对系统足够的熟悉,才可能建立出相对准确的模型,即使建立出了模型,最终模型准确性的验证也很困难。所以模型建立与验证是硬件在环测试方法的关键技术难点。
|