From faabac0574a48f7df2bf8ecde0f3b191254fd515 Mon Sep 17 00:00:00 2001
From: timmmooney <mooney@aps.anl.gov>
Date: Mon, 9 Oct 2006 20:36:00 +0000
Subject: [PATCH] Moved to motor module

---
 xxxApp/Db/coordTrans2D.db          | 82 ----------------------------
 xxxApp/Db/pseudoMotor.db           | 86 ------------------------------
 xxxApp/Db/pseudoMotor_settings.req | 16 ------
 xxxApp/Db/sumDiff2D.db             | 75 --------------------------
 4 files changed, 259 deletions(-)
 delete mode 100644 xxxApp/Db/coordTrans2D.db
 delete mode 100644 xxxApp/Db/pseudoMotor.db
 delete mode 100644 xxxApp/Db/pseudoMotor_settings.req
 delete mode 100644 xxxApp/Db/sumDiff2D.db

diff --git a/xxxApp/Db/coordTrans2D.db b/xxxApp/Db/coordTrans2D.db
deleted file mode 100644
index c4c85cb..0000000
--- a/xxxApp/Db/coordTrans2D.db
+++ /dev/null
@@ -1,82 +0,0 @@
-# This database implements a generic 2-D coordinate transformation.  Given two
-# real motors (P)(MX) and (P)(MY), which move in the X,Y coordinate system,
-# it will move two soft motors (P)(MXP) and (P)(MYP) in the X',Y'
-# coordinate system.  The offset between the two coordinate systems is
-# X0 = (P)(MXP)C1 and Y0 = (P)(MYP)C1, and the coordinate systems are 
-# rotated by angle theta = (P)(MYP)C2.
-
-# These two records are where the soft motors write their output.
-# They are needed because writing to a transform record field does not
-# cause the record to process?
-# We use forward links to the transform record (rather than making the INPA and
-# INPB fields of the transform record CP) so that the scan record waits 
-# for the motors to move.
-grecord(ao,"$(P)$(MXP)DVAL") {
-	field(FLNK, "$(P)$(T)Drive")
-}
-grecord(ao,"$(P)$(MYP)DVAL") {
-	field(FLNK, "$(P)$(T)Drive")
-}
-
-# This record is processed whenever the soft motor records XP or YP write
-# new values to the DVAL records above.
-# Note: the INPA and INPB fields get their values directly from the .DVAL
-# fields of the soft motor records, rather than from the DVAL record above.
-# This is because the .DVAL fields are always correct, while the DVAL records
-# do not get updated when the soft motor .DVAL fields are modified in SET mode.
-grecord(transform,"$(P)$(T)Drive") {
-	field(INPA,"$(P)$(MXP).DVAL NPP NMS")
-	field(INPB,"$(P)$(MYP).DVAL NPP NMS")
-	field(INPC,"$(P)$(MXP)C1.VAL NPP NMS")
-	field(INPD,"$(P)$(MYP)C1.VAL NPP NMS")
-	field(INPE,"$(P)$(MYP)C2.VAL NPP NMS")
-        field(CLCF,"0.0174533 * E")
-	field(CLCG,"C+A*COS(F)-B*SIN(F)")
-        field(OUTG,"$(P)$(XDRV) PP MS")
-	field(CLCH,"D+A*SIN(F)+B*COS(F)")
-        field(OUTH,"$(P)$(YDRV) PP MS")
-	field(PREC,"$(PREC)")
-}
-
-# This record is processed to set the origin of the XP, YP coordinate system
-# to be the current position of the motors.
-grecord(transform,"$(P)$(T)synch") {
-	field(INPA,"$(P)$(XDRV) NPP NMS")
-	field(INPB,"$(P)$(YDRV) NPP NMS")
-	field(CLCC,"A")
-	field(OUTC,"$(P)$(MXP)C1.VAL PP MS")
-	field(CLCD,"B")
-	field(OUTD,"$(P)$(MYP)C1.VAL PP MS")
-	field(PREC,"$(PREC)")
-}
-
-# This record calculates the readback positions of the soft motors.  It 
-# processes whenever the readbacks of the real motors change, or whenever
-# one of the the geometry constants changes.
-grecord(transform,"$(P)$(T)Readback") {
-	field(INPA,"$(P)$(XRBV) CP MS")
-	field(INPB,"$(P)$(YRBV) CP MS")
-	field(INPC,"$(P)$(MXP)C1.VAL CP MS")
-	field(INPD,"$(P)$(MYP)C1.VAL CP MS")
-	field(INPE,"$(P)$(MYP)C2.VAL CP MS")
-        field(CLCF,"0.0174533 * E")
-	field(CLCG,"(B-D)*SIN(F)+(A-C)*COS(F)")
-	field(CLCH,"(B-D)*COS(F)-(A-C)*SIN(F)")
-	field(PREC,"$(PREC)")
-}
-
-# This record processes if either of the sof motor STOP fields is set.
-grecord(dfanout,"$(P)$(T)Stop") {
-        field(VAL,"1")
-        field(OUTA,"$(P)$(XSTOP) PP MS")
-        field(OUTB,"$(P)$(YSTOP) PP MS")
-}
-
-# This record computes whether the compound motor is done moving.  
-# It goes to 1 when both real motors are done moving.
-# positions of the real motors.
-grecord(calcout,"$(P)$(T)Done") {
-        field(INPA,"$(P)$(XDONE) CP MS")
-        field(INPB,"$(P)$(YDONE) CP MS")
-        field(CALC,"A & B")
-}
diff --git a/xxxApp/Db/pseudoMotor.db b/xxxApp/Db/pseudoMotor.db
deleted file mode 100644
index ad6bda9..0000000
--- a/xxxApp/Db/pseudoMotor.db
+++ /dev/null
@@ -1,86 +0,0 @@
-grecord(bo,"$(P)$(M)_able")
-{
-	field(DESC,"motor enable")
-	field(PINI,"YES")
-	field(OUT,"$(P)$(M)_ableput.A PP MS")
-	field(ZNAM,"Enable")
-	field(ONAM,"Disable")
-}
-grecord(motor,"$(P)$(M)")
-{
-	field(DESC,"$(DESC)")
-	field(DTYP,"Soft Channel")
-	field(DINP,"$(DINP)")
-	field(DIR,"$(DIR)")
-	field(VELO,"$(VELO)")
-	field(VMAX,"$(VELO)")
-	field(S,"0")
-	field(VBAS,"$(VBAS)")
-	field(SBAS,"0")
-	field(ACCL,"$(ACCL)")
-	field(BDST,"$(BDST)")
-	field(BVEL,"$(BVEL)")
-	field(BACC,"$(BACC)")
-	field(OUT,"$(OUT)")
-	field(RDBL,"$(RDBL)")
-        field(URIP,"Yes")
-        field(STOO,"$(STOO)")
-	field(MRES,"$(MRES)")
-	field(RRES,"$(RRES)")
-	field(PREC,"$(PREC)")
-	field(EGU,"$(EGU)")
-	field(DHLM,"$(DHLM)")
-	field(DLLM,"$(DLLM)")
-	field(TWV,"1")
-        field(RTRY,"0")
-        field(OFF,"0.")
-        field(FOFF,"Frozen")
-	field(NTM,"NO")
-}
-grecord(transform,"$(P)$(M)_ableput")
-{
-	field(CLCB,"a")
-	field(CLCC,"a")
-	field(OUTA,"$(P)$(M).DISA NPP NMS")
-	field(OUTB,"$(P)$(M).DISP NPP NMS")
-	field(OUTC,"$(P)$(M).DISA NPP NMS")
-}
-
-# Note: the C1-C5 records have PINI=1 so that they process once.
-# If they don't then they have STAT=UDF and SEVR=Invalid, and records
-# like the transform record will report bad input links.
-grecord(ao,"$(P)$(M)C1") {
-	field(DESC, "User-defined geom. const. 1")
-        field(VAL,"1")
-        field(PINI,"1")
-	field(PREC, "$(PREC)")
-	field(EGU, "$(EGU)")
-}
-grecord(ao,"$(P)$(M)C2") {
-	field(DESC, "User-defined geom. const. 2")
-        field(VAL,"1")
-        field(PINI,"1")
-	field(PREC, "$(PREC)")
-	field(EGU, "$(EGU)")
-}
-grecord(ao,"$(P)$(M)C3") {
-	field(DESC, "User-defined geom. const. 3")
-        field(VAL,"1")
-        field(PINI,"1")
-	field(PREC, "$(PREC)")
-	field(EGU, "$(EGU)")
-}
-grecord(ao,"$(P)$(M)C4") {
-	field(DESC, "User-defined geom. const. 4")
-        field(VAL,"1")
-        field(PINI,"1")
-	field(PREC, "$(PREC)")
-	field(EGU, "$(EGU)")
-}
-grecord(ao,"$(P)$(M)C5") {
-	field(DESC, "User-defined geom. const. 5")
-        field(VAL,"1")
-        field(PINI,"1")
-	field(PREC, "$(PREC)")
-	field(EGU, "$(EGU)")
-}
diff --git a/xxxApp/Db/pseudoMotor_settings.req b/xxxApp/Db/pseudoMotor_settings.req
deleted file mode 100644
index ed54d49..0000000
--- a/xxxApp/Db/pseudoMotor_settings.req
+++ /dev/null
@@ -1,16 +0,0 @@
-# FILE... pseudoMotor_settings.req
-$(P)$(M).DHLM
-$(P)$(M).DLLM
-$(P)$(M).TWV
-$(P)$(M).DISA
-$(P)$(M).DISP
-$(P)$(M).OFF
-$(P)$(M)C1
-$(P)$(M)C2
-$(P)$(M)C3
-$(P)$(M)C4
-$(P)$(M)C5
-$(P)$(M)_able.VAL
-$(P)$(M):scanParms.SP
-$(P)$(M):scanParms.EP
-$(P)$(M):scanParms.NP
diff --git a/xxxApp/Db/sumDiff2D.db b/xxxApp/Db/sumDiff2D.db
deleted file mode 100644
index d9ea12b..0000000
--- a/xxxApp/Db/sumDiff2D.db
+++ /dev/null
@@ -1,75 +0,0 @@
-# This database implements a generic 2-D coordinate transformation.  Given two
-# real motors $(P)$(M1DRV) and $(P)$(M1DRV), which move parallel to each other,
-# it will move two soft motors $(P)$(SUM) and $(P)$(DIFF) as the weighted 
-# average and difference of the two real motors.  The weighting factors are 
-# as follows:
-# SUM = (( $(P)$(M1DRV) * $(P)$(SUM)C1 ) + ( $(P)$(M2DRV) * $(P)$(SUM)C2 )) /
-#       ( $(P)$(SUM)C1) + $(P)$(SUM)C2 )
-# DIFF = (( $(P)$(M1DRV) - $(P)$(M2DRV) ) * ( $(P)$(DIFF)C1 )
-# Thus the SUM C1 and C2 terms are the "distances" from the center and the 
-# DIFF C1 term is a units conversion, e.g. to degrees for a rotation system.
-
-# These two records are where the soft motors write their output.
-# They are needed because writing to a transform record field does not
-# cause the record to process?
-# We use forward links to the transform record (rather than making the INPA and
-# INPB fields of the transform record CP) so that the scan record waits 
-# for the motors to move.
-grecord(ao,"$(P)$(SUM)DVAL") {
-	field(FLNK, "$(P)$(T)Drive")
-}
-grecord(ao,"$(P)$(DIFF)DVAL") {
-	field(FLNK, "$(P)$(T)Drive")
-}
-
-# This record is processed whenever the soft motor records SUM or DIFF write
-# new values to the DVAL records above.
-# Note: the INPA and INPB fields get their values directly from the .DVAL
-# fields of the soft motor records, rather than from the DVAL record above.
-# This is because the .DVAL fields are always correct, while the DVAL records
-# do not get updated when the soft motor .DVAL fields are modified in SET mode.
-grecord(transform,"$(P)$(T)Drive") {
-	field(INPA,"$(P)$(SUM).DVAL NPP NMS")
-	field(INPB,"$(P)$(DIFF).DVAL NPP NMS")
-	field(INPC,"$(P)$(SUM)C1.VAL NPP NMS")
-	field(INPD,"$(P)$(SUM)C2.VAL NPP NMS")
-	field(INPE,"$(P)$(DIFF)C1.VAL NPP NMS")
-        field(CLCF,"C+D")
-	field(CLCG,"A+(B*D)/(E*F)")
-        field(OUTG,"$(P)$(M1DRV) PP MS")
-	field(CLCH,"A-(B*C)/(E*F)")
-        field(OUTH,"$(P)$(M2DRV) PP MS")
-	field(PREC,"$(PREC)")
-}
-
-# This record calculates the readback positions of the soft motors.  It 
-# processes whenever the readbacks of the real motors change, or whenever
-# one of the the geometry constants changes.
-grecord(transform,"$(P)$(T)Readback") {
-	field(INPA,"$(P)$(M1RBV) CP MS")
-	field(INPB,"$(P)$(M2RBV) CP MS")
-	field(INPC,"$(P)$(SUM)C1.VAL CP MS")
-	field(INPD,"$(P)$(SUM)C2.VAL CP MS")
-	field(INPE,"$(P)$(DIFF)C1.VAL CP MS")
-        field(CLCF,"C+D")
-	field(CLCG,"((A*C) + (B*D))/F")
-	field(CLCH,"(A-B)*E")
-	field(IVLA,"Do Nothing")
-	field(PREC,"$(PREC)")
-}
-
-# This record processes if either of the soft motor STOP fields is set.
-grecord(dfanout,"$(P)$(T)Stop") {
-        field(VAL,"1")
-        field(OUTA,"$(P)$(M1STOP) PP MS")
-        field(OUTB,"$(P)$(M2STOP) PP MS")
-}
-
-# This record computes whether the compound motor is done moving.  
-# It goes to 1 when both real motors are done moving.
-# positions of the real motors.
-grecord(calcout,"$(P)$(T)Done") {
-        field(INPA,"$(P)$(M1DONE) CP MS")
-        field(INPB,"$(P)$(M2DONE) CP MS")
-        field(CALC,"A & B")
-}
-- 
GitLab