Mary Chambers Automata

mary-a01

 

I delivered the completed Mary Chambers model to Archives yesterday. I’ve painted the base white making the gears stand out nicely. The mechanism is working well so far – we’ll be testing it out over the next few days to see how it stands up to rigorous use. Fingers crossed. Check out the YouTube video here:

The various gears fit rather neatly into this single arch. From left to right the various gears drive first the oars, next the bobbing motion of the boat and finally the swishing back and forth of the waves.

 

mary-a02

 

The 12v electric motor has a built in gear box reducing the speed to 145rpm – a reasonable starting point to drive the wooden gears.mary-a05

 

The fastest output speed is used to drive the rocking motion of the waves, The waves are linked to the drive shaft by a brass wire. The thickness of the wire gives a nice balance between stiffness and flexibility.mary-a03

 

Looking good I think you’ll agree!mary-a04

Intermittent Drive

This is the central drive for a new model of Lady Guildford. In the finished model Lady Guildford will be sitting knitting with her two dogs at her side. inter-a01The large central gear turns slowly, 2-3 seconds per revolution. This intermittently drives the two small side gears. The small gears in turn, are linked to the dogs bringing them to life.

The mechanism needs a little tweaking but is looking good so far.

inter-a03

Timer Circuit to Drive the Automata

colonel-a04Each of the automata in the Archive Project will be mounted on a plinth. There is an electric motor that drives the model and in the end we decided to use a token to set off the motion rather than a simple push button.
The theory is that having tokens or using coins gives value to each ‘performance’

In this picture you can see the coin slot mechanism. When the correct coin is inserted into the slot the mechanism emits a short electrical pulse. Too short to be used directly but long enough to be used to start a timer circuit . I managed to source the coin reader slot mechanism from eBay in the UK.

Here’s the breadboard based final design set up and plugged into one of the coin slot mechanism.
timercircuit12

The timer circuit is based around the Arduino micro-controller.
Specification:  A switch to start the timer.
An emergency cancel switch.
Adjustable time from one second to at least a couple of minutes in one second steps.
A reasonably high current relay to switch the electric motor on the model which will be driven from a 12v lead acid battery.

I settled on a DIP switch as the easiest way to preset the time. The switch works like a binary number. Each switch is worth twice the time as its neighbour: Make up the number of seconds you want by adding together the numbers. timercircuit11For example:timercircuit10
Here’s the final layout of the breadboard and Arduino.
timerfritz_bb

…and the code used to drive the Arduino. You can download the code here.


/*
Timer circuit to drive relay for preset amount of time.
(cc) Rob Ives 2015 www.robives.com www.thearchiveproject.net
*/
// constants
//the pins to read the eight switches of the dip switch
const int dip00 = 2;
const int dip01 = 3;
const int dip02 = 4;
const int dip03 = 5;
const int dip04 = 6;
const int dip05 = 7;
const int dip06 = 8;
const int dip07 = 9;

const int start = 11; // pin for the input pulse
const int cancel = 12; // emergency cancel button

const int relay = 13; // output to relay

//variables
int runtime = 0; // the variable where the time set on the dip switch will be stored
int startstate = 0; //variable for reading start pulse
int cancelstate = 0; //variable for reading emergency cancel button
int timeractive = 0; // is the timer timing?

unsigned long currentMillis = 0;  // start time store
unsigned long timeInMillis = 0; //runtime in milliseconds
unsigned long endInMillis = 0; //runtime in milliseconds

void setup() {
   // set the digital pin:
  pinMode(dip00, INPUT);
  pinMode(dip01, INPUT);
  pinMode(dip02, INPUT);
  pinMode(dip03, INPUT);
  pinMode(dip04, INPUT);
  pinMode(dip05, INPUT);
  pinMode(dip06, INPUT);
  pinMode(dip07, INPUT);

  pinMode(relay, OUTPUT); // set relay pin to output

  pinMode(start, INPUT); // input for coin slot
  pinMode(cancel, INPUT); //input for emergency stop

  digitalWrite(relay, LOW); //turn off relay

}

void loop() {
  timeractive = 0; 

  if (digitalRead(start)){
    timeractive = 1; //start the timer
    digitalWrite(relay, HIGH); // turn on the relay
    runtime = readDip(); // get preset time from dip switch
    timeInMillis = (unsigned long)runtime * 1000; //convert time to milliseconds
    currentMillis = millis(); //get the start time of switch press
    endInMillis = currentMillis + timeInMillis;
  }
  while (timeractive == 1){// timer loop
    currentMillis = millis();
    if(currentMillis > endInMillis)  {
      timeractive = 0;
    }
    cancelstate = digitalRead(cancel);
    if (cancelstate == HIGH){
         timeractive = 0;
    }
  }  // end of timer while loop
  digitalWrite(relay, LOW); //turn off relay
}

