Files
ADAndor/documentation/PerkinElmerDoc.html
2009-08-17 22:41:36 +00:00

193 lines
7.0 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>areaDetector PerkinElmer driver</title>
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
</head>
<body>
<div style="text-align: center">
<h1>
areaDetector PerkinElmer driver</h1>
<h2>
August 17, 2009</h2>
<h2>
John Hammonds, Brian Tieman, Mark Rivers</h2>
<h2>
Argonne National Laboratory and University of Chicago</h2>
</div>
<h2>
Table of Contents</h2>
<ul>
<li><a href="#Introduction">Introduction</a></li>
<li><a href="#StandardNotes">Implementation of standard driver parameters</a></li>
<li><a href="#Driver_parameters">PerkinElmer specific parameters</a></li>
<li><a href="#Unsupported">Unsupported standard driver parameters</a></li>
<li><a href="#Configuration">Configuration</a></li>
<li><a href="#MEDM_screens">MEDM screens</a></li>
<li><a href="#Performance_measurements">Performance measurements</a> </li>
<li><a href="#Restrictions">Restrictions</a> </li>
</ul>
<h2 id="Introduction" style="text-align: left">
Introduction</h2>
<p>
This is a driver for the flat-panel amorphous silicon detectors from <a href="http://optoelectronics.perkinelmer.com/catalog/Category.aspx?CategoryName=X-Ray+Cameras">
PerkinElmer</a>. It implements many of the parameters in asynNDArrayDriver.h and
ADDriver.h. It also implements a number of parameters that are specific to the PerkinElmer
detectors.</p>
<p>
The driver is based upon the library provided by PerkinElmer. It only runs on Microsoft
Windows computers.
</p>
<p>
ADD ADDTIONAL INTRODUCTORY TEXT HERE.</p>
<p>
This driver inherits from ADDriver. The <a href="areaDetectorDoxygenHTML/class_perkin_elmer.html">
PerkinElmer 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 PerkinElmer driver implements some of the
standard driver parameters.
</p>
<p>
DOCUMENT IMPLEMENTATION OF STANDARD DRIVER PARAMETERS IN THIS TABLE</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>
Enum name</th>
<th>
EPICS record name</th>
<th>
Description</th>
</tr>
<tr>
<td>
ADNumImages</td>
<td>
$(P$(R)NumImages</td>
<td>
Controls the number of images to acquire when ADImageMode is ADImageMultiple.</td>
</tr>
</tbody>
</table>
<p>
It is useful to use NDPluginROI to define an ROI containing the entire PerkinElmer 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">
PerkinElmer specific parameters</h2>
<p>
The PerkinElmer 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 enum names have been split into 2 lines, but these are just a single name, for
example <code>PerkinElmerXXX</code>.
</p>
<table border="1" cellpadding="2" cellspacing="2" style="text-align: left">
<tbody>
<tr>
<td align="center" colspan="7">
<b>Parameter Definitions in PerkinElmer.h and EPICS Record Definitions in PerkinElmer.template</b></td>
</tr>
<tr>
<th>
Enum name</th>
<th>
asyn interface</th>
<th>
Access</th>
<th>
Description</th>
<th>
drvUser string</th>
<th>
EPICS record name</th>
<th>
EPICS record type</th>
</tr>
<tr>
<td>
PE_NumFrameBuffers</td>
<td>
asynInt32</td>
<td>
r/w</td>
<td>
Number of frame buffers to use</td>
<td>
PE_NUM_FRAME_BUFFERS</td>
<td>
$(P)$(R)PENumFrameBuffers<br/>
$(P)$(R)PENumFrameBuffers_RBV</td>
<td>
longout<br/>
longin</td>
</tr>
</tbody>
</table>
<h2 id="Unsupported">
Unsupported standard driver parameters</h2>
<p>
The PerkinElmer driver does not support the following standard driver parameters
because they are not supported in the PerkinElmer library:</p>
<ul>
<li>List any unsupported parameters here (WORK NEEDED)</li>
</ul>
<h2 id="Configuration">
Configuration</h2>
<p>
The PerkinElmer driver is created with the perkinElmerConfig command, either from
C/C++ or from the EPICS IOC shell.</p>
<pre>int PerkinElmerConfig(const char *portName, int maxSizeX, int maxSizeY, int dataType,
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/_perkin_elmer_8cpp.html">
PerkinElmer.cpp documentation</a> and in the documentation for the constructor
for the <a href="areaDetectorDoxygenHTML/class_perkin_elmer.html">PerkinElmer class</a>.
</p>
<p>
There an example IOC boot directory and startup script (<a href="perkin_elmer_st_cmd.html">iocBoot/iocPerkinElmer/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 PerkinElmer detector.
Note that the general purpose screen ADBase.adl can be used, but it exposes many
controls that are not applicable to the PerkinElmer, and lacks some fields that
are important for the PerkinElmer.</p>
<p>
<code>PerkinElmer.adl</code> is the main screen used to control the PerkinElmer
driver.
</p>
<div style="text-align: center">
<h3 style="text-align: center">
PerkinElmer.adl</h3>
<img alt="PerkinElmer.png" src="PerkinElmer.png" /></div>
<h2 id="Performance_measurements">
Performance measurements</h2>
<p>
The following measurements were done to demonstrate the performance that can be
obtained with the areaDetector PerkinElmer driver.</p>
<p>
PUT A TABLE OF PERFORMANCE MEASUREMENTS HERE</p>
<h2 id="Restrictions">
Restrictions</h2>
<p>
The following are some current restrictions of the PerkinElmer driver:</p>
<ul>
<li>DOCUMENT ANY IMPORTANT RESTRICTIONS OF THE PERKIN ELMER DRIVER HERE</li>
</ul>
</body>
</html>