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!
1) Project: This blog post follows my initial exploration of my Arduino Super Starter Kit as I attempt to complete the "blinking led" project. The goal is to use the Arduino IDE interface to write code for a blinking LED, build a circuit using my Arduino, breadboard, wires and LEDs, upload my code to my Arduino, and then explore different variations and possibilities in the realm of blinking LEDs. Video 1: Unpacking my Arduino Kit! 2) Code: Here is a screenshot of my annotated code for the blinking LED project. 3) Circuit Design: Here is a video showing the circuit I built using my Arduino and breadboard. Video 2: Circuit for Blinking LED Challenge 4) Electronic Diagram: Below is the electronic diagram from my design journal: 5) Video of Project: While not necessarily a "successful" implementation of this week's assigned project. I learned a lot about how to trouble shoot Arduino connections issues, which will hopefully save me time and headaches in the future ...
1. Project: In this week’s challenge, our goal was to learn how to use the color-changing RGB (red, green, blue) LED and play around with Arduino C coding to learn how to use For loops and Arrays. Then combine that new knowledge to create a project. 2. Code: The following code combines my experimentation with the potentiometer and my understanding of how the AnalogWrite function can work to control the color of my RGB LED. After briefly running through the range of colors, by LED blinks off. Then the color can be controlled by turning the potentiometer dial. 3. Circuit Design: For the following circuit design, the potentiometer functions as color selector. The PWM (pulse width modulation) digital output pins control the intensity of each color (red, green and blue) of my RGB LED. Video of Circuit for Potentiometer as Color Selector (0:49) 4. Electronic Diagram: The following electronic diagrams were taken from my design journal. For the following circuit design, the potentiometer funct...
This week I playtested technologies specifically designed to support learning Middle School science content. In doing so, I identified the following and discuss the affordances and drawbacks I see in each one: Gizmos from Explore Learning offers hundreds of interactive labs, simulations, design challenges and more for math and science topics from elementary through high school. One of my favorite virtual labs to do with my students is the Digestive System Gizmo . As the students explore each organ in the digestive tract, they can adjust variables to try to get stool with the right consistency. (Complete with sound effects when the consistency is off!!) While I applaud Ms. Frizzle's "Get messy!" pedagogy, I believe this lab works much better as a virtual simulation than an in-person investigation. Example 1: (Redefinition Level) Students use the Digestive System Gizmos simulation to conduct a virtual lab activity. Students are given a chance to explore and experiment b...
Comments
Post a Comment