Gestione delle modalità
Ogni sistema ha diverse modalità operative. Ad esempio, un telefono cellulare ha la modalità gioco, la modalità risparmio energetico, ecc. In ciascuna di queste modalità, i sottoblocchi del telefono cellulare (Processore, GPU, Schermo, ecc.) hanno a loro volta modalità operative proprie.
I modelist vengono utilizzati quando una determinata proprietà non è un singolo valore, ma dipende dalla modalità operativa di un certo prodotto, apparecchiatura o unità. Il consumo di potenza ne è un buon esempio, poiché spesso dipende dalla modalità operativa.
I modelist sono essenzialmente schemi per array (nel nostro caso Matrix Valis) che possono essere usati per sfruttare la potenza dei Valitype e le funzionalità di propagazione automatica dei calcoli di Requirements & Systems Portal, collegando più modelist (schemi) variabili lungo un albero di blocchi.
Ad esempio, il consumo energetico complessivo del sistema dipende dalla modalità in cui si trova il sistema. Nella modalità “ON” tutti i blocchi e sottoblocchi del sistema saranno accesi; in “STANDBY” alcuni blocchi del sistema saranno in funzione mentre altri potrebbero non esserlo. In “OFF” tutti i blocchi saranno spenti.
Il consumo energetico totale di un Quadcoper dipenderà dalla modalità in cui il sistema sta operando [OFF, STANDBY, TAKEOFF, CRUISE, LANDING: la modalità padre] e, all’interno di ciascuna modalità, da come si comportano i diversi sottoblocchi (modalità del sottosistema).
Comprendiamo meglio questo concetto con un esempio.
Parent mode: nella Figura Valicopter Modelists, per il Valicopter, “Passengers” (numero di passeggeri) e la “Flight mode” sono la modalità padre che determina il consumo energetico. Pertanto, facciamo clic sul blocco (1), andiamo alla scheda “Modelists” e aggiungiamo un Modelist che fungerà da schema per i nostri Valis dipendenti dalla modalità.
Analogamente, nella Figura Propulsion Modelists per il sottosistema Propulsion (1), ci sono quattro modalità padre (2): OFF, MANOEUVER, CRUISE, STANDBY (3).
Subsystem mode: le modalità del sottosistema sono le modalità assegnate ai sottoblocchi del blocco principale. Prendiamo l’esempio di Propulsion.
Le modalità padre definite sopra per Propulsion sono OFF, MANOEUVER, CRUISE e STANDBY.
Nella Figura Sub-Block Modelists, le modalità del sottosistema (2) del suo sottoblocco “Back_Left” (1) sono OFF, ON, POWER e HOLD (3).
Assigning values to the modes of the sub-blocks
Una volta impostate le modalità per i singoli blocchi, possiamo quindi creare (1) una matrice (2) di Valitype “PowerConsumption” dipendente dalla modalità, come specificato nel campo “Mode Reference” (3), come nella Figura Creating a Mode Dependent Matrix.
oppure convertire un Vali standard in un Vali dipendente dalla modalità (Figura Converting a Vali into Modelist Dependency) facendo clic su “Mode dependent” (1) nel pannello “info” del Vali e selezionando il Modelist applicabile (2).
Qui possiamo specificare il valore della potenza consumata in quella particolare modalità.
Nella Figura Mode-Dependent Vali, possiamo vedere le formule di consumo energetico definite e i valori calcolati (2) del motore posteriore sinistro (1) in ciascuna delle modalità specificate in precedenza.
Ora che abbiamo definito le modalità e i valori di consumo energetico dei sottoblocchi, possiamo definire le modalità del sistema di livello superiore, ad esempio le Flight Modes [OFF, STANDBY, TAKEOFF, CRUISE, LANDING], e quindi determinare il consumo energetico complessivo del sistema. Questo si ottiene collegando le modalità dei sottoblocchi alle modalità di livello superiore del Valicopter.
Linking Modes
Il video Linking Modelists mostra le modalità del sistema di livello superiore e le corrispondenti modalità collegate dei sottoblocchi nella tabella “Linked Modes”.
Per calcolare il consumo energetico complessivo del sistema, come nella Figura Mode Dependent Vali-Type, possiamo creare un blocco “Valicopter_5000” di livello superiore “Power Consumption” matrix (1). Requirements & Systems Portal calcolerà automaticamente il consumo energetico complessivo per tutte le modalità definite con la funzione integrata “soc()” (Sum of Children) formula (2), che somma tutti i consumi energetici dei sottoblocchi nei rispettivi collegamenti del modelist.
Linking from the top level to lower levels
In Requirements & Systems Portal, colleghiamo sempre a partire da un blocco di livello superiore. In questo caso, abbiamo collegato il Valicopter a un blocco di basso livello, ad esempio cabin, seats, power, battery, ecc. Il collegamento funziona in una sola direzione, dai sottosistemi ai blocchi di livello superiore.
Nella Figura block Based System Architecture, se si collega da “Valicopter_5000” (1) -> “Propulsion” (2) e poi “Propulsion” (2) -> “Back_Left” (3), i valori si propagheranno verso l’alto e verranno sommati nel Valicopter di livello superiore.
Skipping a level when linking
Quando colleghiamo le modalità, possiamo anche collegare direttamente da un livello superiore (padre) a un livello inferiore (nipote) e saltare i livelli intermedi. Questo può essere fatto quando il livello intermedio non ha un Vali “PowerConsumption”.
Ad esempio, facendo riferimento alla Figura block Based System Architecture, possiamo definire il consumo energetico di uno dei quattro motori (“Back_Left” (3), che può essere considerato il nipote) nel sistema di propulsione del “Valicopter_5000” (padre) (1) e collegare qui le modalità alle modalità complessive del sistema Valicopter, senza definire e collegare il consumo energetico e le modalità nel sistema Propulsion (figlio) (2).
Using the same matrix from the top level
Possiamo anche sommare i Valis all’interno delle matrici collegando matrici in blocchi e sottoblocchi alla stessa modalità nel livello superiore.
Ad esempio, il consumo energetico complessivo può essere ottenuto sommando la corrente di tutti i sottoblocchi in base alle modalità di volo.
Possiamo farlo creando prima il “Flight_Modes” all’interno del sistema di livello superiore in Valicopter, come nella Figura “FlightModes” Modelist.
Poi creiamo le matrici “PowerConsumption” all’interno dei singoli sottoblocchi, cioè “Cabin” (1), le colleghiamo alle matrici “Flight_modes” all’interno del Valicopter e inseriamo i corrispondenti valori di corrente nella matrice “PowerConsumption” (2), come nella Figura Inputing Cabin PowerConsumption Values.
Poi possiamo creare la matrice “PowerConsumption” nel blocco “Valicopter_5000” di livello superiore (1) con la funzione “soc()” come valore per ciascuna delle sue modalità (2). Questo sommerà tutti i valori delle modalità dei sottoblocchi ora mappate all’interno della matrice, come nella Figura Adding Linked Modes.
Summing up a standard Vali with a Mode-dependent Vali
Se nel sistema è presente un blocco con un Vali Type che non dipende dalla modalità, è possibile aggiungere la/e modalità del blocco di livello superiore aggiungendolo esplicitamente al .
Ad esempio, nella Figura Standard Vali Type il sottoblocco “Screen” nel sottoalbero “Valicopter_5000” (1) ha un Vali “PowerConsumption” non dipendente dalla modalità (2).
Questo normale Vali non dipendente dalla modalità può essere aggiunto a una qualsiasi delle modalità (“[OFF, STANDBY, TAKEOFF, CRUISE, LANDING]”) nella matrice “PowerConsumption” dipendente dalla modalità nel blocco “Valicopter_5000” di livello superiore, facendovi esplicito riferimento nelle rispettive formule, come mostrato nella Figura Explicit Mode Calculation e nel Video Mode Vali Dependency.
Dipendenza del Vali dalla modalità