NI VeriStand Add-Ons Discussions

cancel
Showing results for 
Search instead for 
Did you mean: 

Scan Engine & EtherCAT Custom Device Feedback

Stephen,

Sorry to not answer before but I was very busy.

I would thank you for your work. It will be easier to install the CD on the next systems.

  

Hubert

0 Kudos
Message 41 of 676
(4,997 Views)

Please do not upgrade to the new Industrial Communication for EtherCAT 2.3 driver yet. There are some things we need to do before this add-on is compatible.

Stephen B
0 Kudos
Message 42 of 676
(4,997 Views)

Software: Windows XP, VeriStand 2010 and have installed the Scan Engine & EtherCat Custom Device version 2.3

Hardware: PXI-1044 with a PXI-8231 Ethernet board connected to 4 slave NI-9144 EtherCat.

Model: Simulink pass-thru model (1khz rate)

C-series I/O Modules: 9477, 9476, 9426, 9425, 9205, 9264, 9265 

9477 - functions properly in all 4  NI-9144

9476 - functions properly in all 4  NI-9144

Several of the modules do not appear to function or function improperly.

9264 non-functional (tried several modules and different channels)

9425 gives correct value when pulled up to supply, but when no signal is applied or is grounded - it arbitrarily switches between states.

Untested 9205, 9265, 9426

VeriStand auto-detects the 9144 chassis and modules correctly and deploys without any errors

Thanks in advance for any advice

Curt

0 Kudos
Message 43 of 676
(4,997 Views)

Version 3.4 is posted that fixes compatibility with RIO 4.1 and ECAT 2.3 (as well as some other fixes and features)

Stephen B
0 Kudos
Message 44 of 676
(4,997 Views)

Hi Curt,

I tested the 9264 in the current version (NI VeriStand 2011) and it works as expected.  I don't have a 9425 available at the moment to test with.  I can try to set up a system tomorrow with NIVS 2010 and version 2.3 of the custom device, but I don't expect to see any difference in behavior.

I understand that John Wilson will be visiting you on Monday, so it would probably be easiest for him to help troubleshoot, and me assist remotely over the phone if necessary.

Regards,

Devin

0 Kudos
Message 45 of 676
(4,997 Views)

Dear Colleagues,

I've to develop an Hardware in the Loop application with NI Veristand 2011 and cRIO-908x and I guess the Scan Engine will greatly simplify the system configuration, but I have the following questions/needs:

a) Are thereany known issues in placing 2 NI 9862 moduels in the chassis?

b) The system has to drive valves/loads with PWM signals and more than 2-3 Amps: the solution would be short circuit some lines  of digital output modules as NI 9477 or NI 9425, and driving them simultaneously from the FPGA:

is there any way to create a custom FPGA  personality and to integrate it into the Scan Engine (then used in NI Veristand)?

This solution may enable a large number of new applications, without the need for customizing the FPGA template & XML description file.

Thanks so much for your help

Ciao

0 Kudos
Message 46 of 676
(4,997 Views)

Hi Wolverine (cool name!)

To answer your questions:

a) No, there are no limits.  You can have multiple 986x in the same chassis.  When you compile a bitfile with multiple 986x modules in the chassis, they will all internally share the same DMA channel for communication (this all happens automatically behind the scenes.  You don't need to do anything special for this).

b) Unfortunately there is no way to do this with the current version of the custom device.  You will either need to have the chassis fully in scan mode, or use the NI VeriStand FPGA template for all of your IO.  There are some current technical limitations that prevent having hybrid scan + FPGA configurations:

Using the scan engine custom device + the native NIVS FPGA support:

This doesn't work due to the limited number of DMA channels available on the cRIO.  The scan mode takes up 2 DMA channels, the NI VeriStand FPGA template requires 2 DMA channels, and the XNET modules require 1 DMA channel.  There are only 3 DMA channels total, so that's enough to do either scan + XNET or FPGA + XNET.  But scan + FPGA + XNET would require 5 DMA channels, which is more than the 3 available.

Using the scan engine custom device with a hyrid FPGA bitfile containing user-defined variables:

This sort of configuration is possible when using a 9144 EtherCAT chassis, but it is currently not possible with cRIO controllers.  Due to limitations in the NI-RIO driver, the user-defined variables in the bitfile are not discoverable by the API I use in the custom device.  This will hopefully be addressed in a future version of the driver and custom device, but at this time it is not possible.

WIth all of that said, the scan engine custom device does support having "specialty digital" modules in your cRIO chassis.  Specialty digital modules allow you to define some custom digital behavior (such as counters and pwm outputs) with the scan engine without the need to compile a bitfile.  There are some limitations to e aware of though:

  1. a max of 2 specialty digital modules per chassis
  2. speciality digital is only supported on digital modules with 8 channels or less (so your 32-channel 9477 and 9425 won't work)
  3. For PWM outputs, you can only have a fixed frequency for your pulse train.  There are 8 selectable frequency options per channel between 1 Hz and 20 kHz, but these values can only be changed at configuration, no run-time.  Writing the PWM yourself in FPGA could be more flexible if you need variable frequencies as well as duty cycle.

One other thing I should note regarding your setup.  The 9477 and 9425 have a relatively slow update rate (8us and 7us respectively), which make them poorly suited for fast digital pulsetrains such as PWMs.  The slow update rate of the module results in poor resolution for the duty cycle at high frequencies.  In general, it is recommended to use faster digital modules (typically most modules with 8 or less channels) in order to have a high-resolution PWM signal.  Unfortunately, we don't have an 8-channel sinking digital output module to use in place of the 9477, so the only option to work around this would be to use a sourcing digital output module with external pull-down resitors.

Regards,

Devin

0 Kudos
Message 47 of 676
(4,997 Views)

I just remembered the 9075 and 9076 cRIO chassis have 5 DMA channels. So you could do scan mode + FPGA code using the NIVS template at the same time and have 1 DMA left over. Unfortunately those chassis do not support XNET modules, so you wouldn't be able to use the leftover DMA for XNET.

Stephen B
0 Kudos
Message 48 of 676
(4,997 Views)

True, but they also only have a 400 MHz processor, so performance would not be very good.  The cRIO-908x that Wolverine mentions have the opposite problem;  they have great performance, but only have 3 DMA channels.

0 Kudos
Message 49 of 676
(4,997 Views)

Dear Devin,

I'm very sorry for my late feedback, but I really thank you so much for your explanations and clearifications. They made me thinking of using XNET + Custom FPGA, although I really hoped the XNET + Scan would have worked (it would really allow a fully configuration-based experience with NI Veristand and cRIO, that opens wide application scenarios...)

Although it seems there is no way to overcome the DMA channels limitations, is there any development plan you may disclose to just let me know what kind of related features will be available soon (of course, about the discussed topic)?

Thanks so much

ciao

0 Kudos
Message 50 of 676
(4,997 Views)