MattGreganBlog
Finally, the time has come! The epic conclusion to our micro mouse tale! Greganog Hall! I can’t believe it’s all over, after a whole year of working on Clyde, the assessment is done and we can put down our tools, log off our computers and admire our handy work. The trip to Greganog was a blast, with plenty of ups and downs. The bus being two hours late to get us there was not a good start, especially as I was eager to get there and get to work putting the final touches on Clyde. But once the bus did turn up it got us to our destination safe and sound. After checking into our rooms and dumping our bags, we were treated to the first of many very tasty meals, and then it was down to work! Boy did I not know what was coming to me. We had a fairly easy beginning, until I realised the laptop that I had bought with me had no code editing software of any kind, which meant I would have to edit all code on notepad without the benefit of debugging, which was somewhat unsettling but I came to terms with it and we continued to move on at a swift pace. We had gone to Greganog with set goals. Ben and Meg would work on presentation and documentation, while me, Soren and Tom worked on any tweaking and testing that would be required. I also had a set of coding goals in my mind. First of all was to finish combat, and then move onto tweaking, especially with the line following improvement code, which had been plaguing me for weeks. So within an hour or so I had the combat code adjusted, and some tests with the team had confirmed that it was ready to go! Or so we thought….. more on that later. So, on I went to the line following code. As mentioned in previous blogs I had been trying to smooth out the line following code for weeks on end, with no success. However, I felt I was getting closer and closer to the solution so continued to work on it. This had me tearing my hair out for many hours and took up most of the afternoon. When it got into the evening the rest of my team had gone off elsewhere to complete other tasks, and I decided to test Clyde’s new code by myself. I armed myself with pen and paper and took Clyde to the *RAISED THREE FEET OFF THE FLOOR* test track, and as he was running around the circle my new code as it had so many times before failed. However, unlike the many times before I did not have a team of catchers around the table, and with my hands full and on the other side of the table I was not able to make it in time. Clyde crashed to the floor, and all the supports holding his modules together snapped. To say my heart dropped was an understatement. I picked up his battered and broken body, ran it back to our work station and tried the power switch. No life. Nothing. At all. I went and retrieved Soren to tell him what had happened and to help me try and save our project. Luckily after a few tense minutes, some replaced supports and switches returned to the on positions Clyde’s eyes shone bright again and he was back to perfect working order. This did not deter me from my testing however I did assemble a team of catchers from then on every time Clyde went anywhere near a table. Testing continued until it came to about 1:15 – 1:30, and the team assembled saying they wanted to go to bed. I too was getting tired so I set out a final set of tests that we could run just in case we had missed something to make sure we were all ready for the final challenges the next day. We were to test all the modes functions correctly and were ready to go! Sounds simple enough. The first test was obstacle avoidance. This test ran smoothly enough, the IR alignment was checked and everything was fine and we were happy with it. The next test was line following. Sadly, even after many many hours of work on this mode, the second iteration was just not up to standard. No matter what crazy tricks I tried to pull it was just not possible, with my skills anyway, to make the mode any better with two sensors. So the group voted to return to the original code. I begrudgingly accepted this and just came to terms with the fact that despite all my work the line following would not be the best (or would it? Again more on that later). And onto the final test, combat. Again we expected this test to run smoothly as this mode was completed to our knowledge. However, for this test we decided we would battle another couple of mice to test in the real situation that our code would hold up. Safe to say it didn’t, in all the practice fights, Clyde would be pushed into a corner and when his special edge mode activated he would then drive straight out of the arena! We had thought this bug unlikely but in practice it was a very frequent occurrence. So, it is now 1:45am or so, and we have a broken combat mode. The team then voted reluctantly that we would have to fix this problem. So I rushed back to the laptop and started bashing out code. Several iterations later it came to 3:00am, and Clyde would no longer fight. He would just sit in the ring and do nothing! We all decided bed was needed, and I said I would be up early in the morning to fix it. And early I was. After getting into bed at 3:30, 4 hours 15 minutes sleep later I was out of bed and dressed ready for breakfast. As soon as I was finished eating I was back into the main hall and coding. After coding so tired the night before I decided what I had written was probably useless, so I scrapped it and started with the previous buggy version and worked from there. Having had some sleep, I made much better progress and by the time the rest of the team had joined me in the hall I had a new working version with the bug fixed and some other safety measures in place just in case. So with Clyde ready to go we charged the batteries and waited for the final assessments. After lots of watching and waiting for what felt like forever, and some tea and cakes, our first test was upon us. Obstacle Avoidance. This was a nice first test I thought being one of our better modes. The test went very smoothly with Clyde avoiding nearly everything with only IR and using his bumpers only on occasion. The judges seemed impressed and were also interested by all the 3D printer parts of our mouse. The second test which came in rapid succession was combat seeding. Some of Clyde’s issues like his love for corners came up in this test, but his good features also came through meaning we were ended up being seeded 3rd. The third test was our technical inspection which I would say our team knocked out the park! Everyone chipped in with good explanations of Clyde’s various components. And we had an ample number of special features to tell the judges about. We also managed to answer all of those questions which was very reassuring. The comment was also made that we were the tightest nit team that had come in to be judged, referring to everything as ‘we did’ this not I did and things like that. Finally came line following. This test I was not sure about seeing as were using what I had counted as non satisfactory code. The test did go well however and the team explained in depth about our method and calibration, and about the mode that I had worked on and its improvements but why it was not able to be show cased in them. The super reliable mode which very very rarely failed of course managed to fail once in this test which we all thought was a shame but it was unlucky and there was nothing we could do about it, so overall I was very happy with the outcome of this test and I think the team were too. Our final test for the day was the presentation and again we SMASHED it. So much credit has to be given to Ben on this for making such an amazing presentation, it was so good! But also credit to my team as they all did an amazing job with the presentation. In between coding the night before we had fit in two or so hours of presentation and practice, and had done some practice while waiting for the tests to start so we all knew what we had to do. We carried it out to near perfection, one of the only stumbling blocks being me and someone else being un nerved by the judge’s reaction to the ethics part of the presentation, with heads being shaken etc. We did however find out later on that this was due to the hard hitting nature of our ethical issues and nothing to do with the quality of our presentation which is a relief. We were also able to answer all the questions apart from the final one about cost very well. We also answered the questions well as a team as much as possible. We got several very good peer reviews on our presentation and good feedback from the judges, so again hats off to Ben and Meg for putting the work in to make that happen! And finally the day is done and we are on to combat! The matches themselves were a blur and it would take forever to go into too much detail, however we left the group staged having lost only 1 round in 24 to a judge’s decision, and we had the best record of either league so we were feeling good, but very nervous also. When the finals came around we were buzzing, however I was very very nervous. Not sure why but it was really getting to me! We had a convincing with in the semi-finals against delta putting us through to the final 2. The final was a close fought match, but we took the game straight 3-0, meaning we only lost 1 round in the whole tournament. We were so happy that we had done so well in fighting after putting so much time into the code the night and morning before and it was great to see Clyde pull through for the win! So the award ceremonies begun and Team Echo were awarded the main trophy and our own trophies each to take home. I was also asked to give a speech, which was terrible but I was a little overwhelmed and didn’t really know what to say, which I imagine you can tell from this blog doesn’t happen very often. We had only just sat down when we were called up to accept the award for the best…. Line following? None of the team were expecting this after we had resorted to the original code, and I was somewhat amazed at how much time I had wasted trying to improve it. Of course there were no complaints and we were all very happy have won another one of the categories. And after both these wins I was very happy to see the code I had put so much time into had pulled through again to make Clyde the best of the bunch in two categories. So after a night of celebrations a tired day of guest lecturers and returning home, it was all done and Micro mouse was over. I have to say at the start of this project I did not think I would enjoy it as much as I have, and it became more of a labour of love working on Clyde, rather than painful assignment work. And I was genuinely sad to see him going in his box for the final time and thinking we would not be working on him anymore. However, it is nice seeing him displayed in labs as a reminder of our triumphs and what our work is capable of. Doing this assignment has also given me a passion for coding and micro controllers, especially after seeing my code do so well in this assignment. So thanks you to the rest of Team Echo for being such a great team to manage, and I think we are all much better friends now. Thanks to my team for all their great working, great laughs, and the support when coding was being maddening. And thanks to Dr Davies, Mr Moody, Mr Gareth, Augustine and everyone who helped us to make Clyde as great as he is. These people spent a lot of time, pulled personal favours for us and all sorts to help us out and I thank them for it. So that’s it, Micro mouse 2016 done. It’s been a blast (who thought that would ever come out of my mouth about uni work), now onto exams and far less fun things. Team Echo Matt, out!










