Distributed Control & Automation Framework (DCAF)

cancel
Showing results for 
Search instead for 
Did you mean: 

Mapping visualization completely useless in real projects

I have a cRIO with 6 modules and a lot of IO. Here's what the mapping visualization looks like in DCAF:

Screen Shot 2018-06-24 at 10.56.09 AM.pngNobody thought of zooming?



Michael Aivaliotis
VI Shots LLC
Message 1 of 11
(6,419 Views)

Hi MichaelAivaliotis, thanks for the feedback, one of the areas where we are doing investment in DCAF is managing large number of tags. Right now for that map that you are showing we are just generating a image and displaying it there so its possible to add a zoom feature to it. Would that be enough? What would you expect to see in the mapping? With this large number of tags is the visual mapping the best option, or you would prefer it as a table? Would adding the export import to Excel would be useful? As an unrelated question what version of LabVIEW are you using?

Best Regards

 

Benjamin C
Principal Systems Engineer // CLA // CLED
Message 2 of 11
(6,391 Views)

I think there's already an export to CSV button, so that might be enough for a text export. However, visualization is nice to get a high level view of your mappings. I think zooming to fit width would be a good start. But any form of zoom is welcome.



Michael Aivaliotis
VI Shots LLC
0 Kudos
Message 3 of 11
(6,382 Views)

Hi

I have the same issue. 

I have found the directory where the temp image is saved - and then just open it in paint where I can zoom.

C:\Program Files (x86)\National Instruments\LabVIEW 2018\vi.lib\NI\DCAF\Tag Editor Core\Utilities\GraphViz Vizualizations

So export image button would be handy and copy to clipboard. 

 

I also think that the distance between the modules should be scaled to number of channels. This would give more room for the channels wires to bend without overlapping.  But not sure if this is a feature of GraphViz. 

 

Another option required is to sort tags before display (None/Asc/Dec). This could minimize cross overs in arrows. 

 

Allowing window to be resized/maximized would be beneficial. 

 

Nick

Message 4 of 11
(6,086 Views)

So I took my list of issues and implemented most of them.

With LabVIEW / DCAF closed, Go to C:\Program Files (x86)\National Instruments\LabVIEW 2018\vi.lib\NI\DCAF\Tag Editor Core\Utilities\GraphViz Vizualizations Rename to something else and then extract attached zip file there. it should then work through the DCAF editor, or else you can open and run GraphViz Vizualizations\Main - Select Target and View.vi to be prompted for a DCAF pcfg file.

 

Graphviz mapping viewer improvements:

Main - Select Target and View.vi

- fixed issue where it wasn't loading the default class paths. Run this VI when debugging to save going through DCAF UI. 

Select Target and Engine Dialog.vi

- added button to save going through file dialog every time it was run.

GraphViz Generator UI Wrapper.vi

- Updated Modules to View array to have sort options and color box selection

- Implemented match nearest X11 color name to color box color. (This has improved the dialog).

- Load all X11 color names from HTML file (but preserved default color list) - NOTE I did minor processing on table to remove white font tags and nbsp;   

- Replaced .NET picture viewer with native LabVIEW picture indicator with scroll bars (Improves support for other O.S.).

- Removed zoom option button (no longer required - and it was useless anyway as discussed above).

- Added picture control zoom from 0.5 to 2. (Less than 0.5 text becomes hard to read).

- Added view in external default png image editor button (Windows only)

- Added SaveAs button to export picture.

- Used standard LabVIEW temp file generator

- Implemented sorting on all channels ascending or descending or by channel types (I assume this will group then by inputs / process / outputs)

- Window is re-sizable

(Note - couldn't easily implement copy to clipboard. Can copy image of the picture control (but if diagram is bigger it is cropped).

 

I had a look at the graphviz documentation to try and increase the room around the blocks - with no luck getting decent output. 

 

Message 5 of 11
(6,030 Views)

Hi Benjamin

 

 

I think in DCAF with large numbers of tags we need to preserve a cluster hierarchy.  Then when it comes to visualization can then map clusters rather than individual tag wires.See attached image. 

 

Nick

 

0 Kudos
Message 6 of 11
(6,027 Views)

HI NickNZ, one thing we could look into is using the groups in the Tag Bus, that could give us something similar to that clustering.  This could help with the large channel count and we could even use it to make mapping better. 

We will also look into the code you submitted. You can make pull request directly into our github. https://forums.ni.com/t5/Distributed-Control-Automation/Collaborating-on-the-Development-of-DCAF/gpm...

Best Regards

 

Benjamin C
Principal Systems Engineer // CLA // CLED
0 Kudos
Message 7 of 11
(5,971 Views)

Created an issue to follow up on this: https://github.com/LabVIEW-DCAF/TagEditorCore/issues/397 

Benjamin C
Principal Systems Engineer // CLA // CLED
0 Kudos
Message 8 of 11
(5,962 Views)

Hi Benjamin

 

thanks - I haven't used GIT much - but my code is in 2018. Would need to get it back to 2013 which I didn't realize when I started out. 

 

I have two more improvements to suggest after quite a bit of use...

1) It does take a second or so to render a large image - in meantime the previous image is displayed - perhaps reset to blank image.

2) Return scroll bars to origin. 

 

Not sure when I can get onto this... 

Is there are DCAF road map / release plan?

 

Really wish there was a way to adjust spacing between the modules in rendering to give lines more space.

0 Kudos
Message 9 of 11
(5,777 Views)

Hi Nick, that sound like good changes. Some answers to the questions you made:

Regarding LabVIEW versions, for anything that is a core component of DCAF as its this part, we are working now in 2015. For new modules we allow them to be newer versions as some features require it. For example, the SystemLink module needed to be pushed to a higher version earlier than the rest of the packages.

We have a good Git tutorial with LabVIEW https://github.com/NISystemsEngineering/GitHub-Hands-on

Regarding releases, we plan to publish some bug fixes that were already on the repo but we were doing additional testing on them in the next couple weeks.

Regarding the Roadmap, I will add something to the Documentation folder, but right now we are finishing an effort with documentation that will include some benchmarks, as well as documentation for most of the modules. After we are down with this we are planning to add some additional integration with System link. This is the plan but showstopper bugs are always the highest priority.

Also as this is an Open Source project all our issues are open and we always welcome additional collaboration.

Best Regards

 

 

Benjamin C
Principal Systems Engineer // CLA // CLED
0 Kudos
Message 10 of 11
(5,743 Views)