Powering the stepper motors

That would halve the current, but increase the smallest step size. If bigger steps are OK I would rather change the gearing to make it move faster.

I have always blamed this on motor batches, but I have not really been able to test. You have two different types, at least one of which gets hot. Could you try one of each set (not on the microscope, they can just be loose), and set them to a two-coil step and see what the temperature does? They do not need to be moving.

I for sure will do testing on this, but not today, hopefully will get some time to test during the coming weekend… DC resistance pink-orange, or yellow-blue for the full windings, motor from Digi-Key 1471-1491-ND : 46.6 ohm. So idle current for half winding draw ca 4,7volt / 23.3 ohm = 200mA. (estimate 0,3volt drop in the ULN2003A driver). The motor from RS-online #1845109 measure 37.6 ohm, resulting in 250mA idle current for each active winding (1.2 watt heat generation pr winding).
For normal operation none of the step-phase should activate more than 2 driver outputs simultaneously I believe. But in fault situation if all driver outputs become active to total current from one motor could reach 1A if power supply and wiring does not give up. So I would need to add some current limiting device in order to move the heat away from the motors.



That sounds fine for the motor windings, although my current measurements were lower. I cannot see that 1 or 2W would make the motors get hot enough to make the plastic soft. Do your motor drivers show LEDs for which coils are energised, so that you can see whether there are 1 or 2 (or more by mistake)?

Stepper driver drives motor as it should, yes the driver boards have LED indicators for each output. So drove the Nano board from a serial terminal and run the command MRX 1 , move relative X, and checked the step sequence, and verified the 8 step phases. Which showed that the driver board use half step sequence, total of 8 patterns. FLIR Thermo camera indicates motor are between 58 to 62 degrees C. So every thing seems okey, except I don’t like the motors are getting that much heat. Keeping the fingers in contact with the motors hurts! Will try to put a resistor in the 5V supply path. 10 ohm 2W resistor may be worth trying.

1 Like

I managed to get a bit of time on this today.

I measured the coil resistance to common for my current batch of motors. They are about 20 Ohms (40 Ohms across a pair). This is similar to yours.

I measured current and felt the temperature on the motors on two of my microscopes. These are not necessarily from the same batch of motors, and I did not have time to unplug and measure the coil resistance. One microscope I put together ages ago using the nano-workaround, the other is more recent using Sangaboard v0.5. That may or may not mean that they are the same motors as each other or the same as my current stock. I have a DC current clamp meter, so I can measure the current in the motor wires in situ. The current on the six motors across two microscopes was 150mA to 180mA in each coil that was energised. Some motors had two coils on in the particular position that the microscope had landed, so 300mA total measured on the red common wire. The nominal drive voltage is 5V, but there will be almost 1V drop in the ULN2003 drivers, so we expect a coil current of about 200mA. if the coils are 20 Ohm. I measure consistently below that, but in the right area.

With a thermal imager the motor with one coil energised was clearly cooler that the ones with two coils energised. The actual temperature readings from the camera did not seem to make sense, so I shall need to measure temperatures later. Touching the motors I could tell that they were not cold, but not really warm. Room temperature was low (~11C), so a warmer room with the same temperature differential would give higher actual temperatures. However you are saying the motors are really hot, the description is basically 40C+. That does not match with my measurements unless your room is very warm already.

1 Like

Thanks for detailed info and checking. Interesting! I have not checked the circuit scheme for the Sangaboard, they may have added some current limiting resistors there already? From various picture I’ve seen of ULN2003 driver boards, it seems some of them are equipped with series resistors and some are not. The driver boards I’ve got seems not to have any series resistors mounted on the output. Hope to get time this weekend to test adding some series resistors and see if it reduces the temperature in the motors.

Here are the single phase current I measured when adding a series resistor to the common + supply of one motor. 0x3.9ohm, 1x3.9ohm, 2x3.9ohm and 3x3.9ohm. Using 3x3.9 ohm the motor stalled. So will stick with 3.9 or 7.8 ohm series resistor.

Winding resistance 37,6 37,6 37,6 37,6 ohm
Winding resistance, single phase 18,8 18,8 18,8 18,8 ohm
Additional series resistor, common supply motor 0 3,9 7,8 11,7 ohm
Single phase current 214 183 157 138 mA
Two Phase current 418 311 244 203 mA
Total voltage drop motor+series resistor 4,02 4,15 4,18 4,21 V
Idle power when two phase active, heat, motor 1,72 1,26 0,93 0,72 W

I found a thermocouple today:

Lab temperature 11C
Motor temperatures measured with a probe on the cylindrical body, sides and top are very similar.
Microscope 1: X and Y axes, 2 phases active, both 29-30C. Z axis, 1 phase active ~25C
Microscope 2: X and Yaxes, 2 phases active, both ~29C. Z axis, 1 phase active 180mA 32C. This is an Upright version, so the Z-motor is more enclosed.

Stepping the Z motor on the Upright so that 2 phases were active (<400mA), the temperature rose to ~45C.

So these are microscopes where I have not ever noticed that the motors are particularly hot, but where one actually does get pretty hot. In a more sensible lab temperature we add at least 10C to all of the motor temperatures. I need to move this to a warm lab and try again.

Your measurements suggest that the motors are actually fine. We might be falling into a range of temperatures where we are particularly sensitive to small changes and changes in the ambient temperature. 30C is barely warm to the touch, 45C is hot, and we need to start worrying about the plastic at ~60C.

1 Like

“Lab temperature 11C” that’s freezing cold!!! :cold_face:

There is a very long and complicated explanation to do with various building works :slightly_smiling_face: .

Long time not had time to work on the project. Latest improvments, been working on a better frame to hold the driver boards in place. With this frame to boards slide into slots instead being strapped down.

Also thinking of using diode or two in series to drop the drive voltage instead of series resistor. Diode will give almost the same voltage drop independent of one or two windings are being driven.


Congratulations! Your design is quite tidy.

However, to eliminate the mess of jumper wires, I’ve connected the stepper motor drivers to the Arduino Nano using a perforated board, some header pins for module plug-ins, bent wires, soldering, and a lot of patience :slight_smile: . It’s still a work in progress, but it served as a proof of concept before I design and etch my own PCB.

(no jumper wires after about 1 hour of work for cutting and soldering everything)

This board still has space for additional modules or custom electronics, such as a future displacement sensor. It already includes these convenient LDO6AJSA modules, which are PWM-controlled current drivers for my lights (only $0.50 each).

I promise to share the code extension for controlling the lights in the near future, and the wiring schematics are also available for anyone interested.

1 Like