I've done a fair amount of looking. Codesys doesn't seem to have a library that easily supports sending and receiving of SDO messages greater than 4 bytes.
Is this true, or is there a library I'm unaware of?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Yes that seems correct to me. I have a library that I assume is written by my PLC vendor that allows reading/writing segmented SDO's. I personally haven't tried them yet. I would be happy to share them with you if they work in your system but I would also assume that the library would be hardware independent. There are two separate function blocks SDO_READ_NET.lib and SDO_WRITE_NET.lib. One function block in each library. Now the only thing I would guess is if you already have a node configured via the 3S CANOpen Stack in the PLC configuration I am not confident that this block will send or receive anything because the CANOpen stack may interrupt it first? I don't have any documentation on the library. Let me know if you want to try it.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Originally created by: jking222
I've done a fair amount of looking. Codesys doesn't seem to have a library that easily supports sending and receiving of SDO messages greater than 4 bytes.
Is this true, or is there a library I'm unaware of?
Yes that seems correct to me. I have a library that I assume is written by my PLC vendor that allows reading/writing segmented SDO's. I personally haven't tried them yet. I would be happy to share them with you if they work in your system but I would also assume that the library would be hardware independent. There are two separate function blocks SDO_READ_NET.lib and SDO_WRITE_NET.lib. One function block in each library. Now the only thing I would guess is if you already have a node configured via the 3S CANOpen Stack in the PLC configuration I am not confident that this block will send or receive anything because the CANOpen stack may interrupt it first? I don't have any documentation on the library. Let me know if you want to try it.