12-23-2011 10:01 AM
I am using NI-Industrial Communications for CANopen with a NI 9881 CANopen module on a cRIO in LabVIEW 2011.
I am trying to read a PDO from a slave device. At the moment the slave device is not fully functional. That is, the PDOs are not being transmitted. My problem is that the CANopen TPDO Read.vi is taking 8 to 9 seconds to execute even though the timeout is set to zero. It seems that even though my slave device is not transmitting the PDO, the CANopen TPDO Read.vi shoudl timeout immediately and return. Has anyone else experienced this problem? Are there any workarounds?
12-27-2011 04:02 PM
Hi wireman,
I'd like to point you at the NI-CANopen.lvproj in the NI Example Finder (available by searching CANopen). Inside that project is a TPDO_Read.vi that should work and eliminates programming variables from the troubleshooting process. I'm also curious, is the slave device actively on the network and is it sending heartbeat messages? Does the TPDO Read.vi return an error after the 8 to 9 seconds? If so, what is the code associated with it?
Let us know if using the shipping example project works or displays the same behavior.
Regards,
-Dave C