Coda run control
This presentation is the property of its rightful owner.
Sponsored Links
1 / 16

CODA run-control PowerPoint PPT Presentation


  • 93 Views
  • Uploaded on
  • Presentation posted in: General

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.

Download Presentation

CODA run-control

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>


Cool gui and knowledge auto transfer from msql to cool

COOL GUI and knowledge auto-transfer from mSQL to COOL

db2cool


Run control gui

Run-control GUI


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.


  • Login