AprilTags present a very interesting opportunity. After reading through the game manual it appears there is nothing prohibiting the attachment of AprilTags to your robot, as long as it doesn’t interfere with the game.
The attachment of an AprilTag to your robot could allow other teams in your alliance to ensure collision prevention while performing any autonomous actions. It could also allow your robot to simply track where other team members are. I’m sure there is a number of utilizations for this that I have not thought of.
Assuming other teams attach an AprilTag to their robots, you could configure the IDs of other team robots ahead of time within ShuffleBoard for further functionality. Obviously, the implementation of such a system would be a very intensive programming process and would likely take months to fully implement properly, but once finished it could massively improve autonomous teamwork. This all assumes that FIRST doesn’t prohibit attaching AprilTags to your robot.
Here are a few ideas for what you could use this for within the 2023 Game:
Loading Zone Lineup while also ensuring no collision with nearby robots automatically
When coming close to teammates within the Community area the robot could automatically enact a speed limit to prevent any collisions during teammate object placement
Autonomous halt/slowdown in the event of potential collision with teammate
Robot lineup to handoff game pieces? (Very hard to implement due to variable robot designs)
Charging Station autonomous lineup & collision prevention with teammates
General teammate collision prevention when coming within close proximity of teammates
Many other possibilities I haven’t even thought of
This is an idea/concept, interested in hearing constructive feedback as to how this would not work or how it could be better.
Again all of this assumes FIRST will not prohibit the attachment of AprilTags to your robot. Otherwise, this is not possible.
This was something I was pondering during preseason. Technically, I don’t think there was anything to stop use from doing this with the retroreflective tape (I could be wrong though, I don’t have previous rules memorized or care enough to research it).
The biggest issue I see here would be standardization. Unless the tags were on the same spot on every robot, this gets super messy. You could get around this partially by setting a large margin of error for autonomous responses, but that introduces even more issues, and makes the ones this would address even more complicated.
The other issue I can think of is a design one. To be effective, you would need ~4 AprilTags on the robot-to-be-detected (less if you were very clever), each the 8(-ish?) inches that the ones on the field are. This isn’t a problem, per se, but it takes up valuable and useful vertical real estate. Also, on a much less serious note, the tags would ruin the aesthetics of most robots.
All in all, it’s a cool idea, but it’d only really be effective for robots whose teams have been collaborating long before competition. This does sound awfully fun for an offseason competition though.
I don’t know if you mean R203 or G203, but I don’t see this violating either of them. If G203, yes, this is collusion, but it isn’t explicitly to shut down gameplay options in a coordinated manner (it would make potentially make that easier, but it doesn’t strictly imply that). If R203, this probably wouldn’t qualify as hazardous, so long as you didn’t use any tags that are already reserved for the field.
including imagery on your ROBOT that, to a reasonably astute observer,
mimics the retro-reflective features of vision targets described in Section 5.9
Vision Targets
Sure, it doesn’t specify AprilTags there, but that’s probably an oversight in revising the rules from one year to the next.
Agreed, this should get addressed explicitly. However, as it stands, I interpret that rule as “you can have retroreflective tape, but it can’t look like the patterns on the field”. So if the game called for a square reflective element, you could have a circular one and it wouldn’t be a problem.
Since the AprilTags have unique IDs, and that information is available when you detect them, I would argue that using a tag that isn’t reserved for the field is legal (as of now), and “a reasonably astute observer” would consider them distinct. Safety-wise, the burden of distinguishing the tags is on the the software.
Using a different tag class seems reasonable for this purpose without violating a potentially revised R203. Perhaps one with many ids (like Standard52h13) so that every team can have their team number as their ID.