Posts

Showing posts from April, 2024

"programming" the prototype

Image
  Now that the prototype shows signs of coming to life, it is time to consider how to animate it. The axles are rotated and lifted from the "21st century" section on the bottom that is filled with stepper motors controlled with a PJRC "Teensy 3.5" microcomputer. Here are comments from the source file of a motion script interpreter I have written for it:    The following axles are implemented in this first prototype:           C    carry sectors for adding 1       F    the anticipating carriage digit wheels       FC   the connector pinion for above to FP       FP   the fixed long pinions       FPC  the connector pinion for above to either A1 or A2       MP   the movable long pinions       MPC  the connector pinion for above to either A1 or A2       A1   the upper number in the digit wheel stack       A2   the lower number in the digit wheel stack        The axles can be connected thusly:         C  -- F -- FC -- FP == FPC -- \                                  ||     

ditching the lifter springs

Image
The initial version of the prototype had all the axles fixed. Vertical motion was effected by moving sleeves surrounding the axles that the components to be lifted (digit fingers, pinions, carry levers, etc.) would be trapped between. When the lifter was lowered, a spring on the top would push the components back down. There were two problems with this approach: The sleeves were long and introduced too much friction sliding against the axles. The spring force was often inadequate to move the components down. Besides, Tim Robinson says that Babbage never wanted to depend on either springs or gravity for positive motion. Consequently I redesigned the lifters so that the components are fixed permanently to the axle, and the axle is driven positively to move both up and down. The components are still spaced and trapped by concentric sleeves, but they are fixed in position and don't slide on the axle. Here's what the drive mechanism on the bottom looks like for a rotating shaft that

a better locking mechanism

Image
Tim Robinson came by to see my prototype and had a number of excellent suggestions. One of the problem areas we discussed was my locking mechanism, which is based on a rotating wedge. It doesn't work well in moving the digit wheel away from the wedge pivot point. We mused about whether a different wedge shape would help, but I thought about it later and couldn't find one that worked. Babbage sometimes got around this problem by using different and oddly-shaped locking teeth that weren't simultaneously functioning as gear teeth for meshing. To fix the problem I redesigned the lock to use a wedge that drives along a line through the digit wheel axis, and I pointed the wedge. This works much better. The downside is three parts instead of one, and a second supporting rod.  I may eventually investigate a bar lock moving in an oblique slot like in Difference Engine #2. That presents its own challenges, but it would use far fewer parts.

first prototype assembled

Image
 This the design for a prototype mechanism that has components to demonstrate several critical features: a 4-digit dual-cage digit stack that stores two 4-digit numbers movable and fixed long pinions that can do shifts  to multiply and divide by 10 a 4-digit anticipating carriage that can do both addition and subtraction The digit and carriage wheels have hidden fingers inside them used for "giving off", which is the process of reducing a value to 0 while transmitting it elsewhere. The fingers are engaged or disengaged by lifting or lowering a stacked set of sleeves around the digit wheel axis. This arrangement will be sufficient to demonstrate simple algorithms, like computing numbers in the Fibonacci Series. It is not adequate for doing multiplication and division, however; that requires more digit stacks and perhaps a second anticipating carriage. That is all "19th century" mechanism. But in the prototype tester, the rotation and lifting of the axes derive from a