March 21 Newsletter – RoboJackets https://robojackets.org Competitive Robotics at Georgia Tech Wed, 03 Mar 2021 14:18:18 +0000 en-US hourly 1 https://wordpress.org/?v=6.0.18 https://robojackets.org/wp-content/uploads/2019/10/cropped-RoboBuzz-32x32.png March 21 Newsletter – RoboJackets https://robojackets.org 32 32 Moving the Student Competition Center https://robojackets.org/2021/03/03/moving-the-student-competition-center/?utm_source=rss&utm_medium=rss&utm_campaign=moving-the-student-competition-center Wed, 03 Mar 2021 14:18:18 +0000 https://robojackets.org/?p=2310 by Dallas Downing.

When RoboJackets was founded in 2000, it was a handful of students making combat robots in the basement of the Howey Physics Building. Today RoboJackets has grown to over 200 dues-paying members spread across five competitive teams in a 17,000 square-foot workspace shared with the rest of the Student Competition Center. However, the SCC we know today didn’t materialize overnight. It used to live on campus in a now-demolished building called the Mechanical Engineering Research Building, more commonly known as the Tin Building, located behind the Coon Building. Today we’ll take a brief look at the old shop space and the move to our beloved space today.

The Tin Building exterior

The Tin Building was built in 1947 using the same design as an ordnance repair shop used by the army in World War II. It was originally built in 1941 in Savannah before being salvaged and rebuilt on Georgia Tech’s campus. Since then it was used by the Mechanical Engineering Department (now the Woodruff School of Mechanical Engineering) as a laboratory space for graduate and doctorate students. In the 80s, the Tin Building was mostly used as a robotics lab, seeing many projects focused on computer vision and robotics. In 2000, the School of Mechanical Engineering began looking at a space to put the growing student competition teams together, and the Tin Building seemed to be a fitting place. Teams including GT Motorsports, GT OffRoad, SolarJackets, and RoboJackets started moving into the building in 2001. Shortly after the building was dubbed the Student Competition Center for the teams occupying the space.

The inside of the Tin Building

The Student Competition Center could not stay there forever. The SCC was growing, especially with the addition of WreckRacing, and the building was deteriorating due to its age. Due to safety concerns, the building was condemned to demolition, leaving the teams without a space to work on their numerous technical projects. Dr. William Wepfer, the chair of the Woodruff School of Mechanical Engineering at the time, advocated for the SCC teams having a dedicated space to work. With additional support from President Bud Peterson, a facility on 14th street was developed to house the SCC and several other research facilities. In December of 2010, the SCC moved into the new space, where it has resided since. The larger space allowed for more machining tools, like several mills, lathes, and other tools used by all the teams. RoboJackets got a larger dedicated space to accommodate the 3 teams (BattleBots, IGVC, and RoboCup) it had at the time.

Student Competition Center entrance
The exterior and interior of the current SCC

Today the SCC is home to seven competitive teams, including RoboJackets. Without the space at the 14th St Engineering Building, it is likely that the teams it houses would not be as successful as they are today.

To read more about the history of the Tin Building, you can read the Historic Structure Report here.

]]>
Spotlight on IT and Web Dev: MyRoboJackets and More https://robojackets.org/2021/03/03/spotlight-on-it-and-web-dev-myrobojackets-and-more/?utm_source=rss&utm_medium=rss&utm_campaign=spotlight-on-it-and-web-dev-myrobojackets-and-more Wed, 03 Mar 2021 14:18:17 +0000 https://robojackets.org/?p=2323 by Kyla Qi.

RoboJackets might be mainly focused on robotics, but there’s a lot of administrative work that goes into running such a large organization. Dues payments must be recorded, access to shop space and code repositories must be managed, and attendance must be tracked. In recent years, some members of our IT team have taken it upon themselves to automate major portions of this work with custom software. We’ve already covered the People Counter in the November issue of this newsletter, so we thought we’d cover some of the other projects our webdev team works on.

Around five years ago, RoboJackets started seeing a significant uptick in membership. From 2015 to 2016 the number of dues paying members nearly doubled from around 80 to over 150, and has since swelled to over 200. MyRoboJackets, a RoboJackets-written web application, was started in the summer of 2017 out of a desire to tailor dues payment and attendance tracking to the needs of our growing membership in a way that the Georgia Tech provided solution couldn’t. It allows members to pay dues online, helps project managers keep track of merchandise distribution, records demographic information that helps core leadership understand the makeup of the organization, and generates reports for third parties like the College of Computing and sponsors. It also facilitates FASET recruitment and collects useful data, including how a recruited member heard about us, helping us target our recruitment efforts. Previously, a lot of this information was laboriously recorded by hand and manually entered into spreadsheets, a daunting task as recruitment and attendance skyrocketed.

MyRoboJackets being developed in house also has the added benefit of fast iteration and custom design. According to our current Web App Product Owner, Evan Strat: “Since we develop it ourselves, we were able to quickly adapt to the COVID-19 situation by adding remote attendance links.” Where previously members signed in via tapping their BuzzCard on a kiosk in the shop, remote attendance links allow students to remotely log attendance by simply clicking a link. The development team has also worked closely with Sponsorship Chair Brian Epstein to make sure the new resume book generation feature would meet his needs.

The RoboJackets Enterprise Directory Interconnect (JEDI for short) is our internal automation platform. It takes information about a student’s membership status and uses that information to provision or revoke said student’s access to a variety of RoboJackets managed services and spaces. This includes tools in the Common Machining Area, our GitHub organization, and our ClickUp workspace, to name a few. Previously, access to all of these systems would have to be requested by members after they paid dues and manually provisioned by a project manager or the IT team. The work of our web app developers allows our teams to spend more time building robots and less time dealing with paperwork.

Contributions to master on apiary from May 2017 to March 2021

You can explore the MyRobojackets code repository here.

]]>
A Look at URC: RoboJackets’s Newest Competition https://robojackets.org/2021/03/03/a-look-at-urc-robojacketss-newest-competition/?utm_source=rss&utm_medium=rss&utm_campaign=a-look-at-urc-robojacketss-newest-competition Wed, 03 Mar 2021 14:18:17 +0000 https://robojackets.org/?p=2299 by Jonathan Spalten.

RoboJackets has a wide berth of competitions its members participate in. In an effort to broaden our horizons further, RoboNav has made the decision to participate in the University Rover Challenge. Simply stated, URC’s challenge is to “design and build the next generation of Mars rovers that will one day work alongside human explorers in the field.” The competition involves four missions: the science mission, extreme retrieval and delivery mission, the equipment servicing mission, and the autonomous navigation mission. The goal of the science mission is to analyze a sample in the field and detect the presence of life or life-supporting materials. The extreme retrieval and delivery mission involves collecting tools and rocks of various sizes and weights and delivering them to specified locations under a time limit, while navigating difficult terrain. The equipment servicing mission requires the teams’ rovers to perform dextrous motions to make repairs to a piece of mock equipment. Finally, the autonomous navigation mission is a familiar one for RoboNav. It requires the rovers to autonomously navigate an outdoor obstacle course using GPS and visual indicators.

The team is gearing up to address these new challenges in a few different ways. The team has several small groups of members working to design major subsystems of a robot design, including a robust manipulator and an all-terrain drivetrain. The team feels confident it can apply the lessons they have learned from IGVC to help them address the Autonomous Navigation mission, and is working to adapt their approach in IGVC to the new drivetrain requirements imposed by the rougher terrain. The newest challenge for RoboJackets, the Science Mission, will be addressed by the formation of a new science subteam next year.

We’d like to feature two project teams in this article, specifically two new member teams that are working on essential subsystems. In RoboJackets, a typical new member project is organized with primarily new members doing the technical work. At least one experienced member on each new member team acts as a mentor and ensures the team can successfully accomplish their goals.

First, the arm team, which composes a few teams across disciplines. The mechanical new member team has made good progress with a basic arm design with an end effector, pictured below.

A basic mockup of the arm design. This arm can rotate to reach in any direction, and has 3 axes of motion, not including the ability to rotate the end effector. To save weight on the arm itself, the elbow is actuated using a belt (belt not shown, but the pulleys that will drive it are) that transmits the motion from the heavier motor further down the length of the arm.

The electrical team, including Eugene Min, has been doing research on different sensors to help the driver of the robot grab items. The sensors they are considering include a camera on the arm, a force sensor to understand the grip the robot has on an object, and an ultrasonic sensor to give detailed data on how far away an object to be grabbed is. Eugene is proud of the progress the team has made so far, and noted how the remote format might be helping them: 

