A while ago I talk to my friend Konstantin about working on one of his sculptures called "the accuser". The accuser is a man sitting on a chair with one arm up pointing towards the observer.
Accuser by Konstantin Bessmertny
The task was to automate the pointing arm so that it would move upon detection of an observer.
Below is a section of the instruction manual I prepared when I delivered the automated arm:
The accuser arm is a robotic arm with two DOF (shoulder and elbow) that moves between two positions (arm down and arm raised) triggered by the readings of an ultrasonic sensor. The following parameters are adjustable (see point 3 for instructions on how to adjust the values):
Independent setting of rest position for each motor
Independent setting of raised position for each motor
Distance at which the movement is triggered
Amount of time the arm is raised
Amount of time the arm waits to be activated again after returning from a raised position (avoids repeated activations)
Speed at which the assembly moves
If arm is raised randomly or not upon detection of a person (useful to accuse only some people).
The likelihood of raising the arm if the option to raise the arm randomly is selected (e.g. 25% of the detections, 33% of detections, etc).
I installed 2 high torque/ high speed futaba servos, controlled by an arduino board which in turn is connected to an ultrasonic sensor. I made simple arm with two pieces of aluminium (see the attached document) with a servo on each joint. The movement is quite realistic!
The project is described in more detailed on the users manual (including program configuration and arduino interface to the Ultrasonic Range Finder - XL-Maxsonar EZ0 and the arduino programming file is also below: