Go Down

Topic: Is this Arduino controlled machine possible (Read 1 time) previous topic - next topic


Apr 22, 2013, 05:16 pm Last Edit: Apr 22, 2013, 05:30 pm by nass Reason: 1

I want to build a machine to do something for me. This machine incorporates:

  • 4*stepper (one running at any time)

  • 2*motor (small DC fan, 1 on/off only and 1 sensor dependent)

  • 1*Peltier

  • 1*hydro h50 cooling fan & pump unit

  • 3*sensor (temp, humidity & CO2)

  • 1*servo (sensor dependent)

  • 1*control over air pump

I'm working my way through Ardiuno starter kit (has Uno in it) to make this machine but in doing my research for this I'm a bit unclear about shields and whether I need a different board etc. Basically it's a machine to control conditions inside and positioning of an object in a small 25*25*25cm airtight cage. If anyone could throw me some pointers where to do some further reading about shields and which Ardiuno platform to get that'd be very helpful.

Thank you


Hi, This sounds basically workable, including a LOT of work from you...

You won't find any shield that will do all you need; think about getting separate Stepper and power control parts, and possibly opto-isolating them from the Arduino.

You;ll have a lot of connections and cabling. Consider a  sensor shield like these:

These are passive, but bring all connections out to easy-to-connect 3-pin connectors.   There is also a Mega version (scroll down)..

What are the details of the steppers: power levels etc...??

Regards, Terry King terry@yourduino.com  - Check great prices, devices and Arduino-related boards at http://YourDuino.com
HOW-TO: http://ArduinoInfo.Info


Thank you Terry!

To be honest I thought I'd better work my way through the Arduino starter kit before making any decisions about anything, incl. stepper specs. Bottom line I'm leaning towards having some arms 3D printed, which need to be rotatable using steppers. The load will be minimal, but physical size is a consideration. I'm hoping that by 3D printing the arms I can design the arms round the steppers and come up with a nice connection between the two that allows for slow, sensitive, non load bearing rotation of three arms, each a semicircle inside the other.

I know it's going to be quite a lot of work and probably a lot of trial and error but I'm fine with that, I just want to make sure that I'm heading in the right direction in terms of the bits needed to control the whole thing.

Many thanks again


It's certainly plausible but depending on the specifics of your devices, it may require more pins than the uno has available. You can overcome that with additional hardware such as shift registers, but it's something to consider when selecting your parts. I'd assume that the uno would have ample space for the code to run the machine, unless you're hoping to keep extensive records of your sensor readings in RAM.


Thank you wildbill!

Yes, this is what I'm asking for pointers with as I just don't know whether it's possible with an Uno or if I need to get a bigger board. Certainly the data side isn't a problem as I won't be saving the data, the sensors will just have a goal that I set (ie 1 deg C) and a beep, LED light and switchoff when the sensor reaches that, with periodic checks after that (to be determined once working) to see if the Peltier needs to be on again for a bit to do some more cooling.

What would be the best way to approach this whole project - bit by bit breaking down the components, making one work at a time, then working out what shields etc I need to do it all together? Is that the standard way?

Many thanks again.


Yep, make sure you understand how everything works separately and then slowly join it all. This way you save lot's of time (even though it might not look like it) and makes debugging a lot simpler.

Have fun!! :)


Certainly, a good strategy is to figure out each device separately. Write a sketch for each different device. If possible, try to write a set of functions for each one and call them as appropriate from setup or loop. That way, when you start to combine devices in the full project, you already have a bunch of useful building blocks. Even then, add them to the main project one device at a time and test test test before you add another.


I work in product development at CO2meter.com, So I can certainly help you with the sensor part. Co2 meters come in several different ranges. Depending on what range you think you will need, I would recommend our Cozir Rh/T http://www.co2meter.com/collections/co2-sensors/products/cozir-0-2-co2-sensor. It comes in 3 ranges up to 10,000 ppm (For a point of reference, ambient atmosphere is around 400-450ppm), and incorporates humidity and temperature.

This particular unit works over UART and has a very simple interface. I have written a small library for it to work with ARM processors, but I can definitely help you get it running on an arduino. Assuming you still want to use the arduinos ftdi to report back to a host computer, this will take 2 pins to run a software serial connection.

for the stepper motor control you can use 4 control boards like this : http://www.pololu.com/catalog/product/2128 . Each board requires 2 pins from the arduino, but if you are sure you will only need to run one motor at a time, you should be able to use one pin for the DIR signal on all 4 boards. So this would only take 5 pins.

each of the servos, and simple on/off devices will require 1 pin from the arduino, so this is certainly possible with a basic arduino. However it is a good idea to leave some room for re-design and expansion, so I would use a shift register for the simple on/off devices. If you are new to shift registers, it is basically just a way of expanding your i/o pins cheaply. I did a quick tutorial on my personal site a while back: http://girshwin.com/led_shift.php .

If I were doing this project I would probably get a proto-board big enough for all of the sub-assemblies and attach an arduino micro/mini to it. Then I would breadboard each part with the arduino that you already have and make sure its working before attaching it to the protoboard. It can be pretty easy to overheat/damage a stepper controller sometimes, so I would definitely use headers to attach them so you can change them out if needed.

*Note: when working with the stepper motor boards, if you need to adjust wiring make sure to turn off the power first. Disconnecting and reconnecting motor leads while connected to power can damage the stepper board.

-Jason Berger

Go Up