Hi I'm really new to Arduino projects and don't really know how to start. I'have to do a project for university. The programming part should be no problem but I don't have any experiance with electronics.
What I try to achieve is to record a spezific motor movement. For expample I move a modelcar, record the movement and let arduino repeat that motion. How can I do something like that?

I've read that servo movement can be recorded but non-industrial servos are not for multiple rotations and are not very strong. It should be able to move up to 6.6 pounds record a varying movement over a distane of 10 feet. Is it possible to record the motion with something else and do the movement with a stepper-motor?

Edit: I want the motor to repeat the acelleration. So I move the car that the gearing mechanism makes a particular movement. I want to detect how long the motor has to run and how fast it has to be at every moment in that timeframe. I'm only interested in forth and back.

  • \$\begingroup\$ This is a little unclear. Do you want to record a sequence of commands to the motors so that those commands can be played back later to repeat the motion? Or do you want to be able to push the car along a path (not using its motors) and then have the Arduino repeat that path using the motors? In the latter case, what means do you have for sensing the position of the car? \$\endgroup\$
    – Dave Tweed
    Commented Sep 11, 2012 at 15:53
  • \$\begingroup\$ I think he wants to be able to use a remote control or something to move the car while recording data (ie the value of the control pot on a servo) and then repeat that by using cmds from the arduino. Maybe. Question needs clarification. \$\endgroup\$
    – NickHalden
    Commented Sep 11, 2012 at 15:57
  • \$\begingroup\$ I edited the question. I don't want to use a remote control. I wan't to move the car manual and let the motor repeat the acceleration. \$\endgroup\$ Commented Sep 11, 2012 at 16:08

1 Answer 1


It sounds like you want to move the car manually and have the Arduino record this movement, then "play it back" later.

If this is the case, using a rotary encoder (example part) of some sort would be a simple way of doing it. There are various options to detect the rotation and mounting methods, magnetic sensors, optical sensors, etc so have a look around and see what suits your project. Use to sense the amount of rotation, record and then simply tell the stepper to do the same.

Since the stepper has magnets and windings that will generate pulses on movement, you can also use the stepper itself as an encoder, so you may want to experiment in this direction. Here is a good page on the subject with an example circuit shown below (written by a very knowledgeable and enterprising chap on the Piclist)

Stepper pulse sensing circuit

  • \$\begingroup\$ That's exactly what I was looking for. Thanks for pointing me in the right direction. \$\endgroup\$ Commented Sep 11, 2012 at 17:19

Not the answer you're looking for? Browse other questions tagged or ask your own question.