The aim here is be able able to communicate with several Ethercat slaves, and to be able to disconnect and reconnect some of them without affecting communication with orthers.
There is already a Refresh module vi which is refresh the global system state containing all slaves. The problem with this vi is as follow :
- Let's assume we are using 5 Ethercat slaves. If i disconnect 2 of them while program is running, it doesn't affect communication with others. Now if want to reconnect just one of the two i just disconnect (must be as the same place as before), if i use the vi refresh module, it will raise an error because labview won't find the last slave which is still not disconnected so the 4th slave reconnect won't be able to switch to operationnal mode.
- If we use the method node which enables to switch Ethercat slave state to operationnal mode, we will be able to switch the reconnected slave to operationnal mode and communicate again with him without an error. This method will raise an error when trying to sitch the 5th slave which is still not connected but you juste have to erase this error.
Now you can communicate with the 4 Ethercat slaves without error ( 3 + 1 reconnected).
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.