Author Topic: Analogue Game of Life  (Read 1050 times)

0 Members and 1 Guest are viewing this topic.

Online SlhTopic starter

  • Regular Contributor
  • *
  • Posts: 157
  • Country: gb
Analogue Game of Life
« on: September 05, 2020, 02:58:46 pm »
An analogue game of life that I designed around Easter (in peak lock down).

It's got a discrete window comparator with a biggish capacitor (C202) and associated resistors to give a delay of a few hundred milliseconds. Each cell is an individual PCB with connectors alternately on the top and the bottom so that they tessellate nicely. Each neighbouring cell pulls down the corresponding resistor on RN101 and RN102 so that the input to the the comparator is a harmonic progression if you ignore the diodes (1, 1/2, 1/3, 1/4 etc). The two long tailed pairs have different references and one of them has feedback from the cell's own state to enable 3 neighbours to turn it on but only 2 to keep it alive.

The diagonal neighbours are fed around in a clockwise direction. I messed this up the first time so all the boards have bodge wires on the back to correct it.

It works fairly well although the unclocked analogue nature of it does mean that there is potentially some interesting race conditions and they don't all switch at exactly the same time. I've only built 9 so far and each has taken roughly 4 hours to build (because they're tiny and my soldering is not great on the SC-70-6 packages) so I'm not sure if I'll make the grid any bigger.
 
The following users thanked this post: MK14

Online SlhTopic starter

  • Regular Contributor
  • *
  • Posts: 157
  • Country: gb
Re: Analogue Game of Life
« Reply #1 on: September 05, 2020, 02:59:42 pm »
A picture of the back to show the dodgy soldering...
 

Online MK14

  • Super Contributor
  • ***
  • Posts: 4987
  • Country: gb
Re: Analogue Game of Life
« Reply #2 on: September 05, 2020, 05:31:52 pm »
Interesting/fun idea, but..

I'm confused by your schematic. It seems to show some of the PNP transistors, apparently connected the wrong way round.
I.e. The Emitter (obviously that would apply to the base and collectors, as well, in the respective polarities) is connected towards ground (rather than towards the positive side).
Q102B, Q101B, and maybe more.
There are very rare configurations, which are not normally used, whereby you use transistors like that. But I presume, that is not the case here (also, it would tend towards being a datasheet violation, as you would be risking reverse biasing the EB junction too much).
 

Online SlhTopic starter

  • Regular Contributor
  • *
  • Posts: 157
  • Country: gb
Re: Analogue Game of Life
« Reply #3 on: September 05, 2020, 05:45:06 pm »
That's a good point and actually me screwing up and using a PNP symbol when it should have been npn... Since I put it upside down and I knew it was npn I didn't notice that it wasn't... I was being lazy with making parts in kicad when I threw it together.

There's only one PNP, all the others are NPNs in a dual package.
 
The following users thanked this post: MK14

Online MK14

  • Super Contributor
  • ***
  • Posts: 4987
  • Country: gb
Re: Analogue Game of Life
« Reply #4 on: September 05, 2020, 05:56:23 pm »
That's a good point and actually me screwing up and using a PNP symbol when it should have been npn... Since I put it upside down and I knew it was npn I didn't notice that it wasn't... I was being lazy with making parts in kicad when I threw it together.

There's only one PNP, all the others are NPNs in a dual package.

That makes sense. I went by what I saw on the schematic.

Doing the game of life in analogue form, is a neat idea!

When I came across the title, I thought and assumed, you would be using arrays of op-amps. So, even better, an all discrete component solution.   :)
 

Offline floobydust

  • Super Contributor
  • ***
  • Posts: 7681
  • Country: ca
Re: Analogue Game of Life
« Reply #5 on: September 05, 2020, 06:22:37 pm »
You should post a video of what it looks like. I've wanted to add a fade out, instead of on/hard off for the LEDs.
GOL is addicting! I have a (digital) GOL 16x16 from Make/Adafruit using ATMega168's.

From their forums "In smaller configurations (1, 2x2, 3x3) the boards {4x4 LEDs} lock into oscillating patterns, While this an expected output of the experiment designed by Dr. Conway, (and somewhat cool at first), It's a real bummer when trying to use the panels in artistic displays of randomness. (You end up having to reset the panels every 24 hours or so..., which is seriously uncool).... The 1.4 version firmware detects oscillating patterns up to 16 layers deep, And injects a random pattern to unlock the panels".
 
The following users thanked this post: MK14

Online SlhTopic starter

  • Regular Contributor
  • *
  • Posts: 157
  • Country: gb
Re: Analogue Game of Life
« Reply #6 on: September 05, 2020, 09:35:15 pm »
Have a quick GIF.

Btw I should mention that the push switch is for forcing the cell into the live state.
 
The following users thanked this post: floobydust, MK14

Online SlhTopic starter

  • Regular Contributor
  • *
  • Posts: 157
  • Country: gb
Re: Analogue Game of Life
« Reply #7 on: September 05, 2020, 09:44:19 pm »
And another gif. This is what happens when it powers on. The cells default to on.

I should also mention that one of the corner cells has a connector with a link simulating another live cell on that side.
 
The following users thanked this post: floobydust, MK14

Offline floobydust

  • Super Contributor
  • ***
  • Posts: 7681
  • Country: ca
Re: Analogue Game of Life
« Reply #8 on: September 06, 2020, 08:02:38 pm »
I think the cellular automaton rules for behaviour can be done in H/W with more thought. Of the four, you need to sense <2, >3, 2 or 3 with minimum parts.
- Any live cell with fewer than two live neighbours dies (referred to as underpopulation or exposure).
- Any live cell with more than three live neighbours dies (referred to as overpopulation or overcrowding).
- Any live cell with two or three live neighbours lives, unchanged, to the next generation.
- Any dead cell with exactly three live neighbours will come to life.

But GOL also has "generations" - a system tick where updates for born or dies, at one instant. I wonder if you need that or just a leave the analog timer where each cell has it's own birth/death times.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf