2016 FIRST® Robotics Competition
RoboRealm is a software application that provides you the ability to rapidly process images from the Kinect and/or Axis IP camera in order to visually detect field elements. You can use RoboRealm to track positional markers, follow lines, track balls, and augment camera images with additional visual graphics. RoboRealm is an ideal vision platform for the Hybrid Autonomous period and human controlled parts of the competition (i.e. Augmented Driving).
As the 2016 season is over you can still download a 15 day trial copy that you can use to experiment with before next season.
The following tutorials outline several possible ways to perform automated vision based target tracking and targeting for the 2016 FIRST® Robotics Competition. The actual method you use may be a variation of the following techniques, but these examples should for a base from which to work from. Keep in mind that the solutions presented here are not the only possible solutions and therefore if your final method differs from that presented that does not necessarily mean it is wrong.
These tutorials assume you are using some sort of visual hardware device on your FIRST robot and that you are interested in using an autonomous guidance mechanism to keep track of the vision targets. The targets are made of 4" retro-reflective tape which will reflect light directly back to the source. To see this characteristic of retro-reflective tape use a flashlight and while holding the flashlight right next to your eyes shine the light towards the reflective tape. You will notice that only when your eye and the flashlight are in line will the reflective tape have the best response.
Using the Axis IP Camera If you have decided to use the Axis camera on your robot for target tracking, this tutorial covers how to capture images from the Axis camera using RoboRealm.
Using a webcam If you have decided to use a webcam on your robot for target tracking, this tutorial covers image capture using RoboRealm and the control of digital zooming. This assumes you are running a netbook/laptop onboard your robot.
Using the Kinect If you have decided to use the Kinect on your robot for target tracking, this tutorial covers the setup of the Kinect drivers and initial image capture using RoboRealm. This assumes you are running a netbook/laptop onboard your robot.
Visual Targetting #1 In order to move your robot into position to fire at the upper visual target you will need to first find the target in an image. This tutorial shows one way of detecting the target within an image. It uses the premise that the target is much brighter than the surrounding image and that the target's convex shape minus its original shape is unique in the image.
Visual Targetting #2 In order to move your robot into position to fire at the upper visual target you will need to first find the target in an image. This tutorial shows one way of detecting the target within an image. It uses the premise that the target is greener than the surrounding image and that the target shape can be filtered using its size and skewness.
RoboRealm Computing RoboRealm runs on a Windows PC. In order to utilize the vision processing that RoboRealm provides you will need to use a Windows based machine. This can either be a local extra onboard computing device like a tablet or a remote device like your dashboard PC. Either way, you'll have to decide where to place the computing power depending on what you are looking to accomplish.
Once you've determined the distance and location of the desired target you'll need to communicate that to the CRio. Using
the Network Tables protocol, RoboRealm can share information to the CRio or any other device on the network like the
Smartdashboard does. Using the Network Tables module, you can send the resulting data to the CRio in order to move your
targeting system appropriately.
For more information
FRC 2017 RoboRealm Tutorials
FRC 2015 RoboRealm Tutorials
FRC 2014 RoboRealm Tutorials
FRC 2013 RoboRealm Tutorials
FRC 2012 RoboRealm Tutorials
Robot programming with WPILib
FIRST Robotics Resource Center
TeamForge FIRST WPILib
| New Post
|FRC 2016 Related Forum Posts||Last post||Posts||Views|
Switching between cameras and network tables
I am having an issue with my program. The goal is to be able to switch between cameras at the push of a button on my joystick. I...
Slamtec RPLidar implementation
Hello! I am trying to use a Slamtec RPLidar with Roborealm, but can't seem to get it to work. When I plug in the l...
We're working on getting up to speed on RoboRealm in the offseason. It's really good, but we're having a little problem with the...
RoboRio To USB Camera
Hi I am trying to connect the Microsoft LifeCam HD-3000 to roborealm through the roborio. I am having trouble because everytime ...
Eliminate Distortion When Tracking Targets With Axis Cam
I've been working on this issue for a long time, but just can't seem to get it fixed. When our Axis camera (model m1013) is moun...
IP camera for FRC
We are relatively new FRC team. We want to use vision processing using RoboRealm. If you have used an IP camera for FRC 2016, I ...
NetworkTables not working on FMS
When connected to the FMS(Field Management System) at a FRC competition several things change in the networking setup. As a resu...
We are successfully using Roborealm with a winbook 700 tablet and getting great results. We do however have to stop the robot to...
A simple question in a previous VBScript sample
Hi, there! I'm a member of the FRC team 5515, Blue Power, which is also a group from Shanghai, China. So this year we're trying ...
Rotating Camera Image After Modules
Hello, Our team is having a few problems with camera rotation. We recently decided to place the cam...
I am having problems with roborealm that I suspect may be a problem with writing to nettables. Roborealm is hanging a...
Hello again, I have a .robo file similar to the tutorials for targeting and tracking and have attac...
How do I tell Roborealm the path to Python Modules?
Hello! To aid in debugging our code for this year's challenge I was hoping to write variables to an...
I have a target that I need to have my robot shoot a ball into. The target has a U shape of retro-reflective tape under it. I wa...
Python Module not working
Hello, I downloaded a trial version of RoboRealm a couple weeks ago and had it working great with p...