-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
update tests to latest dlsPLC version
- Loading branch information
Showing
102 changed files
with
20,858 additions
and
327 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
#! Generated by VisualDCT v2.6 | ||
#! DBDSTART | ||
#! DBD("../../dbd/dlsPLC_vdct.dbd") | ||
#! DBDEND | ||
|
||
# NX102_PreVacCoils_SMIlkKeyEntry.vdb is expanded to | ||
# NX102_PreVacCoils_SMSIlkKeyEntry.template by VDCT utility called flatdb. | ||
# | ||
# Developed for B07 HiTES1 End Station. Currently does not use VDB | ||
# expansion of lower level template vdb files. | ||
# | ||
# Allows the builder to construct a screen of interlock descriptions. | ||
# Descriptions are REALLY important for HiTES1 as it has many interlocks. The | ||
# standard interlocks embedded screen does not have any support for describing | ||
# the interlock as a whole, only the individual bits. | ||
# | ||
# % macro, __doc__, Template for Interlock Key Entry for sample manipulator collaboration. | ||
# | ||
# % macro, device, Mandatory. Device name. | ||
# % macro, keyentryname, Mandatory. Name of interlock being described in the key entry. Used in constructing record names, so no spaces or iffy punctuation characters. | ||
# % macro, keyentryline1, Mandatory. First line of interlock description. | ||
# | ||
# % macro, ilkkeyprefix, Optional. Defaults to :ILKKEY. Prefix to put on the key entry records. | ||
# % macro, keyentryline2, Optional. Defaults to single space. Second line of interlock description. | ||
# | ||
# % macro, name, Optional. Defaults to empty. Object name and associated gui name | ||
# | ||
# This associates an EDM screen with the template | ||
# % gui, $(name=), edmembed, NX102_PreVacSMIlkKeyEntry-embed.edl, device=$(device), ilkkeyprefix=$(ilkkeyprefix=:ILKKEY), keyentryname=$(keyentryname), keyentryline1=$(keyentryline1), keyentryline2=$(keyentryline2= ) | ||
# | ||
# Although this record is not used on the screen decided to make it give the correct information | ||
# i.e. initially it is a dummy. Might have to change screen to use it as a PV and add some more. | ||
# | ||
record(stringout, "$(device)$(ilkkeyprefix=:ILKKEY):$(keyentryname)") | ||
{ | ||
field(DESC, "Name of ilk key entry item") | ||
field(VAL, "$(keyentryname)") | ||
field(PINI, "YES") | ||
} |
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,167 @@ | ||
#! Generated by VisualDCT v2.6 | ||
#! DBDSTART | ||
#! DBD("../../dbd/dlsPLC_vdct.dbd") | ||
#! DBDEND | ||
|
||
# | ||
# NX102_PreVacCoils_SMPort.vdb is expanded to NX102_PreVacCoils_SMPort.template by flatdb. | ||
# | ||
# Developed for B07 HiTES1 End Station. This is a higher level template which declares VDB expansion | ||
# of lower level template NX102_PreVacCoils_SMPortPostionStatus.vdb | ||
# | ||
# Coil is the term PreVac use for a piece of data about a component | ||
# or aspect of the the Sample Manipulator system. We dont know what it | ||
# actually means. | ||
# | ||
# Some of the PreVac Coils are R, others RW; there are concerns about | ||
# about reading and writing to the same piece of data with this driver. | ||
# Also they are in groups of 10, with info re certain aspects of the system. | ||
# The NX102 PLC code collates the coils into readonly words more convenient | ||
# to read back. This template deals with one of the groups of 10 of the | ||
# original coils. The actual Coils can be read back but this should be made | ||
# unnecessary by the collated words and so is not implemented. | ||
# | ||
#% macro, __doc__, Template database for status info regarding a Port on PreVac Sample Manipulator. | ||
# | ||
#% macro, device, Mandatory. Device name. | ||
#% macro, posportID, Mandatory. ID of the vacuum port position for the sample manipulator. Must be integer 1 to 8 or 0 for special case of Arm in RDC/UFO and overall status. | ||
#% macro, port, Mandatory. Comms port (DLS NX102) PLC controller is on. | ||
#% macro, tag, Mandatory. NX PLC tag string e.g. V (from V.Control[1]) | ||
#% macro, tagidx, Mandatory. NX PLC tag index number e.g. 1 (from V.Control[1]) | ||
#% macro, tagname, Mandatory. NX PLC tag name. | ||
#% macro, tagprefix, Mandatory. NX PLC prefix to tag name. | ||
# | ||
#% macro, posportprefix, Optional. Defaults to ":POSPORT". Prefix for the vacuum port position records. | ||
#% macro, smready_bitno, Optional. Defaults to "1". Bit number in port position status for whether sample manipulator inside the chamber is in position ready to participate in the transfer, values 0-15. The Arm/RDC/UFO port is likely to have non-default value, as it needs to address the "Master Interlock Status" bit, whereas the other ports address the "ReadyForTransfer" bit. NOTE: The intended use is for signals derived from GPIO on GeoBricks with other sample manipulator motors on them. | ||
#% macro, sampleholder_bitno, Optional. Defaults to "2". Bit number in port position status for whether sample holder is present inside the chamber, values 0-15. The Arm/RDC/UFO port is likely to have non-default value, as it needs to address the "Holder On Arm" bit, whereas the other ports address the "Sample Inside" bit. NOTE: The sample holder might not have a sample in it! | ||
#% macro, desc_label0, Optional. Defaults to "PrepareForTransfer". Descriptive label for bit0 of the Coil word. | ||
#% macro, desc_label1, Optional. Defaults to "ReadyForTransfer". Descriptive label for bit1 of the Coil word. | ||
#% macro, desc_label2, Optional. Defaults to "SampleInside". Descriptive label for bit2 of the Coil word. | ||
#% macro, desc_label3, Optional. Defaults to "Error". Descriptive label for bit3 of the Coil word. | ||
#% macro, desc_label4, Optional. Defaults to "Busy". Descriptive label for bit4 of the Coil word. | ||
#% macro, desc_label5, Optional. Defaults to "GateOpenRequest". Descriptive label for bit5 of the Coil word. | ||
#% macro, desc_label6, Optional. Defaults to "GateOpen". Descriptive label for bit6 of the Coil word. | ||
#% macro, desc_label7, Optional. Defaults to "GateClosed". Descriptive label for bit7 of the Coil word. | ||
#% macro, desc_label8, Optional. Defaults to "ArmOnPort". Descriptive label for bit8 of the Coil word. | ||
#% macro, desc_label9, Optional. Defaults to "ReservedForFuture". Descriptive label for bit9 of the Coil word. | ||
#% macro, desc_label10, Optional. Defaults to "". Descriptive label for bit10 of the Coil word. | ||
#% macro, desc_label11, Optional. Defaults to "". Descriptive label for bit11 of the Coil word. | ||
#% macro, desc_label12, Optional. Defaults to "". Descriptive label for bit12 of the Coil word. | ||
#% macro, desc_label13, Optional. Defaults to "". Descriptive label for bit13 of the Coil word. | ||
#% macro, desc_label14, Optional. Defaults to "". Descriptive label for bit14 of the Coil word. | ||
#% macro, desc_label15, Optional. Defaults to "". Descriptive label for bit15 of the Coil word. | ||
#% macro, longdesc, Optional. Defaults to "Manipulator Position Port $(posportID) status." Description of position port. | ||
#% macro, shortdesc, Optional. Defaults to "Posport$(posportID)" Short, abbreviated description of position port. | ||
# | ||
#% macro, chamber_name, Optional. Defaults to "". Name of vacuum chamber associated with position port. | ||
#% macro, chamber_shortname, Optional. Defaults to "". Short name of vacuum chamber associated with position port. | ||
# | ||
#% macro, valve_device, Optional. Defaults to "". Device name of vacuum valve associated with position port. So far it is a string for info only, no calcs. | ||
#% macro, valve_shortname, Optional. Defaults to "". Short, abbreviated name of vacuum valve associated with the position port. | ||
#% macro, valve_desc, Optional. Defaults to "". Description of vacuum valve associated with position port. | ||
# | ||
#% macro, name, Optional. Defaults to empty. Object name and associated gui name | ||
# | ||
# This associates an edm screen with the template | ||
# % gui, $(name=), edmembed, NX102_PreVacSMPort-embed.edl, device=$(device), posportprefix=$(posportprefix=:POSPORT), posportID=$(posportID) | ||
# | ||
# Device name of vacuum valve associated with the position port. | ||
# (This is a one to one relationship at time of writing). | ||
# This is used for GUI help, not for calcs (so far). | ||
# | ||
record(stringout, "$(device)$(posportprefix=:POSPORT)$(posportID):VALVE") { | ||
field(DESC, "Position port $(posportID) associated valve") | ||
field(PINI, "YES") | ||
field(VAL, "$(valve_device=)") | ||
} | ||
|
||
# Long description of the vacuum valve associated with the position port. | ||
# (This is a one to one relationship at time of writing). This is used for | ||
# GUI help, not for calcs (so far). | ||
# | ||
record(stringout, "$(device)$(posportprefix=:POSPORT)$(posportID):VALVEDESC") { | ||
field(DESC, "Position port $(posportID) associated valve") | ||
field(PINI, "YES") | ||
field(VAL, "$(valve_desc=)") | ||
} | ||
|
||
# Short name of vacuum valve associated with the position port. | ||
record(stringout, "$(device)$(posportprefix=:POSPORT)$(posportID):VALVESHORTNAME") { | ||
field(DESC, "Posport$(posportID) valve shortname") | ||
field(PINI, "YES") | ||
field(VAL, "$(valve_shortname=)") | ||
} | ||
|
||
# Long description of the vacuum chamber associated with the position port | ||
# (other than the Rotary Distribution Chamber all the ports are on). | ||
# | ||
record(stringout, "$(device)$(posportprefix=:POSPORT)$(posportID):CHAMBER") { | ||
field(DESC, "Posport$(posportID) chamber name") | ||
field(PINI, "YES") | ||
field(VAL, "$(chamber_name=)") | ||
} | ||
|
||
# Name of vacuum chamber associated with the position port (other than | ||
# Rotary Distribution Chamber all the ports are on. | ||
# | ||
record(stringout, "$(device)$(posportprefix=:POSPORT)$(posportID):CHAMBERSHORTNAME") { | ||
field(DESC, "Posport$(posportID) chamber shortname") | ||
field(PINI, "YES") | ||
field(VAL, "$(chamber_shortname=)") | ||
} | ||
|
||
# | ||
# Initialise the IS_PRESENT record for the position port in the status template to present. | ||
# | ||
record(bo, "$(device)$(posportprefix=:POSPORT)$(posportID):SET_PRESENT") { | ||
field(DESC, "Initialise Posport$(posportID) to be present") | ||
field(SCAN, "Passive") | ||
field(PINI, "YES") | ||
field(DOL, "1") | ||
field(OMSL, "closed_loop") | ||
field(OUT, "$(device)$(posportprefix=:POSPORT)$(posportID):IS_PRESENT PP") | ||
} | ||
|
||
# | ||
# The expand command cannot appear first in the vdb file because the | ||
# comment on an expand command gets zapped during the expansion | ||
# processing by flat db, so it will consume the header with all the | ||
# macro definitions in it, which has to be attached to a statement | ||
# because VDCT itself zaps comments which have blank lines or spaces | ||
# leaving them unattached. Therefore have chosen to put the expansion | ||
# last. | ||
# | ||
# There are further macros defined in the template which do not have | ||
# an entry in the expand command and they are passed through | ||
# untouched, notably device and posportID. The posportprefix and | ||
# label macros are mandatory in the lower level template and expanded | ||
# to become optional in the high level template. | ||
# | ||
expand("NX102_PreVacCoils_SMPortPositionStatus.vdb", posportStatus) { | ||
macro(PORT, "$(port)") | ||
macro(TAG, "$(tag)") | ||
macro(TAGNAME, "$(tagname)") | ||
macro(TAGPREFIX, "$(tagprefix)") | ||
macro(TAGIDX, "$(tagidx)") | ||
macro(posportprefix, "$(posportprefix=:POSPORT)") | ||
macro(smready_bitno, "$(smready_bitno=1)") | ||
macro(sampleholder_bitno, "$(sampleholder_bitno=2)") | ||
macro(desc_label0, "$(desc_label0=PrepareForTransfer)") | ||
macro(desc_label1, "$(desc_label1=ReadyForTransfer)") | ||
macro(desc_label2, "$(desc_label2=SampleInside)") | ||
macro(desc_label3, "$(desc_label3=Error)") | ||
macro(desc_label4, "$(desc_label4=Busy)") | ||
macro(desc_label5, "$(desc_label5=GateOpenRequest)") | ||
macro(desc_label6, "$(desc_label6=GateOpen)") | ||
macro(desc_label7, "$(desc_label7=GateClosed)") | ||
macro(desc_label8, "$(desc_label8=ArmOnPort)") | ||
macro(desc_label9, "$(desc_label9=ReservedForFuture)") | ||
macro(desc_label10, "$(desc_label10=)") | ||
macro(desc_label11, "$(desc_label11=)") | ||
macro(desc_label12, "$(desc_label12=)") | ||
macro(desc_label13, "$(desc_label13=)") | ||
macro(desc_label14, "$(desc_label14=)") | ||
macro(desc_label15, "$(desc_label15=)") | ||
macro(longdesc, "$(longdesc=Manipulator Position Port $(posportID) status.)") | ||
macro(shortdesc, "$(shortdesc=Posport$(posportID))") | ||
} |
Oops, something went wrong.