Continue implementation of marte app

This commit is contained in:
Martino Ferrari
2026-01-27 00:17:59 +01:00
parent ba5ae74c22
commit 1a9324bbe4
6 changed files with 468 additions and 3 deletions

View File

@@ -6,7 +6,7 @@
Class = ReferenceContainer
+Thread1 = {
Class = RealTimeThread
Functions = { Timer1kHzGAM StateGAM CCPSWaveformGAM GoErrorGAM GoWaitStandbyGAM choiseGAM MCPSGAM GCPSGAM EPICSOutputGAM PXI6368Error03GAM PXI6368Error04GAM PXI6259ErrorGAM PXIErrorGAM }
Functions = { Timer1kHzGAM StateGAM CCPSWaveformGAM GoErrorGAM GoWaitStandbyGAM ChoiceGAM MCPSGAM GCPSGAM EPICSOutputGAM PXI6368Error03GAM PXI6368Error04GAM PXI6259ErrorGAM PXIErrorGAM }
CPUs = 0x100
}
+Thread2 = {
@@ -178,7 +178,7 @@
Class = ReferenceContainer
+Thread1 = {
Class = RealTimeThread
Functions = { Timer1kHzGAM StateGAM PXI6368Error03GAM PXI6368Error04GAM PXI6259ErrorGAM PXIErrorGAM ExitedHVArmedInjectionRFONGAM ResetPSsGAM ResetErrorGAM ErrorGAM choiseGAM EPICSOutputGAM FHPSSetpointGAM FHPSRampupGAM CCPSWaveformGAM }
Functions = { Timer1kHzGAM StateGAM PXI6368Error03GAM PXI6368Error04GAM PXI6259ErrorGAM PXIErrorGAM ExitedHVArmedInjectionRFONGAM ResetPSsGAM ResetErrorGAM ErrorGAM ChoiceGAM EPICSOutputGAM FHPSSetpointGAM FHPSRampupGAM CCPSWaveformGAM }
CPUs = 0x100
}
+Thread2 = {

View File

@@ -27,5 +27,45 @@
PVName = "EC-GN-P01-GAF-CCPS:STAT-OFFS"
Type = float32
}
GCPS_TRG_CURR_MANUAL = {
PVName = "EC-GN-P01-GAF-GCPS:PSU2130-TRG-CURR-SET-MI"
Type = float32
}
MCPS_TRG_CURR_MANUAL = {
PVName = "EC-GN-P01-GAF-MCPS:PSU2120-TRG-CURR-SET-MI"
Type = float32
}
BPS_MANUAL = {
PVName = "EC-GN-P01-PB1F:PSU1000-EREF-MSP"
Type = float32
}
BPS_MM = {
PVName = "EC-GN-P01-PB1F:STAT-MANM"
Type = uint32
}
APS_MANUAL = {
PVName = "EC-GN-P01-PA1F:PSU3000-EREF-MSP"
Type = float32
}
APS_MM = {
PVName = "EC-GN-P01-PA1F:STAT-MANM"
Type = uint32
}
MHVPS_MANUAL = {
PVName = "EC-GN-P01-PMF:PSU0000-EREF-MSP"
Type = float32
}
MHVPS_MM = {
PVName = "EC-GN-P01-PMF:STAT-MANM"
Type = uint32
}
MCPS_MM = {
PVName = "EC-GN-P01-GAF-MCPS:STAT-MANM"
Type = uint32
}
GCPS_MM = {
PVName = "EC-GN-P01-GAF-GCPS:STAT-MANM"
Type = uint32
}
}
}

View File

@@ -0,0 +1,36 @@
#package jada_gyro.JAGyroApp.Data
+DDB1 = {
Signals = {
GCPS_TRG_CURR_SET = {
Type = float32
}
MCPS_TRG_CURR_SET = {
Type = float32
}
BPS_OUT = {
Type = float32
}
APS_OUT = {
Type = float32
}
MHVPS_OUT = {
Type = float32
}
MCPS_OUT = {
Type = float32
}
GCPS_OUT = {
Type = float32
}
BPS_REF = {
Type = float32
}
APS_REF = {
Type = float32
}
MHVPS_REF = {
Type = float32
}
}
}

View File

