forked from epics_driver_modules/motorBase
ThorLabs Piezo Control Modules
==============================================================================
Controller Model: MDT695 (Plug in motion control card)
Driver Models: MDT694 (1 axis)
MDT603 (3 axis)
RS232 Configuration
----------------------------------
Default: 115200, 8, 1, N (DB9)
Internal DIP Switch Setting to 19200 (D1=OFF, D2=ON, D3=OFF)
Cabling:
Requires custom cable from ThorLabs(DB9-Male to DB9-Female)
RX - Pin 2
TX - Pin 3
Controller Specifications
------------------------------------------
No Software configuration available
Position Units: Volts (format %.1f)
Precision: 0.1 volts
Limits: 0.0 to 150.0
Velocity Units: NONE
ASCII Commands
------------------------------------------
Set Voltage (##.# format) (X, Y and Z)
'XV<voltage>'
'YV<voltage>'
'ZV<voltage>'
Read Voltage (##.# format) (X, Y and Z)
'XR?'
'YR?'
'ZR?'
NO Status information is available (Done, Limit Switch ... etc)
Assume motion is always done (0.1 readback delay set)
============== Build Info ======================
xxxApp/src
Makefile
--------
xxx_Common_LIBS += ThorLabs
xxCommonInclude.dbd
-------------------
include "devMDT695.dbd"
============= IOC Boot info ======================
iocBoot/iocLinux
serial.cmd
----------
# serial 1 is a RS232 link to a Oriel Encoder Mike Controller
drvAsynSerialPortConfigure("serial1", "/dev/ttyS0", 0, 0, 0)
asynSetOption(serial1,0,baud,4800)
asynOctetSetOutputEos("serial1",0,"\r")
asynOctetSetInputEos("serial1",0,"\r")
.
.
# ThorLabs MDT695 Piezo - driver setup parameters:
# (1) maximum number of controllers in system
# (2) motor task polling rate (min=1Hz, max=60Hz)
MDT695Setup(2, 60)
# Thor driver configuration parameters:
# (1) controller being configured
# (2) asyn port name (string)
MDT695Config(0, "serial1")
MDT695Config(1, "serial3")
motor.substitutions
-------------------
Set the DTYPE column to "MDT695"