From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

Is it permissible to create a custom VBAI Step to acquire images from unsupported cameras?

Solved!
Go to solution

Is there anything preventing the creation and usage of a custom VBAI Step to acquire images from unsupported cameras such as one with coaXPress interface?

 

I know that IMAQdx does not support coaXPress, but if one were to write a set of VIs around a 3rd party frame grabber driver it looks like a custom VBAI Step could grab an image and pass it to VBAI.

 

Thanks!

 

0 Kudos
Message 1 of 4
(2,652 Views)

I know this is not specifically about VBAI steps.. 
I would simulate this by just trying to insert pictures from a folder into VBAI with a custom step. If you are able to do that, you can definitely use it with your SDK.

 

Here's my experience with combining NI products and coaXPress:

 

1) I once wrote a coaXPress driver that simulated a GigE camera sending from localhost.

The IMAQdx driver is pretty stupid:

- it sends a discovery ping, you answer.
- you open the interface, you send a locking bit. 

- it reads out a lot of standard things.. heartbeat etc, but it doesn't check if anything is plausible, so you just answer with dummy data

- it reads this Genicam XML file that describes registers and parameters .. you either send a fake one.. or you transfer the CoaXPress xml file into the GigE format (it's very close). 

- You configure grabbing, IMAQdx sets up the stream channel and requests a text packet

- Then you start the grabbing (Snap = just an illusion.. is single picture grab) 

- Parameters gets and sets are simply forwarded, and that's it.

You don't need more than that. 

Took me like 1 week to implement (but I am quite familiar with how cameras work).
CPU load was terrible. I would not do it again.

 

2) There are like 2 company with decent knowhow on the market: Kaya and Pleora. Ask them if they have a CoaXPRess to CL or 10GigE converter.

 

3) If you can, choose a different interface.
LabVIEW works really well with 10GigE (even if it's not officially supported) - worked plug and play for me. And USB3.1 technically should work too, but I haven't used it at very high framerates.

Message 2 of 4
(2,621 Views)
Solution
Accepted by topic author Photon_Dan

To answer the original question, yes you can create a custom step to acquire from 3rd party CXP board. The custom step will need to be written in LabVIEW so you will need to have LV call the 3rd party DLL. You should first verify you can acquire images with LV to ensure the data types and parameters needed by the 3rd party DLL will work with LV. If this works, than it’s pretty straight forward to get the images into VBAI with a custom step or Run LabVIEW step. 

Message 3 of 4
(2,615 Views)

https://www.evaluationengineering.com/bitflow-touts-ni-labview-support-coaxpress

 

BitFlow offers a solution to connecting a CXP camera to a LabVIEW system.  We first did this back in 2011 with our first CXP board.  Contact us with questions.

Message 4 of 4
(2,537 Views)