I think it’s actually to our advantage that we’re entering a new competition like URC now when work is being done remotely because we’re still mostly in the ideation phase where team discussions take precedence over actual hands on prototyping. We’re constantly checking whether whatever we’re thinking to implement is within the rules and debating hypothetical edge cases that we believe we should consider in our designs.

We asked Sana Hafeez, a new member on the mechanical team for the arm, about her experience in RoboJackets so far. She has enjoyed her RoboJackets experience so far, but misses “being able to work in a machine shop and prototype ideas.” She also said: “I want to work with robotics in industry so this team is a really good place to learn new skills and apply what I’ve learned in the classroom.” She also emphasized how the mentors on her team helped her: “When half the team is remote, it can be difficult to reach out for questions but having older members act as mentors has been really helpful. Of course they’re there to offer advice or provide direction but more importantly they’re a great point of contact with the rest of the team…having a mentor helps you feel connected to the rest of RoboJackets.”

The other team we’d like to discuss is the drivetrain team, another new member project. They performed research on the approaches other URC teams and the real rover designs used by NASA, like the rocker-bogie mechanism. Based on their findings, the team made prototypes of 5 potential drivetrains using LegoⓇ, pictured below.

A basic drive train, with the wheels rigidly connected to the chassis. The team uses this as their control configuration.
Drive train with rubber Lego components as the springs in a suspension system. A step up from the basic design, and a very common design in URC.
This drive train utilizes a rocker-bogie mechanism, similar to the ones used on NASA rovers. The larger two-wheeled section is the rocker. This enables the chassis to remain halfway between the angles of each roger-bogie side.
Middle wheel rocker, a variation on the classic rocker-bogie. Many URC teams make modifications to rocker-bogie to varying degrees of success. This design allows the middle wheels to be lifted or lower relative to the other wheels, which may be useful in specific cases. Also note the differential gearing required to accommodate the design.
Motorized version of a back rocker bogie configuration. There are 3 rockers in this design, 2 in the front parallel to the movement of the rover and one in the back that is perpendicular to the motion of the rover.

The prototypes allow the team to better determine the pros and cons of each design. The prototypes have been manually tested by pushing them across objects to assess their speed, stability, and feasibility. Only one design has been motorized, and their next steps are to motorize more to test the drive trains under consistent power more similar to working conditions. 

We asked Findlay Townsend and Marvin Ren to comment on their experience working on this new member project and their experience with RoboJackets thus far. Findlay said, “I feel like I have learned a lot and met a bunch of new people” and appreciated that, as a part of the URC drive train project, “we immediately were able to work on something [important] for the club while working with upperclassmen mentors in smaller groups.” Marvin emphasized the role their mentors played in their work thus far:

Akhil [Sadhu] and Cameron [Loyd] have done a good job guiding us through the new member project. They helped guide us through research on the URC competition and drive train designs, and they used their knowledge and experience to tell us the pros and cons of different designs and how we could prototype them. They helped us build the Lego prototypes and answered any questions we had whether they were about RoboJackets or Georgia Tech in general.

RoboJackets is hard at work bringing our technical knowledge to bear on a new competition, and the organization as a whole works hard to find opportunities to involve our new members in meaningful work early in their college and RoboJackets experience. We look forward to detailing RoboNav’s further progress in addressing the novel challenges in URC.

]]>
The Computer Vision and Perception Techniques of the Autonomous Teams https://robojackets.org/2021/03/02/the-computer-vision-and-perception-techniques-of-the-autonomous-teams/?utm_source=rss&utm_medium=rss&utm_campaign=the-computer-vision-and-perception-techniques-of-the-autonomous-teams Wed, 03 Mar 2021 03:11:00 +0000 https://robojackets.org/?p=2306 by Evan Bretl.

One of the most critical functions of any autonomous vehicle is the ability to perceive its environment. Much of a typical robotics technology stack (mapping, planning, motion control) would be impossible without adequately sensing and comprehending the surroundings. Given the fundamental nature of machine perception to a functioning autonomous robot, RoboJackets software subteams have developed a number of interesting, practical perception solutions. This article will focus on RoboNav’s and RoboRacing’s perception techniques specifically, with coverage of other teams potentially coming in the future.

The first focus of this article is RoboNav’s neural networks, which were developed for use in the IGVC competition. The purpose of these neural networks is to take an input image from the forward-facing camera and determine which pixels in the input image represent painted lines.

