Digital Piezo Controller
piezosystem jena
www.piezojena.com

Model: EDS

Tested Version: EDS2, DSM V1.959

RS232: <Programmable>
	9600,8,1,N (See setup warning below)
	RX EOL: '/r' (13) <cr>
        TX FRAMING: '/023'<ascii text>/r/n'/021' 

Position Resolution:  0.001 micrometers (um)

=================== serial.cmd =============================
# Piezosystem Jena EDS motor controller/driver setup parameters:
#     (1) maximum number of controllers in system
#     (2) maximum drives per controller
#     (3) motor task polling rate (min=1Hz, max=60Hz)
#drvPIJEDSdebug=1
PIJEDSSetup(1, 2, 60)

# Piezosystem Jena EDS controller/driver configuration parameters:
#     (1) controller being configured
#     (2) asyn port name (string)
#     (3) asyn address (GPIB)
PIJEDSConfig(0, "serial1", 0)

================== motor.substitutions ==================

{P,    N,	M,	  DTYP,		C,	S,	DESC,		EGU,	DIR,    VELO,VBAS,  ACCL,	   BDST,	 BVEL,	BACC,	MRES,	PREC,	DHLM,	DLLM, INIT}
{xxx:, 9,      "m$(N)",  "PIJEDS",      0,      0,      "motor $(N)",   um,     Pos,    2.,   0,     .2,             0,           0,    .2,      .001,   5,      100,    0,   ""}
{xxx:, 10,     "m$(N)",  "PIJEDS",      0,      1,      "motor $(N)",   um,     Pos,    2.,   0,     .2,             0,           0,    .2,      .001,   5,      100,    0,   ""}



=================== CONTROLLER SETUP =================
    BAUD RATE: 115200 BAUD must be lowered to 9600 to work
 	       with the IP-OCTAL card (VxWorks IOC's). 

   ***WARNING*** 
	The 9600 baud setting does NOT work after the EDS2 is power cycled.
	Re-entering the 9600 baud setting is required. 

    Use Controller's Screen to access motion parameters (PID, notch filter)

    PID parameters are not implemented in EPICS device driver because 
    the other motion calibration settings are not available from EPICS.



============= COMMANDS SYNTAX ==================================
	<command>,<axis>,[<arg>]</r>
	Where axis = 0, 1, ...,5

   * Reply from motion commands '/023/021' (framing characters only)
   * Single command per line

Query Reply:    <command>,<axis>,<return  value>
   *** WARNING *** Printing the EDS responses (during debugging) 
	   lockup the vxWorks terminal session (using cu) because
	   of the framing characters. 


=================== MOTION =================
ENABLE/DISABLE Servo  - ClosedLoop/OpenLoop
	cl,<axis>,[1/0]

MOVE Absolute (set displacement)
	set,<axis>,<0 to xxx.xxx>

MOVE Relative
	<none>

GO HOME
	<none>

SET VELOCITY (slew rate)
	sr,<axis>,<xxx.x>

	Units: 0.001 ... 500.0 V/ms

STOP MOTION 
	<none>

=================== STATUS =================

READ Version Info
	\r
	Return: 



READ Commanded position
	<none>

READ Feedback position 
	mess,<axis>
		Response:  0 to xxx.xxx um

READ Velocity (programmed)
	sr,<axis>
	Units: 0.001 ... 500.0 V/ms

ON-TARGET:
	<none>

SERVO ENABLE
	stat,<axis>
		16bit register - bit 7

================== IMPLEMENTATION NOTES ==========================
DRIVER SUPPORT EXCEPTIONS: 
   NO Relative Motion 
   NO JOG command 
   NO DONE indicator
   NO Homing
   NO Limit Switches

SET_STATUS:
    DONE: No DONE indicator so the 'no motion' test is used
	to set the DONE status.

    No Motion Test: Reference position is not available so 
        the 'no motion' test was widen to a hard coded
	tolerance value based on the MAXIMUM RESOLUTION. 
	This was needed because of encoder jitter.

