Welcome to my Robotics Portfolio!

My name is Max Rucker and I’m a student at the University of Michigan pursuing an MS in Robotics. As a dedicated Robotics, I am thrilled to present to you a showcase of my projects over the years.

Current Projects

Underwater Visual Localization Benchmarking

Field Robotics Group, Dec 2023 - Present

As a current undergraduate researcher in the Field Robotics Group, I have been doing independent research on state-of-the-art visual localization and mapping algorithms and applying them to underwater settings. One overlooked aspect of underwater autonomy is navigating extreme environments such as caves and sunken shipwrecks. With the limited sensors available to autonomous underwater vehicles, leveraging advancements in visual localization and mapping could provide new capabilities to underwater autonomous vehicles. This research acts as a base for uncovering new ideas on how to apply and enhance visual localization specifically for underwater autonomous vehicles.

HydroNeRF - NeRF SLAM for Underwater Scene Reconstruction

ROB 572 - Marine Robotics, Dec 2023 - Present

Currently, I am working on a project for my marine robotics course developing a Neural Radiance Field (NeRF) deep learning model to accurately map underwater scenes collected from an underwater autonomous vehicle. This NeRF algorithm is based off of NeRF-SLAM and SeaThruNeRF. NeRF-SLAM uses visual slam to improve rendering of NeRF scenes, and SeaThruNeRF helps account for attenuation and backscattering in underwater settings. This research hopes to easily create realistic underwater maps to aid in helping visualize underwater scenes that are explored by autonomous underwater vehicles.

Past Projects

MBot Simultaneous Localization and Mapping

ROB 330 - Localization and Mapping, Oct 2023 - Dec 2023

For this project, I created an autonomous robot to test state-of-the-art SLAM algorithms in a closed maze using lidar and camera feed. For this, I developed and integrated multiple algorithms such as motor controllers, particle filters, sensor and action models, odometry, occupancy grids, frontiers, and A* path planning for a cohesive program that would explore unknown territory until no more frontiers were left. Overall, this project required a strong knowledge of varying systems within the robot and correctly configuring them to work together. This required a Jetson Nano with ROS to connect different Python and C++ code for data communication across hardware. Throughout this project, I worked in a group of three and learned how to collaboratively code through GitHub and code management tools. Resulted in successfully being able to map a 10x10 ft sized maze and navigate it while keeping accurate localization and mapping within 5% error.

Autonomous Underwater Vehicle Simulation

ROB 498 - Autonomous Vehicles, Oct 2023 - Dec 2023

In this project, I worked with three graduate students to create a model simulation of the NPS AUV II from the Naval Postgraduate School. This project was driven by a desire to learn more about hydrodynamics and control models for underwater autonomous vehicles. In this project, we used Matlab to create the simulation and accurately model the AUV based on the hydrodynamic values provided by the research paper on the NPS AUV II. Along with this, we implemented our own PID controller to control the AUV and have it move to various waypoints given to it through the controller. Lastly, I expanded upon this project by creating a path-planning object avoidance algorithm for the AUV to maneuver around given objects in a simulated environment with the PID controller we implemented.

Self-Balancing Mobile Ball Robot

ROB 311 - How to Build and Make Robots, Oct 2023 - Dec 2023

In this project, I worked with another robotics major to create a self-balancing mobile ball robot completely from scratch. This required a lot of analysis of theoretical dynamics, planning for different sensors and motor selection, manufacturing parts from scratch, and programming the controller. This project required a breadth of knowledge of both hardware and software aspects of robotics. For our robot, we used Solidworks to 3D model each component to build our Ballbot. After manufacturing and assembling our Ballbot through 3D printing and laser cutting, we implemented control algorithms to control our Ballbot and do a series of tasks. This involved multiple PID controllers for both balancing and velocity control, as well as various saturation and other fine-tuning parameters for steady-state control of our robot. We also had to implement data communication from a Raspberry Pi for information processing and a pico board for motor control and sensor information. In the end, my team created a solid system that could balance for over 10 minutes on its own and could be controlled by a Bluetooth controller.