当构建一个控制系统以前要求您先确定其工作方式,这似乎是一对矛盾,但它却代表着一种相当大的挑战。几年前--当该行业还不成熟时--您可能会先制造一个原型样机、然后试验、修改、再试验。今天,人们一般已经不再采用这种方式,这其中有以下3个主要原因。
首先,构建原型是一件既费时又费钱的事。以今天日益加快的开发速度以及对更短的进入市场时间的要求,制造商们很少能有使用这种费时技术的奢侈。
其次,也是同等重要的,今天的系统一般不是太大就是太小,以至于很难轻易就制造出一个原型。专用集成电路(ASIC)以及其他复杂元件一般并不是马上就能用于原型制造,因此构建的原型并不能精确地达到所预期的最终系统性能。
最后,构建原型只须制造出一件产品,因此,它并不能使人们对正式生产所面临的挑战有深入的了解。
同室操戈
但可替代的方案又是什么呢?今天,各公司日趋转向一对孪生技术--仿真与模拟。
尽管很多人交替使用仿真与模拟这两个术语,但它们之间仍有很大的区别。仿真完全利用软件来对一种产品或子系统进行建模www.cechina.cn,因此工程师们首先可
模拟与仿真之间存在几个关键的不同。根据Dennis Howe的“免费在线计算词典”的解释,一个系统只有在它以同样的方式运行时(尽管并非必须是在同样的速度上),它才能被称为是在仿真另一个系统。仿真用于代替软件及特定硬件来成为产品架构的一部分,它允许对产品或其子系统进行实时试验,其中包括控制软件的功能。它能“让时钟停下来”以使工程师们能查看那些在正常运行时不可能有足够的时间进行观察或测量的瞬时状态。
仿真器(仿真程序)可将产品的整个设计映射到FPGA(现场可编程门阵列)或其他定制可编程装置上。仿真设置在程序控制下可模拟系统的几个子部分,在生产测试过程中,分别模仿这些子系统,可通过严格限制每一测试部分的范围来减少整个测试过程的复杂性。此外,利用仿真器将信号与产品的“真实”部分挂钩,工程师们可观察这些信号对各种软硬件版本的实际反应,这种方法可预测产品运行实际控制应用时它将具有怎样的性能CONTROL ENGINEERING China版权所有,以及修改与修订将对性能产生怎样的影响等。
将仿真结果与其他基于软件的模拟进行组合可进一步提高产品设计。仿真对于大型控制系统尤其有用,因为制造商可以在产品生命周期的前期对其进行调试,这要优于为产品制造一个样机或全尺寸工作系统,从而可显著地缩短产品开发周期。芯片或设备制造商经常通过提供带有仿真或模拟功能的测试或开发工具来帮助用户进行技术集成,这对于开发小型系统来说尤其有用。
捷径
在试生产及起步制造阶段,即使有些部件还没来得及生产,通过仿真也能对整个产品进行测试。当这些部件制造出来后(假设它们能工作),便能以最少的工作量将其无缝地“安插”到产品中。在制造过程中从这些点上所获得的早期反馈,可帮助预测产品的现场表现,同时还能以更少的意外在现场进行更快的启动。
高级仿真系统允许数据从自由运行的系统(以正常速度运行的系统)上输入而无需中断系统的运行,从而能提高精度及结果的有效性。例如德州仪器公司基于扫描的PCIBus JTAG型仿真器,即能提供帮助减少由处理器速度的提高而造成的“可视性消失”问题,也就是说,仿真器无需对控制系统的印制电路板进行针床接入,也无需光学检查中所需的视线可见性,即能对控制系统进行测试。
此外,仿真还能使工程师们对系统的外围设备控制、数据总线以及其他驻留在板上设备中的部件有更深入的了解。而在这种情况下www.cechina.cn,想要跟踪实际应用如何在芯片内执行或者找到一个数据访问测试点却几乎是不可能的。但仿真器却能将数据传输至(或从中传出)一个托管开发平台及目标处理器上,下载代码,“即时”查看复杂的数据序列,同时还能不牺牲产品的全速运行。
尽管大多数厂商在开发周期的某些点上已经采用了模拟与仿真,但根据Verisity的“Testbench Acceleration(测试平台加速)”白皮书的说法,一个小组一般只能处理其中一项技术。在模拟与仿真中所关心的一个关键问题是测试及检验模型的来源。
例如,仿真小组可能采用专为某一步骤而创建的随机测试向量www.cechina.cn,但为了能提供可体现产品性能的最佳及最精确的仿真画面,他们也经常使用一些在“如果-即”这样的仿真中所收集并记录下来的刺激源控制工程网版权所有,或者使用一些由专用测试程序或由“真实”环