You’re welcome.
That’s not a simple DC motor as I meant, but a very interesting motor, nonetheless. You could in theory control it with our board from the control signal pins, bypassing the power driver, since the motor has one built in. (But we haven’t tested it, and so on.)
It’s a bit complicated to explain. The problem is that a motor requires a certain amount of power to overcome stationary friction. And once it starts turning at this minimum amount of power, it tends to rotate at some minimum speed, which may be higher than you require. And if you reduce power or apply any resistance, it will simply stall again. This friction problem applies when you’re driving the motor open-loop at low speed and generally means there’s some dead-zone of speeds you can’t achieve this way. If you have a high enough gear ratio, friction is not a problem, but your maximum speed will be limited and your torque will be on the high side.
I can get really technical about this, but will do my best to keep it short. When you use position control, it works like the continuous rotation servo you linked, but is far superior and actually gives you velocity and position feedback. It doesn’t control speed as such, but slowly changes the angle it is aiming to achieve using closed loop. The command works something like “increase the angle by 1000 steps total clockwise, at a rate of 1 step every 10ms”. The minimum speed depends on the controller - ours can do ludicrously slow speeds (it is somewhere in the datasheet). You specify 1 degree a day if you want, if your encoder and gear ratio provide that resolution. As long as your motor can achieve the maximum speed and torque you need at full power, you can achieve the minimum speed you need using position control. A higher gear ratio or more torque will produce slightly smoother control, though.
We have recently designed a new 1-channel controller with the same functionality that solders onto the back of a particular type motor that comes in various gear ratios. It’s a lot smaller than your drill motor, but if one of the gear ratios gives you the torque and speed, it might do the job. If you search for “n20 gearmotor” on RobotShop, you’ll see a selection of these motors. You will need one with the “extended shaft”. We use these motors in our robotic electric guitar with great success. And we have one of these new controllers for sale: https://www.robotshop.com/en/chipbotics-q-pixie-connectorless-n20-gearmotor-pid-controller-with-quadrature-feedback.html.
It has an Arduino library, but you do need to know what you’re doing connecting it all up. Happy to work with you on this as we want to get this out in the real world and see how people use it. The demo code tells you how to connect up to an Arduino nano and should be fairly easy to get working if it all goes right. You need some fine soldering skills, though.
Do you need to control just one motor or several? Maybe you could give more information about your application and how you want to use the motors?