Mode management in Valispace
Every system has its different operating modes. For example, a mobile phone has gaming mode, power saver mode, etc. On each of these modes, the subcomponents of the mobile phone have their own modes, e.g., Processor, GPU, and Screen.
Modes are used when a particular property is not a single value but depends on the operation mode of a certain product, equipment, or unit. Power consumption is a good example of this as it often depends on the operating mode.
For instance, the system’s overall power consumption depends on the mode that the system is in. In the mode “ON” all components and subcomponents of the system will be switched on, in “STANDBY” some of the system's components will be running whilst others may not be. In “OFF” all components will be switched off.
The total power consumption of an E-VTOL will depend on the mode in which the system is operating [OFF, STANDBY, TAKEOFF, CRUISE, LANDING: the parent mode] and within each mode how do different sub-components behave (subsystem mode).
Let’s understand this with an example.
Parent mode: for the Valicopter, “Passengers” (number of passengers) and the “Flight mode” are the parent mode that dictates the power consumption.
Similarly, for Propulsion, there are four parent modes: OFF, MANOEUVER, CRUISE, STANDBY.
Subsystem mode: subsystem modes are the modes that are assigned to the sub-components of the main component. Let’s take the example of Propulsion.
The parent modes as defined above for Propulsion are OFF, MANOEUVER, CRUISE, and STANDBY.
The subsystem modes of its subcomponents are OFF, ON, POWER, and HOLD.
Assigning values to the modes of the sub-components
Once we have set up the modes for the individual components we can then create a matrix “Power Consumption” that is mode dependent on that mode in “Properties”. Here we can specify the value of the power that is consumed in that particular mode.
Below, we can see the defined power consumption values of the back left engine in each of the specified modes above.
Now that we have defined the modes and power consumption values of the sub-components we can now define the top-level system modes for example Flight Modes [OFF, STANDBY, TAKEOFF, CRUISE, LANDING], and then determine the overall power consumption of the system. This is achieved by linking the modes of the sub-components to the top-level Valicopter modes.
The gif below shows the top-level system modes and the corresponding linked sub-component modes in the “Linked Modes” table.
To calculate the system's overall power consumption, we can create a top-level “Power Consumption” matrix. Valispace will automatically calculate the overall power consumption for all the defined modes with the formula “soc()”, which sums up all the power consumptions of the sub-components in the respective mode.
Linking from the top level to lower levels
In Valispace, we always link from a top-level component. In this case, we linked the Valicopter to a low-level component, e.g., cabin, seats, power, battery, etc. The link works in one direction from sub-systems to top-level components.
For instance, if you link from Valicopter -> Propulsion and then Propulsion -> Back_Left, the values will propagate up and sum in the top-level Valicopter.
Skipping a level when linking
When we link modes we can also link directly from a top-level (parent) to a low-level (grandchild) and skip intermediate levels. This can be done when the intermediate level does not have a power consumption.
For example, referring to the image above, we can define the power consumption of one of the four engines (Back_Left which can be considered as the grandchild) in the propulsion system of the Valicopter (Parent) and link the modes here to the overall Valicopter system modes, without defining and linking the power consumption and modes in the Propulsion system (Child).
Using the same matrix from the top level
We can also sum up Valis within matrices by linking matrices in components and sub-components to the same mode in the top level.
For instance, the overall power consumption can be summed up from the current of all the sub-components by the flight modes.
We can do this by first creating the “Flight_Modes” within the top-level system in Valicopter.
We then create the matrices Power Consumption within the individual sub-components i.e Cabin and link them to the “Flight_modes” matrices within the Valicopter. Enter the corresponding values of current within the Power Consumption matrix.
Then, we can create the Power Consumption matrix in the top-level Valicopter with the formula “soc()”. This will sum up all the values from the sub-components within the matrix.
Vali without a mode summed up in top-level
If you have a component within your system that has a property that is not mode dependent, you can add this as a normal Vali in the low-level component and Valispace will automatically sum this value in the top-level matrix.
For example, the component Screen in Valicopter has a non-mode dependent “Power consumption”.
This normal non-mode dependant Vali is summed in each of the modes [OFF, STANDBY, TAKEOFF, CRUISE, LANDING] in the mode dependant “Power consumption” matrix in the top-level Valicopter.