Welcome to our new forum
All users of the legacy CODESYS Forums, please create a new account at account.codesys.com. But make sure to use the same E-Mail address as in the old Forum. Then your posts will be matched. Close

Changin of Node ID

ath1208
2009-06-15
2009-06-19
  • ath1208 - 2009-06-15

    Dear all

    Please offer advise on this issue. I need to change Node ID of encoder with Canopen. The master is schneider VSD. After changing the Node ID values using object Object 0x2101 and saving using 0x1010_1. Upon power off/on, the node ID changes to Default value.

    Anybody encounter this before?

    Thanks in advance

     
  • spfeif - 2009-06-16

    Have you actually monitored the CAN bus info you are sending with a can monitor?

    How are you sending the SDO data? Using a layer two CAN block or through the 3S CANopen library?

    Are you sure the encoder accepted the SDO's and did not reject any (SDO errors)? Because 3S doesn't support the Object 1010 directly in the CANopen stack are you relying on the 3S stack to change the Node ID and then latter you send the save command 1010?

    What MFG encoder are you using? Changing the node ID is either performed by LSS service if supported by device manufacturer, but not supported by 3S or it is in a manufacturer specific area of the Object Dictionary. Some MFG may require that you change the Node ID in two places and they have to match in order for the ID to change. Also check an make sure that the node ID may be required to be changed during pre-op instead of op. Make sure in the OD 1010 that you have the "save" in the correct order (SDO errors). Let us know what you find.

     
  • ath1208 - 2009-06-19

    Dear

    Thanks for the advise. The encoder is baumer electric BMMH42S. The altivar VSD has a controller card. We used LSS to configure, but it was not successful. I guess tha other is to use function blocks to change. I dont have much experience with this, can you share your experience on creation of function blocks to change the Node ID.

    Thanks

     
  • spfeif - 2009-06-19

    Look in the 3S_CANopenManagerTable library and there is a function block CanOpenSendSDO use this to send SDO to the encoder. You mentioned that you tried sending 1010 sub 1 to the encoder how did you do this? With an external CAN device? How did you send any of the SDO you claimed in the first post?

    What is the CANopen baudrate of your network? What is the baudrate configured in the 3S stack within the CIC card? The default baud rate of the baumer encoder is 50kb and node ID 1. So if you set the baud rate of the 3S can stack to 125kb and are trying to send SDO to the encoder it will not work because the baud rates don't match.

    Step 1:

    Match baudrates of CIC PLC with Baumer encoder default 50kb.

    Step 2:

    Configure and send three SDO's 2100 2101 and 1010 to the encoder with node id 1 via SDO.

    Now the encoder is ready to be used on your network.

     

Log in to post a comment.