knobconfig assigns knobs to devices
according to the input file. Knob assignments are active
only during program execution.
knobconfig SR_tunes.coknwhere file
SR_tunes.cokn contains weights for the various
quadrupole magnets necessary for independent tune adjustments.
Part of the first data set of the file SR_tunes.cokn
is shown below:
SDDS1
&description
text="Knob Assignment Specification"
contents="knob assignment specification"
&end
¶meter name=ControlName, type=string &end
¶meter name=KnobDescription, type=string &end
¶meter name=ControlType, type=string &end
¶meter name=ControlUnits, type=string &end
¶meter name=Gain type=double &end
&column name=ControlName type=string &end
&column name=Weight type=double &end
&data mode=ascii, &end
S:NUx:fine ! ControlName
Triplet knob for x tune (0.0005/click) ! KnobDescription
dev ! ControlType
? ! ControlUnits
0.5 ! Gain
240 ! number of rows
S1A:Q1 1.488923268326000e-03
S1A:Q2 5.958927747443000e-03
S1A:Q3 4.242561180246000e-03
S1B:Q3 4.242561180246000e-03
S1B:Q2 5.958927747443000e-03
S1B:Q1 1.488923268326000e-03
S2A:Q1 1.488923268326000e-03
S2A:Q2 5.958927747443000e-03
...
usage: knobconfig spec-file
purpose: Configures knobs.
Assigns knobs to devices and process variables
according to spec-file. Assignments are active
only during program execution. In general, it
is best not to run this utility in background.
Sample spec-file. Note that ControlMessage parm is optional:
SDDS1
&description
text="Knob Assignment Specification"
contents="knob assignment specification"
&end
¶meter name=ControlName
type=string
&end
¶meter name=ControlType
type=string
&end
¶meter name=ControlMsg
type=string
&end
¶meter name=ControlUnits
type=string
&end
¶meter name=Gain
type=double
&end
&column name=ControlName
type=string
&end
&column name=Weight
type=double
&end
&data mode=ascii
no_row_counts=1
&end
COMPDEVICENAME
dev
set
tune
0.01
P:Q1 1.0000
P:Q2 1.1134
PTB:Q3
dev
set
Amps
0.1
PTB:Q4:CurrentAO
pv
-
Amps
0.1
Each data set in the input file defines the weights of the devices controlled by one knob. The required parameters are:
dev".
KnobDesciption and Units may be implemented in future versions
of knobconfig. For now, they may be defined as a data preparation aid.
The required columns are:
Gain, these are the values by which each device
setpoints will be changed by one tick of the knob.