Saturday, December 20, 2008

Facebook Group!

I've just established a Facebook group for anyone who Facebooks. Please join it for updates, as well as the opportunity to ask and answer questions! We'd like to gather a small community that can learn from our programmers and engineers, and offer and receive advice.

Have a happy holiday!

--gavin

Tuesday, December 16, 2008

Photos from Scrimmage

Victory photos!
Our truly makeshift-looking (but fully functional) robot!

From left to right: Noah, Alex, Eric, Winter and Zaq

PS: We also took a bunch of video footage, and hope that we can put it on Youtube sometime soon!

Monday, December 15, 2008

Snow Day Showdown

Recently we competed at the Snow Day Showdown scrimmage in Heightstown, NJ. We were hugely successful and went undefeated in every match we played.  In the final match however, our code became corrupted and forced us to step aside for the final match. While we were not awarded as we would have otherwise been, there was not one team who deemed us unworthy of the award.

Congrats Polygnomes!

:EW

Snow Day Showdown II

At 6:15 in the morning the Green Meadow Polygnomes set out from home base to head two hours south to Hightstown, New Jersey. Despite the tired faces, we were all optimistic about the competition. We asked ourselves many questions, including whether the robot would even run or not. We arrived at around 7:45, and unloaded our "mustard bus" which is a mustard color (shocker!). At around 8:00 we had signed in and set up the pits, and were ready to go to mechanical inspection. Despite a questionable size (18"...just ) and no flagpole, we passed the inspection and we headed to software inspection. Software inspection didn't go according to plan, seeing as we didn't have "enabled" and "disabled" worked in to the program. After a quick talk with Steve Rhodes, the programming wizard, we passed the software inspection. Upon passing inspection, we tested all of our programs and found out that our autonomous program didn't work. Another visit from Steve fixed that.

The opening ceremony was short and to the point, explaining the rules of the game and stressing gracious professionalism. Since our robot wasn't in the first match, we utilized the time to view the match. Zaq, Noah and I got ready to compete in the second match since Zaq and I were driving and Noah was the coach. I was a little nervous, but the excitement was far too great for it to be of any effect. The first 30 seconds of autonomous went great, and we successfully knocked one bin of pucks to the ground. The first operator control went great as well, and we successfully scored three pucks into the triangle. Our first match ended in victory!

The rest of the matches went similarly and all ended in victory, much to our satisfaction. We had many people comment on our robot (a few on the gnome) and we gained many fans. We also had a bye in the first round of the finals because there were only six teams and we were in first place. The second round of the finals was great, for the first match. Upon starting the second match, our robot wouldn't move, and we suspected the field because it had happened to another team as well, four times. After about thirty minutes of attempted repair, we graciously stepped aside to let the second seed team take our place as we made repairs. We ended up in second place, but we were all proud of our performance and besides, we had won the "Think!" award for the best engineering notebook thanks to Emma's handwriting and neatness and Noah's organization sheets. All and all, the competition was a huge success!!!

Monday, November 3, 2008

A quick update

I apologize for not updating any readers recently on our progress. However, we are going strong with the robotics kit, and have a design that we are attempting to use to pick up the hockey pucks and score them on the highest goal. We're having slight problems with fitting the design in the 18" cube, but I think we will arrive upon a working design soon.

I have been working on a program to keep the robot in one direction at all times with the compass sensor, and we are still assembling a proper drivetrain, while figuring out a good way to use our plastic.

We have a great set of teammates this year. We even have a side project with some 8th graders, working with the challenge that the Vex kit makers put out in response to FIRST abandoning them. Since we have our extra Vex parts and some motivated students, why not? We've adopted a second teacher, Mr. Henderson, the Biology and Math teacher, who guides the Vex group. They've made great headway over the past few weeks, with the help of Emma and Alex as mentors.

I'm very glad to see that many of the team members are interested in programming and willing to try it out. It would be sad if the programming aspect died out after I leave the school, but I don't think that will happen, since now we have a lot of enthusiasm for coding that was a bit lacking last year.

Anyway, even if it seems to our team like we aren't making too much progress, I think we are gaining knowledge and finding ideas, and will end up with a working design relatively soon. At least we have a method that we are pretty sure will work.

That's all for now! I hope to show some videos of our design as soon as we finish building it! 

--gavin

The PolyGnomes Last Year


This is a video showing our progress over the last year and our achievements, made by Noah Kaplan (our former pit crew chief and now part-time robotics team member). Great job! :)

Meet the Team: Eric

Name: Eric W.
Specialty: Programming
Joined: 2008-2009 Year

Bio: Hi. I'm currently second in command on the programming front of our team, Gavin being first. Gavin, however, is a senior and so I need to learn as much as I can from him before he graduates.

