Makerspace - Sonar Mapper

1. Project:

For this week’s challenge, I attempted to use the sonar sensor to create an array output that I can use to generate a topography map. I was motivated to try this because I've been looking to create projects inspired by female scientists. Mary Tharpe's success at mapping the ocean floors using sonar data, leading to the discovery of the mid-Atlantic ridge, is relevant to our middle school science curriculum. Using Arduinos would give them the opportunity to practice bathymetry, following in the footsteps of this groundbreaking scientist!

2. Code:

This is the code I developed to record sonar mapping data from my sonar sensor. After testing, I modified it to include lights that blink as a visual indicator when data is taken. 

A challenge for students trying to breakdown / understand / modify this code could be: how would you modify for bathymetry to adjust for the speed of sound through water vs. the speed of sound through air?



3. Circuit Design:

The following circuit represents my sonar scanner.


Video of Circuit for Sonar Mapper (0:36)

4. Electronic Diagram:

The following electronic diagrams were taken from my design journal.

For the following circuit design, the sonar sensor detects distance, and the LEDs function as indicators, with red blinking when each data point is taken, and green shinning when it's time to go to the next row.


Electronic Diagram for Sonar Scanner

5. Video of Project:


Description of Sonar Sensor Project and Time Lapse of Taking Data (0:49)

6. Explanation of Project:

This week I attempted to use a sonar sensor for the first time. Using ultrasonic bathymetry as my inspiration, I decided to see if my sonar scanner could distinguish between a basketball and a football.

One challenge I tackled was how to store data. I found several demo codes that would print ultrasonic reading to the serial monitor. However, I wanted to store my data in a 2D array so that I could graph it as an elevation (or surface plot) to show the topography of my scanned area. After much trial an error, I learned how to use arrays, and then figured out how to use embedded for loops to take my data. Then I wrote a second custom function to print the array once I was done with an area. 

Taking data was another challenge. I started with a 5 by 5 array. However, one obstacle was not knowing when to move the sonar sensor to the next cell or to the next row. To address this, I decided to add indicator lights to my circuit (shown above). Each time the red LED blink, it signals that it has taken data for that position, and each time the green LED comes on, it signals that it's time to start on the next row. 

There are still many ways this project could be improved for more accuracy. I simply used a sliding drawer to move my sonar sensor, so the height was relatively constant, but the distances were basically estimated. You could get much fancier and use the motors or servos to move the sonar sensor in a VERY precise manner. However, that was beyond the scope of this project.

The two graphs below represent a couple of my test runs using a 10 by 10 grid to scan a basketball, and then a football. You are able to distinguish some characteristics (like that the basketball is more round-ish and larger than the football). Overall the resolution isn't great, but I was impressed with what I was able to accomplish, having never used the sonar sensor or arrays before!


Sonar Scan of Basketball and Football (units are in centimeters)

7. Reflection:

I really enjoyed the freedom to come up with our own challenges this week! I am internally very motivated by application -- I spend a lot of time teaching myself new things when they are immediately useful in solving a problem. Although there were several road blocks, I pushed through and found solutions.

8. Applications:

I would love to adapt this project to be included in some lessons with my middle schoolers. I could build on the activity where students poke a stick into a box to measure "depth" as a simulation for how to graph bathymetry readings and have them also graph their sonar readings for an area. Adding a guessing game component to it (i.e. what object is this? or where is the hidden treasure? etc.) could also be fun! I researched some examples of different 3D bathymetry maps that I could print on 3D printers so that students could identify real underwater structures, like the mid-Atlantic ridge or the Hawaiian archipelago. In the spirit of Mary Tharpe, I think this would be a great application for my middle school students!

Free bathymetry 3D models I found online:

Example of bathymetry:



Comments

Popular posts from this blog

Web 2.0: Continuing the Journey

Online Learning: Course Management Systems

Online Learning: Wielding Wiki's