Generazione di codice di volo per sistemi aerospaziali

Flight code generation automatically converts models into high-quality, well-documented code embedded in line replaceable units (LRUs), which has enabled aerospace companies to save 40% per line of code, achieve Six-Sigma flight software quality, and have an autopilot work on the first try.

With millions of lines of flight code generated from Embedded Coder in LRUs today, MathWorks continues to develop technologies that production organizations use for:

  • Software architecture and design
  • Flight code generation
  • Flight code verification, including software-in-the-loop and processor-in-the-loop tests
  • DO-178 certification

“Utilizziamo il nostro modello di progettazione del sistema in Simulink per ARP4754 per stabilire requisiti fissi e oggettivi. Risparmiamo tempo utilizzando il modello come base per il nostro modello di progettazione del software DO-178, da cui generiamo il codice di volo, e riutilizzando i test di convalida per la verifica del software.”

Ronald Blanrue, Airbus Helicopters

Architettura e progettazione software

Simulink e Stateflow sono adatti per lo sviluppo di progetti di sistemi aerospaziali, inclusi sistemi avionici, di propulsione, di navigazione e controllo (GN&C), radar e altri ancora. L’utilizzo di specifiche eseguibili al posto di diagrammi statici accelera la progettazione e consente di eseguire precocemente la verifica e la convalida. Con System Composer e Requirements Toolbox è possibile creare modelli di architetture e tracciarle in base ai requisiti.

alt text needed here

Generazione di codice SIMD dal modello Simulink.

Generazione e integrazione di codice di volo

Embedded Coder genera codice embedded da file MATLAB o modelli Simulink. C o C++ ANSI/ISO viene generato in modo predefinito per qualsiasi dispositivo. Inoltre, è possibile ottimizzare con facilità il codice per MCU e DSP specifici grazie alle API flessibili. È supportata anche l’integrazione di codice scritto a mano durante la simulazione o la generazione di codice. Utilizza GPU Coder per generare codice per GPU.

Verifica del codice di volo

Simulink Code Inspector agevola l’automatizzazione delle revisioni del codice sorgente per gli standard di sicurezza grazie all’esecuzione di analisi di equivalenza strutturale e alla generazione di report di tracciabilità che includono un modello e il relativo codice generato.

I test SIL (software-in-the-loop), PIL (processor-in-the-loop) e HIL (hardware-in-the-loop) sono la pietra miliare della verifica del codice di volo in quanto automatizzano l’esecuzione ed il confronto dei risultati con il comportamento del modello di riferimento. La creazione di un ambiente di test PIL è supportata con l’uso di Embedded Coder o con la connessione diretta alle schede del processore. È possibile creare, eseguire, revisionare e organizzare test e suite di test utilizzando Simulink Test. È possibile calcolare la copertura strutturale del codice generato tramite Simulink Coverage per misurare la completezza del test.

Certificazione DO-178B

DO-178 è lo standard di sicurezza principale per software aerospaziali. Il supporto di MathWorks per lo standard DO-178 è disponibile nel DO Qualification Kit. Fornisce un flusso di lavoro per la generazione di codice qualificabile utilizzando strumenti di qualificazione per la verifica di modelli e codice, tra cui Simulink Code Inspector.