Real-Time Measurement and Control

cancel
Showing results for 
Search instead for 
Did you mean: 

Need help choosing the right cRIO for the job (9053, 9054 or something else?) and general sanity check

Hi. I'm about to order a cRIO controller and I'm a bit hesitant about which one to choose (this would be my first cRIO system, so I don't have enough experience with it).

Basically, the task is to control the imaging camera(s) and light sources and keep them in sync with each other.

 

If I understand the documentation correctly, the process should be as follows:

  1. User prepares the imaging sequence on the host PC. 
  2. This sequence is sent to the cRIO via Network Stream (to the non-deterministic helper loop).
  3. The imaging sequence is fed into the deterministic loop via the RT FIFO.
  4. Deterministic loop executes commands one-by-one from the FIFO buffer.
  5. Sequence executes until its over or the "Stop" command is received.

The sequence itself is very simple, it is pretty much a state machine, e.g.:

  1. Wait for "Camera idle" signal on digital input (NI 9401 or NI 9402).
  2. Set Light 1 brightness with the analog signal (NI 9263) and switch the light 1 on with help of TTL signal (also NI 9401 or NI 9402).
  3. Wait for "Light 1 ready" on the digital input (the lights have a TTL feedback signal because it takes some time to stabilise).
  4. Activate camera acquisition via TTL (dark magenta color) and send the synchronisation signal to external equipment via TTL output.
  5. Stop the camera acquisition (TTL output to 0) and wait until camera frame read is completed (light magenta color), turn sync signal off.
  6. Wait for "Camera idle" signal, switch off the Light 1.
  7. Repeat everything for the Light 2.

Repeat the whole sequence N times. The example of the sequence is on the picture below.

D_mitriy_0-1715179740365.png

 

 

Because of the speed and jitter requirements, I plan to implement everything on the FPGA side (some time ago I was able to borrow and test another cRIO device with the Real-Time engine, and at least the digital part worked, but was too slow; also there were no suitable analogue modules).

 

With all this information in mind, my questions are:

  • As the type of control loop I will be using is very basic, and will remain very basic even if there are more cameras and/or lights (3-5) but pretty much no data processing, is it OK to use the simplest  NI9053? If not, what are the other options/suggestions?
  • Are there any caveats regarding the analogue outputs or the module I have chosen (NI 9263)?
  • Is there anything terribly wrong with the above plan?

Thank you for any feedback or information.

 

 

Edit: fixed mistake on the picture.

 

0 Kudos
Message 1 of 1
(351 Views)