Image source: RoboJackets

The pixels for these detected lines can then be virtually “projected” on the 3D world around the robot so that the location and shape of out-of-bounds lines are known to the rest of the autonomy system. 

The technique RoboNav uses to achieve this is a type of machine learning model called a U-Net. Many other machine learning techniques for image data might output a prediction for whether certain classes of objects (e.g. cat, car) are anywhere in the image; in contrast, a U-Net outputs a prediction for every pixel. The predicted values are probabilities that each pixel is a line, based on the examples of lines that it was shown during training. 

Above: the “U shape” of the U-Net comes from it’s repeated downsampling (left) and upsampling (right) of the size of the image during processing. Source: https://arxiv.org/pdf/1505.04597.pdf 

RoboNav has used this “binary” line detection model at IGVC competitions in the past, but a machine learning model that could identify pixels that contain other objects like barrels and other obstacles on the course would provide extra utility. Well, the team has solved that too with a multi-class U-Net. Each pixel in a multi-class prediction image contains the relative probabilities that a pixel is a white painted line, a barrel, or neither. Multi-class U-Nets require significantly more training data than binary U-Nets, so for the RoboNav to get good performance with such a model is an achievement.

Left: the image from the camera. Center: a hand-drawn example of what the multi-class U-Net should detect. Right: the actual detection of the U-Net.

Where can RoboNav go from here? The team is planning to integrate LIDAR point clouds into the detection of barrels and other objects using a class of algorithms called 3D semantic segmentation. In 3D segmentation, a different kind of machine learning model predicts whether LIDAR points (rather than image pixels) belong to a particular category.

Above: a point cloud from an indoor environment, classified using 3D semantic segmentation. Source: https://arxiv.org/pdf/1612.00593.pdf.

The second focus of this article is RoboRacing’s computer vision algorithms for the International Autonomous Robot Racing Competition (IARRC). The team calls these algorithms “detectors” of certain key features in the competition environment. These features include colored tape lines on the ground, stoplights, traffic cones, and signs with direction arrows. Detectors for multiple features may run concurrently to look for multiple features at once; for example, the robot may want to reason about white tape lines marking the edge of the track, orange cones to avoid inside the course, and the magenta start/finish line. Unlike RoboNav’s U-Net, these detectors are hand-engineered rather than machine-learned.

One of RoboRacing’s key computer vision algorithms detects white painted lines. This detector processes the camera image in multiple stages. First, the Laplacian edge detection algorithm produces a binary image that is white at sharp changes in color (such as the edge of the lane line). This binary image has many false positive line detections but few false negatives. Second, the camera image is run through adaptive brightness thresholding, producing a binary image that is white where a pixel is significantly “whiter” (high brightness, low saturation) than its surrounding area. This method gives very few false positive line detections, but it does have false negatives. These binary images are combined by extending the adaptive brightness result with the edge detection result (or, in other words, using the adaptive brightness result to filter out false positives from the edge detection result). The combined result gives a binary detection image for white lines that is robust to changes in lighting conditions without significant tuning.

Above: the progression of white line detection operations, resulting in the green overlay on the right.

Another key computer vision algorithm for RoboRacing detects orange traffic cones. This one can be simpler than the line detection because the color of these cones is so much different than the surroundings; it’s not a bad assumption that if a pixel is some shade of orange, it’s probably part of a cone. What is “orange” is described as a certain range of hue and saturation levels (in the HSV color space). These groups of orange pixels are filtered by size, so that there are not false positives that are just a few pixels in size. Using a pinhole projection camera model and the known height of the cones, the height of each group of orange pixels can give us an estimate of the distance to the cone.

To detect signs with direction arrows for the IARRC urban challenge, RoboRacing has another hand-engineered classifier. This software uses Canny edge detection to find the strong edges of the white-on-black arrow shape. These edges which form closed shapes are processed based on the number of edges (after polygon simplification; the arrow shape should have seven), based on width-to-height ratio, and based on Hu Moments.

Above: arrow sign detections and classifications with confidence values.

These applications of robotics and computer vision research provide new tools to help RoboJackets teams succeed in competition. More importantly, as documented in the RJ Research series, the algorithms and techniques applied in competition inspire our current and future members to develop the next technological advances in robotics.

]]>