Shreya’s Electric Fish Detector
Hi, the electric fish project is going swimmingly! I designed a bandpass filter circuit with cut-off frequencies = 159.155 Hz and 15.9155 kHz to remove unwanted noise from the recorded electric organ discharges (collected using electrodes placed close to the elephant nose fish inside the fish tank), and an amplifier with a gain of around 20 to amplify the signal. I had to adjust the gain and supply voltages so that the voltage level of the signal input to the Arduino doesn’t exceed its voltage limit. The Arduino converts the analog input signal to digital using its 12 bit ADC (analog to digital converter) and detects “spikes” when the value read differs from the average by 100 ADC units or more. Here’s the first spike I recorded on the SD card-
This is the electrode I used to record EODs from the fish-
It’s easy to make- just wind 3 pieces of wire at equal distances on a long plastic stick and connect the 3 wires to an audio jack that can be connected to the rest of the circuit. Here’s a picture of the PCB, which is made in the form of an Arduino shield that works on an Arduino M0 pro-
I also observed that there is a noticeable inversion of the EOD spike when the fish turns using which we can tell which direction the fish was facing with respect to the electrode.
Next, I varied the distance of the electrode from the fish and measured the average peak to peak height of the spikes recorded.
I took 2 minute readings for each distance (taken 3 cm apart from 0 to 55 cm) and averaged the values which are plotted in the graph below. Beyond around 27 cm, the EOD spikes were too weak to be detected and were hence, not always detected, but the few that were, had a peak to peak height of around 50 to 53 ADC units tall at 55cm, and around 60 to 65 ADC units at 45cm.
The time taken to write to the SD card is around 25ms when the buffer size is 100 samples.
To improve the accuracy of detecting EOD spikes at distances greater than 30 cm, I increased the gain of the amplifier, which helped but caused the spikes to be clipped when the distance was small, like 10 to 15 cm. To overcome this problem, I made another PCB incorporating a digital potentiometer in the amplifier stage so that the gain could be varied depending on the distance of the electrode from the fish. Currently, I am testing this new board.