coda run control n.
Download
Skip this Video
Download Presentation
CODA run-control

Loading in 2 Seconds...

play fullscreen
1 / 16

CODA run-control - PowerPoint PPT Presentation


  • 129 Views
  • Uploaded on

CODA run-control. JLAB DAQ Group V. Gyurjyan C. Timmer A. Smith New Horizons governor school. Run-control history. Eiffel C++ Java. Run-control design requirements. Extendable. Network distributed. Platform independent. Software centric. Flexible. Dynamic hierarchical.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'CODA run-control' - erno


Download Now An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
coda run control

CODA run-control

JLAB DAQ GroupV. Gyurjyan C. Timmer

A. Smith

New Horizons governor school

run control history
Run-control history
  • Eiffel
  • C++
  • Java
run control design requirements
Run-control design requirements
  • Extendable.
  • Network distributed.
  • Platform independent.
  • Software centric.
  • Flexible.
  • Dynamic hierarchical.
  • Synchronization via message passing.
  • Real-time hardware actions and knowledge processing.
  • Maintainable code replicating the old run-control functionality.
  • Integration with the detector control and legacy software systems.
agent properties
Agent properties
  • Autonomy.
  • Proactive intelligence.
  • Adaptive intelligence.
  • Temporal continuity.
  • Mobility.
  • Rationality/benevolence.
multi agent approach
Multi - Agent approach
  • Distributes computational resource.
  • Accommodates legacy systems.
  • Peer-to-peer model.
  • Global coordination.
  • High performance.
