1003 lines
20 KiB
INI
1003 lines
20 KiB
INI
LoggerAddress = "localhost"
|
|
LoggerPort = 32767
|
|
DefaultCPUs = 1
|
|
Version = "$Id: MARTe-WaterTank.cfg,v 1.5 2010/04/20 15:42:02 ppcc_dev Exp $"
|
|
+WEB = {
|
|
Class = HttpGroupResource
|
|
+BROWSE = {
|
|
Title = "Http Object Browser"
|
|
Class = HttpGCRCBrowser
|
|
AddReference = {MARTe StateMachine OBJBROWSE THRBROWSE CFGUpload HTTPSignalServer MatlabSignalServer FlotPlot}
|
|
}
|
|
+RGRAPH_LIB_DIR = {
|
|
Class = HttpDirectoryResource
|
|
BaseDir = "../3rdPartyLibs/RGraph/libraries"
|
|
}
|
|
+PLOTTING_GAM_DIR = {
|
|
Class = HttpDirectoryResource
|
|
BaseDir = "../GAMs/PlottingGAM"
|
|
}
|
|
+FLOT_DIR = {
|
|
Class = HttpDirectoryResource
|
|
BaseDir = "../3rdPartyLibs/flot"
|
|
}
|
|
}
|
|
+HTTPSERVER = {
|
|
Class = HttpService
|
|
VerboseLevel = 10
|
|
Port = 8085
|
|
HttpRelayURL = "ignore.me:1234"
|
|
Root = WEB
|
|
}
|
|
+OBJBROWSE = {
|
|
Class = HttpClassListResource
|
|
}
|
|
+THRBROWSE = {
|
|
Class = HttpThreadListResource
|
|
}
|
|
+MatlabSignalServer = {
|
|
Class = MATLABHandler
|
|
}
|
|
+FlotPlot = {
|
|
Class = FlotPlot
|
|
}
|
|
+HTTPSignalServer = {
|
|
Class = SignalServer
|
|
}
|
|
+CFGUpload = {
|
|
Class = CFGUploader
|
|
}
|
|
+TCPMessageHandler = {
|
|
Class = TCPMessageHandler
|
|
ServerPort = 9090
|
|
//CPUMask = 8
|
|
}
|
|
+TCPConfigurationHandler = {
|
|
Class = TCPConfigurationHandler
|
|
ServerPort = 10010
|
|
//CPUMask = 8
|
|
MARTeLocation = MARTe
|
|
}
|
|
+StateMachine = {
|
|
Class = StateMachine
|
|
VerboseLevel = 10
|
|
+OFF = {
|
|
Class = StateMachineState
|
|
StateCode = 0x0
|
|
+START = {
|
|
Class = StateMachineEvent
|
|
Value = START
|
|
NextState = READY
|
|
+SWITCH_ON = {
|
|
Class = MessageDeliveryRequest
|
|
MsecTimeOut = 1000
|
|
Sender = StateMachine
|
|
Destinations = "HTTPSERVER MARTe"
|
|
Flags = NoReply
|
|
Message = {
|
|
Class = Message
|
|
Content = START
|
|
}
|
|
}
|
|
}
|
|
}
|
|
+READY = {
|
|
Class = StateMachineState
|
|
StateCode = 0x500
|
|
+START_PULSE_SEQUENCE = {
|
|
Class = StateMachineEvent
|
|
NextState = INITIALISING
|
|
Code = 0x701
|
|
+NOTIFY = {
|
|
Class = MessageEnvelope
|
|
Sender = StateMachine
|
|
Destination = MARTe
|
|
+MESSAGE = {
|
|
Class = Message
|
|
Content = PREPULSECHECK
|
|
}
|
|
}
|
|
+UPDATE_MSS = {
|
|
Class = MessageEnvelope
|
|
Destination = MatlabSignalServer
|
|
+MESSAGE = {
|
|
Class = Message
|
|
Content = AUTODETECT
|
|
}
|
|
}
|
|
+UPDATE_SS = {
|
|
Class = MessageEnvelope
|
|
Destination = HTTPSignalServer
|
|
+MESSAGE = {
|
|
Class = Message
|
|
Content = AUTODETECT
|
|
}
|
|
}
|
|
+UPDATE_FLOT = {
|
|
Class = MessageEnvelope
|
|
Destination = FlotPlot
|
|
+MESSAGE = {
|
|
Class = Message
|
|
Content = AUTODETECT
|
|
}
|
|
}
|
|
}
|
|
+UNRECOVERABLE = {
|
|
Class = StateMachineEvent
|
|
NextState = UNRECOVERABLE
|
|
Code = 0x776
|
|
}
|
|
+CONFIG_ERROR = {
|
|
Class = StateMachineEvent
|
|
NextState = CONFIG_ERROR
|
|
Code = 0x777
|
|
}
|
|
+CONFIG_OK = {
|
|
Class = StateMachineEvent
|
|
NextState = SAMESTATE
|
|
Code = 0x778
|
|
+NOTIFY = {
|
|
Class = MessageEnvelope
|
|
Sender = StateMachine
|
|
Destination = COULD.BE.A.MIMIC
|
|
+SENDSTATE = {
|
|
Class = Message
|
|
Code = 0x500
|
|
}
|
|
}
|
|
}
|
|
+SWITCH_OFF = {
|
|
Class = StateMachineEvent
|
|
Value = STOP
|
|
NextState = READY
|
|
Code = 0x005
|
|
+STOPALL = {
|
|
Class = MessageDeliveryRequest
|
|
MsecTimeOut = 1000
|
|
Sender = StateMachine
|
|
Destinations = "HTTPSERVER MARTe"
|
|
Flags = NoReply
|
|
Message = {
|
|
Class = Message
|
|
Content = STOP
|
|
}
|
|
}
|
|
}
|
|
}
|
|
+INITIALISING = {
|
|
Class = StateMachineState
|
|
StateCode = 0x508
|
|
+PRE_PULSE_CHECKS_FINISHED = {
|
|
Class = StateMachineEvent
|
|
NextState = INITIALISED
|
|
Code = 0x705
|
|
}
|
|
+ABORT = {
|
|
Class = StateMachineEvent
|
|
NextState = READY
|
|
Code = 0x702
|
|
+NOTIFY = {
|
|
Class = MessageEnvelope
|
|
Sender = StateMachine
|
|
Destination = MARTe
|
|
+MESSAGE = {
|
|
Class = Message
|
|
Content = PULSESTOP
|
|
}
|
|
}
|
|
}
|
|
}
|
|
+INITIALISED = {
|
|
Class = StateMachineState
|
|
StateCode = 0x504
|
|
+START_PULSE = {
|
|
Class = StateMachineEvent
|
|
NextState = EXECUTING
|
|
Code = 0x708
|
|
+NOTIFY = {
|
|
Class = MessageEnvelope
|
|
Sender = StateMachine
|
|
Destination = MARTe
|
|
+MESSAGE = {
|
|
Class = Message
|
|
Content = PULSESTART
|
|
}
|
|
}
|
|
}
|
|
+ABORT = {
|
|
Class = StateMachineEvent
|
|
NextState = READY
|
|
Code = 0x702
|
|
+NOTIFY = {
|
|
Class = MessageEnvelope
|
|
Sender = StateMachine
|
|
Destination = MARTe
|
|
+MESSAGE = {
|
|
Class = Message
|
|
Content = PULSESTOP
|
|
}
|
|
}
|
|
}
|
|
}
|
|
+EXECUTING = {
|
|
Class = StateMachineState
|
|
StateCode = 0x505
|
|
+ENTER = {
|
|
Class = MessageEnvelope
|
|
Destination = COULD.BE.A.MIMIC
|
|
+SENDSTATE = {
|
|
Class = Message
|
|
}
|
|
}
|
|
+ABORT = {
|
|
Class = StateMachineEvent
|
|
NextState = READY
|
|
Code = 0x702
|
|
+NOTIFY = {
|
|
Class = MessageEnvelope
|
|
Sender = StateMachine
|
|
Destination = MARTe
|
|
+MESSAGE = {
|
|
Class = Message
|
|
Content = PULSESTOP
|
|
}
|
|
}
|
|
}
|
|
+END_PULSE = {
|
|
Class = StateMachineEvent
|
|
NextState = POST_PULSE
|
|
Code = 0x709
|
|
+NOTIFY = {
|
|
Class = MessageEnvelope
|
|
Sender = StateMachine
|
|
Destination = MARTe
|
|
+MESSAGE = {
|
|
Class = Message
|
|
Content = PULSESTOP
|
|
}
|
|
}
|
|
}
|
|
}
|
|
+POST_PULSE = {
|
|
Class = StateMachineState
|
|
StateCode = 0x507
|
|
+ENTER = {
|
|
Class = MessageEnvelope
|
|
Destination = COULD.BE.A.MIMIC
|
|
+SENDSTATE = {
|
|
Class = Message
|
|
}
|
|
}
|
|
+PULSE_CHECKS_FINISHED = {
|
|
Class = StateMachineEvent
|
|
NextState = READY
|
|
Code = 0x703
|
|
+NOTIFY = {
|
|
Class = MessageEnvelope
|
|
Sender = StateMachine
|
|
Destination = MARTe
|
|
+MESSAGE = {
|
|
Class = Message
|
|
Content = COLLECTIONCOMPLETED
|
|
}
|
|
}
|
|
}
|
|
}
|
|
+NOT_READY = {
|
|
Class = StateMachineState
|
|
StateCode = 0x601
|
|
+ACTIVATE = {
|
|
Class = StateMachineEvent
|
|
NextState = READY
|
|
Code = 0x705
|
|
}
|
|
}
|
|
+CONFIG_ERROR = {
|
|
Class = StateMachineState
|
|
StateCode = 0x601
|
|
+ENTER = {
|
|
Class = MessageEnvelope
|
|
Destination = COULD.BE.A.MIMIC
|
|
+SENDSTATE = {
|
|
Class = Message
|
|
}
|
|
}
|
|
+CONFIG_OK = {
|
|
Class = StateMachineEvent
|
|
NextState = READY
|
|
Code = 0x778
|
|
+NOTIFY = {
|
|
Class = MessageEnvelope
|
|
Sender = StateMachine
|
|
Destination = COULD.BE.A.MIMIC
|
|
+SENDSTATE = {
|
|
Class = Message
|
|
Code = 0x500
|
|
}
|
|
}
|
|
}
|
|
}
|
|
+UNRECOVERABLE = {
|
|
Class = StateMachineState
|
|
StateCode = 0x601
|
|
+DEFAULT = {
|
|
Class = StateMachineEvent
|
|
UserCode = 0
|
|
NextState = UNRECOVERABLE
|
|
}
|
|
}
|
|
+COMM_ERROR = {
|
|
Class = StateMachineState
|
|
StateCode = 0x601
|
|
+ABORT = {
|
|
Class = StateMachineEvent
|
|
NextState = SAMESTATE
|
|
Code = 0x702
|
|
}
|
|
}
|
|
+DEFAULT = {
|
|
Class = StateMachineState
|
|
StateCode = 0x601
|
|
+ABORT = {
|
|
Class = StateMachineEvent
|
|
NextState = READY
|
|
Code = 0x702
|
|
}
|
|
}
|
|
}
|
|
+MARTeMenu = {
|
|
Class = MarteSupLib::MARTeMenu
|
|
AddReference = MARTe.MARTe
|
|
Title = "MARTe Menu"
|
|
+MenuA = {
|
|
Class = MenuContainer
|
|
Title = "State Machine"
|
|
+ABORT = {
|
|
Class = SendMessageMenuEntry
|
|
Title = Abort
|
|
Envelope = {
|
|
Class = MessageEnvelope
|
|
Sender = MARTeMenu
|
|
Destination = StateMachine
|
|
+Message = {
|
|
Class = Message
|
|
Content = ABORT
|
|
Code = 0x702
|
|
}
|
|
}
|
|
}
|
|
+START_PULSE_SEQUENCE = {
|
|
Class = SendMessageMenuEntry
|
|
Title = "Start Pulse Sequence"
|
|
Envelope = {
|
|
Class = MessageEnvelope
|
|
Sender = MARTeMenu
|
|
Destination = StateMachine
|
|
+Message = {
|
|
Class = Message
|
|
Content = START_PULSE_SEQUENCE
|
|
Code = 0x701
|
|
}
|
|
}
|
|
}
|
|
+PRE_PULSE_CHECKS_FINISHED = {
|
|
Class = SendMessageMenuEntry
|
|
Title = "Pre Pulse Checks Finished"
|
|
Envelope = {
|
|
Class = MessageEnvelope
|
|
Sender = MARTeMenu
|
|
Destination = StateMachine
|
|
+Message = {
|
|
Class = Message
|
|
Content = PRE_PULSE_CHECKS_FINISHED
|
|
Code = 0x705
|
|
}
|
|
}
|
|
}
|
|
+START_PULSE = {
|
|
Class = SendMessageMenuEntry
|
|
Title = "Start Pulse"
|
|
Envelope = {
|
|
Class = MessageEnvelope
|
|
Sender = MARTeMenu
|
|
Destination = StateMachine
|
|
+Message = {
|
|
Class = Message
|
|
Content = START_PULSE
|
|
Code = 0x708
|
|
}
|
|
}
|
|
}
|
|
+END_PULSE = {
|
|
Class = SendMessageMenuEntry
|
|
Title = "End Pulse"
|
|
Envelope = {
|
|
Class = MessageEnvelope
|
|
Sender = MARTeMenu
|
|
Destination = StateMachine
|
|
+Message = {
|
|
Class = Message
|
|
Content = END_PULSE
|
|
Code = 0x709
|
|
}
|
|
}
|
|
}
|
|
+PULSE_CHECKS_FINISHED = {
|
|
Class = SendMessageMenuEntry
|
|
Title = "Pulse Checks Finished"
|
|
Envelope = {
|
|
Class = MessageEnvelope
|
|
Sender = MARTeMenu
|
|
Destination = StateMachine
|
|
+Message = {
|
|
Class = Message
|
|
Content = PULSE_CHECKS_FINISHED
|
|
Code = 0x703
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
+EPICSLib = {
|
|
Class = EPICSHandler
|
|
RunOnCPU_event = 16
|
|
RunOnCPU = 2
|
|
PREFIX = TEST-MNGR-PCF1:
|
|
asyncScan = true
|
|
debugLevel = 0
|
|
asyncDelay = 0.1
|
|
maxSimultAsyncIO = 100
|
|
scanOn = true
|
|
ProcessVariable = {
|
|
pv_1 = {
|
|
INP = "CycleUsecTime"
|
|
VAL = 0
|
|
NAME = STMA-CYCL-TIME-G
|
|
PINI = "No"
|
|
DTYP = "MARTe-translator"
|
|
DESC = "MARTe Cycle Time"
|
|
SYNC = excasIoSync
|
|
LOPR = 0
|
|
EGU = "us"
|
|
SCAN = "Passive"
|
|
TYPE = aitEnumFloat64
|
|
}
|
|
pv_98 = {
|
|
INP = "usecTime"
|
|
VAL = 0
|
|
NAME = STMA-USEC-TIME-G
|
|
PINI = "NO"
|
|
DTYP = "MARTe-translator"
|
|
DESC = "MARTe Absolute Time"
|
|
SYNC = excasIoSync
|
|
LOPR = 0
|
|
EGU = "us"
|
|
SCAN = "Passive"
|
|
TYPE = aitEnumUint32
|
|
}
|
|
pv_99 = {
|
|
HSV = "MINOR"
|
|
LOLO = 0
|
|
SYNC = excasIoSync
|
|
HHSV = "MAJOR"
|
|
LSV = "MINOR"
|
|
EGU = "Volts"
|
|
LOPR = 0
|
|
MDEL = 0
|
|
PREC = 2
|
|
HIHI = 9
|
|
INP = "pumpVoltage"
|
|
ADEL = 0
|
|
LOW = 0
|
|
TYPE = aitEnumFloat64
|
|
HYST = 0
|
|
NAME = STMA-PUMP-VOLT-G
|
|
LLSV = "MAJOR"
|
|
SMOO = 0
|
|
PINI = "NO"
|
|
DTYP = "MARTe-translator"
|
|
HIGH = 8
|
|
SCAN = "Passive"
|
|
VAL = 0
|
|
DESC = "MARTe Pump Voltage"
|
|
HOPR = 10
|
|
}
|
|
pv_100 = {
|
|
LOLO = 0
|
|
HSV = "MINOR"
|
|
HYST = 0
|
|
NAME = STMA-WTER-HGHT-G
|
|
SMOO = 0
|
|
LLSV = "MAJOR"
|
|
PINI = "NO"
|
|
DTYP = "MARTe-translator"
|
|
SYNC = excasIoSync
|
|
LSV = "MINOR"
|
|
HHSV = "MAJOR"
|
|
HIGH = 8
|
|
LOPR = 0
|
|
MDEL = 0
|
|
PREC = 2
|
|
SCAN = "Passive"
|
|
HIHI = 9
|
|
INP = "waterHeight"
|
|
VAL = 0
|
|
DESC = "MARTe Water Height"
|
|
ADEL = 0
|
|
LOW = 0
|
|
TYPE = aitEnumFloat64
|
|
HOPR = 10
|
|
}
|
|
}
|
|
}
|
|
+MARTe = {
|
|
Class = MARTeContainer
|
|
Level1Name = LEVEL1
|
|
StateMachineName = StateMachine
|
|
MenuContainerName = MARTe
|
|
+MARTe = {
|
|
Class = MenuContainer
|
|
}
|
|
+DriverPool = {
|
|
Class = GCReferenceContainer
|
|
+TimerBoard = {
|
|
Class = GenericTimerDrv
|
|
CPUMask = 1
|
|
NumberOfOutputs = 0
|
|
TimerUsecPeriod = 1000
|
|
NumberOfInputs = 2
|
|
SynchronizationMethod = Synchronizing
|
|
}
|
|
}
|
|
+Messages = {
|
|
Class = GCReferenceContainer
|
|
+FatalErrorMessage = {
|
|
Class = MessageDeliveryRequest
|
|
MsecTimeOut = 1000
|
|
Destinations = StateMachine
|
|
Flags = NoReply
|
|
Message = {
|
|
Class = Message
|
|
Content = UNRECOVERABLE
|
|
Code = 0x776
|
|
}
|
|
}
|
|
+ConfigLoadErrorMessage = {
|
|
Class = MessageDeliveryRequest
|
|
MsecTimeOut = 1000
|
|
Destinations = StateMachine
|
|
Flags = NoReply
|
|
Message = {
|
|
Class = Message
|
|
Content = CONFIG_ERROR
|
|
Code = 0x777
|
|
}
|
|
}
|
|
+ConfigLoadOKMessage = {
|
|
Class = MessageDeliveryRequest
|
|
MsecTimeOut = 1000
|
|
Destinations = StateMachine
|
|
Flags = NoReply
|
|
Message = {
|
|
Class = Message
|
|
Content = CONFIG_OK
|
|
Code = 0x778
|
|
}
|
|
}
|
|
+SafetyErrorMessage = {
|
|
Class = MessageDeliveryRequest
|
|
MsecTimeOut = 1000
|
|
Destinations = MARTe
|
|
Flags = NoReply
|
|
Message = {
|
|
Class = Message
|
|
Content = ERROR
|
|
}
|
|
}
|
|
}
|
|
+ExternalTimeTriggeringService = {
|
|
Class = InterruptDrivenTTS
|
|
TsOfflineUsecPhase = 0
|
|
TsOnlineUsecPhase = 0
|
|
TsOfflineUsecPeriod = 1000
|
|
TsOnlineUsecPeriod = 1000
|
|
TimeModule = {
|
|
BoardName = TimerBoard
|
|
}
|
|
}
|
|
+Thread_1 = {
|
|
Class = RealTimeThread
|
|
SafetyMsecSleep = 1
|
|
RunOnCPU = 2
|
|
TriggeringServiceName = MARTe.ExternalTimeTriggeringService
|
|
OfflineSemaphoreTimeout = 50
|
|
ThreadPriority = 28
|
|
SMStatusChangeMsecTimeout = 1000
|
|
RTStatusChangeMsecTimeout = 1000
|
|
+DDB = {
|
|
Class = DDB
|
|
}
|
|
+Timer = {
|
|
Class = IOGAMs::TimeInputGAM
|
|
TriggeringServiceName = ExternalTimeTriggeringService
|
|
BoardName = TimerBoard
|
|
Signals = {
|
|
time = {
|
|
SignalName = usecTime
|
|
SignalType = uint32
|
|
}
|
|
counter = {
|
|
SignalName = counter
|
|
SignalType = int32
|
|
}
|
|
}
|
|
}
|
|
+WaveformGen = {
|
|
Class = WaveformGenerator
|
|
UsecTimeType = uint32
|
|
UsecTime = usecTime
|
|
+waterHeightReference = {
|
|
Class = WaveformClassSine
|
|
Gain = 1
|
|
Offset = 2.5
|
|
Frequency = 0.1
|
|
Tend = 2000
|
|
}
|
|
+zeroSignal = {
|
|
Class = WaveformClassPoints
|
|
TimeVector = {0 1}
|
|
ValueVector = {0 0}
|
|
Frequency = 1
|
|
Tend = 2000
|
|
}
|
|
}
|
|
+PIDGAM = {
|
|
Class = PIDGAM
|
|
TEnd = 2000.0
|
|
SamplingTime = 0.001
|
|
Ki = 2.00
|
|
Kd = 0.20
|
|
TStart = 0.0
|
|
ControllerOn = On
|
|
Kp = 3.00
|
|
InputSignals = {
|
|
PIDInput = {
|
|
SignalName = PIDIn
|
|
SignalType = PIDGAMInputStructure
|
|
FlatNamed = True
|
|
}
|
|
}
|
|
OutputSignals = {
|
|
PIDOutput = {
|
|
SignalName = PIDOut
|
|
SignalType = PIDGAMOutputStructure
|
|
FlatNamed = True
|
|
}
|
|
}
|
|
Remappings = {
|
|
InputInterface = {
|
|
feedforward = zeroSignal
|
|
usecTime = usecTime
|
|
reference = waterHeightReference
|
|
measurement = waterHeight
|
|
}
|
|
OutputInterface = {
|
|
feedback = pumpVoltageRequest
|
|
integratorState = pidIntState
|
|
controlSignal = pumpVoltageRequest
|
|
error = pidHeightError
|
|
}
|
|
}
|
|
}
|
|
+WaterTank = {
|
|
Class = WaterTank
|
|
MinVoltage = 0
|
|
MaxVoltage = 5
|
|
TankArea = 20.0
|
|
aFlowRate = 20.0
|
|
AnimationEnabled = 1
|
|
SVGFileLocation = "../../GAMs/WaterTank/WaterTank.svg"
|
|
bFlowRate = 50.0
|
|
InputSignals = {
|
|
usecTime = {
|
|
SignalName = usecTime
|
|
SignalType = uint32
|
|
}
|
|
voltage = {
|
|
SignalName = pumpVoltageRequest
|
|
SignalType = float
|
|
}
|
|
}
|
|
OutputSignals = {
|
|
height = {
|
|
SignalName = waterHeight
|
|
SignalType = float
|
|
}
|
|
pumpVoltage = {
|
|
SignalName = pumpVoltage
|
|
SignalType = float
|
|
}
|
|
}
|
|
}
|
|
+Statistic = {
|
|
Class = WebStatisticGAM
|
|
Verbose = True
|
|
FrequencyOfVerbose = 2000000
|
|
Signals = {
|
|
SignalU = {
|
|
SignalName = usecTime
|
|
SignalType = uint32
|
|
}
|
|
Signal0 = {
|
|
SignalName = CycleUsecTime
|
|
SignalType = float
|
|
}
|
|
Signal1 = {
|
|
SignalName = waterHeightReference
|
|
SignalType = float
|
|
}
|
|
Signal2 = {
|
|
SignalName = waterHeight
|
|
SignalType = float
|
|
}
|
|
Signal3 = {
|
|
SignalName = pumpVoltageRequest
|
|
SignalType = float
|
|
}
|
|
Signal4 = {
|
|
SignalName = pumpVoltage
|
|
SignalType = float
|
|
}
|
|
Signal5 = {
|
|
SignalName = TimerAbsoluteUsecTime
|
|
SignalType = float
|
|
}
|
|
Signal6 = {
|
|
SignalName = WaveformGenAbsoluteUsecTime
|
|
SignalType = float
|
|
}
|
|
Signal7 = {
|
|
SignalName = PIDGAMAbsoluteUsecTime
|
|
SignalType = float
|
|
}
|
|
Signal8 = {
|
|
SignalName = WaterTankAbsoluteUsecTime
|
|
SignalType = float
|
|
}
|
|
Signal9 = {
|
|
SignalName = StatisticAbsoluteUsecTime
|
|
SignalType = float
|
|
}
|
|
Signal10 = {
|
|
SignalName = CollectionAbsoluteUsecTime
|
|
SignalType = float
|
|
}
|
|
Signal11 = {
|
|
SignalName = TimerRelativeUsecTime
|
|
SignalType = float
|
|
}
|
|
Signal12 = {
|
|
SignalName = WaveformGenRelativeUsecTime
|
|
SignalType = float
|
|
}
|
|
Signal13 = {
|
|
SignalName = PIDGAMRelativeUsecTime
|
|
SignalType = float
|
|
}
|
|
Signal14 = {
|
|
SignalName = WaterTankRelativeUsecTime
|
|
SignalType = float
|
|
}
|
|
Signal15 = {
|
|
SignalName = StatisticRelativeUsecTime
|
|
SignalType = float
|
|
}
|
|
Signal16 = {
|
|
SignalName = CollectionRelativeUsecTime
|
|
SignalType = float
|
|
}
|
|
}
|
|
}
|
|
+PlottingGAM = {
|
|
Class = PlottingGAM::PlottingGAM
|
|
HttpRefreshMsecTime = 500
|
|
+Window1 = {
|
|
Class = PlotWindow::PlotWindow
|
|
YAxisScale = "Linear"
|
|
OnlyPositiveY = Yes
|
|
PlotPixelHeight = 350
|
|
PlotPixelWidth = 1250
|
|
XAxisScaleFactor = 0.001
|
|
XAxisSignalName = usecTime
|
|
XLabel = "Time (ms)"
|
|
YLabel = "cm"
|
|
XAxisSignalType = uint32
|
|
PlotLastNBuffers = 3
|
|
InputSignals = {
|
|
Signal1 = {
|
|
SignalName = waterHeightReference
|
|
SignalType = float
|
|
}
|
|
Signal2 = {
|
|
SignalName = waterHeight
|
|
SignalType = float
|
|
}
|
|
}
|
|
}
|
|
+Window3 = {
|
|
Class = PlotWindow::PlotWindow
|
|
YAxisScale = "linear"
|
|
OnlyPositiveY = Yes
|
|
PlotPixelHeight = 350
|
|
PlotPixelWidth = 1250
|
|
XAxisScaleFactor = 0.001
|
|
XAxisSignalName = usecTime
|
|
XLabel = "Time (ms)"
|
|
YLabel = "Cycle time (s)"
|
|
XAxisSignalType = uint32
|
|
PlotLastNBuffers = 500
|
|
InputSignals = {
|
|
Signal1 = {
|
|
SignalName = CycleUsecTime
|
|
SignalType = float
|
|
}
|
|
}
|
|
}
|
|
}
|
|
+Collection = {
|
|
Class = CollectionGAMs::DataCollectionGAM
|
|
TimeSignalType = uint32
|
|
UsecTimeSignalName = usecTime
|
|
PreTrigger = 200
|
|
NOfAcquisitionSamples = 400000
|
|
EventTrigger = {
|
|
MaxFastAcquisitionPoints = 800
|
|
PointsForSingleFastAcquisition = 400
|
|
TimeWindow0 = {
|
|
UsecPeriod = 1000
|
|
NOfSamples = 40000
|
|
}
|
|
}
|
|
Signals = {
|
|
CLOCK = {
|
|
SignalName = usecTime
|
|
Cal1 = 1.000000e-06
|
|
SignalType = uint32
|
|
Cal0 = 0.0
|
|
JPFName = "TIME"
|
|
}
|
|
CycleTime = {
|
|
SignalName = CycleUsecTime
|
|
SignalType = float
|
|
JPFName = "CycleTime"
|
|
}
|
|
WaterReference = {
|
|
SignalName = waterHeightReference
|
|
SignalType = float
|
|
JPFName = "WaterHeightReference"
|
|
}
|
|
WaterHeight = {
|
|
SignalName = waterHeight
|
|
SignalType = float
|
|
JPFName = "WaterHeight"
|
|
}
|
|
PumpVoltageReq = {
|
|
SignalName = pumpVoltageRequest
|
|
SignalType = float
|
|
JPFName = "PumpVoltageRequest"
|
|
}
|
|
PumpVoltage = {
|
|
SignalName = pumpVoltage
|
|
SignalType = float
|
|
JPFName = "PumpVoltage"
|
|
}
|
|
PIDError = {
|
|
SignalName = pidHeightError
|
|
SignalType = float
|
|
JPFName = "PIDError"
|
|
}
|
|
PIDIntState = {
|
|
SignalName = pidIntState
|
|
SignalType = float
|
|
JPFName = "PIDIntState"
|
|
}
|
|
Signal5 = {
|
|
SignalName = TimerAbsoluteUsecTime
|
|
SignalType = float
|
|
JPFName = "TimerAbsoluteUsecTime"
|
|
}
|
|
Signal6 = {
|
|
SignalName = WaveformGenAbsoluteUsecTime
|
|
SignalType = float
|
|
JPFName = "WaveformGenAbsoluteUsecTime"
|
|
}
|
|
Signal7 = {
|
|
SignalName = PIDGAMAbsoluteUsecTime
|
|
SignalType = float
|
|
JPFName = "PIDGAMAbsoluteUsecTime"
|
|
}
|
|
Signal8 = {
|
|
SignalName = WaterTankAbsoluteUsecTime
|
|
SignalType = float
|
|
JPFName = "WaterTankAbsoluteUsecTime"
|
|
}
|
|
Signal9 = {
|
|
SignalName = StatisticAbsoluteUsecTime
|
|
SignalType = float
|
|
JPFName = "StatisticAbsoluteUsecTime"
|
|
}
|
|
Signal10 = {
|
|
SignalName = CollectionAbsoluteUsecTime
|
|
SignalType = float
|
|
JPFName = "CollectionAbsoluteUsecTime"
|
|
}
|
|
Signal11 = {
|
|
SignalName = TimerRelativeUsecTime
|
|
SignalType = float
|
|
JPFName = "TimerRelativeUsecTime"
|
|
}
|
|
Signal12 = {
|
|
SignalName = WaveformGenRelativeUsecTime
|
|
SignalType = float
|
|
JPFName = "WaveformGenRelativeUsecTime"
|
|
}
|
|
Signal13 = {
|
|
SignalName = PIDGAMRelativeUsecTime
|
|
SignalType = float
|
|
JPFName = "PIDGAMRelativeUsecTime"
|
|
}
|
|
Signal14 = {
|
|
SignalName = WaterTankRelativeUsecTime
|
|
SignalType = float
|
|
JPFName = "WaterTankRelativeUsecTime"
|
|
}
|
|
Signal15 = {
|
|
SignalName = StatisticRelativeUsecTime
|
|
SignalType = float
|
|
JPFName = "StatisticRelativeUsecTime"
|
|
}
|
|
Signal16 = {
|
|
SignalName = CollectionRelativeUsecTime
|
|
SignalType = float
|
|
JPFName = "CollectionRelativeUsecTime"
|
|
}
|
|
}
|
|
}
|
|
+EPICSStream = {
|
|
Class = EPICSGAM
|
|
UsecTimeSignalName = usecTime
|
|
TimeSignalType = uint32
|
|
SignalsServer = EPICSLib
|
|
NOfAcquisitionSamples = 2000
|
|
Signals = {
|
|
sign1 = {
|
|
SignalName = CycleUsecTime
|
|
ServerSubSampling = 100
|
|
SignalType = float
|
|
ServerName = TEST-MNGR-PCF1:STMA-CYCL-TIME-G
|
|
}
|
|
sign98 = {
|
|
SignalName = usecTime
|
|
ServerSubSampling = 100
|
|
SignalType = uint32
|
|
ServerName = TEST-MNGR-PCF1:STMA-USEC-TIME-G
|
|
}
|
|
sign99 = {
|
|
SignalName = pumpVoltage
|
|
ServerSubSampling = 100
|
|
SignalType = float
|
|
ServerName = TEST-MNGR-PCF1:STMA-PUMP-VOLT-G
|
|
}
|
|
sign100 = {
|
|
SignalName = waterHeight
|
|
ServerSubSampling = 100
|
|
SignalType = float
|
|
ServerName = TEST-MNGR-PCF1:STMA-WTER-HGHT-G
|
|
}
|
|
}
|
|
}
|
|
Online = "Timer WaveformGen PIDGAM WaterTank PlottingGAM Statistic Collection EPICSStream"
|
|
Offline = "Timer PlottingGAM Statistic EPICSStream"
|
|
}
|
|
}
|