A simple Arduino solution interfacing the output from the MRI to the study equipment
My father does research for the department of behavioral neurosciences at McMaster and a large number of his studies use fMRI. The MRI at St Joseph’s Healthcare emits a pulse over a long BNC cable leading to the control room every time it completes a ‘slice’ of whatever it has been scanning. The pulses come extremely quickly and on the computer presenting stimuli and collecting data this becomes quite a lot to handle while still maintaining the fast response times necessary to run an accurate study. In order to synchronize the experiment, the computer only needs to concern itself with whether or not a full ‘volume’ of the brain has been scanned. This can happen after a variable number of slices, usually around 30 or 40 depending on the detail setting.
This project was something simple I threw together to simply count a variable number of pulses and then alert the software after a full volume has been scanned to enable the computer to keep up with the study. I used an Arduino Uno as the microcontroller and an SAA1064 IC to drive a two digit seven segment display. The seven segment display shows how many pulses will be received on the input BNC connector before a pulse is sent through the output BNC connector. There are two pushbuttons to increment/decrement this number as needed and two LEDs that flash to indicate receipt of an input pulse and the delivery of an output pulse.