Argonne National Laboratory

Experimental Physics and
Industrial Control System

2012  2013  2014  <20152016  2017  2018  2019  Index 2012  2013  2014  <20152016  2017  2018  2019 
<== Date ==> <== Thread ==>

Subject: Re: Questions about code-free development with epicsqt
From: "Chavez, Joy" <jchavez@gemini.edu>
To: Andrew Rhyder <Andrew.Rhyder@synchrotron.org.au>
Cc: "qti-talk@aps.anl.gov" <qti-talk@aps.anl.gov>
Date: Sun, 23 Aug 2015 18:57:21 -1000
Hi Andrew,

I can talk to our software engineers who manage our PV about doing the arithmetic on the EPICS side.  I'm just a user of the PV, wanting to make audible alarms for the telescope operators, since dm screens don't allow for audio.

I can definitely work with some code, especially if there are examples to follow.  I was getting really confused because I could not manipulate the signals/slots I made in the designer to do the things I needed.  Nor could I incorporate the signals/slots from the .cpp into the designer and the qegui.   But I guess I didn't think along the lines of coding a new widget.  

It would probably do better to write my own widget.  The logic for an alarm state includes not just the alarm states of the PV, but also the states of equipment (e.g. There is no alarm if the dome is closed, even if the PV for humidity is over our limit.) So I need to be able to add some complexity onto the PV alarm states before triggering alarms.  

Thank you for this help,

-Joy

Joy Chavez
Science Operation Specialist
Gemini Observatory, North
670 N. A'ohoku Place
Hilo, HI
808-974-2580

On Sun, Aug 23, 2015 at 4:38 PM, Andrew Rhyder <Andrew.Rhyder@synchrotron.org.au> wrote:

Hi Joy

 

While the QE framework is designed to enable both ‘code-free’ GUIs using qegui to present GUIs and to support you writing your own display applications when you need to, there is a middle path that may allow you to use all the features that qegui provides and get the functionality you need without writing your own application.

 

Before I discuss how you might add the functionality you require to your GUI, I wonder if the comparison of the two values would best be performed in an EPICS calculation record? If the subtraction result is not intrinsically part of the GUI, but rather an operational state of your hardware, perhaps having this result calculated in EPICS and then available to any GUI that needs to present would be better?

 

That said, it is easy to write your own widget to do what you want based on a QE framework widget, or using QE framework classes, to manage reading and writing EPICS data, managing user levels, logging, etc.

 

A widget that does what you describe need only be a couple of hundred lines long, and most of that would be code similar to many working examples in the framework.

This widget can reside in your own plugin library which you can use alongside the QE framework plugin.

 

I have had a bit of a play and have written a widget similar to what you require that is around 120 lines long, and the part implementing your functionality is around 25 lines.

It monitors a couple of PVs, displays the difference between the values as text in a label, sets the background colour and plays a sound depending on the calculation result.

 

I can put this in its own plugin library and send it to you if that would help.

 

Alternatively, if you want to write your own application, I can provide examples on how to use the QE framework to connect to PVs and monitor data, connection status, and alarm status. Also, if you do write your own application, many features and tools in the qegui display application such as error logging and user levels are available to your own application through the QE framework library.

 

Regards

Andrew

 

 

From: qti-talk-bounces@aps.anl.gov [mailto:qti-talk-bounces@aps.anl.gov] On Behalf Of Chavez, Joy
Sent: Thursday, 20 August 2015 10:03 AM
To: qti-talk@aps.anl.gov
Subject: Questions about code-free development with epicsqt

 

Hi,

 

I am new to EPICS, QT, and epicsqt and struggling to write an alarm based on several epics channels at our observatory.  

 

I would like to stay within QTDesigner because QEGui doesn't recognize arithmetic or logic that I code in QTCreator.  And, I like the user levels and epics options that QEGui window offers that are not available when I 'run' the ui/project from QTCreator.  

 

But I don't know how to do the same arithmetic or logic within QTDesigner.  I would like to subtract the values from two channels, and and then based on weather conditions have colors change in QEGroupBoxes and sounds play.  

 

I am happy to go into more details, but I hesitate if this is correct forum for hand-holding with widget creation.  Are there examples that do show some of these things?  Would private messaging be better?

 

Thank you,


Joy Chavez
Science Operation Specialist
Gemini Observatory, North
670 N. A'ohoku Place
Hilo, HI
808-974-2580



References:
Questions about code-free development with epicsqt Chavez, Joy
RE: Questions about code-free development with epicsqt Andrew Rhyder

Navigate by Date:
Prev: RE: Questions about code-free development with epicsqt Andrew Rhyder
Next: how to only let the running environment is displayed in the client? huxq@hhmtc.com
Index: 2012  2013  2014  <20152016  2017  2018  2019 
Navigate by Thread:
Prev: RE: Questions about code-free development with epicsqt Andrew Rhyder
Next: how to only let the running environment is displayed in the client? huxq@hhmtc.com
Index: 2012  2013  2014  <20152016  2017  2018  2019 
ANJ, 16 Dec 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·