-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathControlCenter.aadl
98 lines (86 loc) · 4.54 KB
/
ControlCenter.aadl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
package SCADA::ControlCenter
public
with SCADA::icd;
with SCADA::devices;
with SCADA::software;
system cc
features
current : in out data port SCADA::icd::current;
voltage : in out data port SCADA::icd::voltage;
breaker : in out data port SCADA::icd::breaker;
transformer : in out data port SCADA::icd::transformer;
--receiveFromInternalBUS: requires bus access SCADA::icd::internalBUS;
--receiveFromExternalBUS: requires bus access SCADA::icd::internalBUS;
--sendToInternalBUS: provides bus access SCADA::icd::internalBUS;
--sendToExternalBUS: provides bus access SCADA::icd::internalBUS;
flows
substation_to_HMI_current : flow sink current;
substation_to_HMI_voltage : flow sink voltage;
substation_to_DMS_current : flow sink current;
substation_to_DMS_voltage : flow sink voltage;
substation_to_DB_current : flow sink current;
substation_to_DB_voltage : flow sink voltage;
HMI_to_substation_breaker : flow source breaker;
HMI_to_substation_transformer : flow source transformer;
end cc;
system implementation cc.i
subcomponents
-- input devices
HMI : system SCADA::devices::HMI;
DMS : system SCADA::devices::DMS;
DB : system SCADA::devices::DB;
--Substation : system SCADA::devices::substation;
alarm : system SCADA::devices::alarm;
CCBUS : bus SCADA::icd::internalBUS;
processBUS: virtual bus SCADA::icd::virtualBUS;
-- software and processing elements.
scada : process SCADA::software::SCADAP.i;
FEP : process SCADA::software::FEP.i;
Connections
c00 : port voltage -> FEP.voltagefromsubstation;
c01 : port current -> FEP.currentfromsubstation;
c02 : port FEP.breakertosubstation -> breaker;
c03 : port FEP.transformertosubstation -> transformer;
c04 : port FEP.voltagetoSCADAP -> scada.voltagefromFEP;
c05 : port FEP.currenttoSCADAP -> scada.currentfromFEP;
c06 : port scada.breakertoFEP -> FEP.breakerfromSCADAP;
c07 : port scada.transformertoFEP -> FEP.transformerfromSCADAP;
c08 : port scada.voltagetoHMI -> HMI.voltage;
c09 : port scada.currenttoHMI -> HMI.current;
c10 : port scada.alarmtoAlarm -> alarm.alarmdata;
c11 : port scada.voltagetoDMS -> DMS.voltage;
c12 : port scada.currenttoDMS -> DMS.current;
c13 : port scada.voltagetoDB -> DB.voltage;
c14 : port scada.currenttoDB -> DB.current;
c15 : port HMI.breaker -> scada.breakerfromHMI;
c16 : port HMI.transformer -> scada.transformerfromHMI;
flows
substation_to_HMI_current : flow sink current -> c01 -> FEP.f01 -> c05 -> scada.f01 -> c09 -> HMI.f2;
substation_to_HMI_voltage : flow sink voltage -> c00 -> FEP.f00 -> c04 -> scada.f00 -> c08 -> HMI.f3;
substation_to_DMS_current : flow sink current -> c01 -> FEP.f01 -> c05 -> scada.f05 -> c12 -> DMS.f0;
substation_to_DMS_voltage : flow sink voltage -> c00 -> FEP.f00 -> c04 -> scada.f04 -> c11 -> DMS.f1;
substation_to_DB_current : flow sink current -> c01 -> FEP.f01 -> c05 -> scada.f08 -> c14 -> DB.f0;
substation_to_DB_voltage : flow sink voltage -> c00 -> FEP.f00 -> c04 -> scada.f07 -> c13 -> DB.f1;
HMI_to_substation_breaker : flow source HMI.f0 -> c15 -> scada.f02 -> c06 -> FEP.f02 -> c02 -> breaker;
HMI_to_substation_transformer : flow source HMI.f1 -> c16 -> scada.f03 -> c07 -> FEP.f03 -> c03 -> transformer;
scada_to_alarm : end to end flow scada.f06 -> c10 -> alarm.f0;
properties
actual_connection_binding => (reference (processBUS)) applies to c04;
actual_connection_binding => (reference (processBUS)) applies to c05;
actual_connection_binding => (reference (processBUS)) applies to c06;
actual_connection_binding => (reference (processBUS)) applies to c07;
actual_connection_binding => (reference (CCBUS)) applies to c00;
actual_connection_binding => (reference (CCBUS)) applies to c01;
actual_connection_binding => (reference (CCBUS)) applies to c02;
actual_connection_binding => (reference (CCBUS)) applies to c03;
actual_connection_binding => (reference (CCBUS)) applies to c08;
actual_connection_binding => (reference (CCBUS)) applies to c09;
actual_connection_binding => (reference (CCBUS)) applies to c10;
actual_connection_binding => (reference (CCBUS)) applies to c11;
actual_connection_binding => (reference (CCBUS)) applies to c12;
actual_connection_binding => (reference (CCBUS)) applies to c13;
actual_connection_binding => (reference (CCBUS)) applies to c14;
actual_connection_binding => (reference (CCBUS)) applies to c15;
actual_connection_binding => (reference (CCBUS)) applies to c16;
end cc.i;
end SCADA::ControlCenter;