Spindle nema 34 duet 2 wifi
-
@droftarts said in Spindle nema 34 duet 2 wifi:
@o_lampe You're right, if it's just for thread cutting then a stepper would work well. For more general lathe use, either an indexing DC motor, or a servo motor with step and continuous operation (if such a thing exists) would be better.
Ian
My basic understanding is that the 1HCL driver has two similar modes to what is being suggested above, traditional step mode for open loop and then it drives the stepper in a pseudo torque mode as if it was a brushless motor when in closed loop. I may have misunderstood but I'm sure @dc42 would be able to confirm or deny.
If that's true then Duet may already have a hardware solution that could be repurposed with a new firmware build.
Interested as I hav a Denford CNC lathe to convert some time in the future...
-
@CNCModeller No, not really. Both open and closed loop modes of the 1HCL use step-and-direction-based inputs, coordinated with other axes. Open loop mode is just like 'normal' stepper drivers. Closed loop mode is still coordinated with other Gcode based movements, just with feedback and, as you say, is a pseudo torque mode, ie will try to get to the position commanded, or generate an error if it doesn't. It's not acting like a spindle, which is turned on, runs at a given speed (usually rpm) while other axes control the coordinated movement, and then stops when commanded.
Though perhaps such a 'spindle' mode for stepper drivers could be added to the firmware wishlist? I'm still not sure if it is an ideal use of a stepper motor, though.
Ian
-
@droftarts said in Spindle nema 34 duet 2 wifi:
such a 'spindle' mode for stepper drivers could be added to the firmware wishlist?
I believe, we've asked infinite rotation as FW feature before.
But there was a good reason, why it's complicated to implement. Can't describe it with my own words. Brain is frozen -
@o_lampe said in Spindle nema 34 duet 2 wifi:
@droftarts said in Spindle nema 34 duet 2 wifi:
such a 'spindle' mode for stepper drivers could be added to the firmware wishlist?
yesI believe, we've asked infinite rotation as FW feature before.
But there was a good reason, why it's complicated to implement. Can't describe it with my own words. Brain is frozen -
Firmware organizes all axis movements in time frames (X moves n mm in 0.1 seconds, Y m mm in the same time etc.). A continuous movement doesn't have a time frame (because it's infinity time), so it's a problem.
A solution could be to add a separate FreeRTOS task which makes the continuous movement for a (stepper-)motor by generating own stepper signals without any time frame planning. It would run isolated from all other movements, but this needs to be added to the firmware, something for the wishlist.
-
@JoergS5
Even that solution wouldn't work for thread cutting. Just switching on the isolated pulse generator wouldn't happen in sync with acceleration of the other axis.
That way, you can only cut a thread in one go, but AFAIK you need several runs and always have to find the same starting point... -
@JoergS5 said in Spindle nema 34 duet 2 wifi:
Firmware organizes all axis movements in time frames (X moves n mm in 0.1 seconds, Y m mm in the same time etc.). A continuous movement doesn't have a time frame (because it's infinity time), so it's a problem.
A solution could be to add a separate FreeRTOS task which makes the continuous movement for a (stepper-)motor by generating own stepper signals without any time frame planning. It would run isolated from all other movements, but this needs to be added to the firmware, something for the wishlist.
thank you
-
@dc42
firmware from what I understood from the various posts it seems that it is not possible to have with a stepper motor the same functionalities of the vfd motor because the firmware cannot handle it is it possible to implement this function please -
@o_lampe said in Spindle nema 34 duet 2 wifi:
have to find the same starting point...
my proposal is to implement it step by step and start with a continuous axis in a separate task. This allows to gather experience wheter e.g. performance is sufficient.
In longer perspective
- FreeRTOS trasks are able to inter-process-communicate, i.e. tell each others the status, i.e. synchronize tasks
- the tasks could be delegated to separate cards then, so step signals don't disturb each other
- the tasks could execute different kinematics, so multiple kinematics become possible
- a synchronzation process for all boards through CAN can make sure that a global job scheduler can manage the movements. E.g. by synchronizing the system tick numbers
-
@JoergS5 said in Spindle nema 34 duet 2 wifi:
FreeRTOS
thanks for the answer But honestly I don't want to start writing a program to make a function that in my opinion was a very very very simple function
-
@paolozampini1973 no, no, I don't mean that you do it, but one of the developers of RepRapFirmware. I meant this with wishlist: there is a list somewhere what features are wished to be added to future versions.
A simple requirement, a single continuous axis without synchronization, which is useful for many users have a much higher chance to be implemented than the other ideas I wrote.
-
@JoergS5 said in Spindle nema 34 duet 2 wifi:
@paolozampini1973 no, no, I don't mean that you do it, but one of the developers of RepRapFirmware. I meant this with wishlist: there is a list somewhere what features are wished to be added to future versions.
A simple requirement, a single continuous axis without synchronization, which is useful for many users have a much higher chance to be implemented than the other ideas I wrote.
now i understand in the function wishlist But where is this list where you have to make the request?
-
@paolozampini1973 @CNCModeller if there is enough interest then I can look at providing the option to run a stepper motor as a spindle in a future version of RRF. However, it's likely to be a Duet 3 feature only because of lack of flash memory on Duet 2.
-
@dc42 it would be a good use case for the 1HCL boards. maintaining a certain RPM with feedback
-
@jay_s_uk
That would make sense, if the feedback loop would control the spindle/stepper current. Or do you want to reduce XYZ-speed, when the stepper skips steps due to overload? -
@o_lampe thats the thing to work out i suppose. i did think increase current but that would only do so much so slowing things down may make more sense
-
@jay_s_uk
Worst case would be cancelling the job. "Cutting a thread" is not too forgiving in terms of skipped steps. -
Will a stepper motor provide sufficient speed and torque? Stepper motors are limited to a few revs/second due to back emf.
-
@dc42 i have my doubts whether it would
-
@dc42 said in Spindle nema 34 duet 2 wifi:
@paolozampini1973 @CNCModeller if there is enough interest then I can look at providing the option to run a stepper motor as a spindle in a future version of RRF. However, it's likely to be a Duet 3 feature only because of lack of flash memory on Duet 2.
@dc42 I'm just speculating on solutions for both threading on a lathe and rigid tapping on a mill. So specifically using a stepper as a spindle drive is just one option.
The potential to do limited milling on a lathe using a cross slide mounted milling head with the lathe axis as a rotary would also improve workflow.
I'm not sure if any of this would impact performance on my polar printer, especially since I'm using the 1HCL on that axis anyway.
In terms of solutions I'm open, just interested in this as one option.