forked from epics_driver_modules/motorBase
Removed old stuff about mar345 left over from document creation; document is still very incomplete
This commit is contained in:
@@ -206,176 +206,5 @@
|
||||
The asynMotorAxis base class defines the following methods:</p>
|
||||
<ul>
|
||||
</ul>
|
||||
<p>
|
||||
This driver inherits from <a href="areaDetectorDoc.html#ADDriver">ADDriver</a>.
|
||||
It implements many of the parameters in <a href="areaDetectorDoxygenHTML/asyn_n_d_array_driver_8h.html">
|
||||
asynNDArrayDriver.h</a> and in <a href="areaDetectorDoxygenHTML/_a_d_driver_8h.html">
|
||||
ADArrayDriver.h</a>. It also implements a number of parameters that are specific
|
||||
to the mar345 detector. The <a href="areaDetectorDoxygenHTML/classmar345.html">mar345
|
||||
class documentation</a> describes this class in detail.</p>
|
||||
<h2 id="StandardNotes" style="text-align: left">
|
||||
Implementation of standard driver parameters</h2>
|
||||
<p>
|
||||
The following table describes how the mar345 driver implements some of the standard
|
||||
driver parameters.
|
||||
</p>
|
||||
<table border="1" cellpadding="2" cellspacing="2" style="text-align: left">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td align="center" colspan="3">
|
||||
<b>Implementation of Parameters in asynNDArrayDriver.h and ADDriver.h, and EPICS Record
|
||||
Definitions in ADBase.template and NDFile.template</b> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>
|
||||
Parameter index variable </th>
|
||||
<th>
|
||||
EPICS record name </th>
|
||||
<th>
|
||||
Description </th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
ADAcquire </td>
|
||||
<td>
|
||||
$(P)$(R)Acquire </td>
|
||||
<td>
|
||||
Setting this to 1 starts an acquisition sequence. If ADNumImages is greater than
|
||||
1 then it acquires multiple frames. For each frame it does the following:
|
||||
<ol>
|
||||
<li>Erases the detector if mar345EraseMode is "Before expose".</li>
|
||||
<li>Opens the shutter if either the mar345 shutter or EPICS shutter controls are enabled.</li>
|
||||
<li>Waits for the desired exposure time.</li>
|
||||
<li>Closes the shutter if either the mar345 shutter or EPICS shutter controls are
|
||||
enabled.</li>
|
||||
<li>Scans the detector and saves the file.</li>
|
||||
<li>Erases the detector if mar345EraseMode is "After scan".</li>
|
||||
</ol>
|
||||
If ADAcquire is set to 0 during exposure (step 3 above) then it proceeds immediately
|
||||
to step 4, finishes collecting the current frame and stops the acquisition sequence
|
||||
if ADNumImages is greater than 1. If mar345Abort is set to 0 then the acquisition
|
||||
is terminated as soon as possible without saving the data. Note however that commands
|
||||
to the mar345 server to erase, change mode, or scan cannot be aborted, so the driver
|
||||
must wait for these commands to complete. </td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>
|
||||
It is useful to use NDPluginROI to define an ROI containing the entire mar345 detector.
|
||||
The MaxValue_RBV PV in this ROI can be monitored to make sure that the 16-bit limit
|
||||
of 65,535 is not being approached in any pixel.
|
||||
</p>
|
||||
<h2 id="Driver_parameters" style="text-align: left">
|
||||
mar345 specific parameters</h2>
|
||||
<p>
|
||||
The mar345 driver implements the following parameters in addition to those in asynNDArrayDriver.h
|
||||
and ADDriver.h. Note that to reduce the width of this table the parameter index
|
||||
variable names have been split into 2 lines, but these are just a single name, for
|
||||
example <code>mar345ScanSize</code>.
|
||||
</p>
|
||||
<table border="1" cellpadding="2" cellspacing="2" style="text-align: left">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td align="center" colspan="7">
|
||||
<b>Parameter Definitions in mar345.cpp and EPICS Record Definitions in mar345.template</b>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>
|
||||
Parameter index variable </th>
|
||||
<th>
|
||||
asyn interface </th>
|
||||
<th>
|
||||
Access </th>
|
||||
<th>
|
||||
Description </th>
|
||||
<th>
|
||||
drvInfo string </th>
|
||||
<th>
|
||||
EPICS record name </th>
|
||||
<th>
|
||||
EPICS record type </th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center" colspan="7">
|
||||
<b>Readout parameters</b> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
mar345<br />
|
||||
ScanSize </td>
|
||||
<td>
|
||||
asynInt32 </td>
|
||||
<td>
|
||||
r/w </td>
|
||||
<td>
|
||||
The detector diameter to read out. Choices are 180mm, 240mm, 300mm, and 345mm.
|
||||
</td>
|
||||
<td>
|
||||
MAR_SIZE </td>
|
||||
<td>
|
||||
$(P)$(R)ScanSize<br />
|
||||
$(P)$(R)ScanSize_RBV </td>
|
||||
<td>
|
||||
mbbo
|
||||
<br />
|
||||
mbbi </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
mar345<br />
|
||||
ScanResolution </td>
|
||||
<td>
|
||||
asynInt32 </td>
|
||||
<td>
|
||||
r/w </td>
|
||||
<td>
|
||||
The pixel size to use when reading the detector out. Choices are 0.10 and 0.15mm.
|
||||
</td>
|
||||
<td>
|
||||
MAR_RESOLUTION </td>
|
||||
<td>
|
||||
$(P)$(R)ScanResolution<br />
|
||||
$(P)$(R)ScanResolution_RBV </td>
|
||||
<td>
|
||||
mbbo
|
||||
<br />
|
||||
mbbi </td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<h2 id="Configuration">
|
||||
Configuration</h2>
|
||||
<p>
|
||||
The mar345 driver is created with the mar345Config command, either from C/C++ or
|
||||
from the EPICS IOC shell.</p>
|
||||
<pre>int mar345Config(const char *portName, const char *serverPort,
|
||||
int maxBuffers, size_t maxMemory,
|
||||
int priority, int stackSize)
|
||||
</pre>
|
||||
<p>
|
||||
For details on the meaning of the parameters to this function refer to the detailed
|
||||
documentation on the mar345Config function in the <a href="areaDetectorDoxygenHTML/mar345_8cpp.html">
|
||||
mar345.cpp documentation</a> and in the documentation for the constructor for
|
||||
the <a href="areaDetectorDoxygenHTML/classmar345.html">mar345 class</a>.
|
||||
</p>
|
||||
<p>
|
||||
There an example IOC boot directory and startup script (<a href="mar345_st_cmd.html">iocBoot/iocMAR345/st.cmd)</a>
|
||||
provided with areaDetector.
|
||||
</p>
|
||||
<h2 id="MEDM_screens" style="text-align: left">
|
||||
MEDM screens</h2>
|
||||
<p>
|
||||
The following show the MEDM screens that are used to control the mar345 detector.
|
||||
Note that the general purpose screen ADBase.adl can be used, but it exposes many
|
||||
controls that are not applicable to the mar345, and lacks some fields that are important
|
||||
for the mar345.</p>
|
||||
<p>
|
||||
<code>mar345.adl</code> is the main screen used to control the mar345 driver.
|
||||
</p>
|
||||
<div style="text-align: center">
|
||||
<h3 style="text-align: center">
|
||||
mar345.adl</h3>
|
||||
<img alt="mar345.png" src="mar345.png" /></div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user