05-21-2018 07:59 AM
Hi!
I'm trying to configure a new web camera (USB 3.0).
Everything goes well till I'm trying to configure some attributes through LabView.
The problem is that it says it can't set some specific attributes, but when I'm using NI-MAX I can change these attributes(!), and when I'm using the camera SDK it says that these attributes are write-able!
Other attributes as 'ExposureTime' I'm able to set...
So what am I doing wrong?
Some specific details:
Camera: Flir Blackfly-s
Attributes: PixelFormat, BinningHorizontal, BinningVertical and some more...
This is my first post here, if I'm missing any details I would love to add them, just let me know [:
Thanks!
Barak
05-21-2018 01:15 PM
Hello, Barak.
There are many camera manufacturers out there, and many types of cameras, all with different APIs, different Attributes, etc. NI does a pretty good job tracking the more common specifications, but they are, in some sense, playing "Catch Up", chasing after the ever-changing and evolving specifications from the Manufacturers and their various models.
I've also seen instances where an attribute might be "visible" and modifiable in MAX, yet not appear to be present in the IMAQdx properties for the Camera. I admit that I would naively have thought that both MAX and the LabVIEW Development System would both be using the Vision Development Module and Camera Drivers for both MAX and LabVIEW, but there may be some "magic" behind the scenes that I don't understand.
If noone on the Forum has a better suggestion for you (wait a few days -- the Forum Users are pretty good!), consider contacting Support.NI.Com and asking the NI Application Engineers for help.
Bob Schor
05-21-2018 01:19 PM
Hi Barak,
When you try to set these properties, is the camera capturing images? Some properties can only be set when the camera is not capturing images.
05-22-2018 07:58 AM - edited 05-22-2018 08:00 AM
Hi!
Bob_Schor:
Let's hope we'll find a solution [:
gregoryj:
Nope, I'm trying to set the attributes before starting the snap or grab functions in IMAQdx.
Basically I'm just opening the camera and trying to change the attribute...
Thanks,
Barak
05-29-2018 02:39 AM
No one?
05-30-2018 09:51 AM
Barak,
I looked around and found other people who had issues setting PixelFormat on a variety of cameras. Have you seen the forum below?
Can't set PixelFormat on PointGrey Flea3 using IMAXdx
https://forums.ni.com/t5/Machine-Vision/Can-t-set-PixelFormat-on-PointGrey-Flea3-using-IMAXdx/td-p/3...
A quick summary:
05-31-2018 08:00 AM
Hi Reyquaza!
Thanks for the reply!
So I can do it using the Vision Acquisition Express but that's only fixes the problem with attributes I need to set at the startup of the camera.
But it seems a little bit of walk-around if I'm tying to change other attributes like 'Binning horizontal' that I'm changing all the time... I can write "if cases" and do it, but it's a little bit of walk-around... especially if I don't need to take a picture after changing that attribute (And not taking about setting all the other attributes again....).
So... That helped a lot for the initial stuff, but is there any solution for attributes like 'Binning' and etc?
Thanks again!
Barak
07-26-2023 11:39 AM
I have the same problem.
I can retrieve a list of camera attributes using the IMAQdx Enumerate Attributes VI. It contains the attribute CameraAttributes::AcquisitionControl::ExposureTime, but there is no way to change using the Property Node as suggested in the example given by NI (see \NI\LVAddons\niimaqdx\1\examples\Vision Acquisition\NI-IMAQdx\Camera Attributes\Change Configuration Attributes While Acquiring.vi). Any idea, somebody?
Cheers!
07-26-2023 04:07 PM
I haven't looked (recently) at the Example you mentioned, but I do know that IMAQdx Camera Attributes have a Name,Type, and two Booleans, Readable and Writeable. Does the Attribute that you want to change "show up", and is it Writeable? Are you using the correct "type" to write to it?
Bob Schor
07-27-2023 02:55 AM - edited 07-27-2023 03:46 AM
Hi Bob.
Thanks for replying. Yes, the attribute shows up when I look at the Attribute Information Array. It is called AcquisitionControl::ExposureTime and is supposed to be readable and writeable. The typy is DBL. My problem is that I have no idea how to write it (I am an beginner 😓). The mentioned example using the property node dows not work 🙄, but I am not so sure I am doing the correct things.
Cheers,
Thomas
P.S.: There is actually a file "Basler a2A1920-160umBAS (#0000267601CA08A2).icd" in the folder "C:\Users\Public\Documents\National Instruments\NI-IMAQdx\Data" which contains all the attributes. Apparently these are the default values.