LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Wie kann ich ereignisgesteuerte Stopuhr programmieren?

How can I also write the Timeelements into an Aray? Every timvalue should be a new field in the 1DArray. After the Signal is done I would like to see which timevalues are received. The timevalues now to short. And how can I received the Values in my hostVI? I havent jet received any Timvalue from the fifo! P

 

Do you know other Method I can try?

 

Thank you very much!

 

Martin

0 Kudos
Message 21 of 41
(1,257 Views)

I don't now the binary range of the AI0 for your card. You can place defined voltages to the input and measure the range, in that case you know to correct value for 3V.

 

If I understand correctly you send a burst on DO0 and measure the pulse width by measuring the time difference between a digital and an analog channel? Or are you measuring something completely different.

 

What version of LV are you using by the way?

Regards,
André (CLA, CLED)
0 Kudos
Message 22 of 41
(1,255 Views)

Hi,

 

I use in the company LabVIEW 8.6. I want to measure a little bit another thing. I want measure howlong does it take til the IR-Reciver recognize the signal an turn turn the Outputvoltage from 5V to 0V ( measure threshold by 3V) an the pulsewidth form the response of the IR-Receiver. I need this Information to for checking how constancy the IR-Receiver recognize the emitted singnal from the infareddiode. After the measure I want asses the delaytime til the IR-Reiver jump form 0V to 5V. This times are especially information to test the Receiver. Later I want count the responsed pulses to know how constancy the IR-Receiver is. But before the counting I must receive the singal corectly and measure the delaytimes. The voltage of maximum voltage of the targe is 10V an as the scaled Value it is 32768 so I thought the threshold is 8200 for a 3V Value on the AI0. I response the received signal from the Reiver on the analog input. 

 

Sorry for my bad English. I' m not so good in English. I'm german.

 

Martin

0 Kudos
Message 23 of 41
(1,232 Views)

Hi ,

 

now I have made some scopepictures that you can see what I want measure. I the first picture you can see the whole burstsignal and in the second one you see the times that I want analyse and save for later aplication. How can I write the timevalues in an array? I want know which times are received. If I use an array only the first element is changing, but every time must be written as separate element in a 1D-Array.

 

Martin

0 Kudos
Message 24 of 41
(1,220 Views)
Channel 1 the sended Burstsignal and channel 2 the demodulated and received signal form the IR-Receiver.
0 Kudos
Message 25 of 41
(1,219 Views)

I have discussed it with my collegue and we came to a conclusion.

 

See the edge detection of both signals as a different task.

 

Task 1

Wait for a falling edge on AI0 and store the time AIt0

Wait fot a rising edge on AI0 and store the time AIt1

Start over again.

 

Task 2

Wait for the first rising edge on DI1 and store the time. DIt0

Wait for falling edges and store, replace the previous falling edge with the latest. DIt1

After receiving the rising edge on AI0 start over again.

 

Task 3

When the rising edge on AI0 has been detected send all four values (DIt0, AIt0, DIt1 and AIt1) to the host for further processing.

 

You would have to program the edge detcetion of the AI yourself, but the DI1 can be programmed using a FPGA IO method.

 

If the application proves to be too difficult, outsourcing part of it wouldn't be a bad idea. I'm based in the Netherlands.

 

 

Regards,
André (CLA, CLED)
0 Kudos
Message 26 of 41
(1,212 Views)

Ok I try this. Now there is another Problem do you know why I could not  start the Signal via the Host? I Want sart it form the host and put the values in an Array. How can I save the Values in an array, on wich every value is a seperate element? Before I write you I meen it worked rightly but now I couldn't start it from the host. It sends the parameters in the read/write but on the scope isn't a signal. What is wrong? The other things I would try an tell you if I have a Problem.

 

Martin

0 Kudos
Message 27 of 41
(1,207 Views)

The default value of stop should be set to false and it should be set to false before setting start to true.

 

Build array function. The FPGA only supports fixed size arrays. You need to exapnd the build array function to 4 elements.

Regards,
André (CLA, CLED)
0 Kudos
Message 28 of 41
(1,204 Views)

Hi I thought the same and the default value of the stop is false. But the signal doesn' start. Waht can I also try? Could be the "MELDUNG an Benutzer" the Problem? Can you maybe send me a host, that you know it must work and start the send_command inthe background on the FPGA?

That ist right that an array on the FPGA supports fixed size. I didn't thought at this at the moment. Thanks for remember. The elements form the build array function should I wire to DATA (Involke Method) on the host or better ild firstly a array on the FPGA  and wire the 4 elements with ement in the local FIFO in the send_command.vi?

 

Martin

 

Thanks for the patience with me!!

0 Kudos
Message 29 of 41
(1,191 Views)

Can you explain the logic for "start" in words?

 

I think the STOP condition is not necessary in the FPGA code, leave it out and wire a constant "false". You can use the ABORT method to stop the FPGA code or RESET to reset it to the default state.

 

You need to write the value to the DMA.FIFO one by one in a FOR-loop. Maybe add a special number before to indicate to the host a new set of values in available. You will have to rebuild the array and/or calculate the required time parameters.

Regards,
André (CLA, CLED)
0 Kudos
Message 30 of 41
(1,188 Views)