From ee412b49e59316e6b56530dcc84355d1362c6dc0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Denis?= <jfdenis@cea.fr>
Date: Thu, 19 Jan 2017 18:05:46 +0100
Subject: [PATCH] Fix the voltage calcul on plate

---
 db/EMU_PROCESS.template | 49 +++++++++++++++++++++++++++++------------
 1 file changed, 35 insertions(+), 14 deletions(-)

diff --git a/db/EMU_PROCESS.template b/db/EMU_PROCESS.template
index 7db5907..b6bd63a 100644
--- a/db/EMU_PROCESS.template
+++ b/db/EMU_PROCESS.template
@@ -5,22 +5,18 @@
 record(ao, "$(DEVICE):PROC-AngleMax-SP") {
   field(FLNK,"$(DEVICE):PROC-VoltMax")
   field(EGU, "mrad")
+  field(PINI,"YES")
 }
 
 record(calcout, "$(DEVICE):PROC-VoltMax") {
   field(VAL, "0")
   field(INPA,"$(DEVICE):PROC-AngleMax-SP")
   field(INPB,"$(DEVICE):CALC-FactMRADtoV")
-  ### /1000 => conversion in 0/10V  ###
+  ### /2000 => conversion in 0/10V  ###
   field(CALC, "(A*B)/2000")
   field(PREC, "4")  
-  field(EGU,"kV")   
-  field(OUT,"$(DEVICE):PROC-VoltMax-SP PP")
-}
-
-record(dfanout,"$(DEVICE):PROC-VoltMax-SP"){
-  field(OUTA,"$(DEVICE):$(SCAN_EF).P1EP PP")
-  field(OUTB,"$(DEVICE):$(SCAN_EF).P4SP PP")
+  field(EGU,"kV")
+  field(FLNK,"$(DEVICE):PROC-DeltaMaxVolt")  
 }
 
 #############################################
@@ -30,19 +26,48 @@ record(dfanout,"$(DEVICE):PROC-VoltMax-SP"){
 record(ao, "$(DEVICE):PROC-AngleMin-SP") {
   field(FLNK,"$(DEVICE):PROC-VoltMin")
   field(EGU, "mrad")
+  field(PINI,"YES")
 }
 
 record(calcout, "$(DEVICE):PROC-VoltMin") {
   field(VAL, "0")
   field(INPA,"$(DEVICE):PROC-AngleMin-SP")
   field(INPB,"$(DEVICE):CALC-FactMRADtoV")
-  ### /1000 => conversion in 0/10V
+  ### /2000 => conversion in 0/10V
   field(CALC, "A>0?(-A*B)/2000:(A*B)/2000")
   field(PREC, "4")  
+  field(EGU,"kV")
+  field(FLNK,"$(DEVICE):PROC-DeltaMaxVolt")  
+}
+
+#############################################
+############ ANGLE ##########################
+#############################################
+
+record(calcout, "$(DEVICE):PROC-DeltaMaxVolt") {
+  field(INPA,"$(DEVICE):PROC-VoltMax PP")
+  field(INPB,"$(DEVICE):PROC-VoltMin PP")
+  ### DELTA MAX calcul
+  field(CALC, "B>0?(A+B)/2:(A-B)/2")
+  field(PREC, "4")  
+  field(EGU,"kV")   
+  field(OUT,"$(DEVICE):PROC-VoltMax-SP PP")
+  field(FLNK,"$(DEVICE):PROC-DeltaMinVolt")  
+}
+
+record(calcout, "$(DEVICE):PROC-DeltaMinVolt") {
+  field(INPA,"$(DEVICE):PROC-VoltMax-SP")
+  ### DELTA MIN calcul
+  field(CALC, "A*(-1)")
+  field(PREC, "4")  
   field(EGU,"kV")   
   field(OUT,"$(DEVICE):PROC-VoltMin-SP PP")
 }
 
+record(dfanout,"$(DEVICE):PROC-VoltMax-SP"){
+  field(OUTA,"$(DEVICE):$(SCAN_EF).P1EP PP")
+  field(OUTB,"$(DEVICE):$(SCAN_EF).P4SP PP")
+}
 record(dfanout,"$(DEVICE):PROC-VoltMin-SP"){
   field(OUTA,"$(DEVICE):$(SCAN_EF).P1SP PP")
   field(OUTB,"$(DEVICE):$(SCAN_EF).P4EP PP")
@@ -71,11 +96,6 @@ record(seq,"$(DEVICE):PROC-PS-BF"){
   field(DO2,"1")
   field(LNK3,"$(DEVICE):BUFF-DET23-RES PP")
   field(DO3,"1")
-  field(LNK4,"$(DEVICE):$(SCAN_EF).AWAIT PP")
-  field(DO4,"1")
-  field(LNK5,"$(DEVICE):$(SCAN_EF).AWAIT PP")
-  field(DO5,"0")
-  field(DLY5,"0.2")
 }
 
 record(seq,"$(DEVICE):PROC-PS-AF"){
@@ -180,3 +200,4 @@ field(ONAM,"SIMU")
 #}
 
 
+
-- 
GitLab