int readDip()
{
  // dip00 is LSD
  int dipState00 = !!(digitalRead(dip00) == HIGH);
  int dipState01 = !!(digitalRead(dip01) == HIGH);
  int dipState02 = !!(digitalRead(dip02) == HIGH);
  int dipState03 = !!(digitalRead(dip03) == HIGH);
  int dipState04 = !!(digitalRead(dip04) == HIGH);
  int dipState05 = !!(digitalRead(dip05) == HIGH);
  int dipState06 = !!(digitalRead(dip06) == HIGH);
  int dipState07 = !!(digitalRead(dip07) == HIGH);

  int dipTotal = 0;
  dipTotal += dipState00;
  dipTotal += dipState01 * 2;
  dipTotal += dipState02 * 4;
  dipTotal += dipState03 * 8;
  dipTotal += dipState04 * 16;
  dipTotal += dipState05 * 32;
  dipTotal += dipState06 * 64;
  dipTotal += dipState07 * 128;

  return dipTotal;
}

A note about the code: The readDip function is used to read the value of the dip switch and return a duration in seconds. It uses digitalRead(val) to read each of the pins on each of the dip switch. To be sure that the returned value for an on switch is 1 and not some other non-zero value I have added a double not (!!) to the front of the digital read.

int dipState00 = !!(digitalRead(dip00) == HIGH);

If the pin read is zero it will return 0, if it is any other value it will return 1

Here are the various parts of the circuit as circuit diagrams. It’s sometime easier using them to set up a circuit rather than the layout picture.

First the wiring for the DIP switch:timercircuit01Next, the start and cancel switches:
timercircuit03

And finally the parts that drives the relay. I’ve used a transistor as a switch to turn on the relay and a diode to protect the circuit when the magnetic field in the coil collapses. The LED is there as an indicator to show when the relay is activated.
timercircuit02b

Here’s how it all fits together.timercircuit05

The relay is a 5V model with a 10A switch, plenty to drive the electric motors I’m using.

timercircuit07

The underside of the relay shows how the pins are laid out. Not what I was expecting! timercircuit09

The circuit works a treat. I’m going to need to make quite a few of them so my next/final step will be to make up some printed circuit boards to make a more permanent version of the timer circuit.

