
- Refactored site specific stuff into a site module - PSI specific stuff is now in the PSI directory. - The old version has been tagged with pre-ansto
50 lines
1.8 KiB
OpenEdge ABL
50 lines
1.8 KiB
OpenEdge ABL
\subsubsection{Physik Instrumente DC-Motor Controller}
|
|
This is a mainly a driver for a C-804 DC-motor Controller as produced by the
|
|
Company Physik Instrumente. This controller drives up to four high precision
|
|
motors. These motors do not have reference points and have variable speeds.
|
|
Therefore some additional code is needed to handle motor specific commands.
|
|
This problem is solved by handling these specific additional commands in a
|
|
new wrapper routine which finally calls the main motor wrapper routine for
|
|
all the other commands. Of course, a special factory method is needed for
|
|
this device as well.
|
|
|
|
The public interface for this motor includes the following functions:
|
|
|
|
@d pimoti @{
|
|
|
|
int PIMotorWrapper(SConnection *pCon, SicsInterp *pSics, void *pData,
|
|
int argc, char *argv[]);
|
|
int PIMotorFactory(SConnection *pCon, SicsInterp *pSics, void *pData,
|
|
int argc, char *argv[]);
|
|
|
|
int PISetSpeed(pMotor self, SConnection *pCon, float fNew);
|
|
int PIGetSpeed(pMotor self, SConnection *pCon, float *fVal);
|
|
|
|
int PIHome(pMotor self, SConnection *pCon);
|
|
@}
|
|
|
|
@o pimotor.h @{
|
|
/*--------------------------------------------------------------------------
|
|
P I M O T O R
|
|
|
|
Driver and add on code for the Physik Instrument Motor Controller C-804.
|
|
|
|
Mark Koennecke, September 1998
|
|
----------------------------------------------------------------------------*/
|
|
#ifndef PIMOTOR
|
|
#define PIMOTOR
|
|
#include <motor.h>
|
|
@<pimoti@>
|
|
#endif
|
|
|
|
@}
|
|
|
|
|
|
\subsubsection{Physik Instrument Piezo Controller E-255}
|
|
This is piezo translator. A voltage is set and it elongates. It is
|
|
handled as a motor because it is going to be scanned. A driver has
|
|
been implemented in the file pipiezo.c. For
|
|
the command protocoll, see the documentation coming with the gadget.
|
|
|
|
|