automatically pressing a physical button / switch

sorry if the question has been asked a zillion times, but i am consufed with what i find. maybe i am not using the right words.

i want to use an arduino to automate the pressing of a few buttons. basically, i need it to press a some tiny physical button. it does not require a lot of power here. i'm talking about a button like you can find on a tv remote, or a mouse. except the button (switch?) wouldn't move at all (like fixed to a wall or a table)
it's like something you are normally expected to press with a human finger without appling force.
but sometimes the button is very tiny (think the reset button that you are supposed to click with a pen, that you cant press by accident)

i was thinking of building a fake finger, and then controlling it with my arduino board.
maybe moving with a servo or a motor, or an electro magnet, or a spring, or an elastic, i dont know what exists and what is appropriate.

sometimes i need the keep pressing on the button for a couple seconds instead of just clicking.

i don't need to press it repeatedly or quickly.
i would rather have a solution that consumes little electric power (i dont plan to use batteries, but it's no reason to waste energy)
i'm fine if my "fake finger" needs a few seconds recharging (to go back to its initial position for instance)
i'm fine if my "fake finger" needs one or two seconds to do its job (no need to be faster)
i would rather avoid a solution that would need to replace components every week or so

what are the best options ? what would you recommend here ? should i use a servo (Servo - Generic (Sub-Micro Size) - ROB-09065 - SparkFun Electronics) ? wouldn't a translation movement be more appropriate instead of a rotation mecanism ?

i dont know the vocabulary here. i'm more an IT guy than a mecanical guy but it's fun to learn :slight_smile:

thanks
fourchette

If you can get at the circuit behind the button, you might find it's better to simulate a button press electrically rather than physically push on the button. But I've seen Arduino-based systems that do physically push buttons (the last one I recall was intended to crack a handset pin by brute force) using solenoids. If you can deal with the electro-mechanical side yourself, then just operating a solenoid from an Arduino is quite feasible.

I would see if you can mount a servo motor to do this. This will give you the control you want.

If you can get inside the switch assembly, it might be best to solder a relay across the switch. (A relay is an electrically activated switch.)

For short-stroke back-and-forth operation, a [u]solenoid[/u] is the gizmo you want. i.e. Remote door-locks on cars are operated by (heavy-duty) solenoids.

A Solenoid is basically a coil of wire (electro-magnet) around a moveable iron rod with a spring.

You'd need a relay or high-power transistor (or MOSFET) to drive the solenoid. (And if you use a relay, you'd probably need a transistor (or MOSFET0 to drive the relay.

i would rather have a solution that consumes little electric power (i dont plan to use batteries, but it's no reason to waste energy)

Mechanical motion always takes more power than, say lighting an LED. But, a solenoid (or motor) only uses power when activated.