(Thanks to Mike for coding advice 🙂

Puppetry in Motion

puppets-a02I delivered the almost complete Mary Chambers automata to the Archives this morning. We need to make one small change before it is finished, the rower is at the wrong end of the boat. Oops!

Apart from that it is looking great. Dawn’s puppetry is fantastic and just look at those delicious gears!

We’re working on several models at once as we come towards the end of the first phase of the  Archive project. Colonel Rutherford is almost done, I’m just finishing off his plinth and connecting up the last of the linkages.

donkeyAfter that will be the suffragette model with Catherine Marshall. Dawn has pretty much finished the puppetry so it is down to me to bring the characters to life.
In this model the donkey (Ass-Quith, tee hee) will be sitting between Catherine, a suffragist and another character who is a suffragette. Catherine offers a carrot then the suffragette threatens a stick. Hence the angry eye brows.

Here are the various characters waiting to be brought to life. I love Catherine’s teeth!

puppets-a01

Gear Train for Mary Chambers Model

The Mary Chambers model was the first of the models in the Archive Project that we completed. As parts of the process of mounting the puppetry onto a plinth I wanted to update the mechanism so that the style matched that of the later projects.

There are three main movements in this model. The soldier rows the boat, the boat rocks up and down and the waves… well they wave. All three movements  can be based round a circular crank movement but they are all at different speeds. Fastest moving are the waves with the rocking of the boat slightly slower. The rowing movement is slowest. Slow and steady. I laid out this gear train which should so the job.gear-a05Time to transfer it to the real world.

I made a simple jig onto which I can build the gears.This keeps everything at right angles and makes sure that the key slots are aligned.gear-a01These pictures show the largest gear, the thirty seven tooth gear, being constructed. The gears are made up from three layers of laser cut ply . The gear part with the spokes is sandwiched between two disks and fitted onto the jig until the glue is dry.gear-a02

With the gear centre removed from the jig I fit the outer tooth rings into place front and back and clamp them into position whilst the glue dries. You can see the short section of rack in the picture that  I use to make sure that the teeth are lined up properly.

gear-a03

The finished gear.gear-a04

I’ve then constructed an arch to hold all the parts into position. Here you see the assembled parts, almost complete apart from the keys which will be fitted to the axles.

Running smooth!

gear-a07

Connecting Up The Colonel

With Dawn’s fantastic puppetry complete and most of the drive mechanism done it is time to bring Colonel Rutherford to life by linking the puppet to the mechanism. Colonel Rutherford’s movement is fairly straightforward. He moves his hand as if sketching then stops and looks up at his subject, in this case, a camel who’s shadow is visible on the box top.
rutherford-a04The motion is controlled by two cams located under the scenery, one controlling the drawing hand, the other controlling the head. I’m fitting cam followers (not shown here) which will then pull and push on a wire connected to the relevant part.rutherford-a05The wire moving the hand lifts up and down, I need the hand itself to move back and forth so I’ve made a bell crank to change the direction of movement.

The parts of the bell crank are made from wire shaped with pliers and wire cutter.rutherford-a01

 

The small staples hold the wire to the hand, the other end connects to the edge of the table.rutherford-a02

The wire push rod connects to a loop on the heel of the hand.rutherford-a03Et voila!

rutherford-a01rutherford-a02

 

 

 

Colonel Rutherford

colonel-a04I delivered the first plinth to the Archive this morning. Dawn met me there and after struggling with the heavy box from the car we set it down in a currently unused room.

The plinth, which will ultimately be painted white, contains a power supply in the form of a large lead-acid battery, a coin slot mechanism and a timer circuit. Drop a suitable coin in the slot and the motor runs quietly for a preset period.

Colonel Rutherford was the first to try out this privileged placement!
Looking good we both agreed.colonel-a01The good Colonel sits on his stool under the baking desert sun sketching and occasionally looking up at his subject .

colonel-a03Whilst the mail plane, charmingly decorated in copies of original hand written letters and airmail sticker circles overhead.

colonel-a02We were both delighted with how the plinth, the mechanism and Dawn’s fantastically detailed puppetry are looking.

Next time: Catherine Marshall and the Suffragette donkey!

catherine-a01

Battery Base

Each Automata in the Archive Project stands on plinth and will be covered with a protective glass case. Mounted in the plinth will be a coin slot. Tokens fed into the coin slot will trigger the performance of the automata.

Some of the plinths will be near to a ready supply of mains electricity but others will need to be self contained. I’ve opted to use a fairly meaty 12v lead acid battery as the power supply to maximise the time between charges. The batteries are heavy. Nearly 2kg in this case, so they need to be secured to the inside of the plinth.

I’ve constructed this battery holder on the laser cutter. It is shown here clamped up as the glue holding the three layers together, dries. battery-a05

A top view of the base shows that it is a shallow tray. Four small  rectangular slots on the base allow two zip ties to the threaded into place.battery-a01

Viewed from the underside you can see the two long slots where the ties fit. You can just make out the small holes at the end of each slot.battery-a02

Two long cable ties thread into place…battery-a03

…and the battery is secured. The finished assembly is screwed down inside the plinth and ready to go.battery-a04

Plinth

I’ve been trying out plinths for the automata. I made up a couple of drafts from corrugated card just to see if the size felt right. I’ve settled on 900mm for the height for the moment though I still have to check this with Dawn. Next step, see what it looks like made from more solid materials.

I’ve been to the friendly local wood merchant who cut me various pieces to size. There will be a pine frame inside but just to see what it looks like I’ve propped up these pieces and stuck them together with masking tape. I’ve stood the mechanism from the Catherine Marshall model on the top to get an ides of how it all goes together. The characters themselves will sit on the top of the box and the whole of the automata will be protected inside a glass cover. I’ve added skirting board round the base for the plinth which I think finishes it off nicely.plinth03We are planning to use tokens rather than just a push switch to start the automata, the thinking being that the tokens will encourage people to place a value on each ‘performance’ encouraging them to stand and watch rather than rushing off to press the next button. I’ve sourced some coin slot mechanisms and programmed them to recognise tokens. One of these will fit into the front of the plinth.

plinth01

The instructions for the coin mechanism appear to have been translated from their original language using Google Translate but after a bit of frustration I have got the machine to recognise or reject coins as appropriate.

For your interest here’s a closer look at the front half of the Catherine Marshall mechanism.plinth02

Motorisation

In the initial planing we talked about how the automata in the Archive Project would be driven. We decided against manually turning a crank handle because we were worried about damage caused by over-vigourous cranking, clock work was out for practical reasons leaving electric motors.  Some of the twenty models proposed need to be sited away from mains electrics so we plan to use 12v rechargeable batteries as the power source. I’ve sourced a suitable motor that is both powerful and runs quietly. The output shaft is 6mm in diameter and it runs at 145rpm, roughly two and a half turns a second. Pretty innit!? motor-a05

Now it needs a suitable mount.

motor-a01Here’s the cradle I’ve come up with, made from 3mm thick laser cut plywood. Notice the segmented segment in the cradle section. The gear box section of the motor sits here, the segments are glued into place and provide a surface to which the motor can be clamped.

motor-a03The motor fits in the cradle and a gear connects to the output shaft.

motor-a02

The whole thing is clamped together with a jubilee clip allowing the motor to be removed and replaced in necessary.

motor-a04