Software-in-the-loop
Testovací rámec vytvořený pro MIL lze pak znovu použít pro testování proti softwarové implementaci modelu. Tato implementace je z modelu v Simulinku získána pomocí nástrojů pro automatické generování kódu a spuštěna v hostujícím vývojovém prostředí. Tato kosimulace se nazývá software-in-the-loop (SIL) a slouží k prověření, zda výsledný kód pracuje ve shodě s navrženým modelem. Protože je pro MIL i SIL použit stejný testovací rámec, je snazší výstupy testů porovnat a dále jakékoli nalezené chyby replikovat.
Processor-in-the-loop
Nástroje jsou však nyní schopné dojít ještě dál pomocí tzv. processor-in-the-loop (PIL) kosimulace. Zde je testován software, který byl zkompilován, uložen a spuštěn na cílovém embedded procesoru (target). Tato technika využívá host-to-target komunikaci poskytovanou integrovaným vývojovým prostředím, které vývojáři používají ke kompilaci a ukládání kódu na cílový procesor. Testy a simulace spuštěné na vývojovém PC synchronně komunikují s kódem běžícím na embedded procesoru. Díky použití shodného testovacího rámce je opět snadné porovnat výsledky PIL s původními výsledky MIL simulace, potvrdit správnost funkce navrženého embedded softwaru a prokázat, že při kompilaci nedošlo ke změně jeho funkčnosti.
Hardware-in-the-loop
V automobilovém průmyslu je běžné, že jsou algoritmy pro řídicí a diagnostickou elektroniku vyvíjeny současně s vývojem fyzických komponent. Softwarová realizace těchto algoritmů je dlouhotrvající proces a musí být započata v časných etapách vývojového cyklu vozidla. Po výsledném sloučení fyzických a softwarových komponent na výrobní lince musí vše fungovat tak jak má. Aby bylo možné prověřit softwarové algoritmy dříve, než jsou dostupné fyzické komponenty, využívá se tzv. hardware-in-the-loop (HIL) simulace. HIL simulace se obvykle používá pro testování hotových elektronických řídicích jednotek (ECU) či prototypových řídicích algoritmů. V HIL simulátoru jsou umístěny matematické modely fyzických komponent systému. Dále jsou k němu připojeny reálné řídicí jednotky. Modely jsou spouštěny v reálném čase a simulují různé možnosti chování systému. Takto se prověřují veškeré možné softwarové cesty uvnitř řídicích algoritmů.
Použití HIL simulace je vhodné i z hlediska bezpečnosti. Například když selže systém řízení brzdového systému při prvním testování ve vozidle, může dojít k destrukci nákladného prototypu nebo ke zranění. Pomocí HIL simulace lze riziko takovéto nehody významně snížit.
Matematické modely fyzických komponent vytvořené v Simulinku lze využít nejprve při návrhu algoritmů pro embedded software a následně je pomocí nástroje Real-Time Workshop přeložit do formy spustitelné v reálném čase na HIL simulátorech (obr. 4). Lze například využít špičkové HIL simulátory společnosti dSPACE.