What it does

We participated in the Mechathon tracked hosted by John Deere. Within the Mechathon, we participated in the Hard track with the Elegoo Conqueror Robot Tank kit. The goal of the track is to flatten sand in a small, closed arena.

Inspiration

We took inspiration from multiple surface leveling tools, including gardening rakes and John Deere's industrial Graders.

How we built it

First, we constructed the robot according to the kit's instructions and planned our overall design. We have an acrylic scooper in the front of the robot that is like a bulldozer, but with vertical slits in the bottom. The slits allow sand to sneak through, letting the robot rearrange sand while making it harder to get stuck. We also have a wooden "smoother" on the back of the robot that does a final smoothing of the sand. The smoother is a tilted horizontal bar.

We also had plans for our software. We managed to get accurate yaw pitch and roll readings from the IMU using the official MPU6050 library (https://github.com/ElectronicCats/mpu6050). This gives pitch and z acceleration, which we would integrate to get the robot's vertical height using a Runge-Kutta method. Having the robot's vertical height would be important for full autonomy and the the robot knowing the most even areas of the arena.

Challenges we ran into

The biggest challenge was our mechanical design. We prototyped our bulldozer/scooper and thought we had an effective technique for redistributing sand. However, we found that the scooper is always positioned too high, and does not touch the sand, or too low, and the robot gets high-centered on it instead of its wheels. We ended up having to ditch the scooper and just use the smoother in the back.

Another big challenge was wireless communication. We think we followed the same steps for wireless connection as other groups, but our robot never established its own network for us to connect to. This left us with two options:

  1. Control via the remote, but we can't run custom code
  2. Run custom code, but we have to have a wired connection, making us lose 5 points for only 5 points total gained. This set partial autonomy as a very low priority goal for us.

Accomplishments that we're proud of

We were all unfamiliar with Arduino coming into this hackathon, so we're happy we've learned how to use it. We also have a cool power switch on the top of our robot which was not part of the kit. It's very accessible, and can be used as a robot-mounted emergency stop, because for some reason Arduino doesn't provide an e-stop option through their IDE...

What we learned

We learned that we shouldn't run before we walk--we jumped too quickly into trying to run custom software and underestimated the difficulties of just driving around on the sand. We needed to dedicate more manpower to mechanical prototyping and design so we could have a solid foundation. Without a solid foundation, autonomy became much less realistic because our robot frequent gets stuck on the sand.

What's next for Sand Conqueror

We have our demo Sunday morning at 11:45am, where Sand Conqueror will attempt to level the sand in the real sand pit. We're going to aim for getting score 5 out of 10 in leveling as quickly as possible so we can qualify for the speed scoring category while maximizing our points in it.

Built With

Share this project:

Updates