Table of contents
May 2024 - July 2025
Master's Thesis— Prof. Ravi N. Banavar (IIT B), Prof. Domenico Campolo (NTU Singapore)
This work is a continuation of the work I did while I visited Robotics Research Centre at Nanyang Technological University, Singapore as a Summer Research Student from May to July 2024.
Abstract:
The non-commutative nature of 3D rotations poses well-known challenges in generalizing planar problems to three-dimensional ones, even more so in contact-rich tasks where haptic information (i.e., forces/torques) is involved. In this sense, not all learning-based algorithms that are currently available generalize to 3D orientation estimation. Non-linear filters defined on SO(3) are widely used with inertial measurement sensors; however, none of them have been used with haptic measurements. This paper presents a unique complementary filtering framework that interprets the geometric shape of objects in the form of superquadrics, exploits the symmetry of SO(3), and uses force and vision sensors as measurements to provide an estimate of orientation. The framework’s robustness and almost global stability are substantiated by a set of experiments on a dual-arm robotic setup.
January 2024 - April 2024
This project was part of 3 courses-
Advanced Process Control, Prof. Mani Bhushan,
Control of Nonlinear Dynamical Systems, Prof. Srikant Sukumar,
Linear Systems Theory, Prof. Vivek Sangwan, during my master's at IIT Bombay.
Course: Advanced Process Control, Prof. Mani Bhushan
Modeled the 2-DOF robotic arm as a non-linear dynamical system.
Performed open loop simulation to determine characteristics of the system such as settling time, etc.
Obtained discrete-time linear perturbation model, implemented Model Predictive, Linear Quadratic Optimal & Pole Placement controllers, and compared performance for regulatory & servo problems in MATLAB.
Course: Control of Nonlinear Dynamical Systems, Prof. Srikant Sukumar
Designed & simulated a (i) backstepping and (ii) passivity-based torque control law for the manipulator to track reference constant using MATLAB.
Course: Linear Systems Theory, Prof. Vivek Sangwan
Surveyed the use case of Singular Value Decomposition (SVD) to determine the singularities of a manipulator.
June 2023 - May 2024
In this project, a UR-5 robotic arm and a mobile robot collaborate to sort and prepare packages autonomously for shipment from a life-size warehouse at IIT. I worked on-
Building the hardware of the entire system, including the upgradation of the mobile rover's embedded computing device from NVIDIA Jetson TX2 to NVIDIA AGX Xavier and then finally to Intel NUC, and porting and creating hardware codes for ROS2.
Creating software packages for remote operation of the entire system using ROS2.
Developing safety scripts for safe operations of the robots especially when controlled remotely.
Localization of the mobile rover using Simultaneous Localization and Mapping (SLAM) toolbox in ROS2.
Developing the simulation environment on Gazebo and optimizing it for better performance on low-end laptops.
146 students learned to create autonomous algorithms with 30.8 hours of average access to hardware.
1,312 students were trained using this system on remote hardware and simulator as part of the e-Yantra Robotics Competition. This work recently got accepted at the 16th International Conference on Social Robotics, Odense, Denmark with me as the lead author.
May 2022 - June 2023
In this project, a UR-5 robotic arm mounted on a mobile robot work together to identify and pluck bell peppers autonomously from a life-size greenhouse at IIT. I worked on-
Creating a full software stack for controlling the robots remotely using a peer-to-peer VPN.
Improving, maintaining, and updating the hardware of the mobile rover, including debugging and solving issues related to the power supply for the NVIDIA Jetson TX2 board, the addition of a heat management system, especially for the high temperatures (~122°F) inside the greenhouse, etc.
Developing safety scripts for safe operations of the robots especially when controlled remotely.
Creating software packages for remote operation of the entire system using ROS.
Developing the simulation environment on Gazebo and optimizing it for better performance on low-end laptops.
70 students learned to create autonomous algorithms with 19.4 hours of average access to hardware.
1,433 students were trained using this system on remote hardware and simulator as part of the e-Yantra Robotics Competition. This work recently got accepted at the 16th International Conference on Social Robotics, Odense, Denmark, with me as the lead author.
Aug 2021 - Mar 2022
In this project, an autonomous holonomic mobile rover traverses an arena to harvest berries in a CoppeliaSim simulator. I worked on-
Arena and holonomic rover design in CoppeliaSim.
Formulating tasks, learning resources, and developing auto-evaluation methodology using CoppeliaSim APIs and Python executables.
Creating an online leaderboard that auto evaluated each run of a team in real-time and pushed their score to a connected Google sheet.
998 students were trained using this method as part of the e-Yantra Robotics Competition.
August 2017 - March 2018
Created a fully autonomous fruit harvester using the Fire Bird V ATMEGA2560 robotic research platform and Raspberry Pi.
This project was ranked 3rd in the National Level e-Yantra Robotics Competition 2017-18 held at the Indian Institute of Technology Bombay, India.
After several rounds of interviews, I was selected for a Summer Research Internship at Embedded-Real Time Systems Lab (ERTS) at IIT Bombay. This internship was awarded to ~35 students out of 23,728 participants in the competition.
March 2024
This project was part of a course on Motion Planning & Coordination of Autonomous Vehicles by Prof. Arpita Sinha during my master's at IIT Bombay.
In this project, a ROS-based differential drive robot had to avoid static and dynamic obstacles to reach a goal point. Artificial potential functions were created to solve this problem. I worked on-
Modeling and generating potential fields for the goal and obstacles in the range of LIDAR.
Developing dynamic obstacle avoidance algorithm on TurtleBot3 in simulation and hardware using ROS and Python.
July 2023 - November 2023
This project was part of a course on Embedded Control and Robotics by Prof. Leena Vachhani, during my master's at IIT Bombay.
Learned probabilistic pose estimation of differential drive robots through motion models and measurement models.
Implemented Lyapunov analysis-based non-linear feedback control design for full state stabilization of TurtleBot3 using ROS. The paper can be found here.
May 2018 - March 2019
In this project, a nano drone is localized using a single monocular camera mounted on the ceiling. A WhyCon marker is added on top of the drone. Once localized, the arena is emulated in V-REP simulator to plan paths using OMPL. ROS is used to integrate the drone commands with the V-REP simulator. With a localization error of 3.1cm and a setup cost of 50 USD, this approach is ideal for environments where cost is a significant concern. I worked on-
Developing an Iterative Feedback Auto-tuning algorithm for the PID controllers using ROS.
Emulating the real-world arena in the V-REP simulator, including finding transformation for both the coordinate frames.
Finding paths using OMPL and commanding the drone even when feedback from the WhyCon was temporarily unavailable.
This project was part of my summer internship at IIT Bombay and the e-Yantra Robotics Competition in 2018. Along with other applications developed using this platform, we have submitted a paper to Cyber-Physical Systems Journal and is currently Under Review.
October 2023 - November 2023
This project was part of a course on Foundations of Intelligent and Learning Agents by Prof. Shivaram Kalyanakrishnan during my master's at IIT Bombay.
I created an agent that is able to perform optimally in the game of billiards.
A billiards simulator was given to help identify the outcome for a given cue force and angle. However, this simulator didn't have any noise in contrast with the actual test cases.
The goal was to build an agent that potted all the balls in a given set of tries. With each increase in level, the number of balls to pot increased while the number of tries decreased. Official assignment page.
Aug 2020 - Mar 2021
The theme is set in an industrial manufacturing ball-balancing platform. A maze is attached on top of it. A conveyor belt keeps dropping balls at regular intervals on the ball-balancing platform. The goal is to make the balls traverse through the maze on defined paths within a stipulated amount of time in order to determine the quality of the platform manufactured. I worked on-
Developing, designing, and optimizing ball balancing platform
Arena design in CoppeliaSim
Developing auto-evaluation methodology using CoppeliaSim APIs, Lua, and Python executables
Formulating tasks and learning resources
1,876 students were trained using this method as part of the e-Yantra Robotics Competition. We presented our findings at the International Conference on Advanced Learning Technologies (ICALT), 2022.
Bachelor's Project: December 2018 - May 2020
This project received a research grant from the University of Mumbai and the 1st rank in the final-year project competition organized by my college. Project contributions-
Designed, simulated, and built 2 prototypes, including their mechanical & electronic components for automatic drying of foldable umbrellas in under 120 seconds.
Generated flow simulations to minimize heat loss, created a custom gearbox using bevel gears and implemented a crank-shaft mechanism, including automatic clamping.
Developed the algorithm in Embedded C language using Texas Instrument’s MSP432 microcontroller.
This project also secured the top 5% in the semi-finals stage out of 18,000 teams in the India Innovation Challenge Design Contest organized by Texas Instruments, NSRCEL Indian Institute of Management Banglore, and the Government of India.
August 2018 - January 2019
This project received the 1st rank in the pre-final year project competition organized by my college. Project contributions-
Created a plotter system that bypassed the use of G & M codes and, hence, the computer that is generally used.
This resulted in a sharp decline in the setup cost and footprint, paving the way for applications where plotters couldn’t be used before.
This algorithm for controlling stepper motors occupied less than 11kB of flash memory, allowing the replacement of the computer with cheap microcontrollers.
I presented our findings at an IEEE International Conference in Kurukshetra, India, in 2020. A patent was also filed for this project at the Indian Patent Office.
October 2024 - November 2024
This project was part of a course on Analytical and Geometric Dynamics by Prof. Sukumar Srikant during my master's at IIT Bombay.
In this project, I used Simscape to model a flexible quadruped.
Different colors represent different links. Link red-green has a torsional spring in between. Link red-pink and green-pink have a revolute joint. Links pink-black have a linear spring. Links yellow-blue represent revolute joints in between. Black links are broader for stability.
Contact forces are simulated by exporting the geometry of the legs and the ground. Parameters, including friction, are shown in the table above.
The front motors (revolute joints) are provided with a sinusoidal input, while the back ones are provided the same input with an offset such that these inputs are out of phase.
2018 and 2019
Description of the robots-
The Messenger Robot 1 is made using mild steel, which accommodates four planetary DC motors of 1000 rpm, which are attached to Mecanum wheels and coupled with the motors using shaft couplers.
At the start of the game, the gerege is held by a gripper controlled by a servo motor mounted at a certain height from the chassis.
As soon MR1 reaches MR2, the gripper of the MR2 will grab the gerege while MR1 releases it. The grabbing mechanism consists of a rack and pinion arrangement mounted on a slider.
The mechanism for picking up (loading) Shagai includes the Stepper motor and the aluminum rods.
Once loaded, the Shagai can be thrown using the Catapult mechanism shown.
I led the team to develop both of these robots. I was involved in the electronic and mechanical design of the entire system.