硬件在环

硬件在环仿真 (Hardware-in-the-loop simulation, HiL或HIL) ，是一种用于实时嵌入式系统的开发和测试技术。硬件在环仿真提供动态系统模型，可以模拟真实的系统环境，加入相關動態系统的數學表示法，并通过嵌入式系统的输入输出将其与仿真系统平台相连。動態系统的數學表示法稱為「受控設備仿真」，嵌入式系统控制模擬受控設備，以測試系統。

硬體在環的原理

硬件在環（HIL）仿真必須包括感測器以及致動器的電子仿真，這些電子仿真是仿真的受控設備以及待測嵌入式系统的介面。電子仿真感測器的數值是由仿真的受控設備所控制，再由待測嵌入式系统讀取。待測嵌入式系统會實現控制演算法，改變讓致動器控制信號。控制信號的變化就會改變模擬受控設備的控制輸入以及內部狀態。

例如，防鎖死煞車系統（ABS）開發的HIL仿真平台可能會有以下子系統的仿真受控設備T. Hwang, J. Rohl, K. Park, J. Hwang, K. H. Lee, K. Lee, S.-J. Lee, and Y.-J. Kim, "Development of HIL Systems for active Brake Control
Systems", SICE-ICASE International Joint Conference, 2006.：
 车辆动力学，例如懸吊系統、輪子、輪胎、俯仰（pitch）、偏擺（yaw）及翻滾（Roll）
 剎車系統液壓元件的動態
 道路特性

用途
有些嵌入式系統，最快速測試的方式是將系統連接到真實的受控設備。不過有些情形用HIL仿真會更有效率。開發及測試效率的評定，一般會包括成本、需要時間、安全以及可行性等因素。

某一方案的成本需考慮其設備以及投入心力的總成本。開發以及測試需要的時間會影響產品的上市時間。在費用評估時也會考慮安全因素以及開發時間。以下的一些情形會特別需要使用硬件在环仿真。
強化測試品質
導入HIL可以增加測試的範圍，因此可以強化測試的品質。 
理想上，嵌入式系統的測試要配合真實的受控體進行，不過真實的受控體會有一些限制，這些限制也會影響測試的範圍。例如，測試真實的引擎控制器可能會讓測試工程師處在以下的危險情境中：
 在特定控制器參數（例如引擎參數）的範圍邊界上（或是邊界以外）測試。
 在失效的條件下測試及確認系統。
在上述的測試情境下，HIL可以有效的控制系統，並且提供安全的測試環境，讓測試工程師及應用工程師可以專注在控制器的性能上。
開發時程緊湊
車輛、航太或是國防武器的開發時程緊湊，無法在有原型之後才開始測試。事實上，大部份新的開發時程都會假設在產品開發時，就已經同步進行HIL仿真。例如内燃机完成原型，可以配合控制系統測試時，其中95%的測試可能已經先用HIL仿真測試過。

航太或國防產業常常會規劃相當緊的時程。飛機以及車輛的開發一般會用電腦以及HIL同時進行設計、測試以及整合。

高負擔率的受控設備

有些應用的實際受控設備比高保真度的實時仿真器還貴，使用實際受控設備的負擔率較高。因此配合HIL仿真器開發及測試會比用實際受控設備要經濟。例如對於喷气发动机製造商而言，HIL仿真是发动机開發的基礎。像開發飛機喷气发动机的全权数字发动机控制（FADEC）就是高負擔率受控設備的一個例子。喷气发动机造價高達上百萬美元，相反的，進行喷气发动机製造商完整測試所需要的HIL仿真器，價格可能只需要喷气发动机的十分之一。

提早進行人因工程的開發

 不同領域的應用 

 車輛系統 
在汽車應用當中「硬件在環仿真提供了一台供系統確認級驗證用的虛擬車輛。」S.Raman, N. Sivashankar, W. Milam, W. Stuart, and S. Nabi, "Design and Implementation of HIL Simulators for Powertrain Control System Software Development", Proceedings of the American Control Conference,1999.。由於在針對发动机控制器的性能及診斷機能評估，若都要在汽車內進行測試，會有耗時、昂貴而且無法重現的問題。HIL仿真可以讓開發者評估新的硬體及軟體對策，滿足品質相的要求以及上市時程（time-to-market）的限制。在典型的HIL測試中，會用特製的實時處理器處理仿真引擎動態的數學模型，而且I/O單元可以連接車輛的传感器及执行器（多半是高度非線性的元件）。最後將待測的电子控制器（ECU）連接到此系統，再用一些仿真器產生的車輛行為來確認系統的行為。

在文獻中有提過幾種專門針對HIL的應用，也用依特殊需求訂製的簡化版HIL仿真器A. Cebi, L. Guvenc, M. Demirci, C. Karadeniz, K. Kanar, and E. Guraslan, "A low cost, portable engine electronic control unit hardware-in-the-loop test system", Proceedings of the IEEE International Symposium on Industrial Electronics, 2005.J. Du, Y. Wang, C. Yang, and H. Wang, "Hardware-in-the-loop simulation approach to testing controller of sequential turbocharging system", Proceedings of the IEEE International Conference on Automation and Logistics, 2007.。例如若測試新發行的电子控制器軟體，可能會在開迴路下進行測試，因此不需要太多的引擎動態模型。此時的策略就限制在分析有控制輸入時的电子控制器輸出。此時微HIL系統（MHIL）是較簡單而且較經濟的對策A. Palladino, G. Fiengo, F. Giovagnini, and D. Lanzo, "A Micro Hardware-In-the-Loop Test System", IEEE European Control Conference, 2009.。因為省略了複雜的模型處理，全階的HIL系統可以簡化為包括信號產生器，I/O版，以及包括致動器信號的面板的可攜型HIL系統。

相關條目
模型在環
參考資料

Category:嵌入式系统
Category:软件测试