Ultrasound is one of the most common kinds of medical imaging, and is incredibly useful as a non-invasive means of seeing what’s going on inside a person or animal’s body. It’s most well-known for monitoring the growth and health of a baby during pregnancy, but is also used for a number of other medical applications, such as checking cardiac function. Commercial ultrasound machines for medical use are extremely expensive, but Stoppi71 has a tutorial on how to build a cheap DIY version with an Arduino.
To be clear, this will not yield results anywhere close to as good as you’d see from a “real” ultrasound machine. The depth resolution and power are both low, so you’re only going to see a basic rendering of whatever you’re scanning. But it’s still a fun way to experiment with physics, and is affordable enough to build simply to learn about how ultrasound imaging works. The major components for this project are a paint thickness gauge, an Arduino Due, a 320x480 pixel LCD display, and a handful of miscellaneous ICs for the transmitter and receiver circuits.
Ultrasound imaging works by transmitting ultrasound waves into the body, and then picking up the reflections with a receiver. Those reflections bounce off of dense objects within the body, like bones or organs. By moving the transmitter around, a relatively complete internal picture can be generated. In this case, the transmitter is controlled by the 5MHz transducer from the paint thickness gauge. The time it takes the waves to be reflected and received is monitored by the Arduino, and the results are shown on the display. It only picks up one dimension for each cycle, but that is then graphed over time to yield a basic two-dimensional cross section.