HOME   >  Difference Engines > RDE_1

Robinson's Difference Engine #1


The author's small scale model of Babbage's Difference Engine #1 from standard Meccano parts. This model was on display during 2004 at the Computer History Museum in Mountain View, California.  It was exhibited at the 7th annual
Vintage Computer Festival on November 6-7, 2004, and at the 2005 NZFMM convention in Auckland, New Zealand on March 26-27, 2005.  It will be exhibited at the Maker Faire, April 22-23, 2006 in San Mateo, California.

Robinson's Difference Engine #1
Click for a larger version


This model operates on principles very similar to Babbage's original designs, though the constraints of using only standard Meccano parts inevitably mean some aspects of the operation are somewhat different.  The model can handle decimal numbers with up to four digits, and up to three orders of differences - similar in scope to the fragment of the original Difference Engine #1 which Babbage actually realized in 1832. There is no reason in principle (other than the limited world supply of 2 1/2" gears and ratchet wheels!) why it could not be extended to arbitrary sized numbers and an arbitrary order of differences.  Only two basic mechanisms are involved, those for the addition of individual decimal digits, and for the propagation of carries. The rest is repetition. The machine calculates reliably, producing a result about every 4 seconds - somewhat faster than they can be read off and written down.
I have no doubt that if the Meccano of the 1920's had existed 100 years earlier, Babbage would have been entirely successful in his quest. It may be amusing one day to attach a Meccano steam engine to drive the mechanism and therefore realize "computing by steam".

The close-up picture below shows the digit addition mechanism in the foreground, with the carry propagation mechanism behind it. These arrangements are repeated vertically to extend the number of digits and horizontally to increase the number of orders of differences.

Difference Engine Detail
Click for a larger version

A number of technical problems had to be overcome.  First the representation of decimal digits - since standard Meccano is not well endowed with elements possessing a 10 fold symmetry, second finding a mechanism to reliably readout the value of a stored digit and add it to the adjacent column while retaining the original value, and finally organizing the overall drive mechanism such that the required torque could be distributed reliably with no slipping. The handling of carry propagation turned out to be one of the simpler aspects.

A short video of the machine computing a table of cubes can be downloaded here (7MB AVI, requires free DivX codec). A closer view, so you can see the results really are correct, is here (7MB AVI, requires free DivX codec). Alternative versions in Quicktime format (bigger downloads, but better on slower CPUs) are here (59MB MOV, Quicktime) and here (40MB MOV, Quicktime).

The links below provide full construction details:

    Framework
    Arrangement of axes and drive system
    Decimal digit storage

    Digit readout and addition
    Carry detection and propagation
    Setup and adjustment
    Operation
    Parts list
   

Last modified:  3 April 2006

If you experience any problems with this site, please contact the webmaster
© 2003-2006 Tim Robinson