:EW

Sunday, September 28, 2008

Success! Our first robot program works!

On Wednesday we had another robotics meeting, and were again quite productive. We discussed more designs and strategies and managed to run a program that controlled the chassis and 4 motors of the robot (using RobotC)!

[Since the meeting I have been trying to get a program written that uses the compass to keep the robot in the same direction.]

The motors are very powerful, but we get a message on the NXT controller that the batteries are low, when they obviously aren't (they run seemingly forever on one sliver of battery according to the meter).

I was personally excited about the new opportunity to use polycarbonate to aid in the design and aesthetics. Take a look at this video:



I hope we can use this too, though I wonder where we might get a heat gun.

Tuesday, September 23, 2008

A Constructive Meeting!

The PolyGnomes had an excellent meeting on Monday, and plan another on Wednesday (our new schedule is Mon/Wed).

We got some ideas about the basic design we could use, and discussed various strategies for our robot. We have a nice crisp engineering notebook with our name engraved upon it neatly which will prove quite useful.

We also took out the parts of our new robotics kit and put together a basic chassis that may or may not be the final robot's chassis. We haven't yet managed to hook the motors up to a computer or power source yet, but will most likely on Wednesday.





Eric and I also installed and began to get used to RobotC, which seems like a very powerful language that we may use for the robot's code (NXT-G is too buggy for my taste). It will be refreshing to have some neat code that is much more malleable than the stuff we've been using so far. Using NXT-G or EasyC is like LEGOs, it's fun and structured. But using text-based coding is more like clay, which you need to understand to work, but once you do gives you easy-to-make, elegant results. I think I'll dive into making the core robot code soon :).

Anyway, we'll probably update the blog with more technical stuff, using the notes we took on that meeting.

Saturday, September 13, 2008

New Game Released!

Well, it's out! The game this year will be challenging but very fun. It involves hockey pucks this time instead of rings. Take a look at the video (I uploaded it to youtube, but it is NOT my video. The orignals are here: http://www.usfirst.org/community/ftc/content.aspx?id=962

Meanwhile, we will begin to formulate the optimal strategy to get the most points--before designing the actual robot. It also looks like we will be able to get some CAD software to help with designing. :) I also hope that some parents/students of the team can start building the special parts described in the video so we can test our robot well (they did an excellent job last year!).

PS: in terms of meetings, we haven't had a true "meeting" yet, since we're still organizing the best days for everyone to be able to come. As soon as we start the meetings, expect more posts from all our contributors.

Sunday, September 7, 2008

Line Follower (w/ video)

Here's a quick video of the line follower I put together to try out the NXT-G code:



PS: You may want to subscribe on youtube to this username :)

Wednesday, September 3, 2008

Goodbye Vex Controller, hello Mindstorms!

Today I had a chance to test out the Mindstorms that Mr. Madsen (our teacher/coach) had bought for us to try out before the full FTC kit arrives. It's a amazing improvement!

First of all, the controller has a screen so you can choose the program you wish to run right from there (with the old controller we had to preprogram it with special homemade switches). It also has a bunch of demos to try out the different sensors and get a feel of their range.

The ultrasonic sensor (a sensor to record the distance an object is from the robot) seems to capture differences up to about 2 meters before maxing out. You can sort of play the theremin with it, holding a piece of paper in front of it and waving it closer and farther away (the output in the demo program is sound/pitch).

The light sensor is also neat, with two modes, reflected light and ambient light (the difference is the reflected mode shines a beam out to bounce off objects, while the ambient mode simply captures the light coming into the sensor). I started work on a line follower simply based on this sensor (though it is not as exact as, say, a color sensor might be)--see below.

This basic kit also comes with a microphone sensor that detects the decibels (blowing into it also triggers it) and the demo responds by moving a motor. Finally, the standard pushbutton sensor is also present.

In terms of software, I got to try out the NXTG platform for coding. It's a very simple way of laying out the code, but I somehow find it more clunky than coding by hand. It's something like the difference between the command line and user interfaces--it's just faster to type in a command than to set a bunch of options manually. On the other hand, in terms of learning it is pretty simple. It will probably be an excellent way for me to get the team members who wish to program a head start instead of diving into text code.

I was able to code a simple program that kept the robot from falling off a table, using the ultrasonic sensor. The program simply checks the distance to the floor/table, and drives forward until the distance is more than 3 inches. Then, it stops, reverses, turns, and loops back to the front of the program.

