diff --git a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/app_states.marte b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/app_states.marte index e52e968..c41acbd 100644 --- a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/app_states.marte +++ b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/app_states.marte @@ -36,6 +36,7 @@ Functions = { FastTimerGAM, NI6528_0_ReaderGAM, + AsyncIOGAM, HVPSsOffGAM, NI6528_0_WriterGAM, SyncThreadProducerGAM @@ -61,6 +62,7 @@ Functions = { WGTimerGAM, CCPSWaveformGAM, + FHPSStateGAM, WGProducerGAM } } @@ -101,6 +103,7 @@ Functions = { FastTimerGAM, NI6528_0_ReaderGAM, + AsyncIOGAM, HVPSsOffGAM, NI6528_0_WriterGAM, SyncThreadProducerGAM @@ -129,6 +132,7 @@ CCPSWaveformGAM, FHPSSetpointGAM, FHPSRampupGAM, + FHPSStateGAM, WGProducerGAM } } @@ -170,6 +174,7 @@ Functions = { FastTimerGAM, NI6528_0_ReaderGAM, + AsyncIOGAM, HVPSsOffGAM, NI6528_0_WriterGAM, SyncThreadProducerGAM @@ -198,6 +203,7 @@ CCPSWaveformGAM, FHPSSetpointGAM, FHPSRampupGAM, + FHPSStateGAM, WGProducerGAM } } @@ -242,6 +248,7 @@ Functions = { FastTimerGAM, NI6528_0_ReaderGAM, + AsyncIOGAM, HVPSsOffGAM, NI6528_0_WriterGAM, SyncThreadProducerGAM @@ -270,6 +277,7 @@ CCPSWaveformGAM, FHPSSetpointGAM, FHPSRampupGAM, + FHPSStateGAM, WGProducerGAM } } @@ -306,6 +314,7 @@ Functions = { FastTimerGAM, NI6528_0_ReaderGAM, + AsyncIOGAM, FastEpicsInputGAM, FastStopRequestGAM, ModeLimitGAM, @@ -337,6 +346,7 @@ CCPSWaveformGAM, FHPSSetpointGAM, FHPSRampupGAM, + FHPSStateGAM, WGProducerGAM } } @@ -376,6 +386,7 @@ Functions = { FastTimerGAM, NI6528_0_ReaderGAM, + AsyncIOGAM, FastEpicsInputGAM, FastStopRequestGAM, ModeLimitGAM, @@ -406,6 +417,7 @@ WGTimerGAM, CCPSWaveformGAM, FHPSRampupGAM, + FHPSStateGAM, WGProducerGAM } } @@ -442,6 +454,7 @@ Functions = { FastTimerGAM, NI6528_0_ReaderGAM, + AsyncIOGAM, FastEpicsInputGAM, FastStopRequestGAM, ModeLimitGAM, @@ -468,6 +481,7 @@ WGTimerGAM, CCPSWaveformGAM, FHPSRampupGAM, + FHPSStateGAM, WGProducerGAM } } @@ -508,6 +522,7 @@ Functions = { FastTimerGAM, NI6528_0_ReaderGAM, + AsyncIOGAM, FastEpicsInputGAM, FastStopRequestGAM, ModeLimitGAM, @@ -533,6 +548,7 @@ WGTimerGAM, CCPSWaveformGAM, FHPSRampupGAM, + FHPSStateGAM, WGProducerGAM } } @@ -572,6 +588,7 @@ Functions = { FastTimerGAM, NI6528_0_ReaderGAM, + AsyncIOGAM, HVPSsOffGAM, NI6528_0_WriterGAM, SyncThreadProducerGAM @@ -598,6 +615,7 @@ Functions = { WGTimerGAM, CCPSWaveformGAM, + FHPSStateGAM, WGProducerGAM } } diff --git a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/data/epics.marte b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/data/epics.marte index 27ccacc..a6c4c7f 100644 --- a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/data/epics.marte +++ b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/data/epics.marte @@ -5,7 +5,7 @@ Class = "EPICSCA::EPICSCAInput" Signals = { TRIGGER_DAN = { - PVName = @rfid .. ":DAN_ENABLED" + PVName = (@rfid .. ":DAN_ENABLED") Type = uint8 } CSV_LOAD = { @@ -49,6 +49,14 @@ PVName = (@rfid .. "-GAF-MCPS:PSU2120-TRG-CURR-SET-MI") Type = float32 } + MCPS_RU_COMPLETED = { + PVName = (@rfid .. "-GAF-MCPS:PSU2120-YTS-RUP") + Type = uint8 + } + MCPS_RD_COMPLETED = { + PVName = (@rfid .. "-GAF-MCPS:PSU2120-YTS-RDOWN") + Type = uint8 + } BPS_MANUAL = { PVName = (@rfid .. "-PB1F:PSU1000-EREF-MSP") Type = float32 @@ -207,7 +215,7 @@ } +EPICSCAOutput = { Class = EPICSCAOutput - CPUMask = @cpus_epics// change from 0x200 + CPUMask = @cpus_epics // change from 0x200 StackSize = 10000000 NumberOfBuffers = 50 Signals = { diff --git a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread1/data.marte b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread1/data.marte index ca0aaa6..f1c1539 100644 --- a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread1/data.marte +++ b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread1/data.marte @@ -121,5 +121,13 @@ PCF_FAULT = { Type = uint8 } + MCPS_RU_COMPLETED = { + Type = uint8 + } + + MCPS_RD_COMPLETED = { + Type = uint8 + } + } } diff --git a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread1/thread_data_broker.marte b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread1/thread_data_broker.marte index eb72304..8b5d3a2 100644 --- a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread1/thread_data_broker.marte +++ b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread1/thread_data_broker.marte @@ -500,6 +500,12 @@ FHPS_PrePro = { DataSource = DDB1 } + MCPS_RU_COMPLETED = { + DataSource = EPICSCAInput + } + MCPS_RD_COMPLETED = { + DataSource = EPICSCAInput + } } OutputSignals = { BPS_OUT = { @@ -517,5 +523,11 @@ FHPS_PrePro = { DataSource = Th1Bridge } + MCPS_RU_COMPLETED = { + DataSource = Th1Bridge + } + MCPS_RD_COMPLETED = { + DataSource = Th1Bridge + } } } diff --git a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread3/datasync.marte b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread3/datasync.marte index 641c0f0..db3c889 100644 --- a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread3/datasync.marte +++ b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread3/datasync.marte @@ -361,4 +361,35 @@ } } } + +AsyncIOGAM = { + Class = IOGAM + InputSignals = { + FHPS_RU = { + DataSource = WGAsyncBridge + } + CCPS_IN_OP = { + DataSource = WGAsyncBridge + } + MCPS_RU_COMPLETED = { + DataSource = Th1Bridge + } + MCPS_RD_COMPLETED = { + DataSource = Th1Bridge + } + } + OutputSignals = { + FHPS_RU = { + DataSource = DDB3 + } + CCPS_IN_OPERATION = { + DataSource = DDB3 + } + SCM_RU = { + DataSource = DDB3 + } + SCM_RD = { + DataSource = DDB3 + } + } + } } diff --git a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread6/ccps.marte b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread6/ccps.marte index e431991..d6139aa 100644 --- a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread6/ccps.marte +++ b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread6/ccps.marte @@ -29,6 +29,24 @@ } } } + +CCPSStateONGAM = { + Class = ConstantGAM + OutputSignals = { + CCPS_IN_OP = { + DataSource = WGAsyncBridge + DefaultValue = 1 + } + } + } + +CCPSStateOFFGAM = { + Class = ConstantGAM + OutputSignals = { + CCPS_IN_OP = { + DataSource = WGAsyncBridge + DefaultValue = 0 + } + } + } } +Data = { diff --git a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread6/fhps.marte b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread6/fhps.marte index 57d9c86..a27dca6 100644 --- a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread6/fhps.marte +++ b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread6/fhps.marte @@ -59,6 +59,26 @@ } } } + +FHPSStateGAM = { + Class = JAConditionalSignalUpdateGAM + Operation = "AND" + InputSignals = { + FHPS_AUTO_STAT = { + DataSource = DDB6 + Type = uint32 + Comparator = "EQUALS" + Value = 2 + } + } + OutputSignals = { + FHPS_RU = { + DataSource = WGAsyncBridge + Type = uint8 + DefaultValue = 0 + Value = 1 + } + } + } } +Data = { +DDB6 = { diff --git a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread6/synch.marte b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread6/synch.marte index 8258d51..16f5d5c 100644 --- a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread6/synch.marte +++ b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread6/synch.marte @@ -15,6 +15,12 @@ FHPS_AUTO_STAT = { Type = uint32 } + FHPS_RU = { + Type = uint8 + } + CCPS_IN_OP = { + Type = uint8 + } } } +NI6259_AO = {