Simulated visual system

We want to use artificial neural systems to teach biological instrumentation methods. The goal is a set of small circuits which behave like neural systems with respect to voltage, timing, and system behavior. This will enable students to exercise their skills in setting up amplifiers and oscilloscopes, getting rid of noise, connecting to a computer and writing software , while concentrating on the electronic technology, rather than the biological technology. We believe that modeling is no substitute for work with real animals, but modeling can help in understanding electronic and logical concepts before the students use real animals.

We built a simple model of an array of light sensors with the following properties:

The Codevision C program running on the Mega32 microcontroller consists of three parts:

If we monitor this program using the audio input of a computer and the Matlab DAQ toolbox, we can write a program to record spikes. The following images show the results of sweeping a light over the four photosensors. You can see the different amplitudes of units and the approximately exponential fall of spike rate in the second image.

Simulated action potential

Intracellular recording model using a state machine

We built a dynamic clamp using a Atmel Mega32 microcontroller (MCU) to produce realistic current flows into a passive membrane capacitance. The circuit is shown below. There are two external connections, as there would be in a real cell. The MCU reads the differential voltage at A.1 and A.0 (membrane voltage) to control conductances. All voltages are produced by varying the current coming from the timer0 PWM output. The potentiometer is adjusted to make a resting potential of -90 mV. The potentiometer setting acts as the reference voltage for the ADC and for the external connections. Note that MCU ground must be isolated from the box that contains the circuit so that the external ground reference is the cell outside lead.

ntracellular recording model using modified Hodgkin-Huxley model

The circuit is the same as in the previous section and the potentiometer is adjusted to a resting potential of -90 mV. The program uses the following model:

All arithmetic is done in 8:8 fixed point. Voltages are scaled so that the integer part of the fixed point number is mV/4. The model is updated 7800 times/sec.

Below are some traces at different levels of constant current injection.

A slightly modified version of the program has somewhat slower h and n dynamics and runs on the standalone board. An action potential and the board are shown below. The resting potential adjusting trimpot is in the lower right, next to the membrane capacitor. There is a button to the lower left to inject a test current.

The full schematic is below. Note that ONLY two connections go to the outside world: CellIn and CellOut. Microcontroller ground must not be connected outside this circuit.

The following images are matlab figures under current clamp and voltage clamp recorded using the National Instruments USB-6008 interface. The current clamp used a simple voltage follower for recording. The voltage clamp circuit is shown below. There were two separate programs to make these images, one for current clamp and one for voltage clamp.

The voltage clamp circuit used is shown below. The command voltage inverter (first opamp) is necessary because the USB-6008 can only produce 0-5 volt output and this circuit required a negative clamp voltage. The matlab program performed the operation
(Ch1-Ch0)/10000 = (V1-V0)/Rfeedback

to estimate current.

Individual conductances can be inactivated in this version of the program. Shorting microcontroller pin C.7 to ground zeros the sodium current. Shorting microcontroller pin C.6 to ground zeros the potassium current. The next figure shows normal, suppressed soduim and suppressed potassium current conditions. The voltage step occurs at time zero to the value shown. Before the step, the volage was maintained at -100 millivolts.