Fork me on GitHub

Project Notes

#492 Kicking Back

A useless machine/desktop toy that employs some overly complex mechanics to simply kick a ball (in a minor homage to @mPinoe).

Build

Here’s a quick demo..

clip

Notes

Kicking Back is a desktop toy that uses a hall-effect sensor picking up a magnet in a ball to trigger the player to kick it back. The sensor input goes to an edge-detection circuit that triggers a 555 monostable, ensuring a reliable (and adjustable) “kick” pulse is delivered to the solenoid that controls the player, regardless of how fleeting the sensor input is.

The project started as an experiment with hall effect sensors and edge detection, but soon blossomed into a fully-fledged desktop toy. And along the way became a minor homage to @mPinoe - I just hope she’s not offended by the rough and ready paint job!

Does this also count as a “useless machine”? Perhaps?!! .. so on the off-chance I’ve entered it in the MacroFab Design Contest: Useless Machine

Control Circuit

The control circuit triggers a solenoid that provides the kinetic movement for the sculpture.

The circuit breaks down into the following stages:

  • a hall-effect sensor detects a neodymium magnet in the ball
  • falling edge detection with a PNP inverter (Q1) generates a pulse when edge detected
  • the falling edge pulse triggers a 555 timer configured for monostable operation
  • the 555 timer’s threshold input is normally pulled low (R6), and a diode (D1) is included to absorb the opposite edge pulse.
  • a 50kΩ pot (R2) adjusts the monostable output pulse width
  • 555 output is active-low, so is used for PNP (Q2) high-side switching of the solenoid and indicator LED
  • a diode (D2) provides flyback protection from the solenoid

The adjustable output pulse allows it to be set at an appropriate length to fully activate the solenoid with out it remaining on too long.

Breadboard

Schematic

The scope trace below shows the pulse generated on the rising edge of the input. The output pulse is around 55ms, close to the calculated 52ms.

  • CH1 (yellow) - hall-effect sensor output
  • CH2 (blue) - edge-detection pulse (input to the 555)
  • CH3 (red) - output, measured at the collector of the high-side PNP switch Q2

trigger_signal_scope

Construction

The build (in fact this project) started with playing around with a rocker design (onto which the ball is mounted), and evolved from there..

design_notes

The rocker is quite well balanced, so that any impact on the ball generates a generous movement that oscillates freely.

build_ball_rocker

All the eletronics are on protoboard that is inserted in the base. In the final build (after this photo), I took the LED off the board and mounted it in the base.

build_control_board

Building the player. Simple wire and pulley system with the key movements:

  • solendoid pulls on lever to kick the leg
  • in turn joined to separate arm levers (making the left arm go forward, and right arm go back)

It’s all ad-hoc wire contruction, with popsicle sticks for arms and legs.

build_player_wip

Mounting the control board in the base (which is actually Ikea packaging material).

build_install1

Finally built *save the head!) and ready for final beautifiction.

build_install3

All done and painted..

KickingBack_build

KickingBack_build2

KickingBack_demo

Credits and References

About LEAP#492 SensorsSolenoid555 Timer
Project Source on GitHub Return to the LEAP Catalog

This page is a web-friendly rendering of my project notes shared in the LEAP GitHub repository.

LEAP is my personal collection of electronics projects, usually involving an Arduino or other microprocessor in one way or another. Some are full-blown projects, while many are trivial breadboard experiments, intended to learn and explore something interesting (IMHO!).

The projects are usually inspired by things found wild on the net, or ideas from the sources such as:

Feel free to borrow liberally, and if you spot any issues do let me know. See the individual projects for credits where due. There are even now a few projects contributed by others - send your own over in a pull request if you would also like to add to this collection.