Independent Disabling of Stepper Motors
Moderators: TomKerekes, dynomotion
Independent Disabling of Stepper Motors
I am using a KFLop board to run two Kstep boards. I have 6 motors running off the two boards and am trying to disable one axis to allow the motor to spin freely while it is not actively being driven. When I use the DisableAxis(3) command, all 8 axis channels become disabled, even though I am only calling for channel 3 to be disabled . Is there a way to just have the one motors axis disabled while still being able to run the rest of the motor channels?
- TomKerekes
- Posts: 2676
- Joined: Mon Dec 04, 2017 1:49 am
Re: Independent Disabling of Stepper Motors
Hi Jesferg,
There is a single enable per KStep board that enables/disables all motors connected to the KStep. It isn't possible to disable a single motor. Normally when using two KStep boards the enables are tied together through the KStep J6 connectors. Then KFLOP IO Bit45 controls the enable for both KSteps. You could wire the enables differently to be able to enable/disable the KSteps independently.
It isn't clear to me how DisableAxis(3) causes all the motors to be disabled.
There are two types of disables. KFLOP Axis channels can be disabled and the KStep can be disabled. Disabling a KFLOP Axis channel will stop any motion (Step/Dir pulses) from occurring. Disabling KStep will remove any motor currents and allow the motor to spin freely without any holding torque.
Many of the KStep initialization program examples contain a forever loop that monitors movement and if there is no movement for a period of time it then disables KStep. Possibly the DisableAxis(3) command results in stopping all motion which in turn disables the KSteps after a period of time.
There is a single enable per KStep board that enables/disables all motors connected to the KStep. It isn't possible to disable a single motor. Normally when using two KStep boards the enables are tied together through the KStep J6 connectors. Then KFLOP IO Bit45 controls the enable for both KSteps. You could wire the enables differently to be able to enable/disable the KSteps independently.
It isn't clear to me how DisableAxis(3) causes all the motors to be disabled.
There are two types of disables. KFLOP Axis channels can be disabled and the KStep can be disabled. Disabling a KFLOP Axis channel will stop any motion (Step/Dir pulses) from occurring. Disabling KStep will remove any motor currents and allow the motor to spin freely without any holding torque.
Many of the KStep initialization program examples contain a forever loop that monitors movement and if there is no movement for a period of time it then disables KStep. Possibly the DisableAxis(3) command results in stopping all motion which in turn disables the KSteps after a period of time.
Regards,
Tom Kerekes
Dynomotion, Inc.
Tom Kerekes
Dynomotion, Inc.
Re: Independent Disabling of Stepper Motors
Hi Tom,
I appreciate the help. You said there are two types of disables, one that disables a KFlOP axis channel and one that disables the entire Kstep. Can you expand on how you would do each of these? I only found the one DisableAxis(#) command while looking through the dynomotion website.
Any additional help would be appreciated.
Thanks,
Jess
I appreciate the help. You said there are two types of disables, one that disables a KFlOP axis channel and one that disables the entire Kstep. Can you expand on how you would do each of these? I only found the one DisableAxis(#) command while looking through the dynomotion website.
Any additional help would be appreciated.
Thanks,
Jess
- TomKerekes
- Posts: 2676
- Joined: Mon Dec 04, 2017 1:49 am
Re: Independent Disabling of Stepper Motors
Hi Jess,
Normally the KStep's Driver enable is connected to KFLOP Bit 45. In this case to disable KStep's drive use ClearBit(45). See here.
HTH
DisableAxis(#) disables a KFLOP Axis Channel.I appreciate the help. You said there are two types of disables, one that disables a KFlOP axis channel and one that disables the entire Kstep. Can you expand on how you would do each of these? I only found the one DisableAxis(#) command while looking through the dynomotion website.
Normally the KStep's Driver enable is connected to KFLOP Bit 45. In this case to disable KStep's drive use ClearBit(45). See here.
HTH
Regards,
Tom Kerekes
Dynomotion, Inc.
Tom Kerekes
Dynomotion, Inc.