Rotating Base With Arduino *need help*

Hello everyone, i'am doing this project for my Introduction to Automation class, and I want to do a Rotatory base that moves 72 Degrees each time a button is clicked. Initial position 0o, then 72o, 144o, 216o, 288o, 360o / 0o, then again 72o and so on, so it has to make full rotations every 5 clicks. What do you think would be a nice design for the base? I've thinked about a continous rotation servo and the arduino, but is it easy to program the arduino to make the servo move 72o each click, it has to stop after the 72o rotation and rotate 72o again just when the button is clicked again, is it possible to program this? I'am very new to electronics and microcontrollers but i'am very motivated to work and learn everything that is necesary.

Thank you in advance and sorry if there's any grammar error, english is not my native language.

There's no feedback on a continuous rotation servo; as such, you're not going to be able to get it to move 72 degrees each time.

What you could do, however, is put an optical encoder disk on the moving platform (homemade or bought), and use that to find the angle traveled.

It is difficult to have control the angle of a continuous rotation servo with reasonable accuracy. If you need precise turning, a regular servo would do, but instead of rotating all the way around, it would have to return the long way to its starting position after the fifth click. If this is not okay, consider using a stepper motor, and control its angle via steps.

Good luck!

Could the base be made to rotate just on time basis?
Or put 5 sensors around it, at 72 degree marks, stop the rotation when you advance to the next mark.
Can be optical, magnetic, microswitch, etc.

Thank you all for the help :slight_smile:

Aeturnalus:
There's no feedback on a continuous rotation servo; as such, you're not going to be able to get it to move 72 degrees each time.

What you could do, however, is put an optical encoder disk on the moving platform (homemade or bought), and use that to find the angle traveled.

bilbo:
It is difficult to have control the angle of a continuous rotation servo with reasonable accuracy. If you need precise turning, a regular servo would do, but instead of rotating all the way around, it would have to return the long way to its starting position after the fifth click. If this is not okay, consider using a stepper motor, and control its angle via steps.

Good luck!

Having this in mind probably will have to change to a stepper, I wanted to do it with servos 'cause I was told they were the easiest to program.

KE7GKP:
There are several different ways of doing this. How big is your rotating base? How much weight/mass does it have to move? How fast does it need to move? What is your budget? When does it need to be completed?

About 5 inches radio. Not much just the base itself and about 100 grams. Speed does not matter, as long as its not super slow. About 40 dollars :confused: (I already have an arduino). Probably 20/November.

CrossRoads:
Could the base be made to rotate just on time basis?
Or put 5 sensors around it, at 72 degree marks, stop the rotation when you advance to the next mark.
Can be optical, magnetic, microswitch, etc.

KE7GKP:

Or put 5 sensors around it, at 72 degree marks, stop the rotation when you advance to the next mark.

Right. Or use a 5:1 gear (or pulley) ratio for the drive train and monitor once-around for the 5x pulley/gear, etc.

Ok ill start reading about how to do this, to have it as a second option. Cause the objective is to do it without sensors :confused: , just because that would mean a lot of time, learning not just motors but also sensors programming :/, dont know if i have the time and the budget for that.

So summarizing the stepper may be the best way to go, what do you think?

Re: second option: 5 normally open switches wired in parallel, one leg to input pin with internal pullup resistor,the other to ground. Rotate around until arm on rotating base slide onto the switch, the input will then go low. Treat it like an interrupt, or just poll it and when you see it go low, stop moving.

Its a little more expensive, but get a properly rated (for the mass of your platform) stepper and driver. Then just turn the right number of steps on every button push. Very simple. Check out the stepper library.

Other methods (including servos) use sensors

...and so can steppers, if you can't assume a "return-to-home" before power-off.