I am currently working on a project that requires me to use 3 micro stepping motors that act as a peristaltic pump. I have no access to the data sheet, but the company we purchased them from has provided the seemingly crucial information which I will include below. The microcontroller is an ESP32 dev kit c4, and I am using 3 STSPIN220 breakout module from Pololu for the drivers.
The goal of the project is to control 3 pumps simultaneously, I am currently using a modification of the AccelStepper Library, that I have created for readability, in order to accomplish this task. The software is functional, however I am having trouble with the circuit design.
Currently, running any one driver board/ stepper, everything works fine. The motors function as expected and different rpms can be achieved. However, when I run 3 motors simultaneously, I get sporadic results. Sometimes all three will run and then 2 will randomly stop. Maybe two will run, and one will not. Nothing is consistent.
I have included two schematics, one is a breakdown of just the 3 driver boards, esp32, and how they receive their power. The other one(which has had some modifications on the pin inputs to the driver boards) is the schematic of the full project. It contains a few more parts that I do not think play a role in the current issue, but I have included it just incase. Additionally I am running it off a decent quality bench power supply at the moment.
After many other suggestions, I decided to try out a different driver. This way I can provide a magnitude more of voltage to the motor, in order to ensure I can provide the necessary current on time for all three drivers. This time I choseTMC2209 from watterott, as hopefully I can mitigate wiring using uart in the future. However, this has given me identical results. I can drive one motor fine, but when I try and drive three, I run into issues.
I’m inclined to believe that the issue is hardware related, and I am missing an essential component in filtering either signal/power lines headed to/from the driver.
Any and all suggestion help! Thanks in advance!
Stepper Motor Specs:
- Inductance Rating: 2.2mH (REF. At 25C 1KHz,1.0Vrms (Each phase))
- Rated Voltage: 2.6VDC
- Rated Current: around 200mA at 2.6VDC
- Type: 2-2 Phase exciting, bi-polar stepper motor
- Step angle: 0.349880 degrees
- Speed reduction ratio: 1:51.4462
- Pump can rotate: CW or CCW, but make sure the pump is completely stopped for 2-3 sec before changing the rotation direction.
- Resistance: 21 ohms +/-5% (at 25C)
- Max starting pulse rate: 800pps/min (constant voltage, no load)
- Max constant pulse rate: 1000pps/min (same as above)
Schematics:
Simplified Partial Schematic:
PCB board (Full design - PCB board designed with a few other components):