SPES_XT Projektabschluss - EC2 Optimales Deployment D. Sander Airbus - TUM
←
→
Page content transcription
If your browser does not render page correctly, please read the page content below
Partner der EC • Airbus Group Innovations • Airbus Operations • FORTISS • Fraunhofer FOKUS • Fraunhofer IESE • Inchron • Liebherr Aerospace • OFFIS • Robert Bosch / ETAS • Siemens • TUM SPES 2020_XT – Projektabschluss 2
Ziele EC2 Optimale Verteilung (Deployment) von Funktionen auf eine Rechnerarchitektur Reduzierung der Rechnerkapazität / Hardwarekosten Gewicht-, Platz- und Energiebedarf für konkurrenzfähigere, ressourcenschonendere und umweltfreundlichere Produkte. Innovationsbedarf besteht in der Methodik zur Verteilung als auch in der praktischen Anwendbarkeit der Methodik durch geeignete Software- Werkzeuge. Methodik umfasst funktionale und nicht-funktionale SW/HW-Modelle und Randbedingungen, modellierte Designalternativen, formalisierte multi-kriterielle Zielfunktionen und Entscheidungsabhängigkeiten. Vision: Erweiterung von Deploymentszenarien auf Multi-Aspekte SPES 2020_XT – Projektabschluss 3
EC2-Konzepte im SPES-Kontext • SPES-Methodik konform zur Abbildung von Deploymentaspekten • Erweiterungen des MM (Constraints, Metriken, Optimierungskriterien) zur • Definition des Design Spaces (Modellierungsbereich) • Optimierungsmethoden mit Tools und Plattformen (Lösungsbereich) • Entwicklung eines Deploymentprozesses • Evaluation an Fallbeispielen Viewpoint-Konzept bildet den Modellierungsbereich ab: SPES 2020_XT – Projektabschluss 4
Generischer Prozess Anforderungen Parameter & Modelle an die Methodik Kriterien QT1 Define Require- Functional Model Requirements Viewpoint Requirements/Goals ments/Goals Functional Viewpoint EC4 Define DSE Task Structure Logical Viewpoint Parameters Creation Technical Viewpoint QT2 DSE Parameters / Goals Task Structure optional Constraints Result Optimization Goals Design Space (Partial) Solutions Exploration Process Parameters Result Status Define Initial System Initial System Methodiken Desired Solution? no yes QT3 SPES 2020_XT – Projektabschluss 5
EC2 Fallstudien Methoden Siemens, Liebherr, Airbus, Bosch mit akademischen Partnern Solver Methoden: ‚Find one deployment & iterate‘ ‚Find all deployments & rank‘ ‚Optimize local & global‘ Anwendungsgebiete: Spatial & temporal deployment Static / dynamic schedule ‚Non-functional resource allocation‘ (SMT, constraint solver, metrics) ‚Non-funtional & functional resource Allocation‘ (ILP/SAT-solver, metrics) SPES 2020_XT – Projektabschluss 6
EC2 Fallstudien Fallstudie Kriterien Methoden Kommunikationssystem Resourcen (HW, Netzwerk, Bewertungsmetriken, Flugzeugkabine (CIDS) Anzahl), Energieverbrauch manuelle Iteration Integrierte Modulare Avionik Schnittstellen, Constraint Programming Netzwerk (IMA) Energieverbrauch, Safety, Position Flugsteuerung Resourcen, Safety, Linear Programming, Schnittstellen, genetische Algos Wiederverwendung Entsalzungsanlage Schnittstellen, Linear Programming, Energieverbrauch, Anzahl genetische Algos Komponenten, Kabelkosten Fahrspurassistent Schedulability, Hardware Mehrstufiger, iterativer Modifikationen, Ansatz Kommunikationsverhalten, Signalgrößen SPES 2020_XT – Projektabschluss 7
Fallbeispiel: Kontext CIDS Cabin Functions: Lighting, Audio Functions, Smoke Detection, Signalling … • CIDS System Model • Parameterization & Varianten in IBM Rhapsody • Rhapsody API und JAVA • Eclipse IDE • JAVA Code für ausführbare Bewertungsmetriken SPES 2020_XT – Projektabschluss 8
Fallbeispiel: CIDS Design Methoden Design Verbesserung mit Assessment Metrics – Fraunhofer IESE NOK Model OK Airbus Rhapsody Ansatz Result Metric Java-Code SPES 2020_XT – Projektabschluss 9
Fallbeispiel: IMA Design Methoden Interface I/F to System VCS 1 I/F to System VCS 1 Component Constraint Programming – I/F to System VCS 1 Sensor (flow, pressure…) Interface I/F to SystemComputer Interface VCS 1 Component I/F to SystemProperties: VCS 1 Adapter Fraunhofer FIRST/FOKUS I/F to System VCS 1 Properties: Type RDC A, Location, InterfaceComputer power, location.. Interface AdapterComponent Properties: Type CRDC A, Interfacepower, location.. Interface Component Adapter Actuator (valve, pump..) Interface Technischer Kontext: Properties: Location, power Adapter • 2000 Interfaces, 35 Typen • 30 Computer, 2 Typen • Eigenschaften: Position, Power,Board=String Manufacturer=String Groupen, DAL, Seite RAM=Integer ROM=Integer Side=String • Safety & Mapping Constraints Route=String • Bewertungsmetriken IOAdapter=String Type= CustomizeType1…40 UnitsAvailable=Integer Ergebnisse: Application (Eq-Ebene)=String_EQ1 • Begrenzte Lösbarkeit: ~ 500 DevelopedBy=String CoreUtilization=Integer RequiredRAM=Integer Automated and manual grouping Interfaces, ~35 Typen, RequiredROM=Integer RequiredIOAdapterType=CustomizeType1…40+ Exclusive+Units=Integer Manual defined constraintabhängig PositionEqX=Integer PositionEqY=Integer constraints • Anwendbarkeit nachgewiesen • Nicht ausreichende Performance SPES 2020_XT – Projektabschluss 10
Fallbeispiel Design Space Exploration Flight Control System: > 50 SW-Applications, today: ~ 1 Computer per SW-Application Objective: Reduce the number of computers thanks to optimal deployment Generic Generic Logical Component class MM_LogicalArchitecture Technical Component class MM_TechnicalArchitecture «MetaModel» «MetaModel» «MetaModel» Application «MetaModel» Configuration TechnicalComponent ConfigurationParameter «MetaModel» Serv iceComponent + Configurability :{FixProperty, StartUpConfigurable, RuntimeConfigurable} + Name :String 1..* A + ParameterName :String «Safety» 1..* 0..1 1..* «MetaModel» + ParameterValue + Fabricator :FabricatorType TechnicalSWComponent «use» 1 + SafetyLevel :SafetyLevelType Formalization / Abstraction «MetaModel» PerformanceTiming «MetaModel» «MetaModel» API «Deployment» «MetaModel» Computer 1..* + Period :MicroSecond Maintainability OS «MetaModel» + ExpectedMaxDuration :Microsecond 0..* Services «MetaModel» «MetaModel» + Jitter :Microsecond «Deployment» TechnicalHWComponent Communication «Safety» + AllowPartitionSharing :Boolean + ExtensionRate :Percent + RadiationsSensibility :RadiationSensibilityType + Fabricator :FabricatorType «Deployment» + EventMinimalInterface :MicroSecond + Propageable :Booelan «Safety» 1..* + SafetyLevel :SafetyLevelType + Type :CommunicationType + EventReactionTime :Microsecond 1 + Location :LocationType «MetaModel» «MetaModel» «MetaModel» «Performance» + PSEOtherApplications :Hours Board ApplicationSWC Middlew areSWC + CostsPerformance :MIPS + Protocol :CommunicationProtocoll + SignalCalculationTime :Microsecond HWSafetyAspect + PSESafetyApplications :Hours «Resource» + CommunicationTime :MicroSecond + Deadline :Microsecond + Reliability :HazardPerHourExponent + CostsMemoryVolatile :KiloByte + Priority :CriticalityType «MetaModel» + HWDiagnosticCoverage :Percentage + CostsMemoryPersistent :KiloByte + SignalValidity :MicroSecond «Resource» ValidationVerification + PowerConsumptionAverage :Watt + CostsMemoryPermanent :KiloByte + Delay :MicroSecond «Decomposition, Deployment» 0..* + PowerConsumptionPeak :Watt + CostsCommunicationAmount :KiloBitPerSecond + Synchronous :Boolean ~ Complexity :EvaluatedLinesOfCode «Decomposition, Deployment» 1..* + CostsCommunicationProtocol :CommunicationProtocol + CostsCommunicationType :CommunicationType + Bandwidth :KiloBitPerSecond + TypeOfDeadline :DeadlineType + Diagnostic :DiagnosticTypeList A «Development» «MetaModel» + SamplingRate :KiloHertz RHF_independence + CostsImplementation :Hours «Deployment» BoardComponents via instances + Deterministic :Boolean + CostsCertification :Hours + XBIT :Boolean «MetaModel» GPU 0..* «MetaModel» 1 1 1..* 1 1 Display «MetaModel» «MetaModel» «MetaModel» «MetaModel» LogicalComponent «MetaModel» Security «MetaModel» IO «MetaModel» OnChipComponent Processor FailureManagement 0..* + Name :String Reusability «Timing, Safety, Performance» + CheckAuthorization() «Deployment» 1 + ApplicationDomain :DomainList «MetaModel» «MetaModel» + NCompleteBus :Integer + CheckAuthenticity() «FaultIsolation» 0..* onChipGPU offChipGPU + BlockFurtherAccess() + Type :IOType + CheckIntegrity() «Deployment» 1 «Decomposition, Deployment» + DegradeComponent() + Bandwidth :KiloBitPerSecond + ReuseCertification :ReuseCertificationType + VoteDataCorrectness() 1 + AbstractionLevel :AbstractionLevelType 1..* + SamplingRate :KiloHertz + ReuseServices :ReuseServicesType «FaultRecording» 1 + LogFailure() 1 1 + ReuseExecutionUnit :ReuseExecutionUnitType «MetaModel» «FaultDetection» 1..* ResourceSharingMechanisms «Deployment» «MetaModel» + MonitorDataCorrectness() of SPES-Metamodel «MetaModel» customHardw are + MonitorPeriodicity() Storage + CheckAbstractionLevel :Boolean «MetaModel» + MonitorPower() onChipMemory + MonitorResourceConsumption() «MetaModel» + MonitorSWStack() «Deployment» 1..* AddressSpaceProtectionUnit + MonitorTemperatur() + Type :StorageType + Granularity :Bytes «MetaModel» «FaultCorrection» «MetaModel» + Mode_distinction :boolean + Size :KiloBytes RedundancyManagement + RestoreViaRedundancy() 0..* 0..* Function + NoOfRegions :int + RestoreViaReload() + Speed :KiloBytePerSecond 1..* «MetaModel» + RW_distinction :boolean MasterComponent «MetaModel» + LatencyMaxWrite :MicroSecond «MetaModel» «MetaModel» «Decomposition» «MetaModel» «MetaModel» + Task_distinction :boolean * reconfigurableHardw are + LatencyMaxRead :MicroSecond Safety Security + FunctionName :String Interconnect SupportModule + Endurance :WriteLifeCycle + FaultIsolationRequired :Boolean + Arbitration :ArbitrationSet + Speed :MHz * + WorkloadPeak :AccessPerFrame «Deployment, Decomposition» «Deployment» «Performance» «Deployment» + Bandwidth :KiloBitPerSecond + SafetyLevel :SafetyLevelType + DislocationList :LogicalComponentList «MetaModel» + ConcurrentUsage :Boolean «Interface» MasterIOModule + FaultIsolationRequired :FaultIsolationTypeList «Deployment, Decomposition» + Protocol :CommunicationProtocol «MetaModel» + FaultIsolationKind :FaultIsolationKindType + SecurityLevel :SecurityLevelType + Type :CommunicationType Memory + FaultIsolationGranularity :FaultIsolationGranularityType 1 «Resource» «Deployment» «MetaModel» + Size :KiloByte + DislocalityList :LogicalComponentList 1..* Core + Type :StorageType «MetaModel» + Width :Bit + DissimilarityList :LogicalComponentList «MetaModel» IOModule «MetaModel» «Resource, Performance» «Performance» + Duplicatable :Boolean Signal + NChannels :int Hardw areAccelerator + FloatingPoint :FP_Set + Speed :KiloBytePerSecond «Performance» + Reliability :HazardPerHourExponent + NControllers :int + Footprint :AverageInstructionsPerStatementOfCCode «Decomposition» + SignalName :String «Performance» + Speed :MIPS + RedundanceMultiplicity :Integer A «Decomposition, Deployment» + BandWidth :KiloBitPerSecond + Latency :Time + RelativeRate :float «Safety» «MetaModel» «MetaModel» + VerificationRequirement :Boolean «DataInterface» + IsIndependent :Boolean Cache offChipMemory «Deployment» + Direction :DirectionType «Safety, Resource» + Function :IOType + IntegrityCheck :IntegrityCheckTypeList + ResourceAccessCounter :Integer HW Execution Platforms Network of SW Applications Execution Units System Functions (SWAs) (EXUs) EXU-1 EXU-2 EXU-p EXU-j Avionics Experts SWA-1 SWA-2 SWA-i Mapping Rules Resource: Performance, Memory, IO, … Design Space Safety: Safety Level, Reliability, SWA-n Dissimilarity, Redundancy, … Exploration Verifiability: Interface Availability, … TUM, Fokus, fortiss, … Reuseability: Functionalities, Certification, … Optimal Mappings SPES 2020_XT – Projektabschluss 11
Design Space Exploration: Liebherr / TUM SW-App needs modeled in E.A. LLI Objective: SW-Applications described in the MOEA tool bdd [Package] ACL [ActuatorControlLoop] A_ACLRHIB_ARINC : Communication bdd [Package] ACL [ActuatorControlLoop] A_ACLRHIB_CAN1 : Communication A_ACLRHIB_CAN2 : Communication “Reduce the number of Type = ARINC Type = CAN A_ACLRHIB_CAN1 : Type = CAN Computers“ A_ACLRHIB_ARINC : A_ACLRHIB_CAN2 : Deterministic = YES Communication Deterministic = YES Communication Deterministic = NO Communication bdd [Package] ACL [ActuatorControlLoop] Bandwidth => 10Kb/s Bandwidth => 512Kb/s Bandwidth => 512Kb/s CommunicationTime Type = ARINC = 100us A_ACLRHIB_ARINC :CommunicationTime Type = CAN = 10us A_ACLRHIB_CAN1 : CommunicationTime Type = CAN = 10us A_ACLRHIB_CAN2 : Deterministic = YES Communication Deterministic = YES Communication Deterministic = NO Communication bdd [Package] ACL [ActuatorControlLoop] Bandwidth => 10Kb/s Bandwidth => 512Kb/s Bandwidth => 512Kb/s CommunicationTime Type = ARINC = 100us A_ACLRHIB_ARINC :CommunicationTime Type = CAN = 10us A_ACLRHIB_CAN1 : CommunicationTime Type = CAN = 10us A_ACLRHIB_Maint A_ACLRHIB_CAN2 : : A_ACLRHIB_Data : Storage Deterministic bdd [Package] = YES Communication ACL [ActuatorControlLoop] Bandwidth => 10Kb/s CommunicationTime Type = ARINC = 100us A_ACLRHIB_ARINC Deterministic = YES Communication Deterministic : = YES Communication Bandwidth => 512Kb/s CommunicationTime Type = CAN = 10us A_ACLRHIB_CAN1 Deterministic = YES Communication Deterministic =Maintainability NO Communication Bandwidth => 512Kb/s : CommunicationTime CAN Deterministic = 10us = 20% : : Type =ExtensionRate A_ACLRHIB_Maint A_ACLRHIB_CAN2 =Maintainability NO Communication Objectives expressed in SAOL for MOEA Bandwidth => 10Kb/s Bandwidth => 512Kb/s Bandwidth => 512Kb/s CommunicationTime Type = ARINC= 100us CommunicationTime Type = CAN = 10us CommunicationTime = 10us = :20% Type =ExtensionRate CANA_ACLRHIB_Maint A_ACLRHIB_Reusability : Type = VOLATILE A_ACLRHIB_Data : Size = 2000KB Deterministic =A_ACL_RHIB YES Deterministic = YES :Application Deterministic =Maintainability Reusability NO Storage Bandwidth => 512Kb/s Speed = 1MB/s Bandwidth => 10Kb/s Bandwidth => 512Kb/s CommunicationTime = 100us CommunicationTime = 10us Name = Aileron_ActuatorControlLoop_RightHandInBoard ExtensionRate CommunicationTime ReuseCertification = 10us = :20% = OPTIONAL A_ACLRHIB_Maint A_ACLRHIB_Reusability : Type = VOLATILE A_ACLRHIB_Data : Size = 2000KB A_ACL_RHIB :Application Maintainability Reusability Storage A_ACLRHIB_Code : Speed = 1MB/s Storage Name = Aileron_ActuatorControlLoop_RightHandInBoard ExtensionRate ReuseCertification = OPTIONAL = :20% A_ACLRHIB_Maint A_ACLRHIB_Reusability : Type = VOLATILE A_ACLRHIB_Data : A_ACLRHIB_PerfTim : Size = 2000KB A_ACL_RHIB :Application Maintainability Reusability Storage PerformanceTiming TypeA_ACLRHIB_Code = PERMANENT : Speed = 1MB/s Size = 1000KB Storage Name = Aileron_ActuatorControlLoop_RightHandInBoard ReuseCertificationExtensionRate = OPTIONAL = :20% A_ACLRHIB_Reusability Type = VOLATILE A_ACLRHIB_Data : Complexity = 5000 LoLC A_ACLRHIB_PerfTim : Size = 2000KB A_ACL_RHIB :Application Period = 3ms Reusability Storage PerformanceTiming TypeA_ACLRHIB_Code = PERMANENT : Speed = 1MB/s ExpectedMaxDuration = 1,5ms Size = 1000KB A_ACLRHIB_Calibration :Storage Storage Name = Aileron_ActuatorControlLoop_RightHandInBoard ReuseCertification = OPTIONAL : Type = VOLATILE Size = 2000KB A_ACL_RHIB :Application Complexity Period = 3ms A_ACLRHIB_Reusability = 5000 LoLC A_ACLRHIB_PerfTim PerformanceTiming : Reusability ... Type = PERSISTENT TypeA_ACLRHIB_Code = PERMANENT : A_ACLRHIB_Safety :Safety Speed = 1MB/s ExpectedMaxDuration = 1,5ms SizeA_ACLRHIB_Calibration = 100KB Size = 1000KB :Storage Storage Name = Aileron_ActuatorControlLoop_RightHandInBoard ReuseCertification = OPTIONAL Speed = 100Kb/s Complexity = 5000 LoLC A_ACLRHIB_PerfTim : DissimilarityList = A_ACL_RHIB-M, A_ACL_RHOB, A_ACL_RHOB-M Period = 3ms Endurance Type==100000 WR-Cycles PERSISTENT TypeA_ACLRHIB_Code = PERMANENT Duplicatable = YES PerformanceTiming : A_ACLRHIB_Safety :Safety ExpectedMaxDuration = 1,5ms SizeA_ACLRHIB_Calibration = 100KB Size = 1000KB :Storage Storage FaultIsolationRequired = YES Speed = 100Kb/s Complexity = 5000 LoLC A_ACLRHIB_PerfTim : Reliability = 10^-6 DissimilarityList = A_ACL_RHIB-M, A_ACL_RHOB, A_ACL_RHOB-M Endurance Type==100000 WR-Cycles PERSISTENT Period = 3ms PerformanceTiming SafetyLevel Type = PERMANENT = DAL-C= YES Duplicatable A_ACLRHIB_Safety :Safety Size = 100KB Size = 1000KB :Storage ExpectedMaxDuration = 1,5ms A_ACLRHIB_Calibration DislocalityList = A_ACL_RHOB = YES FaultIsolationRequired Speed = 100Kb/s Complexity = 5000 LoLC Reliability = 10^-6 DissimilarityList = A_ACL_RHIB-M, A_ACL_RHOB, A_ACL_RHOB-M Endurance ==100000 WR-Cycles Period = 3ms Type PERSISTENT SafetyLevel = DAL-C= YES Duplicatable A_ACLRHIB_Safety :Safety ExpectedMaxDuration = 1,5ms SizeA_ACLRHIB_Calibration = 100KB DislocalityList :Storage = A_ACL_RHOB = YES FaultIsolationRequired Speed = 100Kb/s Reliability = 10^-6 DissimilarityList = A_ACL_RHIB-M, A_ACL_RHOB, A_ACL_RHOB-M Endurance Type==100000 WR-Cycles PERSISTENT SafetyLevel = DAL-C= YES Duplicatable A_ACLRHIB_Safety :Safety Size = 100KB DislocalityList = A_ACL_RHOB = YES FaultIsolationRequired Speed = 100Kb/s Reliability = 10^-6 DissimilarityList = A_ACL_RHIB-M, A_ACL_RHOB, A_ACL_RHOB-M Endurance = 100000 WR-Cycles SafetyLevel = DAL-C= YES Duplicatable DislocalityList = A_ACL_RHOB = YES FaultIsolationRequired Reliability = 10^-6 SafetyLevel = DAL-C DislocalityList = A_ACL_RHOB ... Constraint expressed in SAOL for MOEA Mapping rules algorithms Check DAL Check Dissimilarity Check Dislocality Check Storage Size … Exec. Units capabilities modeled in E.A. bdd [Package] Platform2 [Platform2] Execution Units described in the MOEA tool P2_ARINC1 : bdd [Package] Platform2 [Platform2] Interconnect Platform2 :Board P2_ARINC1 Fabricator = LEG : bdd [Package] Platform2 [Platform2] Fabricator = CES Platform2 :Board Type = Interconnect ARINC P2_CAN-A :Interconnect Bandwidth = P2_ARINC1 100Kb/s : Fabricator = LEG Fabricator = CES IsDeterminist Interconnect = TRUE Type = CAN Platform2 :Board Type = ARINC P2_CAN-A= :Interconnect Bandwidth 500Kb/s Bandwidth = 100Kb/s Fabricator = LEG IsDeterminist = TRUE Fabricator = CES IsDeterminist P2_ARINC2 = TRUE : = ARINC Type = CAN Type P2_CAN-A :Interconnect Interconnect Bandwidth = 100Kb/s Bandwidth = 500Kb/s IsDeterminist = TRUE IsDeterminist P2_ARINC2 : = TRUE Type = CAN Fabricator = LEG P2_CAN-B :Interconnect Bandwidth = 500Kb/s SingleCoreProc :Processor Type = Interconnect ARINC Type = CANIsDeterminist = TRUE Bandwidth = P2_ARINC2 100Kb/s Fabricator = LEG : P2_CAN-B= :Interconnect Bandwidth 500Kb/s Fabricator = INFINEON IsDeterminist Interconnect = TRUE SingleCoreProc :Processor Type = ARINC IsDeterminist = TRUE PSESafetyApplications = 125000 Hours Bandwidth = 100Kb/s Type = CAN Fabricator = LEG P2_CAN-B PSEOtherApplications = 5200000 Hours Bandwidth = :Interconnect 500Kb/s Fabricator = INFINEON IsDeterminist = TRUE Type = ARINC SingleCoreProc PSESafetyApplications :Processor = 125000 Hours IsDeterminist = TRUE Bandwidth = 100Kb/s Type = CAN P2_RAM-External : PSEOtherApplications = 5200000 Hours Bandwidth = 500Kb/s Fabricator = INFINEON MemoryIsDeterminist = TRUE IsDeterminist = TRUE PSESafetyApplications = 125000 Hours P2_RAM-External Fabricator = STM : PSEOtherApplications = 5200000 Hours P2_Core1 :Core Type = Memory RAM Size = 1MB P2_RAM-External : Variant = TricoreV1.6 Fabricator = STM P2_Core1 RelativeRate = 28,37:Core Type = Memory RAM Reliability = 10^-6 P2_FLASH : P2_RAM :Memory Size = 1MB P2_DFLASH-EEPROM : Variant = TricoreV1.6 Fabricator = STM P2_Core1 Memory Memory RelativeRate = 28,37:Core Type = RAM Type = RAM Reliability = 10^-6 Variant = TricoreV1.6 TypeP2_FLASH = FLASH : P2_RAM Size :Memory = 256KB Size = 1MB P2_DFLASH-EEPROM Type = DFLASH : Size =Memory 4MB Memory RelativeRate = 28,37 Reliability = 10^-6 TypeP2_FLASH = FLASH : Size =Memory 4MB Type = RAM P2_RAM Size :Memory = 256KB Size = 192KB P2_DFLASH-EEPROM Type = DFLASH Memory Size = 192KB : Result of Mapping showed in MOEA Type = RAM Type = FLASH Size = 256KB Type = DFLASH Size = 4MB Size = 192KB SPES 2020_XT – Projektabschluss 12
Fallbeispiel: Entsalzungsanlage Siemens / TUM Überblick: Bestandteile: SERVER ROOM CONTROL ROOM Large Display Engineering Station + Emergency Operator Station Operator Station Report Printer Alarm Printer • 5 Anlagenbereiche Scalance X208 Scalance X208 • 25 DIO Gruppen Redundant PCS 7 Servers Scalance X208 Industrial Ethernet • 200 Sensoren Rack UR2 S7-400H • 300 Ventile • Drinking Beachwells 1..4 Sea Water Tank Sand Filters Cartridge Filters Reverse Osmosis Desalined water Tank Drinking Water Tank Water Pump Station Drinking Water net 100 Pumpen • 28 Inverter High Pressure Pumps Wash Water Tank (RO) Purging Air Turbine Service water Dilution Water Tank Reactive Service water Sea Wash Tank network Water Water Tank Waste Neutraliza Water Net Sea tion Tank Water Power Ditribution Meerwasserentsalzungsanlage Al Hidd, Bahrain SPES 2020_XT – Projektabschluss 13
Fallbeispiel: Entsalzungsanlage Siemens / TUM Problemstellung: „Optimale Verbindung von Sensoren und Ventilen zu DIOs und Pumpen zu Inverter unter Berücksichtigung von Rahmenbedingungen“. Rahmenbedingungen: Optimierungsziele: Lösung: C1 Sensors & Ventile sind zu DIOs O1 Minimiere # DIOs ILP Solver: 3s im selben Bereich verbunden. O2 Minimiere # Inverter ILP (Pareto): 11,6 min C2 Beachtung von Schnittstellentypen O3 Minimiere Kosten für Stromkabel 34% weniger DIOs C3 Beachtung von Schnittstellenanzahl 11% weniger Inverter C4 Beachtung von Stromverbrauch In System Architect: • Systemmodellierung 600 216 • Optimierungskriterien verteilbare Einheiten Deploymentziele Anlagengeometrie • Rahmenbedingungen SPES 2020_XT – Projektabschluss 14 • Optimierung
System Architect • Integriertes Werkzeug zur durchgängigen Modellierung und Optimierung von Systemen – Flugkontrollsystem mit Liebherr – Entsalzungsanlage mit Siemens • Spezifikation der Optimierungsziele und Rahmenbedingungen mittels SAOL (System Architecture Optimization Language) • Verwendete Lösungsverfahren: – MOEA (genetischer Algorithmus) – SMT (Constraint-Solver) – ILP (Lineare Optimierung) – Pareto-Optimierung (SMT, ILP) SPES 2020_XT – Projektabschluss 15
Anwendung des Fallbeispiels • Aufgabe des Fahrspurassistenten – Erkennen und halten der Fahrspur, z.B. bei Nachtfahrten – Unfallrisiko minimieren, Fahrsicherheit erhöhen • Die Anwendung des Fahrspurassistenten wird durch das Zusammenspiel mehrere Steuergeräte, Sensoren und Aktoren als verteilte Anwendung in einem Steuergerätenetzwerk realisiert • Bosch als Zulieferer bietet die Anwendung Fahrspurassistent an – Unterschiedliche Setups an involvierten Steuergeräten und vorhandener Peripherie bei unterschiedlichen Automobilherstellern – Gemeinsame Plattform, jedoch müssen individuelle Kundenwünsche (Features, Qualität, Preis) von Automobilherstellern realisiert werden SPES 2020_XT – Projektabschluss 16
Fahrspurassistent Anwendung • Modellierung der Kommunikation mit Ausführungszeiten & Hardwarestruktur • Constraints – EndToEnd-Deadlines – Safety / Redundanz • Optimierungsziele – Anzahl ECUs, Kosten Subsystem Subsystem – Gewicht, Busauslastung ECU ECU ECU ECU • Deployment-Parameter CAN CAN – WCETs für Schedulability GW GW ECU ECU ECU – Hardware Modifikationen – Kommunikationsverhalten FlexRay – Signalgrößen SPES 2020_XT – Projektabschluss 17
Lösungsansatz Modellierung Constraints • Modellierung Optimierungsziele – Funktionsnetzwerk + Signale ECU Subsystem ECU ECU Subsystem ECU Deployment-Parameter CAN CAN – Hardware (Steuergeräte + Busse) GW ECU FlexRay GW ECU ECU – Constraints + Optimierungsziele Synthese / Optimierung • Mehrstufiger, iterativer Ansatz 1. Vorplatzierung auf Subsysteme 2. Lokal optimale Platzierung auf Steuergeräte im Subsystem 3. Backtracking falls unvollständiges Deployment • Evaluation – Weitere Qualitätseigenschaften mittels INProVe – Ergebnisvergleich mit verschiedenen Visualisierungen # of ECUs in # 5 Evaluation 4 3 INProVe SPES 2020_XT – Projektabschluss 18 920 940 85 960 980 90 1000 95 1020 1040 100 105 weight in g 110 costs in Euro
Architekturwizard • Unterstützt Ingenieure bei der Durchführung des DSE-Prozesses – Hilfe bei einzelnen Schritten durch Task Wizards: • Unterstützung bei einem/mehreren Tasks einer Aktivität im Prozess • z.B. Bestimmung von Optimierungskriterien und –metriken. Architecture Wizard Define Require- System Function Networks Requirements Viewpoint ments/Goals Functional Model Functional Viewpoint Logical Viewpoint Determine Technical Viewpoint Requirements/Goals Task Structure Optimization Early Validation/ Objective Wizard Task Structure(s) DSE Method Modular Safety Constraints Decision Wizard Graphical Decision Define DSE Optimization Objectives Design Space Target Architecture(s) Parameters Support Wizard DSE Parameters Exploration + (Partial) DeploymentHardware Deployment Parameters AHP Wizard Architecture Process Parameters Wizard yes Define Target Desired Evaluation (Partial) Solutions Architecture Decision Selection Evaluation Result Solution? Results no Result Status Evaluation Parameters optional SPES 2020_XT – Projektabschluss 19
Resultate & Demos • Durchgängige Methodik innerhalb von EC2 erreicht durch – SPES Meta-Model Konzept – werkzeugtechnische Umsetzungen • Bosch Fahrspurassistent: – Iterativ multi-kriteriell optimiertes Deployment – Unterstützung durch Architekturwizard – Mehrere Analyse-Backends durch QT3 Werkzeugplattform integriert • TUM & FORTISS Optimierungsmethoden: – Mapping Interface- und Rechnerresourcen – Anwendung: Flugkontrollsystem und Entsalzungsanlage SPES 2020_XT – Projektabschluss 20
You can also read