Simple motor control project advice?

Hello, I have never done any project with arduino, I only have an slight understanding of programming. My first little project is for a TV lift. I want to press a button to have the motor turn and lift the tv and when it reaches the top it hits a button which stops the motor then a second press of the button send the motor in the other direction lowering the tv where it hits another button which again tell the motor to stop. Any help with this would be greatly appreciated

I would suggest a stepper motor. You can control a precise position of the motor without using any buttons.

You don't say whether you have figured out a mechanical design yet. That MUST be the first step. How heavy is the TV? How is it mounted? How will the motor cause it to go up and down?

Do you want the TV to stop at any height or only fully up and fully down?

Compared to the mechanical stuff the Arduino part is simple.

Personally I doubt if a stepper motor is necessary. A geared DC motor driving a screw-jack might be more appropriate. Simple microswitches can easily detect the top and bottom limits.


My mechanical design is roughly to use a weighted pulley to reduce the load on the motor. The tv is supported by heavy duty sliders. I am looking to go very cheap as my first option was to try a linear actuator as you suggest with the screw jack which is still an option. I have also been looking at have a multiway switch circuit with 3 switches and the mast switch being DPDT to change polarity for motor direction but i'm finding it tricky to work out.

FHUGO: to use a weighted pulley to reduce the load on the motor

In my mind this is a concept and not a design.

Can you post a drawing (a photo of a pencil sketch is fine) showing the mechanical design and where the motor fits in.

An Arduino cannot manage the heavy current required by a motor and you will either need a suitable electronic motor driver (a h-bridge) that can be controlled by the Arduino. With a h-bridge the Arduino will be able to control the speed of the motor. If you are content just to have the motor on or off then it could be controlled via relays. However the Arduino cannot provide enough current for electro-mechanical relays so you will need to put a transistor between the Arduino and the relay.