IVF Simulator
I built an IVF simulator to train IVF technicians at a fraction of the cost of existing training methods. This project was advised by Prof. Kenneth Salisbury, (Salisbury Robotics Lab—departments of CS, Surgery, and Mech-E) at Stanford University.
What is IVF: A game-changing infertility remedy, ICSI-IVF (Intracytoplasmic Sperm Injection–In vitro Fertilization) is a procedure where sperms are injected into eggs in a laboratory setting to aid fertilization. It is performed by IVF technicians, using micro-manipulators (robotic hands holding pipettes), capable of delicate movements while being monitored under a microscope.
Why do we need an IVF Simulator: Training technicians to perform ICSI-IVF is extremely expensive and time-consuming since it requires real eggs, hence there is a significant shortage of such technicians right now.
Simulator hardware
The controller has 3 knobs: two of them move the micropipette carrying the sperms in the X-Y plane, while the third adjusts the micropippete holding the egg in the Z direction. To emulate the feel of various real micromanipulator controllers, I designed the controller with variable friction and variable inertia. The knobs are attached to rotary encoders that read the speed and direction of the knobs being rorated, interpretted by an onboard microcontroller (arduino nano) that connects to the computer using USB serial communication.
Variable Friction
The knob has an inner teflon ring that is meshed to a teflon ring base because teflon slips easily. The knob-ring’s downward force can be controlled by a mechanism with screws, that helps set the desired friction for rotation.
Variable Inertia
The inside of the knobs has removable weights, to adjust the rotational inertia as desired.
Simulator Software
Simulator Elements Imagery
The simulation imagery is derived from real IVF microscope footage (YouTube Video). Different elements in the footage, like the egg in various stages and micropipette, are separated individually on Photoshop.
GUI Programming
Using the above imagery, the simulator is built on Python using the Tkinter GUI builder. This program is controlled in real-time by turning the knobs on the controller.