[HN Gopher] Lego Mechanical Computer
       ___________________________________________________________________
        
       Lego Mechanical Computer
        
       Author : shakna
       Score  : 196 points
       Date   : 2024-01-10 13:10 UTC (1 days ago)
        
 (HTM) web link (www.drmoron.org)
 (TXT) w3m dump (www.drmoron.org)
        
       | Aardwolf wrote:
       | Here's something I'm wondering: Is it possible to create
       | mechanical logic gates that do not involve any friction,
       | elasticity, springs, gravity, as well as any active powered
       | control, but only frictionless motions.
       | 
       | Example: a NOT gate is trivial to make without any such friction
       | mechanics, just a lever (one side goes up, other goes down, so
       | 'NOT') or two gears (one rotates one way, the other the other
       | way).
       | 
       | But an AND or OR gate, needed to make the universal NAND or NOR
       | gate to get any arbitrary logic, seem to always require some kind
       | of elastic band, spring or gravity based mechanism to return the
       | gate to initial position.
       | 
       | Friction / elastic bands, etc... cause wear and tear, which is
       | why it'd be interesting to see a mechanism that's as frictionless
       | as the NOT gate described above.
       | 
       | Things that are fine to use according to what I mean above would
       | be: gears (including non-circular shaped ones), planetary gears /
       | differential, levers, ... An example of something that is not
       | fine is: an OR gate made by two sticks that can push an object
       | forward, and an elastic band (or gravity or spring) makes the
       | object move backwards again in the case both sticks are retracted
       | backwards.
       | 
       | I mean theoretically, there's always friction in gears anyway but
       | I don't mean avoiding that one.
        
         | speps wrote:
         | Steve Mould did one with water: https://youtu.be/IxXaizglscw
        
           | Aardwolf wrote:
           | This one uses gravity though! Not the same thing as friction
           | causing wear and tear, but still a similar dependency on a
           | force as the springs/elastic bands. Plus use of gravity means
           | a lot of force is needed to operate many of the gates at the
           | same time
        
             | xaellison wrote:
             | ok but gravity scales quite nicely as force right?
        
           | VikingCoder wrote:
           | And he did one with spintronics:
           | 
           | https://www.youtube.com/watch?v=QrkiJZKJfpY
        
         | jncraton wrote:
         | There is a large amount of theoretical research on the subject
         | of energy limits in computing. For example, Landauer's
         | principle states any irreversible change in information
         | requires some amount of dissipated heat, and therefore some
         | energy input [1].
         | 
         | Reversible computing is an attempt to get around this limit by
         | removing irreversible state changes [2].
         | 
         | [1] https://en.wikipedia.org/wiki/Landauer%27s_principle
         | 
         | [2] https://en.wikipedia.org/wiki/Reversible_computing
        
         | gliptic wrote:
         | Rod logic seems to fit the bill (https://anthony-
         | zhang.me/blog/rod-logic/).
        
         | nicbn wrote:
         | Check out: https://m.youtube.com/watch?v=kQeDnFUNW-Q
         | 
         | And gate starts at 4:49. Or gate starts at 6:27. The trick is
         | to make some gears not stationary, moving along as other gears
         | push them.
        
         | gene-h wrote:
         | Springs do not have to wear out. If springs are made from a
         | material such as steel that has a fatigue limit and the stress
         | they experience is less than the fatigue limit, they may be
         | deformed forever.
         | 
         | As for the answer, it appears to be yes. It is possible to make
         | logic gates which only use rigid rotary links[0].
         | 
         | [0]https://arxiv.org/abs/1801.03534
        
         | munificent wrote:
         | OR is easy: a rod that is fixed to stay horizontal but can
         | slide up and down. There are rods under it at either end for
         | the two input bits. If either input goes up, the horizontal
         | result rod goes up.
        
         | dekhn wrote:
         | Check out https://en.wikipedia.org/wiki/Billiard-ball_computer
         | It's theoretical but there are some great ideas in the general
         | area of mechanical reversible computing.
        
         | quickthrower2 wrote:
         | Or gate could be a ratchet in your gear example.
         | 
         | On a bike, it moves if you have momentum OR you pedal.
         | 
         | I guess the ratchet needs a spring though? Doh!
        
       | SillyUsername wrote:
       | Flip flop represented as a stick is genius, should be obvious,
       | but looking at at a level of electronics, isn't. IMHO that is
       | stepping back/out of the box thinking.
       | 
       | A flip flop is a circuit whose design only exists because
       | electric on its own can't be held in a fixed representational
       | state, whereas a stick obviously can!
        
         | xeonmc wrote:
         | reminds me of the use of redstone blocks as flipflop in
         | minecraft
        
           | dandelany wrote:
           | Excitingly, the next version of Minecraft will have a single
           | block (Copper Bulb) that effectively works as a redstone
           | T-flip-flop! Previously it has always required a handful of
           | other blocks to implement one.
        
             | 0x3444ac53 wrote:
             | Yes!! I'm super excited about this. I always implement
             | flipflops with a monostable circuit and a Redstone block.
             | The copper bulb will make building out large circuits soooo
             | much easier.
        
       | prettyStandard wrote:
       | I just want a regular Lego computer...
       | 
       | https://www.youtube.com/watch?v=uMhX1yZhu3A
        
         | mbork_pl wrote:
         | I'd prefer this one:
         | https://www.youtube.com/watch?v=6wBrOV2FJM8
        
       | pmayrgundter wrote:
       | Love this! I once had a go* and failed.. this is really a step
       | forward.
       | 
       | I think there's an important general principle about the
       | role/capabilities of the external driver/operator that's party
       | addressed here in the blog and video. You can see in the video a
       | somewhat complicated manipulation to step the computer through
       | one cycle and the author says:
       | 
       | "Because there is this feedback loop between memory and control
       | logic, you need a fairly careful timing mechanism so that the
       | output of the control holds steady long enough to set the
       | appropriate state of the memory. That said, this control
       | mechanism is basically missing from my computer. Instead, it
       | relies on the operator (me) performing several different motions
       | in the correct order to advance to the next state (as you can see
       | in the video with me flipping several controls)."
       | 
       | This is importance bc it has to do with the thermodynamics of
       | work. The more intelligent the operator, the less work efficient
       | (less intelligent, so to speak) the computer need be. I'm
       | impressed with the level of efficiency here.. his hand motions
       | are rote and not particularly delicate.
       | 
       | The mechanism I had tried was to push a lego "program" (a flat
       | block with protrusions) thru an "interpreter" (a chute with
       | friction gears to drive a system of switches actuated by the
       | program block's protrusions). This meant the driver was just a
       | "push" of the program, which drove the system. Much nicer in
       | theory, but also way harder and so didn't work. I also didn't
       | have an interpreter of any sort. I had a few-bit display driven
       | by the levers, so it was really just an analog machine.
       | 
       | Anyways, if anyone's playing with this, that's a suggestion for
       | one area to focus.. to simplify the role of the operator to the
       | point where there's no intelligence being used.. ideally just
       | linear or rotational force.
       | 
       | * I was once into Quines and thought I was hot stuff after
       | writing a self-printing program that also played the Game of
       | Life[sg]. At work we had a table of legos, and I foolishly bet
       | some colleagues I could build a self-printing program running on
       | a lego machine. But the the computer is no simple feat itself.
       | I'm now freshly inspired. I'd been exposed to the idea of a latch
       | in school, but wasn't clear until now how important it is for
       | state and control of the interpreter. [sg]
       | https://github.com/pablo-mayrgundter/freality/tree/master/fu...
        
       | mungoman2 wrote:
       | This is awesome. I dream of a mechanical computer that can be
       | 3D-printed in one go, fully assembled. A subset of all linkages
       | and joints can be printed this way. Is it possible to build a
       | computer out of them?
        
         | klyrs wrote:
         | Somebody's figured out the gates already...
         | 
         | https://www.nature.com/articles/s41467-019-08678-0
        
         | fentonc wrote:
         | I came pretty close: http://www.chrisfenton.com/the-turbo-
         | entabulator/
        
       | hyperluz wrote:
       | I like these explicit and "transparent" computers. Does anyone
       | know of a similar computer using LEDs as logical gates in a way
       | we can "see" what and how things are being computed?
        
         | k2enemy wrote:
         | Enjoy! https://megaprocessor.com/index.html
        
           | sabartonn wrote:
           | I understand that every P-N junction emits radiation as a
           | byproduct. I always thought that if we could observe the
           | right part of the spectrum, it should be possible to "see"
           | the transistors in a processor die light up as it computes.
           | The fact that nobody's done this (that I'm aware of) probably
           | means it's probably not practical.
        
       | primitivesuave wrote:
       | I had a go at this concept as well, over a decade ago [1]. I used
       | rubber bands to collect energy from the mechanical movement so
       | the gate could be reset, but this would ostensibly require larger
       | and larger forces to operate more complex gate architectures.
       | 
       | 1. https://keshav.is/building/lego-logic-gates/
        
       | kloch wrote:
       | It's so cool to see someone actually try to build their silly
       | daydream.
       | 
       | When I was about 12, in the early 1980's when consumer VCR's were
       | hot "new" tech, I imagined building a giant purely mechanical
       | (except for I/O) VCR. The thing I imagined was huge - it was
       | about 50ft wide x 100ft long x 50ft tall and would have used tape
       | about 6 feet wide. The size was apparently due to the limitations
       | of mechanical modulation of permanent magnets used to record and
       | the bandwidth required to record video. Don't ask me how playback
       | was supposed to work with passive magnets but I think the idea
       | was very sensitive paramagnetic heads amplified mechanically by
       | some absurd degree. There was lots of mechanical differential
       | signal processing in this idea.
       | 
       | This wasn't some passing daydream. Over at least six months I
       | became increasingly obsessed with the idea of figuring out if it
       | was even possible to build though I _never_ had any intentions of
       | actually building it. What I was obsessed with is figuring out
       | _how_ or _if_ you could build such an outrageously impractical
       | device.
        
       ___________________________________________________________________
       (page generated 2024-01-11 23:00 UTC)