NI VeriStand Add-Ons Discussions

cancel
Showing results for 
Search instead for 
Did you mean: 

Scan Engine & EtherCAT Custom Device Feedback

4.0 is posted that fixes one bug with local chassis and adds a lot more module support, including data rate

Stephen B
0 Kudos
Message 151 of 676
(717 Views)

note the upgrade notes, you must mutate.

Stephen B
0 Kudos
Message 152 of 676
(717 Views)

Hi,

I just upgraded my Scan-engine CD to version 4.0. I created a new NIVS project, I can successfully detect my cRIO modules located in a remote NI-9144 connected to a cRIO-9082 running NIVS-2012 SP1.

When deploying the project, I get a 1003 error. When opening Web console while deploying, I get some errors (Cf capture below) before 1003 error is displayed.

Regards

Vincent

Web_Console.png

I

0 Kudos
Message 153 of 676
(717 Views)

I just rebooted my cRIO and I can deploy my NIVSSDF file.

Regards

Vincent

0 Kudos
Message 154 of 676
(717 Views)

Yikes. Scared me!

Stephen B
0 Kudos
Message 155 of 676
(717 Views)

I built a system for a customer that includes Veristand running on a PXI controller and an etherCAT network (serial topology) that includes (5) 9144 Chassis'. The last chassis uses custom FPGA and the rest are using the scan engine. I have installed:

  • Scan Engine and EtherCAT 2011 v3.4
  • NIRIO4.1
  • Veristand 2011

The application works great, including the FPGA! However there is an issue that surfaces that is difficult to both solve and determine the cause. It may fail to deploy with the cause of the last chassis not communicating (custom FPGA). I believe this happens when the power has been removed for some  of the chassis but not all. Maybe the chassis that was powered off is still in a mode other than configuration (scan engine). I have had this happen three times only and each time I got it to work with different approaches. I have a short memory so forgive me if I do not have the exact details.

  1. The first time I resolved this by creating a project in LabVIEW and using some forgotton utility that I cannot seem to find anymore and manually changing the scan mode to configuration. I remember there were four states that you could transition but they had to be in order and it would throw an error if the scan engine could not enter in the last state (run maybe?). I would love any information getting this utility back as well as I forgot how to create this hardware in a labview project.
  2. This approach was terrible as I completely screwed up the configuration file by choosing to rescan for channels which renamed all channels. This did not fix the issue, rather it created more work since there is almost 300 channels I had to rename. I do not remember how I got it to work this time. I think I deployed different bitfiles until it worked but not sure.
  3. I switched back and forth from using custom FPGA and scan engine and power cycling until it worked. I am not sure if it was the power cycling or the re-load of a bit file.

Any information is greatly appreciated.

Thanks,

Chris

PS. Love the custom device. Great work.

0 Kudos
Message 156 of 676
(717 Views)

Hi Chris,

Usually power-cycling the system should be enough to get the EtherCAT slaves into the correct state.  You can access the utility in LabVIEW by right-clicking the 9144 in the project and selecting "Online Device State...".  In order to do this, you will need to be connected to the target (which is why it's showing up as greyed-out in my screenshot below).

Untitled.png

0 Kudos
Message 157 of 676
(717 Views)

Hi,

I want to report a problem with Shared variable names. Once there is underscore character in the shared variable name hosted on FPGA in some cases you will get the following error:

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

The VeriStand Gateway encountered an error while deploying the System Definition file.

Details:

Error -2147138277 occurred at Project Window.lvlib:Project Window.vi >> Project Window.lvlib:Command Loop.vi >> NI_VS Workspace ExecutionAPI.lvlib:NI VeriStand - Connect to System.vi

Possible reason(s):

A mismatch was found between user-defined variables deployed and running on the slave device's FPGA. Updating and redeploying the project, or re-downloading the FPGA VI, may fix this problem.

=========================

A mismatch was found between user-defined variables deployed and running on the slave device's FPGA. Updating and redeploying the project, or re-downloading the FPGA VI, may fix this problem.

=========================

NI VeriStand:  NI VeriStand Engine.lvlib:VeriStand Engine Wrapper (RT).vi >> NI VeriStand Engine.lvlib:VeriStand Engine.vi >> NI VeriStand Engine.lvlib:VeriStand Engine State Machine.vi >> NI VeriStand Engine.lvlib:Initialize Inline Custom Devices.vi >> Custom Devices Storage.lvlib:Initialize Device (HW Interface).vi

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

• Unloading System Definition file...

• Connection with target Controller has been lost.

Work around is to not use special characters and underscore in variable name.

Ondřej

CLA, CTA, CLED
0 Kudos
Message 158 of 676
(717 Views)

Hi Ondřej,

Thanks for the report. This is strange since all we do is compare the names in the sysdef to what the variable API name property returns.

Capture.PNG

I wonder if that property returns some escaped name or something like that.

Can you use the attached VI to browse to one of your IO variables and then run it to ge tthe name property? Thank you

Stephen B
0 Kudos
Message 159 of 676
(717 Views)

Hi,

I already wrote to Devin_K in PM I can provide him (or to anybody who is involved in EtherCAT Custom Device development) source code and bifiles to be able to reproduce and work on this issue. It took me almost two weeks to find out the reason behind this issue and to be honest I am not willing to continue in this (mainly because of the time reasons). So if you want it, feel free to send me PM with your mail contact and I will give you the code.

Thank you,

Ondřej Kuba

NIEE AE

CLA, CTA, CLED
0 Kudos
Message 160 of 676
(717 Views)