Python is an interpreted, object-oriented, high-level programming language with dynamic semantics. Its high-level built in data structures, combined with dynamic typing and dynamic binding, make it very attractive for Rapid Application Development, as well as for use as a scripting or glue language to connect existing components together. Python's simple, easy to learn syntax emphasizes readability and therefore reduces the cost of program maintenance. Python supports modules and packages, which encourages program modularity and code reuse. The Python interpreter and the extensive standard library are available in source or binary form without charge for all major platforms, and can be freely distributed.
The goal of this challenge is to use a combination of different maneuvers (at least 4) learned in the first five flights. In my code, the maneuvers that I implemented were going forward/backward, up/down, turning counter-clockwise, and doing multiple takeoffs.
The goal of this challenge is to write code for the drone to take off, go through one hoop, turn, go through a second hoop, and land in a fourth hoop. The main commands for making this work was drone.down and drone.cw. The main problem from this challenge was it was hard to estimate how far down the drone must go from initial takeoff, which I ended up using "40".
In this challenge, commands such as drone.up(), drown.down(), and drone.back() were used to get the drone to go through and then back over the same hoop. As noted in this video, the drone ended up going very far beyond what it was supposed to forward which caused it to have a hard time getting back to the hoop; this was most likely a fluke with connection as this error never occurred prior.
In this challenge, an octagon was to be created in a "dual" with another classmate. Although my code was written to work with a partner, I never ended up testing it with them (they got sick :( ). For loops were used to conserve time and have the drone just go forward and turn in a 45 degree angle to create an octagon with 8 sides.
This challenge used an input command in order to create a string that would have the drone run a loop for the specified amount of sides the user put, and a mathematical equation to create the angles based on the notion that all polygon angles add to 360 (while using clockwise motion so different for a triangle).
This challenge involved using the drone.curve() command to create a horizontal, vertical, and diagonal circular path for the drone to travel. This was one of the hardest challenges as understanding the plane of for (x1, y1, z1, x2, y2, z2, t) was difficult to understand at first. After understanding how the coordinates work, the code was easy to create, but sometimes the drone didn't work exactly as it should (sometimes it would stop mid circle). This was fortunately a successful run of the code.
The goal of this challenge was to have the drone go through two loops diagonally and land in a hoop. However, I did not record my code under these parameters because there was limited time + space. Here I implemented drone.go() and used its x, y, and z axis in lines.
In this challenge, the drone asks for the user's input regarding what shape they would want, done with "if" "else" loops, and the drone would then use this to create these shapes. Drone.go() was implemented to make the 3-, 4-, and 5- sided polygons.
This was a student created challenge. The goal was to create a path for the drone using just flips and going in a zig-zag to mimic walking. This used the drone.flip command using "l" and "r" to move left to right. The drone was slightly drifting, and the battery was dying, so the drone did not do exactly as wanted but the code still worked.