BaseNode402 Transition from 'OPERATION ENABLED' to 'QUICK STOP ACTIVE'
See original GitHub issueHi there,
I have a problem when I do a transition form the state ‘OPERATION ENABLED’ to ‘QUICK STOP ACTIVE’. I always get an ValueError: 'Illegal transition from SWITCH ON DISABLED to QUICK STOP ACTIVE'
. Other transitions are working fine, and besides the error, the motor is doing the transition just fine. I came to the conclusion, that the problem may be, that the transition to ‘QUICK STOP ACTIVE’ immediately triggers a transition to ‘SWITCH ON DISABLED’ so that the motor never really is in state ‘QUICK STOP ACTIVE’ so that your routine while self.state != new_state:
never gets true and ends up comparing the current state which is ‘SWITCH ON DISABLED’ with ‘QUICK STOP ACTIVE’ which then is an illegal transition.
Do you have an idea how to fix this?
edit: This is my code.
import canopen
Net = canopen.Network()
Net.connect(bustype='socketcan', channel='can0', bitrate=1000000)
Node = canopen.BaseNode402(1, '/path_to_my.eds')
Net.add_node(Node)
Node.load_configuration()
Node.setup_402_state_machine()
Node.state = 'OPERATION ENABLED'
print(Node.state) ## prints 'OPERATION ENABLED'
Node.state = 'QUICK STOP ACTIVE'
print(Node.state) ## prints 'SWITCH ON DISABLED'
Issue Analytics
- State:
- Created 4 years ago
- Comments:13 (2 by maintainers)
Top GitHub Comments
@gsulc
Object Index 605A Sub-Index 00 : CANopen_HB_engl.pdf search for 605A
Her is another AKD CANopen Kommunikationshandbuch DE (REV U).pdf it is german but you can copy paste it to google translator. Bit:
It is even in here Nanotec which we linked already.
I’d like to chime in on this. Is there any indication that this automatic transition is prevalent among manufactured drives? This seems like non-standard behavior to me, which I think the library should not support, unless the problem lies in not correctly getting the current state.