`This unit was really fast-paced, unlike unit one, or even last term in the intro to programming the things we learned didn’t require us to pick it up as quickly. This unit, especially with the shaft encoders was very fast paced, we learned it, and applied it almost instantly. Though it was shaft encoders are new to us it did prove useful in this project. For this project we had to create code to that would allow the robot to complete a course set up in the robotics room. We must go along the white tape, and if by chance the robot went off course and wasn’t in the region of the tape it would DQ. Though this task may sound easy and simple it was quite the opposite. So I had two partners in this projects because I had a track meet, so my original partner had to partner up with someone else while I was running. That being said, both of my partners identified challenges in the course, one being the turn degrees, meaning when the robot would stop and turn. The course wasn’t linear so each turn would have a different degree in which the robot needed to turn. The second problem we identified was the actual, we weren’t sure whether to code in shaft encoders or to go for a very basic route. The third problem was where to start the robot. And the last problem we faced was the robot going off course. The course where the robot had to go through was not straight so nine out of ten times the car would go off course. This meant the code to straighten the robot would not work. This proved a definite issue because it meant we kept going off course and having to DQ. The reason why turning the robot was very difficult was because each turn needed to turn in a different degree non was the same and quite a few of the turns were sharp so it this proved to be very annoying more than difficult. This goes same with how far the robot had to go. This was part of the reason which direction to code the robot was hard, both my partner and I weren’t very familiar with shaft encoders but we both really wanted to use it. So at the beginning of the project for maybe a little less than two class periods we were coding in shaft encoders, however like I said we weren’t too familiar with this way of coding so it took a long time. During the second class period we changed and choose to approach it much more basic, and then once we were able to make sense of the course we would come back coding in shaft encoders. A problem that I didn’t mention was an external problem in the form of the scarce amounts of robots. We would code the robot and not have a robot to test our code in. So to tackle the problem, we would test our code in virtual worlds where we were looking in the robot went along the line of the course. Though this was a solution it was not a permanent one, a lot of the time we had trouble with the measurements. The course in virtual worlds is smaller than the actual one so we weren’t able to see the whole function and most of the time we only saw half of it or a third of the function we had coded. I would in the future like to see a course where there is a big space for the robot to roam freely. I would also like the course to have barriers so the robot would not drop out. Maybe there is already a course like this, I wasn’t looking too closely, however, the few layouts I did use were in a rectangle shape so when the robot turned it would always fall out because it is too narrow. Another external problem I had with the robot is that it didn’t have a battery. The was also a lack of battery packs for the robot, and I guess our class was right before the other robotics class so when we plugged of the robot in it didn’t move because there wasn’t any battery. When we went to change the battery pack, we had the same problem again. So we had to share the robot with another group, where we spent more time re-hooking the robot than the actual testing phase. We decided to use the robot wirelessly because of the face a problem where the robot for some reason would always roll over the A to A cable. And also it proved clumsy having to walk around attached to the robot. I wasn’t able to complete the challenge, because I had to miss a few valuable classes to attend other things. I believe we had around five to six classes to work on this project, and I had to miss two of them due to a track event where we were running against other international schools. This was the issfhk finals so this would be the last run of our league. And the other time I missed class was due to a really bad cold, where I felt dizzy and had a very high fever. These classes were sadly the third last class and the last class of the project. I do however believe my partner was able to complete the course. This project was quite similar to the first unit where we completed courses in the virtual world except a lot harder. This was a nice way to look back at our learning, even though we were doing the same thing we had done in the first unit we had learned new things to help us complete the task, such as shaft encoders, being able to straighten the robot, functions such as while loops, void, if statement and finally having a better understanding of how virtual worlds works. This was a very good representation of what we learned. What I learned from this project is that I wasted too much time by not thinking about what to do. I should have spent time thinking about how I was going to approach the project instead of running into the project head first. And the last thing I learned which is along the line of planning it out is to not underestimate the challenge. If I had planned it out I wouldn’t have faced this problem, but I thought the challenge was quite easy I would have quite a long time to finish it but evidently, I didn’t. Unit 2 has to do a lot with the fundamentals, so this means a lot of functions. I am eager for the next project because I know that I will do a lot better knowing what I know now.
Course Track
Code: