forked from epics_driver_modules/motorBase
333d140559
serial.cmd and motor.substitutions
130 lines
3.3 KiB
Plaintext
130 lines
3.3 KiB
Plaintext
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.
|
|
|