Logomotionator provides a way for teams to organize and collect their ideas about strategy and scoring during the 2011 FIRST Robotics Competition season.
- Fabulous user interface design
- Track the scoring for the red and blue alliance
- Up to 5 tubes per peg will be counted (in case some are deflated)
- Record which teams were on the alliances, their minibot scores and penalties
- View your saved scores and email them
- Draw strategic plays on the game field in red and blue
- Easily access the usfirst.org website
The FIRST Robotics Competition is a fantastic way to get youth interested in Science, Technology, Engineering and Math. Check out one of the regional competitions in your area to see what the future holds.
Inspiration for the App came about by the temptation of an Apple eMate 300 (an iPad of 10 years ago, basically)! I took in some feature requests and just started to work away at it. Making the calculator algorithm was fun
All of the coding was straight forward. I must be getting really good at making Apps or something. Making the game field drawing stuff was probably the part I most enjoyed:
I also really enjoyed the email stuff too:
The only rough spot was on the saved scores view, because the “Remove button” is actually in a different section, I have to replace it with an invisible cell when removing everything because of the protective UITableView cell math.
Once all of the functionality was there I wanted to make something that would really capture the energy that the competitions have. I figured it would have to look snazzy, so I paid close attention to detail when styling the App. On the iPhone 4′s retina display, the graphics look beautiful.
This is what the background looks like, I had a lot of fun making it!
This is my most complete App ever (so far). I really like the finished product. I can’t wait until after the season is over to go through some of the code with the programming students. It would be a fun exercise to break down the calculator algorithm!
I hope you enjoy it. There’s some more screenshots on flickr. Go download Logomotionator now! It’s free!
FIRST®, FIRST® Robotics Competition, FRC®, FIRST® Tech Challenge, and FTC®, are registered trademarks of FIRST® (www.usfirst.org) which is not overseeing, involved with, or responsible for this activity, product, or service.
FRC stands for the FIRST Robotics Competition, and it is a robot competition for high school students to compete in. They have 6 weeks to model, design, build, program, wire, and media-ify and business-ify the robot! Afterwards, they go and compete in a regional competition! I am currently mentoring a Montreal high school team in programming- teaching them Java for the first time! Here were my thoughts about week 2!
During the week the students at the other school had their first experience with programming through Processing. Processing is a Java environment used to create interactive art projects. Since they all are “Photoshop gurus” already, this would be a fantastic way to introduce programming to them. We created a “sketch” where an ellipse was drawn. We then were able to move the ellipse around, and in the process learned about integers, operators, and the coordinate system.
This knowledge solidified some students to join the programming team for the big meeting on Saturday. We began by detailing the things we wanted to do today, and what goals we will need to achieve in the following weeks.
For this Saturday, we wanted to…
- Read from the encoders
- Analyze the default line sensing code, and try the line sensor
- Set up the wireless on the robot
We were able to achieve most of these, and learn even more about WPIlibJ in the process.
The lead veteran programmer of the team describes Java as a bittersweet change from LabView. Although Java is used more in real world computer science scenarios (client programs, university courses, Android apps), its vision processing is not as accessible as LabView. On top of that, there is the learning curve with learning a completely new way of writing, organizing, and displaying algorithms.
The three programmers got set up with the Netbeans distribution and the proper nbm files. We then dove head first into the code, and started with a simple program that would read an encoder, and display it on the screen. Once that worked, we added on to that and made the motor move.
Afterwards, we added a tick-tock algorithm that introduced the modulus operator to the programmers. This was designed to change the motor direction every five seconds. The three programmers grasped this algorithm and understood it fully after explanation.
A little bit of a design oversight, the cRio is such a fast processor, that it became stuck in the tick-tock quite often, as we were rounding the time from a double to an integer, and comparing it to a value of 5 seconds. Had this have been in milliseconds, there would not have been a problem. The veteran programmer suggested a “first pass” check, which fixed the problem.
After the lunch break, the veteran programmer was also able to make the camera display on the driver station, and control the servos with a joystick.
During that time, the other programmers took some time to play with Processing a bit more. They were able to setup the basic sketch template, and added text drawn to the screen with a customized font. We explored the nature of for loops by drawing the text multiple times inside of the loop. This was a great demonstration of iteration in action.
We almost had time to play with the light sensors, but the connections took quite a bit of time.
Nearing the end of the day, we were trying to get the wireless set up, the last item on our todo list. Although Chief Delphi was down for the entire time, we were somehow able to figure it out despite the number of road blocks. Hooray for wireless programming!
It was then time to head back home. We departed from week 2 feeling pretty confident about the capabilities that Java will provide us. Next week, our goals are to get some driving working (PID control, maybe), and also get the line sensors to work. Go programming team!
Are you mentoring any FIRST robotics teams? Are you a programming mentor too? What have you run into so far? Leave a comment below!
The start of a new year marks the start of a new season for the FIRST Robotics Competition (FRC). FRC is a robot competition for High School students. Each year there is a new game, where the students try to create a robot that will hopefully win. They’re given SIX weeks to create a 120 pound robot. Teams then travel to regionals to compete with other teams. The idea of this program is to get students excited about robotics, science, technology, etc.
Kickoff can be celebrated in numerous ways. FIRST Quebec teamed up with Bombardier to make this kickoff AMAZING. We had an extensive tour of the Bombardier facility, where we were able to see the insides of the best Winter Olympic torch ever, as well as how planes were made. It was amazing to see how small planes are part by part, but when you put them all together they become massive! They also had these HUGE CNC machines. So huge, you could CNC a house and live in it!
The students were really interested in everything as well as the mentors. There was just so much to learn and take in!
Another awesome were the two industrial robots that were doing some work together. It doesn’t seem complex at first, right? You have to account for the tiny inconsistencies of each robot, how the material is moving, and how each robot is moving. I would love to see the code for the dynamic kinematic control. Accounting for every single degree of freedom is crazy!
Here is some video footage that I took, to share the awesomeness:
Here’s Bombardier’s official footage:
Here’s a fellow mentor’s iMovie ’11 trailer:
What do you think about it!? Pretty amazing, right! The whole experience for the students was so much more valuable than watching the webcast for 4 hours. They were asking questions, and seeing that there were actually “pit-like” stations at each of the departments. Lots of tools.
The FIRST Quebec program is run by another program called Youth Fusion. It’s really cool. Here’s a video of the FIRST Quebec teams in action:
All in all, it was an amazing day. I have been mentoring FIRST for 3 years now, and this year is going to be a blast. I’m mentoring a group of programmers to program the robot in Java. It is great to have a group of students that are eager to learn programming!