ScriptContext

Search SINQ Wiki:
SINQ LIN

SINQ Wiki
- Main Page
- Search SINQ Wiki
- Sample Environment
- Probenumg. Intern
- Troubleshooting SICS

This Page
- Page Info
- Printer Friendly

Referenced by
NewFeaturesInSICS

Wiki Info
- Unused pages
- Undefined pages
- RecentChanges
- Page Index
- System Info
- JSPWiki Docu
- SandBox
- OneMinuteWiki
- Create a New Page




JSPWiki v2.0.52


This is version 13. It is not the current version, and thus it cannot be edited.
[Back to current version]   [Restore this version]


ScriptContext in SEA

ScriptContext describes a system for asynchronous drivers in SICS/SEA written in Tcl. Such a driver is a collection of configuration and action scripts. The action scripts are called from the ScriptContext system with in a certain context: a sics hipadaba node and a controller object. The access to the context is implemented with the sct command.

Initialization Script

The scripts should be placed in a file with a path ~/sea/tcl/drivers/<driver-name>.tcl

If different drivers share common code, the common code may be placed in ~/sea/tcl/common/. The individual drivers may then contain only an appropriate source command.

The initialization script must have the name stdConfig::<driver-name>.

Example of an initialization script

controller std sendterminator=\r timeout=5
controllerDesc "LakeShore 336 controller"
prop startcmd "*IDN?"

obj LS336 -float rd
prop readcmd "KRDG?A"
prop readfmt "%g"

kids "LS336 settings" {
  node set -float wr
  prop readcmd "SETP?1"
  prop readfmt "%g"
  prop writecmd "SETP 1,%g"

}

In this example no action scripts have to be defined, only scripts from stdsct.tcl are used.

Explanation, line by line

controller std sendterminator=\r timeout=5

The controller object is defined, specifying the characteristics of the protocol.

controllerDesc "LakeShore 336 controller"

A description of the controller object.

prop startcmd "*IDN?"

The command prop creates a property to the last defined node, which is in this case the controller node. The property startcmd defines a command which is sent after initialization. Ideally this is a command requesting the instrument type, software version number and possibly a serial number. After an interruption of the connection, this command is sent again in order to check that the device is still the same.

obj LS336 -float rd

This creates the object



This particular version was published on 14-Sep-2010 06:27:47 UTC by MarkusZolliker.