In a 3-team field of Beginner teams… And we had a LOT of fun doing it, and learned a LOT. Hopefully we’ll get the chance to try this again in 2023. It was great to have the chance to watch the creative ways that everyone else approached the same challenges we did.
This shows a combination status display / stopwatch panel that provides visual feedback on the progress of our challenge runs on the videos. The display is built from (2) 32×64 LED matrix displays, giving a total field of 32×128 pixels. It uses an Adafruit MatrixPortal to drive the panel and to connect to an MQTT broker over the network to receive commands.
While the unit was built specifically for the PiWars challenges, it could be easily used for any competitive event that would benefit from a display of status messages and event timing.
The panel is 130×500 mm in size, using the 4mm pitch display panels from Adafruit, but 3mm pitch or 6mm pitch panels could be substituted to achieve different physical sizes at this resolution, or the field “width” or “height” can be extended by adding additional panels, with minimal software changes.
Software and complete documentation including message protocols is available on Don’s Tech Stuff site.
Those who watched our challenge videos will remember that there was a bug in the stopwatch code that caused it to “run slow”. The bug is fixed in the posted code. It was a careless error, born of rushing to get this ready for filming, but its a great reminder that (1) rushing is rarely a good idea, and (2) code reviews ARE ALWAYS a good idea.
So, we don’t actually “pluck” the apples. We sort of bash them instead. Lacks a bit in finesse or elegance, but it’s simple, and pretty effective.
Basically, we have a “knocker” at the height of each branch. The knockers have fingers positioned at the location where the apple stems are on the branch (pretty handy that these trees have such consistently placed apples…).
The apples are attached to the tree with small magnets. When the robot approaches the tree, the fingers restrain the apples so they don’t “pivot” upwards too much, and the back knocker panels push them off the tree.
They fall into a “scoop” container at the front of the robot, and at the end of the run the robot returns to the barn, raises the scoop and dumps the apples.
So after our earlier discovery that rice is indeed heavy, we re-thought our strategy for delivery. We now use 3 bins that rotate on a turntable. This way the mass is concentrated over the wheels instead of in front of the wheels.
Each bin is filled with enough rice to fill a bin half-way, plus 20%. Each bin has a servo-operated trap door at the bottom that allows the rice to be delivered all in one big “gush”. The turntable is driven by a small stepper motor, geared down by 4x so it can handle the necessary torque (did i mention that rice is heavy???).
We did it !!! BrattyPi was able to successfully feed the Hungry Cattle and pluck the Nature’s Bounty apple tree. We didn’t do quite as perfectly as we had initially hoped (and we didn’t play with any sheep), but we made a very respectable effort, learned a lot, and had a LOT of fun doing it. Can’t wait for you all to see the videos in July.
We haven’t been very attentive to this blog in quite a while (life happens…), but we expect to start updating it to show technical documentation for the various parts of our project now that the pressure to “get it working” is past.