09-12-2019 05:59 AM
Hello,
I have been given an early stage prototype project which was developed using LabVIEW 2018 SP1 on a Windows10 PC. The top level VI acts as a GUI and makes extensive use of subpanels; the subpanels are identical and are linked to clones of a single VI. I have been asked to check that it will operation on a real time system (see specs below) and I am sure it will come as no surprise to most of you that it will not deploy because subpanels are not supported by real time operating systems.
My initial though is to remove the subpanels and instead programmatically launching the clones as and when the user desires them controlling the position on the screen so as to create the illusion that they are part of the same application; the main application would still be there to provide the top level controls and indicators but again would be positioned in such a way as to maintain the illusion.
Would this be practical or is there a better way to do this?
I realise that I haven't been specific (e.g. providing the actual source code) so am just looking for guidance on general approach rather than something specific
Software: LabVIEW 2018 SP1, LabVIEW-RT 2018 SP1
Hardware: Dell laptop running Windows 10 Enterprise, cRIO 9039 running RT-Linux attached to an iiyama touch panel display
Solved! Go to Solution.
09-12-2019 06:59 AM
Generally, RT has not GUI. You use a remote system as an HMI if necessary.
09-15-2019 08:53 PM
@Dave.M wrote:
My initial though is to remove the subpanels and instead programmatically launching the clones as and when the user desires them controlling the position on the screen so as to create the illusion that they are part of the same application; the main application would still be there to provide the top level controls and indicators but again would be positioned in such a way as to maintain the illusion.
Would this be practical or is there a better way to do this?
This is about the only practical solution I've found, and is similar to the approach I've taken to simulate subpanels on RT. When the application launches there is a main top-level VI occupying the left of the screen, and half a dozen floating windows which all occupy the same space on the right of the screen (one on top of another).
All front panels are fixed sized, have no window decorations, and are set to floating. When the 'subpanel' VIs are launched, their panel size and position is set using the Front Panel Panel Bounds property. Each of the floating VIs are launched only once and brought into focus by setting the Front Panel Window.State property to Standard. This will float the window above all the others, making it visible.
@crossrulz wrote:
Generally, RT has not GUI. You use a remote system as an HMI if necessary.
Every Intel based cRIO and PXI controller that has a video out, has support for embedded UI when running Linux RT. Very handy for local monitoring and control when paired with a touch screen display.