EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  <20232024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  <20232024 
<== Date ==> <== Thread ==>

Subject: RE: [External] measComp R4-2 available
From: Mark Rivers via Tech-talk <tech-talk at aps.anl.gov>
To: "Leblanc, Gregory" <leblanc at ohio.edu>, "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov>
Date: Wed, 29 Nov 2023 17:42:44 +0000

Hi Greg,

 

That looks like an interesting device.  It should be easy to add support for it.  It will need a few lines of new code in drvMultifunction.cpp and a new .substitutions file.

 

Mark

 

 

From: Tech-talk <tech-talk-bounces at aps.anl.gov> On Behalf Of Leblanc, Gregory via Tech-talk
Sent: Wednesday, November 29, 2023 11:13 AM
To: tech-talk at aps.anl.gov
Subject: Re: [External] measComp R4-2 available

 

Anybody looked at using this driver with the USB-ERB08 device from the measurement computing?  I'm mostly looking for some relays that can switch several amps of AC and DC loads via EPICS control.  I don't necessarily have a preference for the measurement computing (now Digilent, it seems), but they were the ones I found with EPICS support.

     Greg

On 7/29/2023 10:37 AM, Mark Rivers via Tech-talk wrote:

Use caution with links and attachments.

Folks,

 

R4-2 of the measComp module is now available.  This is from the release notes:

1.       Added support for the following new models:

1.       USB-SSR08, which supports 8 solid-state relays.

2.       USB-1808 and 1808X. These support 8 18-bit analog inputs, 2 16-bit analog outputs, 2 50 MHz pulse-generators, 4 digital I/O bits, 2 counter inputs, and 2 quadrature encoder inputs.

2.       Added support for counter device to E-DIO24.substitutions.

3.       Added OPI and iocBoot files for the USB-3104.

4.       drvUSBCTR.cpp and drvMultiFunction.cpp

1.       Added new parameters for modelName, modelNumber, firmwareVersion, ULVersion, driverVersion, pollSleepMS, pollTimeMS, lastErrorMessage

2.       replacedPulseGenWidth with pulseGenDutyCycle.
pulseGenWidth is now calculated in the database from pulseGenFrequency and pulseGenDutyCycle.

3.       Changed the poller function to sleep for pollSleepMS rather than hardcoded time of 100 ms. The actual poller cycle time is now reported in pollTimeMS.

5.       drvMultiFunction.cpp

1.       Added a new global mutex to prevent multiple devices from calling the vendor library at the same time. This is needed to prevent errors with multiple Ethernet devices in the same IOC on Linux.

2.       Changes to support multiple pulse generators (timers) rather than only 1. Needed for USB-1808.

3.       Changes to support write-only and read-only digital I/O ports.

4.       The analog inputs are now read in the poller thread, rather than in the readInt32 method. The device support for analog inputs was changed from asynInt32 to asynInt32Average. This means that the device support now averages all of the values read by the poller thread between record processing. For example, if the poller thread is running at 100 Hz and the ai record SCAN field is .2 seconds then 20 values will be averaged each time the record processes. If the record SCAN field is I/O Intr then every value read in the poller thread will result in record processing with no averaging.

6.       measCompAnalogOut.template

1.       Changed PINI from YES to $(PINI=YES) so the default value can be overridden.

2.       Set PHAS=2 on the ao record to ensure that the Range record will process before the ao record.

7.       measCompBinaryIn.template

1.       Set DESC=$(DESC=) to allow optional passing a description macro value.

8.       measCompBinaryOut.template

1.       Set DESC=$(DESC=) to allow optional passing a description macro value on the bo and bi RBV records.

2.       Set PHAS=2 on the bo record to ensure that the Direction record will process before the bo record.

9.       measCompDevice.template

1.       New file with records for ModelName, ModelNumber, FirmwareVersion, ULVersion, DriverVersion, PollSleepMS, PollTimeMS, LastErrorMessage

10.   measCompEncoder.template

1.       New file with records for quadrature encoder inputs.

11.   measCompLongOut.template

1.       Changed PINI from YES to $(PINI=NO) so the default is now NO but can be overridden.

12.   measCompPulseGen.template

1.       Added DutyCycle record, and calc record logic to convert from DutyCycle to PulseWidth and vice versa.

13.   OPI files

1.       Add ModelName, ModelNumber, FirmwareVersion, ULVersion, DriverVersion, PollSleepMS, PollTimeMS, LastErrorMessage PV at top of each module screen.

14.   Documentation

1.       Added documentation for the records in the new measCompDevice.template file.

2.       Updated the screen shots to show the new measCompDevice embedded screen at the top.

3.       Added documentation for the USB-1808 models.

4.       Changed the analog input documentation to describe the new pollSleepMS record and asynInt32Average device support.

 

Home: https://github.com/epics-modules/measComp

Documentation: https://epics-modules.github.io/measComp/

 

Mark

 

-- 
Gregory Leblanc
Accelerator Engineer
Edwards Accelerator Lab - Ohio University
123 University Terrace
Athens, OH 45701 USA
leblanc at ohio.edu
M: (401) 52-OUAL1 or (401) 526-8251

References:
measComp R4-2 available Mark Rivers via Tech-talk
Re: [External] measComp R4-2 available Leblanc, Gregory via Tech-talk

Navigate by Date:
Prev: Re: Problem deploying Archiver Appliance Wang, Lin via Tech-talk
Next: Re: Problem deploying Archiver Appliance Eusebio Naif Al-Soliman Fuentes via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  <20232024 
Navigate by Thread:
Prev: Re: [External] measComp R4-2 available Leblanc, Gregory via Tech-talk
Next: Issues using IVOA field: 'Set output to IVOV' Crisp, Daniel via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  <20232024 
ANJ, 29 Nov 2023 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·