A DIY Peristaltic Pump using Arduino and NEMA 17 Stepper Motor
The cost of building a peristaltic pump with an Arduino board was estimated to be around $30, which is comparable to the buy option. The DIY version required electronic components such as a voltage regulator, a transistor, and an inductor transformer. These components were used to transform the output of the Arduino board into a value that could control the stepper motor. The output of the Arduino board was then applied to the transistor, which amplified it and sent it to the inductor transformer. The transformer converted the AC signal from the Arduino board into a DC signal, which was then fed into the power supply.
The power supply was set up to provide 12 volts to the stepper motor driver. The three mode inputs of the stepper motor driver were configured to activate the 116 step mode. This mode allowed for precise control over the rotation of the rotor and ensured that each step of the pump was performed accurately. The code was then uploaded to the Arduino board, which controlled the stepper motor driver and created a PWM voltage on p9 with a duty cycle of 50% and a variable frequency.
Each time the signal from the Arduino board completed one period, the motor performed one step, which meant that with a higher frequency, we got a higher RPM and with a lower frequency, we got a lower RPM. The cost of the Arduino board was added to the overall cost of the project, but it was still considered a relatively affordable option compared to the buy version.
The three mode inputs of the stepper motor driver were configured to activate the 116 step mode. This mode allowed for precise control over the rotation of the rotor and ensured that each step of the pump was performed accurately. The code was then uploaded to the Arduino board, which controlled the stepper motor driver and created a PWM voltage on p9 with a duty cycle of 50% and a variable frequency.
The mechanical construction of the DIY peristaltic pump consisted of a rotor made of two plastic plates between which three plastic rollers were positioned. The plastic outer shell kept the silicone tube close to the rollers. In contrast, the buy option used metal components, including the rotor, which was more difficult to create. To overcome this challenge, I found a suitable model of a peristaltic pump on Thingiverse, created by Rolf. Although it was not designed for the NEMA 17 stepper motor, I modified the model files using Fusion 360 to close the mounting holes for the smaller stepper motor and create new ones with indentations for the NEMA 17.
I downloaded the model files, imported them into Fusion 360, closed the mounting holes for the smaller stepper motor, and created new ones with indentations for the NEMA 17. Unfortunately, I was unable to create all four of them, as that would have messed up Rolf's original design. However, I believe that two mounting holes will be sufficient once the three parts for the enclosure are modified.
I loaded a roll of black ABS filaments into the 3D printer and sliced the models with an infill percentage of 60%, which gave the parts more mechanical stability. The three parts were then printed, which took around five hours to complete. I tried assembling the enclosure, even without any bolts, so I continued by modifying the two rotor plates of the system. This was the hardest part, as it had to snugly fit onto the shaft of the stepper motor.
After four iterations, I finally got a pair that fitted perfectly and held its position very firmly, which meant it was time to assemble the rotor using three-year M4 bolts and nuts, and 613 ball bearings. I made sure not to tighten the bolts too much, as this would prevent the ball bearings from spinning freely. Next, I added four M4 nuts to the bottom side of the enclosure, securing the stepper motor to it with two and three bolts.
I slid the rotor onto the motor shaft at this point, which marked the final step in assembling the DIY peristaltic pump. It was then time for the silicone tube, which Rolf recommends having dimensions of six by four millimeters. I went with those dimensions, placing a long piece of it inside the enclosure next to the rollers. After adding the two missing pieces of the enclosure and closing it all up, it was finally time for the first test.
The rotor moved without any problems during the first test, indicating that the DIY peristaltic pump was functioning as intended. Although NT pumps can also transport liquids, I had to shorten the poles of the rotor in order to achieve the desired flow rate. By turning up the RPM of the motor to its maximum right before it gets stuck and measuring the amount of pump milliliters per minutes, we get a flow rate of approximately 200 milliliters per minute.
The DIY peristaltic pump has several advantages over the buy option, including being mechanically pretty stable and having the advantage of using a stepper motor. The cost of the DIY version is only around $30, making it a relatively affordable option compared to the buy version. Additionally, the DIY version allows for precise control over the rotation of the rotor and ensures that each step of the pump is performed accurately.
In conclusion, building a peristaltic pump with an Arduino board was a challenging but rewarding project. The DIY version required some modifications and modifications, but the end result was a functional and reliable pump that can perform accurately.