07-07-2017 04:24 PM
Hi,
I have a PCI 8531 CANopen device in a CAN bus along with two encoders (i.e., POSITAPE WB21). Since I have two identical encoders, I need to change their Node ID. According to the device Manual, the node IDs should set between the ranges of 1-31. In order to communicate with both devices, I changed the node IDs of Encoder 1 and Encoder 2 to 11 & 12 respectively. I use the available vi examples in LabVIEW (i.e., NI CANopen for PXI PCI.lvproj) to check my network. When I use CANopen Read SDO.vi, I am able to confirm the changed node IDs by simply calling the device manufacturer’s name (as shown in figure bellow).
However, when I use CANopen Read TPDO.vi to read positions from the encoders, the vi does not recognize the newly changed Node IDs.
Any help would be appreciated.
Cheers,
Ramtin
07-17-2017 08:52 AM - edited 07-17-2017 08:53 AM
The CAN OPEN functions are simply to read the DBC, A2L file in and verify that it can read the file and see the hardware in the registry. It does not actually connect to a device at this time. Not sure if the Vector CANTech files are any different.
07-18-2017 07:56 AM
All the PDO VI does is requesting PDO data from node ID 11. I would rather say the device is not responding.
Do you have a manual that describes the PDO interface for this sensor.
Sometimes you need to send a specific initial frame to have the sensor send data on PDO.
DirkW
07-18-2017 10:56 AM
Thanks for the reply. I did manage to fix the issue. I needed to change the COB-ID of the sensors such that their corresponding frame messages include the updated new node IDs.
Cheers,
07-18-2017 10:57 AM
The issue was with the COB-ID of the sensors. I changed them such that their corresponding frame messages include the new node IDs. I can now communicate with multiple of them on the network.
Thanks,
Ramtin