Blog Post Week #3: Imaging Instrumentation Ultrasound Lab
Jorie Budzikowski, Stephanie Molitor, and Rachel Welscott
This week we worked on:
I. Making a pulse-echo sequence
II. Programming the Servo to sweep through a range of angles for B-mode imaging
III. Finalized our setup prior to data acquisition
I. Making a pulse-echo sequence
Once we got a basic sinusoidal function generator functioning through the GNU Radio software (Figure 1), we were able to alter the conditions of the signal source to create pulses that are 1 microsecond in duration. We are able to do so by introducing a delay, a multiplier, and an additional function to our square wave source. The pulse is sent to the radio, will be amplified, and then transmitted through the ultrasound probe. We also added a radio source and GUI sink component in order to read what signal is reflected back from the ultrasound transducer. The block diagram for our pulse-echo sequence is shown in Figure 2.
Figure 1. Simple 5 MHz sinusoidal signal from our function generator using the USRP radio.
Figure 2. Block diagram for our pulse-echo sequence.
Figure 3. Oscilloscope readout of our 1 us pulse signal from the URSP radio.
II. Programming the Servo to sweep through a range of angles for B-mode imaging
The arduino was programmed to move to the angle plugged into the serial monitor. The servo object was first created and the serial monitor was initialized. The position variable (pos) was initialized and set equal to the read in value that was entered into the serial monitor. Next we used an if statement to ensure that the value that was inputted into the serial monitor is attainable by the servo motor. Finally, the inputted position was written to the servo motor so that ultrasound probe was pointed at the intended angle. See the attached video of our servo moving the ultrasound transducer.
Figure 4. Arduino code to control the servo arm and have it move to a desired angle.
III. Final Equipment Setup Prior to Data Acquisition
Now that we have programmed our URSP radio to transmit and receive signals, and programmed our servo arm to move the transducer, we are ready to start collecting some ultrasound data!
Figure 5-6. The electronics of the ultrasound probe system and the physical probe-stand tabletop model.
Questions to answer this week:
- Question: How can you do this using a single square wave signal source, a delay, and a signal multiply block?
- You can send the single pulse as an input into two different operator functions. One of the functions should not do anything to the waveform while the other function adds a delay and a multiplication constant. These 2 new wave forms are then multiplied together to result in a square waveform with a very short pulse width.
- Question: The simplest solution using the above three elements has an upper limit on the pulse repetition time, because of the very large delays required. How can you modify it so that you can use only a 1 us delay?
- The simplest solution only involves the signal source, a delay, and a multiplier. We originally planned to use a large delay with this setup; however, due to the upper limit we found that we had to modify our design. We instead changed the used a short delay in combination with an addition operation to get a 1 us delay.