Articles by author:

Articles by author:

    Let us Introduce Ourselves...

    Season Kickoff

    Lin Rogers


    Hello, I am Lin Rogers, and I have been a part of Iron Reign since 7th grade, about 4 years. Robotics has provided me with a focus for my education at SEM, so I know that what I'm learning matters.

    Jayesh Sharma


    Hello my name is Jayesh Sharma, and I have been part of Iron Reign for about 5 years now. Robotics is an integral part of my outside life and, with my future aspirations in engineering fields, has taught me much of the fundamentals needed in this field. The social lessons taught, including gracious professionalism will also be valuable in the social aspects of life as well. The importance of FTC overall will help me with the intellectual and social points of my future.

    Max Virani


    Halloo! I'm Max. I've been doing robotics since before I can remember, and have been in Iron Reign since the year it was created as an FLL team, 5 years ago as of now. My robotics experience has helped me get ahead of many in coding, building, and general engineering, and I hope to someday work in biomedical engineering. In the meantime, randomness is a favorite hobby of mine. Banana.

    Omar Ramirez


    Hey, my name's Omar Ramirez. This is my second year with the Iron Reign team, and it has been a great experience. I enjoy the coding part of it, since I want to enter a field of computer science. Being around people helps my sub-par social skills, and I have had many opportunities to speak in front of audiences, which I actually enjoy now.

    Tycho Virani


    Hello, I am Tycho Virani, and I have been on the team for 5 years. I'm the youngest person on the team and have seen the effect robotics has had on my life. The ability for me to understand coding and engineering before possibly joining the field will give a huge advantage and I look forward to my knowledge advancing as I gain experience each consecutive year in competition.

    Darshan Patel


    Hi, I am Darshan Patel. I have been a part of Iron Reign Robotics for one year now, and I have learned quite a bit. I believe robotics is important to my future because it has increased my teamwork skills, my ability to visualize ideas, and allowing me to have hands on experience with building and coding. I enjoy doodling and sketching buildings and cars in my free time and hope to become a professional architect after obtaining a college degree.

    Nature's Fury comes to FTC

    Nature's Fury comes to FTC By Tycho

    Fig1. Everything in the foreground was inside the tent last night

    Yesterday, October 2nd, a storm blew across North Texas, wreaking havok on trees, backyards and many a robotics field. At least our robotics field. Our field was stored in a large green tent. While we were at school, the winds ravaged the city, and over 142,000 power outages occurred in Dallas alone. Although we did not suffer a power outage, our tent sustained severe damage, and parts were strewn across the yard. The once 4 meter tall tent got knocked back at least 3 meters, and in the back half, it was knocked down to half its original height. Our plans for starting to practice early in the season have been delayed at least 3 weeks, and we are planning to gather the team together to repair the tent, if possible. Luckily, the house didn't suffer any major damage.

    Fig2. Where does storm end and red-neck begin?
    Fig3. The tent over our forge (yep, that's right) was crushed by a branch

    Tube Joint V2

    Tube Joint V2 By Tycho and Max

    Task: Improve Tube Joint

    Today we published an updated version of our tube joint on Thingiverse. This version of the tube joint added a third tab for extra durability, and a gradual slope was added leading up from the base to the hinge tabs to allow it to print w/o structural support.

    Reflections:

    We asked for feedback from the 3D Fab(rication) Group at the Dallas Makerspace. They were the ones who told us that the hinge tabs looked a little weak. They also told us that we might want to try printing w/ the part turned on its side, to avoid structural weakness derived from the layer separation.

    Last time we were able to export our model as a 3ds file, but we lost that ability when our Sketchup pro features expired. We searched around for another method, and we discovered we could export it as a Collada dae file for Thingiverse.

    Related Articles:

    Beater Bar V3

    Beater Bar V3 By Tycho


    Task: Build Better Beater Bar

    Today we set out to build an upgraded version of the beater bar. We used square dowels from home depot to prevent the twist-ties from changing their orientation on the bar. We down the twist-ties and made a design that intakes the balls with 100% efficiency

    Reflections:

    With the 100% efficiency we can now move onto the tube mechanism to finally finish our scoring system. Our robot is approaching completition and with our parts coming together, we now face the task of connecting all these individual parts together.

    Fitting the Tube Joints

    Fitting the Tube Joints By Tycho


    Task: Mount the Tube Joints onto the Tube

    Today we attempted to fit our tubes into our newly-printed Tube Joints. The tube joints, however, were at least 2 mm too small in the inside diameter, so we had to spend quite a bit of time sanding them down. We decided that this would be a good time to use the drum sanding attachment on our new Dremel. This helped speed up the process quite a bit.

    Reflections:

    In the end, the tube joints were still a bit too tight, and they ruined the ends of our cardboard tubes, flaring the walls out which constricted the pathway for the balls. We're going to need a quick solution to this problem so we can fix it if it happens during the competition, or just switch to a different kind of material that wouldn't have that problem (like plastic). Max also needs to rework design of the tube joints so that it has a smoother surface and maybe a slightly larger inside diameter.

    Related Articles:

    To-Do List

    To-Do List By Tycho

    LIFT

    -test strap
    -figure out pulleys
    -design 3D printable pulleys
    -experiment with base positions

    CAPTURE

    -ramp sliders
    -speed up beater #2
    -gorfball deflector

    GOAL BOOT CLAMP

    -form socket
    -servo clamp

    DRIVE TESTING / PRACTICE

    -autonomous AECL







    Related Articles:

    To-Done List

    To-Done List By Tycho

    LIFT

    -begin experimenting with lift mechanisms
    -connect tubes
    -design & print 3D tube joints
    -experiment with base positions

    CAPTURE

    -fabricate ramp
    -build better beater bar
    -gear up beater bars

    GOAL CLAMP

    -None

    DRIVE TESTING / PRACTICE

    -practice at afterschool






    Related Articles:

    3D Modeling Kibosh 1

    3D Modeling Kibosh 1 By Tycho

    Task:Start Building Kibosh in Creo

    Today I started building the model of the Robot in an assembly in Creo. As I only had some experience with parts, which is not the proper tool for this job, I decided to watch some videos on the basics of assemblies. After that I downloaded the models of the Tetrix parts off of the FTC website. So far, I have built one half of the right drive train.

    Reflections:

    Watching the how-to videos is important.

    3D Modeling Kibosh, pt 2

    3D Modeling Kibosh, pt 2 By Tycho

    Task: Continue Build of Kibosh in Creo

    After finishing about 2/3 of the drive train, I came across the first custom part. We sliced a small chunk off of the inner beam so we could install our goal catcher. Getting the alignment on the model to be accurate for the real robot was a challenge, as the robot was in another room, and I'm pretty sure we just eyeballed the cut in the first place, which meant there were no real recorded measurements I could base the edit off of.

    Reflections:

    I eventually created the custom part after taking some measurements, but it was a bit time consuming. Document custom parts more often and with more detail.


    Related Articles:

    Bill of Materials

    Bill of Materials By Tycho

    The parts we have used, not including Tetrix/Lego parts, were used for our main scoring mechanism, and also for subsequent parts like the beater bar.

    FTC Robot Bill of Materials
    Team Number: 6832
    non-TETRIX® or non-MATRIX® parts
    Team designed 3D printed parts
    Bungie Cords
    half inch aluminum angle stock 1/8th inch thick
    servo city servo blocks, standard/quarter scale size
    poly carbonate sheet
    anderson power pole connectors
    half inch square wooden dowel (Home Depot)
    plastic zip ties
    electrical tape
    Part Description
    14 gauge steel wire

    Control Scheme

    Control Scheme By Darshan, Lin, Tycho, Max, Jayesh, and Omar

    Task: Test Autonomous and debugging

    Today we were refining our ramp autonomous by debugging the gyro code. We found that our "goYonder" and "goBackward" method were affecting each other which was making our robot work incorrectly and just going crazy.

    Reflections:

    Our approach to fixing our autonomous has yielded some promising results. When we started practice the autonomous code only worked every other time, failing when we compiled for the first time per connect and alternating from there. We found the cause of the error, having two methods whith local variables of the same name. We hadn't caught this earlier because normally local variables clear each time. Mr.Virani attributed this to Robot C being stupid. When we zeroed the variable each time, the issue was fixed. Once that was resolved we were able to actually make progress on our ramp routine.

    PID

    PID By Tycho


    Task: What is PID?

    PID is useful in many ways, such as setting an arm to a certain position, going straight based on a gyro or following a line. There are three parts to a PID control program : Proportional, Integral and Derivative.

    Proportional: How much error is there? The proportional part of PID is useful because it tells you how far away you are from your target value, so you know how fast you should go to correct it.

    Integral : What is the total error over time? The integral part of PID is useful in some cricumstances, but is not always a good thing to have all the time. One would use integral to tell whether you're stuck on a physichal barrier, so you can try to overcome it by increasing the power. A "leaky" integral is one that slowly returns back to zero, so you stop correcting for a barrier that might have been overcome already.

    Derivative : How fast is the error changing? The derivative part of PID help measures how fast your error is going to or from your target. One would use derivative to slow down the motors when approaching the target in order to prevent from overshooting.

    Related Articles:

    Earth Day Texas 2015 at Fair Park

    Earth Day Texas 2015 at Fair Park By Max, Tycho, Lin, Omar, Jayesh, and Darshan

    Task: Represent SEM and STEM at Earth Day 2015

    Dallas ISD Superintendent Mike Miles came by our booth where we were representing our Science and Engineering Magnet High School and sharing our STEM message with the community. Ms. Huitt, our principal was also there. Unfortunately we forgot to take any video while inside. Above Tycho is visiting with the solar car team from Ben Barber Tech in Mansfield.

    Reflections

    Traffic was not great where our booth was, but we still got a lot of interest in our robot. We brought a subset of the field so that we could demonstrate better, and we linked the robot to the earth day theme by portraying the balls as debris that needs to be cleared after an environmental disaster.

    Discovery Faire at the Dallas Downtown Library

    Discovery Faire at the Dallas Downtown Library By Lin, Jayesh, Omar, Darshan, Max, and Tycho

    Task: Present at the Dallas City of Learning Discovery Faire

    "Kids are invited to “Turn Up!” to make, create, craft, play and learn at the Dallas Public Library on Saturday June 20. The Dallas City of Learning free family event will be from 1 to 4 p.m. on various floors at the J. Erik Jonsson Central Library, 1515 Young St."
    Quote from Dallas City News Article

    Iron Reign was one of many presenters at the Discovery Faire, showing various robots to curious kids and parents. We were on the top floor, and after rolling up assorted robots from the team's past years, we were set up across from Polyprinter people. Although it took a while for visitors to make their way up to us, we were working with and talking to a large crowd at the peak.

    Reflections

    We set up multiple places for people to interact with. In the right-hand corner of our area we had a sumo field with 2 or 3 smaller lego robots running. On our main table we had our coca-cola cube 3d printer we won from an earlier grant, and the beginning of Argos was set up. Currently Argos uses color blob detection to follow a selected color from an android phone. Right now the phone is mounted on two servos and swivels in the direction of the color. Minion, our robotic "dog" was being driven by Tycho and was going around the whole area. A lot of kids wanted to try driving him around, and Tycho attempted to teach them the leash based controls.

    The main attraction was our season robot, which was set up with a few foam tiles, a rolling goal, and a bunch of plastic balls in a box. We followed he path of the balls through the beater bar, into the chute, up the ski lift, and off the backboard into the tall rolling goal. We seemed to do better here than in any previous competition! A crowd of kids surrounded the robot, and while it was originally being driven around, we decided to keep it stationary later, only running the collection and scoring motors. It was hard to keep their hands away from the ski lift, something that could be broken easily, and that could potentially hook onto sweaters or necklaces. We told them to roll the balls towards the beater bar and watch as they travelled up and (hopefully) into the goals. They seemed really interested and engaged as we got a combo going, and started cheering as goals were made.

    A lot of parents came by the booth, and we were distributing fliers and information for our high school, The Science and Engineering Magnet. Many asked question about the curriculum, entrance requirements, and robotics opportunities there. Parents of younger children asked for suggestions on how to become involved in robotics with their kids, and we suggested looking for FLL teams in their middle schools and scouting troops.

    Argos the Chromovore

    Argos the Chromovore By Max and Tycho

    Task: Get some pre-season experience with Android controlled robots

    We've been experimenting with Android controlled robots while we wait for our ModernRobotics modules. Argos is a chromovore - it seeks an identified color using OpenCV4Android machine vision processing. It tries to maintain a given distance from the colored object and follow it around. It's built using the IOIO-OTG for low level interface with the motor control electronics. The ZTE Speed phone is mounted on pan/tilt hardware from ServoCity and Actobotics. The chassis is a MaxStone 1/5 scale rock crawler by Exceed RC.

    Reflections

    We are starting to learn a bit about using Android devices for controlling robotics. There seems to be a lot of potential here, but we are mostly finding that we have more and more to learn. Machine vision is not easy, and we don't even know if it will be useful in next season's challenge. We are also learning about the location and orientation APIs. Unfortunately it seems the ZTE Speed doesn't have an actual gyro in it, so we'll have to continue using an external gyro for heading management.

    We don't plan to publish (meaning document and support) the source code. Our code is just a hack forcing two projects into one - plus you really want to build it from scratch to get a good idea of what is going on. It's pretty much a blend of the ColorBlobDetector sample that comes with OpenCV4Android, and the IOIOSimpleApp present in the IOIO Github project. Use the gradle branch for compatibility with Android Studio. But if you want to look at our implementation you can find it here.

    Moonday 2015 at Frontiers of Flight Museum

    Moonday 2015 at Frontiers of Flight Museum By Max, Tycho, Lin, Omar, and Jayesh

    Task: Represent SEM and STEM at Moonday 2015

    The Frontiers of Flight Museum hosts an event every year called Moon Day that exhibits a lot of STEM topics to anyone who drops by. Iron Reign always has a booth with DPRG and exhibits most of the previous robots and topics that we've been involved in. This year we showed off Argos and Kibosh in particular, also having GyroBoy as an example based off our presentation given to the DPRG just the previous week. We had our booth where we presented our robots and also had a seperate team walking around, showing off Argos and Minion. We were able to talk to many people, both young and old, and we impressed upon these people the importance of what we're doing and how the STEM fields could affect them. We impressed a couple engineers that came over with one of them exclaiming: "Man, kids used to mess with their dolls and toys, you guys do things that we weren't able to until late college!"

    Reflections

    Our opportunity to talk to both kids and adults experienced in the STEM fields, and leave an impression on both, is something that has come to define this team. To get kids excited about what we do and start getting them to see if they have any interest, helps us prepare them for their future in their early age. Meanwhile, to be able to learn from other engineers and take advice from their experience helps prepare us for our future.

    Intro to Gyros

    Intro to Gyros By Lin, Tycho, Max, Omar, and Jayesh and Darshan

    Task: Share what we've learned about motion sensing

    On July 11th we gave a talk for a classroom full of adult members of the Dallas Personal Robotics Group (DPRG) where we shared what we've learned and are still learning about motion sensors, particularly gyros. The talk took place at the Dallas Makerspace. Our thanks to DPRG, Steve and Doug for hosting us and recording and editing the video. The presentation slides can be downloaded here. We hope this helps other FTC teams who are exploring the same subject.

    Reflections

    We are fairly happy with how the presentation went. We made a few mistakes and omissions in our talk and could improve our delivery. We should probably have added one last slide of "dos and don'ts" to make it simpler for teams that are just starting with gyros, so we'll do that in a follow-up post.

    Our assessment of the quality of the gyro in the 2nd gen Moto G isn't a first hand assessment, as we don't actually own a Moto G. But if you Google the gyro on the Moto G you'll see stuff like this: https://www.reddit.com/r/GoogleCardboard/comments/2syeb2/moto_2nd_gen_gyroscope_fix_request/

    So it seems that using this phone with Google Cardboard leads to a very jerky experience that probably means difficulty using it on a robot. But it's also possible that the gyro is fine and it's the built-in sensor fusion with the accelerometers and magnetometers that is the problem. We are interested in feedback from other teams that have this phone to see what they think of its gyro. We know of at least one other team that is planning to test this phone's gyro.

    We are also interested in feedback from other teams on which external gyro they plan to use. The easy choice is the hitechnic gyro that we've mostly used in the past. But the truth is that it is a very drifty gyro and there are probably better choices out there now. We are looking at a few ourselves and plan to post the results.

    We estimate we've put about 90 person hours over 3 meets and a lot of homework into this presentation. And that doesn't count the time we've put into actually learning how to use gyros from sensing through to control. If we'd spent even half that time working on our FTC judging presentation last year we'd be in much better shape. We learned of some teams at the South Super Regional that spent much more time practicing their presentations. We have to learn how to set aside time in the weeks leading up to competition when our focus has been only on the robot.

    Mayor's Back to School Fair 2015 and Dallas City of Learning at Fair Park

    Mayor's Back to School Fair 2015 and Dallas City of Learning at Fair Park By Jayesh, Max, Tycho, Omar, Darshan

    Task: Share STEM opportunities with returning Dallas ISD Students

    On August 7, 2015 we tried to inspire returning DISD students to think of themselves as budding engineers and scientists. At the Mayor's Back to School Fair and as guests of Dallas City of Learning, we demonstrated our creations to Mayor Rawlings and hundreds of kids. Many students learned to operate the robots and learned about robotics opportunities available to them at all levels in Dallas ISD.

    Reflections

    We were in the historic Women's Building at Fair Park. It's a beautiful building, but foot traffic was not great since it was separated from the main buildings. The kids who did come through still got a kick out of Kibosh. We had it slowed down so they could control and play with it directly. Mayor Rawlings was really nice and seemed genuinely intersested in what we were doing and especially that we were doing so much over the summer. He is really concerned about summer learning loss and that's part of why he is backing the Dallas City of Learning initiative. Omar spent a lot of time touring the building with Argos and even taught Mayor Rawlings how to operate it. And our story did get featured in the school's first newsletter this year.

    Overview of new hardware and software

    Overview of new hardware and software By Max,Tycho,Lin,Alisa,Ethan,Trace

    Task: Getting a first glimpse at the new motors and controllers with Imperial robotics

    We continued our meeting at the Dallas Makerspace after the GitHub tutorial. We unpackaged the new motors and motor controllers for the first time and took out the phones to scan the hardware configuration. We added Anderson Power poles to some of the motors. Lin taught Alisa and Ethan how to crimp wires and attach the power poles.

    Reflections

    Scanning the hardware configuration was very troublesome for us and the connections looked like a rat's nest and it was hard how it was going to fit together in a tidy bundle.

    Back To Creo

    Back To Creo By Tycho

    Task: Create preliminary designs for a new robot using a new build platform

    Today I started making new designs for a competition robot based on extrusions and the new software platform.

    Reflections

    I decided to make two different possible designs, one based on our robot that we had used for the past few years with 1 regular wheel on each side in between two omni wheels, and another based on our sister team's newer platform, which had one standard wheel on each corner. After a few hours of work and no saving, creo crashed and I lost all of my work. Moral of the story : save your work more often.

    Season Startup Team Meet

    Season Startup Team Meet By Max, Tycho, Omar, Lin, Trace, Evan, Darshan

    Task: Discuss the upcoming FTC Season

    This meet we discussed topics concerning the upcoming FTC season. Our sister team, Imperial Robotics, was also over getting their robot working with the new motor controllers. We went over basics that we should do to be a better team this season. We went around deciding tasks each member would be in charge of, whether it was logistics, organization, or our business plan. We also discussed how we should promote our team. Evan especially was enthusiastic about reaching out and taking charge of our business plan.

    Reflections

    We realized that to be an accomplished team we each need to know we should be doing. With the game being released next Saturday, we will have to be precise in what we do and how we do thing this season.

    Designing Drive Trains

    Designing Drive Trains By Tycho

    Task: Create preliminary designs for a new robot using a new build platform

    After we got the new mechanum wheels, I had to start thinking about a new design that would be able to use them.

    Reflections

    Not much progress was done on the design based on the mecanum wheels, but I remade part of the design based on our old robot from previous years. We will build one robot based on our proven omniwheel-drivewheel-omniwheel nacelle design, only using the REV extrusion building system being sold by Andymark. We will build a second robot using mecanum wheels. The plan is to see which robot works better and that will become our competition robot and the other will become our sparring partner. We think that our classic design will be better at pushing and resisting being pushed around. We also know it is very capable of accurate turning. But the mecanum robot will have more freedom of movement. Which should work better is probably dependent on what the challenge looks like when they release it. But we are also new to mecanum and probably won't have a rock solid implementation figured out right away.

    Labor Day Meeting

    Labor Day Meeting By Lin, Jayesh, Darshan, Alisa, Omar, Max, Tycho

    Task: Learn about OpModes

    Today, we reviewed opmodes in the FTC API and how to register new opmodes. We also learned about the differences between regular, linear and synchronous (from SwerveRobotics) opmodes.

    Task: Review Blogs/Journal

    Our Blog == our Journal. What we also did today was quickly review how to create blog entries so we can do that more frequently this year. We also tried to catch up on our lengthy backlog of journal articles. We were very busy with outreach this summer and haven't had a chance to write up most of those events.

    Reflections

    With the new game being released this coming Saturday, we should soon be able to try and figure out what kind of robot we'll need to create and how to approach the problem both code-wise and machine-wise.

    The linear opmode works as a simple sequence of instructions, while a regular opmode is more event driven but still simplified kind of the way that arduinos work where some lower level task manager is responsible for calling our main loop and making sure that communications with the hardware devices happens between those loop calls. Synchronous opmodes are provided by the SwerveRoboticsLibrary and are similar to the linear opmode, but seem to have some advantages. There needs to be a lot of work in order for all of us to really understand all of this code in the new environment before we'll be able to use it well, but in time we'll learn. I hope.

    Meeting After Game Reveal

    Meeting After Game Reveal By Dylan, Darshan, Alisa, Ethan, Evan, Lin, Tycho, Max, Trace

    Task: Discuss robot design

    Now that the game has been released, we as a group discussed the different amount of points per each possible game strategy that would give us the most ample amount of points during the given time limit. We also discussed the different ideas on the tracks and wheels that are possible for our design. The arm attachment was discussed for the grabbing of the highest mount of the mountain which would give us the most points.

    Reflections

    In the future, we will probably test the different ideas we have brainstormed and discover which of these will probably be most efficient for us in our competition that will give us the lightest and most applicable design. In the following weeks, we will have obtained the color sensor and field pieces or items to practice with. This will lead us to reflect even more about what we have done today and what we have done in the weeks before.

    Tank Drive Model

    Tank Drive Model By Tycho

    Task: Design a new build platform more suited to this year's challenge

    Since the robot game for this year came out about a week ago, we were thinking about which kind of drive system would work best for the challenge, which mostly involves climbing. Some of the concept we came up with were rocker bogies, rubber-banded tires and a tank drive with treads. Since we already had the preliminary design started for a tank drive, I started modeling that.

    Reflections

    Throughout the early build of the tank drive's right nacelle, I used Creo to assist in the design of the robot, using the software to see how parts could fit together, and how they couldn't. For example, we were hoping to add an extra idler wheel into the tank drive between the motors, I found out through Creo that there was just barely not enough space to fit it.
    I also came up with a way to connect both halves of the robot for when we build the left side of our tank drive, and modelled what that would look like when complete.

    FTC Kickoff 2015

    FTC Kickoff 2015 By Jayesh, Omar, Max, Tycho, Evan, Ethan

    Task: Attend FTC kickoff and assist newer teams in understanding task ahead of him

    We were invited by team Technical Dificulties invited Iron Reign to attend first FTC kickoff for our region ever. With the Technical Difficulties coach leading the discussion, everything relating to the game and coopertition in North Texas was discussed. Technical Difficulties, with some input from us and a few other veteranss, was able to assist the rookie teams with understanding the task of the FTC challenge this year. Questions asked included the challenge, possible loopholes, rules and regulations, and award chances and how to possible obtain them.

    Reflections

    Iron Reign has always made a priority of assisting the newer teams in FTC and even FLL to understand the competition they are entering and the responsibilities they will undertake in this year and beyond. Many people came up to us asking about build strategies and even basics like understanding javascript. There will be future workshops invloving programming and building that we may attend to learn and spread our own knowledge on the subject matter.

    Post Kickoff

    Post Kickoff By Jayesh, Omar, Lin, Ethan, Alisa, Evan, Max, Tycho

    Task: Build FTC field and begin tank tread mirror side

    After the 2015 kickoff, Iron Reign conducted a meeting to construct our game field and also construct our mirror side for the tank treads. Taking turns on placing the grips on our treads, we managed to get a good portion of the grips placed as well. Construction of the field also commenced and the majority of the field is finished, providing an important recource for us in testing the robot for competition.

    Reflections

    Field materials like the ramp gave us difficulty in assembling them because of confusions such as where to thread each screw. Watching the building videos on Andy Mark's website let us know how to solve most of these nuances. With the mirror side of the tank thread just about done, we can also start building on the main chassis and start discussing our main scoring mechanism.

    Daily Organization

    Daily Organization By Lin, Darshan, Evan, Omar, Max, Tycho, Dylan, Alisa

    Task: Get in the habit of organizing daily

    We have never had a great track record of having an organized workspace, so each member was greeted with the new rule as we entered.
    Hopefully this will save us a lot of time in the future because everyone will contribute a little to the effort.

    Reflections

    Once we figured out what we were going to organize the effort went faster than expected. A bowl of assorted pieces was out on the table, and it was half empty in less than 20 minutes.
    The hex keys are lined up on the work table magnet and hopefully they'll be put back in place as soon as someone is done. We probably started with 3 or 4 wrenches last year, and we only have one at this point. The USB cord drawer has been organized with gallon sized bags for each type, micro, mini, and standard, where it was originally a rat's nest of tangled wires. The giant metal file is still lost, but hopefully it will show up as we clean through the meets.

    Driving up the mountain - test 2

    Driving up the mountain - test 2 By Lin, Darshan, Jayesh, Omar, Max, Tycho, Evan

    Task: Test how the condition of the mountain changes robot performance

    After last week's fail we decided that we should change a couple of variables of the environment. The first and easiest to fix being the condition and cleanliness of the mountain ramp. Having dust on the ramp would severely lessen the friction holding the robot in place, so we wiped it down with glass cleaner and started up the robot.

    Reflections

    Since the chassis is still in design flux, we went up the ramp both ways. Both were able to get onto the low zone and held their place when motors turned off. This was already a success in comparison to last week's practice. However, when attempting the mid zone, the orientation of the robot made a difference. When we drove up heavy side first, the robot was unable to go up the first bar. When we put the heavy motor controllers and batteries at the back and went up, the robot made it past the bar, but lost its balance soon after. We can't rely on the balance as attachments will definitely change the weight and center of mass.

    After watching the robot fail going up battery side first, we believed that the battery holder was getting caught on the bar. after a closer look we saw that the plates that the batteries were resting on were just low enough and stcking out enough to get caught. if given a push then the robot kept driving up without any problem. This also meant that going down was impossible after driving up in the other orientation. The battery mount would just catch in that direction The battery mount was temporary anyways and after the strategy meeting (Jayesh's post) a new controller setup was started.

    Gyro-IMU Case

    IMU Case By Tycho

    Task: Make a 3D Printable case for the Adafruit BNO055 IMU

    We're used to having gyros to help maintain heading, but we've never been fans of the Hitechnic gyro sensor. Now we have more options and the BNO055 looks pretty good. But our testing has been off robot so far and we need a way to securely attach the sensor to our robot which bounces around like crazy when climbing the mountains. So in PTC Creo, I'm designing a 3D printable case for this sensor that we can share with other teams. I decided to build a model of the sensor first, so I could play with it in an assembly with other tetrix parts while designing the case. The goal is to have a case that bolts securely to Tetrix channels, doesn't need special screws to hold the sensor in place, is strong enough and is easy to print with no overhangs.

    Reflections

    The design I came up with is pretty simple - it's a box with a lid that clamps over the sensor and makes an air gap for the sensor components to sit in:

    My first test print shows some issues:

    • The standoffs are not perfectly centered under the holes in the board. In one direction it was probably a measurement error. In the other direction I must have made a mistake with a centerline reference when I mirrored the holes on the sensor model.
    • For the same reason, the sensor is not centered in the air gap.
    • The pins on the standoffs took too much filing to get to the right size. I need to make them smaller or turn them into cones or get rid of them and just leave a hole for tiny screws.
    • It only has bolt holes for the Tetrix pattern (compatible with extrusions). Should probably add holes for the Actobotics pattern as well.
    • The bolt holes should be bigger so they don't have to be drilled out to proper size. They were sized correctly in the model but most 3D printers tend to spread filament into the gaps.
    • Should add some kind of strain relief for the sensor wires going back to the DCIM.
    • Fully enclosed, heating could be a problem. Might require venting the air gap or making room for a heat sink.

    So while I was able to mount the sensor in the test print by breaking two standoffs and demo that at least it securely holds the sensor to a channel, I'm improving the design and should have an STL we can share with other teams by next week. I'll add an update to this post when it's ready.

    Gyro-IMU Case V2

    IMU Case V2 By Tycho

    Task: Improve our 3D Printable case for the Adafruit BNO055 IMU

    Last week I designed a case for our IMU sensor in Creo and wrote up how it could be improved. I've fixed most of those issues and we are ready to share the results. There is one version with Tetrix hole spacing and another that works for Actobotics channels. Either can be used with aluminum extrusions though you might have to drill out the mounting holes depending on your bolt size.

    You can download the STLs. The Creo models are available on request - just ask in the disqus below.

    Reflections

    My first write-up showed a number of issues. Here's how those issues were addressed:

    • There were measurement errors. I guess I need to work on my caliper skills. This time I found a diagram of the board's designed dimensions that removed these errors.
    • I did make errors by not properly using centerlines for mirroring features in my sketches. Cleaned that up.
    • I made the pins on the standoffs smaller to reduce the time needed to clean them up for a proper fit. Now a minute of filing top layer sloppiness makes for a nice snap-on fit. The sensor presses right into place. We tried it with two different IMUs. This is optimized for our Ekocycle Cube, so might not be the right solution for other printers.
    • Added a separate set of print files for Actobotics mounting.
    • The bolt holes were widened so we don't have to drill them out for 6/32 bolts.
    • Added a strain relief column for the sensor wires going back to the DCIM. The column contains a groove to secure a ziptie.
    • We don't have good data on whether heat build up could become a problem.
    • This design is meant to be mounted to the underside of a structural beam if you want the sensor to maintain its standard notion of "up". You can always change that definition in code if you need to mount it with the wires coming out the top.

    We hope this design proves useful and please let us know if you can think of any improvements.


    Before Scrimmage basic tests

    Before Scrimmage basic tests By Lin, Tycho, Omar, Max, Darshan

    Task: make sure the robot can run

    There's a scrimmage next Saturday that we may or may not be going to based on Dallasisd technicalities with our team. Our goals for today were to get a basic autonomous going to dump climbers and maybe some mountain climbing tests. However, the controller apps needed to be updated and we got a lot of errors when connecting.

    Reflections

    If the controller gives an error mentioning "USB UART" apparently the only fix is to completely restart the robot controller phone :0 It took us maybe 20 minutes to restart everything, but the robot is moving around. It feels like we have to do this at least every other practice.

    Autonomous Code Part 1

    Coding for Autonomous Pilot Program By Tycho and Dylan

    Task: Program Pilot Code

    Our task was to begin programming for our first version of the Pilot class of the robot using other classes for our angle, position, and controller that we created. The controller class known as PID controller used part of the controller set given to us from the repository but was recalibrated to be in terms of time and independent of all else. This we need to integrate in our pilot class which we will use to tie all programs together for our autonomous program.

    Reflections

    We still have a long way to go for our program and how we are going to use methods from the private class for the PID controller. We have a few ideas we should follow up on as well as test with our robot. With so many variables we need to make sure that we can have the ability to name each differently but also describe what each variable is describing. In reflection, we have done many of the methods for our pilot program and only need to add a few more so that the variables describing values of other classes changes when necessary. The main parts of the particular pilot program version one are complete and we should be done with the rest of our program next week.

    Helping the Travis Team

    Helping the Travis Team By Tycho

    Task: Teach Travis Team how to Use Previous Team's Code

    After retiring from FLL at Travis, we decided to share our code library with the other team from the school. We set up a meet with Clay, one of the main programmers of the team, so we could teach him how to use our core functions; the next step is for him to teach the other members of his team how to use the code.

    Reflections:

    I spent a couple of hours to teach Clay how to use our most essential code segments; he now knows how to use a proportional line follower, maintain a heading using the gyro, how to make accurate turns using the gyro and how to calibrate the robot so that the robot knows how many wheel rotations it takes to move the robot one centimeter.

    SEM Open House 2015

    SEM Open House 2015 By Jayesh, Lin, Omar, Max, Tycho, Darshan

    Task: Publicize our school and team + showcase the benefits of robotics

    Iron Reign was once again invited to attend our school's open house and present our robotics group and speak about what we have and will do. We mainly focsused our topics on the transition between middle school level robotics and high school level. The topics covered included the overall engineering and computer programmming that we undergo as a part of FTC. The classes that these possible future students would undertake as a part of SEM such as Physics and Computer Science would function as a baseline in the challenges presented in FTC and the main focus of our presentation was to hopefully show these possible prospects that what they learn in class would actually be utilized in their everyday life.

    Reflections

    With the discussions we had with the people in the crowd and leadership of our school, we garnered a lot of attention towards our team and robotics in general. Many people who hadn't had a lot of personal experience with robotics were mostly attracted to the dynamics of the robots as they moved around and showed of their basic motor functions. Other people who were engineers and researchers were impressed with our technical level at our age. Many people exclaimed how it's good that we're taing full advantage of our opportunnites as they never had these opportunites at their age. These open houses let us see how we were before starting FTC seriously, and these opportunities have helped us for our likely futures in the STEM fields.

    Starting up our Autonomous Code

    Starting up our Autonomous Code by Jayesh, Tycho, Max

    Task: Get started on autonomous coding

    We spent some of the time at the scrimmage today starting up our autonomous code in android studio. The main basis of our coding was put around climbing the ramp, which is our main function of our robot without the rest of the hardware in place. The main point of the code was put around PID and Pose, as PID helped give us our position on the field and Pose helped in giving our heading.

    Reflections

    The coding differences between this year and last year are mostly in the mainframe of the code. While there are similarities in the defintions of motors and variables in hard coded movement, the new use of Pose completely replaces the use gyro functions such as GoYonderGyro and GyroTurn. Also, with the new interface comes the differences between basic C language and Javascript. We plan to explore these similarities and differences further as we continue to improve both our Autonomous and user-controlled code.

    Meeting other Teams at the Scrimmage

    Meeting other Teams at the Scrimmage By Lin, Omar, Darshan, Jayesh, Tycho, Max, Evan

    Task: Get a feel for where we are and the progress of other teams

    Whether or not we were allowed to compete, we felt that it would be worthwhile to go to the scrimmage, if only to see how we compared to other teams. Climbing the mountain is the hardest mechanical design challenge so far, and we were able to see their solutions.

    Reflections

    Many teams had treads like ours, with different arrangements of idlers, while other teams had completely different solutions. RoBo Bison Team #8811 had a particularly ingenious way of moving up the churros.

    Team #8514 used a wheel design that we had discarded early in the design process, with surprising results. Their front wheels were omni wheels, and their back wheels were ridged for more traction. once they got high enough on the mid-zone, they used their claw arm to reach higher and pull themselves up.

    "I specifically asked if they had problems with falling sideways down the mountain, and they did say that they had to be careful to drive up at an angle as close to 90 degrees as they could.

    One team had programming trouble, and a few of our members went over to help with their problems. They were using app-inventor, which made it a little hard to and had a well known problem with their wifi-conectThis team ended up taking home a trophy at the competition

    Autonomous Code

    Autonomous Coding By Dylan and Tycho

    Task: Updating and Working on Autonomous Code

    Today we continued working on the code involved for the first ten seconds of motion in the tournament known as autonomous. In this period we hope to reach the other side of the field towards the Res-Q beacon to dump our figures from the beginning and then trying to go as high as we can up the mountain. We coded this using our IronDem and the Pose classes to calculate the range and angle of our current location. We are using switch statements to accomplish this and have coded for much of the autonomous period now.

    Reflections

    The main problem we have run into in our coding is readability and understanding the code thoroughly when we write it. Making simple careless errors must be found easily in this code like semicolons and mispelled variables. Otherwise, we still need to test the autonomous code and make sure that it works correctly. Next week, we plan to finish autonomous and test it completely. After autonomous we plan to start reviewing and coding navigation and the non autonomous code.

    Helping the Travis Team

    Helping the Travis Team By Tycho

    Task: Help the William B. Travis FLL Team

    Starting September 10th and lasting through today, I went to our old middle school, William B. Travis, to help their newer FLL team with robot design and programming. There were also some one on one sessions during practice to teach their main programmer, who used to be on the older FLL team until it disbanded, how to use the code library that we had previously written. I also went to a scrimmage with them to help them come up with new design ideas and strategies for the game.

    Reflections

    September 3 Practice:
      First meet; set up the field and build the field elements; talk about the project
    September 10 Practice:
     Project talk; we talked about earlier projects and came up with ideas- people who came up with ideas were assigned to research further
    September 17 Practice:
     Talked about programming; I introduced them to our PID code that we wrote for EV3. More project brainstorming. Research done was reported back.
    September 24 Practice:
     Demo of gyro sensor; how to install and how to program. Talked about core values and team logo.
    October 1 Practice:
     Focused on strategy and robot build; designing a launching jig for the robot and taught arrays in EV3.
    October 8 Practice:
     Build team refined chassis and attachments; beginning of game programming in earnest. Taught line following.
    October 15 Practice:
     Wrote a list of our main goals that we wanted to have done by the upcoming scrimmage; talked about game choreography.
    October 22 Practice:
     Refined robot game program & design; settled on project idea (recyclable pizza box)
    October 24 1-on-1 & After-school Prep:
     Helped Clay, a 7th grader who was on our old FLL team until it disbanded, prepare for the TA role in the beginner after-school robotics club that we established when we first founded our team. I created kits for the basic robots and taught him the basics of what to talk about. I also taught him how to use the core functions Alisa and I wrote for FLL (calibration, line following, maintaining a heading, gyro turns, etc.)so that he could share the knowledge with his team.
    October 29 Practice:
     Last preparations before the scrimmage that weekend. Refined the game program and launching jog for the robot.
    October 31 Scrimmage:
     Helped the team get an idea of what the actual competition would be like; we practised game choreography and handling the robot.
    November 5 Practice:
     Wrote and practised the script and song for the project and refined some design flaws discovered at the scrimmage.
    November 12 Practice:
     Refined the design and project; designed and built a new launching jig that could be easily tuned using worm gears to launch at a different angle.
    November 19 Practice:
     Talked about strategy and tuned the game program; practised the project
    November 26 Practice:
     Third to last practice - Significant amount of time practising the project and tuning the game program.
    December 3 Practice:
     Last practise - Final preparations before the competition; tuning and logistics.

    Scrimmage at Greenhill

    Scrimmage at Greenhill By Darshan, Alisa, Omar, Lin, Max, Tycho, Evan

    Task: Practice with other teams and see

    This past Friday, the team tried to get the robot working in a small scrimmage with seven or so other teams. At the scrimmage, we managed to get our cow-catcher working, even though we nearly burned out our servo. During the process of finding the right positioning and testing it while driving we managed to tear up quite a few rubber inserts on our treads. Even though the scrim was scheduled to start at 6, no one ended up competing in a single match. Along with us, there were only two other teams that were even driving their robots, Imperial Robotics and Technical Difficulties. But when we were testing driving we saw that our robot needed a little help getting up the ramp, if it could at all. We also tried to get our autonomous going, but it went nowhere. Compared to other teams we might not be that far behind, but we feel that we should be much farther. And even though we didn't compete, we were at least able see how the robot drove and handled.

    Reflections

    We now feel like we need to gain a new sense of urgency. With our first qualifier only about three or so weeks away we are running short of time. We also feel that if we plan on being a top contender we need to be on a whole other level. Our robot itself isn't in the worst of conditions but we need to be upgrading and testing, both our physical robot and our code: autonomous and tele-op. We also need to focus on our final design of the robot, incorporating them into our code as we approach our qualifier date. We were able to learn a lot about possible pathways to take in terms of our code in tele op and autonomous and we plan to implement these ideas onto our robot in the coming practices.

    Starting Color Blob Detection

    Starting Color Blob Detection By Omar, Max, Tycho

    Task: Implement color blob detection on the robot for detecting beacons

    Even though this was very long overdue, we now have a way to turn towards a certain color similar to what Argos does. What we're basically doing is calculating the angle that the robot is off-center of the blob it's tracking, and letting it correct for the error and straighten up with our PID code that's already in place. Right now, it doesn't actually move backwards and forwards, only turn on its axis, but we can soon get it moving around following colors. --NEEDS VIDEO HERE--

    Reflections

    This year's competition gives teams that can detect the colors of the beacon a huge amount of points, which includes dumping the climbers in the baskets and pressing the buttons. It's very important for us to be able to do this if we hope to be successful in our first tournament that's less than two weeks away. With the ablity to now direct our robot towards the colors, we can have more overall points during autonomous and tele op.

    Functions of our controller

    Functions of our controller By Alisa, Ethan, Trace

    Task: Listing out the functions of our game controller

    In order to find a button for our argos mode drive, we made a rough draft of our game controller listing the functions of each button. For example, the 'X' button is for the churo climb, the 'A' button is for our beater to stop, etc. We had about 5 unused buttons so in the end, we decided on using the top left button for argos mode drive. Now that we have all our function per button lsited out, it will be a lot easier to use this diagram for reference if we ever need to add another function or forget what a button does.

    Reflections

    From now on, we should well-document everything about our robot, as we had to look in the code to actually see what our controller layout is. As well, we really, really need to let our drivers practice because they should have known the buttons as well.

    I Still Won on the Inside… 2016 FTC Qualifier at Wylie

    I Still Won on the Inside… 2016 FTC Qualifier at Wylie By Jayesh, Omar, Darshan, Max, Tycho, Evan, Ethan, Alisa, Lin, Trace, and Dylan

    Starting out

    Just as in previous years, Iron Reign set off about half an hour late. We REALLY need to get everything not directly on the robot printed, boxed up, and loaded the night before - at the latest. Now that we have 11 members, we needed another person to help carpool, and Jayesh’s dad was thankfully willing to help. (note from omar: we definitely did not get lost on the way there)

    When we arrived at the competition we set up shop behind Imperial Robotics, our sister team, and plugged in our battery box in the power strip in the back. It was frustratingly far away, but at least it kept all our stuff in one spot without having to use multiple outlets.

    Scouting

    This was the first year that we as a team really took scouting seriously. Taking advice from FTC Robotics Tips, Tricks, Strategies, and Secrets, we created an Excel spreadsheet with rows for each team and columns for strengths and weaknesses in TeleOp and automonous. This allowed us to effectively gauge the strengths and weaknesses of other teams, whether opponents or partners. When we first arrived Dylan, Alisa, and Evan walked around and " interviewed " teams in the pits, distributing our fliers and taking notes. The scouts split into two groups to make the process more efficient, and effectively turned it into a game, seeing who could cover the most ground. By taking notes on previous matches, we were able to predict the outcome of our first match and the reasoning behind it.

    Mechanical and Software progress

    Due to a dead servo that we detected just before our first match, we spent most of our pit repair and testing time focused on our cliff climbing mechanism. Because of a lack of testing the night before, we failed to notice that our aiming servo for our tape measure wasn’t working, and probably hadn’t been for a day or two. Unfortunately we only had one extra servo with us, one that had a different internal range than the other. Our initial angle in our programming was fine, but the next preset value was off. We spent most of our available time tuning and fixing this problem, as it was, and still is, our main focus in tele-op point wise.

    We didn’t really attempt even the most basic autonomous. Earlier we have had issues with the robot driving backwards when testing, even after switching signs multiple times. Because we weren’t sure how the robot would react, or if it would at all, we decided to play it safe. The field debris can pose a real danger to our tank tread system, since neither our cow-catcher nor side shields were on. We used a long tetrix piece as a front guard, but we didn’t really trust it enough for autonomous since it bent badly even when pushing only a couple of blocks.

    Match Overviews

    Match 1
    Discovered that the servo that controlled our Cliff Hanger’s (tape measure) elevation was not working. So we were completely unable to climb. At first our teleop program didn’t start - there was pop-up on our phone screen and we were not allowed to touch it. Thankfully a FIRST official reached in and restarted our robot, and we were able to move around after losing about 30 seconds. It was very hard to move around because our plough was detached. Mostly the value of this match was in discovering the problems with the Cliff Hanger servo. (Which should have been detected and replaced the night before)
    Match 2
    We weren’t able to reattach our climber mechanism, which meant that we were pretty useless, and our ally robot disconnected, resulting in a loss.
    Match 3
    We were able to get the climber on and actually reached the mid zone, however our ally robot disconnected (see a pattern here?) and the enemy scored more blocks than us.
    Match 4
    Robot decided to turn off and we only won because some of the debris landed in our field boxes and less landed in theirs. Lady luck smiled upon us. We really needed a win and this was a much needed victory to restore our pre-match cred. Thank you whatever force gave us that win.
    Match 5
    All the robots' systems on the field failed to work in this bizarre match, where our roll with the debris secured us a low-scoring 5-0 win.
    Before/During Finals Alliance Selection
    Our scouts managed to do some fantastic work during alliance selection, nailing us two very solid teammates, one of whom was first seed. However, during the time that this was happening, one of our drivers had been practicing climbing the ramp when the robot fell down the incline on its side, shattering one of its tracks. Thankfully some extra was lent to us, and the problem was fixed quickly.
    SemiFinal Match 1
    This was the match that everything that we hoped to achieve in the game came to fruition. The robot was able to line up with the back ramp and get to the high zone. With the points from our alliance, we scored the highest amount of points in the tournament, securing us a place in the finals.
    Final Match 1
    Near the beginning of our first final match, an enemy robot turned its decently sharp corner into the side of our robot, breaking a tread and rendering us relatively useless during the rest of the match. Although disabled, our driver managed to limp the robot onto the mountain with the tape measure for some small points, which helped us win the match.
    Final Match 2
    We did not participate in this match; our two alliance partners did. Unfortunately, they experienced some technical difficulties during the match, and were not able to win, making the series tied 1 to 1.
    Finals Match 3
    This match did not go well for anyone. Beginning the match, one side of the robot began to run by itself, a known problem that we've had in the past. The way to fix it would have been to disconnect the controller from the phone, and reconnect it. However, this would not have been allowed, so our driver tried to deal with it. Unfortunately, control was lost after a while, and the robot disconnected at the very moment we had accidentally parked in front of the enemy's ramp, giving them serious penalty points. Our alliance partner had also encountered problems and could only perform similarly to us, which was doing nearly nothing. The enemy alliance won this match and earned their spot as first place.

    Award Ceremony

    At this point we had just lost the finals and most of the team was just downright depressed. We did receive an award for second place alliance but that didn’t mean we would advance to regionals. We also won the PTC Design award (kudos to Max and Tycho for doing basically everything). Thankfully, our two alliance partners were high enough in points that they advanced to the regionals despite us losing.

    A Presentation for the Ages

    A Presentation for the Ages By Ethan, Jayesh, Max, Tycho, Lin, Omar, Evan, Alisa

    Task: Work on our presentation to the judges

    Our main weakness in previous years had been our presentation. This year, we plan to change that. When our team was solely FLL, we practiced our presentations beforehand, so, we're applying that to this year. We've done 2-3 presentations so far and it seems it really helps us. As well, we're making a powerpoint presentation to assist us, giving us information we might forget and providing a visual aid. We also have a basic outline we're following.

    Reflections

    We still need to practice our presentation, as we all aren't great actors like Evan and Jayesh. As well, the making of the powerpoint presentation showed me just how much we need to focus on documenting our work and outreach activities.I hope, by tournament time, that our presentation will be ready.

    Competition Post-Mortem

    Competition Post-Mortem By Lin, Jayesh, Darshan, Max, Tycho, Evan, Ethan, Alisa, Trace, and Dylan

    Task: Analyze our successes and failures in the previous competition

    After a rocky start and finish to our first qualifier yesterday we took today to have fun as a team and look at how we could improve for our next chance.

    Reflections

    Most of our -Need To Do's- are related to becoming more confident with the various tasks that we'll be doing in the pits and during competition. Since we found out about our dead servo 1-2 days after it died, it's obvious we need to have a more rigorous and regular testing program before matches.

    We need to have a pre-flight test program or a short demo that allows the driver, or any member of the team optimally, to test all functions of the robot after the day ends and before the tournament starts. It would be ideal to have a short version of this program to test before each match in the Queue. This would allow us to check if everything is working early on so we have a chance to fix it, or be able to strategize with our alliance if something unexpectedly breaks.

    Our pit crew needs to practice repairs. We had a LOT of trouble trying to fix our robot in the various errors we encountered during the competition. During testing, we broke a couple of our tread pieces and luckily we were able to borrow some treads from another team. However, it took nearly an entire match for us to replace a broken servo for our climber, and gettig it re-aligned took eve longer with the robot. We need to bring backups of our major parts in case of a failure like that again

    During yesterday's competition we didn't do any autonomous because of our back plate and the lack of testing on the existing code. We feel that we would have had a real shot at the higher awards if we had something in place, even if untested and basic. The Innovate team of judges seemed really impressed by our color-blob detection and robot in general really, but we didn't have a program to tie together our tests. This was a major deciding factor. Our autonomous is always our weak spot in matches, and can play a huge role in setting teams apart

    It's a Bloodbath

    It's a Bloodbath By Ethan, Alisa, Max, Darshan, Jayesh, and Tycho

    Task: To dye all our nylon parts red

    Today, we took every single 3D-printed part off our robot to dye them. We used RIT clothes dye, which worked because our parts are nylon. The purpose of dying all our 3D-printed parts red was so that they would stand out from Tetrix parts while demonstrating the robot. It was a bloodbath. The color was the color of the Nile during the Plagues of Egypt. It seemed as if we were in the bible. But, like the Israelites, we prevailed, and came out with really cool red parts.


    Reflections

    Last season, all of the parts on our robot that were 3D-printed were orange, which made us very noticable and memorable. We didn't have anything like that this year, so dyeing all the parts red will hopefully help the judges and other teams remember us at future competition(s). Red is also darker than orange, which means we're more serious. Grr.

    Nolan Qualifier

    Nolan Qualifier By Ethan, Lin, Jayesh, Darshan, Max, Tycho, Evan, Alisa, Trace, and Dylan

    Task: To review our last tournament

    Beginnings

    Due to the team taking a bus with Imperial Robotics, we arrived to the competition a little late. However, due to an organizer running late, the competition itself was delayed, so we weren't significantly affected. Like last time, we had trouble finding a power outlet that we could set up our battery box near, but it turned out there were a couple nearby. We were once again set up right next to Imperial, so we helped each other out while getting ready for the announcement of the match schedule.

    Judging Session

    The judges seemed to have been quite impressed at our presentation, and asked us quite a few questions about our engineering process, something we made sure to highlight. Unbeknownst to us, this would later win us the qualifier's Think award.

    Scouting

    We kept using our scouting strategies this tournament, and kept multiple spreadsheets.

    Dylan and Alisa walked around interviewing teams and watching their matches to log strengths and weaknesses. The spreadsheets they created helped us think about strategies for matches and to decide who to look for possible alliance partners during the finals. Due to multiple mistakes, we ended up 32nd place out of 32! Our failures consisted mostly of connection issues with the phone and mechanical power distribution issues with our cliffhanger servo. Getting our robot working at the end of our regular matches, we impressed many visiting teams with our climbing efficiency. Using a video of our robot's capabilities, Dylan and Alisa convinced the first seed team to select us for their alliance.

    Games

    Even before the games, we were nearly disqualified twice due to our robot barely fitting in the sizing box and our beater bars being called an "entanglement hazard."
    First Game: We got stuck on blocks our very first match. Then, when we got to the mountain, we didn't have enough time to try to make it to the top. Our servo got caught on something and was somewhat damaged.
    Second Game: Our robot lost connection as soon as we started driving.
    Third Game: Our servos continually twitched, so we tried to do a power cycle, but the judges had never asked if we were ready or not and dumped the debris, so we couldn't touch the robot by that time.
    Fourth Game: We got there late and the judges did not allow us to touch our controller.
    Fifth Game: We got teamed up with Imperial. We actually won that one by climbing the mountain while Imperial cleared the debris.
    In the alliance matches, we were partnered with The Fighting Pickles and Synergy. Semi-final Game 1: We got to the mid zone and our alliance parter got to the cliff. Synergy also placed a bunch of blocks in the mountain mid goal.
    Semi Final Game 2: We were switched out for the Pickles this game. Synergy got into the high zone and the Pickles hung off the mountain, giving us a blowout win. So overall, we got 3 wins in the tournament. In our final matches, we experienced much the same result, except for our robot getting into the high zone in our game. Pickles and Synergy wrapped up game 2, giving us first place alliance.

    Awards Ceremony

    We got the Think award for our engineering process slides, a third place Inspire award for our outreach, mostly for this slide

    and a #1 Alliance award. Without the first place alliance, the team would've still qualified through our Think award and Inspire nomination. Even with our last place finish in the regular matches, we showed resiliancy and ended up as one of the top teams headed into the UTA regionals.

    Post Competition Goals

    Post Competition Goals By Jayesh, Omar, Darshan, Max, Tycho, Lin, Ethan, Evan, Dylan, Alisa, and Trace

    Task: Discuss future goals and fixes needed to succeed at regionals and beyond

    In the week following the competition, a Google document was made to discuss sections of building the team can improve on before the regional tournament. There was an outline made where every team member applied to certain sections that they felt needed to be improved upon. The different sections included robot chassis, the presentation, and game strategy. Members voted on item to be improved upon first, considering the benefits or risks of implementation in play, similar to the team's overall idea system. There was emphasis put on the autonomous of the robot and fixing our block intake and deposit system.

    Reflections

    Iron Reign's engineering process lets the team collectively decide on which tasks to prioritize. A collective document gives us the ability to save time in discussion during a practice and refine our ideas. Our plan currently is to have a better autonomous by dumping the climbers, pushing the button, and attempting to scale the mountain. For the robot, we are planning to focus improving our block intake and dumping system so we can get more points than just climbing the mountain. The team now has laid out list of tasks to focus on to prepare for the regional tournament at UTA.

    Actual Postmortem

    Actual Postmortem By Jayesh, Lin, Omar, Max, Tycho, Darshan, Trace, Alisa, Ethan Evan, and Dylan

    Nolan Tournament

    Post-mortem

    We have 1 weekend to get it right!

    Iron Reign

    INTRO

    While we had a great tournament, we had major fails on the robot itself and still have a lot of room for presentation improvements. We have 2 weekends to fix everything and it does not seem like enough time.  Since a majority of us were too tired to meet on Sunday (completely understandable), we need to do some of our post-mortem analysis online.  So every team member must contribute to this document or at least read it.  Be sure to check-in by adding your name to the bottom section. This is additive - you may not delete anything written by other team members.

    PROCEDURE

    1. Read the entire document
    2. Add notes or add rows when you see anything missing from the review
    3. Add your initials in the VOTE column if you want to be part of the solution to the particular problem
    4. Sign-in at the bottom to show that you at least read the document

    ROBOT - Chassis

    ISSUE

    SUGGESTIONS / ALTERNATIVES

    VOTE

    Threw a track 1 time at tournament

    ●      Add side shields

    ●      Add debris deflectors on beater end - 3Design for accuracy

    ●      Experiment with alternate tread materials for longer-term

    Dylan

    Max

    Plow failed constantly

    ●      Make it a flat bar permanently affixed - leave it up to driver to not incur block count penalty (may not work with mountain climbing requirements)

    ●      Redesign servo linkage so it doesn’t slide and can’t come apart

    ●      Fix mounting to hinges with holes through steel so they won’t come apart

    ●      Add taller aluminum plate to steel rod so blocks won’t hop over the plow

    Ethan

    Evan

    Max

    robot size

    ●      try to decrease length/width

    Jayesh

    ROBOT - CliffHanger

    ISSUE

    SUGGESTION

    VOTE

    Elevation control servo burns out

    ●      Replace servo again

    ●      Add another cheap servo to operate a switch that can disable the signal to the elevation servo at the end of the match so it doesn’t burn out while judges are counting up points. [Tycho’s idea]

    ●      Replace servo with a regular Neverest motor and use PID control.  Heavier and more complicated but unlikely to burn out.

    ●      Investigate overheating of servo controller - maybe add a second servo controller.

    Omar

    Tycho

    Extension / retraction doesn’t work after autonomous

    ●      Figure out how to make motor mode switching work as advertized

    Tycho

    Need presets for Extension / Retraction

    ●      Tape ticks-per-meter already worked out.

    ●      Measure common extensions for Mountain and Cliff targets

    ●      Figure out which Mountain mode control buttons to use

    ●      Continue manual override for strange situations

    Tycho, Omar, Darshan

    Need rapid replacement of entire system

    ●      Build second entire CliffHanger assembly including mounted motors.

    Trace

    ROBOT - BEATER BAR

    ISSUE

    SUGGESTION

    VOTE

    Beater Bar didn’t fold up small enough

    ●      May need to go back to sliding mechanism.  Install slide trigger and bungies

    ●      Redesign smaller double bar assembly so it isn’t the full width of the robot (for super-regionals)

    ●      Need a proper way to tuck it under the lowered trough before match start

     

    Trough control servo got all twitchy

    ●      Investigate health of servo.  Replace with digital servo?

    Omar

    No “All Clear Signal” solution. This is the V on top of the mountain.

    ●      Trough, if it rotates more, could serve as a hanging lock and a way to pull down the V (all clear signal)

    Omar

    Blocks fall back into robot instead of out the side

    ●      HDPE backing for trough needs to be re-done so that it will make the blocks fall out the end when inverted.

    Evan

    Blocks get stuck on conveyor belt

    ●      Widen backing sheet (same fix as above)

    ●      Make rollers to guide elastic drive belt around polycarb edges so the belt doesn’t get stuck.

    ●      Cover outside of belt with rubber cement to increase friction with blocks

    Ethan

    Ramp doesn’t work

    ●      Design a working ramp and print it - should interleave with beater tines and create a raking effect to pull blocks up.

    ●      May need overhead rake to guide blocks into trough - prevent overshoot

     

    Max

    ROBOT - DRIVER SUPPORT (reduce demands on driver)

    ISSUE

    SUGGESTION

    VOTE

    Automatic Mountain Alignment

    ●      Add Sharp IR sensors for wall following

    ●      Use IMU to maintain heading on mountains

    ●      Enable mountain mode automatically based on IMU pitch

    ●      Use huMoments to find lines in OpenCV and determine ramp center from that (long term)

     

    Automatic Mountain Scaling

    ●      Sync cliff-hanger retraction/extension with track motions

    ●      Maintain manual override for abnormal situations

    Omar

    Direction toggle

    backwards and forwards

    Jayesh, Max

    Drive team

    ●      Make designated robot team, have subs, but one main squad. We tried to have different people but ended up with same team as last competition. If this works keep the team and have them practice together, otherwise make a permanent team with 1-2 subs when a person needs a break.

    Jayesh,  Dylan, Omar

    ROBOT - AUTONOMOUS

    ISSUE

    SUGGESTION

    VOTE

    We’ve never fully tested it

    ●      Make a schedule for practices with goals for each meeting (include specific number of times to run.)

    Lux

    Button pushing fails

    ●      Redesign pusher plate so spikes are less dense and probably a hexagonal array

    ●      Add servo-based brake on tape so it can’t be pushed back into the reel

    ●      Improve PID on color tracker

     

    Doesn’t have alternate modes

    ●      Mode to climb lower mountain

    ●      Alternate starting location

     

    Pre-match option selection needs to be easy and fast

    ●      Driver Practice--brainstorm in vivo.

     

    ROBOT - Missing Features

    ISSUE

    SUGGESTION

    VOTE

    No solution for triggering mountain climbers

    ●      Bar that extends to either side of the robot at the right height

    Omar, Darshan

    make depositing climbers happen even if in teleop

    ●        involves trough servo working I guess

    Omar

    PRESENTATION

    ISSUE

    SUGGESTION

    VOTE

    Too much dependence on Jayesh and Lin

    ●      Move slides to other speakers

    ●      practice q&a where everyone has designated topics to answer over

    Jayesh, Ethan

    Not very fluid

    ●      practice

    ●      practice

    ●      practice

    Everyone

    Optimize last half of slide desk

    ●      Give practice demo to non-team=members and ask for feedback.

    Jayesh

    Integrate live demo

    ●      how about a chin-up bar?

    ●      Or show the video of the basketball hoop as you are speaking: memorable.

    Ethan Dylan

    Forgot to supply Control award sheet

    ●      Control award needs better graphic

    ●      Autonomous program

    Dylan

    Tournament Prep & Protocols

    ISSUE

    SUGGESTIONS

     

    Packing out for tournaments disorganized, items forgotten,people stressed

    ●      Generate a reusable checklist & post to blog. Classify categories/storage boxes.

    ●      Designate boxes for specific items/categories  and attach labels of contents

    ●      Pack and prepare the night before

    ●      Give each person specific assignments/responsibilities

    ●      Have a master list of all boxes that need to be packed.

    Lux Dylan

    Lin

    Last minute journal printing

    ●      Deadline for journal 48 hours before the competition.

    Lin

    Battery maintenance haphazard

    ●      Develop a solid protocol

    ●      Appoint a Charge Czar to be responsible for maintenance of batteries and tracking the battery charging box before and throughout tournament.

    Lin

    Develop a memorable brand or “team spirit” concept

    ●      Iron Reign as Roman Legion--develop a standard to carry into competition (probably for team in the stands)

    ●      Update photos/banners to current year.

    ●      aluminum foil hats (crowns)

    Darshan

    Alisa

     

    Check In

    Name

    Sections I worked on

    Coach

    got it started

    Assistant Coach & Pizza chef Lux

    Organization/tournament

    Jayesh, Max, Lin

    mechanical+pres+robot team

    Ethan, Evan, Dylan

    Presentation, Beater Bar, Chassis

    Omar, Alisa, Trace

    cliffhanger, beater bar, driver support, missing features

    Darshan

    cliffhanger, missing features

    Tycho

    Cliff servo

     

     

    Presentation Runthrough

    Presentation Runthrough By Lin, Max, Tycho, Darshan, Jayesh, Omar, Alisa, Ethan, and Evan

    Task: Go through presentation with Mr. Gilkes

    Our mentor Mr. Gilkes was kind enough to listen to us do a rough presentation run-through at practice. We hadn't looked at the presentation since the competition 2 weeks ago, and it was pretty obvious we were under-practiced. We swiped through the slides before starting to get our bearings.

    Reflections

    We started by making sure everyone knew their cues, and had a short flip through before a mock presentation. Throughout the presentation Mr. Gilkes gave us advice on specific aspects of our presentation, such as adding detail on the PID slide, making sure we use the words "integral" and "derivative" to get the judge's attention, maintaining eye-contact throughout, and making sure to point to the robot when discussing parts.

    While the specifics were extremely helpful, this exercise showed us that we were extremely out of practice. Many of us left out the most important parts of our slides, like Tycho and the important uses of modelling the robot, Jayesh and how the professional engineers at our Gyro talk gave us tips on IMU's in our price range, etc. It was our presentation that won us the Think award last competition, and it's important we keep our delivery as accurate and on-point as possible.

    RIP FTC 2016

    RIP FTC 2016 By Jayesh, Omar, Max, Tycho, Lin, Darshan, Alisa, Dylan, Evan, Ethan, and Trace

    Task: Review the events that occurred at the FTC Regional Championship

    Link to postmortem document

    Iron Reign had a fairly successful run at our regional tourament, much more so compared to last year. Despite reaching the semi-finals, we were unable to advance past the competition to super-regionals. We had many strengths of ours shown through the day, but also committed errors that inevitably caused our loss at the end. At the judges meeting, we did a decent job of eplaining our value as a team to the judges but committed a huge error in not showing demonstrations on our robot and videos over its functions. This made our presentation have less of an impact in that the points we were making had no empirical vale because there were no real world examples to what we were saying that the judges could see. We were pretty successful in the robot game, holding the first position in the rankings for the majority of the tournament. Going into our third match, a weird error caused our robot to not transfer power from the battery to the robot system and disqualified us from the game. In our last match the error persisted and didn't allow us to climb the mountain, which was our main source of points and we ended up outside of the top four teams. In the selection of alliance partners, we were wanted by the first and second place alliances for second pick but were picked up by the fourth place alliance first pick. Through our match with the first place alliance, we lost by a small margin and our other partner with our alliance captain were blown out in the second match, taking us out of the tournament.

    Reflections

    We had much more success in our regional tournament this year compared to last year, but our luck wasn't with us this year as a few small errors prevented us from moving on to super-regionals. We now look forward to the UIL tournament and will continue holding practices to prepare for that competition in the summer. Some errors we must look at are in ensuring the prevention of random errors in the robot for the game and tightening up our presentation to both convey our team value and provide real-world example to the judges to help connect the two aspects of the team. This will give us a much better chance to succeed in both the robot game, both scoring blocks and climbing the ramp, and help show the judges how are team works and has overall strength compared to other teams. Learning from our mistakes at regionals, we will grow and look to have great success at UIL.

    Fort Worth Maker Fest

    Fort Worth Maker Fest By Jayesh, Omar, Max, Tycho, Lin, Darshan, Evan, Ethan, and Austin

    Task: Show both adults and children benefits of robotics and past work of the team

    Iron Reign was invited to present at the annual Fort Worth Maker Fest at the city's Museum of Science. We spent the day showing off our competition bots and other robots that we have created over the years. People were especially interested in our innovation with climbing the mountain and using simple every day objects like tape measures to carry our huge and heavy robot up several feet. We were approached by multiple adults with robotics experience, even one of our previous judges, and were told of how they were impressed with our level of expertise. We also fascinated multiple children with the robotics, with their enthusiasm in trying out the bot in a few mini games and seeing our other robots, such as the balancing robot, hopefully opened their eyes up to possibly pursuing STEM careers in their futures.

    Reflections

    Our opportunity at the Maker Fest to present to multiple generations of passers-by helped us appreciate the level of robotics knowledge and technique that we have acquired over the years, both as individuals and as a group. To be praised by both professionals in the field and see the level of interest we imparted to multiple children, we recognized that what we have done and will continue doing has meaning, not just for us, but for our community. We had some fun adventures at the museum, including an intense discussion of the DC and Marvel Universes with a few of our booth neighbours and balancing Kibosh on a hover board while attempting to steer(future content incoming).

    Robot On a Hoverboard - Try 1

    Robot On a Hoverboard - Try 1 By Lin, Max, Tycho, Darshan, Omar, Evan, Ethan, and Jayesh

    Task: Try to drive the hoverboard with the competition bot

    In the middle of Saturday's event we decided it would be a GREAT idea to put the competiton robot on the hoverboard and try to drive it around. Theoretically if we got it centered correctly it could only drive forward and backwards. We could extend the cliff hanger to move our center of gravity forwards, and then retract to bring it back.

    Reflections

    We were able to make the board speed up by tilting the cliff-hanger out and extending it, but we couldn't control it enough to completely stop it or keep it steady. We believe that the robot frame isn't completely rigid and is torquing at the center, making the robot unbalanced left/right. Since it's only slightly off balance we can't really adjust it by hand. It seems doomed to drive in circles forever. We tried to turn the robot to a correct alignment by driving with the main treads a little, but the change in center of gravity was too dramatic. The robot quickly veered into Evan, who was sitting nearby.

    Day 2 of iMake

    Day 2 of iMake By Lin, Max, Tycho, and Omar

    Task: Continue presenting at iMake

    Day 1 was a huge success, and we carried that over into the Sunday presentations too. There were a lot of common questions we noticed from Saturday, including levels of robotics competitions and the LEGO EV3 system, and we were able to answer these with more clarity after hearing them so often. A few papers were set up on our table outlining the various FIRST competition levels. These helped us easily reference the multiple acronyms FIRST uses for everything, which can be confusing to anyone who hasn't known and competed under them since they were 11 years old.

    Reflections

    Like Saturday, we interacted with what felt like a constant stream of people. Many were families with kids in elementary and middle school with varying experience in robotics. Some kids had competed in FLL or knew those who had, while others hadn't heard of the systems before. The balancing bot "Gyro Boy" was a good attention grabber when the main FTC bot wasn't doing anything, and it was helpful to compare the two, how Gyro Boy used graphical programming and was completely autonomous, while the main bot used a text language but was controlled by a driver. This almost immediately prompted the kids to ask if they could drive, and Omar showed them the ropes. Younger kids were only shown the drive controls, while the older ones could be taught some of the more interesting tape measure commands. Since the hand was still taped onto the cliff hook many took the opportunity to wave to their siblings and gave high fives to anyone near. However, the robot seemed to be disconnecting more often than it had Saturday, and was hidden to the side so it wouldn't be asked about.

    When we brought out Argos, the color following robot, it seemed like every other volunteer took a minute or two to pick up the target and watch the camera follow the movements. Tycho, Max, and Omar traded off on the controls and occasionally let Argos drive too, in order to show how he could back up when too close, and catch up when lagging. It had taken us the beginning of the day to fix the phone mount, but the extra effort was definitely worth it. However unwieldy Argos may be (he is definitely suited to outdoor/large open area events) he is definitely a crowd pleaser.

    Hoverboards and PID

    Hoverboards and PID By Lin, Omar, Darshan, Tycho, and Max

    Task: Continue with the Hoverboard and tweak PID

    After the long weekend last week, today was a reasonably relaxed practice. We decided that we could work on anything, as long we stayed focused. The two main foci were the -Robot on a Hoverboard- and fine tuning our PID for autonomous.

    Reflections

    We experimented with balancing the robot more evenly on the hoverboard to keep it on a straight path and then getting creative with the controls to speed it up. We found that we could effectively rocket it forward by extending and angling the cliff climber while flipping the block dispenser forward at the same time. While it was easy to send the robot forward, there was little we could do to recover outside of just pushing it back by hand. This created a game of hot potato as we passed the robot around from person to person, but was ended rather abruptly when it careened into the table.

    If we're going to get our autonomous functional for UIL then we need to fix our PID. We used the parts of the current autonomous demo to check the straight line gyro drive, and went from barely correcting, to crazy oscillations, to a good level in between. This took a decent amount of tweaking for K-proportional, and when we felt we were straddling the line between too much and too little correction we messed around with K-Derivative to be better prepared. After the initial gyro guided line the robot is programmed to do a 45 degree turn towards the beacon, and then fine tune its angle using color blob. The color blob detection seemed to track the selected color accurately, outlining the area in neon green, but for some reason didn't turn to aim at it. If anything it turned away from the beacon. We found a mistake in our error calculation, where leftover error wasn't properly cleared before the guided turn, that we believe caused at least some of the odd turning behavior.

    Sumobot Tips and Tricks

    Sumobot Tips and Tricks By Tycho

    Let's assume you are building a LEGO Mindstorms or Vex IQ based Sumobot, but you want to skip some of the basic mistakes beginners will make. Here are some tips and tricks.

    • Know the rules. It's silly to get disqualified because you didn't pay attention to the rules. Know the size and weight limits. Know the allowed construction materials and techniques. Know the startup behaviors. For example, your robot must not move for 5 seconds after you activate it. This simple rule has tripped up many competitors. And make sure you get to the competition on time to register and get your robot inspected for weight, size and any other requirements.
    • Stay on the field. For this you will almost certainly need at least one light sensor to detect the ring's white edge. We highly recommend two such light sensors placed at the front corners of your robot. This will increase your chances of detecting the edge when coming at it from an angle. You can also adjust your retreat behavior so the robot will be less likely to exit the ring. A retreat behavior usually consists of backing up and turning back toward the center of the ring or scanning for your opponent. You can back up curving away from the sensor that detected the edge first. A third edge detector could be placed at the back of your robot - but this is almost never needed. It would be only useful if you have a behavior that could trigger backing up when the rear of your robot is close to the edge. Theoretically you could detect the edge when being pushed backward by your opponent and try to twist out of the way, but we've never witnessed anyone pulling off this advanced behavior.
    • Build to the maximum weight for the competition. If your bot is heavier than your competitor's, you will have an advantage in traction and with inertia. You will be harder to push around and can more likely push them around. We've seen teams use extra unpowered motors to help maximize weight. Use a scale to be sure you don't exceed the allowed weight.
    • Build compact. Your robot should be as small and dense as possible. Air gaps within your robot and on the exterior should be kept to a minimum. The larger your robot is, the more likely that your opponent will contact a part of your robot far from its center of mass. When it pushes against this part, it will very easily turn your robot in a different direction. Most likely this will be to your disadvantage. You will also be very unlikely to push your opponent in the correct direction when in this condition. Also, the rules say that the first robot to have any part touch the surface that the ring is sitting on is out. If you have a large robot, it is much more likely that part of it will touch-out.
    • Build Low. The lower your center of gravity, the less likely your opponent will be able to topple you or force your wheels to lose traction.
    • Build a Skirt or Shield. A Sumo Shield is a smooth ramp that decends from the front of your robot down to the surface of the ring. The purpose is to create a wedge that will go under your opponent when you come into contact. The wedge will lift your opponent, transferring their weight to your robot. As a result your wheels can increase traction while theirs will decrease. A skirt is a shield that surrounds your entire robot, making it look like a cone or pyramid, so it works wherever the contact point is. But a skirt can be much harder to engineer. They have to be very sturdy, not impede your own movement, and not get in the way of any sensors you might use. Skirts and Shields also increase the size of your robot, so you have more risk of touching-out. Particularly if you have a hinged shield. Hinged shields are great for staying as low as possible to get under your opponent, but they need to be prevented from dropping down when over the edge of the ring. A floating skirt is a wall built around your robot that is only loosely connected or not connected at all to your robot. Instead your robot pushes the skirt around the ring and the skirt's weight keeps it flat against the floor. This makes it unlikely that your robot's motions will create a gap that your opponent can get under. And if your opponent does get under the skirt, they haven't necessarily started lifting your robot to steal traction. You could also have a sensor that detects if your skirt is lifting and back away when that happens.

    We've seen well-engineered robots with only edge sensors win big competitions. A solid, heavy and low robot with a great skirt will conquer when none of its opponents has the same features. Once you are in this category you can consider advanced tips.

    • Locate your prey. Actively seeking your opponent creates an advantage. It's also fun. Usually a forward-facing ultrasonic sensor is a good choice. You can scan for your opponent by making your robot turn in place while checking the sensor to see if it detects something close. Calculate the maximum distance your opponent can be from your ultrasonic sensor. Simply place your robot backed up to the edge of the ring and measure the distance from the front of your ultrasonic sensor to the opposite edge of the ring. Subtract the minimum size of an opposing robot. For LEGO sumos that would be about 6 in. or 15 cm. If you see anything closer than this you can assume that you've detected your opponent. (Or you've detected humans if you've failed to keep everyone at a proper clearing distance from the ring, including the operators) Continue your turn for a fraction of a second and turn on your charging behavior. Make sure you are aware of the minimum distance your sensor can deal with. You will probably want to recess your sensor from the front of your robot so that it will continue to register your opponent even when you are right up against each other.
    • Organize your software. Beginners will often design software that will do one thing at a time and be unable to react until those things are complete. For example, on detecting an opponent, charge for X rotations of the wheel. While the robot is trying to complete those rotations it's not looking at sensors, so it doesn't detect the ring and drives off if it was too close to the edge. We will post a complete lesson on designing software that always lets the highest priority behaviors (back-away-from-the-edge) interrupt the lower priority behaviors (scan-for-prey).

    LEGO (Plastic Fastener) SUMO Workshop and Competition, Coming April 24th and May 14th

    LEGO (Plastic Fastener) SUMO Workshop and Competition, Coming April 24th and May 14th By Tycho

    LEGO Sumo returns with a free Sumo Workshop on Sunday April 24th followed by the Dallas Personal Robotics Group's Roborama Sumobot competition at the Dallas Makerspace on May 14th.

    Here's what the competition looks like:

    A basic sumobot is a simple build. Here is an example to get you started: http://nxtprograms.com/mini_sumo/steps.html

    If you have multiple NXTs or EV3s, then your team could make multiple sumobots. Typically 1, 2 or 3 students will work together on a sumobot entry. Start by making your robot charge forward while staying in the ring. If you get that working take the next step and add an ultrasonic to hunt your opponent. Plastic Fastener (LEGO or VexIQ) Sumobots need to fit within a 1 foot square footprint and weigh under 1200 grams. Full rules can be found here: https://dprgblog.wordpress.com/rules/

    Teams are also encouraged to consider the novice line-following competition in the same rules document. Students compete in Roborama for free. Prizes include full robot kits. There is room for only 40 sumo robots, so please register soon: https://dprgblog.wordpress.com/pre-registration/

    Come to the Sumobot Workshop Sunday April 24th from noon to 4pm at the Dallas Makerspace. DPRG members and members of FTC Team Iron Reign will be hosting an open sumo workshop at the Dallas Makerspace in Carrollton (map). Bring your sumobot, parts and laptop and you will find help with build and programming. Sumo rings will be provided. Line following help will also be available. An adult needs to accompany and remain with each team of students - this is not a drop-off activity, but parents can tour the Makerspace. If you can't make the workshop, at least check out our Sumobot Tips and Tricks. Add to calendar

    And don't forget the competition itself on Saturday May 14th from 10am to 4pm: https://dprgblog.wordpress.com/

    New tread material test

    New tread material test By Lin, Tycho, Max, and Evan

    Task: Initial tests for new tread material

    The standard Tetrix treads and tread inserts aren't nearly as sturdy as we would like. When they snap it's a real effort to put back together stretched over the idlers, and the inserts peel apart, bringing our traction down. The new material is a rubber conveyor belt material from Andymark, and the underside track chain is 3D printed in nylon to mesh with the track drive gears. Outside: high strength high traction rubber Inside: 3D printed nylon to mesh with gears

    Reflections

    We first glue the nylon sections to the treads, laying them out flat so that some of the nylon hangs over one end and let them set overnight. The next day we bend it into a loop and glue the overlapping nylon and rubber together, and then let that set overnight. This isn't strong enough alone, so we ended up using the awl (used previously in Cascade Effect's game) to stitch at the boundary between two nylon strips, sort of like a thread staple.

    Initial tests showed that this design was a huge step up from the tetrix treads, and we're working to make another to complete the pair. One downside is that this design is a much thicker design, and rubs on the underside of other parts that weren't previously a problem.

    Mobile Learning Lab Part 1 - Demolition

    Mobile Learning Lab Part 1 - Demolition By Evan, Max, Tycho, and Austin

    Task: Redo the inside of the recreational vehicle

    Mr.Virani recently aquired an RV so it could be used as a mobile learning center for the Dallas City of Learning this summer. To convert it from someplace you might live on a long road trip to somewhere you could teach science and technology to children means stripping out carpeting, removing walls, and laying down easily cleanable floors and standing height work benches. We also have to put in a lot of computer equipment and 3D printers that Big Thought is providing. It's going to be a long proccess.

    Max and Tycho have completed a lot of demolition. They've removed the bed revealing a strange trap door that we need to look under. The table and chairs are gone as are some of the cabinets. The sofa was metal framed and too big to move out of the door or windows, so they had to cut it apart with bolt cutters and grinders. They ripped out most of the bathroom relying on the big sawzall. The mess of remaining plumbing and exposed electrical wiring looks very scary. And the pile of demoed materials has already grown quite a large:

    Dallas City of Learning

    Dallas City of Learning By Ethan, Evan, Jayesh, Omar, Lin, Max, and Tycho

    Task: Teaching children how to use robots

    On 18 June, we went to the J. Erik Jonsson Library to inspire children to hopefully go into STEM-related careers. We were invited for their annual City of Learning event. We talked to about 200 people about robotics and most loved it - especially children. We showed them Minion, Argos, the ball-flipper, and Geb (the new name for our FTC bot).

    We presented alongside a kids' robotics sponsor and Polyprinter.

    Reflections

    We got a good amount of people and got a good amount of kids interested in our robots. It was fun to talk with the other vendors at the fair, interested parents, and hobbyists.

    Mobile Learning Lab Part 2 - Roof

    Mobile Learning Lab Part 2 - Roof By Tycho, Max, Matthew, and Austin

    Task: Clean the roof of the RV

    We'd noticed that the roof was very grimey looking from the small strip you could see at the top of the side walls, but we hadn't been up there to look at it. Finally climbing the ladder we confirmed it. The roof is a very dark brown. We believe it is simply dirt that has caked into the sticky/gummy surface. It's probably not supposed to be so sticky - it kind of seems like a layer of decaying caulk laid over the rubber roof. We confirmed that this layer should be white. It covers the black EPDM rubber roof that serves as a weather barrier. Because the roof is so dark, it absorbs tons of sunlight, making it much hotter inside. We needed to clean it.

    So we spent today powerwashing the roof. In the morning Matthew (from SEM's FRC team) came over with his father's power washer and we got about 1/2 of the roof partially clean. When Matthew had to leave at noon, Mr. Virani purchased another more powerful washer and we continued washing until dark. Austin, from the other FTC team at our school joined us in the early afternoon. So now all three robotics teams at SEM have contributed time to the mobile learning lab.

    Here you can see the dramatic difference that powerwashing has made. We hope this will cool the vehicle enough that we can operate with only the roof airconditioners so we can turn off the main engine while on station.

    Mobile Learning Lab Part 3 - Flooring

    Mobile Learning Lab Part 3 - Flooring By Evan, Max, Tycho, Dylan, Ethan, Lin, Darshan, and Austin

    Carpet ripping is not fun. The carpet is tacked down with so many staples that is is not easy to remove. It tends to rip around the stables leaving nubs of fibers and then we have to attack the stables with pliers and staple pullers. Getting it out from under the edges of walls and the slide out is really hard. And we've gouged the subfloor where removing the old kitchen and bathroom vinyl required heavy work with scrapers. We tried putting down some vinyl planks, and those are much tougher to work with than you might guess. We only got a small portion of the floor demoed today. It's kind of daunting how much work this is. In the end it will be all worth it because we will have provided a place for children to learn skills that will help them in their future working lives.

    Mobile Learning Lab Part 4 - Update

    Mobile Learning Lab Part 4 - Update By Ethan, Max, Tycho, Lin, Jayesh, Darshan, Austin, Matthew, Evan, Dylan, Omar, and Trace

    Task: Covert a 1998 RV into the Dallas City of Learning Lab

    The RV exterior


    We have finished the majority of the renovation of the Dallas City of Learning Lab. We've finished rebuilding the roof, going throught the plumbing (including the suspiciously secretive water tank), and also replacing the entirety of the flooring.

    to

    The RV interior

    to

    A full tour of the RV pre-renovation can be found here.

    Changes

    • Removed restroom
    • Replaced carpet with laminate
    • Added widescreen TVs
    • Added black workbenches
    • Removed table
    • Removed cabinet to make room for more technology
    • Removed some 90s decor
    • Removed bedside tables and cabinets
    • Added 3D printer
    • Removed bed
    • Removed couch
    • Removed 90s decals
    • Added shelving
    • Cleaned a decade of muck off of it

    Reflections

    We've put in >250 hours working on this RV. It's going to become a mobile robotics lab so that we can inspire kids to enter STEM-related careers and hobbies. Uaing this van, the team can reach out to children who otherwise would not have the oppurtunity to learn how to build and program robots, as well as gaining skills related to that, such as using a 3D printer.

    Turn Up! at Frontiers of Flight with DCOL

    Turn Up! at Frontiers of Flight with DCOL By Janavi, Darshan, Jayesh, Lin, Max, Tycho, Omar, and Austin

    Inspiring 1,000 People to Turn Up with STEM

    Written by Janavi Chadha

    The Dallas City of Learning Organization held a Turn Up event at the Frontiers of Flight Museum, where we staffed the Mobile XPerience (MXP) complete with laptops, 3D printers, and LEGO SumoBots. Outside the vehicle, Lin and I taught kids how to create 3D models of houses using SketchUp. Then we let the kids bring their designs to life by designing and 3D-Printing keychains.

    On board Max managed the bank of four 3D printers while Tycho and Austin taught kids to build virtual structures on our Minecraft server with the education version of the software.

    Out to the side of the MXP, we set up a ring for the sumo lego robots to battle in, teaching the kids how robots can be programmed to react to the world around them. Jayesh, Omar and Darshan manned that station and also demonstrated our FTC competition robot.

    Omar ran minion (our robot walking companion) around the museum Pied-Piper fashion, leading kids back to our activity stations in and around the vehicle. On the way he taught kids to operate the robot with its touch and rotation sensor based leash. At one point he took minion over to challenge the airport's 700lb bomb disposal robot. That robot was not impressed.

    A few more pics of the MXP in the museum while we are striking the exhibit:

    Person-hours note: The night before Max and Tycho spent 5 hours getting the vehicle ready.

    Mobile Learning Lab in Action

    Mobile Learning Lab in Action By Lin, Max, and Tycho

    Task: Deploy the Mobile Learning Lab to camps and teach kids

    The RV has been fully remodeled and set up with netbooks and 3D printers, so we have been making the rounds and teaching at camps and events. We try to limit the number of kids on board to under 15 or 12 for safety reasons. It'd be nearly impossible to fit more kids and be able to effectively teach.

    Reflections

    When we first drove up to one deployment of the RV there were a lot of kids staring, because honestly who wouldn't; the RV is huge and bright. We couldn't set up fast enough before people wanted to come inside. We split the group into modelling and robotics and got started. In the back, robotics kits were scattered on the floor, and groups of two or three were following a video to build a 5 minute bot (it generally took them longer though). When the bots were built we had a crash course in the EV3 programming environment and helped them think analytically about how they wanted the robots to behave when on different sections of the sumo. We didn't give them a program to use, they told us what to put. The result? An exciting free for all complete with screaming cheers and flipping of bots (video above).

    Max and I led the modelling with the basic "build a house" tutorial below. After they got the hang of that we set the software sizing up so they could make a keychain and print it. Some people got really into their house and ended up emailing the file to themselves to continue later.

    Robotics UIL 2016

    Robotics UIL 2016 By Ethan, Evan, Lin, Darshan, Jayesh, Janavi, Trace, Max, Tycho, and Omar

    Task: Compete in UIL Robotics in Austin

    A bit of background:
    UIL is a Texas-specific organization that hosts competitions in both academic and athletic pursuits. This year, they ran a pilot program for Robotics, using the FTC rules and field from Res-Q. About 72 teams competed in the FTC-based competition, which then was split into two catagories. Unlike regular FIRST tournaments, the awards not earned by competition are given through nomination by other teams.

    • Mentor Recognition Award
    • Leadership Award
    • Creativity in Design Award
    • Gracious Professionalism Award
    • Play of the Day Award
    • Safety Award
    • Team Spirit Award
    On Wednesday, July 27, the team came down in a charter bus, with the MXP. That night, we did some last-minute working on the robot. [insert image here] The next day, we woke up early, and headed down to the Austin Convention Center. We pitched a tent and blow-up couch, and generally set up. We used the competition as an opportunity to promote our twitter. The first match, we did horrible. Our robot dug itself into the ground as if it were near the trench-lines of WW1. After giving us its best WW1 re-enactment, it started jettisoning parts, similar to how a Space Shuttle jettisons its external tank. Matches 2-5 were mostly uneventful. We only won two of them, but there were no similar dramatic happenings like match one. After match one, we atttempted to present our team to other teams, as we brought in a TV. A quick list of notable things that happened in this time period were:
    • Bringing one of the 3D printers inside and printing parts
    • Making a last-minute climber-holder
    • A bird flying into the convention center
    • Our presentation computer updating to Windows 10
    • Our robot falling off the mountain

    On Friday, we were not picked to be in the final matches, and unfortunately, we were not picked for any awards. We did, however, meet up with our school's FRC team and say hi, as their competition was starting. After the awards ceremony, we decided to leave. On the way back to the hotel, we noticed the Texas Workforce Commission building, which is one of our sponsors. So, we parked our RV up by the side of the building, and walked in. We talked to the receptionist, and within a few minutes, one of the TWC execs came down to talk to us and take pictures. We gave them a tour of our RV as well, and they seemed impressed, even if it was in post-tournament disarray.

    Reflections

    While this tournament was not our best tournament by a margin the size of the Mongol Empire circa 1279 C.E., we were able to interact with teams in Texas that we normally would not have, get exposure for the MXP all the way down I35, and talk to our one of our sponsors in person. As well, it gave us experience for the future and was a great teambuilding activity. If we get invited to UIL next year, we know what to do to win.

    Meeting with The Texas Workforce Commission

    Meeting with The Texas Workforce Commission By Jayesh, Omar, Max, Tycho, Darshan, Evan, Ethan, Janavi, Lin, Trace, and Dylan

    Task: Connect with our sponsors in the Texas Workforce Commission

    Following the conclusion of the state UIL competition, Iron Reign noticed the Texas Workforce Commission building. Given that the organization was one of the team's generous sponsors, we wanted to show our gratitude and headed into the building. Upon greeting the clerk, we made it apparent that we didn't wish to disturb anybody, but wanted to see if anyone was available from the Commission who we could thank for helping us with FTC. There was an enthusiatic response, as immediately several officials, including Commissioner Ruth Hughs came down to meet with us (I guess we got really lucky with our timing). Upon inquiry, we instantly gave them a brief overview of why we were in Austin (#UIL) and what our team was built on. We spoke on mechanical aspects, such as the robot itself, and also spoke about our several outreach events. We answered questions about FIRST and the general consensus was impressed with the dedication and work we had put into the competition and team. As a tangent to the amount of work we had put into FIRST, Hughs spoke to us about expanding the role of organizing and growing the general workforce. She told us how it was the work of people like us that made her job of organizing us worth it. She also advised we meet with Chairman Andres Alcantar, a big supporter of STEM, as he wasn't in town. After talking about all these topics, we invited the officals to come inside the Mobile Tech Xperience and see what it was like for the kids we taught using the vehicle.

    Reflections

    Getting the opportunity to meet with one of the larger organizations in Texas was very educational for us. While we helped the Commission better understand the investment they've made in FIRST, we also learned yet another aspect of our future in the American workforce. The connection we built with the Commission emphasized the role of STEM and robotics in our future. Driving the robot around, while showing off the multiple components on it, we gave the officials plenty to think about in terms of future opportunities. We hope to take the lessons learned at the TWC and use it to build on our future endeavors. Thank you to the TWC for having us!

    Outreach and Sponsors

    Outreach and Sponsors By Lin, Darshan, Jayesh, Omar, Ethan, Evan, Janavi, Tycho, and Max

    Task: Analyze how finances effect recognition

    It's always a challenge to convince sponsors that we are a worthy team for their grants, visibility in FIRST and the public makes it easier. Teams whose schools have the finances and space to host a tournament are recognized by their peers and even get a boost to Regionals. However, our space is limited, and we wouldn't be able to pull off a quality event if we tried to host. Because of this our opportunities to get noticed by frequent veteran judges are limited, and we step up in outreach to make up for this.

    Working with the Mobile Tech XPerience has been a huge amount of fun and a great learning experience, while being extremely visible to say the least. The MXP works to provide equal access to STEM technology to disadvantaged neighborhoods, and we teach modeling and NXT robotics. We get first shot at staffing the vehicle because of how closely we worked with them in the creation. The team was recognized in a CW33 Class Act for our efforts, and this is an incredible help to our sponsorship efforts. We want to tell potential sponsors that Iron Reign is a team that will put everything into getting out and interacting, and we have the evidence to show that.

    Planning Meeting

    Planning Meeting By Janavi, Max, Tycho, Jayesh, Omar, Darshan, and Lin

    Task:

    This week we met to discuss the origination of the meetings for the upcoming year. We decided that for the first fifteen minutes of the meeting we would outline our plans for the meeting. Then during our lunch break we would get together once again to discuss the progress that we have made and what we will move onto by the end of the meeting . By structuring our meetings we will be able accomplish more in the same amount of time and at the end of the season we will be able to better analyse our accomplishments.

    Reflections

    Organization has always been a challenge for Iron Reign and we hope that by doing this we will be able to eliminate any periods of time during the meeting where people don't know what work they should do.

    FTC Kickoff 2016

    FTC Kickoff 2016 By Ethan, Evan, Max, Tycho, and Omar

    Task: Go to the FTC 2016 Kickoff to preview the new Velocity Vortex challenge

    This Saturday, we ventured down to UTD to watch the unveiling of the new FTC challenge, and collaborate with other teams. The main change we noticed is that this year, it seems like there is a greater emphasis on league play instead of just doing a qualifier. To go to regionals, there seem to be three options:

    1. Do league play and go to one qualifier
    2. Do league play only
    3. Go to two qualifiers (But you may have to give up your spot to other teams)
    Other minor changes for this year are:
    • Adding the Nexus 5 to the list of approved phones
    • New(hopefully less buggy) version of the FTC controller app
    • Ambiguous rule about not damaging the field
    • Red/Yellow card penalty system
    The new app is great for our team, our Adafruit IMU is now officially supported, so we don't have to use the Swerve Robotics library anymore. As well, you can now configure phones through the driver's station, making testing faster. FIRST added support for many new sensors and we are intrested in trying them out. The new challenge is radically different from last year's challenge - strategies this year will mainly focus around defense. Our preliminary ideas are:
    • Standing at the ramp and circulating particles around it
    • Beacon defense - it seems to be the easiest way to get a lot of points
    • Capping the "vortex" with the yoga ball
    • Spinning the vortices around so fast that no team can score
    We are considering using Pele as our robot, as it can already shoot balls and has an intake system, we'd just need to add a beacon-poker and lift to cap the vortex.

    Reflections

    This year's challenge requires us to "think outside the box" in order to progress. As well, we really need to work fast, as if we do league play, the competitions happen sooner that the traditional qualifiers.

    MXP Transportation

    MXP Transportation By Darshan, Lin, Jayesh, Omar, Ethan, Evan, Janavi, Tycho, and Max

    Oh the places you'll go!

    We attend many events throughout the DFW area, taking our robot and whatever else we need along with us. This has often puts a strain in how much we can actually bring with us to FIRST events and STEM events in general. Over this past summer the team helped refurbish an old 90s RV to use as a Mobile Tech XPerience to drive around and help bring STEM to kids. Since the team put in the work to revamp the RV and worked so closely with the nonprofits involved, Big Thought gave us first dibs at using it when it's not out on deployments during the weekends. The MXP gives us a way to transport us and our materials to places that would otherwise seem unlikely. We can also use the MXP in collaboration with DISD to fund trips out of state and other competitions.

    With the MXP at our disposal, bringing it to events can not only provide benefits to ourselves but also to other kids and teams. Plus it looks cool.

    First Official Practice of the Season

    First Official Practice of the Season By Omar, Lin, Jayesh, Darshan, Ethan, Evan, Janavi, Max, and Tycho

    Task: Pull ourselves together for the new season

    At this practice, our goal was to get everybody familliar with this year's game, Velocity Vortex, and to brainstorm some ideas for this year's robot. Some organization also needed to be done in terms of parts (everything is everywhere and nowhere at the same time) and also in terms of this year's meeting structure. Last year was somewhat unfocused and chaotic and we need to get a better grasp of things.

    Reflections

    We managed to get a decent amount done today. Jayesh described our new meeting structure: we begin with a group discussion of what we'd be doing that day, then would separate and work, then around mid-meeting we'd eat some food and while doing so talk about what we've done, then separate again and continue working. Hopefully we're able to stick to this schedule.

    Jayesh and I also made a small table of possible wheel base options, such as using either Mecanum wheels or returning to the omni-wheels of yore. Evan and Darshan disassembled the mountain from last year's field and put it outside near our tent. We discussed several things, such as some interesting rules about how our robot will not be able to grasp onto any part of the center structure, and therefore could not stop it from rotating by doing so. We also discussed League play, and it's advantages/disadvantages. A large weakness of ours is lack of testing, and these League meets would definitely let us get some more practice in before the big qualifiers.

    Evan and Tycho both tried to explain designs for this year's robot that they'd thought up. Evan, by using some loopholes in the rules, designed the premise for a robot that would park itself right in front of our Corner Vortex, having with it at least two Particles, and would cycle them through the Vortex over and over again. Even though each Particle that goes through would only be worth a point, Evan argues that these will add up since his design will be quick at cycling. Tycho's idea focuses instead on the Center Vortex; he explained that his robot would have ball intakes on opposite sides of the robot so direction wouldn't matter (unlike last year's robot, Geb), and would have some sort of mechanism in the center of the robot that would shoot Particles up and through the Center Vortex. So far, most of us are aligning more on Tycho's side of the design wars, but Evan's persistence might win us over. Who knows.

    One other thing Jayesh, Evan and I decided on (question mark?) is a general plan for this year's autonomous that we 100% need to work on to be successful: the robot will hit the beacon buttons, then move to the center of the field, hit the cap ball out of the center, then park in the center (not neccessarily fully). We thought this was realistically possible given the time that we have until competition.

    2016-2017 Robot

    2016-2017 Robot By Ethan, Omar, Jayesh, Evan, Tycho, and Max

    Task: To build the robot for the 2016-2017 season

    As much as we love our robot from last season, Geb, we need a robot that is better able to fit the season's challenges. Our needs for this year are:

    • Manuverable and fast
    • Able to play defensively
    • Can support attachments such as an intake system
    For manuverability, we decided to use mecanum wheels.

    The cool thing about these wheels is that they enable you to strafe side to side, instead of turning. However, they do require different coding than our normal wheels.


    To play defensively against other robots, our robot must be decently sized without falling into the same trap of last year, where are robot barely fit into the sizing limits, and in one tournament, did not at all. As well, it must be heavy enough to not be pushed out of the way by other robots, especially due to our strategy this year (blog post on that later).

    Finally, our robot must support attachments. Currently, we are considering a launcher, and intake system, a circulation system, and a yoga ball-lifter. And, to accommodate all of these attachments, our basic frame is a re-enforced square frame.

    Experimenting with a Mecanum wheel chassis! #ftcrobotics #omgrobots

    A photo posted by Iron Reign Robotics FTC (@team6832) on


    However, we are still experiencing problems, such as our chain falling off due to the supports moving toward each other. As well, we probably need to find a better place to put our motor controller and battery.

    Reflections

    We need to get our robot effectively finished within the next month if we are to go to the Arkansas tournament. As well, we need to add supports to our robot to stop the chain issue. Within the next two weeks, we should have made one or two attachments.

    Programming our New Robot

    Programming our New Robot By Tycho, Lin, Ethan, and Jayesh

    Task: Program our new mecanum wheel driving platform

    Now that our new robot has been built with a mecanum wheel platform, we can start write our drive code and figure out how to make our robot preform three basic motions: forwards and backwards, side-to-side and to rotate. We decided that, in order to get the best understanding of our robot, how it moves and our code, that we would try to write our drive code through trial and error. However, we did reference some guides written by other various FTC and FRC teams if we got stuck on something and needed to figure out where to start in solving the problem.

    Reflections

    In order to drive our mecanum wheels properly, we need to first discuss how each wheel is placed on the robot, and also how each wheel needs to move in respect to the others in order move in a certain direction. Each wheel has small rollers that point 45 degrees off of the larger wheel itself. In order to properly set up mecanum wheels, the rollers on each wheel have to point towards the center of the robot.

    This is important, because if these wheels are not pointing in the proper direction, then the rollers will begin to fight against each other, causing strange driving patterns that aren't very useful. We learned this the hard way, because when reconstructing the wheel mounts, the positions of two wheels on robot were flipped, causing the robot to drive in circles when we tried to drive sideways.

    The main reason we decided to go with mecanum wheels is because they open so many different ways to navigate the field. Robots that properly use mecanum wheels can not only go forwards, backwards and turn, but they can also make a robot move side to side. These three types of movement can be mixed with each other to do even cooler things like move in diagonals or even strafe, which is when a robot moves in an arc while moving sideways. Of course, we cannot use mecanum wheels to their full potential if we do not first understand the first three basic types of movement. Driving forwards and backwards is pretty simple, and it's the same as any other robot; all of the wheels have to move in the same direction. Turning also remains unchanged from other platforms; the left side of the robot has to move one way, and the right side of the robot has to move the other.

    However, moving side to side is not really intuitive compared to the others. In order to move side to side, the wheels on either side have to move opposite of each other. For example, if I wanted to, from a top-down perspective, drive to the right, the wheels on the left side of the robot would have to drive away from each other, while the wheels on the right side of the robot would have to drive towards each other. The rollers start spinning away from the center and to the right on the left side of the robot, or towards the center and to the right for the right side of the robot. The forwards and backwards components of the wheels and the rollers cancel each other out, and the robot moves to the right.

    Travis Open House

    Travis Open House By Ethan, Max, Tycho, Lin, Darshan, Jayesh, and Evan

    Task: To talk to prospective SEM students about robotics

    Every year W.B. Travis, a 4-8 has an open house for magnet schools to attend and convince students that $school1 is better than $school2. And, since it is Iron Reign's former school, we attend and try to pull students SEM. We present to about 5 groups and field questions from parents.

    Unsurprisingly, we ran into issues, just like we always do. First, our chain kept on falling off of our new robot as we had forgotten to re-enforce the motor and wheel mounts. So, while our robot was still impressive, it was a bit disappointing. Second, we had our color-following robot, but we had forgotten the controller phone. Despite all this, Jayesh gave a great presentation to the prospective freshmen.

    Reflections

    We really need to amp our presenting game up - our robots always break down in some unexpected way and makes our presentation a bit underwhelming. However, this does help, as we know what to fix for an actual competition. In the future, it would help to test our robots a bit more before presenting.

    Meeting Log

    Meeting Log November 06, 2016 By Max, Tycho, Jayesh, Darshan, Ethan, Evan, and Janavi

    Meeting Log November 06, 2016

    We've been blogging/journalling at the sub-team level, which allows us to share our work at a deeper level on specific subjects. This ends up creating a need to have many posts in a single practice. That's great for our journal, but we also end up failing to document some of our sub-team work because we can't find enough time to write up every break-out project. We are also regularly missing out on documenting a lot of our organizational work, like the planning session at the beginning of practice and the list of tasks we assign ourselves. So from now on we will be adding a practice log for each meeting - starting it as an open template on our main shared computer and just asking team members to log their start-stop times there. Publish right at the end of practice. This is meant to be a light-weight log - it doesn't need great writing. Members, add your time to person-hours in this post only for planning time plus any time you worked that will not be captured in a detail post. This will be the first such post.

    Today's Meet Objectives

    Organization / Documentation / Competition Prep

    • Review Journal - not started
    • Review Robot Status - completed

    Software

    • Fix pose class - import from last year is incomplete and broke code - completed
    • Calibrate forward and crabbing motions of the robot - not started
    • Turn current teleop mecanum mixing into a method that can be used across teleop and autonomous - completed
    • Begin Autonomous motion sequences - not started

    Build / Modelling

    • Add outside collectors to collector system - minor progress
    • Begin modelling the full robot assembly - not started

    Service / Outreach

    • Blog about SEM open house - TBD, delegated for homework

    Today's Work Log

    Team MembersTaskStart TimeDuration
    AllPlanning Meeting2:10pm.25
    TychoFix pose class2:30pm1
    MaxCleanup and mount catapult bowl4:001
    Tycho, JanaviMecanum mixing method3:45.5
    Tycho, JanaviMethod to prevent repeated inputs3:30.25
    Ethan,EvanUnboxing video Textix gift3:30.5
    Darshan, Ethan, MaxCatapult Base2:451.25
    EvanDesign sizing box5:001
    Max, JayeshTeach Jayesh Creo basics3:00.5

    Mecanum Driving

    Mecanum Driving By Tycho

    Task: Code driving under mecanum wheels

    Today, I wrote the whole code for controlling our mecanum wheels. It is entirely fron scratch, and works perfectly right off the bat. This code allows us to strafe, move backwards and forwards, and rotate, in one method.

    Reflections

    We still have a lot of coding to do, as we're currently working on a particle-launching system. As well, we need to consider autonomous soon.

    Nov. 21 Scrimmage

    Nov. 21 Scrimmage Written, but not attended by Ethan By Omar, Darshan, Jayesh, Max, Tycho, Lin, Janavi, Austin, and Ethan

    Task: To test our robot and gauge other team's progress

    First, the team arrived at the Virani's house and boarded the MXP for a Arkansas dry run. We learned that it's pretty bumpy for passengers when you're driving on the highway, making the experience a bit uncomfortable. We'll need to fix that for the 8-hour drive to Arkansas.

    When we arrived at the scrimmage, it was laid out like a normal tournament, though there were only nine teams to compete against. The matches were laid out so that each team competed five times, but only four of those five matches counted towards your actual score. During the first match, things were looking up. Our catapult and intake system were looking great, we had scored two or three balls, and our driving was pretty nice. We ended up winning that match. Then, everything went downhill. First, we had a issue with a loose chain, which we were able to fix. After that, however, our robot's catapult jammed so we had no useful way to score. This led to us losing our other three matches.

    Despite all this, we ended up 6th place out of nine teams, which isn't *horrible*. We were also picked for an alliance.

    Reflections

    There are teams very ahead of us, so we need to step our game up for Arkansas. Our next goals, in order, should be to fix the chain system permanently, stop the catapult from jamming, add the beacon presser, and add the yoga-ball lifter. However, our collection system was really nice and worked >95% of the time. The only problem with it was that balls occasionally got stuck on top of the robot delivering to the catapult.

    Meeting Log

    Meeting Log November 22, 2016 By Lin, Evan, Ethan, Darshan, Tycho, and Omar

    Meeting Log November 22, 2016

    Main focus for the day is fixing the problems encountered at the scrimmage and making autonomous progress.

    Today's Meet Objectives

    Organization / Documentation / Competition Prep

    • Review Journal
    • Pre-Match checklist
    • Continue Presentation

    Software

    • Autonomously score
    • Put collection system in same class as flinger

    Build / Modelling

    • Mount new particle bowl
    • Build button pusher

    Service / Outreach

    • Update connection totals

    Today's Work Log

    Team MembersTaskStart TimeDuration
    AllPlanning Meeting2:10pm.25
    EthanCatapult size restraint2:301
    Omar, DarshanButton press2:303
    LinPre-Match Checkist2:30.5
    TychoAutonomous scoring3:001
    EvanPresentation3:003
    Ethan, LinNew particle bowl3:30.25
    TychoCollection system class4:001
    Lin, EvanUpdate service totals5:001

    Autonomous Setup Options

    Autonomous Setup Options By Tycho

    Task: Create a basic autonomous

    Autonomous is one of the things that we tend to be weak on every year, and this year, we really want to get to super-regionals. So, to start off this year's autonomous, we first mapped out a potential path for the robot on the field. We then followed up with programming, using our previous methods like driveForward and driveCrab. So now, we have a basic autonomous program in which we can push the cap ball and attempt to shoot the vortex.

    Reflections

    We still have a long way to go in working on our autonomous - we need to be more accurate in shooting the vortex, we would like to hit the beacons, and we want to get parking points as well.

    Meeting Log

    Meeting Log November 26, 2016 By Ethan, Max, Tycho, Janavi, Darshan, Omar, and Evan

    Meeting Log November 26, 2016

    Today marks one week until our Arkansas Tournament. God help us all.

    Today's Meet Objectives

    Organization / Documentation / Competition Prep

    • Review Journal
    • Work on Presentation
    • Do Blog Posts

    Software

    • Autonomous
    • Testing Code

    Build / Modelling

    • Finish 2nd Level
    • Improve Catapult

    Service / Outreach

    • Blog

    Today's Work Log

    Team MembersTaskStart TimeDuration
    AllPlanning Meeting2:10pm.25
    Omar, Darshan, EvanField Build2:002
    Tycho, JanaviAutonomous2:004
    EthanHousekeeping Duties2:004
    MaxRobot Improvements2:004

    Combining TeleOp and Autonomous

    Combining TeleOp and Autonomous By Tycho

    Task: Combine TeleOp and Autonomous code

    Today, I combined the autonomous and teleop so that we can demo both more easily. As well, during testing, we now can switch between them seamlessly so that our testing is power. The most important part of this code is that we can configure the autonomous before we launch - telling the robot how many balls we have, how many to shoot, what side the robot is on, and other pertinent options.

    Reflections

    We still need more code and fixes - our robot keeps having random errors while launching. As well, we have intermittent lag.

    Arkansas State Competition 2016

    Arkansas State Competition 2016 By Ethan, Evan, Lin, Janavi, Jayesh, Omar, Darshan, Max, and Tycho

    Task: Compete in the 2016 Arkansas State Competition

    This year, to give our team a better chance of going to super-regionals for the first time, we decided to enter the Arkansas regional. We were actually pretty far ahead compared to our last seasons. We had a finished robot, a working autonomous, and good drivers.

    Upon arrival, we had to make some last minute changes to our robot in order to pass inspection, as it was too bumpy in the RV. So , we huddled in the school's band room and attached our side shields and team number, making it just in time for inspection. We set up our table for the competition as well.

    Upon arriving to the hotel, we realized that we hadn't really practiced our presentation at all, so we had to hold a last minute session until 12. After that, a few team members fell asleep for the next day, but most boarded the RV and worked on the robot and autonomous until ~2 in the morning.

    We woke up refreshed (totally), and went to the tournament. In order, we had: opening ceremony, the presentation, and then the four games. First, right before the presentation, we found that our robot, despite working the night before, now refused to accept any motor commands. This was due to the way our code handled controller events, so we had to change that last minute. Also, due to just having last minute practice in the presentation (and being tired), we didn't preform as well as we would have liked.

    The Game

    In the first match, we performed way better than we expected, and actually won the game. However, we discovered that our robot has a static issue due to the way the wheels slide, so we had to reboot it during the match.
    In the second match, we lost. This was partially due to the static issue and partially due to the fact that we were paired with an inexperienced team. We helped show them the ropes, however, and saw a lot of the origins of our team in them. We wish them the best and hope they can progress.
    In the third, fourth, and fifth match, we won all our matches, even though our static issue got worse. Our relatively consistent autonomous, paired with the beacon and ball scoring fared us well against our opponents. We need to build on these strengths, while also introducing end game flexibility with cap ball scoring.

    We did not get picked for alliances, even though we were in 8th place with a 4-1 record. this was probably a knock on our scouting and relation building with the other teams. We'll make sure to build on that for future competitions.

    Reflections

    We had issues at the tournament due to static and scouting issues. The scouting issue was particularly bad due to these reasons:

    • Staying on the RV and not interacting with other teams
    • Alliance negotiations were started too late
    • Misjudging other teams

    This tournament gave us valuable experience for the qualifiers we have coming up. We have now fixed the static and controller issues. We were also able to judge the progress of other teams and compare it to ours. By the time of the qualifier, we should have some advantages over the other teams.

    Arkansas Analysis

    Arkansas Analysis By Lin, Omar, Darshan, Jayesh, Evan, Max, Tycho, Janavi, and Ethan

    Task: Analyze what went wrong and right at Arkansas

    We spent a good hour and a half analyzing what we needed to do differently at upcoming competitions, and how to better prepare in the upcoming school break.

    Notes

    Mechanical:

    • Anti static spray
    • Shorten wires and close wire ends
    • Stabilize USB connections to controllers
    • Cap Ball lift

    Competition:

    • Driver Practice!!
    • Organize sub teams during competition
    • Scouting more and building connections
    • Stay aware and alert, no zoning out while in the pits especially
    • Line up robot based on tile mat seams
    • Control Award checklist done beforehand
    • RV shifts, no more than 1 onboard at a time

    Presentation and Presence:

    • Mechanical demos
    • Videos of demos easily available if robot stops cooperating
    • Team costume and cart chariot
    • RV video PSA - Pay it Forward
    • Be more active on Twitter and link videos to judges
    • Have a fundraiser in the neighborhood

    Reflections

    The Arkansas competition taught us a lot about the system of success for this years competition. We are ahead in terms of progress relative to other years, now we can focus on scoring elements like the cap ball, along with the presentation.

    QD Academy Scrimmage

    QD Academy Scrimmage By Ethan, Evan, Tycho, Max, Darshan, Lin, and Omar

    Task: To test our robot in a tournament setting

    On Dec. 18, we came to QD Academy to test our robot under tournament conditions. At Arkansas, we had frequent static issues on the mats provided, and we had trouble recreating the static in practice to prevent it, so we wanted to try to find a cure for it. As well, we've been improving our autonomous code, so we were excited to try that.

    We did well at the scrimmage, compared to the teams that we went against (4-1). We were lucky to already have been to a tournament - and a regional at that, so we ended up placing 3rd, and our sister team placed 5th. However, we still ran into new, and worse, issues. First, the static issue reemerged, and became worse than when we were at the Arkansas tournament. As well, when we bumped into the beacons with enough speed, our robot would turn off, and we would have to completely reboot the robot at the end of the match.

    To solve the static issue we had bought Staticide(TM), but we forgot to bring it, so we have no idea if it works for our robot or not. We tried rubbing down our robot with dryer sheets, but it just exacerbated the issue if it did anything at all. The beacon issue seemed also to be caused by the static discharge, but we haven't determined it conclusively yet.

    Reflections

    We scored a lot of points, but we need to optimize our autonomous for both sides to score even more. As well, we still need to solve the persistent static problem, as it will really harm us in January if it continues.

    Fixing Faulty Encoder

    Fixing Faulty Encoder By Tycho and Jayesh

    Task: Fix a faulty encoder on our robot

    This shows a test of our encoder issues. It might have been a month ago that we noticed a strange behavior in our autonomous code when the robot was moving forward at low speed. It would curve to the right when we were telling it to go straight. We probably would have noticed the problem earlier if we had any kind of subtlety in our driving. But we didn't, partly because the problem goes away when driving at full speed. We did suspect that the problem was in the encoder feedback of the front left drive wheel. In this video you can see how it ramps up to full speed much faster than the other motors. Here we are driving the robot with encoder PID active. But when driving backward, the motor/wheel behaves properly. This indicated to us that one channel of the encoder was working normally while the other was skipping ticks. But the problem could be in the encoder, the encoder cable or the motor controller. Since our motors take some time to change out and we were heading off to the Arkansas State Championship, we decided to simply turn off PID control. The problem goes away when we are simply driving the motors with open loop power levels - proving that the encoder is the culprit and that motor imbalance was not an issue. The problem with just turning of PID control is that we were still getting bad odometry since our method of calculating distance traveled is based on averaging the encoders across the four motors. So we had to adjust our target distances in autonomous based on trial and error instead of proper calculations.

    Here we are trying to identify the source of our encoder issues. We swapped the encoder cable and and ports on the motor controller, but the problem stayed with the front left motor. That told us that it was the motor's encoder that was the issue. We confirmed through telemetry that the encoder was giving no ticks when driving forward, but worked fine in the reverse. So we replaced the whole motor and this time it sped up faster than the other motors in both directions. That really mystified us for a bit. Turns out the substitute motor had an encoder that was dead on both channels. What were the odds of that? We'd simply pulled a motor from our inventory and assumed it would be OK. But it must have been one we hadn't needed to be encoder controlled. We finally found a third motor, this time tested its encoder before throwing on the robot, and all is well now. We can now drive the robot under PID control and it drives as expected at various power levels. We need to re-calibrate our blended travel distances with the working encoder, but feel much better about our performance. We can even reliably use run to position commands if we want, though our navigation code doesn't require that.

    This just shows the proper behavior of the robot after our encoder troubles were resolved:

    Mapping Out Autonomous

    Mapping Out Autonomous By Janavi, Tycho, Omar, Evan, and Darshan

    Task: Mapping Out Autonomous

    To tell the robot how far to move forward we had to calculate our motors RPM. We did this by telling the robot move to 10 rotations forward and calculating how far it travelled. After he RPM we created a model field upon which we designed a set path for the robot during autonomous. One path for red and then one for blue. Both of these paths allowed the robot to shoot two balls and then push the beacon buttons.After testing this we realised that our alliance partner may be better or worse than us at shooting the balls. So we created a method that allowed us to push a,b, or x to change the number of times the catapult fired.

    Reflections

    We are constantly working to improve the design our Autonomous. Before this, while our autonomous may have worked. It didn't allow us to collaborate with our alliances to create the best path, stopping us from earning the most points possible. Now with these changes we can work together with our alliance partners to complement each others strengths and weaknesses, helping us earn more points. This will also encourage us to scout around and interact with other teams before and in-between the matches, letting us create a even more detailed scouting sheet.

    Meeting Log

    Meeting Log December 31, 2016 By Ethan, Evan, Tycho, and Lin

    Meeting Log December 31, 2016

    Today's Meet Objectives

    Organization / Documentation / Competition Prep

    • Blog Fixes

    Software

    • Test autonomous changes

    Build / Modelling

    • Add swinging arms to the robot

    Today's Work Log

    Team MembersTaskStart TimeDuration
    AllPlanning Meeting2:10pm.25
    TychoTest Autonomous2:004
    LinBlog fixes/Cabling2:004
    EthanSwinging Arms/Blog Fixes2:004
    EvanSwinging Arms/Robot Fixes2:004

    Motor Controller Mounts

    Motor Controller Mounts By Ethan, Darshan, Max, and Tycho

    Task: Prevent static shocks to our robot

    Throughout the year, we've dealt with static issues with our robot, as shown here and here. And, now that we've pretty much gotten autonomous and the lift out of the way, the static was our only remaining issue.

    To prevent the static shocks, we needed to isolate the motor controllers and other parts from the metal section of the frame. This was achieved by adding a polycarbonate shield on each side, and mounting the corresponding motor controllers. However, we had to partially remove the swinging arms that we created in the last post in order to mount the siding. We plan to add LEDs on each side of the robot to give the robot some "bling".

    Reflections

    The polycarbonate siding in conjunction with staticide should give us a huge advantage in the robot game for the Jan. 14 tournament. As well, it may net us some design points, as it is a solution to a problem that many FTC teams suffer from.

    Wylie East Qualifier

    Wylie East Qualifier By Ethan, Evan, Max, Tycho, Darshan, Jayesh, Omar, Janavi, and Lin

    Task: To go to the Wylie East robotics tournament

    On Jan. 14, we headed out to Wylie East HS for a North Texas qualifier. Our main goal was to test our new code and additions to the robot - we've added static shields and staticide to protect ourselves from the issues that we suffered from last tournament. We had high prospects this tournament, with a robot further ahead than we've ever been before and a "fun" presentation.

    We ended up 3-2 in the main rounds, and at 4th place. The first round we lost was a magestic, catastrophic failure. Our robot ran into the metal sides and short circuited. Then, within ten seconds, every other robot had shut off. We were gettting destroyed at that point, but the powers-that-be decided to call a redo. So, we restarted, and insted of getting destroyed, we got massively, absolutely destroyed by a huge margin. The second time we lost, our robot tipped over, and we couldn't get it back up.

    We advanced to finals, and we won the semi-finals round easily. Then, in finals, we faced a combo-team of Technical Difficulties and Technibots, which proceeded to stomp the floor with us and set a new world record in the process.

    Reflections

    Our main failures through the tournament were that we just can't currently score enough points as higher ranking teams. However, we have a cap ball lift in progress, so well be able to score way more soon. And, we did advance to Regionals, so we've got that going for us.

    Return to Machine Vision

    Return to Machine Vision By Tycho

    Task: Prepare to reintegrate machine vision

    A year and a half ago while the new Android-based platform was still in pre-launch, we were the first team to share a machine vision testbed on the FTC Forums. That color-blog tracker was implemented with OpenCV on Android, but with a different low-level control system and robotics framework. Then we integrated OpenCV into our implementation of ftc_app, which was in turn based on the great work of rgatkinson's team supporting Swerve Robotics. Our main game repo for FIRST RESQ was also open sourced and we gained a lot of experience using it. But we had many issues that prevented full usage of the capability. There were problems with the whole control system that created extremely variable loop times which really challenged our custom PID implementation. On top of that, we found that in many tournaments the beacons were not working, or the lighting was too bright and our camera was being flooded by the white shell of the beacons. That made it an unreliable solution.

    So this year we switched to the modern robotics color sensor as a slightly more reliable method of detecting the current color while up close. This also gave us the ability to add color sensors to both sides of the robot so we no longer have to turn around when on the blue alliance. And we found we had good-enough navigation based on calibrated odometry so that we could get into position without color tracking.

    But now we need to go ahead and try to re-integrate our previous machine vision code and see if we can improve on the situation. We also need to at least try out the Vuforia object tracking capabilities, even though we've set that as a lower priority because we know that specular reflections are likely to be a problem under varying lighting conditions at different competition spaces. We've noticed this problem at a couple of spaces due to the marker placement behind the planar polycarb of the border walls. So we don't actually plan to rely on this as a primary means of navigation and positioning, but we should try it out and see how robust it might be.

    We still want to use machine vision to possibly track beacons and particles. We are hoping to track particles to create an autonomous behavior that triggers during teleop so that a particle near the front of our particle collector can be automatically approached and pulled in without operator intervention. This should help since picking up particles on the far side of the robot from the drivers is very difficult because of blocked sight lines. We want to use color tracking to make sure we don't pick up opposing alliance particles.

    Research / References

    I checked out Vuforia and there is no ability to track based on color. So we need to use OpenCV again, but when Vuforia is present it also locks up access to the camera. Fortunately there is now a way to get a frame from Vuforia and reformat the image data for OpenCV's use.

    I plan another post to document the actual steps we went through. Stay tuned. If Vuforia proves troublesome, we might revert to getting our image from a camera preview just like last year. Though that would mean messing around with the Android manifest and the layouts in the main FtcRobotController folder.

    Helping Imperial Robotics

    Helping Imperial Robotics By Ethan, Evan, and Tycho

    Task: Help Imperial Robotics before their qualifier

    As said in previous posts, we have a sister team, Imperial Robotics, and it would be really nice to see them advance to regionals alongside us. In their previous qualifier, they got really close. So, with help, we should be able to push them over the qualifying line.

    Tycho, our lead programmer, helped Rohit and Abhi with their code. Imperial was having servo control issues in which they couldn't continuously rotate their ball-intake servo when pressing a button, and Tycho fixed that, along with other control issues. Tycho also worked on their bass launcher, making it more reliable.

    Evan and I helped Imperial with building and driving. We fixed their wheel and turning issues as referenced in this post. Their problem was that a motor wasn't working at 100%, and it interfered in driving. As well, Evan gave Imperial advice on driving, and demonstrated driving techniques. As well, we helped with general fixes of their robot, as most of their team members were focussing on the presentation.

    Reflections

    Imperial ended up not advancing to regionals, unfortunately. :(

    Robot Drive Team

    Robot Drive Team By Charlotte, Tycho, Karina, and Evan

    Task: Build a solid drive team.

    One of the leading problems Iron Reign faces is our ability to allot time to effective driving practice. Driving practice is essential for our success in the robot game, but it is sometimes difficult to find time to practice due to other team members working on various robot improvements. We have created two different drive teams, a main team and a backup team, so that despite who is available at meeting we can always have some kind of drive practice going on. The bulk of the time spent in driving practice is spent practicing putting glyphs in the cryptobox, trying to better our previous time and complete as many columns as we can. We focus on performing and scoring timed runs, and sometimes when our sister team 3734 is available, we scrimmage our robots against each other. Another smaller, yet equally essential, part of drive practice is setting up the robot in the correct orientation for every situation and running our autonomous. It is important that we make all of our mistakes during practice, so that when it is time to compete we run autonomous perfectly every time. The main challenges we face in driving practice is consistency in filling the cryptobox, adjusting to significant robot design changes, and our time management (actually finding the time to get in good practice).

    In the future, the drive team is going to meet more often and hold more efficient practices. Our main goal is to significantly decrease the time that it takes to fill the cryptobox, and to accomplish this we will need to clock in many hours so that we are very comfortable in driving the robot. Ideally, any error that might occur during competition will be mechanical errors that are out of the drivers' control. We have improved a lot, but we still have a long way to go.

    Forester Field House Robotics Competition

    Forester Field House Robotics Competition By Janavi, Omar, Tycho, Max, Jayesh, Evan, Lin, and Darshan

    Task: Compete in the Forester Field House Robotics Competition

    We started off with our presentation pretty early, and everything was going pretty well until our robot had a static issue, and stopped working. We were able to cover it up pretty well without the judges noticing. One of the judges seemed to like our rap, and was interested in seeing the R.V. Our presentation ran a little long and cut into our question asking time. But other than that the presentation went pretty well. As for scouting, Evan and Omar went around and talked to all the teams, we even created flyers them to pass out the all the teams.

    We created a common excel sheet that we all shared on the google drive so everyone could scout when they got time. This time we actually put on shields in advance, and they weren’t made of duct tape! But we also had to replace the core power distribution module. And to do that we had to take off the shields. This resulted in us scrambling at the last minute to reattach the shields while rolling the robot over to the field. We replaced the CPDM because in the past it has been constantly resetting, and seems to have a faulty U.S.B connection. Replacing the CPDM as well as spraying staticide in between match really helped to improve our reliability during the matches. This resulted in us winning the rest of the matches. We ended up in 5th place. During the Alliance Selection we were the first pick of the first alliance captain. During the semifinals around 9 beacons had stopped working and the judges had resorted to holding up spoons with flags when the beacon button was pushed. In the end our alliance won and we also got the second place inspire award. This meant that if we hadn’t advanced already we would have had advanced during this completion.

    Reflections

    All in all we’re pretty happy with the results of this competition, our robot was more reliable than it usually is and we were able to completely stress test it. We believe the improved reliability was the result of replacing our CPDM and the improved side shields. We may have damaged our previous one simply through electrostatic discharge, ironically making us more susceptable to ESD in our other matches. Decreasing the conductive materials on the outside by properly blocking them with shields will make us more reliable in the future. Next time we need to make a complete check list so we don't forget the import things, like staticide.

    Building the Fly Wheel Launcher

    Building the Fly Wheel Launcher By Jayesh, Omar, Darshan, Evan, Tycho, and Max

    Task: Create a particle launcher with a higher scoring rate

    The first particle launcher we saw by another FTC team was actually a crude flywheel and rail design back in October where the rail was a cut up PVC elbow. Back then we considered a number of different designs including impact launchers, catapults, flywheel + rail systems and dual flywheel shooters like our sister team built. We decided to go with a catapult design because Max had experience with catapults and knew that they could create very repeatable trajectories.

    Our catapult has achieved those reliable trajectories. We operated it with a choo-choo mechanism that allowed us to fire and re-cock without having to change direction, so that made reloading easier and faster that it might otherwise be. It accurately scored, with consistent ballistic trajectories, however, the system had problems with ball loading when our 3D printed catapult bowl kept failing due to layer separation. As a result we had a lot of misfires and had to replace our bowl often. So our moderate cycle rate and our misfires meant we actually scored only about 4 balls during our average teleop phase. As the season progressed it became increasingly clear that we would have to radically improve our center vortex game and that was driven home when Technical Difficulties and Technibots crushed us with their world record score in the finals match at our first qualfier.

    So we decided to move on to a flywheel-based design, knowing that we would likely be sacrificing some accuracy for a much greater cycle rate. We knew that dual flywheels tended to have even greater issues with accuracy due to their extremely short contact period and the chance that one or both wheels would hit a slot in the wiffle ball. We saw direct proof of this as our sister team, Imperial Robotics, struggled to get their dual-flywheel design to work consistently. And Ethan had attempted to build one very early in the season, but never really go it working. So we decided to design with a single wheel with a semicircular ball guide or rail. Max created a custom 3D design for both the flywheel and for the rails. The rails were printed in nylon, our preferred structural plastic. He printed three different flywheels for testing. One was in nylon meant to be covered with foam for compliance. The other two were printed in Ninjaflex (urethane) at different infill densities. The foam on the nylon version shredded at the RPMs we were using. We probably could have found a better adhesion solution, but found that the low-density Ninjaflex version worked beautifully and has stood up to extensive testing.

    Reflections

    The continuous improvement of designs is a constant focus we adhere to. Previously we'd gone through two major revisions of our catapult system, with a whole bunch of minor modifications, and that system got us qualified for the North Texas Regionals. We saw the pros and cons, and eventually saw fit to change the system to score more points in the long run. We are now able to score around 75% of the balls we shoot. The key is in how quickly we shoot now. Before we would have to collect balls, turn the robot around, load a singular ball into the scoop, and shoot. Now, we can shoot 4-5 balls right after another without turning around. This will allow us a much greater center vortex scoring rate as we aim to be one of the top teams at Regionals.

    To Do List Update

    To Do List Update By Tycho, Max, Jayesh, Omar, Janavi, and Evan

    Task: Update our To Do List

    Sensors

    • CDIM #2 on right side
    • color and distance sensors on right side
    • ultrasonic sensors
    • can we get rid of distance sensors?
    • omnidirectional travel sensor based on trackball
    • omnidirectional travel sensor based on I2c mouse

    Autonomous

    • simplify approach path to wall
    • simplify beacon detection
    • second beacon
    • compute distance before slowing down
    • alt config to bypass a non-working beacon if it's the first
    • pointed at gap between beacons, drive until touching, square with imu, check / adjust distance with ultrasonic

    Authonomous with Vision

    • More team members than Tycho study Fixit3491 videos 4 thru 7
    • Integrate OpenCV 3.2 back into app
    • done
    • Integrate Vuforia sample
    • done
    • Get image from Vuforia into OpenCV
    • in progress
    • stuck with bug
    • Camera mount tweaking to get best vision line
    • Does wide angle work with Vuforia configuration
    • Real Vuforia based auto navigation
    • OpenCV beacon analysis from Vuforia beacon localization

    Particle Launcher / Flywheel + Rail Type

    • New grippy custom printed flywheel design
    • complete
    • Custom flywheel printed and assembled
    • done
    • 3 versions
    • nylon, open ninjaflex, dense ninjaflex
    • Rail design - done
    • Rail print - done
    • High speed motors - aquired
    • Frame and mount rails, flywheel and motor - in progress
    • Particle Release Gate and Servo mounting
    • Presentation narrative and blog updates - tie in with earlier design iterations

    Cap Ball Fork Lift

    • Replace lift spool with double lift+retract spool made from Tetrix track guide wheels
    • Add slides for fork support
    • Add pulleys for retract spool
    • Add deployment servo
    • Fabricate folding fork
    • Figure out fork release by hyperextension
    • Can we retract cleanly?
    • Can we refold? CR servo reeling in a refold line might do the trick.
    • Code to support these capabilities

    Journal / Blog Improvements - ADD STUFF HERE

    Awards Guidance Sheets - ADD STUFF HERE

    Presentation - ADD STUFF HERE

    Robot Reveal Video V1 - Shot List

    • Intro Sequence - half second shots of robot driving into frame from overhead, right side, front
    • Mecanum Freedom - high overhead shot of robot going forward, strafing, diagonal, turning
    • Particle Collector - close up short shots of collector running from side and from front
    • Particle Collector - Pulling in a particle - muliple angles (can one of these be done with a dolly shot of moving particle?)
    • Particle POV - camera on mat - robot strafes into view, engages collector and drives over camera until camera is at accumulator lift
    • Particle Collector - shot from under the robot sitting on polycarb, camera under the polycarb at the rear of the robot lookup up, seeing a particle pulled in, guided by funnel and loaded into accumulator
    • Particle Collector - Automatic Opposing Alliance Particle Rejection
    • Particle Collector - Machine Vision Based Automatic Tracking and Collecting Behavior
    • Particle POV - running up accumulator lift - not sure if this is possible without animation
    • Shooting - with flywheel - wide shot of 4 balls coming out
    • Shooting - close up of Particle Release Gate
    • Shooting - close up of Particles cycling through Launcher while off of robot
    • Shooting - close up of Particles landing in the vortex or on an accuracy marker
    • Cap Ball Lift Deployment
    • Cap Ball Lift Capture
    • Cap Ball Lift Raising
    • Cap Ball Lift Depositing
    • Cap Ball Lift Retracting
    • IMU Close up + 90 degree turn + station keeping behavior(on black turntable; make shot from above)
    • Navigation - Calibrated Odometry in both normal drive and strafing
    • Combined high accuracy Heading and Odometry with Trig = absolute field position (close up of telemetry, plus overhead view of a navigation sequence)
    • Autonomous - high speed of entire sequence - replace with machine vision version when available
    • Autonomous - machine vision localization of beacon targets - phone camera capture
    • Autonomous - beacon isolation and analysis - phone camera capture

    Connect Reveal Video - Shot List

    • MXP Crane Shot Opening Sequence - what if? theme
    • MXP Walk through - adjusted BT script
    • MXP construction effort
    • MXP outreach event visual scrap book

    Connect Reveal Video - Team

  • Who is on this team? Evan leads?
  • Script Team
  • Voiceovers
  • Existing Video Review
  • New shots and slides
  • Editing

Judging and Awards

Judging and Awards By Lin, Jayesh, Omar, Tycho, and Max

Task: Increase chances to advance in judging

In our competitions we really can't rely on our robot performing as well as it does in practice and our sparring matches with Imperial. If we're going to increase our chances of advancing from Regionals to Super-Regionals 90% of the time it's going to be from judging. We've always had rocky presentations in my opinion, but this year we're getting our energy up and trying to get everyone more interactive. We've heard that the organizers are having trouble getting enough judges, so it's likely the judges will be a little inexperienced. We're making a colored tab and blurb for each award to place at the front of our journal. We'll have a little paragraph on why we think we should be considered for each award, followed by a handful of key posts we believe back up our claim. Each award has a color, each post gets a number, and we place colored tabs (think these post-it flags) with a number written on the printed page.

Reflections

Judges don't have much time to inspect pages before a presentation, so it's the job of the first person who goes in to give the journal, a presentation copy (or 2 depending on the table space), and a short description of what's going on. This includes reference pages such as the awards and a copy of our scouting flier. Judges mostly listen and take notes during a presentation, so we don't want to overload them with pages to look at initially, but have enough information available to look through at the main judges meeting. The easier it is for a judge to get a sense of our team, the higher likelihood they will mention us in award considerations. This is a hard balance to strike, but the tabs served us well last year and I should have gotten them together again a while ago. Jayesh and Omar went through our tag page, picking the key ones to bring up. Tycho and Max continued working on their technical posts.

Backups and Shields

Backups and Shields By Lin, Omar, Max, and Tycho

Task: Build a backup flywheel track and remount side shields

Previously, our side shields were zip-tied through 4 bolt holes on tetrix pieces per side, and we had taken one off to reach our drive system. When putting it back on to fine tune autonomous we took the time to cut out space for a wrench and bolt it on. The holes were already the correct size, we just had to line them up with the mounting position.

Omar spent a good amount of time inspecting our current track in order to replicate it accurately. Unfortunately, it took him a few tries to get it. We want to have a second copy available in competition if we get hit around too hard or something snaps. One weakness of our previous catapult design was that the bowl broke in a way we couldn't repair, andwe don't want to be in that situation again.

Reflections

While It was easy to mount one side of a shield, the other proved to be difficult. The pre-existing drill holes almost lined up, zip ties had enough give, but the bolts definitely didn't. We had to widen the area but it's much more secure now. When we got it to workon the left shield, we clipped the ties holding the right side up and did the same thing

2017 North Texas Regional

2017 North Texas Regional By Ethan, Evan, Jayesh, Charlotte, Tycho, Lin, Max, Darshan, and Janavi

Task: Win the North Texas regionals

Summary: We won

On Febuary 25, we drove our RV to W.E. Pete Ford Middle School, in Allen, TX. The tournament was split into two divisions, and for many of our members, this was our first time encountering that layout. We didn't have any of our team members going to Dean's List interviews this time. We still didn't have an operable cap-ball lift, and this was our first time using our flywheel shooter in a tournament setting.

We did decently in our presentation, but it could have gone better. We made a few missteps in our presentation and had a few stumbles. However, we did a great job of presenting to the judges who were walking around. We would greet judges and attempt to present to them, ending up presenting to two separate groups of judges about our robot's design, helping low-income families in STEM fields, and our team history. As well, we talked to one of the FIRST directors, Ken Johnson, about our MXP, and we ended up bringing him out to it to show off.

In the game, we did pretty well. We ended up 5th place, and got picked as 2nd pick for the 1st alliance. We ended up getting all the way to finals, but we didn't win due to the fact that the opposing alliance had Technical Difficulties on it. During the normal games, we won [3-1]. We had issues with our beacon-pressing erasers falling off, so we designed a new "eraser" out of foam tape with a layer of thick tape on top in order to still be able to press the button. Our robot did stop responding during one game, but compared to our previous experiences, that was actually pretty good.

The reflections post can be viewed here.

Inspire Award

Inspire Award By Tycho, Jayesh, Lin, Omar, Max, Darshan, Evan, Ethan, Janavi, and Charlotte

1st Place at North Texas Regional Championship

Iron Reign members left to right are Ethan Helfman (Build, Communications), Janavi Chada (Programming, Communications), Tycho Virani (Programming Lead, Main Driver), Jayesh Sharma (Business Lead, Build, Communications), Darshan Patel (Build), Lin Rogers (Communications Lead, Logistics, Business) and Charlotte Leakey (Programming, Logistics), with Evan Daane (from BTW, Build, Photography) in repose. Not shown: Max Virani (Design Lead, Programming), Omar Ramirez (Build Lead) and Rohit Shankar (Programming).

Wow, we did it. I mean, we were going for it, but wow - we did it! Out of 118 teams competing in our region, we got 1st Place Inspire (Top Award) at our regional championship! We finally earned the coveted Inspire Banner. We've been building toward this for 7 years! Ever since we started as an FLL team.

Our total awards included Inspire 1st, Finalist Alliance 2nd, Motivate 2nd, Connect 3rd, Innovate 3rd.

Not going to Disney World yet

We are now qualified for the Texas State UIL Robotics Championship and the 12 State South Super Regionals. And we are preparing with the goal of making it to the World Championship. We have an extended season and while some of us have been to super regionals before, this is the first time the whole team gets to go. Our coffers are empty, we need a whole new round of fundraising to keep up the progress for the extended season. We need your help! Please consider contributing to support our extended season and help us represent North Texas at Supers.

In case you don't know how the game works, it's broken into a 30 second autonomous phase followed by a 2 minute driver controlled period. Two alliances of two robots each compete in each match. Here is our division winning match with alliance mates Technibots. Autonomous:

And Tele-Op:

Regional Postmortem

Regional Postmortem By Ethan, Lin, Austin, Jayesh, Omar, Darshan, Max, and Tycho

Task: Analyse what we did right and wrong at regionals

Scouting:

Good

  • Detailed scouting sheets
  • Had good inter-team dynamic
  • Organized
  • Pre-scouted

Bad

  • Not scouting matches
  • Didn't record matches
  • Scouting sheet on one computer
  • Only one scouting team

Notes: While we did well with scouting, it could have gone off much better. We made some mistakes by accidentally scouting teams in the other division and not watching matches when we should have.

Presentation:

Good

  • Eventually got into a groove
  • 🔥🔥Darshan's sick beats🔥🔥
  • Emphasized MXP
  • We were entertaining

Bad

  • Messed up the intro
  • Not about past achievements
  • Transition timing
  • Only one scouting team

Notes: We need to work on the group dynamic and enthusiasm a bit more. As well, we're going to stick Darshan under the cart so he can pop out with those 🔥🔥sick beats🔥🔥.

To-do

Promotion:

  • Need to make a reveal video
  • Need to advertise on social media
  • Design booth for super-regionals
  • Write more blog posts
  • Promote & Outreach videos
  • Banner holder designs

Design & Programming:

  • Fix robot shooting accuracy
  • Replace erasers with silicone
  • Cap the ball
  • Robot vision
  • Build 2nd spinner
  • Model the robot

Meet me in the pit- Tent and Shields

Meet me in the pit- Tent and Shields By Austin, Lin, Tycho, Omar, Darshan, Jayesh, and Max

Tent Building

Since we had the general idea of the shape and size of the actual pit tent, we set out to either build or find a tent that we felt best fit the theme we selected. We chose to start off by trying to build a structure via PVC pipe and a tarp like substance that we could drape over the pipe, we handed off the idea and models to Mr. Virani to have him figure out what PVC requirements we would have to fulfill and the cost to build. While he crunched the numbers a group left the house to see if we could find a suitable material to drape over the structure; Tycho, Mrs. Lux, and I went to a local army surplus store in hopes of finding a parachute like material that we could use, however the only cloth available was a very heavy and expensive canvas that we decided would end up crushing the frame, (we didn’t leave empty handed though since the store had lots of fun items). After returning to the house we had another council with Mr. Virani and decided to consider other options since the PVC and tarp idea required to much effort and too much American currency. Various hardware and surplus store websites later we found a rather unconventional shaped tent used to cover cars that was built in two sections each measuring 8’X9’ at their base, we concluded to buy the tent and use the parts to only build one of the sections, and since the pit measures 9’X9’, use the remaining foot of space in the front for table with room for a TV to play various team promoting videos meant to catch a passerby’s eye.

Shields

In terms of the shield, the basic form is completed and ready to be upgraded via LED’s and insignias which will hopefully be mounted before competition. Due to the use of recycled parts the shields are cheap, sturdy, easy to build, and most importantly relatively accurate looking. Expanding on how they were made, the core is old floor tiles from a competition field that have be locked together on one face and had the remaining teeth cut off. To provide structural integrity, old black metal broom handles were attached via zip-ties length wise to the back face of the shield bridging the gap between the two halves. Next more zip-ties were used to create a basic handle design to carry the light shield around. We chose a weathered red duct tape to cover the front face of the shield since it had the appearance of old weathered wood and saved us the pain of having to paint the shield, following the red duct tape the outside edges of the shield were gilded with a nice golden duct tape. To finish off the shield I used a drill press to mount some spare tetrix pieces to the inside of an ikea bowl and pushed the extruding tetrix remnants through the shield and zip-tied them together to keep them from coming out. Oddly enough most of the parts I used were sourced from our robotics “warehouse” and are easy to find or cheap to buy, so building one of these shields on your own would be easy. Not only is the shield light, cheap, and recycled it’s also pretty sturdy, once we had one built we were eager to play with it and made this little video for you to enjoy below.

To Do List

To Do List By Janavi, Tycho, Max, Jayesh, Omar, Lin, Austin, and Darshan

Task: Update our To Do List

Sensors

  • CDIM #2 on right side
  • color and distance sensors on right side -done
  • ultrasonic sensors
  • can we get rid of distance sensors?-done
  • omnidirectional travel sensor based on trackball- not high priority
  • omnidirectional travel sensor based on I2c mouse- not high priority

Autonomous

  • simplify beacon detection
  • second beacon
  • compute distance before slowing down
  • alt config to bypass a non-working beacon if it's the first
  • pointed at gap between beacons, drive until touching, square with imu, check / adjust distance with ultrasonic

Authonomous with Vision

  • More team members than Tycho study Fixit3491 videos 4 thru 7
  • Integrate OpenCV 3.2 back into app-done
  • Integrate Vuforia sample -done
  • Get image from Vuforia into OpenCV -done
  • Camera mount tweaking to get best vision line
  • test + upgrade to faster phones for better video processing - done
  • Does wide angle work with Vuforia configuration
  • Real Vuforia based auto navigation
  • OpenCV beacon analysis from Vuforia beacon localization

Particle Launcher / Flywheel + Rail Type

  • New grippy custom printed flywheel design
  • complete
  • Custom flywheel printed and assembled
  • done
  • 3 versions
  • nylon, open ninjaflex, dense ninjaflex
  • Rail design - done
  • Rail print - done
  • High speed motors - aquired
  • Frame and mount rails, flywheel and motor - done
  • Particle Release Gate and Servo mounting- done
  • Presentation narrative and blog updates - done

Cap Ball Fork Lift

  • Replace lift spool with double lift+retract spool made from Tetrix track guide wheels- done
  • Add slides for fork support- done
  • Add pulleys for retract spool- done
  • Add deployment servo
  • Fabricate folding fork
  • Figure out fork release by hyperextension- done
  • Can we retract cleanly? -done
  • Can we refold? CR servo reeling in a refold line might do the trick.
  • Code to support these capabilities

Journal / Blog Improvements -

  • lift and improving it
  • making the new side guards
  • assembling the canopy
  • robot reveal

    Awards Guidance Sheets

  • control award
  • fire beats cd

    Presentation - ADD STUFF HERE

  • pratice it!!!
  • increase info- mabye???
  • add charlotte and austin to the presentation

    Robot Reveal Video V1 - Shot List

    • Intro Sequence - half second shots of robot driving into frame from overhead, right side, front d
    • Mecanum Freedom - high overhead shot of robot going forward, strafing, diagonal, turning d
    • Particle Collector - close up short shots of collector running from side and from front d
    • Particle Collector - Pulling in a particle - muliple angles (can one of these be done with a dolly shot of moving particle?) d
    • Particle POV - camera on mat - robot strafes into view, engages collector and drives over camera until camera is at accumulator lift d
    • Particle Collector - shot from under the robot sitting on polycarb, camera under the polycarb at the rear of the robot lookup up, seeing a particle pulled in, guided by funnel and loaded into accumulator
    • Particle Collector - Automatic Opposing Alliance Particle Rejection
    • Particle Collector - Machine Vision Based Automatic Tracking and Collecting Behavior
    • Particle POV - running up accumulator lift - not sure if this is possible without animation
    • Shooting - with flywheel - wide shot of 4 balls coming out
    • Shooting - close up of Particle Release Gate d
    • Shooting - close up of Particles cycling through Launcher while off of robot
    • Shooting - close up of Particles landing in the vortex or on an accuracy marker
    • Cap Ball Lift Deployment
    • Cap Ball Lift Capture
    • Cap Ball Lift Raising
    • Cap Ball Lift Depositing
    • Cap Ball Lift Retracting
    • IMU Close up + 90 degree turn + station keeping behavior(on black turntable; make shot from above)
    • Navigation - Calibrated Odometry in both normal drive and strafing
    • Combined high accuracy Heading and Odometry with Trig = absolute field position (close up of telemetry, plus overhead view of a navigation sequence)
    • Autonomous - high speed of entire sequence - replace with machine vision version when available
    • Autonomous - machine vision localization of beacon targets - phone camera capture
    • Autonomous - beacon isolation and analysis - phone camera capture

    Connect Reveal Video - Shot List

    • MXP Crane Shot Opening Sequence - what if? theme
    • MXP Walk through - adjusted BT script
    • MXP construction effort
    • MXP outreach event visual scrap book

    Connect Reveal Video - Team

  • Who is on this team? Evan leads?
  • Script Team
  • Voiceovers
  • Existing Video Review
  • New shots and slides
  • Editing

Spring Break Doodle Poll

Spring Break Doodle Poll By Charlotte, Ethan, Evan, Lin, Omar, Max, Tycho, Janavi, Jayesh, Darshan, and Austin

Task: Spring Break Meeting Planning

In order to organize a plan for our spring break meetings, we created a poll on doodle.com. We all had individual plans for the break, and with the Doodle Poll we were able to see an overview of everyone's availability. As we have a Super Regional competition coming up, we are on a surge during spring break to complete our many goals regarding the robot, the presentation and more. We have been staying later than usual and attending more meetings to get as much work done as possible. We are anxious and excited to compete in this competition and are willing to put as many hours as we need in order to be completely prepared, including spending time during our break to attend meetings.

Reflections

We have used Doodle Polls in the past, and we plan to use then in the future, as they are helpful in planning our meetings in preparation for Super Regionals. It is important for us to stay organized as a team so that we can focus more on our robot and the game. A tool that seems menial, like the Doodle Poll, is very helpful for our team.

Dallas Women in STEM

Dallas Women in STEM By Lin, Tycho, Max, Jayesh, Janavi, Omar, and Austin

Task: Teach LEGO EV3 and 3D modelling to girls

The Yale club of Dallas organized a STEM event for groups of girls in the city. We took the Mobile Tech XPerience out front for 3D modelling and set up 8 EV3s with laptops and a sumo field inside.

Programming

We led 6-8 girls at a time through the EV3 environment to make a basic sumo program, going through a tournament, and then a final grand melee at the end of the sessions. A couple had experience with EV3, more with Vex, but this session was a lot of their first experiences with programming and robots. Tycho taught the thought process of the program as we went through the steps and I presented on a projector as he went, sometimes taking over talking when we needed breaks. The port view in the programming environment was a great tool to explain the color sensor's light intensity measurement as we could just ask everyone to plug in their bots and see how the numbers changed with the environment. The session was too short to really let them explore what they could do in the program, but we did give hints that the Power variable was something they could tweak. The girls that took the risks in their program generally found that option and won the round robin.

Everyone in the room had a bunch of fun, chaperones included. One girl realized that she had a NXT at home, and now that she knew she could do cool stuff with it, she was excited to try it out. A lot of the teachers asked about the competition levels, and we're hopeful that some of the kids will join a FLL team and the 8th graders going to high school will look for a FTC or FRC team.

Teaching Sumobots at #DallasWEST! #omgrobots #mobiletechxperience #dallascityoflearning

A post shared by Iron Reign Robotics FTC (@team6832) on

Modelling

For the first deployment in a while all 4 printers worked! We were able to print every single design from the day. A couple of the laptops don't have the correct export to STL option, but we were able to work around it by grabbing a flash drive and bringing the file over to a different one. The groups in each session were pretty small compared to the waves that normally come by in an expo, so we could spend a good amount of time making sure no-one was lost. Some people grabbed the wrong design when they came back, but we've gotten the swing of things and sent text notifications to the teachers pretty quickly. Since we were parked out front the groups passed us on the way out and picked up their keychains.

Practice Laps

Practice Laps By Omar, Jayesh, Tycho, Darshan, and Evan

Task: Get some organized driving practice in before Supers

With Superregionals drawing near, we thought it prudent to better organize ourselves in terms of driving teams. We've never felt that we were 100% solid, with people not knowing what to do at certain times in the match. For example, our "Coach" position was almost entirely dedicated to yelling out the match time in 10 second intervals. Today, we talked about our three different roles (Driver, Co-Driver, and Coach) and what each should do. We did several practice matches, rotating through positions each time just to gain practice in each.

Reflections

A large fault our team has always had is focusing too much on improving and working on the robot and not leaving enough time for driver practice. In the coming Spring Break week, we hope to meet several times in order to make sure our teamwork and communication is solid.

Dinner Discussions

Dinner Discussions By Lin, Max, Tycho, Jayesh, Darshan, and Evan

Task: Set last practices' priorities

Many members were out of town this break but we still managed to make a good deal of progress. What we forgot to do was post about it. Github kept track of code edits and we have other records of the practices, so we have a list of 11 articles to be written by this Sunday at the latest. Tomorrow's practice (Saturday March 18th) will be focused on:

  • Driver practice
  • Presentation practice
  • Staging as much as possible for packing

Reflections

Each member is assigned an article for this weekend and we won't be taking up practice time for this. The list was originally written on my plate after I had pizza, but it's now being sent in our chat and updated as people write. Omar posted his first, an hour before I'm writing this.
Also: Ethan - Please. Don't use backslashes. I have to edit your posts 90% of the time because your paths break in the tag index pages.

Beautiful. Truly.

Vuforia

Vuforia By Janavi and Tycho

Task: Use Vuforia to enhance autonomous

We use Vuforia and Open CV vision to autonomously drive our robot to the beacon and then click the button corresponding to our team's colour. We started this by getting the robot the recognize the image below the beacon and keep it within its line of vision. Vuforia is used by the phone's camera to inspect it's surroundings, and to locate target images. When images are located, Vuforia is able to determine the position and orientation of the image relative to the camera.

To start setting up our robots vision, we watched Team 3491 FixIt's videos on Vuforia to help us understand how to set it up. After finishing the code for following the image, we went to go test it out. We found out that we had accidentally coded the robot to follow the picture by moving up and down, as we had coded the phone for portrait mode instead of landscape. After fixing that, we tested out the robot and it ended up attacking Tycho by running at him and the image at full speed. Apparently, we had accidentally told the robot to go much farther than it was supposed to go by placing a parenthesis in the wrong spot. We tested the code one more time, only this time I held the picture while standing on top of the chair. Luckily the robot worked this time and was able to follow the image both ways.

Reflections

We would like to explore the uses of Vuforia+OpenCV. We are considering using it to determine particle color as well as using it to view the images beneath the beacons.

OpenCV

OpenCV By Ethan and Tycho

Task: Implement OpenCV in autonomous

Last year, we had some experience with OpenCV to press the beacons, and this year we decided to do the same. We use OpenCV to find the color we are looking for on the beacon in conjunction with Vuforia. First, it detects the search pattern in the view with vuforia, then isolates that area and finds the side of the beacon with the correct color. Our code is based off of FTC team 3491, Fixit.

In a previous post, we talked about OpenCV and Vuforia research, as well as how we plan to use it in the robot game. And now, I am happy to say, we have implemented it partially in our autonomous. We can now figure out what side a specified color is on the beacon using our new phones, the Galaxy S5. (Side note - do not update them to Android Lolipop if you want to use OpenCV, it will not work.)

Reflections

In the future, we would like to implement OpenCV so that we can detect the color of a particle during autonomous and pick it up to shoot it. However, we probably don't have time to program it before Super Regionals.

Super Regionals - The First Day

Super Regionals - The First Day By Ethan, Evan, Tycho, Max, Jayesh, Janavi, Lin, Darshan, Omar, Charlotte, and Austin

Task: Go to super regionals, set up, and present

Way too early in the morning, on March 22nd, the Iron Reign team gathered in darkness. It was approximately 65 Farenheit and gusts around 12 mph were blowing in from the South. Under this cover of darkness, a bus pulled into our school. As the trees shivered in the wind and the stray dogs around our school howled, we boarded the bus.

Of course, we were boarding the bus to head down to Athens, GA, to go to the South Super Regional tournament, and we hoped, to advance to Worlds. On our way there, we stopped at Sunset HS to pick up RoboBison Amistad, the other team from our school district. Then, we two teams were on our way.

No road trip operated by DISD can ever be simple, and this one was no exception. Our coach was driving our chase vehicle AKA our robotics RV, but managed to beat us there by five hours. The team ended up being on the same bus for twenty total hours, stopping three times. Luckily, on our way down there, many of us got to see sights such as the Mississippi River for the first time.

Finally, we arrived in Athens at 1 in the morning. Some of the team split off to sleep, while others broke off to work on the robot. But, it was late, and we all went to bed soon.

The next, first real day of the tournament, we woke up bright and early. We were one of the first ones to have pit load-in, and we actually managed to do everything in a timely manner. Our tent that we designed was slightly bigger than we thought, but the teams neighboring us were fine with it, so everything worked out in the end. We did a little bit of preliminary scouting and talked to a few teams. We also got our robot through inspections.

Finally, we went into judging, and it was the best presentation that we've done this year. We had two new team members added to the presentation, and we pulled it off flawlessly. As well, we added a new visual gag, with Darshan jumping out at the judges from under the cart. We got asked some very good questions that I can't remember, but the judges were generally very impressed.

Reflections

See Postmortem.

South Superregionals Day Two

South Superregionals Day Two By Max, Tycho, Omar, Jayesh, Darshan, Austin, Charlotte, Lin, Evan, Ethan, and Janavi

Task: Reminisce on our first six Superregionals matches

After a decent night's rest, we began Day Two at around 7 AM. A lot of our tools and materials were still on our RV, so we first moved them over to our pit. Our match schedule said that we'd have nine matches beginning with Match #1 (just our luck). After the...interesting Pokemon-themed opening ceremonies, we began the day with our first match.

Match 1: Our alliance partner was Thorn's Army, and we faced Greased Lightning and Guzzoline Robotics. We lost; we didn't earn as many points in autonomous or teleop. It was our first game anyway; just a warmup. No big deal.

Match 2: Our alliance partner was Saber Robotics, and we faced Aperture Science and The Prototypes. We lost; tied in teleop, but our autonomous didn't score as much as theirs. Warmup game #2, no big deal.

Match 3: Our alliance partner was 4-H Rohming Robotics, and we faced Team Duct Tape and Twisted Axles. We won; even though neither of us were able to cap, we nailed our autonomous and teleop periods.

Match 4: Our alliance partner was Static Void, and we faced East Cobb Robotics and Team CHAOS. We won; our autonomous didn't score as much (we missed a beacon and a ball), but our partner was able to cap and our combined teleop scored more.

Match 5: Our alliance partner was LASA MurPHy, and we faced Diatomic Dingos and Blue Crew, Too. We won; our autonomous worked great and scored well, which made up for our lackluster teleop period.

Match 6: Our alliance partner was Technical Difficulties, and we faced the Rockettes and LASA Ultra Violet. We won; once again, our autonomous worked great (we missed a ball though), we scored more particles in teleop, and our partner was able to cap. Four in a row!

We felt pretty good about this day, since we came off of a four win streak. However, we still worked as long as we could on improving the reliability of our autonomous. Once the pits were closed, we were directed to the team social, where there was Super Smash Bros. and DJ Mickey Nightrain. It seemed like a fun time (Tycho tried his best at professional Smash), but roboticists usually aren't the type to be out on a dance floor. Jayesh is an exception because he's weird.

As well, we were interviewed by a few groups of judges, and performed well in the interviews. We froze up a few times, but it worked out. Also, we invited some of the judges onto our RV.

Reflections

Even though we were able to do a lot of work this day, we're slightly disappointed in our tiredness. Even though the RoboBisons had brought an entire field with them, we didn't really think about asking them to let us use it to practice. We were very exhausted, and with a half-still-sick Mr. Virani, we think we just weren't enthused enough to stay up late and do some more work. If we had, we might've had the small bit of reliability we needed to win more matches with just our autonomous. ;-; Either way, we're proud of the work we did. Tycho did a great job driving for all the matches. Note for next year - we neeeeeeeed more than one driver. On to Day Three!

South Superregional - Day Three

South Superregional - Day Three By Jayesh, Tycho, Omar, Max, Darshan, Austin, Charlotte, Lin, Evan, Ethan, and Janavi

Task: Reminisce on our last three Superregionals matches

Our final competition day began with the driver team rushing to the pits because of a warning given by the game officials for the first match's teams to reach the pits earlier than expected. We reached in time, in fact about an hour before the match actually began. This mild inconvenience did give us time to formulate a strategy against our opponents, the high-scoring mechromancers.

Match 1: Our alliance partner was Neutrinos, and we faced Mechromancers Redfish. We lost; The Neutrinos disconnected early and we had made a strategy of denying the scoring of the Mechromancers. We were relatively succesful, halving their usual scoring output, but without the expected scoring of the Neutrinos, we lost.

Match 2: Our alliance partner was Guzzoline Robotics, and we faced Mouse Spit and Browncoats. We won a very close game, where a blocking penalty by Mouspit helped us win our closest game of the tournament.

Match 3: Our alliance partner was KNO3, and we faced The League of Legendary Scientists and Tundrabots. We lost a 15 point game, where a miscue in our autonomous positioning proved fatal and cost us the winning points of the match.

The match schedule we had today would be our toughest sleight of games for the entire tournament. Despite the unfortunate circumstances of the Neutrinos disconnecting early into our first match, we played decently well and had close games against our toughest competition.

Reflections

Our last loss ended up proving worse than anyone could've expected. In the award ceremony we figured out we were one spot on the leaderboard from advancing. Due to our aquisition of the Judge's award and our position on the leaderboard, we were named first alternate for Worlds. Unfortunate for us, we hope to do better next year.

YouthSpark with Microsoft

YouthSpark with Microsoft By Lin, Jayesh, Ethan, Evan, Charlotte, Omar, Max, Tycho, Austin, Darshan, and Janavi

Task: Mobile Tech XPerience's appearance at the Meyerson

The Meyerson Symphony Center hosted a Microsoft YouthSpark event this Saturday with activities from robotics to VR to 3D printing. We set up the sumo laptops up in the atrium and the 3D in the MXP outside, right next to the Perot tech van. The tech van had most of their setup outside with a smaller piece inside, and we worked pretty well in tandem. (I have it on high authority from a random girl that walked in that ours was cooler)

Reflections

The groups of kids coming by were spread out so we couldn't teach a group of 8 all at once like in previous experiences. Thankfully we had BigThought volunteers helping out. We couldn't have done it without the 5 of them. We ran through the presentation for them at the beginning, as we still thought that's what the plan was going to be, so they knew how to teach it after a few more pointers. Out of necessity it was basically one-on-one teaching, but that meant many of the kids got much more into it than they would have in a larger group. I had one mom comment that this was the most focused she had ever seen her daughter, and a couple of boys tweaked their program so much they ended up winning against everyone except each other. This event definitely got a lot of kids really excited about robotics, and we're hoping they'll look into a team or a club at their schools.

Keychain modeling went smoothly, and we ended up getting all the models printed or printing before leaving, and most given to a parent or kid at the event. We got addresses for the leftover few and are planning on sending them off within a day or two. A group of friends worked on a collaberative house, one doing the rooms, one the design, one the roof. It turned into a massive house when they had to leave, and we made sure to tell the kids and the parents where to find SketchUp if they looked interested. We had a huge number of kids throughout the day and it was a great event and great group of volunteers to teach with.

Discover Summer Resource Fair

Discover Summer Resource Fair By Ethan, Evan, Max, Tycho, and Charlotte

Task: Present to kids at the Discover Summer Resource Fair

Today, we brought the MXP to the DISD Discover Summer Resource Fair. We talked to about 250 people, including the Mayor of Dallas. We helped about 50 people create and print keychains using Google Sketchup. In the front of the RV, we introduced about 200 people to Lego Robotics, and assisted them in creating sumo bots.

The goal of this event was to inspire kids to go into STEM programs, and I believe it was a success. Several kids came up to us and asked us questions about camps, as well as how to get into STEM activities. As well, we increased visibility of the Dallas City of Learning group.

Reflections

These events are very good for increasing FIRST and STEM exposure in local communities, and we will continue doing them in the future. As well, we need to work on accommodating more people in a limited space.

UIL Robotics 2017

UIL Robotics 2017 By Ethan, Evan, Tycho, Charlotte, Austin, Omar, and Janavi

Task: Compete in the UIL Robotics 2017 State Tournament

The UIL Robotics State Tournament is a Texas-only invitational based upon a team's performance in Texas qualifiers and regionals. Since we preformed so well in the North Texas Regionals, winning the first place Inspire Award, we qualified for UIL as well as Super Regionals.

While the tournament is planned with FIRST's help, it differs from a regular FTC tournament. First, the only awards are for the robot game. This harms Iron Reign from the get-go since we work heavily on our journal.

We did well in the robot game, but not amazingly. We went about 4-2, but got carried in some matches. We got chosen for a alliance, but lost in the semi-final round. This year at UIL wasn't much to brag about, so the reflection is the most important part.

Reflections

We learned many lessons at UIL. First, this was our first senior-less competition, so we have to learn how to moderate ourselves without them. Secondly, we ought to put more emphasis on our robot and driving. While the journal is definitely important, we could've won an extra game or two by practicing driving and keeping our robot in working condition. Finally, we need to work on delegation of roles for the upcoming year, as there'll be a vacumn left by the outgoing seniors.

Turn Up! 2017 at Frontiers of Flight

Turn Up! 2017 at Frontiers of Flight By Janavi, Jayesh, Lin, Tycho, Omar, Evan, Charlotte, Ethan, and Darshan

Task:

Each year the Frontiers of Flight Museum hosts the Turn Up!, an event that contains STEM exhibits and demonstration to teach kids about the wonders of Science and Math. We brought the Mobile XPerience (MXP) complete with laptops, 3D printers, and LEGO SumoBot to help teach. Outside the RV we had laptops set up where we taught kids how to code EV3 sumo bots and battle them , we also taught kids how to create their own key chains on SketchUp and 3-D print them. Inside the RV we had more SketchUp latops set up as well as the educational Minecraft servers where the kids could learn how to build structures. As well, we demonstrated our FTC competition robot and Argos by driving them around the museum we got younger kids excited about robotics by giving them balls and letting them "feed" the robot.

Reflections

Going to event like the Dallas Love Field turn up allows us to introduce kids to the wonders of STEM and robotics and help prepare them for their futures from an early age. Helping introduce our community to STEM career is a really integral part of this team and we hope to inspire many more youths through programs like this.

NSTA 2017

NSTA 2017 By Ethan, Evan, Lin, Jayesh, Omar, Tycho, and Charlotte

Task: Expose our MXP to teachers nationwide

Background

For readers who don't know what the MXP is, here's a quick description. Our coach had been floating the idea of a mobile STEM lab for a while, and he was finally given the go-ahead and some money by his company, BigThought. Originally, he planned for buying a van and loading it with tech, but like all true Iron Reign projects, it grew quickly. It turns out that a used RV and a van are roughly the same price, and why not go all out if you can? So, we ended up with a RV old enough to drink sitting in our coaches' driveway. Of course, to convert a RV with outdated shag carpet and a Sea View insignia on the dashboard into a state-of-the-art mobile tech lab, you need free labor. And, where else to get free labor than 11 robotics nerds who have nothing better to do with their summer?

That's where we, the robotics nerds with nothing better to do with out summer, come in. We ripped up the shag carpet, destroyed the bathroom and bedroom, and laid new flooring and installed tech workstations in every part of the RV possible. And along the way, Best Buy, BigThought, and Dallas City of Learning caught wind of our project and gave us grants, allowing us to install four 3D printers, 40 laptops, and 10 EV3 Robotics Kits to educate kids.

The purpose of this is to deliver STEM programs to under-privliged kids in the Dallas area, in hopes of inspiring them to go into STEM fields. As well, the MXP can help close the summer achievement gap, where kids in lower economic brackets tend to forget more over the summer than richer kids. We're also targeted towards middle schoolers - they're of the age where they're learning that they probably won't be an astronaut, and showing them alternative options that are still interesting is extremely important.

Aboard the RV, we run two programs. In front and/or outside, we teach kids EV3 programming to compete in a sumo-bots competition. While kids won't be able tp directly learn from the EV3 programming language, they can take the abstract skills they learn from programming the robot and apply them to other programming and learning endevours later in life. In the back, we teach kids how to 3D model using Google Sketchup, and allow them to create and print their own keychain to take home as a keepsake.

The Trip

The NSTA Convention is a meeting of teachers from all over America and 12 other countries to hold seminars, panels, and presentations for teaching certificates. We were invited there due to our work on the MXP and its success in Dallas. We worked on the floor of the convention, with booths from various companies and agencies also presenting.

We started our trip to Kississime, Florida at 8:40 in the morning, way too early for us high school students in the summer. It was a long, boring drive. The highlight, or anti-highlight of the drive is that halfway through our first day, we started billowing black smoke as we pulled off the interstate. We pulled over on a residential farm road in the middle of nowhere. Luckily, we were assisted in our engine troubles by a guy who happened to see us pull over across the road from his house. He helped us fix our engine and drove our coach to the mechanic's, and we were on our way yet again.

Our first day at the convention was a quarter day. We started at the convention at 4:30p, and ended at 6:30. Despite our limited time, it was probably our most productive day. We talked to over 150 teachers from all over America about our experience building and manning the MXP, and gave advice on building their own. We also allowed the teachers to make and print their own keychains if they wanted.

Our second day was just like the first day, but four times as long. We brought our Argos, our color following robot. We recently fitted him with a new power distribution module by REV Robotics so that we could test it out before the new season. As well, Argos is our Vuforia-testing robot, so we demonstrated that ability too. Our coach also presented on a panel that day. As a finale to that day, we got to see Veritasium's presentation on "The Power of Un".

On the last day, we didn't present to as many people, but we got to have better and more in-depth discussions with everyone who came onboard. We had teachers that designed keychains and programmed robots for over an hour. As well, we presented to the president of the NSTA.

On the way back, we had to engage in one of three Florida pasttimes, and we didn't want to get arrested or get eaten by an alligator. So, we settled on the less permanetly damaging option, and went to the beach instead.

Reflections - One Last Ride

The convention was a roaring success. I estimate that we talked to about 400 teachers from all over America. We can say that we probably inspired teachers from 4-6 other cities to start research and development on building their own RVs. Also, we talked about running a FTC team to interested teachers and FIRST in general.

Even though, this trip was bittersweet. This was the last Iron Reign trip with the original senior members. Lin and Jayesh have been on the team for over one-third of their lives, and this was their final ride as members of Iron Reign. I, personally, have worked with them since 4th grade - one-half of my life! And, as all last rides go, one must find happiness that it was a good one, and that it ever happened. Lin and Jayesh have been great advisors and friends, and they deserve the best of luck in college and in the real world.

Moon Day at Frontier of Flight Museum

Moon Day at Frontier of Flight Museum By Abhi, Charlotte, Austin, Janavi, and Tycho

Task: Present at the MoonDay Event

Today, Iron Reign was invited to the Frontier of Flight Museum by Dallas Love Field Airport for a day of STEM knowledge for its annual "Moon Day". It was time for us to bring in the LEGO robotics kit, 4 laptops for kids, ARGOS, and Juggernaut, our competition bot from this past season. Upon arrival at the museum, we noticed many other fascinating stations such as one explaining NASA's new rover and a model in the arena. We paired up with some other robotics members in the region to set up a station where we could help robotics beginners program the LEGO bots so that the bots could wrestle eachother like Sumo wrestlers. In addition, we fixed ARGOS so that the color sensor would be able to sense a stick in front of it to follow the sign. This allowed us to let other students drive the bot. The same was done with Juggernaut.

Our LEGO station was set up in a way such that even people who couldn't type could use it. We helped people code a bot that drives forward till the bot reached the edge of the board, turns backwards, rotates, and then repeats these reactions until the program is terminated. The students learned that the robot was able to determine when it reached the edge of the board by using the color sensor located on the bottom of the robot. Since the board is built in a dartboard sort of manner with the majority being black and a white ring around the edge, the robot was taught by the students to only stay on the black and not continue if the sensor is on the white. The students had the ability to individually change the speeds of their bots so that when the compete with one another in the "Sumo" game, there could be a winner.

We decided to use ARGOS and Juggernaut as play bots for the day and drove both around. While doing so, we discovered that ARGOS had a bug which, though controllable, was inconvenient. ARGOS' movement system was developed in a way such that the acceleration would compound based on the number of seconds the joystick was pressed in a certain direction. Currently, ARGOS had to be coded this way since we didn't have encoders and power was the only way to put speed into the wheels. We are currently working on fixing this problem. Regardless, we were able to drive ARGOS around and let other children control it using the color sensor stick we developed. The stick was developed in a way that the bot would shine a light onto the area in front of it and if it found the image we had for the color to detect, ARGOS knew to move. We programmed Juggernaut in a similar way so students were able to drive it as well. Since Juggernaut also had shooting abilities, we were able to play catch with numerous people in the area including booth sponsors. In this way, we were able to teach others about the shooting mechanism and carwash system developed to pick up balls in the bot. This fascinated many young people and inspired them to pursue a STEM activity.

Numerous students from a wide array of backrounds came to Moon Day and we were able to spread the knowledge of robotics to them. We had many parents and educators ask us about ways to get involved and we gave them more information about FIRST and their message of Gracious Professionalism. Robotics gave us an avenue to connect with kids, regardless of their socioeconomic status, race, gender, or beliefs. This allowed us to make a deep impact on people and join forces with them to pursue something we are all passionate about. In a world filled with discrimination against those of certain groups, the Frontier of Flight Museum gave us a chance to move people by the wonders of robotics and encourage them to pursue what they want in life without caring about the discriminators. We hope to continue to make an impact on people through future events.

Balancing and PID

Balancing and PID By Tycho

Task: Test and improve the PID system and balance code

We're currently testing code to give Argos a balancing system so that we can demo it. This is also a test for the PID in the new REV robotics expansion hubs, which we plan on switching to for this season if reliable. Example code is below.

public void BalanceArgos(double Kp, double Ki, double Kd, double pwr, double currentAngle, double targetAngle)
 {
     //sanity check - exit balance mode if we are out of recovery range
 
 
 
     if (isBalanceMode()){ //only balance in the right mode
 
         setHeadTilt(nod);
 
         //servo steering should be locked straight ahead
         servoSteerFront.setPosition(.5);
         servoSteerBack.setPosition(0.5);
 
         //double pwr = clampMotor((roll-staticBalance)*-.05);
 
         balancePID.setOutputRange(-.5,.5);
         balancePID.setPID(Kp, Ki, Kd);
         balancePID.setSetpoint(staticBalance);
         balancePID.enable();
         balancePID.setInput(currentAngle);
         double correction = balancePID.performPID();
 
         logger.UpdateLog(Long.toString(System.nanoTime()) + ","
                 + Double.toString(balancePID.getDeltaTime()) + ","
                 + Double.toString(currentAngle) + ","
                 + Double.toString(balancePID.getError()) + ","
                 + Double.toString(balancePID.getTotalError()) + ","
                 + Double.toString(balancePID.getDeltaError()) + ","
                 + Double.toString(balancePID.getPwrP()) + ","
                 + Double.toString(balancePID.getPwrI()) + ","
                 + Double.toString(balancePID.getPwrD()) + ","
                 + Double.toString(correction));
 
         timeStamp=System.nanoTime();
         motorFront.setPower(correction);
 

REV Robot Reveal

REV Robot Reveal By Tycho, Austin, Charlotte, Omar, Evan, and Janavi

Argos V2 - a REV Robot Reveal

This video was pulled from Argos visits to: The NSTA STEM Expo in Kissimmee FL, in the path of eclipse totality in Tennessee, and in North Texas at The Dallas Makerspace, The Southwest Center Mall, Southside on Lamar and the Frontiers of Flight Museum. We hope you find it interesting:

PID Calibration and Testing

PID Calibration and Testing By Tycho

Task: Allow user to change PID coefficients from the controller

To allow each user to create their own settings, we're designing a way to allow the user to tune PID to their own liking from the controller. This also enables debugging for our robot.

public void PIDTune(PIDController pid, boolean pidIncrease, boolean pidDecrease, boolean magnitudeIncrease, boolean magnitudeDecrease, boolean shouldStateIncrement) {
 if (shouldStateIncrement) {
  pidTunerState = stateIncrement(pidTunerState, 0, 2, true);
 }
 if (magnitudeIncrease) {
  pidTunerMagnitude *= 10;
 }
 if (magnitudeDecrease) {
  pidTunerMagnitude /= 10;
 }
 double dir;
 if (pidIncrease) dir = 1;
 else if (pidDecrease) dir = -1;
 else if (pidDecrease) dir = -1;
 else dir = 0;
 switch (pidTunerState) {
  case 0:
   pid.setPID(pid.getP() pidTunerMagnitude * dir, pid.getI(), pid.getD());
   break;
  case 1:
   pid.setPID(pid.getP(), pid.getI() pidTunerMagnitude * dir, pid.getD());
   break;
  case 2:
   pid.setPID(pid.getP(), pid.getI(), pid.getD() pidTunerMagnitude * dir);
   break;
 }
}
public double getPidTunerMagnitude() {
 return pidTunerMagnitude;
}
public int getPidTunerState() {
 return pidTunerState;
}
public int stateIncrement(int val, int minVal, int maxVal, boolean increase) {
 if (increase) {
  if (val == maxVal) {
   return minVal;
  }
  val++;
  return val;
 } else {
  if (val == minVal) {
   return maxVal;
  }
  val--;
  return val;
 }
}

FTC Kickoff and First Meet

FTC Kickoff and First Meet By Ethan, Abhi, Kenna, Austin, Karina, Tycho, and Evan

Task: View FTC Kickoff and plan for the year

Welcome to FTC Relic Recovery! For those who don't know, this year's challenge is archeology themed, and it certainly will be a challenge. The goal of this challenge is to stack 6X6 in blocks (glyphs) in certain patterns to gain as many points as possible. The are also side challenges such as balancing the robot and hitting a specific field element to gain points. Due to the vast number of methods to score points, a robot must contain multiple mechanisms which are extremely accurate as well as quick.

Upon arrival to Williams High School in Plano, TX for the Dallas region kickoff, we quickly amazed. When the regional director, Patrick Michaud, asked the audience how many rookie teams there were, we were mesmerized by the number of hands that went up. Though the FTC organization was already very large, we noticed that the FIRST spirit and ideals of Gracious Professionalism were rapidly spreading to aspiring students of the North Texas region. This is very inspiring for both veterans and rookies because we need to work more closely than ever to mentor one another for our success in the 2017-2018 challenge.

Back to the actual game, before the game reveal, Dr. Michaud introduced the expanded compatibility for different kits and tools for this year's competition. REV robotics was present at the event and discussed their new sets of PDM's as well as new servos, etc. REV kits stuck out to us as we felt the Modern Robotics system, though did it job, had some issues. We hope to implement more REV parts this year for more accurate and efficient parts. Another change we noticed was a new set of smartphones as driver stations/robot controllers, the Motorola Moto phones. We, however, will continue to use ZTE and Samsung Galaxy S5 phones.

All teams were eagerly sitting on the edges of their seats while waiting for the 11AM official reveal of the challenge. Something unique we noticed for this year's reveal video was that there was a skit performed. We found this as enjoyable though we were all waiting for the official animation. Upon completion of the animation video, the field was unraveled and all teams were allowed to access the field and field elements. While doing so, we took note of some complications that we could run into. First, we noticed that the balancing stones had about a 2 centimeter height jump from the ground to their tops. This would mean that our robot would need to drive onto the platform which was at an elevation and then balance. Second, we noticed that the space in which the blocks needed to be placed was very tight. This means that if the robot is not very precise, it could risk the loss of valuble points and time. Lastly, we noticed that the furthest zone for placing the relics was a relatively long way away. Since the robot cannot touch the ground outside the field, this could create some complications, especially if we want to place both relics.

Taking these ideas back to the house, we put our minds together to identify a basic robot design. At kickoff, we noticed that the glyphs felt like the same material that the floor tiles were made of. Upon noticing this, we created a make-shift glyph to prototype with.

Upon discussion of our plans for this year, we decided to strip apart the past two years' bots apart to their elementary parts. We decided to take the 2015 bot apart completely and we isolated the mechanum base of the 2016 bot (Juggernaut). We decided that a mechanum base would be best for this year's competition due to easy maneuverability.

Reflections

We're in for a hard time this year, but we'll have a solid bot. We're a little worried about the glyph-picker mechanism though, and we'll have to decide that in the next few meetings. Through the prototyping of the two intake and deposition systems, we hope to identify our design by the next couple of weeks.

Meeting Log

Meeting Log September 09, 2017 By Ethan, Evan, Abhi, Tycho, Austin, Karina, and Kenna

Meeting Log September 09, 2017

Today was the first meeting of the Relic Recovery season. Our main focus today was strategy, then organization and getting the robot ready for this year's challenges

Today's Meet Objectives

Organization / Documentation / Competition Prep

  • Review Journal
  • Write blog post for Kickoff
  • Fix dates for indexPrintable
  • Blog post catchup
  • Strategy review

Software

  • Glyph recognition OpenCV
  • Aspiring programmer's code review

Build / Modelling

  • Teardown old robot
  • Design Competition - glyph grabber

Service / Outreach

  • Kickoff

Today's Work Log

Team MembersTaskStart TimeDuration
AllPlanning Meeting2:10pm.25
EthanKickoff post2:002
EthanFix dates4:002
EvanDesign Competition2:004
AustinTeardown robot2:002
AustinDesign Competion4:002
TychoCode review2:004
KennaBlog review2:004
KarinaStrategy review2:004
AbhiStrategy review2:004
PeopleTask2:001
PeopleTask2:001
PeopleTask2:001
PeopleTask2:001
PeopleTask2:001
PeopleTask2:001
PeopleTask2:001
PeopleTask2:001
PeopleTask2:001
PeopleTask2:001

Meeting Log

Meeting Log September 16, 2017 By Ethan, Evan, Karina, Tycho, Austin, Charlotte, and Kenna

Meeting Log September 16, 2017

Today we had a major outreach event at Conrad HS in DISD which served around 450 people. We also planned on continuing our building competition, working on strategy, the blog, and the robot teardown.

Today's Meet Objectives

Organization / Documentation / Competition Prep

  • Review Journal
  • Conrad post
  • About page - new members
  • Strategy

Software

  • Code review

Build / Modelling

  • Complete robot teardown
  • Finish design competition
  • Install REV hubs

Service / Outreach

  • Conrad HS volunteering

Today's Work Log

Team MembersTaskStart TimeDuration
AllPlanning Meeting2:10pm.25
EthanConrad post2:002
EthanAbout page4:002
EvanDesign competition2:004
AustinRobot teardown2:001
AustinREV hubs3:001
AustinDesign competition4:002
KarinaAbout page2:002
KarinaStrategy4:002
TychoCode review2:004
CharlotteConrad post2:004

MXP at Conrad HS

MXP at Conrad HS By Ethan, Evan, Karina, Tycho, Austin, Charlotte, and Kenna

Sharing STEM opportinities with kids and their families at Conrad HS

Today, we brought the Dallas City of Learning MXP to Conrad High School to support Dallas ISD's parent outreach fair call PrepU Super Saturday. The focus for this Super Saturday was making parents aware of extracurricular activities available to their students in DISD. So this was a perfect event to let parents know about the robotics programs available in Dallas ISD, including Jr. FLL, FLL, FRC and FTC. The DallasISD STEM Departments was also there and since they are responsible for curating the robotics programs across the school district, we sent parents who wanted to know more over to them.

Activities

Up in the front, we started a MinecraftEDU server and had 3 computers decicated to playing it for younger kids. On the other side, we had set up computers to program EV3s for sumobots. In the back, we ran Google Sketchup on the computers to teach kids how to make keychains and other trinkets using 3D modelling and printing. Our back setup includes 4 FlashForge 3D printers, donated to us by Best Buy.

Today we presented to somewhere around 420-450 people. The MXP was ridiculously crowded at some points, up to 25 people aboard the MXP at some points. We handed out flyers about FIRST to people who visited the table next to our MXP as well, with some significant interest. About 50 keychains were completed and printed - the photo above is Austin holding our printing backlog. Almost all of them were picked up, but we weren't able to print the last 10 or so designs.

Today was a very successful day for the MXP, and we'll break our record of people talked to easily if we keep this up. We have future deployments planned soon including another Super Saturday next weekend.

MXP Event at LV Stockard Middle School

MXP Event at LV Stockard Middle School By Charlotte, Kenna, Tycho, and Austin

STEM education for children and their parents at a DISD event

Earlier this morning, we drove the Mobile Tech Experience RV to LV Stockard Middle School and participated in a DISD event. We served around 250 kids, ages ranging from preschool to middle school. The morning started off slow, but as the day went on, the MXP became more and more crowded. Our spot was near the food and snack area, so lots of families came through after getting breakfast or lunch. We had a sumo field set up outside the vehicle and many people would stop to watch the robots fight, who we would then invite onto the vehicle and teach them how to program these robots themselves.

Like our previous event at Conrad High School, this DISD event was purposed to help kids discover activities that they may enjoy and want to do as an extracurricular. This was a great opportunity to spark interest in STEM in these kids and we answered any questions about who our team is and how they can join or start a robotics team at their school.  The kids rushed in in groups and were very excited to get started with the activities that we provide. A highlight of this specific event was a group of young folklorico dancers who came to learn 3D modeling, as seen above. When a group such as that comes in, it both forces and allows us to practice our teaching skills. Instead of teaching individually, we show the kids how to 3D design step-by-step on a large tv screen donated to us by Big Thought.

This rush of people happens at a lot of events that we cater, and these rushes can get very chaotic, but as a team we agree that it is this chaos that is the most fulfilling once the event ends. Being able to teach these kids and see their faces once they have accomplished something using the knowledge that they just acquired is the most gratifying part of serving on the Mobile Tech Experience.

Meeting Log

Meeting Log September 23, 2017 By Charlotte, Kenna, Tycho, Austin, and Evan

Meeting Log September 23, 2017

We started the day by volunteering at LV Stockard MS, another DISD event. During our practice, we planned to work on robot design, blog updates, and code testing.

Today's Meet Objectives

Organization / Documentation / Competition Prep

  • Review Journal
  • About page updates
  • Stockard blog post

Software

  • Controller mapping

Build / Modelling

  • Cryptobox grabber - competition judging
  • Install chosen grabber
  • Reposition robot hubs

Service / Outreach

  • Stockard MS DISD

Today's Work Log

Team MembersTaskStart TimeDuration
AllPlanning Meeting2:10pm.25
CharlotteStockard post2:002
CharlotteCompetition judging4:002
KennaAbout page2:002
KennaCompetition judging4:002
TychoController mapping2:004
AustinCompetition judging2:002
AustinInstall grabber4:002
EvanCompetition judging2:002
EvanMove hubs4:002

Meeting Log

Meeting Log September 30, 2017 By Ethan, Evan, Tycho, Austin, Kenna, Karina, Austin, and Abhi

Meeting Log September 30, 2017

Today was based around prepping for our meeting with DISD adminmistrators, getting our robots in working order, and organizing parts for the season.

Today's Meet Objectives

Organization / Documentation / Competition Prep

  • Review Journal
  • Fix stats page
  • Strategy

Software

  • Program lift
  • Program grabber

Build / Modelling

  • Fix lift string system
  • Add lift supports

Service / Outreach

  • DISD prep

Today's Work Log

Team MembersTaskStart TimeDuration
AllPlanning Meeting2:10pm.25
EthanFix stats page2:002
EthanDISD Prep4:002
EvanLift supports2:004
AustinLift string2:004
TychoProgram lift2:002
TychoProgram grabber4:002
KennaLift supports2:004
KarinaStrategy2:004
AbhiStrategy2:004

DISD Coaches' Training

DISD Coaches' Training By Ethan, Abhi, Kenna, and Tycho

Task: Present at the DISD Coaches' Training

On Monday, we went to the DISD Coaches' Meeting in order to present our robot to the FIRST DISD coordinator and other coaches in the district. This presentation was one of the reasons we got our robot working so quickly. During the presentation our coach talked with other coaches and the coordinator about funding and tounaments, while we presented in the back and demonstrated our robot and the REV expansion hubs. We also answered questions about coding and design.

Reflections

These presentations are extremely helpful to get our team's name out in the North Texas community, as well as secure funding for our team. They also assist our team in that we can exchange design ideas with coaches at events like these.

V2 Hexifier and Parts

V2 Hexifier and Parts By Tycho and Abhi

Task: Creating the Parts for V2

Today we continued our work on the second grippers. We talked about this in another post, but the gist is that we iterated through various materials to find something that would securely grip the block, without damaging it. At the beginning, that got rid of most of our options, but we tested various sprays, materials, and pressures to find the right material. The baking pan liner was the best, as it had some give without damaging the block, but had enough friction that slippage was a minor issue. So, we needed the baking pan liner to adhere to the large square dowel we chose to be the base for our grippers. In order to do this, we had to design and print a hexifier, as seen below, which makes the dowel's square shape into a hexagon. We also designed and printed square pieces to go on the top and bottom of the gripper to keep it in place.

Reflections

The new grippers are probably going to be much heavier than our previous ones. Not only because of the difference in material, but in sheer size. We may not be able to retain the lightness in V2 that we had hoped to.
We used PTC Creo for all of these parts. Abhi has some video tutorials on using Creo that can be found here and here. Soon we will start assembling our V2 grippers.

Meeting Log

Meeting Log October 07, 2017 By Ethan, Evan, Austin, Tycho, and Charlotte

Meeting Log October 07, 2017

Today's Meet Objectives

Organization / Documentation / Competition Prep

  • Review Journal
  • DISD post
  • Fix old post formatting
  • Stockard MS

Software

  • Begin autonomous

Build / Modelling

  • Fix robot - was dropped
  • REV hub relign 2
  • Realign square base

Today's Work Log

Team MembersTaskStart TimeDuration
AllPlanning Meeting2:10pm.25
EthanDISD post2:002
EthanFix formatting4:002
EvanFix robot2:002
EvanRealign4:002
AustinFix robot2:002
AustinREV realign4:002
TychoAutonomous2:004
CharlotteStockard post2:002
CharlotteJournal review4:002

Meeting Log

Meeting Log October 14, 2017 By Ethan, Kenna, Abhi, Austin, Janavi, Evan, Charlotte, and Tycho

Meeting Log October 14, 2017

Today's Meet Objectives

Organization / Documentation / Competition Prep

  • Review Journal
  • Learn to blog
  • UTA post
  • Teach how to blog
  • Strategy post

Software

  • IMU testing
  • Autonomous

Build / Modelling

  • Install wheel mounts
  • Test string for lift

Service / Outreach

  • UTA volunteering

Today's Work Log

Team MembersTaskStart TimeDuration
AllPlanning Meeting2:10pm.25
EthanTeach how to blog2:002
EthanFix formatting of posts4:002
KennaLearn to post2:002
KennaUTA post4:002
AbhiStrategy post2:004
AustinWheel mounts2:004
EvanString test2:004
CharlotteLearn to blog2:004
TychoIMU2:002
TychoAutonomous4:002

Grabber Code

Grabber Code By Tycho

Task: Create a seperate class for the grabbers on the robot

Today, we created a new PickAndPlace class to isolate the code that controls the current gripper and lift system. I also added new methods to send the lift to max, min and stacking heights with manual override. It now prevents over extension or over unwinding by setting max and minumum heights. It also eliminates the problem of having to push the lift all the way down after lifting.

The code below describes the functionality of the robot. The class names should be self-explanatory as to what they do.

+package org.firstinspires.ftc.teamcode;

import com.qualcomm.robotcore.hardware.DcMotor;
import com.qualcomm.robotcore.hardware.Servo;

/**
 * Created by tycho on 10/15/2017.
 */

public class PickAndPlace {

    DcMotor motorLift = null;
    Servo servoGrip = null;

    private int liftMax = 4000;
    private int liftStack = 2500; //stacking height
    private int liftMin = 50;
    private int liftPlanck = 450; //smallest distance to increment lift by when using runToPosition

    boolean gripOpen = false;
    int gripOpenPos = 900;
    int gripClosedPos = 2110;

    public PickAndPlace(DcMotor motorLift, Servo servoGrip){
        this.motorLift = motorLift;
        this.servoGrip = servoGrip;
    }

    public void ToggleGrip (){
        if (gripOpen) {
            gripOpen = false;
            servoGrip.setPosition(ServoNormalize(gripClosedPos));
        }
        else {
            gripOpen = true;
            servoGrip.setPosition(ServoNormalize(gripOpenPos));
        }
    }


    public void stopLift(){
        motorLift.setPower(0);
    }

    public void raiseLift(){
        if(motorLift.getCurrentPosition() < liftMax) motorLift.setPower(.5);
        else motorLift.setPower(0);
    }
    public void lowerLift(){
        if(motorLift.getCurrentPosition() > liftMin) motorLift.setPower(-.5);
        else motorLift.setPower(0);
    }

    public void raiseLift2(){
        if (motorLift.getCurrentPosition() < liftMax && motorLift.getTargetPosition() < liftMax) {
            motorLift.setTargetPosition((int) Math.min(motorLift.getCurrentPosition()+ liftPlanck, liftMax));
            motorLift.setMode(DcMotor.RunMode.RUN_TO_POSITION);
            motorLift.setPower(1);
        }
    }
    public void lowerLift2() {
        if (motorLift.getCurrentPosition() > liftMin && motorLift.getTargetPosition() > liftMin) {
            motorLift.setTargetPosition((int) Math.max(motorLift.getCurrentPosition() - liftPlanck, liftMin));
            motorLift.setMode(DcMotor.RunMode.RUN_TO_POSITION);
            motorLift.setPower(.8);
        }
    }
    public void goLiftMax() {

            motorLift.setTargetPosition(liftMax);
            motorLift.setMode(DcMotor.RunMode.RUN_TO_POSITION);
            motorLift.setPower(1);

    }

    public void goLiftMin() {

        motorLift.setTargetPosition(liftMin);
        motorLift.setMode(DcMotor.RunMode.RUN_TO_POSITION);
        motorLift.setPower(1);

    }

    public void goLiftStack() {

        motorLift.setTargetPosition(liftStack);
        motorLift.setMode(DcMotor.RunMode.RUN_TO_POSITION);
        motorLift.setPower(1);

    }

    public int getMotorLiftPosition(){
        return motorLift.getCurrentPosition();
    }

    public static double ServoNormalize(int pulse){
        double normalized = (double)pulse;
        return (normalized - 750.0) / 1500.0; //convert mr servo controller pulse width to double on _0 - 1 scale
    }

}

Travis High School Night

Travis High School Night By Tycho, Charlotte, Ethan, and Karina

Encourage students at Travis to enroll at our School of Science and Engineering (SEM)

Today we went to Travis Middle School for their high school night where they have many high schools competing to enroll their graduating 8th graders. Travis is a Talented and Gifted school and about half of our team came from there. Mr. Newton was our lead presenter. He is a DISD teacher of the year and the head of our math department. He is the school’s killer math teacher and has done the high school night presentation at Travis for the last 3 years. Each year Iron Reign has been there to support him.

It started with Mr. Newton giving his usual presentation on how strong of school SEM is, including how well it performs on the international stage. He talked about the culture of the school and about how students there manifest their love for science, math and engineering and we are always ready to support each other. He spoke about the college readiness program and how 100% of seniors last year are entering college and have been offered a total of $21 million worth of scholarships. And then he handed it over to us to describe the robotics program.

We told them about how robotics unifies all the different subjects that they're learning at SEM. We described how it brings together fields like physics, engineering, computer science and calculus to make a real tangible product. We also showed how robotics exposes the students that participate in it to experiences that they would otherwise not have the ability to access if they were just regular students at SEM, such as connections with professional engineers and our intense local STEM outreach efforts. Charlotte shared how in just this last year we’ve been all around the country to participate in competitions and outreach events as far afield as Austin, Arkansas, Georgia and Florida. Karina helped demo the robots and showed some Travis students how to operate them, while Ethan helped highly interested students understand our robotics program in detail.

Altogether we delivered our presentation to 3 different groups and spoke with roughly 120 students and family members. We know Mr. Newton convinced most families to look very seriously at applying to SEM.

We have always said that if we make a connection that helps even a single student think of themselves in a STEM field, we’ve had a successful outreach program. We think we regularly have that kind of impact and more, but we are seldom told it straight out. Today we had two students tell us that our robotics demo directly convinced them declare SEM as their high school first choice. This was a good day for us, and a great day for our school.

Meeting Log

Meeting Log October 21, 2017 By Ethan, Tycho, Evan, Abhi, Charlotte, and Karina

Meeting Log October 21, 2017

Today's Meet Objectives

Organization / Documentation / Competition Prep

  • Review Journal
  • Travis blog post
  • Work on presentation

Software

  • Work on openCV integration
  • Test out RoboRealm

Build / Modelling

  • Robot drive practice
  • Learn PTC
  • Jewel thief mockup

Today's Work Log

Team MembersTaskStart TimeDuration
AllPlanning Meeting2:10pm.25
EthanWork on presentation2:004
TychoTravis blog post2:001
TychoOpenCV3:002
TychoRobotRealm4:002
CharlottePTC2:004
AbhiPTC2:004
KarinaDrive practice2:004
EvanJewel thief mockup2:004

Machine Vision Goals – Part 1

Machine Vision Goals – Part 1 By Tycho

We’ve been using machine vision for a couple of years now and have a plan to use it in Relic Rescue for a number of things. I mostly haven’t gotten to it because college application deadlines have a higher priority for me this year. But since we already have experience with color blob tracking in OpenCV and Vuforia tracking, I hope this won’t be too difficult. We have 5 different things we want to try:

VuMark decode – this is obvious since it gives us a chance to regularly get the glyph crypto bonus. From looking at the code, it seems to be a single line different from the Vuforia tracking code we’ve already got. It’s probably a good idea to signal the completed decode by flashing our lights or something like that. That will make it more obvious to judges and competitors.

Jewel Identification – most teams seem to be using the REV color sensor on the arm their jewel displacement arm. We’ll probably start out doing that too, but I’d also like to use machine vision to identify the correct jewel. Just because we can. Just looking at the arrangement, we should be able to get both the jewels and the Vuforia target in the same frame at the beginning of autonomous.

Alignment – it is not legal to extend a part of the robot outside of the 18” dimensions during match setup. So we can’t put the jewel arm out to make sure it is between the jewels. But there is nothing preventing us from using the camera to assist with alignment. We can even draw on the screen where the jewels should appear, like inside the orange box below. This will also help with Jewel ID – we won’t have to hunt for the relevant pixels – we can just compare the average hue of the two regions around the wiffle balls.

Autonomous Deposition – this is the most ambitious use for machine vision. The dividers on the crypto boxes should make pretty clear color blob regions. If we can find the center points between these regions, we should be able to code and automatically centering glyph depositing behavior.

Autonomous glyph collection – ok this is actually harder. Teams seem to spend most of their time retrieving glyphs. Most of that time seems to be spent getting the robot and the glyphs square with each other. Our drivers have a lot of trouble with this even though we have a very maneuverable mecanum drive. What if we could create a behavior that would automatically align the robot to a target glyph on approach? With our PID routines we should be able to do this pretty efficiently. The trouble is we need to figure out the glyph orientation by analyzing frames on approach. And it probably means shape analysis – something we’ve never done before. If we get to this, it won’t be until pretty late in the season. Maybe we’ll come up with a better mechanical approach to aligning glyphs with our bot and this won’t be needed.

Tools for Experimenting

Machine vision folks tend to think about image analysis as a pipeline that strings together different image processing algorithms in order to understand something about the source image or video feed. These algorithms are often things like convolution filters that isolate different parts of the image. You have to decide which stages to put into a pipeline depending on what that pipeline is meant to detect or decide. To make it easier to experiment, it’s good to use tools that let you create these pipelines and play around with them before you try to hard-code it into your robot.

I've been using a tool called ImagePlay. http://imageplay.io/ It's open source and based on OpenCV. I used it to create a pipeline that has some potential to help navigation in this year's challenge. Since ImagePlay is open source, once you have a pipeline, you can figure out the calls to it makes to opencv to construct the stages. It's based on the C++ implementation of OpenCV so we’ll have to translate that to java for Android. It has a very nice pipeline editor that supports branching. The downside is that this tool is buggy and doesn't have anywhere near the number of filters and algorithms that RoboRealm supports.

RoboRealm is what we wanted to use. We’ve been pretty closely connected with the Dallas Personal Robotics Group (DPRG) for years and Carl Ott is a member who has taught a couple of sessions on using RoboRealm to solve the club’s expert line following course. Based on his recommendation we contacted the RoboRealm folks and they gave use a 5 user commercial license. I think that’s valued at $2,500. They seemed happy to support FTC teams.

RoboRealm is much easier to experiment with and they have great documentation so now have an improved pipeline. It's going to take more work to figure out how to implement that pipeline in OpenCV because it’s not always clear what a particular stage in RoboRealm does at a low level. But this improved pipeline isn’t all that different from the ImagePlay version.

Candidate Pipeline

So here is a picture of a red cryptobox sitting against a wall with a bunch of junk in the background. This image ended up upside down, but that doesn’t matter for just experimenting. I wanted a challenging image, because I want to know early if we need to have a clean background for the cryptoboxes. If so, we might need to ask the FTA if we can put an opaque background behind the cryptoboxes:

Stage 1 – Color Filter – this selects only the reddest pixels

Stage 2 – GreyScale – Don’t need the color information anymore, this reduces the data size

Stage 3 – Flood Fill – This simplifies a region by flooding it with the average color of nearby pixels. This is the same thing when you use the posterize effect in photoshop. This also tends to remove some of the background noise.

Stage 4 – Auto Threshold – Turns the image into a B/W image with no grey values based on a thresholding algorithm that only the RoboRealm folks know.

Stage 5 – Blob Size – A blob is a set of connected pixels with a similar value. Here we are limiting the output to the 4 largest blobs, because normally there are 4 dividers visible. In this case there is an error. The small blob on the far right is classified as a divider even though it is just some other red thing in the background, because the leftmost column was mostly cut out of the frame and wasn’t lit very well. It ended up being erased by this pipeline.

Stages 6 & 7 – Moment Statistics – Moments are calculations that can help to classify parts of images. We’ve used Hu Moments since our first work with machine vision on our robot named Argos. They can calculate the center of a blob (center of gravity), its eccentricity, and its area. Here the center of gravity is the little red square at the center of each blob. Now we can calculate the midpoint between each blob to find the center of a column and use that as a navigation target if we can do all this in real-time. We may have to reduce image resolution to speed things up.

Working on Autonomous

Working on Autonomous By Tycho

Task: Create a temporary autonomous for the bot

We attempted to create an autonomous for our first scrimmage. It aimed to make the robot to drive forward and drive into the safe zone. However, we forgot to align the robot and it failed at the scrimmage.

Instead of talking about the code like usual, the code's main functions are well documented so that any person can understand its functions without a prior knowledge of coding.

 public void autonomous2 (){

        switch(autoState){
            case 0: //moves the robot forward .5 meters
                if (robot.driveStrafe(false, .60, .35)) {

                    robot.resetMotors(true);
                    autoState++;
                }
                    break;
            case 1: //scan jewels and decide which one to hit
                if (robot.driveForward(false, .25, .35)) {
                    autoTimer = futureTime(1f);
                    robot.resetMotors(true);
                    autoState++;
                }

                break;
            case 2: //short move to knock off jewel

                robot.glyphSystem.ToggleGrip();
                autoTimer = futureTime(1f);

                robot.resetMotors(true);
                autoState++;
                break;
            case 3: //back off of the balance stone
                if (robot.driveForward(true, .10, .35)) {
                    autoTimer = futureTime(3f);
                    robot.resetMotors(true);
                    autoState++;
                }
                break;
            case 4: //re-orient the robot
                autoState++;
                break;
            case 5: //drive to proper crypto box column based on vuforia target
                autoState++;
                break;
            case 6: // turn towards crypto box
                autoState++;
                break;
            case 7: //drive to crypto box
                autoState++;
                break;
            case 8: //deposit glyph
                autoState++;
                break;
            case 9: //back away from crypto box
                autoState++;
                break;
        }
    }

Gripper Construction

Gripper Construction By Tycho

Task: Making the Gripper

Standard parts were used to create the backbone. Then, we bent some tetrix parts to connect the backbone to the servos. We used continuous rotation cervos to solve the issue mentioned earlier. This was a fairly easy build but we still have a ways to go before V2 is completed.

This gripper will be far superior to our prior designs in that it will be lighter, as we are substituting wood and rubber for metal parts, which will solve our string breakage issue. As well, we will be able to grasp objects more securely, due to the rubber's larger coefficient of friction and that the gripper arms themselves have more surface area than our original design. Finally, our gripper will be more dependable due to slightly better wire organization than before.

This helps our strategy in that it will be far easier to pick up individual blocks, and helps us achieve our goal of grabbing multiple blocks at once. The wider gripper arms will make it so that we can stack blocks on top of each other before bringing them to the CryptoBox, which makes our robot 1.5x as fast in operating time.

DISD Scrimmage

DISD Scrimmage By Charlotte, Janavi, Ethan, Evan, Tycho, Austin, Karina, Kenna, and Abhi

Task: Run and compete at the DISD Scrimmage

Today we helped run and participated in a scrimmage at the Davis Ellis Field House. Iron Reign will be hosting a qualifier in December at Townview, our home school. This scrimmage served as a practice for the preparation and execution of an FTC event. We were able to learn the best way to assemble the field, run the scoring and game software, and properly announce rounds and other information teams may need. As we should, we set up an inspection table where members of our team used the FTC approved inspection checklist to properly assess the robots of other teams along with our own robot. This is a skill that we will need to use when performing inspections during our qualifier. Additionally, we had to figure the software required to run the audio behind matches and fill in the scoring data, and having done this now will save us a lot of time during the qualifier that we are going to host.

We also learned how important it is to create an itinerary for your team and try to keep everyone moving at the needed pace. During this scrimmage we were only able to complete 8 out of 12 matches due to this being some teams first match ever and some issues with teams not arriving, or not having been registered beforehand. But this provided us with a great experience and lots of information, we will take all of the things we learned after helping run this scrimmage and apply it to the qualifier we are hosting in December.

This scrimmage was our second of the season, and while part of the team was focused on announcing, scoring, and field setup, the others worked on improving the robot and pinpointing key issues to solve before our first qualifier this Saturday the 11th at Greenhill. Also, the drive team got the necessary practice for skills that they need for upcoming competitions, like setting up WiFi direct connections between our phones and recognizing when batteries had low or sufficient voltages, skills that don’t seem very difficult but are very important for those working hands-on the robot during competitions. Also, with the removal of the “wiggle test” this year, we have to adapt and become very prepared before each match so that we can make the smooth transition that is required from autonomous period to tele-op. Although we have spent a lot of time doing drive practice on the field that we were gifted, driving under pressure in a competitive environment with other teams in our district is when we are able to decipher the most prominent problems with our robot. An example of this is our autonomous program: running it seems like second nature when we are practicing alone, but when we are with other teams there are more factors to consider, like whether our autonomous program is compatible with theirs, etc. Scrimmages are a perfect opportunity to figure out what issues we have and how to solve them, and this time we were also able to get the practice we so needed running an FTC qualifier.

Adding Code Fixes to the Robot

Adding Code Fixes to the Robot By Tycho

Task: Add code updates

These commits add said functionality:

  • Pre-game logic - joystick control
  • Fix PID settings
  • Autonomous resets motor
  • Jewel Arm functionality
  • Autonomous changes
  • Tests servos

These commits allow better QoL for our drivers, allow our robot to function more smoothly both in autonomous and during TeleOp, allows us to score the jewels, and lets us test servos.

Jewel Arm


package org.firstinspires.ftc.teamcode;

import com.qualcomm.robotcore.hardware.NormalizedColorSensor;
import com.qualcomm.robotcore.hardware.Servo;

/**
 * Created by 2938061 on 11/10/2017.
 */

public class JewelArm {

    private Servo servoJewel;
    private NormalizedColorSensor colorJewel;
    private int jewelUpPos;
    private int jewelDownPos;

    public JewelArm(Servo servoJewel, NormalizedColorSensor colorJewel, int jewelUpPos, int jewelDownPos){
        this.servoJewel = servoJewel;
        this.colorJewel = colorJewel;
        this.jewelUpPos = jewelUpPos;
        this.jewelDownPos = jewelDownPos;
    }

    public void liftArm(){
        servoJewel.setPosition(ServoNormalize(jewelUpPos));
    }
    public void lowerArm(){
        servoJewel.setPosition(ServoNormalize(jewelDownPos));
    }

    public static double ServoNormalize(int pulse){
        double normalized = (double)pulse;
        return (normalized - 750.0) / 1500.0; //convert mr servo controller pulse width to double on _0 - 1 scale
    }

}

Autonomous

		public void autonomous(){
        switch(autoState){
            case 0: //scan vuforia target and deploy jewel arm
                robot.jewel.lowerArm();
                autoTimer = futureTime(1.5f);
                if(autoTimer < System.nanoTime()) {
                    relicCase = getRelicCodex();
                    jewelMatches = robot.doesJewelMatch(isBlue);
                    autoState++;
                }
                break;
            case 1: //small turn to knock off jewel
                if ((isBlue && jewelMatches)||(!isBlue && !jewelMatches)){
                    if(robot.RotateIMU(10, .5)){
                        robot.resetMotors(true);
                    }
                }
                else{
                    if(robot.RotateIMU(350, .5)){
                        robot.resetMotors(true);
                    }
                }
                break;
            case 2: //lift jewel arm
                robot.jewel.liftArm();
                autoTimer = futureTime(1.5f);
                if(autoTimer < System.nanoTime()) {
                    jewelMatches = robot.doesJewelMatch(isBlue);
                    autoState++;
                }
            case 3: //turn parallel to the wall
                if(isBlue){
                    if(robot.RotateIMU(270, 2.0)){
                        robot.resetMotors(true);
                        autoState++;
                    }
                }
                else{
                    if(robot.RotateIMU(90, 2.0)){
                        robot.resetMotors(true);
                        autoState++;
                    }
                }
                autoState++;
                break;
            case 4: //drive off the balance stone
                if(robot.driveForward(true, .3, .5)) {
                    robot.resetMotors(true);
                    autoState++;
                }
                break;
            case 5: //re-orient robot
                if(isBlue){
                    if(robot.RotateIMU(270, 1.0)){
                        robot.resetMotors(true);
                        autoState++;
                    }
                }
                else{
                    if(robot.RotateIMU(90, 1.0)){
                        robot.resetMotors(true);
                        autoState++;
                    }
                }
                break;
            case 6: //drive to proper crypto box column based on vuforia target
                switch (relicCase) {
                    case 0:
                        if(robot.driveForward(true, .5, .35)) {
                            robot.resetMotors(true);
                            autoState++;
                        }
                        break;
                    case 1:
                        if(robot.driveForward(true, .75, .35)) {
                            robot.resetMotors(true);
                            autoState++;
                        }
                        autoState++;
                        break;
                    case 2:
                        if(robot.driveForward(true, 1.0, .35)) {
                            robot.resetMotors(true);
                            autoState++;
                        }
                        autoState++;
                        break;
                }
                break;
            case 7: //turn to crypto box
                if(isBlue){
                    if(robot.RotateIMU(315, 1.5)){
                        robot.resetMotors(true);
                        autoState++;
                    }
                }
                else{
                    if(robot.RotateIMU(45, 1.5)){
                        robot.resetMotors(true);
                        autoState++;
                    }
                }
                break;
            case 8: //deposit glyph
                if(robot.driveForward(true, 1.0, .50)) {
                    robot.resetMotors(true);
                    robot.glyphSystem.ReleaseGrip();
                    autoState++;
                }
                break;
            case 9: //back away from crypto box
                if(robot.driveForward(false, .5, .50)){
                    robot.resetMotors(true);
                    autoState++;
                }
                break;
            default:
                robot.resetMotors(true);
                autoState = 0;
                active = false;
                state = 0;
                break;
        }
    }
    public void autonomous2 (){

        switch(autoState){
            case 0: //scan vuforia target and deploy jewel arm
                robot.jewel.lowerArm();
                autoTimer = futureTime(1.5f);
                if(autoTimer < System.nanoTime()) {
                    relicCase = getRelicCodex();
                    jewelMatches = robot.doesJewelMatch(isBlue);
                    autoState++;
                }
                break;
            case 1: //small turn to knock off jewel
                if ((isBlue && jewelMatches)||(!isBlue && !jewelMatches)){
                    if(robot.RotateIMU(10, .5)){
                        robot.resetMotors(true);
                    }
                }
                else{
                    if(robot.RotateIMU(350, .5)){
                        robot.resetMotors(true);
                    }
                }
                break;
            case 2: //lift jewel arm
                robot.jewel.liftArm();
                autoTimer = futureTime(1.5f);
                if(autoTimer < System.nanoTime()) {
                    jewelMatches = robot.doesJewelMatch(isBlue);
                    autoState++;
                }
            case 3: //turn parallel to the wall
                if(isBlue){
                    if(robot.RotateIMU(270, 2.0)){
                        robot.resetMotors(true);
                        autoState++;
                    }
                }
                else{
                    if(robot.RotateIMU(90, 2.0)){
                        robot.resetMotors(true);
                        autoState++;
                    }
                }
                autoState++;
                break;
            case 4: //drive off the balance stone
                if(robot.driveForward(true, .3, .5)) {
                    robot.resetMotors(true);
                    autoState++;
                }
                break;
            case 5: //re-orient robot
                if(isBlue){
                    if(robot.RotateIMU(270, 1.0)){
                        robot.resetMotors(true);
                        autoState++;
                    }
                }
                else{
                    if(robot.RotateIMU(90, 1.0)){
                        robot.resetMotors(true);
                        autoState++;
                    }
                }
                break;
            case 6: //drive to proper crypto box column based on vuforia target
                switch (relicCase) {
                    case 0:
                        if(robot.driveStrafe(true, .00, .35)) {
                            robot.resetMotors(true);
                            autoState++;
                        }
                        break;
                    case 1:
                        if(robot.driveStrafe(true, .25, .35)) {
                            robot.resetMotors(true);
                            autoState++;
                        }
                        autoState++;
                        break;
                    case 2:
                        if(robot.driveStrafe(true, .50, .35)) {
                            robot.resetMotors(true);
                            autoState++;
                        }
                        autoState++;
                        break;
                }
                break;
            case 7: //turn to crypto box
                if(isBlue){
                    if(robot.RotateIMU(215, 1.5)){
                        robot.resetMotors(true);
                        autoState++;
                    }
                }
                else{
                    if(robot.RotateIMU(135, 1.5)){
                        robot.resetMotors(true);
                        autoState++;
                    }
                }
                break;
            case 8: //deposit glyph
                if(robot.driveForward(true, 1.0, .50)) {
                    robot.resetMotors(true);
                    robot.glyphSystem.ReleaseGrip();
                    autoState++;
                }
                break;
            case 9: //back away from crypto box
                if(robot.driveForward(false, .5, .50)){
                    robot.resetMotors(true);
                    autoState++;
                }
                break;
            default:
                robot.resetMotors(true);
                autoState = 0;
                active = false;
                state = 0;
                break;
        }
    }

Greenhill FTC Qualifier

Greenhill FTC Qualifier By Ethan, Evan, Tycho, Charlotte, Austin, Abhi, Tycho, Karina, and Kenna

Task: Compete at our first FTC qualifier

So, we were absolute failures. There's no way to get around that. We got 14th place out of 14, and our presentation flopped. But, its not the end of the world, even if it may feel like it. We have another qualifier in Oklahome in one week, and we need to analyze what we did wrong so that we can improve for the next round.

  • Match 1
  • We lost, 79-93. This was our closest match, and if we had managed our time in-game more wisely, we could have won by balancing. This was our only game in the margin-of-error.
  • Match 2
  • We lost 101-131. The other alliance outperformed us in scoring glyphs, and was able to knock an additional jewel off in autonomous.
  • Match 3
  • We lost 28-65. We failed on every level, even to balance our robot. Our bot was on for about 10 seconds for the entire match.
  • Match 4
  • We lost 111-181. We scored only 3 glyphs and underperformed in autonomous.
  • Match 5
  • We lost 61-203. Our robot was not on.

We had many failures in the robot game. Our first, main failure was lack of practice. We only really dedicated ourselves to driving practice two weeks before, and we had trouble aligning the blocks throughout the day. In prior years, we had started drive practice from over a month out, so this was a major failure on our part. A second failure that wasn't our fault was that we had connection issues between the phones, and weren't able to drive in two rounds. But, because of our collective failures, we managed not to win a single game. However, we ended up with the second heighest rank points in the whole tournament (380).

Our presentation was a failure too. We hadn't practiced our presentation enough, and it seemed a bit janky at points. In addition, our engineering journal was a bit rushed, as we'd printed the night before and had some issues printing. We also didn't turn the control award in. However, one highlight of the judging is that we were able to answer questions quickly and effectively, and the judges seemed to like that. We did end up winning the Connect Award.

Reflections

This tournament was one of Iron Reign's worst. However, we must learn from that so we don't repeat our mistakes. The silver lining of this tournament is that we can't really preform any worse :).

Code Fixes and Readability

Code Fixes and Readability By Tycho

Task: Make the code more readable

So, we can't include all the code changes we made today, but all of it involved cleaning up our code, removing extra functions we didn't use, refactoring, adding comments, and making it more readable for the tournament. We had almost 80k deletions and 80k additions. This marks a turning point in the readablity of our code so that less experienced team members can read it. We went through methodically and commented out each function and method for future readability, as we will have to pass the codebase on to next year's team.

Oklahoma Qualifier Recap

Oklahoma Qualifier Recap By Ethan, Evan, Austin, Janavi, Charlotte, Kenna, Tycho, Karina, and Abhi
Task: Compete at the Oklahoma Qualifier

Once done, our postmortem post will be here.

On Nov. 17, we went to the Oklahoma Mustang HS qualifier. Our strategy for this tournament was to attempt to qualify in multiple regions so that we have more chances to get to the South Super Regionals. For this tournament, the DISD STEM Dept. funded the tournament fees for us to attend, as well as housing for our team. We drove down there on our RV, and also fixed it up so that we could convert it into tournament mode.

For out-of-area tournaments, we have to prepare ahead of time so that we can get everything we need, since we can't really go back to get parts we forgot. So, this time, we created a packing list in order to ensure that we have everything on the RV before we leave. The complete list is below.

Tent / Pits

  • Shield
  • Main robot Cart
  • Small carts (x2)
  • Banner stand
  • Main banners (x3)
  • Aquila
  • Inspire
  • Inspire mount
  • Monitor
  • Extension cord(s)
  • Power Strip(s)

Field Elements

  • Cryptobox
  • Foam blocks
  • Jewels
  • Jewel base
  • Vuforia pattern on stick

Tools

  • Staticide
  • Shamwow
  • Threadlock
  • Red (x3), Blue (x3), Green (x3) hex keys
  • Flat heads: Large (x2), Small (x2)
  • Phillips heads: Large (x2), Small (x2)
  • Modular screwdrivers + bits (Cyan wrenches)
  • Rubber bands / Hair Ties?
  • String for pulley system
  • Container store chest of drawers
  • Chain Box
  • Tape Box
  • Glue + putty Box
  • Large pliers
  • Needlenose pliers
  • Regular Pliers
  • Power pole Box + stuff with that
  • Xacto knifes
  • Regular knifes
  • Zip ties
  • Axles
  • Drills
  • Yellow Drill (x2)
  • Drill batteries + chargers
  • Electric screwdrivers + bits
  • Plugin drill
  • Wire strippers
  • Measuring tape
  • Dremel
  • Reciprocating Dremel
  • Circular Dremel
  • Sawblade
  • Evil sandpaper
  • Battery
  • Charger
  • Hack saw
  • Hammer
  • Mallet
  • Bolt cutters
  • Lighter
  • Core power distribution Box

Parts

  • Standard nuts + bolts
  • Extrusion nuts + hex bolts
  • Prototyping wire
  • Tetrix pieces
  • U pieces
  • Plates
  • Phone cases - ZTE + SG5
  • Extrusions (Cap lift size)
  • Extrusion brackets

Electronics

  • Phones
  • All cables that we can get our hands on
  • Phone cables(new and old)
  • Coding cables        
  • OTG cables
  • Printer
  • Computers
  • Battery Box - phone
  • Joysticks
  • 9-volt batteries
  • All wrenches
  • Spare Core Power Distribution Module Box
  • M-M cable
  • M-F cable

Organization (Boxes)

  • Judging Box
  • Damaged foam block
  • Example of abs 3-D printing
  • Drawer Slide                      
  • All grabber prototypes
  • Turkey baster ones
  • Conveyer belt one
  • Current one on robot
  • Tape Box
  • Foam tape
  • Gaff tape
  • Duct tape
  • Duct tape
  • Double sided
  • More + ........
  • Glue + Putty Box
  • Battery Box
  • Batteries
  • Phone cables
  • Phone + Charging Box
  • Joystick Box
  • Powerpole Box
  • Tri-Crimp
  • Powerpoles
  • Wire stripper
  • Wire clipper
  • Needle nose
  • Container store chest of drawers
  • Chain Box
  • Spare Core Power Distribution Module Box

Before leaving, we had already encountered problems. Our RV's generator refused to turn on, which meant that we couldn't get AC, chargers, or any electrical components on board to work. So, we had to do a last-minute oil change. As well, we had trouble finding several important tool parts, such as our box of drill bits and other things. Running about an hour late, we finally left for Oklahoma. The drive took the usual 4 hours, stopping to get Schlotzky's™, and we arrived at midnight. After we were all assigned to our rooms and all, we did another runthrough of our presentation, then went to bed

We woke up by 7am the next day, and slogged our way out of bed to the Mariott™ Contentental™ Breakast™. Over breakfast, we discussed our strategies and rules for the tournaments. Some of the major points are these:

  • Unless your work requires it, stay off the RV and in the pit
  • If possible, try to talk to as many teams as possible, hand out flyers
  • When you see judges roaming the tournament, try to flag them down to talk
  • Try to get as many people as possible to see the RV
  • Do scouting ASAP

Flyer

Inspection


We didn't manage our time well for inspection. We hadn't really prepared our robot back in Dallas, nor on the way, so we had to attach the side panels and the buttons right as we arrived. As well, we had to make sure the bot fit within the sizing cube. Overall, our preparation for this section of the tournament was 4/10.

Judging/Presentation


This was our largest improvement from last tournament. This was probably the best presentation we've put on yet. As well, our engineering journal was indexed a little bit better than last time. The judges also seemed receptive to our presentation and asked in-depth questions on our robot, which was very enjoyable and signalled that we would be considered for future awards. As well, we managed to get every judge in the tournament on the RV, every single referee, and about half the teams total. So, we did well on that front. As well, our strategy of trying to talk to every judge worked well, as we were able to cover a variety of subjects, ranging from our design process, to business, to our outreach, to women in STEM.

Robot Game

Our time-management overall here was not great. We'd rush to the practice field to try and fix parts, then get immediately called back to the round. I think we almost got disqualified 3 or 4 times because of this. However, this was our most successfull tournament in the robot game ever, since this was our first time getting 1st alliance captain.
Game 1
Game 1 was one of the two games we lost this tournament. We lost by 20 points, and we managed to both knock the opposing team's jewel off, as well as not balance in the end-game. This match highlighted the problems with our autonomous' reliablility.
Game 2
In game 2, we still had autonomous problems, but won a close game due to our stacking.
Game 3
Game 3 was our best game, as we didn't experience any connection issues and got almost 200 points.
Game 4
In game 4, our robot shut down throughout the game, but despite that, we ekeed out a close victory.
Game 5
We won game 5 by about 30 points, as we stacked 2 columns, got a jewel, and balanced our bot.
At this point, we became an alliance captain and chose team 3732 Technical Difficulties to be our partner. We had connection problems throughout the next games that hampered our ability to score.
Semi-Finals 1
We won 80-100, despite connection issues.
Semi-Finals 2
We improved a little and got about 120 points as we fixed a servo between matches.
Final 1
We lost this game due to connection issues.
Final 2
This was our closest game, as we won by 2 points, since we were able to stack blocks *slightly* faster.
Final 3
We won this game by 20+ points as the opposing team failed to balance one bot.

Ceremony

The first award we won was the First Alliance Captain award, a first for our team, so we were overjoyed about that. Then, we also won 1st place Control Award, another first for our team. This was especially suprising, as our autonomous failed quite a bit throughout the tournament. Finally, we won 2nd place Inspire Award. While this is still a great accomplishment, we'd like to work on this a bit more and get 1st place next tournament in January.

Spring Cleaning in the RoboDojo

Spring Cleaning in the RoboDojo By Janavi, Evan, Ethan, Austin, Tycho, Karina, Charlotte, Kenna, and Abhi

Task:

A few weeks leaving for our Oklahoma competition we assembled a large garage tent upon the pool deck and moved our field inside the tent to shield it from the weather. The night before the competition we moved in a projector so we could project see the code on the wall and left it there when we went to Oklahoma. We were very surprised when we came back to Dallas around midnight and found the canvas that was supposed to be covering the tent crumpled in the corner of the backyard and the frame of the tent on its side resting again the tree as you can see in the photo below

But what surprised us the most was that nothing that we let upon that table was disturbed at all, the projector lay in the same spot and even a glass of water we had left hadn't moved an inch.The next day we came back, well rested and finally wrestled the RoboDojo back from the grasps of the tree and bolted it down to the pool deck to prevent any future mishaps.

After that we started to move robotics stuff outside and Max placed a board hole onto the wall with hooks so we can hang up the tools for easy access.

We moved out all shelves that overflowed with boxes upon of boxes of robotics parts to the RoboDojo. Our plan is to move all of the robotics building out to Dojo that way we have easy access to the field and don't have to constantly move in and out to test. To start the move we labelled shoe boxes with bright orange tape to organize all of the tools and parts ,

after that we started sorting through the shelves someone exclaiming almost every five minutes " I was looking for that last time! ". Eventually after getting most of the big items sorted we worked on organising the smaller items like hex keys and nuts into grid containers.

Reflections

Making this big move has really helped us not only with organization but it has allowed us to do a deep clean of all the robotics parts, we sorted thorough all of our old motors and battery and found some that either didn't work any more or were outdated. This is very important to do periodically because it allows us to make more space and it eliminates the chance of us bringing broken battery to competitions. Moving all of the items outside has taken us a while and we are still currently still moving items outside but so far it has had an immediate effect, our two teams have been able to do more testing and we are able to spend less time searching for stuff ever since we organized. Since this has been so helpful to our teams we might plan to make this a yearly occurrence, during summer or after our season ends we can spend two weekends completely reorganizing the Dojo.

Oklahoma 2017 Post-Mortem

Oklahoma 2017 Post-Mortem By Ethan, Evan, Tycho, Austin, Janavi, Kenna, Abhi, Charlotte, and Karina

Task: Recap what went right and wrong in Oklahoma

Even though we did very well in the Oklahoma qualifier, we still encountered several problems, that if not addressed, could lower our chances of getting to Super-Regionals. So, we had a team discussion on what to do differently in the next tournament, and what to keep constant.

Problems

Time management
Our time management was Not Good. First, we had trouble coordinating with different parts of the team, which lead to disorganization. As an example, we nearly missed judging because we had to go to inspection, then we nearly got DQ'd from several matcvhes because we kept going back to the practice field instead of queuing. So we need to clearly schedule when to go to practice field and when to not, as well as coordinate the judging, inspection, and other important events.
Referring to coach
We didn't realize that the judges were judges in the pit and one of our members refered to our coach for help, which probably hurt our chances.
Preparedness
First, on the robot side, we hadn't prepped for inspection the night before, so we had to be in a rush the day of to get ready. As well, we still hadn't made a coherent model of our robot in Creo by OK, which hurt our judging chances. And, we didn't emphasize the design process enough.
Presentation
For some reason, our robot kept glitching out *only* during the presentation, which hurt us. And even though our presentation was better than last time, we still had a lot of pauses that could've been remedied easily with more practice.
Robot Stability
While our robot worked pretty well during the first 5 rounds, once we hit the final rounds, our robot started shutting down and being hard to operate. We still don't know the reason, but we're currently diagnosing now.

To-do

  • Static-proof robot
  • Fix wiring
  • Organize journal for award
  • 3D Model
  • Expand engineering section
  • Build 2nd field
  • Shock mount robot

Gripper v4, Octopuckers

Gripper v4, Octopuckers By Tycho and Abhi

Task: Design a new piece for intake

Version 2 of our gripper arms worked much better than our original. Due to their silicone material and trianglular shape, we definitely had more control over the glyphs than our one degree of freedom grabber arms. However, we still had issues we needed to address. When glyphs were taken in, since the silicone surface did not have much mobility and compressibility, glyphs would often fall. Due to slight changes in glyph size, the bigger glyph would determine the space between the grabbers, meaning the other glyph would be mobile despite us wanting its control. This is when we develoepd the first version of our new rotators.

The first edition of our rotatory mechanism allowed us to play with ninjaflex printing and flexibility. They were 15mm extrusions designed to stack on one another on a REV rail or similar rigid structure. Since Ninjaflex can bend, we got more grip on the glyphs. It was definetely a well designed model but had many issues. First, each fin of the fan was very thick. Though it was able to grip glyphs well alone, the system was not able to grip much better when stacked together. We decided we needed more surface area contact with glyphs during intake.

This led us to create a new model with thinner fins and thin tabs at the end. The thin flaps allowed more grip area with the glyphs allowing us to work better. Though good in theory, when we went to print out the part, we discovered our 3-D printer didn't allow printing vertically of surfaces less than 1 mm. Since this idea didn't work, we started thinking of the idea of suction cups. This led us to our current design.

The design worked very well. We decided to name them Octopuckers since they had suction cup shape and there were 8 fins to a pucker. The surfaces of the octopuckers which would contact the glyphs were large and had a large area. Since this was heavier than the bridge connecting them to the center, the branches bent easily allowing for a grippy surface which was also flexible. After testing it on a small scale, it seemed to work well so we will continue development and implement it on our next edition of the grabber arms.

REVolution Pulley

REVolution Pulley By Tycho

Task:Build an Army Worthy of Mordor

This GT2 pulley has rounded teeth that engage nicely. GT2 pulleys and timing belts are the most common in use with 3D printers - but those are usually of the 2mm pitch variety. We didn’t think our printer would be able achieve the fine detail accuracy needed to print at that size, so we went for the 5mm pitch belts. On our printer we can take this part off and use it right away with only the most minimal cleanup. This is a 24 tooth pulley.

Meeting Log

Meeting Log December 09, 2017 By Ethan, Evan, Tycho, Austin, Janavi, Charlotte, and Abhi

Meeting Log December 09, 2017

Today's Meet Objectives

Organization / Documentation / Competition Prep

  • Review Journal
  • Write post-mortem
  • Update past MeetLogs

Build / Modelling

  • 3D-model
  • Work on robot flipper

Service / Outreach

  • Build 2nd field

Today's Work Log

Team MembersTaskStart TimeDuration
AllPlanning Meeting2:10pm.25
EvanFlipper2:004
AustinFlipper2:004
Abhi3D Model2:004
EthanPost Mortem2:002
EthanField4:002
JanaviField2:004
CharlotteField2:004
TychoField2:004
KarinaField2:004

REVolution Simple Dual Rail Plate

REVolution Simple Dual Rail Plate By Tycho

Task: Power to the REVolution

The dual rail plate allows you to couple the rotation of two REVrails together. The distance between the holes should be based on how you are coupling them together. This model is designed to use GT2 5mm pulleys and a 46 gap timing belt.

REVolution Basic HingePlate

REVolution Basic HingePlate By Tycho

Task: Power to the REVolution

This is our most used hinge plate. The 4 holes can take M3 screws to attach to a REVrail on one side at the end.

Qualifier Preparation

Qualifier Preparation By Kenna, Abhi, Karina, Charlotte, Tycho, Janavi, Ethan, Austin, and Jayesh

Townview Prep Pic

We have been preparing to host our own qualifier since November when we hosted a DISD Scrimmage. Now we have to prepare our school for 26 teams to compete tomorrow. Most of our team was there to help construct the fields. The highlight of my Friday night was dragging assorted metal chairs across the cafeteria, only to be told we only wanted to use the black chairs and spending 2x longer than needed to make our audience seating. However, we were lucky enough get lots of help from our friends in DISD, Townview, and FTC Team 7172, which eased my chair-sorting pain. Our team has made several fields together and should have been more efficient in communicating and managing our time. But that is something to learn and improve on next time. In the end, however, it went smoothly because there was lots of teamwork between 6832 and Townview volunteers once everyone had time to figure out how to best assemble the field.

The main point we'd like to drive home is that you *really* have to consider logistics when setting up a tournament. While you'll consider all the big things before the final day, such as making maps, printing flyers, and placing fields; some of the smaller items can be ignored. A prime example is that we put off figuring out the judging room locations and had to figure that out; another example that we forgot to do is have a pit organization. It would have majorly helped had we organized the pit by team number or some other order for queueing, or at least had made a map of teams beforehand.

Townview Qualifier 2017

Townview Qualifier 2017 By Kenna, Abhi, Ethan, Austin, Evan, Charlotte, Karina, Tycho, Janavi, and Jayesh

This past weekend, Iron Reign hosted a 28-team qualifier at Townview Magnet Center. Many of us attend the School of Science and Engineering inside Townview, so it was familiar territory and made the whole experience a little easier. We were lucky enough to host a Scrimmage as practice for our actual qualifier. Weeks of preparation and anticipation paid off when the FTC Affiliate Partner for North Texas told us it was "the best run qualifier this season," and the North Texas Judge Advisor, Freidrich Elliot, called it the "best judging panel he's ever seen."
Unlike most posts in our blog, this post's purpose is not to give a play-by-play. You can take a look at how the day went on our instagram. We want to use our experience as an opportunity to help out other teams who may be hosting a qualifier.

  • It is very important to manage your volunteers. We had volunteer coordinators for every task, like a match queueing coordinator or inspection coordinator.
  • Our PTSA was kind enough to donate food as a fundraiser. However, a lot of it was left over and wasted because it was perishable. Our recommendation is be careful in the amount of perishable food you make.
  • Make a playlist using FIRST-approved songs ahead of time or use the one we used. Thanks to Roaheen Neil Mansuri on Spotify!
  • Take notice of which teams queue on their own, which teams need lots of reminding, and other general manners. You and your volunteers may be asked by the judges, as we were, which teams were the best to work with.
  • This may seem obvious to some, but if you cannot find a team, they are likely at the practice field.
  • If possible, build two fields (in addition to the practice field). It helps immensely with time management and is part of the reason our qualifier went so well.
  • Competing in a qualifier, much less running one, makes everyone a little high-strung. The most important tip we can give is to be understanding of everyone there. We all understand how much FTC means to many and it can cause some to be less considerate than normal. People standing in others' way or not queueing is not helpful, but it is nothing to lose temper over. Try to give people some kindness in a stressful day, whether you're participating or facilitating.
  • Closely related to the last point, be sure to thank people. Tell your volunteers and teams that you appreciate them being there!
On the subject of appreciation, we'd like to thank a few people for helping out.
A big thank you to Karina for volunteering even though she was sick. We had so much help from Townview parents and students that made this qualifier successful. The entire event would not have been successful without the support and sponsorship of DISD.

REVolution Narrow Inside Washer

REVolution Narrow Inside Washer By Tycho

Task: Power to the REVolution

This washer is a stackable spacer that can be used to adapt standard bearings/sprockets/pulleys to thinned base plates.

REVolution Thick HingePlate

REVolution Thick HingePlate By Tycho

Task: Power to the REVolution

This is our most used hinge plate. The 4 holes can take M3 screws to attach to a REVrail on one side at the end.

REVolution Pillow Block

REVolution Pillow Block By Tycho

Task: Power to the REVolution

This is a standard pillow block. We had to add adhesion pads to the ends because the nylon would curl away from the print bed. But these are easily cut off with a hobby knife.

Alumni Meeting

Alumni Meeting By Ethan, Abhi, Karina, Austin, Tycho, Kenna, Charlotte, Janavi, Darshan, Jayesh, and Omar

Task: Talk with our former members

Since we're in the last weeks of December, our schools are legally obligated to let us out. And, while colleges aren't legally mandated to let their students out, they tend to do so, as not doing that would rather enrage their students and families. So, due to this fortuitous coincidence, us simple FTC students were able to work with their dearly departed alumni to fix various problems with our team, mainly the blog.

Besides it just being nice to see all our former members come back home, we were also able to gain knowledge from their experiences in college. As well, several of our members became judges for FTC tournaments, so they were able to provide valuable insights into the judging process, which we highly appreciate. Also, as you see in the above photo, you can see we got p-r-e-t-t-y l-i-t.

Blog Fixes

post problem
PID & balance everything
rev robot reveal write more
PID further everything
zygote write more & picture
makeshift glyph why tag and task
Birth connect --> more posts
stockard meet folkloricos people
childhood see birth
rail test elaborate on wear & tear
testing materials reflective
designing the grabber fix frontmatter & emphasis
oh no! dying glyphs everything
v2 hexifier everything
7-Oct fix pic
chassis upgrade remove extra paragraph
pick and place talk about code not just place
machine vision goals more reflective & how to implement
wheel protection after photo talk about engineering & link related
garage WE, usefulness
ptc creo tutorial reason for making video
intake WE, reflection
OK qualifier fix rick roll
grabber v3 fix drawing & reflection
*Pinned Posts* change + shorter posts
working auto more than code
how to RV 10 --> 6
DISD sponsorship GRAMMAR, why we received
gripper construction more words --> strategy, hyperlink
*make new post, talking to alumn jayesh pic @ competition
designing jewel arm WE, new pic
building field GRAMMAR, head + free + DISD
adding code fixes 2 robot more than code
greenhill FTC positive spin & analysis
driving struggles WE, reflect
gripper p2 more words, WE
make code readable more writing, explain process
business plan ethan upload
all evan posts
evan need 2 add, connect posts to each other, more img
all abhi "fixes" Someone pls review these "fixes"
all code post tycho add

Our blog is one of our most important parts for competition, as it allows us to communicate our ideas, designs, and engineering process to judges. Through the help given by our former alums, we hope to improve our chances at Wylie East.

Meeting Log

Meeting Log December 23, 2017 By Abhi, Karina, Austin, Tycho, Kenna, Ethan, Charlotte, Janavi, Darshan, Jayesh, and Omar

Meeting Log December 23, 2017

Our team alumni visited practice today. They imparted their knowledge to us in terms of the blog and our build plans.

Today's Meet Objectives

Organization / Documentation / Competition Prep

  • Review Journal
  • Use alumni reccomendations with number and content of blog posts.

Software

  • Investigate ways to pick up glyphs during autonomous
  • Review OpenCV viewing of cryptobox

Build / Modelling

  • Complete frame of gripper arms v3
  • Assemble new gripper arms

Today's Work Log

Team MembersTaskStart TimeDuration
AllPlanning Meeting2:00pm.25
AllRecap Townview Qualifier2:15.5
AustinAssemble Gripper arms2:453
AbhiComplete frame v32:452
KarinaComplete frame v32:452
OmarHelp build ideas2:452
DarshanHelp build ideas2:452
KennaFix Blog2:452
JanaviFix Blog2:452
CharlotteFix Blog2:452
JayeshIdentify fixes in blog2:452
Karina3-D Model4:451
Abhi3-D Model4:451
PeopleTask2:001

REVolution 15x20 Tooth Sprocket

REVolution 15x20 Tooth Sprocket By Tycho

Task: Power to the REVolution

This is our REV0lution 20 tooth sprocket for #25 chain. This took a lot of trial and error to get right, because it was the component most sensitive to our print settings. We had to inset the tooth profile quite a bit because any extra material created by perimeter settings would cause the gaps between teeth to be too small for the chain to fully engage, and because nylon is so slippery, this would radically increase the likelihood of the chain slipping. Or you would have to make the chain super-tight and that would increase the friction at the bearing. It still requires a pretty tight chain. And it requires a lot of post-print cleanup. The lip where the lowest layers spread out on the build plate have to be trimmed with a hobby knife - all the way around. And then the chamfers at the tip of the teeth have to be rebuilt. We used a reciprocating sander to do this. Nylon is one of the hardest materials to sand effectively, but fresh 220 grit paper will eventually do the job. We only need 2 sprockets for our new Glyph System, so it was worth the effort. This would be the first component that we would recommend replacing with a regular flat aluminum sprocket if you have the means to accurately broach a 15mm square hole in it. Or switch over to timing belts entirely - the timing pulley works fine right off the print bed.

REVolution Rail End Cap

REVolution Rail End Cap By Tycho

Task: Power to the REVolution

End caps are stops placed at the end of a REVrail. Five of the holes are for M3 bolts that can be screwed into the standard holes in the cross section of the extrusion. We highly recommend tapping these holes and then using threadlock to retain the bolts. So far we’ve only had to use a single bolt since we haven’t experienced very large forces The other 4 bolts are for attaching to a bearing on the far side of an attachment plate.

REVolution Thin Bearing

REVolution Thin Bearing By Tycho

Task:Build an Army Worthy of Mordor

This is the standard bearing / bushing that allows a REVrail to rotate inside a plate. It is typically coupled with a glide washer and two stops to bind it to an attachment plate or pillow block.

REVolution Rail Stop

REVolution Rail Stop By Tycho

Task: Power to the REVolution

This stop can be placed anywhere on a REVrail to trap mounting plates inside bearings. They are usually used in pairs.

REVolution Custom Dual Rail Plate

REVolution Custom Dual Rail Plate By Tycho

Task: Power to the REVolution

This shows customized version of the Dual Rail Plate. This is for our 4th generation rolling gripper system. The small ears are designed to hold a long M3 bolt that have a stack of mini ball bearings on them. These ball bearings squeeze our timing belts together, forcing them into a more oval shape, but still allowing them to glide. This reduces friction quite a bit. Otherwise we had to put a lot more tension between the pulleys to get the belt to fully engage. This plate also has grooves to attach servo pulled wires to control the plates angle one of the REVrails and it has a flange to mount our beater guards.

REVolution Narrow Bearing Washer

REVolution Narrow Bearing Washer By Tycho

Task: Power to the REVolution

Washers can be used as spacers. They are also used to smooth out the rough top layers. Keep the bed very clean and smooth and the bottom surface of parts should be very slippery against other nylon. Put these in between the rough top bearing surface of one part (with rough surface facing rough) and the smooth bottom surface of the next part, and the friction will be substantially reduced.

REVolution Inside Washer

REVolution Inside Washer By Tycho

Task: Power to the REVolution

This is an inside washer. It will fit entirely inside the standard plate hole. We don’t use these much, but they can be useful as spacers.

Introducing Kraken

Introducing Kraken By Abhi and Tycho

Task:Design the robot model

We have finally completed assembly modeling Kraken, Iron Reign's Relic Recovery robot. Named after the sea creature due to the robot's OCTOPUCKERS, Kraken stands as a fierce competitor in FTC.

To the chassis, we added the glyph system mounting. We first designed a linear slide replica and constrained that to a small TETRIX U connector piece which attached to the REV rail base. On the other side of the linear slide was a TETRIX bar attached by distance and coincident contrains. Onto this, we mounted the grabber system, and assembly done with a combination of normal, distance, and coincident contrains.

As on our robot, this linear slide system is supported by a small TShaped piece with two aluminum bars. This required tangency constrains with the inside of the T piece along with angle offset to the REV rail base.

Finally, we attached the jewel thief mechanism via subassembly, We first attached servos to either side of the custom designed pentagon piece. Then, these servos were constrained to the REV rail base and partly to the phone mount bar extruding out.

All of this went over our amazing chassis design. To see more info on the chassis assembly, refer here

What's next?

We hope this chassis provides an alternate testing mechanism for sizing of our future prototypes. Another version of the chassis is underway based on changes to our robot.

Talking to REV

Talking to REV By Austin and Tycho

Task: Talk to REV about our REVolution System

On an excursion to the Rev Headquarters located conveniently in North Dallas, to pick up a few extra servos and other miscellaneous parts we decided to bring a couple of our 3D printed REVolution parts to show to the founder of Rev. if you aren’t familiar with our REVolution system, essentially what it is, is a way to turn Rev extrusion rails into axels to be used for more robust and modular axels. These new printable parts can be seen in their corresponding blog post and can be found on Thingiverse along with instructions.

After waiting for Rev’s founder to see us, we had the chance to demonstrate the new parts we had come up with. The REVolution system peaked his interest and he would like to follow up at some point to possibly work on making the parts and selling them as part of the Rev product line. While you won’t be able to find our parts anytime soon, you can look for them in the future since Rev is currently working on a few other priorities.

Part 2

We want to have further talks with REV about mass-producing these parts, as we believe that these could benefit teams everywhere and allow their designs to be more flexible. As well, we plan to further develop our REVolution system so that it has greater functionality.

Meeting Log

Meeting Log January 06, 2018 By Ethan, Evan, Charlotte, Kenna, Tycho, Austin, Abhi, Karina, and Janavi

Meeting Log January 06, 2018

So, today's the last Saturday before the Wylie Qualifier, and we're pretty unprepared. We're a little behind on our blog posts by about a week, we still haven't added our octopucker attachment, and we need to finish our 3D model of our robot.

Today's Meet Objectives

Organization / Documentation / Competition Prep

  • Review Journal
  • Spring Cleaning Post
  • Code Improvement
  • SEM Tournament Post
  • Flipper Post
  • Octopucker Post
  • 3D Model Post
  • Proofread
  • Fix presentation

Software

  • Fix autonomous jewel code

Build / Modelling

  • Finish 3D model
  • Attach octopucker grabber
  • Work on flipper

Today's Work Log

Team MembersTaskStart TimeDuration
AllPlanning Meeting2:10pm.25
EthanReview Posts2:004
EveryonePresention2:001
EvanWork on octopuckers2:004
AustinFix wiring issues2:004
CharlotteFix Presentation2:004
EthanFix presentation2:002
KennaProofread posts2:004
TychoWork on auto code2:004
Abhi3D model2:004
Karina3D model2:004

Helping Other Teams

Helping Other Teams By Austin and Tycho

Task: Help a rookie FTC team

In the week before the Wylie east north Texas qualifier, Iron Reign was going about our normal development schedule when we received a request for assistance from a smaller startup team, team 13376 Cyber Wolves, that had jettisoned from an FRC team to compete in FTC. On one of our regularly scheduled nights, which actually ended up being the night before competition day, they arrived at Iron Reign’s headquarters with all of their gear and teammates in one car. They had brought two smaller robots with simple degrees of freedom and no code. The coaches also had numerous questions about how the competition would ebb and flow.

Tycho diverted from his normal autonomous coding to assist the teams coders in polishing up their control scheme and the robot was worked on by their builders, who asked for assistance and general information from our build team that was keeping to its rhythm. While their lack of resources led to a lackluster performance at the actual qualifier, they shone through and were excited to build their reserves and team for next year's competition. We were ecstatic to help an up and coming team when we got the chance, and would offer the same kind of support to any team that comes knocking.

You can contact us at ironreignrobotics@gmail.com!

Prepping for Wiley

Prepping for Wiley By Janavi, Karina, Ethan, Charlotte, Kenna, Abhi, Austin, Tycho, and Evan

Task:

It was countdown time before the competition, we had to practice driving our robot, pack the MXP, and practice our presentation. So we decided to split up into smaller groups to accomplish more. Tycho, Charlotte, and Evan drove together to practice communicating quickly and effectively. They also played against our sister team so both teams could get practice with other robots in a competition-like setting before the real thing.

Inside, Ethan and I worked on putting the final touches on our team's journal. We hole-punched papers, decorated tabs, and double-checked the whole journal. Austin, Tycho, Abhi and Kenna were helping out our guest team with their phones and their robot(click here to read more about that!).

Every 30 minutes we all met up as a team in the tent and practiced our presentation. This really helped all of us work out any kinks or problems we had in our presentation. After each dry run we gave and received constructive criticism as well as new ideas, which really helped to improve our overall presentation.

Reflections

This method of splitting up into sub-teams really helped us organize and coordinate our time. In the past this has worked well for us, so applying this to our competition prep was a good move. By splitting up we could divide tasks more evenly and have a clear understanding of what we had to do. Another really beneficial thing we did were the practice runs every 30 minutes. By doing this we were able to practice our presentation and give each other feedback. Leaving 30 minutes between each run gave everybody time to review their slides and incorporate any new ideas into their presentation.

Wylie East Qualifier 2018

Wylie East Qualifier 2018 By Ethan, Evan, Charlotte, Janavi, Karina, Tycho, Austin, Abhi, and Kenna

Task: Compete at the Wylie East Qualifier

Introduction

It was a cold and dark morning. The howling winds of a cold front rushed through the grass. Under this cover of darkness, one car after another pulled up to a house, dimly lit. A car door would open for a second, letting a child out into the cold night. Under these auspicous conditions, each child wandered into the house, only for a moment, and left again, and boarded an RV. Thus began the Wylie East Qualifier.

Inspection

We arrived at Wylie about 7:50 AM, and unloaded. Unlike previous tournaments, we had actually prepared our robot the night before. So, we were able to get in and out of inspection pretty fast, which was nice and definently reduced our stress about time management. Our only worry was that our robot was too big for the sizing cube, as we had measured the robot to be 17.96875 inches in length, leaving 1/32 of an inch. And since that is *probably* within the production error of a sizing cube, we were mildly worried. Still though, our robot barely slid in. We passed the rest of inspection with flying colors.

Unloading

We had been preparing to pack Friday, so we had all our tools ready. However, we didn't use the packing list we had previously, and we felt the effects. We forgot encoder cables, and even a flathead screwdriver. While this really didn't hurt *us*, it hurt our sister team, and we weren't as helpful with other teams when they came to us. The one pro of forgetting a lot of our stuff was that the unload was really fast, and we set up our table and got it organized in under 5 minutes.

Judging

Next up was judging. We'd neglected working on our presentation previously, as we had to prioritize even more neglected items such as drive practice. And, it was pretty obvious. We had a few stumbles, a few missed cues, and we even managed to miss a slide. Despite that, we were able to convey our team's progress and history to the judges effectively, and they seemed to be enganged and asked relevant questions. If there was one thing we could change, it would not be the prior errors, but that we took too much time in the presentation, and didn't leave enough time for questions. NOTE: A judge later told us that we should clairify information about our MXP in the presentation

Scouting

Team # Team name Autonomous Glyph Jewel Safe Zone TeleOp Glyphs Columns Rows Pattern Balance Stone Relics
3734 Imperial                      
3899 Terror Bytes YES no yes no yes 6   2 r no yes mo
7172 Technical Difficulties ys 1 with view yes yes yes 24 full full full no no
7904 HSA Dallas Robotigers no       yes 6 0 2 no don’t know no
8418 The League of Legendary yes 1 no viewfoia no yes yes   1-20000   yes yes no
8565 Technicbots yes 1 with view yes yes yes 8 2 3 no yes no
8626 Prototypes yes 1 no viewfoia yes yes yes   3/2 col 0 yes yes no
9386 Elmer & Elsie Robotics yes 1 no viewfoia yes yes yes 24 3 4 no yes no
11097 Cybersurge yes no no yes yes 4-6g yes no no yes 3 and up maybe
11339 Williams Warriors Robotics yes no no ys yes     2-4 r no no no
11341 ViBoTs                      
11366 The Smarty Party yes no yes yes yes 4-5 g wonky 3-Feb no yes not focus butr can
11425 Murphy Maverick Robotics no       yes no test 4   1 no yes no
11563 Hedrick Garage yes no yes yes yes max 6   2 yes yes no
11594 FireCats no       yes 1   1 no yes no
11629 Todoians yes 1 no viewfoia no yes yes   0 2-3 r no0 yes no
11791 Marvin the Martian                      
11793 TRICERABOTS yes no yes no yes     max 2 no yes no
12061 Long Buccaneer Engineers                      
12430 Raider Robotics yes no yes yes maybe yes 5 no 2 no yes no
12810 QuantumX yes yes yes yes yes 8 2 0 yes yes 1-2 zone
12930 ScitoboRRobotics yes no no yes yes 6 1/3/2002 no yes no could try
13376 Cyber Wolves                      
13850 Raider Robotics 2 yes   yes yes yes 8   yes no no no

Robot Game

Game 5
We won this game by a large margin -> 122-40. Our autonomomous definitely pushed us over the top here.
Game 12
We lost this game. Our teleop speed and strtegy didn't work against our team, and our partner had connection issues.
Game 15
This was a surrogate match, but we were still very happy about winning this. We performed pretty well *and* the opponent's bot shut off.
Game 20
We won this game with our largest margin, 106-12. We performed well in all aspects of the game, and we should replicate this success.
Game 26
We lost this game by our largest margin, 236-76. We were outperformed in the autonomous and teleop by large margins, and failed to get on the balance stone.
Game 32
We won this game, again by a decent margen. We did very well in the autonomous, and the other team just couldn't catch up.
Semis Game 1 & 2
We lost both these marches by good margins, we couldn't really compete with Tech. Diff's teleop with our autonomous.

Ceremony

Usually, judges come and talk to your team if you're being considered for an award, so we have at least two people at our table at all times, and we sound an alarm so that the entire team can come and answer questions. And so, we sat, and we sat, and we sat, and no judges came. But then, with just five minutes left, we were blessed with an apparition of judges. We walked into the ceremony more confident than we were, and were reasonable impressed when we won 1st-place Inspire.

DISD STEM Fair

DISD STEM Fair By Kenna, Tycho, Evan, Ethan, Charlotte, Karina, Abhi, Janavi, and Austin


DISD STEM Fair was one of our busiest events, but it was also one of our least chaotic. Our team has trouble turning anyone away because we want to introduce as many people as possible to STEM, but letting everyone onto the MXP usually results in more stress and less efficiency because it becomes so crowded. This time we implemented some of the improvements we had been discussing for the past few weeks like a keychain waiting list and regulating entrance to the MXP. We were able to reach 400 students with our three activities and spoke to over 1500 parents and students. We had the opportunity to set up a field and demo our competition bot for everyone there, including some FLL and FTC teams, which is something we don't usually get to do. A lot of kids actually got to drive the robot, as seen below.


We offer two activities on the Mobile Learning Experience(MXP):3D Modeling & Printing and EV3 Lego Bots.



Using laptops, presentation monitors, and 3D printers donated to us by Best Buy, we teach students how to design and print their own keychain. We use SketchUp, a free 3D modeling program by Google, because our hope is that if we teach people the basics they can go home and use SketchUp themselves. They learn the basic functions of CAD, such as the push/pull tool, shape tool, and 3D text. We had lots of people express interest in SketchUp for their kids or students. The highlight of my day was seeing kids who had been taught SketchUp helping those who were still building their keychain.




With our EV3 kits, we help everyone code their own robot and battle it against other bots. Most of the time, it's someone's first interaction with code so what they are coding is fairly basic. The simple code gives them a real taste of programming in a way they can understand.

Among our sponsors that make our outreach possible is BigThought. They help us with the costs of maintaining the MXP as well as staffing. What we do would not be possible without them. During this event, the CEO of BigThought was able to tour the MXP and see what we do to further interest and ability in STEM for young students.

Meeting Log

Meeting Log January 27, 2018 By Ethan, Karina, Charlotte, Abhi, Tycho, Austin, Kenna, Evan, and Janavi

Meeting Log January 27, 2018

We are very behind on updating our engineering journal and discussing our performance in Wylie. This was the main focus of the day.

Today's Meet Objectives

Organization / Documentation / Competition Prep

  • Review Journal
  • STEM Expo Post
  • Chassis Post
  • Driving Post
  • Wylie Postmortem
  • Create poster

Build / Modelling

  • Work on new chassis
  • Attempt to update gripper

Today's Work Log

Team MembersTaskStart TimeDuration
AllPlanning Meeting2:10pm.25
EthanWork on poster2:004
CharlotteDriving2:004
JanaviWork on chassis2:004
KarinaDriving2:004
TychoDriving2:004
EvanGripper update2:004
KennaWork on chassis2:004
Abhi3D Model2:004
AustinGripper update2:004

Robot Drive Team

Robot Drive Team By Charlotte, Tycho, Karina, and Evan

Task: Build a solid drive team.

One of the leading problems Iron Reign faces is our ability to allot time to effective driving practice. Driving practice is essential for our success in the robot game, but it is sometimes difficult to find time to practice due to other team members working on various robot improvements. We have created two different drive teams, a main team and a backup team, so that despite who is available at meeting we can always have some kind of drive practice going on. The bulk of the time spent in driving practice is spent practicing putting glyphs in the cryptobox, trying to better our previous time and complete as many columns as we can. We focus on performing and scoring timed runs, and sometimes when our sister team 3734 is available, we scrimmage our robots against each other. Another smaller, yet equally essential, part of drive practice is setting up the robot in the correct orientation for every situation and running our autonomous. It is important that we make all of our mistakes during practice, so that when it is time to compete we run autonomous perfectly every time. The main challenges we face in driving practice is consistency in filling the cryptobox, adjusting to significant robot design changes, and our time management (actually finding the time to get in good practice).

In the future, the drive team is going to meet more often and hold more efficient practices. Our main goal is to significantly decrease the time that it takes to fill the cryptobox, and to accomplish this we will need to clock in many hours so that we are very comfortable in driving the robot. Ideally, any error that might occur during competition will be mechanical errors that are out of the drivers' control. We have improved a lot, but we still have a long way to go.

Meeting Log

Meeting Log February 03, 2018 By Ethan, Kenna, Charlotte, Karina, Janavi, Evan, Tycho, Abhi, and Austin

Meeting Log February 03, 2018

This is the last Saturday meeting before the tournament. We have to finish bringing the engineering journal up to date, as well as work on the presentation.

Today's Meet Objectives

Organization / Documentation / Competition Prep

  • Review Journal
  • Update blog posts
  • Finish poster

Build / Modelling

  • Update 3D Model

Today's Work Log

Team MembersTaskStart TimeDuration
AllPlanning Meeting2:10pm.25
AllFinish past-due blog posts2:004

North Texas Regionals, 2018

North Texas Regionals, 2018 By Ethan, Evan, Abhi, Tycho, Janavi, Charlotte, Austin, Karina, and Kenna

Task: Win at the North Texas Regionals

Introduction
All over the city, lights turned on. In each house, a member departed, on their way to a secretive location, Iron Reign headquarters. Each member entered the HQ, took a parcel, and boarded the equally secretive Iron Reign Mystery Bus, on our way to an even more undisclosed location, the North Texas Regional, at Wylie East Highschool.

Inspection
For the first time this season, Iron Reign breezed through inspection. There were no issues with sizing, we had all of our signs and warnings attached, everything was good. It was so good that there's not really anything left to say.

Presentation
Earlier this week, we practiced our presentation with our new SEM principal, and did a pretty decent run. We still had issues, i.e. running overtime & switching off between parts, but it still impressed our principal. However, we wanted to do better. We had a brainstorming sesssion and talked with past judges, and found that if you make your presentation a little more enertaining while still keeping the necessary information, your presentation will stick in the judges' head for longer. So, that's what we did. We added pieces that improve it just a little, some informative (juggling balls representing the engineering process), and some for our sake (miming being trapped in Iron Reign for 9 years). But, these changes definitely paid off. As well, we fixed our timing, leaving 3 minutes for questions, and fixed some gaps. However, we still did stutter and stumble a bit, but the overall quality of our presentation outshined our mistakes.

Scouting

Robot Game
While we spent all night adding parts and doing mechanical fixes, we should have also spent time fixing our code due to these changes. But, we didn't, so we spent the first three matches trying to debug our code and fix unexpected mechanical issues with the grabber.
Match 1
We lost this match. We hadn't practiced with the new gripper, and on top of that, the Octopuckers 3.0 didn't perform as well as we expected, resulting in a disappointing loss that we really shouldn't have.
Match 11
We also lost this match, most of our code issues were fixed, but we encountered an unexpected mechanical issue with our grabber - it caught on a small piece of plastic that stopped it from engaging fully.
Match 14
We had everything working in this match, but we were simply outperformed. This match really served to show us that we needed to improve in all aspects of the game.
Match 23
We won this match! We were pretty dejected over the past results, but our drivers strapped up and give us the W.
Match 27
We also won this match by a large margin, due to our great performance, and also due to a robot on the other alliance not working.
There are those times where everything seems to fall in place just perfectly, and this was one of those times. We had really good scouting, and we were able to worm our way into alliance with the 4th seed, allowing us into the semifinals. This helped give us the boost we needed for awards.
Semi Match 1&2
We lost, badly. We were simply outperformed, and this taught us we need to improve.

Ceremony
We walked into the ceremony uncertain. We had done well in judging, but we were iffy with our performance in the robot game, and thought that our performance had cancelled out any benefits of the Think and Innovate awards. However, we were able to show our design and engineering process well in additional questions, and the judges seemed pleased with the answers. As well, we answered a question about gracious professionalism that really impressed the judges. In the ceremony, we were awarded several small awards, and the 1st place Connect, but we needed a higher award to advance. Then, we heard 2nd place Inspire...goes to team 6832!

Meeting With Mr.Palacios

Meeting With Mr.Palacios By Janavi, Charlotte, Ethan, Evan, Abhi, Austin, Tycho, Karina, and Kenna

Task:

At the end of last semester our principal, Ms.Hewitt was promoted to the ED of our feeder pattern. This semester we got the opportunity to meet our new principle, Mr.Palacios. He previously served as the Academy, Science & Foreign Language Department Administrator at Hillcrest High School, and was interested in learning more about SEM and what our students did to contribute to the school. We wanted to show him SEMs Robotics program ,so Iron Reign arranged a meeting with him. During the meeting we planned to give him a presentation much like the one we give to judges. We changed up the presentation a little by adding the FTC competition video to introduce him to the competition and give him a little background about what First is.

Presentation Notes:

Mr. Palacios said he enjoyed our presentation and it gave him a good insight into Robotics, in the past he has not worked with Robotics and our presentation showed him that in First Robotics goes much deeper than just building a robot and competing with it, First is also about giving back to the community and promoting STEM. He plans to follow up with us to see our progress in the following months, and has been following up with our team members individually in the hallways or whenever he sees us.

North Texas Regionals 2018 Postmortem

North Texas Regionals 2018 Postmortem By Charlotte, Ethan, Tycho, Austin, Janavi, Abhi, Karina, Kenna, and Evan

Task: Reflect on The Good, The Bad, and The Ugly of our performance at North Texas Regionals

Preparation

Strengths
Some of our team members put in a lot of hours of work the night before the competition and we were able to successfully prepare the robot for the robot games.

Weaknesses
Though it proved very necessary, the fact that people had to pull an all-nighter before the competition shows that we have a long way to go before we have perfected our preparation strategy. We need to work on limiting our last minute robot changes/focus more on the robot in the weeks before the competition instead of the hours. Also, with any changes we make we need to make sure that we are able to practice driving with them.

Opportunities
In the future, we must take advantage of after school practices in the weeks leading up to the competition,as we historically can't accomplish everything solely on Saturday practices.

Threats
There is a threat of laziness and the lack of high priority in the weeks leading up to higher level competitions. We must work hard not only on the night before the competition, but in the days and weeks leading up to it. There is a huge threat of time crunch.

Judging

Strengths
In the presentation room we had more of an air of enthusiasm than in our previous presentations, and while we can always have more energy, it was a step in the right direction. We got a sheer mass of information out in our allotted time and did so effectively. It was evident in the fact that we won 2nd Inspire and 1st Connect that we were successful in bringing our point across.

Weaknesses
We still have the problem of coming off as inactive or lethargic in the pits. It didn't help this time that some of us were running on a very small amount of sleep. During the presentation itself we ran overtime, as we always do, and barely left any time for questions. Also, in our time crunch we didn't get to show the full demo of our robot, which is obviously a very important aspect of the presentation.

Opportunities
We can practice our presentation to make our transitions smoother and our content more concise so that we can relay all of the information that we strive to.

Robot Performance

Strengths
After our losses, our robot started to perform a lot better and won a couple of matches. While the grabber system could perform better, this competition was a good opportunity to see what works and what doesn't.

Weaknesses
We lost our first three matches due to our lift not being completely tested and fixed. It got caught on the robot, stopped lifting, and had other performance issues early on in the competition. We had to do a complete replacement of the grabber, so there were still some parts that were not completely secure; we had to make many last minute and between match fixes.

Opportunities
We were able to prove that grabber v.5 works! And now we can move on and make additional improvement so that we can truly bring forward our robot game during supers. We are using our current model (the model from the competition) and working on mounting it to a conveyor belt to flip to either side of the robot. This competition proved the ability of the grabber and opened up the opportunity to make additional modifications with it.

Scouting

Strengths
This competition we were able to talk to other team throughout the day and form connections, that way even though we were in 13th place by the end of the competition we were able to explain that we lost our first three due to some minor changes but we won our last two games because we finally got our robot to work. This helped us get into the semifinals as part of the fourth place alliance.

Weaknesses
We need to make sure teams can follow up on their claims because some teams frankly just exaggerated when asked about their robot. We also need to take more photos for blog posts and the presentation. We needed to do more scouting this competition, while we were able to talk to teams we didn't do a very good job in keeping up with a spreadsheet of all of our data that meant by the end when we were trying to see what teams to talk to we had a hard time remember their stats or much about their robot.

Opportunities
We need to have better accounts of the matches, and we need to watch other teams' matches through doing this we can keep an accurate spreadsheet and know what each team is truly capable of.

Oklahoma Regionals, 2018

Oklahoma Regionals, 2018 By Ethan, Evan, Janavi, Charlotte, Abhi, Tycho, Austin, Karina, Kenna, Shaggy, and Justin

Task: Compete at the Oklahoma Regional

In November, we went to a Oklahoman qualifier in Mustang. The reason for this was purely strategic - by competing in multiple regions, we have more chances of advancing, as well as having more in-tournament experience overall. There, we got 2nd-place Inspire and advanced to the Oklahoma Regionals. Then, when we came back to Dallas, we ended up advancing to the North Texas Regionals as well, on Inspire 1st place. Then, North Texas Regionals happened to occur before Oklahoma, and we advanced there with 2nd place Inspire. Finally, we had the Oklahoman Regional. Since we'd already won a regional, this tournament proved as a testing ground for robot, presentation, and strategy changes.

Inspection

Again, we went through inspection with ease. We really hope that this will be a continuing trend because this gives us *way* more time for practice, and this helped with our performance in the game.

Presentation

The presentation...oh man. The presentation is usually the high point of Iron Reign's day, and we forgot the Engineering Journal. That's right, the one thing that allows us to get awards, our main advancement strategy. So, we panicked. Mrc. Lux was still in Texas, and theoretically would be able to get us the Journal, but we didn't want to hedge all our bets on that. So, we bought an entire printer from Walmart™ so that we could print if she was too far out by 4:30. But, luckily, she got there in time, and we didnt have to print approx. 400 pages.
Besides forgetting our engineering journal, we had other issues to deal with. We recently took on three new members from our sister team, team 3734 Imperial Robotics, and two of them had to learn parts in our presentation for Oklahoma. As well, we added new lines to the presentation to talk about our connections with outreach and mentors.
Despite all this, our presentation went really well. Our judging panel interrupted us to ask questions, which threw us off a bit, but we were able to persevere through that and pull off a good presentation.

Robot Game

We were hoping to have our new gripper system installed in time for Oklahoma, but it fell through the cracks. So, we had to reinstall our old gripper, but other than that, we made few changes to the robot.

Match 5
We won this match, 237-230. Our autonomous performed extremely well, and together with a partner, we were able to beat most teams.
Match 20
We won this match, 154-148, even though we thought we lost. It all hinged on whether our balancing stone was counted or not, but it barely was.
Match 28
We lost this match, 139-154. The only way we could have won this match was to improve our teleop performance and gripper system.
Match 37
We won this match, 133-90. We were about evenly matched, but our alliance had better performing autonomii than the opposing teams.
Match 45
We won this match, 349-54. We did everything right, as well as our partner team, and our opponents just happened to underperform that round.
Match 51
We won this match 233-187. We didn't think that we'd win this one from the get-go, but we managed to skate by with two relics being placed.
Match 65
We lost this match, 196-273. We were obviously outclasses and this match demonstrated our need for a better teleop strategy.

Ceremony

Even though we performed decently in the robot game, we didn't communicate well with some of the groups of roving judges, so we were unsure about how we'd do in awards. We ended up with a 1st Connect and a 3rd Inspire, as well as a few other award mentions.

Next Steps:

Intake Stars

Intake Stars By Tycho

Task: Improve the functionality of the gripper

Our grabber is good, but it isn't achieving 100% of the potential it could. One thing we're doing is creating the Grabber V.5 previously blogged about, but we also want to increase the speed of the grabber in other ways, in order to get every single bit of performance out of our robot, since we want to really impress at Supers. So, we designed star-grabbers. The purpose of these are twofold. First, the unique star design we made allows the gripper to fish single blocks out of a pile of blocks so that we no longer have to fully align ourselves with blocks, which reduces the time we spend retrieving blocks. As well, these grab blocks more securely.

Next Steps:

The next step is to mount the modified grabber system with the stars on the newer Kraken chassis.

Designing our Wheel Mounts

Designing our Wheel Mounts By Tycho

Recall the discussion and design strategy regarding our wheel mounts

The side shield design process involved much thought and discussion. We have experienced difficulty with the wheel mounts we have been using, which are the ones from last year. These are made of a composite of nylon and aluminum, but they are too thick and consume a lot of space on our already large robot. Also, the our new Mecanum wheels are thicker than before, so it was about time that we use a thinner material that is just as strong. We decided to use 1/8th inch thick 6061-T6 aluminum plate. We then designed the mounts in such a way that the axles of both of the wheels on a side are joined to increase the stiffness of our robot.

In the beginning of the season, we noticed that the Mecanum wheels would damage glyphs, so we designed shields to protect that from occuring. In this design we also had to protect against glyph damage, so the lower circular areas cover the Mecanums, and there is an indent in the bottom between the two wheels so the mounts don’t get in the way of parking on the balancing stones. Additionally, the middle region is thinner so we can move the mounting regions of the robot inward if need be due to sizing restraints or if we change intake design.

Beyond mounting the wheels, we decided to extend the design into the upper region of our robot as attachment support for the relic arm that we are currently building. In this upper region, we decided to incorporate a unique design based on the name we chose for our robot earlier in the season, “Kraken.” The choice of this name came from the “octopluckers” we designed and use in our intake system. Often, teams will make circular or triangular cutouts to remove weight for the robot, but to remain consistent with a design motif, the cutouts we made show silhouettes of tentacles, like a Kraken.

Making our design a reality

Now that we have a completed design, we intend to schedule a meeting with Advanced Waterjet Cutting to discuss the possibility of them cutting out our design for us. We have incorporated tolerance for a waterjet machine so after sending our design to them they can put it right on one of their machines. Hopefully we can also share our robot and our Mobile Learning Lab with them.

Revolution Flyer

Revolution Flyer By Tycho

Task: Create a flyer for our Revolution system

We've talked to REV before about our unique REVolution system that we've detailed in other posts, but for those who are unaware, its a system that we've personally designed to turn REV extrusions into axles, which enable us to have more flexibility in design. But now, we've designed a flyer to get people on board with the system.







Meeting with Advanced Waterjet Cutting

Meeting with Advanced Waterjet Cutting By Tycho and Austin

Advanced Waterjet Cutting

Today we visited the Advanced Waterjet Cutting office and spoke to Sal Copado and Chris regarding our side shield designs. We had called a couple days in advance to set up this meeting, and we brought both our robot and our Mobile Learning Lab to demo. They were impressed by our work and were happy to support a local team competing at the Supers level. Sal agreed to cut out the side shields for our robot, though because of their heavy work backlog, they said that the side shields would not be complete until next Wednesday. While this is before Supers, we decided to go to the Dallas Makerspace to laser cut the design out of high density fiberboard so that we can start assembly based on the new design during our Saturday meeting and the following evenings. These cut-outs are pictured below.

After the demo of our robot, we discussed the design of the side shields. At first they assumed that we needed assistance in putting together the design, but we had already prepared a design and had it ready for the meeting. After having a look at it, they identified a mistake that we had made. We are used to designing files for manufacturing - mostly on our 3D printer. We typically include machine adjustments into our designs so we can upload them right to the machines. For example we adjust our designs to compensate for 1st layer spreading or for material expansion into small holes. In designing our side shields for waterjet machines, we figured out the kerf we needed to work with and made adjustments accordingly. They saw this and said that there was no need for these adjustments, as they recommend that they make those adjustments themselves due to the variance in kerf for the different machines they use. They can cut industrial sized parts with either their waterjet or their laser for finer tolerances. We told them we wanted them cut out of 1/8" thick 6061-T6 aluminum and they confirmed that this was a good choice. The final files we sent them include designs for our side shields, mounting plates for our new 6in Mechanum wheels, and internal wheel mounts. We're basically covering the cost of the material and they are covering all other expenses.

Next Steps

We hope to pick up the new parts next Wednesday and get them on the robot that evening. We would also like to return with the full team to AWC and get a tour of their manufacturing facilities and machine shop. But we'll need to look for a student holiday to get that done since we're always at school during their opening hours. We'd also like to show them the updated robot and see if they have any ideas for further improvements.

Oklahoma State Regionals 2018 Postmortem

Oklahoma State Regionals 2018 Postmortem By Charlotte, Ethan, Tycho, Austin, Janavi, Abhi, Karina, Kenna, and Evan

Task: Evaluate our strengths and downfalls at Oklahoma State Regionals

It wasn't a great regional, but it wasn't a bad one either, it was an OK Regional.

Preparation

Strengths
Because we had already been to North Texas Regionals, we were one step ahead of the teams in OK that hadn’t been to a regional yet this year in that sense. We already had everything in some sort of order from North Texas, so we were prepared for the challenges we know we will encounter at a competition at the regional level.

Weaknesses
We left the engineering journal in Dallas. If it weren’t for our chaperone, we would have had to re-print all 300-400 pages of our engineering journal in Oklahoma. This is the worst example of us not following the checklist when packing up our vehicle. Also, we left polycarbonate, so we had to go to Walmart and use the lid of a plastic box for the polycarb pieces on our robot that needed replacement. Because we had already qualified, we were not as serious in our preparations as we could have been, and that cost us in the robot game.

Opportunities
In this competition, we 3D printed keychains to hand out to teams (pictured below). We started this process a couple of hours before the competition, so we only had enough to hand out to our alliance partners. A lot of teams also had extravagant pit setups, so during Super Regionals we should strive to set ourselves apart in the pits, especially since a large part of judging occurs in the pits.

Threats
As always, a large threat is lack of urgency for the competition in the days leading up to it. We only had one week to prepare and we will only have two weeks to prepare for Supers, so our head has really got to be in the game in the days leading up to it.

Judging

Strengths
In the presentation room, there was a great environment and our presentation flowed more as a conversation than a lecture. The judges were curious about some of our accomplishments, like our REVolution system and the RV, and interrupted us during the presentation to ask questions. This made us feel more relaxed and the presentation ran very smoothly. Unlike last time, we had enough time to demo the robot and show off its capabilities. Also, a lot of judges visited our pit and we were able to show many of them to our Mobile Tech Lab.

Weaknesses
We didn't mention to the judges that we have already qualified, which would have been helpful for us as we won't have been seen as a threat to Oklahoma teams. Also, we added many parts to the presentation on the day of judging, so we were less practiced on those parts.

Opportunities
Now we have the opportunity to refine the parts that we added to the presentation so that it flows smoothly with no awkward breaks.

Robot Performance

Strengths
Our autonomous is where we do best during matches, especially the jewel portion which we did successfully every match. When it worked, the internal lift was helpful in making out game and although we didn't score a lot of glyphs, we were consistent in getting 1.5 columns every time. With practice we could continue that consistency but with more columns.

Weaknesses
Our robot performed decently, but the grabber was slow and we never got more than 1.5 columns. The internal lift broke many times throughout the day. Because we changed the grabber recently, we mounted the phone in a position that it can't read the target so that it places the glyph in the correct column and didn't have time to fix it. Also, we were one of the few teams without a relic arm which I think hurt us in both our success in matches and in not getting picked for an alliance. We won all of our matches except for one, but that was mostly due to luck which we can't count on at Supers.

Opportunities
Our grabber system is now at v.5, which is the old lift (the one we used in OK) but on a conveyor belt system that flips it to either side of the robot. We think that this grabber is going to be our best and hopefully, paired with a lot of drive practice, is going to significantly improve our robot game.

Threats
The robot game was strong in Oklahoma. There were many teams that had working relic arms and we witnessed the 3rd highest score in a game this year. It will be even stronger in Super Regionals, so in order to qualify for worlds we need to really up our robot game while maintaining our potential for awards.

Scouting

Strengths
We were able to make some connections with teams that we are going to see in Georgia for Super Regionals and further practice our communication with other teams.

Weaknesses
We did a poor job in advertising our robot to other teams and were not picked for alliances despite our decently high ranking after the qualifying matches (12th place). We have had a lower ranking and been picked before, so we need to start scouting earlier in the games and form connections with competitive teams so we have a chance to get picked.

Opportunities
For Supers, we are going to prepare handouts, like flyers, keychains, and pins to give to the other teams and make our name known. Also, at this point in the season there is a lot of data for each team, so we can get a lot of the scouting done before the competition. We can also prepare our spreadsheets or whatever method we choose to use to get information from the teams at the competition.

Progress of the Octopuckers Over Time

Progress of the Octopuckers Over Time By Ethan and Tycho

Task: Chart the progress of the octopuckers over time


This design was too rigid, we overlooked the fact that triangles tend to be the strongest shape, and therefore this octopucker wasn't as compliant as we wanted, damaging the blocks.

This design was really good, and we used it for 3-4 tournaments. Our initial design of these wouldn't damage the blocks significantly at the levels we used, but at extraordinary conditions they would gouge the blocks, and under normal conditions they would leave superficial scratches.

This design was really bad. They would catch on each other and get stuck on themselves, and as a result wouldn't pick up blocks. However, they did not damage the blocks in any conditions. We never brought these to tournament.

This was a step in the right direction. They didn't grip the blocks that well, but they worked and didn't get stuck on each other or jam.

This is the design we're currently using. It's impossible to damage the blocks with them, and with the slightly larger cylinders, they grip the block really well. We're going to use these going into the South Super Regionals.

These aren't octopuckers, but they deserve an honorable mention. We're using these intake stars at the bottom of the grabbers to securely grip the glyphs before fully loading them into the grabber system. As well, these have the added bonus of slightly increasing the speed at which we can take in blocks.

South Super Regionals Day One, 2018

South Super Regionals Day One, 2018 By Ethan, Evan, Kenna, Charlotte, Austin, Karina, Janavi, Abhi, Tycho, Justin, and Christian

Task: Set up and present at SSR 2018

A placid stillness hung over the dark, cold room. The early sun flashed through the pale window curtains, ineffective against the onslaught of light. Outside, birds started to chirp and sing, starting off the new day. All over the city, teams were waking up, walking to the Classic Center (the Thunderdome of Robotics), to see their fate, either as champions of the last ever Super Regionals, or to go home defeated and never again see the light of Dean Kamen and his vision. However, through all of this movement and energy, this hotel room stayed quiet. Slowly, a beeping slowly grew more loud, blaring its morning call throughout the room until no one could deny its existence. In spite of the warm and soft Holiday Inn™ beds calling their users back to slumber, the team members had to wake, under the threat of death by coach. Thus started the journey of Iron Reign's 2018 Supers.

The Pits (Setup and presence)

This day marked the first official day of the 2018 South Super Regionals, the last one ever being held. With FIRST moving to the Qualifier-Reigional-Worlds system, we wanted to make a good impression and show off, and thats exactly what we did. First, we overdesigned a robot that impressed judges and looked nice to other teams, as well as making sure we had little goodies to hand out. But, we really worked on our pit presence, to make ourselves really known to other teams. We made posters detailing Iron Reign's season and hung them up; we brought LEDs and lights to give our tent that good old rustic Roman Feeling™; we had business cards to hand out; we went around and talked to other teams and took pictures of their robots. All of this served to make it feel as if Iron Reign was really *there*. While this eventually proved ineffectual to get picked, this still was a good strategy - it got us noticed - and we will feel its effects at Worlds. We still could've done more with the pit setup though, it would've helped to find a place for posters and the like beforehand, and we ran into some placement issues of our robot and award carts that irritated the safety officials. But, overall, 9/10 would do again. (We will)

Judging

Our judging didn't go that well. Our presentation was fine, we still had breaks and pauses like usual, and we got the majority of information across, but we didn't deliver on important information correctly. Our energy was a little low, we had a power outage while going over our outreach which distracted the judges, and on top of that, the judges' paradigms were a little closer to the engineering side of things. Now, this isn't necessarily a bad thing - having a skewed mindset makes a judge more likely to defend for some awards - but for an outreach-heavy team like ours, we were at a disadvantage for the Connect and Motivate awards. In the questioning, we only had one connect-related question, with the rest on Innovate and Design, so we knew we probably wouldn't be up for our usual awards from the get-go, which is a shame as we've gotten the Connect Award at every level of competition this year.

That was the end of the night, so like all Good and Responsible Teams™, we went to bed early and got enough sleep to be rested for the next day /s.

South Super Regionals Day Two, 2018

South Super Regionals Day Two, 2018 By Ethan, Evan, Kenna, Charlotte, Austin, Karina, Janavi, Abhi, Tycho, Justin, and Christian

Task: Complete the first day of competition at SSR

After finishing judging and setup, all we had left to do was the entire robot game. Knowing this, we stayed until 12, tattooing pictures of Minions™ on each other. Thus, we were perfectly prepared for the tournament the next day.

Match 5
We won this match, 207-256. We mainly won due to the autonomous, our partner and ourselves scored 170 points and the other side couldn't catch up.
Match 16
We lost this match, 236-297. We suffered as a result of having a broken relic arm and not focusing on the end game. We really need a relic arm for Worlds.
Match 23
We lost this game, 412-105. We were up against two of the top ten teams in the tournament and we couldn't compete on any level. We didn't even get the balancing stone point because our robot turned off on the field.
Match 29
We won this game, 285-351. While we were outclassed in TeleOp, our combined autonomii were able to overcome that and give us a win.
Match 38
We lost this game, 109-286. We were outclassed on every level, and it didn't help that our robot was unresponsive. This was a wake up call for our team to improve.
Match 49
We lost this match, 572-221. This wasn't even close and was a huge disappointment.
Match 56
We lost this match, 196-374. Again, we underperformed in every aspect of the game and ended our day with a 2-5 record.

Besides our subpar performance in the robot game, we were also interviewed by a team of judges that we guessed were responsible for the Innovate or Design awards. They asked a little more in-depth questions than what we were used to, but we were able to answer them effectively and demonstrate our engineering process. The judges were reasonably impressed by our robot - our design was fairly uncommon - and it made us canidates for the Innovate award by our estimation.

Janavi, Karina, Abhi, and Tycho stayed up to work on driving and autonomous to prepare for the final day while the rest of us slept so that we would be restful and awake for the next day.

South Super Regionals Day Three, 2018

South Super Regionals Day Three, 2018 By Ethan, Evan, Kenna, Charlotte, Austin, Karina, Janavi, Abhi, Tycho, Justin, and Christian

Task: Finish SSR and attend awards ceremony

It was the final day. Tumbleweeds drifted over the land, rolling and turning through the abandoned Athens streets. Over the horizon, a dust cloud rose, brown and shifting and twisting, speckled with the detritus of an abandoned city, flashing and siezing, lighting up the city through its inky blackness, devoid of all light. Under these auspices, with the flashing lights of the looming cloud highlighting every crack, every pore of our grim, stone-cold faces, we trekked through these dark streets, against the cold, whipping winds blowing in, through the debris and detritus of the lost, fallen FTC teams that succumbed to the biting winds and the shooting lightning. Through these harrowing conditions, we perservered and arrived at the fabled Classic Center, the home of all southern FTC teams' dreams, and their doom.

We started out with our 2-5-0 record, so we didn't have a great outlook on alliance selection or for the tournament in general. However, through our discussion the night before, we decided to give our newer team members a shot at driving and working on the robot. So, Justin and Karina became the main drivers for the day, since we didn't have much to lose.

Match 70
We lost this match, 379-267. Even though we lost, we did way better than expected, so this is still a win in our hearts. Had we executed our autonomous correctly, we could've won this match, or at least gotten closer and impressed more people.
Match 78
We won this match, 388-348. It definitely helped that we were partnered with the top team in our division, but it was certainly a morale booster overall. This ended the SSR with a 3-6 record.

With the fresh feeling of defeat in our hearts, as we didn't stand a chance of actually getting picked, we went to a nice italian restruant and talked about potential plans while eating good food. If you ever have the chance, eat at Depalmas Italian Cafe.

We walked back to the tournament, bellies full of prosciutto and cheese, reasonably not confident for our chances to advance to worlds. So, we sat in the stands, waiting, hoping that our names would be called (except for the Promote Award, ours is kind of embarrassing). As we slowly slipped into deep slumber, we heard a but a whisper from the announcer, "And the 2nd place Innovate Award goes to............Team 6832 Iron Reign!". And so, we advanced to Worlds, and rode off into the sunset.

Kraken LED Modes

Kraken LED Modes By Tycho and Janavi

Task: Attach and Code LEDs

We added LED's to Kraken's base. After that, we coded the lights to change color depending on which mode we are in. Though a small addition, it helps take stress off of our drivers. By glancing at the robot, they can immediately tell what mode we're in and can adjust accordingly. It also keeps us from making an crucial mistakes like activating our autonomous for blue alliance when we're on red.

  • Cyan - End-game mode, changes control scheme to support relic arm control. Resets forward direction so drivers can think of relic gripper as forward. Enables automatic balancing mode.
  • Magenta - Glyph-scoring mode for higher rows. Reverses which way motors are and slows down motors.
  • Blue/Red = Blue or red depending on alliance. Regular driver mode, collects glyphs for lower columns.
Here is Kraken in end-game mode:

Meeting Log

Meeting Log March 17, 2018 By Abhi, Tycho, Ethan, Janavi, Austin, Karina, and Kenna

Meeting Log March 17, 2018

Today we focused on changes we planned from Supers. Also, we decided to have a mini discussion about good and bad things from Supers (not a post mortem).

Today's Meet Objectives

Organization / Documentation / Competition Prep

  • Review Journal
  • Post Mortem
  • Assigning Blog Posts

Software

  • Implement Field Oriented Drive
  • Open CV Progress
  • Fix Viewforia demo mode
  • Driver Practice Modifications

Build / Modeling

  • Build Sparring Bots
  • Make flag holder
  • Learn how to 3-D print
  • Build Relic Arm

Service / Outreach

  • Promote video redesign
  • Reveal Video footage

Today's Work Log

Team MembersTaskStart TimeDuration
AbhiFlagHolder11:003
Abhi,KennaLearn to 3-D print12:00.10
AustinPromote1:001
AllPlanning Meeting+Assign Blog Posts2:00pm.5
AbhiCode changes2:301
TychoOpenCV+Demo Changes3:002
Kenna, JanaviSparring Bots3:003
KarinaRelic Arm3:001
EthanPost Mortem3:001
Karina,AbhiDriver Practice4:002
Austin, AbhiReveal Video4:001
EthanReview Journal4:002

South Super Regionals 2018 Postmortem

South Super Regionals 2018 Postmortem By Charlotte, Ethan, Tycho, Austin, Janavi, Abhi, Karina, Kenna, and Evan

Task: Reflect on our accomplishments in South Super Regionals

Judging

Strengths
In previous presentations, we have had difficulty with timing and conveying everything we have to in the allotted time. This time, we got all of our information across and had enough extra time for some questions and good discussion with the judges.

Weaknesses
Although we did improve our timing, due to a lack of practice we had some poor/awkward transitions, and we had to shuffle a bit every time we needed to demonstrate something we have made which made for awkward periods of silence. Also, we tended to ramble, so with practice or by making a script we can be more precise. We didn't stress connect/first specific events and we didn't stress the year round deployment of or outreach program as much as we usually do, so we didn't get any visits to our Mobile Learning Lab from judges. The main logistical error we had was that one of the computers didn't have the latest version of the presentation on it, and we couldn't download it because the venue didn't have internet connection. As always, we were lower on energy then we could have been, so we may have come off as less enthusiastic as we really are.

Opportunities
The greatest improvement we can make is practice: with practice we can make our presentation crisp and flushed out to avoid those awkward pauses. To avoid the awkward shuffling to the presentation box, we can have every person hold different versions of the grabber. We are going to make a bar with every version of the octoplucker because this would be helpful to demonstrate. Also, FIRST specific events are very important to us and the judging.

Threats
Our Mobile Learning Lab is going to be at an Earth Day event during Worlds, so we will not be able to share it/give judges tours.

Robot Performance

Strengths
At Supers, we had the best gripper flipper that we have had yet, it worked alright and it looked nice so it impressed the judges. Our robot didn't die during matches which is a welcome improvement. We won 2nd place innovate award for our REVolution system. Also, we noticed our robot has good speed and maneuverability.

Weaknesses
We were ranked 32/36, so overall our robot game was weak. We assembled our final Supers robot too late, so we didn't have nearly enough driver practice.

Opportunities
Driver practice is key. In the weeks leading up to Worlds, we are going to avoid major robot changes and practice driving the robot as much as we can.

Threats
In Worlds, we are going to face the toughest competition we have thus far, so we are going to have to work very hard to stand a chance.

Scouting

Strengths
This time, we had things to hand out to teams that we visit and those that stopped by our pit. We made 1000 business cards and a lot of keychains that we 3D printed previously. Also, we visited a lot of pits, both in Kilrain and Pemberton, and made friends with teams, connections that will continue into Worlds. We even took pictures of everyone's robot and made a collage, pictured below.

Weaknesses
Our pit was disorganized and crowded, we were having. A few members of our team got sick, so there was a lot of sitting around and looking lazy. Apparently they will not be supplying chairs at Worlds, so that should help. We aren't known for being particularly high energy, but it is essential to be active in the pits on competition days.

Opportunities
By Worlds, we hope to have completed the awards case that we had planned for Supers, and hopefully we can create more Roman inspired items to give our pit a more unique touch.

Journal

Strengths
Our engineering journal was effective in portraying the progression of the robot design. It had an enormous amount of posts that show all of our accomplishments this year. The many posts we made for the REVolution system probably helped us catch the attention of the Innovate judges.

Weaknesses
Some of our sections were a bit empty, such as our control section which only has 6 posts and the business section.

Opportunities
Before Worlds, we are going to organize the posts into their respective awards a bit better as well as writing abstracts for each award and why we are good candidates for them. We are running out of space in our binder, so we are going to split it into two which will be nice so two judges can read our information at the same time. For our control section, we are going to add an Open CV post, which is something we talk about in our presentation but we don't have many details about it in our journal.

Threats
When we split into two binders, a judge may mistake each on for a full journal, so we must make it clear on the cover of each journal that it is only half.

iMake 2018

iMake 2018 By Ethan, Charlotte, Karina, Austin, Justin, and Tycho

Task: Present at the Fort Worth Science Museum iMake Festival

The iMake Maker Fest is an annual event held by the Forth Worth Museum of Science and History to celebrate innovation and Maker culture. We've presented here before, most recently in the Rescue Recovery season. We really wanted to get in one more outreach event before worlds, and we already had a good connection with the museum from prior events, so we contacted them asking them if they had extra space for a 12x12 robot field. They did, and we came.

We came early, around 8, so that we could set up an entire field for practice. Even though we're planning on volunteering, we still can't reasonably give up an entire day of drivers practice. So, we turned our outreach into a combined event - talking to parents and educators about FIRST, as well as more directly demonstrating that by driving our robots around the museum.

We talked to about 900 people today from all over Texas, and had an overall very successful day. We had many parents interested in putting their kids in FIRST programs, and had a former FIRST official talk to us!

Next Steps:

We don't have much time to do any more outreach events before Worlds without sacrificing valuable time, so our next focus is solely on the robot and journal.

Importance of Documentation

Importance of Documentation By Abhi and Tycho

Task: Explain commits

As explained in a previous post, we were having many issues with git commits and fixing our errors in it. After a lot of the merging conflicts, we had to fix all the commits without exactly knowing what was being changed in the code. Part of the reason this was so hard was our lack of good naming conventions. Though we always try to make a title and good description for all posts, this doesn't always happen. This is precisely why it is important to check in all changes at every session with good descriptions. Someone had to spend their time mechanically trying to do merge conflicts without understanding the intent behind the code. So it took them longer, they may have made mistakes, an issue fixed by good documentation in the first place.

This post is dedicated to explaining some of the errors and what the commits true intentions were.

Stuff:

That one is mostly about code for the 3rd servo in the gripper open/close methods. It created the servo in pose and added code for it in GlyphSystem2.

4a6b7dbfff573a72bfee2f7e481654cb6c26b6b2:

This was for tuning the field oriented code to work. There were some errors with arrays in the way power was fed to the motors (null pointer exception) so I (Abhi) had to fix that. Also, I made some touch up edits with formatting in the methods. After all this, Tycho made (may have edited existing) a method in Pose for Viewforia demo. Minor changes were made to account for this.

c8ffc8592cd1583e3b71c39ba5106d48da887c66:

First part was all Argos edits at the museum to make it functional and fine tune some measurements. Second part involved the conveyor belt flipper. Tycho made changes to the dpad up and down to return to the home position rather than carry out complete motion (not sure if this carried over in all the commit mess but it was done theoretically). Driver practice will have to confirm changes.

Next Steps

Don't name things badly so this doesn't happen.

Discover Summer PREP U

Discover Summer PREP U By Ethan, Charlotte, Austin, Evan, Kenna, Tycho, and Karina

Task: Volunteer at the DISD Discover Summer PREP event

Today, our sponsor volunteered our RV for DISD's Discover Summer PREP U. This is the week before Worlds, but luckily this event was from 9am-1pm, so it didn't interfere with our normal practice. The event was originally planned to be outside, but it was 39°F, well below the Dallas average April temperature of 57°F. This meant that we didn't get as many visitors as planned because we can't exactly park our RV inside, so we braved it alone. For the first few hours, we didn't realize that, so we sat all lonely inside. Finally, we realized our mistake and sent people in to demo our robots and invite people outside.

Once people heard the gospel of Iron Reign, we were flooded with visitors, and we were completely unprepared. We had a team member who fell asleep under a bench, and the masses of people trapped her underneath, and we had to wait for an oppurtune moment to free her. The RV had its usual two modes, with EV3 Sumo Bot programming in the front, and keychain printing in the back. We recently bought two new filament types, green and translucent blue, both of which produce higher quality prints and easier removal than the usual red filament.

Inside, we had people talking to the passerby, giving them the history of Iron Reign and other FIRST-related information. Austin and Tycho drove Argos and Kraken, drawing many interested visitors of all ages. We even saw the father of one of our former alums. We talked to the most people in there, but we still drew a decent amount of people to the RV.

Overall, we interacted with about 450 (Waiting on BigThought estimate) people. While not exactly as much as we hoped, this was still a decent showing for the weather.

Next Steps

This was our last outreach event before Worlds, and it was an successful one at that.

Autonomous Updates, Multiglyph Part 2

Autonomous Updates, Multiglyph Part 2 By Abhi, Karina, and Tycho

Task: Develop multiglyph for far Stone

We had a functional autonomous for the balacing stone close to the audience. However, chances are that our alliance partner would want that same stone since they could get more glyphs during autonomous. This meant that we needed a multiglyph autonomous for the far balancing stone. We went on an adventure to make this happen.

We programmed the robot to drive off the balancing stone and deploy the grippers as this occurred. To ensure the robot was off the stone before deploy, we utilized the roll sensor in the REV hub to determine whether the angle the robot was at was flat on the ground. This made our autonomous account for the error we could have on the balancing stone in terms of placement in the forward backward direction respective to the field. Next, we used an IMU turn into the glyph pit to increase our chances of picking up a second glyph. Then, we backed away and turned parallel to the cryptobox. The following motion was to travel to the field perimeter for a long period of time so that the robot will be pushing the field perimeter. This was done to correct any wrong angles and make grippers perpendicular to field wall. Then the robot backs up and scores the glyphs. Here is a video of it working:

Next Steps

Now we are speeding auto up and correcting IMU angles.

2018 Worlds Day One

2018 Worlds Day One By Ethan, Evan, Kenna, Austin, Charlotte, Abhi, Tycho, Karina, Justin, Janavi, and Shaggy

Task: Present and play first match

It was a dark, surprisingly non-humid, Houston morning. Tarballs blew through the parking lot from dusty, abandoned oil refineries down by the bay. One by one, phones went off in the hotel looming above the lot, waking up their inhabitants. In these rooms, their occupants dusted off their Bucees wrappers and Iron Reign shirts and stumbled to the tournament.

The first day was relatively short, with a lot of waiting. There were two main parts of the day, presentation and first match.

Presentation
Our presentation went well. We were able to get all of our information across effectively and we got in-depth questions from all of the judges (including our first question about coding all season). Throughout questioning, we were able to hand off questions so that no individual member dominated the questioning time.
One problem we had with the presentation was that the rooms were constructed within the competition hall with fabric. This made it so that sound did not carry very well within the rooms, and that sound could carry over from other rooms, so the judges had difficulty hearing us at some points depending on the speaker. Despite this, we're confident that the majority of the information came across.

Game 1
We won this game, 319-152. Both us and KNO3 outdid ourselves in robot game, scoring more in autonomous that our opponents did the entire match. In telop, we lagged behind, but there was already no catching up for our opponents.

2018 Worlds Day Two

2018 Worlds Day Two By Ethan, Evan, Kenna, Austin, Charlotte, Abhi, Tycho, Karina, Justin, Janavi, and Shaggy

Task: Compete in robot game

It was the beginning of Day 2. Our members rolled out of bed, covered in old Fiesta receipts and Chipotle wrappers. One by one, they stumbled onto their charter bus, unprepared for the new day.

Game 26
We lost this match, 213-401. Our robot wasn't working reliably on the field and we were still debugging issues. Because of this, there was only one true competing robot on blue, and it couldn't keep up against two bots.
Game 34
We won this match, 428-172. Both us and our partner had high-scoring autonomii and teleop, and we were able to score the relic while our opponents weren't.
Game 55
We won this match, 484-405. We were about evenly matched, but we were more than pushed over the top with the 180 penalty points from the other team. However, we were partnered with RedNek Robotics, the top team at the tournament, so we should've done better than a slight penalty win.
Game 73
We won this match, 459-441. At this point, we had gotten in the groove and were actually competitive in the robot game for once. We got 200+ points in autonomous *and* teleop, a feat that we'd never done before. While our competition was equally matched, we had a slight initial advantage that was never overcome.

We also entered the block design competition this day. AndyMark released a form on their Twitter a few weeks before to enter, and we requested 64 blocks. We settled on a throne design, using a bread carver to add more details. We had teams from all over gravitate to our pit to sit in our chair and get help in their own designs.

2018 Worlds Day Three

2018 Worlds Day Three By Ethan, Evan, Kenna, Austin, Charlotte, Abhi, Tycho, Karina, Justin, Janavi, and Shaggy

Task: Compete in robot game

It was the beginning of Day 3. We awoke, covered in metal parts and broken servos, took our sleeping-caps off, and went off to the Houston Convention Center.

Game 82
We won this game, 467-442. This was personally, our best game. We went against the BLUE CREW and won, which was no small feat (they went undefeated until this match). On top of that, we completed a full cryptobox, which we had never done before.
Game 99
We lost this game, 254-333. Our autonomous didn't work well, so we lost a good amount of points. As well, we just couldn't keep up with the blue alliance in TeleOp.
Game 116
We lost this game, 431-492. Like the last, we just couldn't keep up with our opponents.
Game 131
We lost this game, 232-408. Our phone fell off our robot at the beginning and disconnected :(.

See awards information here.

Townview Qualifier 2019 - The Day Of

Townview Qualifier 2019 - The Day Of By Bhanaviya, Jose, Paul, Aaron, Justin, Trey, Ben, Karina, Cooper, Jayesh, Tycho, and Max

Task: Run the Townview Tournament

On Saturday, December 15, Iron Reign hosted 31 teams and 300 students at the Townview Magnet Center, our home school's campus. With 31 teams, this was one of the biggest qualifiers in the North Texas region. A video play-by-play of the matches can be found in a separate entry here. This entry serves more as a description as to how we got to the point of hosting the qualifier and what to consider when hosting one.

To start off, a full-fledged qualifier requires a large number of volunteers - both student and adult. While there are certain roles that are limited to adults only, many roles need a good number of younger volunteers - especially queuing and judging assistance. If the host team is not participating in the qualifier, then a good way to meet this cap is to recruit from a school's robotics program. In our case, student members from the Iron Reign Robotics program filled in positions such as game announcer, emcee, disc jockey, concessions, and around 10 queuers and runners. Prior to the start of match-play all our members helped with judging assistance. This includes ensuring that all teams are queued up on time outside their judging panels and ensuring that all teams have gone through field and robot inspection. This helps ensure that all teams are on schedule for the start of match-play. Below, you can see what specific roles which Iron Reign members helped fill during the tournament:

Townview Qualifier Member Work Log

Team MembersTaskStart TimeDuration
KarinaReferee7:0012 hrs
JustinQueuer and Runner7:0012 hrs
BhanaviyaEmcee and Queuer7:0012 hrs
BenQueuer and Queuer7:0012 hrs
JoseGame Announcer7:0012 hrs
CooperQueuer and Judge Advisor Assistant7:0012 hrs
AaronQueuer and Runner7:0012 hrs
PaulDisc Jockey7:0012 hrs
TreyQueuer and Runner7:0012 hrs

A good qualifier also needs adult volunteers. We had 2 judges in 4 judging rooms and one room with 3 judges. In addition, we also had 6 referees and one scorer. All of these are adult roles which meant we had to seek volunteers from a variety of sources including prior FTC Tournaments, alumni from our team, and even our own families. All adult volunteers must go through background checks as well as complete other training certifications on the FIRST website so this proccess must start at least 3 weeks in advance to recruit enough volunteers. To do this, we posted a request for volunteers on this blog for any visitors to our website to sign up.

Fresh off of the Allen Qualifier, we knew the pressure that teams felt at a qualifier - whether its caused by a lack of driver practice, tools or just undulated anxiety, we wanted to alleviate this stress. So, we ensured that a practice field set up away from the pit area for teams to practice right before their matches. We also kept a spreadsheet with inspection results on 2 monitors in the pits so that teams could be updated, and made pit maps so teams could find one another. These maps are also helpful to runners who need to find teams to queue them for their matches or for their judging panels. With so many members of our team floating around the pits, we were also able to provide any build or code assistance to teams who might need it. Finally, one trait all FTC team members share on the day of qualifier is the perpetual need for sustenance so we collaborated with one of our school's, TAG, PTSA to set up a concessions stand while the DISD STEM Department ensured that all volunteers received lunch.

Next Steps

By the end of the qualifier, we were able to advance 4 teams to the North Texas Regional Championship, and another 4 to the Wildcard Qualifier on February 1st. The qualifier could not have gone as smoothly as it did without the help of all our volunteers for committing so much of their times on a weekend to promote FIRST and STEM. We'd also like the DISD STEM Department for proving all our volunteers with breakfast and lunch, to The School of Business and Management and our sponsor, Mr John Gray, for supporting the event. Finally, we'd like to thank our coach Mr Virani for managing all of the logistics for the event, including its set up and the qualifier itself.