Difference between revisions of "EPICS Cheat Sheet"
Jump to navigation
Jump to search
(9 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
== Channel Access | == Channel Access command-lines == | ||
CA allows users to interact with Process Variables (PV): | Channel Access (CA) allows users to interact with Process Variables (PV): | ||
:<code>'''caget'''</code> - get the value of one of more PVs | :<code>'''caget'''</code> - get the value of one of more PVs | ||
Line 10: | Line 10: | ||
Example: | Example: | ||
$ caget kmp3:m1.{DESC,RTYP,DTYP | $ caget kmp3:m1.VAL | ||
kmp3:m1.VAL 60 | |||
$ caget kmp3:m1.{DESC,RTYP,DTYP} | |||
kmp3:m1.DESC theta motor | kmp3:m1.DESC theta motor | ||
kmp3:m1.RTYP motor | kmp3:m1.RTYP motor | ||
kmp3:m1.DTYP asynMotor | kmp3:m1.DTYP asynMotor | ||
== Noteworthy fields == | |||
A Process Variable (PV) is a the field from a record: | |||
::<code>PV = record_name + . + field_name''</code> | |||
Most common fields: | |||
:<code>'''VAL'''</code> - the default field (used if no field is specified in the vast majority of cases) | :<code>'''VAL'''</code> - the default field (used if no field is specified in the vast majority of cases) | ||
:<code>'''SCAN'''</code> - determines when a record processes | :<code>'''SCAN'''</code> - determines when a record processes | ||
Line 46: | Line 52: | ||
:'''<code>seqShow</code>''' - shows running sequence programs | :'''<code>seqShow</code>''' - shows running sequence programs | ||
:'''<code>seqStop</code>''' - stops a running sequence program | :'''<code>seqStop</code>''' - stops a running sequence program | ||
== Links == | |||
* [[https://wiki-ext.aps.anl.gov/blc/index.php?title=EPICS_101 EPICS 101]] | |||
* [[https://wiki-ext.aps.anl.gov/blc/index.php?title=IOC_101 IOC 101]] |
Latest revision as of 16:17, 17 March 2023
Channel Access command-lines
Channel Access (CA) allows users to interact with Process Variables (PV):
caget
- get the value of one of more PVscaput
- change the value of a PVcamonitor
- monitor the value of one or more PVscainfo
- print info about a PV, including which host is running the IOC
Example:
$ caget kmp3:m1.VAL kmp3:m1.VAL 60 $ caget kmp3:m1.{DESC,RTYP,DTYP} kmp3:m1.DESC theta motor kmp3:m1.RTYP motor kmp3:m1.DTYP asynMotor
Noteworthy fields
A Process Variable (PV) is a the field from a record:
PV = record_name + . + field_name
Most common fields:
VAL
- the default field (used if no field is specified in the vast majority of cases)SCAN
- determines when a record processesNAME
- the record name (helpful if records are aliased)DESC
- record descriptionRTYP
- the record typeDTYP
- the device support type (not meaningful for all record types)DISP
- disable puts (ca = channel access & pva = pv access) from outside the IOC (when non-zero); e.g. disable a motor from the motorx_all screenDISV/DISA/SDIS
- disable record processing internally- Record processing is disabled when
DISA
equalsDISV
(e.g. uses SDIS field to read in a value/mode, which will disable some control if a certain mode is active) DISA
is set to the value of the PV in theSDIS
field, if it isn't empty
- Record processing is disabled when
TPRO
- trace processing: when set to 1 prints out all the records that get processed after the record is processed; used only for troubleshooting
Note: some of the fields of a record are actually record attributes (they return the same value for all instances of the record type; see https://epics.anl.gov/)
IOC shell commands
To connect to (disconnect from) the IOC shell, see here:
help [command]
- shows available commands or syntax of specified commanddbpr record_name [0-9]
- displays fields and values for a given recorddbl
- lists all records in an IOCdbl record_type
- lists all records of a specific type in an IOCdbl record_type "field_list"
- lists specified fields (space-separated list) of records of a specific type in an IOCdbpf pv_name value
- change a PV’s value – analogous to caputdbgf pv_name
- read a PV’s value – analogous to cagetepicsEnvShow
- prints environment variablesseqShow
- shows running sequence programsseqStop
- stops a running sequence program