Instructed students in the Intro to Robotics class by explaining concepts and helped debug issues in robotic systems, formulated ways to better support the students with lab staff. Along with the development of tools and furthering the curriculum.
I worked as a site laborer responsible for preparing the site for incoming operations. Maintained and operated heavy machinery to perform various tasks efficiently. I also facilitated projects by managing material orders and coordinating installations, ensuring that all materials were on-site and ready for use, contributing to smooth execution of the project.
I worked as a General Home Improvement Laborer, contributing to many residential remodel projects. I assisted in various construction, renovation, and maintenance tasks, gaining valuable hands-on experience in carpentry, painting, and landscaping.
The project's goal was to program a robot to be placed in an unknown environment and explore the entirety of the map while running a version of online SLAM. Simultaneous Localization And Mapping The robot would identify frontiers to search and would continue to plan and follow paths to the frontiers until there were no more frontiers to explore. The robot visits the frontiers based on its proximity to the robot, the length of the frontier, the density of the frontiers, and the distance to the start. Using ROS Robot Operating System over the network the turtlebot was able to communicate with a laptop to handel all of the algorithms. One such algorithm was A Star to quickly find a path that prioritized paths further from the wall. It implements a pure pursuit controller to follow the paths, ensuring the robot follows a continuous trajectory. It finds the intersection of a radius around the robot with a path and moves towards the intersection point. The robot uses an online SLAM library and particle filter to predict the state of the environment and localize it by minimizing the lidar's re-projection error. The robot runs obstacle avoidance to ensure safety, especially since the pure pursuit controller has a tendency to round corners by nature. This prompts the robot to explore places further away first and loop back.
The project's goal was to sort objects based on their color. This was achieved by determining the objects locations, and its color using a camera. Then the arm would move using the known lens distortion and rigid body transform to determine the location of the objects in the workspace of the arm. The robot uses the joint angles to assess the transformation matrix from the base to the end effector. A spline is generated from the end effector to the ball, and inverse kinematics is used to determine the joint angles needed to follow the trajectory. Similarly, a trajectory is generated from the pickup location to the deposit area. The inverse kinematics were determined using the Newton-Raphson root-finding method, which uses the manipulator Jacobian to minimize the error in the desired location. The algorithm uses the current location of the end effector as an initial condition, allowing it to converge quickly. This method finds the optimal solution to minimize joint movements. A simulation was developed to run experimental code before running it on the arm, risking breaking the hardware. This project was created entirely in MATLAB and interfaced with the motors using the Dynamixel Motor drivers.
This project aimed to develop a swarm of robots that could explore a discrete maze environment by perceiving and navigating with a variety of sensors. The robots used the environment's grid nature to update the field's internal bitmap representation. The robots utilize Kalman filters to mix noisy sensor readings and process models to determine accurate state estimation. The robots utilize MQTT Message Queuing Telemetry Transport to communicate online and share map data using custom packets. A 32U4 mega board drives the central mobile platform to count and track the motor encoders and runs the navigation and control algorithms. The 32U4 mega board communicates with an Esp-32 via UART Universal Asynchronous Receiver Transmitter that handles the path planning and sensing. The robots are equipped with a short-range IR sensor for detecting obstacles, line trackers to follow the grid lines, an inertial measurement unit to determine the orientation of the robot, and an open MV camera to detect Apriltags that encode the data to open the door to the escape.
This project aimed to develop a mobile system for removing and replacing panels from structures at various heights and pitches. The design was first developed and verified in Solidworks, which was designed to accommodate different panel weights and positions. It could perceive its environment to ensure it was positioned to place it on the structure. It has range finders to detect distances to obstacles and dead reckoning to determine its position and orientation in its environment. The components were all designed to be fabricated on a 3D printer chosen for its ability to produce complex geometry, and control failure modes of the prints. Testing was performed to determine the power curve to find the optimal operating range of the motor, informing the gear ratio chosen to achieve a responsive design that can easily manipulate the plates.
Ove the course of the year we designed, built, and programmed these robots to compete at the VEX Robotics World Championship. They were designed, manufactured, and programmed to play the VEX robotics game Over Under. After an initial testing and development phase, during which we determined what subsystems would be helpful to the competition builds, we took each subsystem to CAD. We designed it there to ensure that the subsystems would package together nicely and would not interfere with one another. They were then manufactured using a variety of techniques, such as CNC milling, 3D printing, and laser cutting. These robots use an array of sensors to determine internal and exterior states, and this information is used to make informed decisions during their autonomy. In high school, I participated in the high school version of VEX, where I gained a passion for robotics.
I am currently pursuing a Bachelor's and a Master's degree concurrently in Robotics Engineering from Worcester Polytechnic Institute. I have had a passion for mechatronic devices since a young age, which has fueled my drive for success. I have channeled this energy into my coursework to help refine my ability to use my technical skills to develop quality designs and well-thought-out solutions to complex problems. I have developed strong CAD skills in SolidWorks, Inventor, and Fusion360 programs. I am proficient in various programming languages like C++, Python, MatLab, Java, and Go.
Through my work experience, volunteering, and competitive robotics, I have taken on leadership roles and developed project management skills. I enjoy working in a team environment to evaluate solutions to difficult problems. I am continuously looking to learn new things and ways to refine my skills.