Files
ADAndor/documentation/areaDetector.html
2009-04-06 21:56:06 +00:00

506 lines
14 KiB
HTML
Executable File

<!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: EPICS software for area detectors</title>
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
</head>
<body>
<h1>
areaDetector: EPICS software for area detectors</h1>
<p>
Module Owner: Mark Rivers: University of Chicago</p>
<p>
This page is the home of <b>areaDetector</b>, an application for controlling area
(2-D) detectors, including CCDs, pixel array detectors, and online imaging plates.
</p>
<p>
<b>NOTE:</b> This module replaces the <a href="http://cars.uchicago.edu/software/epics/ccd.html">
ccd</a> and <a href="http://cars.uchicago.edu/software/epics/epilatusROI.html">pilatusROI</a>
modules. These older modules will no longer be supported, and users are encouraged
to convert to this new areaDetector software.</p>
<p>
Devices supported in <b>areaDetector</b> include:</p>
<p>
From <a href="http://www.dectris.com">Dectris</a>
</p>
<ul>
<li>The <a href="http://www.dectris.com/sites/pilatus100k.html">Pilatus</a> pixel-array
detector.</li>
</ul>
<p>
From <a href="http://www.prosilica.com">Prosilica</a>
</p>
<ul>
<li>High-speed, high-resolution CCD cameras. These use GigE and Firewire interfaces.</li>
</ul>
<p>
From <a href="http://www.adsc-xray.com/">ADSC</a>
</p>
<ul>
<li>Large CCD detectors for x-ray diffraction. This support is from Lewis Muir of
IMCA-CAT at the APS. </li>
</ul>
<p>
From <a href="http://www.mar-usa.com/">Rayonix/Mar-USA</a></p>
<ul>
<li>MarCCD detectors</li>
</ul>
<p>
From <a href="http://www.marresearch.com/">Marresearch GmbH</a></p>
<ul>
<li>mar345 online image plate reader</li>
</ul>
<p>
From <a href="http://www.roperscientific.com/">Roper</a></p>
<ul>
<li>All CCD detectors supported by the WinView and WinSpec programs. This includes
all <a href="http://www.princetoninstruments.com/">Princeton Instruments</a> detectors,
as well as most <a href="http://www.photomet.com/">Photometrics</a> detectors. </li>
</ul>
<p>
From <a href="http://www.bruker-axs.de/">Bruker</a></p>
<ul>
<li>The SMART CCD camera line with Photometrics cameras. This requires the PCI interface
card, replacing the old ISA bus card, and requires controlling the detector with
WinView, not the SMART software.</li>
</ul>
<p>
From <a href="http://www.ptgrey.com/products/flea2/index.asp">Point Grey Research</a></p>
<ul>
<li>The Flea2 line of Firewire (IEEE 1394) cameras. It also supports all other brands
of Firewire cameras that follow the <a href="http://damien.douxchamps.net/ieee1394/libdc1394/iidc/IIDC_1.31.pdf">
IIDC/DCAM</a> specification. There is support for Firewire cameras under Windows
in the areaDetector module itself. There is also support for Firewire cameras under
Linux written by Ulrik Pedersen from Diamond Light Source, and distributed separately
from the areaDetector module.</li>
</ul>
<p>
From <a href="http://optoelectronics.perkinelmer.com/">Perkin Elmer</a></p>
<ul>
<li>Amorphous silicon flat panel detectors. This support was written by Brian Tieman
from the APS and will be part of areaDetector soon.</li>
</ul>
<p>
Please email any comments and bug reports to <a href="mailto:rivers@cars.uchicago.edu">
Mark Rivers</a> who is responsible for coordinating development and releases.</p>
<h2>
Where to find it</h2>
<p>
The areaDetector module is in the EPICS Applications SVN repository on <a href="http://epics.svn.sourceforge.net/viewvc/epics/applications/trunk/areaDetector/">
SourceForge.</a> Persons wishing to collaborate on this project can contact Mark
Rivers to get write access to this application there.
</p>
<p>
You can download the software from the links in the table below. The software is
available both in source code form, and in pre-built form so that it can be used
without an EPICS build system. The pre-built form includes binaries for linux-x86,
win32-x86, solaris-sparc and some vxWorks archtectures.</p>
<table border="1" summary="Where to find the software">
<tbody>
<tr align="center">
<th>
Module Version</th>
<th>
Release Date</th>
<th>
Source Code Filename</th>
<th>
Pre-built Filename</th>
<th>
Documentation</th>
<th>
Release Notes</th>
<th>
Known Problems</th>
</tr>
<tr>
<td>
1-4</td>
<td>
30-Jan-2009</td>
<td>
<a href="http://cars.uchicago.edu/software/pub/areaDetectorR1-4.tgz">areaDetectorR1-4.tgz</a></td>
<td>
<a href="http://cars.uchicago.edu/software/pub/areaDetectorPrebuilt_R1-4.tgz">areaDetectorPrebuilt_R1-4.tgz</a></td>
<td>
<a href="areaDetectorDoc.html">areaDetectorDoc</a></td>
<td>
<a href="areaDetectorReleaseNotes.html">Release notes</a></td>
<td>
See release notes</td>
</tr>
<tr>
<td>
1-3</td>
<td>
24-Nov-2008</td>
<td>
<a href="http://cars.uchicago.edu/software/pub/areaDetectorR1-3.tgz">areaDetectorR1-3.tgz</a></td>
<td>
<a href="http://cars.uchicago.edu/software/pub/areaDetectorPrebuilt_R1-3.tgz">areaDetectorPrebuilt_R1-3.tgz</a></td>
<td>
<a href="areaDetectorDoc.html">areaDetectorDoc</a></td>
<td>
<a href="areaDetectorReleaseNotes.html">Release notes</a></td>
<td>
See release notes</td>
</tr>
<tr>
<td>
1-2</td>
<td>
24-Oct-2008</td>
<td>
<a href="http://cars.uchicago.edu/software/pub/areaDetectorR1-2.tgz">areaDetectorR1-2.tgz</a></td>
<td>
N.A.</td>
<td>
<a href="areaDetectorDoc.html">areaDetectorDoc</a></td>
<td>
<a href="areaDetectorReleaseNotes.html">Release notes</a></td>
<td>
See release notes</td>
</tr>
<tr>
<td>
1-1</td>
<td>
10-May-2008</td>
<td>
<a href="http://cars.uchicago.edu/software/pub/areaDetectorR1-1.tgz">areaDetectorR1-1.tgz</a></td>
<td>
N.A.</td>
<td>
<a href="areaDetectorDoc.html">areaDetectorDoc</a></td>
<td>
<a href="areaDetectorReleaseNotes.html">Release notes</a></td>
<td>
See release notes</td>
</tr>
<tr>
<td>
1-0</td>
<td>
11-Apr-2008</td>
<td>
<a href="http://cars.uchicago.edu/software/pub/areaDetectorR1-0.tgz">areaDetectorR1-0.tgz</a></td>
<td>
N.A.</td>
<td>
<a href="areaDetectorDoc.html">areaDetectorDoc</a></td>
<td>
<a href="areaDetectorReleaseNotes.html">Release notes</a></td>
<td>
See release notes</td>
</tr>
</tbody>
</table>
<h2>
Required Modules</h2>
<table border="1" summary="Required Modules for Source Code Version">
<tbody>
<tr align="center">
<th>
Module Version</th>
<th>
Requires module</th>
<th>
Release needed</th>
<th>
Required for</th>
</tr>
<tr>
<td rowspan="7">
1-4</td>
<td>
EPICS base</td>
<td>
3.14.10</td>
<td>
Base support</td>
</tr>
<tr>
<td>
asyn</td>
<td>
4-10</td>
<td>
Socket and interface support</td>
</tr>
<tr>
<td>
busy</td>
<td>
1-1</td>
<td>
busy record. This was formerly included in sscan, but now has its own support module.</td>
</tr>
<tr>
<td>
calc</td>
<td>
2-7</td>
<td>
scalcout record, needed by sscan database and useful for other databases</td>
</tr>
<tr>
<td>
sscan</td>
<td>
2-6-3</td>
<td>
sscan record</td>
</tr>
<tr>
<td>
mca</td>
<td>
6-10</td>
<td>
mca record for getting time sequence of ROI counts</td>
</tr>
<tr>
<td>
autosave</td>
<td>
4-5</td>
<td>
Save/restore</td>
</tr>
<tr>
<td rowspan="6">
1-3</td>
<td>
EPICS base</td>
<td>
3.14.10</td>
<td>
Base support. 3.14.8.2 also works, but the bug in epicsRingPointer can be a problem
on multi-processor Linux systems.</td>
</tr>
<tr>
<td>
asyn</td>
<td>
4-10</td>
<td>
Socket and interface support</td>
</tr>
<tr>
<td>
calc</td>
<td>
2-6-7</td>
<td>
scalcout record, needed by sscan database and useful for other databases</td>
</tr>
<tr>
<td>
sscan</td>
<td>
2-6-2</td>
<td>
sscan and busy records</td>
</tr>
<tr>
<td>
mca</td>
<td>
6-10</td>
<td>
mca record for getting time sequence of ROI counts</td>
</tr>
<tr>
<td>
autosave</td>
<td>
4-4</td>
<td>
Save/restore</td>
</tr>
<tr>
<td rowspan="6">
1-2</td>
<td>
EPICS base</td>
<td>
3.14.10</td>
<td>
Base support. 3.14.8.2 also works, but the bug in epicsRingPointer can be a problem
on multi-processor Linux systems.</td>
</tr>
<tr>
<td>
asyn</td>
<td>
4-10</td>
<td>
Socket and interface support</td>
</tr>
<tr>
<td>
calc</td>
<td>
2-6-5</td>
<td>
scalcout record, needed by sscan database and useful for other databases</td>
</tr>
<tr>
<td>
sscan</td>
<td>
2-5-6</td>
<td>
Busy record</td>
</tr>
<tr>
<td>
mca</td>
<td>
6-10</td>
<td>
mca record for getting time sequence of ROI counts</td>
</tr>
<tr>
<td>
autosave</td>
<td>
4-3</td>
<td>
Save/restore</td>
</tr>
<tr>
<td rowspan="4">
1-1</td>
<td>
EPICS base</td>
<td>
3.14.8.2</td>
<td>
Base support</td>
</tr>
<tr>
<td>
asyn</td>
<td>
4-10</td>
<td>
Socket and interface support</td>
</tr>
<tr>
<td>
sscan</td>
<td>
2-5-6</td>
<td>
Busy record</td>
</tr>
<tr>
<td>
autosave</td>
<td>
4-3</td>
<td>
Save/restore</td>
</tr>
<tr>
<td rowspan="4">
1-0</td>
<td>
EPICS base</td>
<td>
3.14.8.2</td>
<td>
Base support</td>
</tr>
<tr>
<td>
asyn</td>
<td>
4-10</td>
<td>
Socket and interface support</td>
</tr>
<tr>
<td>
sscan</td>
<td>
2-5-6</td>
<td>
Busy record</td>
</tr>
<tr>
<td>
autosave</td>
<td>
4-3</td>
<td>
Save/restore</td>
</tr>
</tbody>
</table>
<h2>
Installation and Building</h2>
<h3>
Source code version</h3>
<p>
After obtaining a copy of the distribution, it must be installed and built for use
at your site. These steps only need to be performed once for the site (unless versions
of the module running under different releases of EPICS and/or the other required
modules are needed).</p>
<ol>
<li>Create an installation directory for the module, usually this will end with<br />
<br />
<tt>.../support/</tt>
<br />
</li>
<li>Place the distribution file in this directory. Then issue the commands (Unix style)
<pre>tar xvzf areaDetectorRX-Y.tgz
</pre>
where X-Y is the release.</li>
<li>This creates a &lt;top&gt; application.<br />
<pre>.../support/areaDetectorRX-Y
</pre>
</li>
<li>Edit the <tt>configure/RELEASE</tt> file and set the paths to your installation
of EPICS base and to your versions of supporting modules.</li>
<li>Run <tt>gnumake</tt> in the top level directory and check for any compilation
errors.</li>
</ol>
<h3>
Prebuilt version</h3>
<ol>
<li>Create an installation directory for the module.</li>
<li>Place the distribution file in this directory. Then issue the commands (Unix style)
<pre>tar xvzf areaDetectorPrebuiltRX-Y.tgz</pre>
</li>
<li>In the iocBoot directory make a copy of the example ioxXXX directory for the detector
you are using and give it a new local name. By doing this you will be able to update
to later versions of areaDetector without overwriting modifications you make in
the iocXXX directory.</li>
<li>In the new iocXXX directory you just created edit st.cmd to change the PV prefix
$(P) to one that is unique to your site. PV prefixes must be unique on the subnet,
and if you use the default prefix there could be a conflict with other detectors
of the same type. </li>
<li>In the same iocXXX directory edit the file envPaths to point to the locations
of all of the support modules on your system. Normally this is handled by the EPICS
build system, but when using the prebuilt version this must be manually edited.
Do not worry about the path to EPICS_BASE, it is not required.</li>
</ol>
<p>
Please email&nbsp; <a href="mailto:rivers@cars.uchicago.edu">Mark Rivers</a>&nbsp;
so that a record can be kept of which sites are using this software.</p>
<h2>
In Use</h2>
<p>
This software was originally developed by Mark Rivers.</p>
<ul>
<li>ANL/APS : In use at CARS beamlines.</li>
<li>NSLS: In use on X17B2 and other beamlines.</li>
<li>Australian Synchrotron : In use at microspectroscopy beamline, ID5.</li>
</ul>
</body>
</html>