fipa foundation for intelligent physical agents
FIPA- Foundation for Intelligent Physical Agents
  • FIPA framework (http://www.fipa.org).
  • FIPA is a specification NOT an implementation.
  • Directory Facilitator (DF).
  • Agent Management System (AMS).
  • Agent Communication Channel (ACC) .
  • Java Agent DEvelopment framework (JADE) -FIPA specification JAVA implementation (http://sharon.cselt.it/projects/jade).
run control platform architecture
Run-Control Platform Architecture

Communication through message passing.

Message can contain any arbitrary objects.

JVM1

JVM2

NODE3

HV

hardware

cool control oriented ontology language
COOL- Control Oriented Ontology Language
  • Based on RDFS (Resource Definition Framework Schema).
  • Control domain knowledge creation and reuse.
  • Knowledge base sharing.
  • Domain knowledge and operational knowledge separation.
  • Domain knowledge analyses.
  • Extensible via XML-namespaces and RDF modularization.
xml or rdf
XML or RDF?
  • After all both are text constructs.
  • Duplet vs. triplet to transfer human knowledge.

XML

RDF

Tag

Value

Resource

Subject

Predicate

Property

Object

Value

cool taxonomy
COOL taxonomy

Subjects/Objects

Predicates

  • Control
  • Component
  • Process
  • Command
  • Data
  • Node
  • Loop
  • Option
  • hasComponentName
  • hasComponentType
  • hasPriority
  • hasProcess
  • Differentiate
  • hasSession
  • hasRunType
  • hasCode
  • hasNode
  • hasFirst
  • hasNext
  • hasInput
  • hasOutput
  • resultNotify
  • acceptData
  • acceptStatus
  • hasCommand
  • hasCheckWith
  • isPartOf
  • hasData
  • hasCommandName
  • hasCommandType
  • hasExpectedOk
  • hasTimeOut
  • hasLoop
  • returnData
  • inputdata
  • hasDataContent
  • hasDataType
  • hasDataCardinality
  • hasTimeStamp
  • hasSemantics
  • hasNodename
  • hasIP
  • isLocal
  • hasUser
  • hasPasswd
  • hasDataFile
  • hasDataLimit
  • hasEventLimit
  • hasTokenInterval
  • Splitmb
  • hasOption
  • hasComponent
  • acceptsComponent
  • hasScrupulosity
  • loopRepete
  • loopDelay
  • stopAt
extending run control state machine
Extending run-control state machine
  • Any control process can be defined as a CODA component.
  • Every component can have associated processes.
  • Each process can be attached to the CODA standard state machine transition by means of isPartOf COOL predicate.
  • COOL process is RDF subclass of the COOL component.
  • Every process has associated COOL command.
  • COOl command can have expectedOk predicate.

Control A >> hasProcess >> B

Process B >> isPartOf >> download

B1 >> expectedOk >> Output String

Process B >> hasProcess >> B1

Process B >> hasProcess >> Bn

jas data server description in cool
JAS data server description in COOL

<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:rdfs='http://www.w3.org/2000/01/rdf-schema#' xmlns:cool='http://ankaa.jlab.org/~gurjyan/COOL/cool#'><cool:Control rdf:ID="JasDataServer"> <cool:hasCategory

rdf:resource="http://ankaa.jlab.org/~gurjyan/COOL/cool#internal"/> <cool:hasDependency rdf:resource="#JDSDependency"/> <cool:hasProcess rdf:resource="#StartServer"/> <cool:hasProcess rdf:resource="#MonitorHistogram"/></cool:Control><cool:Dependency rdf:ID="JDSDependency"> <cool:hasHardware rdf:parseType="Resource"> <cool:hasIP>129.57.167.14</cool:hasIP> <cool:hasNodeName>clon10.jlab.org</cool:hasNodeName> </cool:hasHardware> <cool:hasLibrary rdf:parseType = "Resource"> <cool:hasName>jas.server.HistogramServer</cool:hasName>

<cool:hasLocation>/usr/local/clas/jar/jas.jar</cool:hasLocation> <cool:hasName>hep.analyses.Histogram</cool:hasName> <cool:hasLocation>/usr/local/clas/jar/hep.jar</cool:hasLocation>

</cool:hasLibrary> <cool:environment>JAVA</cool:environment></cool:Dependency>

<cool:Process rdf:ID="StartServer"> <cool:hasTransaction rdf:parseType="Resource" > <cool:operationType rdf:resource="http://ankaa.jlab.org/~gurjyan/COOL/cool#construct"/> <cool:fnactionName>HistogramServer</cool:functionName> <cool:hasInput rdf:parseType="Resource"> <cool:Type rdf:resource="http://ankaa.jlab.org/~gurjyan/COOL/cool#string"/> </cool:hasInput> </cool:hasTransaction> <cool:repeat>1</cool:repeat></cool:Process><cool:Process rdf:ID="MonitorHistogram"> <cool:hasTransaction rdf:parseType="Resource" > <cool:operationType rdf:resource="http://ankaa.jlab.org/~gurjyan/COOL/cool#construct"/> <cool:fnactionName>Histogram</cool:functionName> <cool:hasInput rdf:parseType="Resource"> <cool:Type rdf:resource="http://ankaa.jlab.org/~gurjyan/COOL/cool#string"/> </cool:hasInput> </cool:hasTransaction> <cool:hasTransaction rdf:parseType="Resource" > <cool:functionName>fill</cool:functionName> <cool:hasInput rdf:parseType="Resource"> <cool:Type rdf:resource="http://ankaa.jlab.org/~gurjyan/COOL/cool#long"/> </cool:hasInput> </cool:hasTransaction> <cool:hasCategory rdf:resource= "http://ankaa.jlab.org/~gurjyan/COOL/cool#ondemand"/></cool:Process></rdf:RDF>

conclusion
Conclusion
  • New run-control is ready to be released.
  • Extended graphing and monitoring capabilities.
  • Backwards compatibility between old and new run configuration files.
  • Agent platform administration and fault tolerance.
  • Integration of the foreign processes through DP, vmeServer and Shell interfaces.
  • Process abstraction has been implemented through the newly developed control oriented ontology language.

Future plans

  • Integration of the EPICS processes through the channel access interface.
  • Integration of the CAEN HV control systems through the CAEN OPC server interface.
  • Develop agent supporting JXTA peer to peer specification.
  • Run-control web interface.