Another really neat part about the robot is the output options. Our old robot could only display terminal output (through a "PRINT" command) when the robot was plugged into the computer, the software was downloaded, and the program was running. With the new kit, I was able to have it display an icon of a street "WALK" sign when it was running, then turning arrows when it was turning. But that doesn't mean it's too simple to display more than images. It can display any value you wish anywhere on the screen, at any time. In addition, sounds are supported, including many humorous recordings of various words and phrases like "Alert" and "You're good!" In the future, when we have the controller, it will be able to output through bluetooth as well (though I don't know much about that).

The program also detects if the robot is connected and displays the various values in real time in a box in the corner--a good way to figure out the optimal defaults to use.

Speaking of programming, the old robot took 40 seconds or more to download code, no matter the complexity. It also only supported one program at a time. Want to change one value? Wait another 40 seconds just to find it doesn't work. But with the new kit, you hit the "play" button in the program, wait for it to compile (2 seconds), it downloads (1.5 seconds) and the robot beeps and begins running the new code. I like that!

In any case, this new kit is already exceeding my expectations, which were very high already. My only gripe would be the flimsiness of the parts, but this is just a temporary problem because the real kit uses metal parts instead of the wiggly LEGO parts that come with this kit.

PS: I spoke with Mr. Madsen and he said the metal parts were very expensive. I hope my plan to design first, build later will help us stop wasting metal like we did last year.

PPS: I got a Wacom tablet today. Perhaps I'll be able to use it to draw out design ideas (I mainly got it for my senior project).

Thursday, August 28, 2008

What do the PolyGnomes do?

Last year's robot after its win at a scrimmage (this was not the final design)

As the chosen 'leader' of our team I thought it might be helpful to explain what we're doing as part of our robotics team.

The PolyGnomes participate in the First Tech Challenge, a competition that involves building a robot for a special game that changes every year. The games are announced in September, and the teams all scurry to build for the first competitions in fall and winter.

Last year's game had 4 teams per match. Two alliances, one red, one blue, of two teams each, compete against each other to score ring-shaped scoring objects either on flat, hexagonal, movable goals, on posts attached to these goals, or on square areas of the playing field. Depending on the scoring method, various amounts points are awarded (more for the posts, and less for the floor goals).

The first 20 seconds of each match consisted of an autonomous, code-controlled mode where the team could not communicate or control the robot with a radio controller. Some teams could not write code for this, and their robot would stay in one place during that time.

After the autonomous mode, the 2-minute-long radio-controlled mode begins (allowing autonomous functions as well if the programmers wish). Using large clunky RC controllers, each team would attempt to score as many rings as possible until the match ended.

Take a look at this video for a better description:


Once the points were tallied up, the alliance that won would get one Ranking point. The interesting part, though, is the teams in that alliance would also get Qualifying points, a measure of how many points the opposing team had. In other words, the closer the game, the better the rank in the competition.

We were lucky to do very in our competitions, considering the fact that it was our first year.

However, for this year's game we're going to be able to use more advanced tools, since the FTC (First Tech Challenge) is switching to the Mindstorm kit from the Vex kit. As the sole coder for last year (I'm getting some help this year), I'm very excited about being able to use a compass, color sensor, accelerometer, and tons of other tools for our kit.

In addition, I have many ideas for organizing our team. For instance, our team journal (a mandatory log to have for the competition) last year did not cover many of the most vital changes we made to the robot, and it was not thorough (To no fault of the journal keeper!). If we can rotate jobs as notetakers and write the entries the week after we can avoid problems such as the notetaker leaving before the rest of the team does. Drafts of each entry would also help neaten the journal up, and drawings of each idea and prototype, along with photos pasted in would help make it something worth keeping. I am hoping to put at least some of our entries right here in the blog so that you, the readers, can participate in our process as well.

Our design process needs some work too. Time and time again, we would think of an idea, assume it would work, and then find that it does not work at all--after spending a week building it! My goal is to have all ideas worked out precisely on paper (or a 3d modeler) before touching the metal! Sure, a mini prototype is good, but only if the paper design really seems to work after it is drawn to scale.

Another thing I've found is once we make the fundamental design (such as an arm) it is hard to change to anything else. In order to have the best design, we should think of the best plan of action first, then think of the best design to fit that plan, and then, finally, begin work on building the prototype.

I think if we stick to these goals we will have time to design the best robot to conquer this year's game. Look forward to our first journal entries in september!

Wednesday, August 27, 2008

Welcome

This blog is intended as a journal for the development of the Green Meadow PolyGnomes robotics team's robots. We participate in the FIRST Tech Challenge, and plan to document our design and building process for this year much better than last year. Expect interviews, weekly robotics journal posts, pictures, drawings and videos, as well as tips for other teams and helpful advice.

This blog may not get many posts quite yet, but expect it to begin really functioning this September, when the team gets together again to start designing the new robot.

Thanks for joining us in our exciting design process!