@@ -0,0 +1,300 @@
#package jada_gyro.JAGyroApp.Functions
//# Copy data from DDB1 to EPICSCAOutput DataSource.
+EPICSOutputGAM = {
Class = IOGAM
InputSignals = {
PCF_STATE = {
DataSource = DDB1
}
MCPS_ACT_SP = {
DataSource = DDB1
Type = uint32
}
GCPS_ACT_SP = {
DataSource = DDB1
Type = uint32
}
BPS_OUT = {
DataSource = DDB1
}
APS_OUT = {
DataSource = DDB1
}
MCPS_OUT = {
DataSource = DDB1
}
GCPS_OUT = {
DataSource = DDB1
}
FHPS_REF = {
DataSource = DDB1
Type = float32
}
CSV_LOADED = {
DataSource = DDB1
Type = uint32
}
CSV_ERR = {
DataSource = DDB1
Type = uint32
}
ELAPSED_TIME = {
DataSource = DDB1
Type = uint32
}
HVARMED = {
DataSource = DDB1
Type = uint32
}
HVINJECTION = {
DataSource = DDB1
Type = uint32
}
RFON = {
DataSource = DDB1
Type = uint32
}
MHVPS_OUT = {
DataSource = DDB1
}
PREP_TIME_WF = {
DataSource = DDB1
Type = int32
NumberOfElements = 8000
NumberOfDimensions = 1
}
MHVPS_PREP_WF = {
DataSource = DDB1
Type = float32
NumberOfElements = 8000
NumberOfDimensions = 1
}
BPS_PREP_WF = {
DataSource = DDB1
Type = float32
NumberOfElements = 8000
NumberOfDimensions = 1
}
APS_PREP_WF = {
DataSource = DDB1
Type = float32
NumberOfElements = 8000
NumberOfDimensions = 1
}
MCPS_PREP_WF = {
DataSource = DDB1
Type = float32
NumberOfElements = 8000
NumberOfDimensions = 1
}
GCPS_PREP_WF = {
DataSource = DDB1
Type = float32
NumberOfElements = 8000
NumberOfDimensions = 1
}
FHPS_PREP_WF = {
DataSource = DDB1
Type = float32
NumberOfElements = 8000
NumberOfDimensions = 1
}
CCPS_REF = {
DataSource = DDB1
Type = float32
}
MHVPS_STOP = {
DataSource = DDB1
Type = uint32
}
APS_STOP = {
DataSource = DDB1
Type = uint32
}
BPS_STOP = {
DataSource = DDB1
Type = uint32
}
BEAM_ON_TIME = {
DataSource = DDB1
Type = uint32
}
// MARTe Internal PCF_FLT
PCF_FLT = {
DataSource = DDB1
Type = uint32
}
PXI_FLT = {
DataSource = DDB1
Type = uint32
}
BEAM_ON_STAT = {
DataSource = DDB1
Type = uint32
}
SHOT_ID = {
DataSource = RealTimeThreadAsyncBridge
Type = uint32
}
FHPS_AUTO_STAT = {
DataSource = DDB1
Type = uint32
}
// Add 20201117
APS_HVON = {
DataSource = RealTimeThreadAsyncBridge
Type = uint32
}
APS_SWON = {
DataSource = RealTimeThreadAsyncBridge
Type = uint32
}
BPS_HVON = {
DataSource = RealTimeThreadAsyncBridge
Type = uint32
}
BPS_SWON = {
DataSource = RealTimeThreadAsyncBridge
Type = uint32
}
MHVPS_HVON = {
DataSource = RealTimeThreadAsyncBridge
Type = uint32
}
}
OutputSignals = {
PCF_STATE = {
DataSource = EPICSCAOutput
Type = uint32
}
MCPS_ACT_SP = {
DataSource = EPICSCAOutput
Type = uint32
}
GCPS_ACT_SP = {
DataSource = EPICSCAOutput
Type = uint32
}
BPS_REF = {
DataSource = EPICSCAOutput
Type = float32
}
APS_REF = {
DataSource = EPICSCAOutput
Type = float32
}
MCPS_TRG_CURR_SET = {
DataSource = EPICSCAOutput
Type = float32
}
GCPS_TRG_CURR_SET = {
DataSource = EPICSCAOutput
Type = float32
}
FHPS_REF = {
DataSource = EPICSCAOutput
Type = float32
}
CSV_LOADED = {
DataSource = EPICSCAOutput
Type = uint32
}
CSV_ERR = {
DataSource = EPICSCAOutput
Type = uint32
}
ELAPSED_TIME = {
DataSource = EPICSCAOutput
Type = uint32
}
HVARMED = {
DataSource = EPICSCAOutput
Type = uint32
}
HVINJECTION = {
DataSource = EPICSCAOutput
Type = uint32
}
RFON = {
DataSource = EPICSCAOutput
Type = uint32
}
MHVPS_REF = {
DataSource = EPICSCAOutput
Type = float32
}
PREP_TIME_WF = {
DataSource = EPICSCAOutput
}
MHVPS_PREP_WF = {
DataSource = EPICSCAOutput
}
BPS_PREP_WF = {
DataSource = EPICSCAOutput
}
APS_PREP_WF = {
DataSource = EPICSCAOutput
}
MCPS_PREP_WF = {
DataSource = EPICSCAOutput
}
GCPS_PREP_WF = {
DataSource = EPICSCAOutput
}
FHPS_PREP_WF = {
DataSource = EPICSCAOutput
}
CCPS_REF = {
DataSource = EPICSCAOutput
}
MHVPS_STOP = {
DataSource = EPICSCAOutput
Type = uint32
}
APS_STOP = {
DataSource = EPICSCAOutput
Type = uint32
}
BPS_STOP = {
DataSource = EPICSCAOutput
Type = uint32
}
BEAM_ON_TIME = {
DataSource = EPICSCAOutput
Type = uint32
}
// EPICS PCF_FLT
PCF_FLT = {
DataSource = EPICSCAOutput
}
PXI_FLT = {
DataSource = EPICSCAOutput
}
BEAM_ON_STAT = {
DataSource = EPICSCAOutput
}
SHOT_ID = {
DataSource = EPICSCAOutput
}
FHPS_AUTO_STAT = {
DataSource = EPICSCAOutput
}
// Added 20201117
APS_HVON = {
DataSource = EPICSCAOutput
}
APS_SWON = {
DataSource = EPICSCAOutput
}
BPS_HVON = {
DataSource = EPICSCAOutput
}
BPS_SWON = {
DataSource = EPICSCAOutput
}
MHVPS_HVON = {
DataSource = EPICSCAOutput
}
}
}

