
Neurons
I have an obsession with neurons, neural networks, parallelism, node like structures, lattices grids and webs of things and the chaotic and random craziness that they can create despite they are very organized in artificial systems.
This is an older project that I have resurrected. I rewrote the code as a LIF neuron closer modeling real neurons with 6 inputs each with their own equal weight values.
I did not try and implement any learning behaviors in these yet because first I want to assemble them in a wall of neurons with everything equal so I can see how they behave and the patterns that merge from them.
I currently have a single panel almost complete that will house 72 total neurons. These are tile able and are also continuously updated and revamped to make the neurons easier to build and assemble into panels.
First a little history and background on this project. In 2000 when I was going to school to get my AS degree in electrical engineering, I started building BEAM robots. Beam robots if you are not familiar with the term is a specific field of robots. BEAM was invented by a scientist named Mark W. Tilden around 1992 I believe. Tilden Started BEAM while working at the LANL laboratory in New Mexico Beam robotics at heart is comprised of simplistic yet elegant circuitry. Mainly it utilizes digital inverting buffers and various logic chips to create pattern generators. These pattern generators can be manipulated with simple feedback schemes to adjust frequency and function. They also can be utilized to drive DC motors directly. In other words, they are very simple analog artificial neurons. You can create entire robots that act much more natural than typical programmed Bots.
Beam robotics are ideally suited to for anyone whether it be seasoned engineers or young hobbyists. Their underlying mechanisms and workings can be complicated but on the outside, they are beginner friendly. For more detailed info on them please visit this link www.solarbotics.net Living Machines is a must read, Here is an article was written by Mark on his BEAM technology.
Since the mid-2000's the BEAM community has died down to the point of near extinction. Most of the sites were hosted on the Yahoo Geocities domain. Many have been lost and have not recovered.
My goals with this project are primarily to bring back BEAM. Starting with my son and I. I wanted to create a kit that could be used to assemble capable robots without having an Arduino or any form of coding. At the same time, I wanted to expand on the BEAM idea.
One flaw of BEAM is that you eventually get to a certain point and realize the size of the circuit grows exponentially. All the pulsing, timing, syncing and "blinkyness" of the whole thing get really confusing. I wanted to create circuits that not only emulate what BEAM does in a pre-programmed microcontroller but also expand on the capabilities. At the same time not make the classic beam circuits obsolete. I wanted to create hybrid designs. I want this to be advanced and interesting enough for adults and engineers as well as my 10-year-old son. For kids, it needs to hold their interest and give them the feeling of accomplishment without too much complexity and frustration.
The circuits I have created connect through a PCB connector system using 4-40 Screws. These connector boards connect the ground connection to all boards. Signal lines or if you will "synapses" are made using pre-made jumper wires available all over eBay. Simple enough for anyone. My set will consist of different flavors of boards each with varying sensors and things on each. My original boards just contained one Neuron each. This looks cool on a table but is not practical for building robots. Originally my only plans for this project were to create hundreds or thousands of them and hang them from my ceiling.
Each board has soldered in threaded headers. This allows them to connect easily to the connector boards and each other. If you look closely at the gallery below you will see what I'm referring too.
Each Neuron has its own SPI controlled RGB LED. boards with multiple Neurons will have one for each as well. These LEDs show you the status of each Neurons synapse using a color code. The color code is as follows. Red means totally drained after that they go up in the ROYGBIV order minus the Indigo. There's only one blue. When the Neuron fires it flashes brightly white. On the single Neuron board, the neuron has two inputs. One for excite and one for inhibit. What this means is pulses applied to excite make the neuron more likely to fire and inversely inhibit make the neuron less likely to fire. Each neuron is leaky; meaning if their synapse sits at a level other than their resting level which is indicated by a green on the LED. Then they will slowly leak back up or down to that resting state. This mimics the leakiness of real neurons. They also have a "ping" feature I have added. What this does is each neuron sends a tiny pulse out periodically as a sort of random stimulation to connected neurons. This pulse gets larger and larger till the Neuron fires, it then resets. This gives the entire system some entropy so it doesn't sit too long without any firing. All this applies to whether there is one neuron or 500 in a board.
Below are some shots of the original idea I had. A single Neuron per board.

Other than the plain Neuron which is being changed to a multi neuron network. I have created 3 other types. I have 12 types planned so far.
Power Neuron:
So far I have created a power Neuron than can power other boards through its lithium battery and step up regulator. It has a lithium charger with USB port on it and a switch. If the power Neuron is inhibited it cuts out power to the boards it's powering for a certain period of time. The next revision will be to the main board.
Motor Neuron:
The Motor neuron mimics the BEAM Bicore. It contains a microcontroller that can mimic 2 complimentary neurons. This Neuron can drive a motor directly. The motor mounts directly to the board as well. The latest version has current feedback so the motor can react to different power loads. For example, you have a leg or wheel attached that will pull back or reverse when it gets stuck automatically. There are dual RGB LEDs for synapse status display, two analog inputs and two outputs for connecting to other boards.
Neural Array board:
With the multiple Neurons per board idea, we can have many interesting things going on. This board will consist of 2,4,6,8 or more Neurons with up to 8 RGB LEDs. Each Neuron will have inputs and outputs. There will be pins for allowing external control of mutation. Mutation is a feature that allows the internal connections to randomly change. This is a staple in machine learning and A.I.
Light Sensor board:
The light sensor board has one light sensing element. this will change to 4 on next revision. This board compares external light levels and pulses accordingly. The pulses increase linearly until a certain point then taper off. The future code revision will change. This will likely change to multiple neuron cores with light based inputs and multiple outputs.
Others:
-
IR and Ultrasonic sensor Neuron
-
Accelerometer Neuron
-
Large Power Neuron
-
Servo Neuron
-
Solar Cell Neuron
In addition to this, I will be creating standard BEAM bicore and microcore boards that can interface with the above mention and future boards.





















