Added interpose driver from DLS
Added a low-level interpose driver to allow usage of stream devices.
This commit is contained in:
12
README.md
12
README.md
@ -8,13 +8,15 @@ This is a driver for the Turbo PMAC motion controller with the SINQ communicatio
|
||||
|
||||
## User guide
|
||||
|
||||
This driver is a standard sinqMotor-derived driver and does not need any specific configuration. For the general configuration, please see https://git.psi.ch/sinq-epics-modules/sinqmotor/-/blob/main/README.md.
|
||||
This driver is a standard sinqMotor-derived which however uses a special low level IP Port driver (`pmacAsynIPPortConfigure`) instead of the standard `drvAsynIPPortConfigure`. For the general configuration, please see https://git.psi.ch/sinq-epics-modules/sinqmotor/-/blob/main/README.md.
|
||||
|
||||
The folder "utils" contains utility scripts for working with pmac motor controllers. To read their manual, run the scripts without any arguments.
|
||||
- writeRead.py: Allows sending commands to and receiving commands from a pmac controller over an ethernet connection.
|
||||
- analyzeTcpDump.py: Parse the TCP communication between an IOC and a MCU and format it into a dictionary. "demo.py" shows how this data can be easily visualized for analysis.
|
||||
|
||||
### Usage in IOC shell
|
||||
|
||||
|
||||
### IOC startup script
|
||||
|
||||
turboPmac exports the following IOC shell functions:
|
||||
- `turboPmacController`: Create a new controller object.
|
||||
@ -30,7 +32,7 @@ epicsEnvSet("ASYN_PORT","p$(NAME)")
|
||||
# Create the TCP/IP socket used to talk with the controller. The socket can be adressed from within the IOC shell via the port name.
|
||||
# We do not use the standard asyn port driver here, but a PMAC-specific one which enables the usage of StreamDevices for
|
||||
# communicating with the controller directly.
|
||||
pmacAsynIPConfigure("$(ASYN_PORT)","172.28.101.24:1025")
|
||||
pmacAsynIPPortConfigure("$(ASYN_PORT)","172.28.101.24:1025")
|
||||
|
||||
# Create the controller object with the defined name and connect it to the socket via the port name.
|
||||
# The other parameters are as follows:
|
||||
@ -59,6 +61,10 @@ dbLoadTemplate("$(TOP)/$(NAME).substitutions", "INSTR=$(INSTR)$(NAME):,CONTROLLE
|
||||
dbLoadRecords("$(sinqMotor_DB)/asynRecord.db","P=$(INSTR)$(NAME),PORT=$(ASYN_PORT)")
|
||||
```
|
||||
|
||||
### Additional records
|
||||
|
||||
`turboPmac` provides a variety of additional records. See `db/turboPmac.db` for the complete list and the documentation.
|
||||
|
||||
## Developer guide
|
||||
|
||||
### Versioning
|
||||
|
Reference in New Issue
Block a user