Team Name: Caltech Rover Autonomy, Technology, and Exploration Research (CRATER)
Institution: Caltech
Project Duration: March 2023 - March 2025
Role Roject Description: Designed and implemented CRATER team rover's power and electronic safety systems
Team achievements: Admitted to Canadian Internation Rover Challenge (CIRC), placed 9th in Search and Rescue event 2024
The team at CIRC 2024
Placed 9th in Search and Rescue (the only event we scored points in)
Officially competed in 3 of our 5 events
Placed last overall at CIRC 2024 🙃
ERNIE (our rover) at Search and Rescue
The team at CIRC 2023
Unofficially competed as a specator in CIRC 2023
Got the rover moving, which, according to the event organizers, is a pretty good acheivement for a first year team like us!
Went on one trail, drove for about 100 yards via remote control.
ERNIE (our rover) on the trail
Design and build our rover's safety systems
Presented at our critical design review with other Caltech students
Set up hardware for rover communications
Wrote our safety report and adjusted our safety system according to their feedback
Designed how electronics would layout inside the controller box and ordered parts
More technical details below!
Wiring inside the chassis box (2023)
Odrive wiring viewed from the back of the rover
Goal: Control the motors without blowing up an expensive Maxon motor controller every 3 minutes like we did at CIRC 2023 💀
Methods:
Odrive S1s are open source, well-documented, ROS compatible, and relatively cheap ($150 each)
Their screw terminals are also a lot easier to interface with than the old Maxon controllers, removing the need for a dedicated controller harnessing board
Had a GUI that allowed us to do proof-of-concept testing very quickly
Controlling them remotely was a whole different beast -- faced hardware issues with the CAN (like can0 and can1 switching on our Pi at random)
Switched from using ROS service calls (from example on documentation) to ROS2 control
Mechanical team massively expanded our chassis, making room for electronics to slide in and out on a green acrylic board
Results:
Rover drove well, was very dextrous on joystick control, and manipulator motors were able to be controlled off Odrives too in preliminary testing
Got compliments from other CIRC 2024 teams who'd heard of Odrives and were thinking of implementing them themselves
We are looking into wago connectors, bullet connectors, etc to clean up our harnessing further
Might switch to ODrive Micros in the future given our low power consumption and need to conserve space
The team passing safety inspection on (nearly) the first try. Apparently it's a tradition for CIRC teams to get a photo pointing at their blue ribbon, which is awarded for passing inspection.
Compliant version of our main power distrubution system
Goal: Get safety report (and rover) to be compliant for officially competing
Methods:
First attempt was to just make minor changes to last year's report. This did not fly AT ALL -- I had no idea just how much more strict the rules were for officially competition teams
CIRC also cracked down on safety because alledgedly one of the team's rovers blew up on the way to competition
Had to replace a lot of our off-the-shelf power converters and busbars with ones that had datasheets
Used fuses to limit the current going through each wire below the max safe continuous current-carrying capacity of each wire
Our previous approach was to have fuses allow each circuit to get as close to the circuit's theoretical max continuous current.
This ended up having our total system max be around 80A -- which was extremely difficult to size wires and connectors for.
In practice, our drive motors (which account for the lion's share of the current) only drew a few amps. So we were (safely) overestimating the sizes of our fuses anyway
Solution: added fuses on the joining points between multiple circuits that were smaller than the sum of the fuses on the subcircuits.
We weren't going to let all subcircuits be drawing max power at once, but we would still allow each subcircuit to have current spikes
New system maximum 30-40A (In practice, on the field drew about 10A max)
Used 8-14 gauge THHN Cerrowire for our connections.
Results:
Rover passed inspection on the second day (first day spent fixing up rover from the drive up to Canada) and offically competed safely for the first time
Goal: Remote-control the rover over Wifi from a base station up to 2 km away
Methods:
Omindirectional Ubiquit antenna broadcasted Wifi from our router to a 120 degree sector Ubiquiti on our rover
In-rover Raspberry pi was ethernet-wired to an access point on the rover antenna
Antennas set to 2.4GHz with 40 MHz channel width
Base station antenna mounted within line of sight of rover antenna, hoisted as high as possible (on a post outside)
Terrible connection testing inside and outside on Caltech campus, kept losing connection and getting kicked out of SSH
Moving antenna farther away from rover helped a little (signal stregth in the -20 dbi range was too strong)
Solution (from software team): use tmux, which is supposed to help you recoved entire terminals and keep running scripts even if ssh crashes
Results:
Through our RealSense camera video feed, the rover operators were able to remotely control the rover with no communication loss during the competition.
In the future, we want to be able to send ROS commands over RF as well. Whether the Ubiquitis work or not almost seems to be a matter of blind luck, and many other CIRC teams had trouble with their Ubiquiti systems too, so it's good to have a backup system.
Comparison of Ubiquiti link strength inside competition arena (above) and outside on the field (below). The interference of many Ubiquiti links in the same room, likely all running at 2.4 GHz like our link, might have led to poor signal inside the arena. Link strength was similarly weak on Caltech campus despite the lack of other Ubiquitis...
Electrical block diagram I made for our safety report
Goal: Get rover to pass safety inspection (and also not blow up)
Method:
Made a checklist of the requirements on CIRC's website
Sized fuses by looking up current limits of each device on their datasheets
Slow blow fuses for motors so they could temporarily draw peak power
Used relays to "distribute" the kill switch across each battery
Bought covered busbars to safely distribute power
Had system reviewed and revised upon at design review and meeting with our advisors
Results: Rover passed inspection and didn't explode while driving
Did not end up using the other batteries/BMSes (not ready to run the full course at the time of competition, and we didn't have enough space as is)
In the future I would size the wire gauges ahead of time as well -- a team member pointed out that one of my power distribution wires was too thin and we had to put two wires in parallel to simulate a high gauge wire
Drive motors drew much less power than expected (5A peak each, and around 2A during normal operation)
Might be nice to resize motor fuses based on this information
Goal: Wire everything physically in a neat and safe way
Methods:
Motor connectors: searched up corresponding Molex connectors to the ones already on our drive motors
Zipper tubing to keep the hall sensor wires and motor winding wires for each motor together
BMS: Sensor wires crimped with JST crimp kit
Everything other free wire, crimped on ring terminals so they could go on busbars
Had mechanical team put holders in the holes of the chassis to prevent wires from being tugged too much from the outside
Results:
Most of the motor connectors failed (particularly the hall sensor Molex connectors that we had to hand crimp). Considering adding Molex terminal back-outs to prevent slippage, or buying pre-crimped connectors in the future
Whole system is generally very delicate and difficult to access electronics in the chassis box. May consider making the box larger to accomodate less dense packing of electronics
Showing off the length of our motor connectors. The wires have to be very long to connect from the wheels (where the motors are) to the chassis box interior.
warning: silly (parody of glow-up edits on Youtube)