status of intercommunication on feecontrol
DESCRIPTION
Status of InterCommunication on FeeControl. Meeting Report Communication between DCS-Layers. State of 2003-09-08. Sebastian Bablok Christian Kofler Ralf Keidel. http://www.ztt.fh-worms.de. Status of InterCommunication on FeeControl. PVSS Client (DIM - Client). Layers. PVSS Server - PowerPoint PPT PresentationTRANSCRIPT
Status of InterCommunication on FeeControl
Meeting Report
Communication between DCS-Layers
State of 2003-09-08
Sebastian Bablok Christian Kofler
Ralf Keidel
http://www.ztt.fh-worms.de
FEE Server(DIM - Server on RCU - Card)
FEE Server(DIM - Server on RCU - Card)
FEE Server(DIM - Server)
PVSS Server(DIM - Server)
FEE Client(DIM - Client)
InterCom Layer(Application layer)
DatabaseAccess
PVSS Client (DIM - Client) Layers
2003-09-08, http://www.ztt.fh-worms.de
Status of InterCommunication on FeeControl
CE (Detector specific)
Status of InterCommunication on FeeControl
TOC
• Interface FeeServer - ControlEngine
• Sequence of communication FeeServer - ControlEngine
• Data access on InterComLayer
2003-09-08, http://www.ztt.fh-worms.de
Interface FeeServer - Control Engine
2003-09-08, http://www.ztt.fh-worms.de
Status of InterCommunication on FeeControl
Interface called by implemented by amount of calls
void initializeCE() FeeServer CE once
int publish(...) CE FeeServer zero to several times on start up
void signalCEready() CE FeeServer once
int issue(...) FeeServer CE n - times
void cleanUpCE() FeeServer CE once
Interface FeeServer Control Engine
2003-09-08, http://www.ztt.fh-worms.de
Status of InterCommunication on FeeControl
void initializeCE()
Initializes the ControlEngine on the board.
• bus driver can be loaded
• Items for monitoring can be published
• runs in its own thread (controlable from FeeServer)
Interface FeeServer Control Engine
2003-09-08, http://www.ztt.fh-worms.de
Status of InterCommunication on FeeControl
int publish(Item* item)
Informs FeeServer about values for monitoring.
• gives „Item“ to the FeeServer • name (char*) and location (volatile float*) [value]
• returns an error code, if call was unsuccessful, else 0
• has to be called for every Item to be published
Interface FeeServer Control Engine
2003-09-08, http://www.ztt.fh-worms.de
Status of InterCommunication on FeeControl
void signalCEready()
Informs FeeServer that initialization has been finished
• the termination of this thread is in charge of the CE
• the init - thread has to continue, if „publish()“ has been called.
Interface FeeServer Control Engine
Status of InterCommunication on FeeControl
int issue(char* command, char** result, int* size)
FeeServer relays a command to the CE and retrievesthe result of it.
• command: pointer to the command data (allocated and freed by FeeServer)
• result: pointer to the pointer where CE stores the result data (allocated by CE, freed by FeeServer)
• size: when called: size of command, when returning: size of result 2003-09-08,
http://www.ztt.fh-worms.de
Interface FeeServer Control Engine
Status of InterCommunication on FeeControl
int issue(char* command, char** result, int* size)
• returns an error code, if call was unsuccessful, else 0
• is executed in an own thread to determine if CE is working (Watchdog)
• thread will be terminated by FeeServer after timeout, if CE gets stuck
2003-09-08, http://www.ztt.fh-worms.de
Interface FeeServer Control Engine
2003-09-08, http://www.ztt.fh-worms.de
Status of InterCommunication on FeeControl
void cleanUpCE()
Tells CE to clean up to shut down properlywhen the FeeServer exits.
Status of InterCommunication on FeeControl
2003-09-08, http://www.ztt.fh-worms.de
FeeServerinit process
CEinitializeCE()
signalCEready()
publish(Item*)
start server
Sequence of Communication(initialization, called once)
Status of InterCommunication on FeeControl
2003-09-08, http://www.ztt.fh-worms.de
FeeServercommandreceived
CEissue(...)
return result
deliver resultto FeeClient
Sequence of Communication(serving state, executed n-times)
executeCommand
Status of InterCommunication on FeeControl
2003-09-08, http://www.ztt.fh-worms.de
FeeServerexit - command
received
CE
cleanUpCE(...)
clean up FeeServerand exit
Sequence of Communication(clean up, called once)
do the cleanup stuff
Status of InterCommunication on FeeControl
2003-09-08, http://www.ztt.fh-worms.de
Data access on InterComLayer
• Structure of Database ???
• Naming conventions ???
• When will it be defined ???
?