Something to think about anyway, sorting 12 barrels by colour into two areas, autonomously, within 5 minutes. That's the PiWars 2024 Eco-Disaster Challenge detailed here
Eco-Disaster – Pi Wars.
Well we have to think about it, though we may never get to do it!!!
The Challenge The arena for this challenge is 2.2m square, with a central area of 1.6m square where the barrels are located, positions of which revealed on the day.
So, the challenge is to relocate the barrels, red for toxic, green for ok, to two areas, denoted as blue and yellow, scoring 80 points for the number of barrels relocated correctly, but loosing 40 points for incorrectly relocating barrels. There are extra points for part way completion, 50 for six barrels correctly sorted, and 150 for 12 barrels correctly sorted. Additionally, 250 points for completing the challenge autonomously, which as an 'advanced' team, we have to. As with other challenges where time matters, if all barrels are collected, additional points are awarded according to the formula system described here Formula Scoring System – Pi Wars. Thus, for completing the challenge correctly, and fastest, within 5 minutes this challenge scores 1510 points.
Approaches
Here are three general approaches to the challenge, and the final one used may be one selected on the day depending on the layout of the barrels, or just a mixture, but without a strategy then attachments can't be designed.
As an alternative view, it's been pointed out that as an autonomous challenge earns 250 points, simply letting the robot stand still or spin on the spot might earn the points, as incorrect barrel placement, however accidental, will loose points.
Assuming we're actually going to attempt the challenges, the first hurdle is identifying the colour of the barrels to be placed. An immediate option is a colour camera which has associated code to identify the colour correctly. If this is used then it's likely that this camera will also be used for navigation to the clean and contaminated zones, and preferably avoiding knocking over any of the other barrels.
A less code intensive option is to use a colour sensor such as a TCS230, which can be tuned to identify the correct zone and barrel colours on the day. This would have to be used in association with a separate navigation system, such as an ultrasonic, laser or IR system.
1. Individual Barrel Placement
This requires that the robot locate each barrel, identify the colour, and then navigate across the arena to the correct location and place the barrel there.
At it's most basic, the robot could be fitted with a 'pusher', drive up to the barrel, push it around the arena and into its correct zone, then repeat 11 times. This does imply that the route to the zone is navigable and also that the barrel is in a position to be pushed, and hasn't been stuck up against a wall.
The next step to this would be to have a barrel handler which will grip the barrel in some way allowing the barrel to be positioned where required. Attachment design ideas are in a later section.
The arena design has allowed for free movement around the outside initially and a simpler strategy might be to drive the robot to one of the corners adjacent to the target zones and collect the barrels from that position where the other barrels would be unlikely to get in the way of a robot repositioning one.
2. Sweep Then Sort
In this strategy, the robot makes two passes at barrel placement.
In the first pass, the robot uses a pusher, possibly of maximum width 325mm, to push all the barrels collectively to the side of the arena containing the zones. This will immediately place some barrels in the correct zone and of course some in the incorrect zone, as well as a few outside a zone. This may appear to be a quick solution but it would probably take five passes over the arena to guarantee collecting all in this way which might reasonably take 1 minute.
In the second pass, the robot then begins to sort the barrels, now against one arena wall, either moving an incorrectly placed barrel to the correct zone, or simply passing over a barrel if already correctly placed. A basic system would be to work from right to left, or left to right, checking each barrel and moving each errant barrel when found. Moving barrels at this stage could be using a similar push/grab attachment as in approach 1, or a specialised sideways grabber to allow a robot to drive back and forth along the line of barrels. A slightly more advanced approach would be to scan all the barrels for position, possibly while relocating one, and then shuffle a barrel in error from the other zone back until all barrels are correctly placed. Barrels not in a zone must be identified and moved into a zone, as well as the correct zone.
On a points basis, if a robot autonomously ploughed all barrels into one zone, it would score 540 points, so as a default position this strategy has some advantages. From then on, every barrel moved to it's correct zone effectively gains the robot 120 points, plus the bonus if all barrels correctly positioned.
3. Collect and Deliver
This approach requires that the robot be capable of sorting and moving all or many, barrels at once.
The robot drives around the arena collecting barrels, and once it's collecting capacity is full, drives to the zones to deposit the collected barrels. This could take one of several routes.
- The robot collects all, or several, of one colour and takes them to the appropriate zone.
- The robot collects all, or several, of any colour and takes them to the appropriate zones, sorting them as they are deposited.
- The robot collects and sorts all, or several, barrels of any colour and deposits them in the appropriate zones.
This could obviously require an attachment not much more complicated than that used in approaches 1 and 2, or could involve something more complicated where up to 12 barrels are sorted and moved by a robot at once.
Attachment Ideas
At it's most basic, a successful pushing attachment only has to sufficiently enclose and support a barrel at a low level to enable it to be positioned into a zone. This attachment could also include a colour identification sensor.
Basic Pushing Attachment
A pushing attachment has its limitations not being able to pull for which some sort of grabbing/gripping mechanism is needed. This can take the form of a passive grab (say a simple push doorway mechanism), and an active release, or an active grab and release, but given the low weight of the barrels, a passive grab may have limited use.
Upgrading the basic idea with a servo and a hinged flap...
This now offers both push and pull from a simple grab, the servo can also be used to open the flap to give a bigger area to capture a barrel.
Extended capture position, rounding off the edges a bit will probably help with capture.
To handle the collection of multiple barrels and herding them to one place or another, as per approaches 2 and 3, something a little larger would be needed. No attempts here at loading a hopper or any other container, but that would definitely be a good option for anyone with design imagination and lots of time.
The flaps extend to accommodate and shepherd more barrels into the holder. they would fold flat at the beginning of the challenge to be extended. While they couldn't go wider than 325mm, they could extend to say 150mm forward so accommodating three rows of barrels.
With all barrels present
And this view begins to look like a server at Oktoberfest
These last two are simple horns to collect the barrels in two sections
The robot would have to plot its course to ensure it could easily collect and deposit mixed loads.
We'll have to see what approach we'll take, we've built approach 2 before, but we may have a combined idea completely different.
Ideas we haven't developed further yet are
- cranes/arms, to both carry and position barrels,
- vacuums, especially to lift,
- barrel sorters, to mechanically sort barrels on the arena
- barrel rollers to deliberately handle fallen barrels or even those that fall accidentally
- blowers, to position barrels remotely
- telescopic cameras, to give a better arena view
- harvester, uses a rolling cage to sweep up and sort barrels into a rotating bowl to be deposited later
One idea we did think odd, is that the green barrels turn red when contaminated by the contents, but not by touching the red barrels, maybe they shouldn't be allowed to touch the red barrels at all!!!
Still, onward, we have a chassis and some arms so time to play.