un, FBL2360T CANopen with closed loop position relative

2 years 8 months ago #29535183 by PDP
Hi Athanasios, lelongg, 
I hope you'll forgive my stepping into the conversation, but I'm at a similar point in my process and would like to verify an assumption.  The DS402 CiA protocol includes a Finite State Automation sequence and, for my controller, that configuration value is set to "Enabled". I suspect this means that before any of the run commands will be recognized, the controller has to be in the correct state. Referring to the CAN Networking Manual, V 2.0 July 8, 2019, page 46 - 47; it would seem that one has to get to the "Operation Enabled" state by executing transition 4 "Enable Operation Command". 
It would seem from the diagram that transition 0 is Automatic upon power on as is transition1. Transition 2 "Shutdown Command, Transition 3 "Switch On Command" and Transition 4 "Enable Operation Command" all need to be sent to the Motor Controller Unit in order for it to respond to Run Commands. Is that correct?
If so, then (as an example), Transition 3 & 4 (which seem possible to send together based upon table 4-6 on page 48) would consist of:
SDO Index 0x6040
Sub Index 0x00
Byte 0 (datatype - Command U16 (2 bytes unused) - 0x2C)
Bytes 1-2: 0x6040
Byte 3: 0x00
Bytes 4 - 7: The datatype is U16, so bytes 6 & 7 are not used. Bytes 4 & 5 are a U16:
Control word byte: 0xxx 1111. Bits 4, 5, 9 depend on mode (Profile Position or Velocity). 
Bit 8 is the Halt Bit, so "0" for "positioning shall be executed or continued"
Bit 6 is 0 or 1 depending on absolute or relative target position. (assume absolute)
This makes the value:   0000 0000 0001 1111 = 0x1F, which is transmitted as:
0x1F 0x00 0x00 0x00 for bytes 4 - 7
Does this seem correct?

Thanks for your time and consideration

Please Log in or Create an account to join the conversation.

2 years 8 months ago - 2 years 8 months ago #29535184 by PDP
On a lark, I set the DS402 FSA state to "Disabled", saved that to the controller, unplugged the USB, recycled the MCU power and then turned on the Arduino. The motors began spinning in response to the program running on the Arduino right away (note: there is no FSA transition instructions in the current program)
I'm more convinced that when FSA state is "Enabled" that one has to put the motor controller in the correct state.
That said, is there a serious downside to leaving the FSA state as disabled?

Please Log in or Create an account to join the conversation.

Moderators: tonysantoni
Time to create page: 0.059 seconds