Overview - olinrobotics/gravl GitHub Wiki

We have a tractor! We inherited it from an old SCOPE project from awhile back. Back then, the tractor's electronics were all National Instruments (NI)-specific components running LabView, which we replaced in favor of a more flexible ROS-compatible project. Our project objectives are rather flexible depending on the current educational interests of the team, but in general, GRAVL hopes to provide a robust vehicle platform equipped with a lot of sensors for its members to use to learn about a wide variety of topics from low-level controls to sensor-driven machine learning.

A brief explanation of our primary platform, Kubo (the big orange tractor in the space). Starting from the sensors, we have two GPS units, two lidars, an IMU, and a camera (hardware reference). These sensors send data directly to our on-board computer, the NUC (NUC reference), where all of the raw input is processed by ROS drivers and "published" as ROS messages (What is ROS?). From there, our high-level code "subscribes" to these messages and does high level computing stuff, eventually "publishing" high-level commands (such as drive at x velocity and turn at y rate).

From here, these commands get sent over to our Arduino Teensy (like your good ol' Arduino Uno, but on steroids) which then uses these commands to do some low level computing stuff to convert this to individual motor commands. It also takes in input from low-level sensors like encoders and potentiometers to know the current state of the system. These commands are passed to a motor controller (motor controller reference), which then transfers power from the batteries to the motors, which then moves things like the steering wheel or levers, which then makes the actual tractor move! And that's all there is to it!

So, where do you come in? There's probably work to be done and improvements to be made on basically all parts of the system - you could work on anything from writing high-level behavior code to building the mechanical interfaces between motors and tractor actuators - just let us know what you're interested in and we'll find a cool project for you to work on!