LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Custom analog trigger | Error -200077 occurred at DAQmx Create Channel (AI-Voltage-Basic)

Hi,

 

I am having hard time trying to make a very simple custom analog trigger for my load cell acquisition system. I am trying to make a custom trigger because I have a NI USB-6210 DAQ system which cannot handle analog triggering.

 

I already have a program to make voltage acquisition from my load cell, it is working well, but without trigger (see first file).

 

In my new program with trigger (see second file), I try to add a trigger via the following idea:

First task : while loop(collect trigger voltage ; when voltage crosses threshold stop the loop and clear task).

Second task : when first task is over, start collecting voltage from load cell.

 

To order these tasks, I use a flat sequence structure.

 

The trigger voltage is a 0V (+- noise) that jumps to 5V for 10ns (Delsys trigger module).

 

RESULTS: 2 problems:

1) Labview complains about the terminal configuration of the trigger channel :

"Requested value is not a supported value for this property. The property value may be invalid because it conflicts with another property.

Property: AI.TermCfg
Requested Value: RSE
Possible Values: Differential
Channel Name: Trigger"

Problem is, if I set it to "differential", then the trigger voltage does not represent the actual signal anymore (it oscillates slowly from -5 to 5V) and does not react to the push button anymore. What should I do to solve this problem?

 

2) When I pass that trigger phase (by pressing stop button to end the first while loop), then for some reason the second while loop (load cell reading) doesn't launch and I can't see the load cell voltage (it jumps directly to the end to save the data). Why is that? Considering I am using the same acquisition program than the working one...

 

Is there something I didn't understand about the flat sequence structures?

 

Here in attachment a picture of my wiring : green wire on ai1 is the trigger voltage coming out of the Delsys trigger module ; black wires on ai3  and aiGND are the load cell voltage (signal and ground).

 

I am looking forward to a reply because I will have data collection 2 weeks...

 

Thank you so much.

 

Elias

0 Kudos
Message 1 of 4
(1,512 Views)

@Elias.LSKNN wrote:

 

 

RESULTS: 2 problems:

1) Labview complains about the terminal configuration of the trigger channel :

"Requested value is not a supported value for this property. The property value may be invalid because it conflicts with another property.

Property: AI.TermCfg
Requested Value: RSE
Possible Values: Differential
Channel Name: Trigger"

Problem is, if I set it to "differential", then the trigger voltage does not represent the actual signal anymore (it oscillates slowly from -5 to 5V) and does not react to the push button anymore. What should I do to solve this problem?

 


When you use a differential input, then you have to wire up the differential input.  Right now, I only see you wired to AI1, AI3 and AI Gnd.  It is not clear to me which of these you want to be the differential, the for AI1, the other input for a differential signal is AI9.  And for AI3 it is AI11 (That is why they are next to each other on the terminal strip.)   When you are set for differential, but the one side of the input is unwired, its voltage is floating since it has not potential with respect to the other input.

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

Thank you for your answer.

 

Actually I always use RSE, but here it doesn't work I don't know why, it prefers differential which I never used before, thank you for clarifying how it works.

 

But the main problem still remains, which is: why is my second loop not launching at all after I stop the first loop? (It jumps directly to file save).

 

Thank you

0 Kudos
Message 3 of 4
(1,482 Views)

What have you done to troubleshoot?   Highlight execution?  Debug probes?

 

A (significantly) better overall approach is to have 1 task containing both channels.  Until you meet the triggering condition on your "trigger" channel, you can ignore your load cell data.  But when it is met, you can start keeping your load cell data *IMMEDIATELY*, with no "blind time" while you make software calls to stop & clear one task and start another.

 

Also, I'd bet $ that the loop in your 2nd frame isn't being skipped.  Perhaps it rejects your attempt to configure for RSE, the error carries through and prevents the task from producing data, and the loop terminates on the very first iteration.  The troubleshooting steps I asked about at the top would have revealed this kind of thing.

 

 

-Kevin P

ALERT! LabVIEW's subscription-only policy came to an end (finally!). Unfortunately, pricing favors the captured and committed over new adopters -- so tread carefully.
0 Kudos
Message 4 of 4
(1,465 Views)