I'm trying to get an ifm CR7032 to act as a CANOpen slave.
I have added the slave to the device configuration, and when I select "heartbeating" and a heartbeat period I can see the heartbeat messages being broadcast on the bus.
If I select "automatic startup" then the PLC broadcasts OPERATIONAL status in its heartbeats.
The problem is that I cannot get it to do anything else.
For example, without the automatic startup the slave goes to PRE-OPERATIONAL state. NMT messages from the master do not change the state - neither sending a message to all nodes on the network, or sending specifically to the PLC slave works.
SDO requests are not responded to either. For example, a request for the mandatory device type at 0x1000 is not answered.
I have not configured any tx or rx PDOs in the default PDO mappings. It is just a minimal slave created through adding a device to the device manager then configuring the options in the tabs for that slave.
Is there some FB that needs to be called in my program to get the slave to respond?
π
1
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I'm trying to get an ifm CR7032 to act as a CANOpen slave.
I have added the slave to the device configuration, and when I select "heartbeating" and a heartbeat period I can see the heartbeat messages being broadcast on the bus.
If I select "automatic startup" then the PLC broadcasts OPERATIONAL status in its heartbeats.
The problem is that I cannot get it to do anything else.
For example, without the automatic startup the slave goes to PRE-OPERATIONAL state. NMT messages from the master do not change the state - neither sending a message to all nodes on the network, or sending specifically to the PLC slave works.
SDO requests are not responded to either. For example, a request for the mandatory device type at 0x1000 is not answered.
I have not configured any tx or rx PDOs in the default PDO mappings. It is just a minimal slave created through adding a device to the device manager then configuring the options in the tabs for that slave.
Is there some FB that needs to be called in my program to get the slave to respond?