LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

CANopen

Solved!
Go to solution

Hi,

The following VI is used on a cRIO-9022, the canopen interface is NI-9881. The VI is used to actuate valves and the time stamp at SDO/RPDO writes are logged. The actual valve opening is delayed by about 12ms form the RPDO write on the bus. This can be seen from the plots attached, valve opening is picked up as spikes (vibration) in the X(orange) line plot. The plots are for the 'Valve sequence' event case (RPDO write). Why is this so? How can I reduce the delay?

Best regards,

Anurag

Download All
0 Kudos
Message 1 of 6
(2,608 Views)

Hi Anurag,

 

you might delete all those timed sequences. What are they good for?

You can also change all those "default if unwired" tunnels into regular ones!

What's the point of the empty TimeOut event?

You might also learn about using FormatIntoString instead of large ConcatString nodes combined with several NumToString nodes…

 

Please cleanup your VI, then reattach again for further analysis!

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
Message 2 of 6
(2,580 Views)

Hi GerdW,

Thank you for helping out. In the sequence the first frame (rpdo write) is used to open the valve, second frame for waiting (holding the state) and the final frame to close the valve, when flat frame is used the state is held longer than intended, just using the timed sequence is making it more presice. The timeout case is for the loop to stop when the variable 'All RT loop stop' becomes true. The cleaned up code is attached herewith.

Best Regards,

Anurag

0 Kudos
Message 3 of 6
(2,508 Views)

Hi Anurag,

 


@Anurag_NI wrote:

In the sequence the first frame (rpdo write) is used to open the valve, second frame for waiting (holding the state) and the final frame to close the valve, when flat frame is used the state is held longer than intended, just using the timed sequence is making it more presice


Well, this VI is not that "cleaned up" as expected.

It may look like this:

In which way should that TimesSequence be "more precise" than a default sequence? There is no timing setting (apart from "-1" = as fast as possible) visible for that "Timed" sequence…

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 4 of 6
(2,502 Views)

Hi,

The cleaned up VI is attached. Even though the no timing setting is given for the timed sequence, the valve behavior is different than when using a flat stucture. Also attached are the plots showing that. The valve holding time is eratic too when flat sequence is used(2 plots of 100ms for the flat sequence used is attached ). The plots show the time stamp taken in the second frame(aftert the first rpdo write) and the vibration caused by the valve opening. 

Best regards,

Anurag

Download All
0 Kudos
Message 5 of 6
(2,482 Views)
Solution
Accepted by topic author Anurag_NI

Hello,

Update: The valve would only open with the said delay, The techsheet from the manufacturer states it requires 20ms for switching on(data was misrepresented) . But the use of a timed sequence(even without a time wired in) improves the command excecution time remains unexplained.

Regards,

Anurag.

0 Kudos
Message 6 of 6
(2,431 Views)