marmus
is a graphical user interface (GUI) to operate the Incoatec "IuS" generator
and the "marmus" version thereof. The generator can be controlled by a PC
or mini PC via a USB interface. The program can directly control the hardware
but it can also connect to another instance of the program running in
server mode. I.e. the program offers both TCP/IP-server and client functionality.
As a server, the program must be connected to the hardware. As a client,
the program can run on any other PC.
Hostname (or IP-address) to use for connecting
to the host running the marmus server.
Default: --host 192.0.2.100
--l LOGFILE
Use LOGFILE as log file
Default: -log $MARLOGDIR/marmus.log
-i, --interval MS
Update generator status
every MS milliseconds.
Default: -i 1000
+p, ++password PASSWORD
In order to use the program, a
password must be provided. Please contact marXperts in order to obtain a
password.
Default: none.
-p, --port PORT-NO
Socket port number to use for connecting
to the host running the marmus server.
Default: -p 4455
-s, --simulate
Start program without hardware connected.
Default: try to connect to hardware.
+s, +server PORT-NO
Run program in
TCP/IP-server mode, i.e. accept input from other applications on port PORT-NO.
Default: do not run as server.
-v, --verbose
Writes more information to stdout.
-x, --gui
Do not run the program in graphics mode but only as terminal version.
This may be useful when running the program as server on a remote host
not connected to a display. The program can either accept commands via the
TCP/IP-socket or via plain input on the terminal. In both cases, there is
a simple ASCII command interface. See chapter COMMANDS for further details.
Default: use GUI.
In order to operate the Incoatec
from some software instead from the frontpanel of the IuS-controller, the
generator must be set to "Remote mode". This is done by selecting "Remote
mode" on the LCD-front panel. When operating the generator in "remote mode",
the local control on the instrument itself is disabled. I.e. you cannot operate
the shutter or modify the power settings on the frontpanel while in "Remote
mode". You can still set the generator into "Local mode" on the frontpanel.
If the program is still running, the generator will not accept further
input from the program but it s going to report the power settings. The
program might not report the status of the shutter correctly, though.
Please note, that it is ESSENTIAL to push the "HV ON" button manually
on the frontpanel after starting up the generator, even when in "Remote
mode". The software will not be able to control the generator if the "HV
ON" button has not been pushed.
In principle, there are only 3 useful
states of operation of the generator. Either the X-rays are OFF, or they
are in low power STANDBY mode or they are in NORMAL OPERATION mode. Hence,
from the user interface you select one of the 3 states. Setting the high
voltage or current to other than the default values (50 kV, 600 uA) is
possible, but discouraged.
Instead of operating
the GUI with the mouse, the program may receive instructions via the keyboard
(i.e. on the same command line where the program has been started) or - when
operated in TCP/IP-server mode - also via a TCP/IP-socket (e.g. via telnet).
See section COMMANDS for details.
All commands entered via the
keyboard or a socket interface are keyworded. Lines starting with #
or ! will be treated as comment lines and will not be processed. Currently
the following commands are implemented. The mandatory part of the keyword
is given in uppercase letters. Keywords or part of keywords in square brackets
[ ... ] are optional. In most cases, the keywords can be given in uppercases
or lowercases.
Keywords split up in 3 sections:
@file | DEBUG | OPEN | CLOSe | QUIT | VERBose | UNIX | CONNect | DISConnect
| RECOnnect | HELP | HOST | PORT | SHOW | HEARtbeat | SET
@filename | INCLude
filename
Load instructions from file <filename>.
Example: @marmus.params
OPEN
Opens physical connection to generator
(via USB).
CLOS
Closes physical connection to generator (via USB).
CONNect
| HELLo
Opens TCP/IP-socket connection to server program running on host
’HOSTNAME’ and port ’PORT-NO’.
DISConnect | BYE
Closes TCP/IP-socket connection
to server program.
DEBUG [<value>]
Increase debug level or set to <value>.
Example: DEBUG 2
HELP | ?
Prints online help.
HEARtbeat
Toggles
printing of lines showing the current generator status every second on
standard output and/or the socket interface.
Default: do not print.
HOST [<hostname>]
Use <hostname> to connect to the server
instance of program marmus.
Example: HOST 192.0.2.100
PORT [<no>]
Use <no> as TCP/IP-port number to
connect to the server instance of program marmus.
Example: PORT 4455
QUIT | EXIT
Terminate program.
Example: EXIT
SHOW [ALL | SHUTter | XRAY | TEMPerature | TIME | RAW]
Prints the current status of the generator, either all the known values
or just the shutter status, the X-ray settings (kV, uA), the temperature
or the hours of operation of the tube. The result is returned as a single
keyworded line, e.g. "SHOW SHUTTER" may return "SHUTTER OPEN". The special
command SHOW RAW is only use for use on a TCP/IP-socket. This command returns
7 32-bit integers as binary raw data containing the
active command number
shutter status (0=closed, 1=open)
high voltage in Volt (i.e. kV*1000)
current
in nano Ampere (i.e. uA*1000)
24 Volt power supply in milliVolt (i.e. PSU24
*1000)
temperature in milli Celsius (i.e. C*1000)
hours of operation multiplied
by 1000 This is might be useful for easier interpretation for other programs.
Default: SHOW ALL
SET [CONDition <days>] [WARMUP <hours>]
For the
Incoatec there are smooth procedures to ramp up the tube after having powered
off for a while. Running these procedures is strongly suggested. A tube
conditioning protocol runs for approx. 2 hours and should be run after the
generator has been powered off for more than 56 days. A much shorter warmup
protocol taking 3 min time is suggested after being idle for 8 hours or
more. The program marmus keeps track of the last powerdown time and will
automatically suggest to run the corresponding protocol. The program relies
on a file $MARLOGDIR/.marmus.off for this purpose. Running the protocols will
increase the lifetime of the tube.
Example: SET CONDITION 56 WARMUP 8
VERBose [<value>]
Increase verbosity
level or set to <value>.
Example: VERBOSE 0
UNIX | % [<string>]
Anything after the keyword
will be treated as a shell command. The command messages produced on stdout
will be sent to the network socket. BEWARE: if the program marmus is being
run with super-user privileges, any user will be able to run any command
on the PC!
Example: UNIX ls /home/mar555/data
SHUTter | STANDby | FULL | POWErdown
| CONDition | WARMup | KV | UA | CURRent | HV | FILAment
SHUTter [ON | OFF |
0 | 1]
Open or close the X-ray shutter of the generator. Whithout argument:
close shutter.
Example: SHUTTER 1
RESEt
Reset the hardware faults.
KV | VOLT<value>
Change
the set point for the high voltage to <value> kV. Default is 50.0 kV.
Example: VOLT 45.0
CURRent | UA<value>
Change the set point for the
current to <value> uA (microAmpere). Default is 600 uA.
Example: CURRENT 600
XRAY [[ FULL | NORMal | ON | 1 ] | [POWErdown]
[ OFF | 0 ] | STANdby]
Turn X-rays on to FULL power or to STANdby or gently
POWErdown the generator or turn the HV abruptly off. Valid shortcuts are:
XRAY POWErdown = POWErdown, XRAY STANdby = STANdby and XRAY FULL = FULL.
Example: XRAY STANDBY
FILAment [LIMIT <value1>] [PREHeat <value2>]
Change the set point for the filament limit to <value1> mA (milliAmpere).
Default is 3200 mA for a Cu tube. Change the set point for the filament
preheat current to <value2> mA (milliAmpere). Default is 2000 mA for a Cu
tube.
Example: FILAMENT LIMIT 3200 PREHEAT 2000