View File

@@ -58,3 +58,92 @@
}
}
}
//# Switching AO port source between internal variable and EPICS PV.
+ChoiceGAM = {
Class = JASourceChoiseGAM
// numberOfPVs = 5
InputSignals = {
BPS_REF = {
DataSource = DDB1
Type = float32
}
BPS_MANUAL = {
DataSource = EPICSCAInput
Type = float32
}
BPS_MM = {
DataSource = EPICSCAInput
Type = uint32
}
APS_REF = {
DataSource = DDB1
Type = float32
}
APS_MANUAL = {
DataSource = EPICSCAInput
Type = float32
}
APS_MM = {
DataSource = EPICSCAInput
Type = uint32
}
MHVPS_REF = {
DataSource = DDB1
Type = float32
}
MHVPS_MANUAL = {
DataSource = EPICSCAInput
Type = float32
}
MHVPS_MM = {
DataSource = EPICSCAInput
Type = uint32
}
MCPS_TRG_CURR_SET = {
DataSource = DDB1
Type = float32
}
MCPS_TRG_CURR_MANUAL = {
DataSource = EPICSCAInput
Type = float32
}
MCPS_MM = {
DataSource = EPICSCAInput
Type = uint32
}
GCPS_TRG_CURR_SET = {
DataSource = DDB1
Type = float32
}
GCPS_TRG_CURR_MANUAL = {
DataSource = EPICSCAInput
Type = float32
}
GCPS_MM = {
DataSource = EPICSCAInput
Type = uint32
}
}
OutputSignals = {
BPS_OUT = {
DataSource = DDB1
Type = float32
}
APS_OUT = {
DataSource = DDB1
Type = float32
}
MHVPS_OUT = {
DataSource = DDB1
Type = float32
}
MCPS_OUT = {
DataSource = DDB1
Type = float32
}
GCPS_OUT = {
DataSource = DDB1
Type = float32
}
}
}