VeriStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Custom Device: Clear Fault

Hi,

 

I would like to know, is it possible to ClearFault in custom device?

 

Here is my case:

I faulted one channel to NaN to trigger custom device from RT-Sequence. As long as the channel NaN is, then custom device will read value to ECU. My idea is, to ClearFault that channel before sending back the read value as output.

 

Looking for response....

 

Thanks,

 

Rajamodol

0 Kudos
Message 1 of 13
(6,291 Views)

Hi Rajamodol,

 

Can you further elaborate your hardware and software setup?

 

What kind of hardware do you have? Do you use LabVIEW or oher software products? Can you attach a sample program of yours to show me what you have done so far?

 

Thanks in advance!

 

Best regards

Christoph

Staff Applications Engineer
National Instruments
Certified LabVIEW Developer (CLD), Certified LabVIEW Embedded Systems Developer (CLED)


Don't forget Kudos for Good Answers, and Mark a solution if your problem is solved
0 Kudos
Message 2 of 13
(6,260 Views)

Hi Christoph_D,

 

Thanks for your reply...

 

I am using LV2012, TS2012, and VS2012 and PXIe8135.

 

The general idea is:

Fault one parameter from RT-Sequence

Check in custom device, if the parameter is faulted

If faulted, then get the value, clear fault.

 

What i want to do is:

1. I want to fault one parameter via RT-Sequence --> Worked!

    I have checked with Workspace, try to change the faulted value, it went back to faulted value.

 

2. I want to clear faulted value with custom device running on RT-Engine. I use "Clear Fault.vi" which is found in palette--> Worked!

    I faulted one parameter via RT-Sequence, then clear it with custom device (triggered with other input)

 

3. I want to check if my parameters are faulted or not with using custom device-->Doesnt Work!

    I use "Get Fault Value.vi" which is found in palette, it generates error:

   

 

Error -307652 occurred at an unidentified location

Possible reason(s):

NI VeriStand:  Failed to open a connection to NI VeriStand.exe.

 

 

Here is screenshot of my custom device.

 

Veristand_Fault_error.png

 

 

Can you please explain me why "Get Fault Value.vi" generates the error and "Clear Fault.vi" not?  I am using the same reference, and those VI's use the same API.

 

Thanks for your help!

 

Regards,

 

Rajamodol

0 Kudos
Message 3 of 13
(6,256 Views)

Hi Rajamodol,

 

thanks for the additional information!

 

Unfortunately I can not determin the reason for the problem on your screenshot so far. Can you upload your VI, so I can test it myself? Depending on the size on your project and additional dependencies please just keep the neccessary parts to reproduce the error.

 

Best regards

Christoph

Staff Applications Engineer
National Instruments
Certified LabVIEW Developer (CLD), Certified LabVIEW Embedded Systems Developer (CLED)


Don't forget Kudos for Good Answers, and Mark a solution if your problem is solved
0 Kudos
Message 4 of 13
(6,251 Views)

I can't give you the complete custom device.

 

But here is how i built custom device:

- Asynchone Custome Device built with template shipped from NI

- In the XXX Initialization.vi you need only two inputs. 1 for faulted value (=Faulted_Value), 1 for triggering clear fault (=Clear_Fault) from workspace.

- In the XXX RT Driver.vi you need only to connect Clear_Fault (take from RT FIFO Read array) with Case structure.

  If Clear_Fault>0

  then -->connect Faulted_Value (take from RT FIFO Read array) to NI VeriStand - Clear Fault.vi

  else -->wire the array normally. means do nothing.

 

You need then to build RT-Sequence with one parameter e.g, "Test1234". then write:

fault(Test1234, 100)

Save it to Fault.nivsseq.

 

After deploying system definition which contain of XXX custom device, you need to create 2 control variable for both Faulted_Value and Clear_Fault.

 

Run "Fault.nivsseq" with stimulus profile editor.

You should see Faulted_Value = 100, because it faulted and no way to modify it.

 

If you then set Clear_Fault to value >0 then, you can modify Faulted_Value to any value.

 

Now, we look to my problem.

 

I wanted to insert "NI VeriStand - Get Fault Value.vi" before clear fault to check if my Faulted_Value is faulted or not yet. It didn't work because "NI VeriStand - Get Fault Value.vi" generates the error i mentioned above.

 

Ps.

On "NI VeriStand - Open Fault Manager Reference.vi", i just let the "Gateway IP Address ("": localhost)" empty.

 

I hope you can reproduce my error.

 

THank you again for your quick response.

 

Regards,

 

Rajamodol

 

 

 

 

 

 

 

If put

0 Kudos
Message 5 of 13
(6,247 Views)

Hi Rajamodol,

 

can you send me an small example instead where the problem still exists instead of your complete project?

I really need something to work with and setting it up myself in the exact same way ist highly unsecure to reproduce the problem due to communication misconceptions.

 

Best regards

Christoph

 

Staff Applications Engineer
National Instruments
Certified LabVIEW Developer (CLD), Certified LabVIEW Embedded Systems Developer (CLED)


Don't forget Kudos for Good Answers, and Mark a solution if your problem is solved
0 Kudos
Message 6 of 13
(6,245 Views)

Hi Christoph_D,

 

here is the custom device.

 

It should work normally.

In RT-Driver.vi, when you enable the "diagram disable structure" to activate "NI VeriStand - Get Fault Value.vi" , then custom device will not work. I am trying also to find it why, but still no clue..

 

Thanks again for your quick response.

 

Rajamodol

0 Kudos
Message 7 of 13
(6,239 Views)

... and here is the fault.nivsseq to fault the input from RT-Sequence..

 

Thanks again for your response,

 

Rajamodol

0 Kudos
Message 8 of 13
(6,235 Views)

Hi Rajamodol,

 

you are welcome and thanks for the additional information!

 

I will need some time (until next week) to look into that since the behaviour looks a little bit awkward indeed.

 

Best regards

Christoph

Staff Applications Engineer
National Instruments
Certified LabVIEW Developer (CLD), Certified LabVIEW Embedded Systems Developer (CLED)


Don't forget Kudos for Good Answers, and Mark a solution if your problem is solved
0 Kudos
Message 9 of 13
(6,231 Views)

Hi Christoph_D,

 

some additional Info:

 

- I tested the custom device above, on my laptop. So, i am using my laptop as my target. It works. The problem with Get Fault Value can be resolved if i set my custom device to start after 500 loop. (PCL rate 250Hz). In real system i will have 2KHz.

- My opinion is, my custom device will start before other session completed deployed.

- When i use my Test System with real PXI-Controller, then i have got the error message:

Veristand__error66.png

 

I have read this article and set labview as suggested. It still doesn't work with PXI-controller.

 

 

So, how should i configure VI Server in LabVIEW to get custom device work? Or is any other configuration on PXI-Controller i should do?

 

Any help would be appreciated.... Thanks!

 

Rajamodol

 

0 Kudos
Message 10 of 13
(6,195 Views)