Bio Reactor Control Board
The circuit that I made is to control two 12v peristaltic pumps with the information from a temperature sensor and a liquid pressure sensor. The brain of the project is an Arduino Nano which runs directly on a 12v power supply.
Feature
- Programable with Arduino NANO
- x2 speed control for peristaltic pump
- x1 waterproof DS18B20 temperature sensor
- x1 PendoTECH inline pressure sensor
- x2 interupt buttons
How did I start?
My honor college mentor was working on her college thesis which involves making a microbioreactor that periodically feeds the culture with a nutrious solution. She reached out to me just to ask about Arduino and share what she is working on. I was so excited and offer to design the circuit as a chance to practice my electronic skills. So here is how I do it.
The process
Originally I planned to use PN2222 transistor and relay to control motors. Because the motor only draws around 400mA at 12V and the ability to control the speed of the motor, we could use a bigger transistor. Leaving room for improvement and upgrade to a bigger motor, I have decided to go with N-Channel MOSFET STP16NF06. The temperature sensor was a DS18B20 from Adafruit so the schematic and code were provided to us.
All of that was easy until we take a look at PendoTECH pressure sensor pinout and datasheet. This was my first time seeing a sensor with 4 pinout instead of the digital 3 pins like the temperature sensor. Luckily, my friend bought a HX711 Load Cell Amplifier board for a DIY scale that use Wheatstone Bridge and only four output pins. The HX711 library and wiring instruction is provided on the SparkFun website.
So I tried to plug in the pressure sensor and it worked, but with a lot of calibration, compared to the sensitivity of the load cells. Seem like the pressure sensor using HX711 board has high accuracy and low precision. Its accuracy is around ±300 pascal which is 0.002 atm, suitable for my mentor’s application.
Put everything together
Here is my first schematic.
In this design, the interrupt buttons did not work no matter what code I use. The issue came from my circuit flaw when I use a pull-down resistor instead of pull-up. So here is the working schematic.
The Code
Retrieve code from CodePile
Endnote
I was suggested to use H-bridge to control the motors. However, based on the nearby store’s supply and simplicity of wiring, I do think using transistor or MOSFET is a better choice.
More improvement can be made on my soldering. I can use better solder and appropriate temperature for the soldering iron.
My mentor thought that the circuit is awesome for the projects and she planned to upgrade more sensors in the future to automate more bioreactor. I am really happy that someone that I respect enjoys my work, and looking forward to the further development of the system.