Thursday, June 5, 2014

Last Required Post

Even thou the title of this blog suggests the end I will try to remember to post a video of my proposed autonomous next year when it is complete. I will also try to remember to post any updates on code that I write for next years robot.

I feel like I successfully completed my goal of learning how to program the robot.  Although I don't have any video of code that I wrote working on the robot I feel like I learned a lot and my second goal is close to being achieved.

Making my proposed autonomous is an off season project for my team that will hopefully work well and serve us well at our kick off events next year.  One thing that I probably should have posted when I discussed my goal change is a video of an autonomous modes from this years game
So here it is.  We are the robot in the red bumpers who did the one ball autonomous, team 33 the Killer Bees are also in the red bumpers they did a two ball autonomous.



Also the team who inspired me to change my goal is team 254 the Cheezy Poofs released their autonomous code to the world and I looked into it here http://www.chiefdelphi.com/forums/showthread.php?t=128639.

Tuesday, May 27, 2014

Project Fair and Progress

Progress on my updated goal is underway.  The reason that I am continuing this goal of Reprogramming the autonomous mode is so we can use it at any season kick off events that we go to.  Progress is coming along slower than I wold like but I am making progress.  I have come up with the basic structure of how this new autonomous mode will work.  The way our pick up system works is we have two wheals that we run to suck the ball into the robot, we typically run these until the ball is all the way in the robot.  However through accidental testing (not running the wheals long enough during a match) we have found that we can hold the ball in our wheals while we are driving around.  The way it would work is we start with a ball in our robot and a ball behind us.  When autonomous starts we would drop our pickup arms down and run the wheals long enough to carry the ball with us as we drive forward to shoot.  When we get to were we want to shoot we would shoot the ball in our robot then pick the other one up and shoot it.  The only issue that I could possibly see involves how our shooter works.  To put it simply we have a catapult that is tensioned using clock springs.  To shoot we have a cam arm that can only run in one direction.  A cam arm is made up of two parts and (put simply) we move ours with a motor.  There are two different sections of the arm one is connected to the motor and one is connected to the catapult, they are both connected together with a bearing that can only move in one direction.  When the arm moves passed the lowest position the catapult springs up because of the clock springs (no pun intended).  The limiting factor in this entire plan for autonomous is how fast the motor can move the arm back to the fire position.  Other than that my proposed autonomous will most likely work.  If you have any questions about what I just said pleas leave a comment down below.

Recently my class had a 20 time project fair where we presented our projects. Not there completion but the goal that we are trying to achieve.  Below is a picture of the event.  The event was opened to the general public and lots of people came.  We stood at tables and presented our project ideas with any progress that we had made thus far.  All around it was a great event and it was a lot of fun to see what other students were working on.


Sunday, May 11, 2014

Adjusting My Goal

To start off I would like to say that the 2014 FIRST championship was an incredible experience.  I was unable to attend any seminars but was able to talk to lots of teams about the way that they programmed their robot.  The other thought that I had was to adjust my goal.  My goal would still be to learn how to program the robot but instead of focusing on the human controlled portion of the match and on the autonomous portion of the match.

For those of you who are unfamiliar with this years game challenge there are two portions of the game.  You can see this years game animation here https://www.youtube.com/watch?v=oxp4dkMQ1Vo.  Each match starts with a 10 second autonomous mode in which the robots are running on pre-programmed instructions.  The next 2 minutes consists of humans driving the robots.  My new focus would be on the 10 second autonomous mode. At worlds other teams had lots of really cool autonomous modes.  There were several teams that used kinect systems to control there robot in autonomous.  However most teams just lode the code and let it run, which is what we do.  Our current autonomous mode is just a one ball autonomous.  Or we can only shoot one ball through pre-programmed instructions at the beginning of the match.  Several of the teams that did well had a two ball autonomous, some of them even had a three ball autonomous.  My new proposed goal is to program a working two ball autonomous that we can use at FRC kick off events next fall. I would greatly appreciate any feed back that you may have on this new goal.

Friday, April 18, 2014

Starting Up

To answer some of your questions my goal for this project is to learn how to program the robot and write code that actually works on  this years robot.  After learning this skill I do intend to try to put my knowledge to use and program future robots that I will help build.

I learned somethings in the last week about how robots are programmed, the most vital to starting this project is there are three languages I could potentially program in. The first is LabVIEW (Laboratory Virtual Engineering Workbench), it is developed by National Instruments and several FIRST teams that I have talked to and played with use this software.  The next option is Java, which is a very common language for programming computer games.  Again FIRST teams that I have talked to program in this language.  Last there is C++, our team programs in this language.  C++ is also the language that I will be learning to program the robot in.  This is for several reasons, the first being I am currently taking a class on C++ in school and I did not want to throw learning a new programming language on top of the already enormous task of learning how to program a robot.  The other reason is when our competition season ends we are going to start teaching next years programmers how to program the robot and they will be doing it in C++.  I plan on attending these programming meetings on top of teaching my self out side of robotics.  The last reason for my choice for choosing C++ is I can easily get the development software from the programmers on my team.

Next weekend I will have an opportunity to attend several workshops and seminars on how to program a robot during the 2014 FIRST championship. I will hopefully have lots to talk about when I get back about how to program a robot.

Friday, March 28, 2014

First Blog Ever

This Blog will be for my 20 Time project.  Before I tell you what the project is you will need some background.  There is an organization called FIRST that is designed to further the knowledge of STEM.  For those of you who don't know STEM stands for Science, Technology, Engineering, and Mathematics, also for those of you who don't know FIRST stands for, For Inspiration and Recognition of Science and Technology.  I am on a FIRST robotics team.  In FIRST robotics they give us a new game to complete every year and every year we have to build a robot from scratch that completes this task.  I mainly work on the mechanical side of the robot but would like to learn how to program the robot that I have a hand in building.  My goal is to learn how to program the robot.

 From what I have been told this will not be an easy task. Programming a robot is much more complicated then any program that you make in programming class.  This week I will look at what software and what programming skills that I need to complete this goal.

While I am attempting this I will be consulting several of my team mentors and the programmers on my team for advise and mentoring on how you program a robot.