forked from epics_driver_modules/motorBase
227 lines
4.6 KiB
Plaintext
227 lines
4.6 KiB
Plaintext
|
|
Parker 6K8 Motor Controller Series
|
|
==============================================================================
|
|
|
|
Ethernet Configuration
|
|
----------------------------------
|
|
|
|
Default Ethernet Address: 192.168.10.30
|
|
|
|
|
|
Ascii Command Port: 5002
|
|
|
|
|
|
Note: This controller's ethernet port only accepts one server at a
|
|
time. If the RS232 is in use then the ethernet port is closed.
|
|
|
|
Controller Configuration
|
|
------------------------------------------
|
|
Disable Echo
|
|
ECHO0
|
|
Enable continuous command mode
|
|
COMEXEC1
|
|
|
|
Communication Settings
|
|
EOL13,10,0
|
|
EOT13,0,0
|
|
ERRLVL4
|
|
ERRDEF13,10,45,32
|
|
ERROK13,10,62,32
|
|
ERRBAD13,10,63,32
|
|
|
|
---------------- Network Commands -------------------
|
|
NTADDRxx,xx,xx,xx = network IP
|
|
NTMASKxxx,xxx,xxx,xxx = network mask
|
|
NTFEN2 = network enable
|
|
|
|
Workstations cannot link to 6K Controllers without
|
|
an explicit arp table entry using the 'arp' command.
|
|
|
|
arp -s <6K IP addr> <6K MAC addr> <Workstation IP addr>
|
|
|
|
* Use the 6K 'TNT' command to see the ip and MAC address
|
|
|
|
|
|
Commands
|
|
------------------------------------------
|
|
|
|
REVISION
|
|
--------
|
|
TREV
|
|
*TREV92-016740-01-6.4.0 GEM6K GT6K-L8
|
|
(60 characters)
|
|
|
|
CONTINUOUS COMMAND MODE
|
|
------------------------
|
|
COMEXC1 = set on, required for status updates during motion.
|
|
****(No Reply)***
|
|
|
|
LIMIT SWITCH ENABE
|
|
-----------------------
|
|
LH3 - enable hardware LS
|
|
LH0 - disable hardware LS
|
|
|
|
ENABLE DRIVE
|
|
-------------
|
|
DRIVE1 - enable drive (must be renable after a dreset)
|
|
*****(No Reply when Set)*********
|
|
|
|
DRIVE <cr>
|
|
*DRIVE<state> 0 or 1
|
|
|
|
MOTION MODE
|
|
-------------
|
|
MA<0/1> - Set incremental or absolute mode
|
|
0 = incremental
|
|
1 = absolute
|
|
|
|
MC1 - Coninutous Mode (Jog)
|
|
|
|
MOTION PARAMETERS
|
|
------------------
|
|
A<accel> - set acceleration units/sec^2
|
|
|
|
A<cr>
|
|
*A#### - prints acceleration
|
|
|
|
V<vel> - velocity
|
|
|
|
D<distance> - set distance
|
|
|
|
GO - start motion
|
|
|
|
|
|
ie: motion
|
|
|
|
MA1: A20: V25: D25000: GO
|
|
|
|
Setting absolute postion
|
|
<#>PSET<nnnnn>
|
|
|
|
|
|
Velociy Feedback:
|
|
|
|
<#>TVEL - commanded velocity
|
|
<#>TVELA - actual
|
|
|
|
Position Feedback:
|
|
|
|
<#>TPC - commanded position
|
|
<resp> *1TPC+0
|
|
<#>TPE - encoder position
|
|
<resp> *1TPE+0
|
|
|
|
SCALING:
|
|
SCALE0/1 - disable/enable
|
|
SCLA - acceleration
|
|
SCLV - velocity
|
|
SCLD - distance
|
|
|
|
DRES - Drive Resolution (steps/rev) **** Stepper Only *****
|
|
ERES - Encoder Resolution (steps/rev)
|
|
DRESET - drive reset - enables new scaling factors
|
|
|
|
STATUS:
|
|
<#>TAS
|
|
*<#>TAS0000_0000_0000_0000_0000_0000_0000_0000 (32 bits)
|
|
^ bit 1 ^bit 32
|
|
|
|
*** Returns - *0 or *1
|
|
TAS.1 - in motion (commanded - will be off during settling time)
|
|
TAS.2 - direction is negative
|
|
TAS.5 - home successfull
|
|
TAS.13 - drive shutdown
|
|
TAS.14 - drive fault
|
|
TAS.15 - Plus Hardware Travel Limit
|
|
TAS.16 - Minus Hardware Travel Limit
|
|
TAS.17 - Plus Software TL (LSPOS)
|
|
TAS.18 - Minus Software TL (LSNEG)
|
|
TAS.24 - In Target Zone
|
|
ie.
|
|
1TAS
|
|
*1TAS0000_0000_0000_0000_0000_0000_000_00000
|
|
|
|
-------------------- Jog Method --------------
|
|
MC1 - Use continuous motion mode for jogging
|
|
|
|
|
|
---------------- Program Handling ------------
|
|
|
|
TDIR - list downloaded programs
|
|
|
|
DEL <filename> - delete program
|
|
|
|
DEF <filname) - create program
|
|
<line1>
|
|
<line2>
|
|
.
|
|
.
|
|
END - end of program creation
|
|
|
|
TPROG - transfer program contents
|
|
|
|
|
|
|
|
|
|
|
|
============== Build Info ======================
|
|
|
|
xxxApp/src
|
|
Makefile
|
|
--------
|
|
xxx_Common_LIBS += Parker
|
|
|
|
xxCommonInclude.dbd
|
|
-------------------
|
|
include "devPC6K.dbd"
|
|
|
|
|
|
============= IOC Boot info ======================
|
|
|
|
iocBoot/iocLinux
|
|
serial.cmd
|
|
----------
|
|
|
|
# serial 1 is a RS232 link to a Parker Gemini 6K Controller
|
|
drvAsynSerialPortConfigure("serial1", "/dev/ttyUSB0", 0, 0, 0)
|
|
asynOctetSetInputEos("serial1",0,">")
|
|
asynOctetSetOutputEos("serial1",0,"\r")
|
|
asynOctetConnect("serial1", "serial1")
|
|
|
|
# serial 3 is ETHERNET link to the Parker Gemini 6K Controller
|
|
drvAsynIPPortConfigure("serial3", "192.168.10.29:5002", 0, 0, 0)
|
|
asynOctetConnect("serial3", "serial3")
|
|
asynOctetSetInputEos("serial3",0,">")
|
|
asynOctetSetOutputEos("serial3",0,"\r")
|
|
|
|
.
|
|
|
|
# Parker/Compumotor - Gemini 6K driver setup parameters:
|
|
# (1) maximum number of controllers in system
|
|
# (2) motor task polling rate (min=1Hz, max=60Hz)
|
|
PC6KSetup(2, 60)
|
|
|
|
# Parker/Compumotor - Gemini 6K driver configuration parameters:
|
|
# (1) controller being configured
|
|
# (2) asyn port name (string)
|
|
PC6KConfig(0, "serial1")
|
|
PC6KConfig(1, "serial3")
|
|
|
|
|
|
motor.substitutions
|
|
-------------------
|
|
Set the DTYPE column to "PC6K"
|
|
|
|
|
|
============== IOC Runtime Info (Post iocInit) ========================
|
|
|
|
# PC5KUpLoad(Controller #, <source file name>, <dest. file name (OPTIONAL)>)
|
|
|
|
### Send setup files to 6K8
|
|
PC6KUpLoad(0,"6k_setup","setup")
|
|
### Set startup file to setup
|
|
PC6KUpLoad(0,"startp")
|
|
|
|
|
|
|