From 90d6aa6dd3b79780c26c3b9746c541140bb45739 Mon Sep 17 00:00:00 2001 From: Rolf Bork <rolf.bork@ligo.org> Date: Wed, 4 Sep 2013 20:47:50 +0000 Subject: [PATCH] Added support for filter module EXCMON and TRAMP signals in synchronous EPICS DAQ. git-svn-id: https://redoubt.ligo-wa.caltech.edu/svn/advLigoRTS/trunk@3470 6dcd42c9-f523-4c6d-aada-af552506706e --- src/epics/util/fmseq.pl | 34 ++++++++++++---------------------- src/include/drv/daqLib.c | 18 ++++++++++-------- 2 files changed, 22 insertions(+), 30 deletions(-) diff --git a/src/epics/util/fmseq.pl b/src/epics/util/fmseq.pl index a8a5cbc8c..d553d0bd1 100755 --- a/src/epics/util/fmseq.pl +++ b/src/epics/util/fmseq.pl @@ -919,17 +919,19 @@ if ($gds_specified) { print "datatype = 4\n"; print "datarate = $gds_datarate\n\n"; $excnum++; - for(my $efn = 0;$efn < 9; $efn ++) + for(my $efn = 0;$efn < 11; $efn ++) { - if($efn == 0) {$edcuFilt .= "$edcuFiltName\_INMON]\n";} - if($efn == 1) {$edcuFilt .= "$edcuFiltName\_OFFSET]\n";} - if($efn == 2) {$edcuFilt .= "$edcuFiltName\_GAIN]\n";} - if($efn == 3) {$edcuFilt .= "$edcuFiltName\_LIMIT]\n";} - if($efn == 4) {$edcuFilt .= "$edcuFiltName\_OUT16]\n";} - if($efn == 5) {$edcuFilt .= "$edcuFiltName\_OUTPUT]\n";} - if($efn == 6) {$edcuFilt .= "$edcuFiltName\_SWSTAT]\n";} - if($efn == 7) {$edcuFilt .= "$edcuFiltName\_SWREQ]\n";} - if($efn == 8) {$edcuFilt .= "$edcuFiltName\_SWMASK]\n";} + if($efn == 0) {$edcuFilt .= "$edcuFiltName\_OFFSET]\n";} + if($efn == 1) {$edcuFilt .= "$edcuFiltName\_GAIN]\n";} + if($efn == 2) {$edcuFilt .= "$edcuFiltName\_LIMIT]\n";} + if($efn == 3) {$edcuFilt .= "$edcuFiltName\_TRAMP]\n";} + if($efn == 4) {$edcuFilt .= "$edcuFiltName\_SWREQ]\n";} + if($efn == 5) {$edcuFilt .= "$edcuFiltName\_SWMASK]\n";} + if($efn == 6) {$edcuFilt .= "$edcuFiltName\_INMON]\n";} + if($efn == 7) {$edcuFilt .= "$edcuFiltName\_EXCMON]\n";} + if($efn == 8) {$edcuFilt .= "$edcuFiltName\_OUT16]\n";} + if($efn == 9) {$edcuFilt .= "$edcuFiltName\_OUTPUT]\n";} + if($efn == 10) {$edcuFilt .= "$edcuFiltName\_SWSTAT]\n";} $edcuFilt .= "acquire=3\n"; $edcuFilt .= "datarate=16\n"; $edcuFilt .= "datatype=4\n"; @@ -1142,16 +1144,4 @@ print PROC $vproc; print PROC "};\n"; close PROC; -print STDERR "SENDINGEPICS FILE TO $ARGV[0]_edcu16 $edcuSizeI $edcuSizeD\n"; -open(PROC, ">$ARGV[0]_edcu16") || die "cannot open $ARGV[0]_edcu16.h file for writing"; -$edcuEntryI =~ s/%SITE%/$site/g; -$edcuEntryI =~ s/%SYS%/$systems[0]/g; -$edcuEntryD =~ s/%SITE%/$site/g; -$edcuEntryD =~ s/%SYS%/$systems[0]/g; -print PROC $edcuEntryI; -print PROC $edcuEntryD; -print PROC "Int Count = $edcuSizeI \n"; -print PROC "Double Count = $edcuSizeD \n"; -close PROC; - exit(0); diff --git a/src/include/drv/daqLib.c b/src/include/drv/daqLib.c index 1af18cfa5..1c3a10375 100644 --- a/src/include/drv/daqLib.c +++ b/src/include/drv/daqLib.c @@ -626,26 +626,28 @@ if(daqSlot == 1) // Write filter module EPICS values as floats for(ii=0;ii<MAX_MODULES;ii++) { - *testPtr = (float)dspPtr->data[ii].filterInput;; - testPtr ++; - // *testPtr = (float)dspPtr->data[ii].exciteInput;; - // testPtr ++; *testPtr = (float)dspPtr->inputs[ii].offset;; testPtr ++; *testPtr = (float)dspPtr->inputs[ii].outgain;; testPtr ++; *testPtr = (float)dspPtr->inputs[ii].limiter;; testPtr ++; + *testPtr = (float)dspPtr->inputs[ii].gain_ramp_time;; + testPtr ++; + *testPtr = (float)dspPtr->inputs[ii].swReq;; + testPtr ++; + *testPtr = (float)dspPtr->inputs[ii].swMask;; + testPtr ++; + *testPtr = (float)dspPtr->data[ii].filterInput;; + testPtr ++; + *testPtr = (float)dspPtr->data[ii].exciteInput;; + testPtr ++; *testPtr = (float)dspPtr->data[ii].output16Hz;; testPtr ++; *testPtr = (float)dspPtr->data[ii].output;; testPtr ++; *testPtr = (float)dspPtr->data[ii].swStatus;; testPtr ++; - *testPtr = (float)dspPtr->inputs[ii].swReq;; - testPtr ++; - *testPtr = (float)dspPtr->inputs[ii].swMask;; - testPtr ++; } } if(!xferDone) -- GitLab