You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							80 lines
						
					
					
						
							2.8 KiB
						
					
					
				
			
		
		
	
	
							80 lines
						
					
					
						
							2.8 KiB
						
					
					
				| --  The structure of the MMS system has been created from the System | |
| --  Requirements document following the pattern below: | |
| --   * Components are packages. | |
| --   * Sub-Components are child packages. | |
| --   * Inputs and outputs are functions stored in child packages Comp.Input and | |
| --     Comp.Output. | |
| --   * Connections between inputs and outputs of various components are done | |
| --     using renamings (or eventually expression functions when necessary). | |
| --     Consistency of the component architecture is ensured by following the | |
| --     rules below: | |
| --      - An input package Comp.Subcomp.Input can only reference outputs of | |
| --        siblings Comp.*.Output or inputs of parent Comp.Input. | |
| --      - An output package Comp.Output can only reference its own inputs | |
| --        Comp.Input or outputs of its children Comp.Subcomp.Output. | |
| --      - In subcomponents, inputs and outputs are grouped within sections | |
| --        with a header specifying to which component(s) they are linked. | |
|  | |
| package MMS is | |
| 
 | |
|    ---------------------------------- | |
|    -- Types for inputs and outputs -- | |
|    ---------------------------------- | |
|  | |
|    type Distance_Input_Type is range 1 .. 100; -- in n.m | |
|     | |
|    type Speed_Input_Type is range 1 .. 250; -- in k.t | |
|     | |
|    type Altitude_Input_Type is range -500 .. 3000; -- in ft | |
|     | |
|    type Navigation_Parameters_Type is record | |
|       Distance : Distance_Input_Type; | |
|       Speed    : Speed_Input_Type; | |
|       Altitude : Altitude_Input_Type; | |
|    end record; | |
|     | |
|    type Navigation_Mode_Type is (RP, A); | |
|     | |
|    type Navigation_Option_Type is (SPEED, ALTITUDE, ENERGY); | |
|     | |
|    type Bay_Switch_Type is (OPEN, CLOSED); | |
|     | |
|    type Payload_Mass_Type is new Integer range 0 .. 98; -- in kg | |
|  | |
|    type Distance_Type is new Float; -- type of P, unit and bounds ??? | |
|     | |
|    type Speed_Type is new Float; -- type of P_Dot, unit and bounds ??? | |
|     | |
|    type Angle_Type is new Float; -- type of Q, unit and bounds ??? | |
|     | |
|    type Angular_Speed_Type is new Float; -- type of Q_Dot, unit and bounds ??? | |
|     | |
|    type Rotactor_Type is range 0 .. 9; | |
|     | |
|    type CP_Switches_Type is record | |
|       Power      : Boolean; | |
|       Mode       : Navigation_Mode_Type; | |
|       Bay        : Bay_Switch_Type; | |
|       Start      : Boolean; | |
|       Rotactor_1 : Rotactor_Type; | |
|       Rotactor_2 : Rotactor_Type; | |
|    end record; | |
| 
 | |
|    type Source_Type is range 1 .. 100; | |
|     | |
|    type CP_Displays_Type is record | |
|       Ready            : Boolean; | |
|       Cancelled        : Boolean; | |
|       Complete         : Boolean; | |
|       Aborted          : Boolean; -- ??? | |
|       Primary_Source   : Source_Type; | |
|       Secondary_Source : Source_Type; | |
|    end record; | |
|        | |
|    type Propulsion_Energy_Type is record | |
|       Primary_Source_Capacity   : Source_Type; | |
|       Secondary_Source_Capacity : Source_Type; | |
|    end record; | |
|     | |
|    type Torque_Type is delta 0.0001 range -10.0E6 .. 10.0E6; -- ??? | |
| end MMS;
 | |
| 
 |