The 8th graders in the Academy of Aerospace and Engineering have just completed a six-week project where they learned to code and fly small, indoor quad-rotor helicopters, or “drones.” These drones are essentially flying robots. They are Codrones by Robolink, a startup company featuring products for STEM (science, technology, engineering, math) learning. I started using them with students last year, and we spent about one month with them, but this year I wanted to extend this time to give the students more opportunity and challenge–this ended up working out very well. The Codrone comes with a kit to make a small controller which can be used to fly the Codrone manually, but mainly features an Arduino device to allow the user to code the drone, hence the name, Codrone. Students first go to the Robolink website for tutorials on the Codrone and the Arduino programming. Then they download and use an Arduino coding platform on a laptop, then upload the code to the Arduino device and into the Codrone. Students learned to code the Codrone to fly on a set path.
I gave the 8th graders a culminating challenge to fly the Codrone around an obstacle to land on a small platform–this setup simulated a real-world scenario where an astronaut was hiking in a remote area to simulate conditions on Mars, but slipped and fell into a ravine from which a helicopter could not rescue him. A hiking rescue team was dispatched, but would take several hours to get to him. In the meantime, he was suffering from the fall and needed emergency medical supplies. The Codrone was the delivery vehicle for these emergency supplies. One crew managed to code their drone to fly and land within six inches, or about one simulated body length, from the wounded astronaut–they are featured in the photo in this post. Other crews did almost as well. Overall, the students found the scenario fun and challenging. Here are some comments the students had in their reflection after we concluded this project:
Overall I believe that working with the Codrone’s was good because I learned a lot. My crew especially learned a lot about teamwork and persistence. My crew had a lot of issues with code and having persistence and working as a team really helped us…We realized coding is not easy at all, and you have to code exactly what you want the drone to do because otherwise it will not work. My favorite part of the project was probably just when we actually got something done. Even if it was the smallest thing it made my group proud since we had a lot of issues. We had a lot of struggles but it was just great when we could actually get something done.
Overall I learned a lot from participating in CoDrone. I learned not only about coding but also about teamwork, and how helpful it can be to have multiple people looking at the same code when trying to figure it out. Before beginning this project, I had very little knowledge of how to code, what coding was and what kinds of commands/variables could be used while coding. After we finished the final fly-off challenge though, i have a much clearer understanding of coding.
I learned a lot from the CoDrone experience. At first, it was hard to even get it off the ground. But we got through that problem in the first couple days. Our next goal was to get it turning and we were able to get it to do what we wanted. Lastly, we were challenged with doing the obstacle course. Our closest distance was 1.5 ft away from the target. I mainly learned that getting frustrated to easily never helps anything. We worked better when we were all calm and focused. My favorite part of this process was actually getting close to the target. I know that’s probably everyone’s favorite part but it was really exciting.
I learned a lot about coding while doing Co-Drone. I learned about how coding works, and how to understand what each line of code does. I think this EDP took a lot of teamwork and persistence since it was so challenging. I think that it was really important to understand that coding a machine to do something is very difficult because it is almost like learning another language (Code). Although our crew struggled with a lot doing this, in the end, we did really good. It just took a little time to get the angle and distance right but with a lot of trials we were able to get it about 6 inches away.
CoDrone was very useful and helped me to learn a lot about coding. I was also very happy with the turnout of the EDP. This EDP allowed me to be able to see how an actual coder might work. Whenever I hear about coding, the fact that the coder must be very accurate with their code would always come up. I found this to be true as an extra space or a missing semi colon could easily change the outcome of the situation. I also really liked how there was a final challenge and that the situation that it was based upon a real life situation. Overall I really liked this challenge and i would participate in this again.
When coding, tinkering, testing, and experiment with CoDones, I was able to learn information about coding that I would not be able to learn otherwise. To start, I had very little experience with any type of coding. Since I was able to gain experience with C++, I have an entirely new view on it. Most importantly, I learned that coding is essentially just logic. If you tell the drone to do something, it will do it, but it can’t tell the difference between ‘good’ and ‘bad’ code. As for my favorite part, I liked the final fly-off. It was great to see all of what has been worked on for 2 months culminate together for a single flight. With improvements, there could be specific class periods dedicated to specific things, like actually learning to code or how to repair the drone, but most of it should be structured how it was already done. After this experience, I can now say that I done something few other people have.