- Joined
- Jun 16, 2016
- Messages
- 221
I ordered a couple of Blue Pill STM32's, and after a little research decided to get a couple of Maple Mini STM32's as well. I lost the Monarch 10EE to someone with deeper pockets, so I'll have more time to look at them this summer that I was hoping to spend restoring the 10EE. I'm very sad about that. It was dirty, but it ran like a top and had some Manhattan Project history.
My spindle encoder is handled by a pin interrupt, and so is the encoder knob. The PWM output to the microstepper is built on a Timer4 interrupt that counts the pulses. Then I use an overflow interrupt on Timer3 to extend it to 32 bits for things like the RPM calculation. The Arduino serial ports are also interrupt driven, so you just stuff the serial buffer and go do other things.
The microstepper controller I'm using is an HBS57 that I picked up from Banggood with a NEMA 23 motor. That 2.2Nm motor was too long to fit, so I got a 2Nm Leadshine from OMC Stepper Online that has plenty of torque. I also got a CL57T driver from OMC but couldn't get it tuned up to work as well as the one from Banggood (without tuning). I've set the HBS57 to 1000 steps per revolution, it's quiet, barely gets warm, and the motor barely gets warm either. The CL57T was noisy, and the default settings heated up the motor like crazy. I tuned it some, but just couldn't get it working as well as the HBS57 right out of the box. Most of the time you can't hear it. The whine gets a little more noticeable when jogging the carriage at high speed, but it isn't bad. It all runs from a 36V/150W Mean Well switcher, which is marginal, but it fits in the enclosure.
I spent the weekend tightening up the code and working on feeding to stops. I really want that feature because it will be a huge time-saver, but I just can't get my head out of my butt and get it properly synced for threading yet. It's very frustrating. Might have gotten it, but had to spend an hour chasing a compiler bug, which didn't improve my mood. Finally fixed it by adding a completely unnecessary pair of braces in the right place.
My spindle encoder is handled by a pin interrupt, and so is the encoder knob. The PWM output to the microstepper is built on a Timer4 interrupt that counts the pulses. Then I use an overflow interrupt on Timer3 to extend it to 32 bits for things like the RPM calculation. The Arduino serial ports are also interrupt driven, so you just stuff the serial buffer and go do other things.
The microstepper controller I'm using is an HBS57 that I picked up from Banggood with a NEMA 23 motor. That 2.2Nm motor was too long to fit, so I got a 2Nm Leadshine from OMC Stepper Online that has plenty of torque. I also got a CL57T driver from OMC but couldn't get it tuned up to work as well as the one from Banggood (without tuning). I've set the HBS57 to 1000 steps per revolution, it's quiet, barely gets warm, and the motor barely gets warm either. The CL57T was noisy, and the default settings heated up the motor like crazy. I tuned it some, but just couldn't get it working as well as the HBS57 right out of the box. Most of the time you can't hear it. The whine gets a little more noticeable when jogging the carriage at high speed, but it isn't bad. It all runs from a 36V/150W Mean Well switcher, which is marginal, but it fits in the enclosure.
I spent the weekend tightening up the code and working on feeding to stops. I really want that feature because it will be a huge time-saver, but I just can't get my head out of my butt and get it properly synced for threading yet. It's very frustrating. Might have gotten it, but had to spend an hour chasing a compiler bug, which didn't improve my mood. Finally fixed it by adding a completely unnecessary pair of braces in the right place.