scan_mar()

* = erase_mar()
* = expose_mar( motor, delta, sample_time [, timer_id, clock_id])
* = scan_mar( mode, file_name, sample_time)

These functions operate the MAR image plate scanner via the PC NODE_MAR (e.g. hasipbw5).

If SSH_MAR = 1 (exp_ini.exp), Online uses ssh to copy command files to the MAR node. The user has to exchange ssh keys in a way that the Online user has full access to mar345NODE_MAR via ssh (test: ssh -l mar345 NODE_MAR ls). If the flag SSH_MAR is not defined, Online uses rsh.

Before ONLINE calls scan_mar() and erase_mar() a client has to be started on NODE_MAR:

hasipbw5> scan345 [-host 192.0.2.1] [-port 4441]
The client talks to the scanner on a local ethernet.

The client displays log messages. The follwing messages can be ignored:
scan345: Diameter increased for next scan mode!
scan345: Plate will be erased first ...

The function erase_mar() erases the image plate. It relies on the script NODE_MAR:/home/mar345/bin/mar_erase.

The image plate scan is performed by scan_mar(). This function relies on the script NODE_MAR:/home/mar345/bin/mar_scan. It requires the following arguments:

mode
The resolution.

0 2300 pixels, 345mm diameter, 0.15 mm pixelsize
1 2000 pixels, 300mm diameter, 0.15 mm pixelsize
2 1600 pixels, 240mm diameter, 0.15 mm pixelsize
3 1200 pixels, 180mm diameter, 0.15 mm pixelsize
4 3450 pixels, 345mm diameter, 0.10 mm pixelsize
5 3000 pixels, 300mm diameter, 0.10 mm pixelsize
6 2400 pixels, 240mm diameter, 0.10 mm pixelsize
7 1800 pixels, 180mm diameter, 0.10 mm pixelsize

file_name
The directory of the output files has to be specified in NODE_MAR:/home/mar345/bin/mar_scan

sample_time
A parameter that is stored in the image header.

The function expose_mar() moves a motor during the time of an image plate exposure, e.g.: * = expose_mar( mot12, 1, 5). The default for timer_id and clock_id are t3 and t4. These names are usually assigned to the channels of a ddual gate generator (DGG).

Timer_id is used to open the shutter and to provide the gate for an arbitrary number of monitor counters.

The only purpose of clock_id is to ensure that the time interval between the leading edge that opens the shutter and the start of the motor movement does not exceed some value. The function returns the megaherz tics that correspond to this interval.

The function expose_mar() is supposed to be used in DUMMY Scans in the during~ macro. It executes the following procedure:

e.g.:
* = scan_mar( 2, test, 12)
* = erase_mar()

There is an example which demonstrates how the images plate scanner is used during a fast scan, see section 15.11