Robotic Systems Engineer
_Best viewed in Desktop_ santhanaraman.ranjit@rwth-aachen.de
Ranjit Roshan, Noufal and Vigneshwar, “Resilience Optimization of Octocopter Drone using two stage thrusters and thrust vector locking” Proceedings of IEEE GCAT 2019 Banglore,India, Oct. 18-20, 2019.
Octocopters use fault handling programs to stabilize and land safely in case of a motor failure. This paper is about ,how the motors can be optimally placed and thrust vectoring can be used, to stabilize and resume normal operation in case of motor failure or propeller breakage. The full paper will soon be published in IEEE Xplore magazine.
Student Project Grant - International Academy RWTH Aachen
Received project grant for development of a drone image based solar panel dust estimation system. This project was a continuation of a previous project involving the development of deep neural network model for the same. Refer here for more info ().
As a part of this project, initially drone image data was collected at 2 solar power generation units in Tamil Nadu (Crescent Institute of Science and Technology and at a 15 MW solar power plant in Thenkasi.
Further processing is to be made to make the dataset ready for re-training the machine learning model.
ESE Hackathon - Runner up
Achieved runner up position for the development of a railway level crossing system using Python. The task was to develop code in Python and test it under multiple test conditions.
Data was collected from multiple magentic contact sensors on the track and level crossing gates gates and the algorithm was developed to understand the train’s heading direction and indications were made using LED’s to the train to stop or proceed.
Research project - Development of modular sensor fusion platform for environment perception read more
Research project - Processing of Dynamic Object Information in MPC Planner read more
Retractable arm induced dynamically stable quadrotors read more
Drone development for a national level robotics competition read more
H-I-X Quadcopter frame design fabrication and flight read more
Python API to automate belt drive design read more
Data logging API for Drone test rig read more
Micro quadcopter frame design and fabrication read more
Robotic Arm design and circuit fabrication read more
Bicopter controller circuit design read more
Quadcopter control system programming using Arduino read more
IMU Visualization using VPython read more
Back to Project List Dec 2022
Abstract
In the development of autonomous driving functions, the perception of the environment is one of the elementary and crucial building blocks. This perception part of the driving stack must be modular and decoupled in order to enable easy transmission to other vehicle functions and possibly to other vehicles to enable mutually coordinated navigation. Present environment perception systems are highly vehicle specific and are expensive. For research purposes more generic and cost minimal solutions are needed which should include different types of environment perception sensors such as camera, LIDAR etc. Apart from hardware, flexible software framework is required to run the various
available perception algorithms such as object detection, semantic and instance segmentation. The software framework should be agile and capable of running on the variety of edge computing devices available in real time.
This project work involves the creation of such an optimized hardware and software system for running environment perception on the the edge. Simple, reliable and cost effective camera and LIDAR system will be used to scan the environment. The software framework will be built using C++ and compiled using the CMake build system making the entire framework platform independent and enabling cross compilation possible on different edge computing architectures. Nvidia Xavier platform will be used as the edge computing unit for running the various environment perception algorithms. The environment perception algorithms are pre-trained deep neural network architectures designed for specific tasks such as obstacle detection, traffic signal detection, road lane detection,. etc .
(The image belongs to the research project done at IRT RWTH Aachen)
These networks will be optimized using the TensorRT optimization framework for efficient deployment and real time inference on the edge device.
The end output of the software programming part will be a library which can be included and used to implement various types of environment perception models in an optimized fashion on the edge. Thus this environment perception setup can be attached to any mobile robotic system thereby making safe and autonomous navigation and guidance possible.
Back to Project List July 2022
Researched on existing methods such as Time to collision, parallex angle, velocity and acceleraiton based methods for obstable information processing in Model Predictive Controller inside an Autonomous vehicle and experimented and compared them for obstacle avoidance by programming the methods as cost functions for the planner.
Worked extensively with the ct C++ control systems library and ROS2 for the implmentation of the cost functions.
Back to Project List Feb 2019
Overview:
To implement a drone with variable arm characteristics with the intention to increase the number of available controllable outputs a drones can have.
Drone Development:
As I was studying about the dynamics of drones, I understood that the yaw motion is the consequence of variation in the speed of the diagonal motors but I didn’t understand what exactly induced it.
Gyroscopic approach: My first approach was with the gyroscopic effect. Gyroscopic principles state that “when the axis of a rotating body is tilted along another perpendicular axis, then there is a resultant twist about the axis perpendicular to the plane of the other two axis”. I removed the propellers and with the rotors spinning, I varied the diagonal motors and felt a twist along the yaw axis, but the magnitute seemed too feebile to produced when hovering.
Drag approach: Then I took a long journey across the internet and library to find a solution. I narrowed down to the effect of propeller drag and Eureka! I found it. As the propellers rotate, there is a production of workable thrust only when the thrust line crosses the drag point of a thrust-drag-rpm plot. This drag like the back-emf is present all the time and as the propeller spins, there is a production of torque about the center of rotation with respect to the center of the drone.
Assume that the propeller is spinning in an arm of the drone and the propeller at this instantaneous point of time is aligned with the drone arm (paraller to it). The drag exists on both the prop sections (here we are assuming a two bladed propeller) and since one section is present at a longer distance from the center of the drone the torque is more (Torque = force x perpendicular distance). When the motor spin clockwise the drag is counter-clockwise and this causes the drone to yaw CCW (counterclockwise) when the CW motors are spun faster.
Back to Project List June 2019
Overview:
The challenge was to design a frame based on given constraints such as max gross weight of 2 kg and max possible dimensions as 75x75x75 cm.
Drone Development:
Back to Project List Dec 2017
Overview:
The common basic geometries of quadcopter frames are H, I and X type each with its own advantage during flight. This project is to design a frame by combining all the geometries.
Features:
Back to Project List Nov 2018
Overview :
This Project involves, the creation of an application to automate the design process of a flat-belt drive system.
Manual Process Disadvantages:
The manual design calculation is a tiresome process, involving many substitutions in pre-derived formulae. In case of design failure during stress testing, the design process has to be repeated again from the beginning. This is not only a tiresome process but also an inefficient one.
The Automated Process
View repository on Github
Python API Screen:
Output in PDF Format:
Back to Project List Feb 2019
Overview
In order to understand and tune the drone features like battery life, PID values, throttle curve etc there is the need for data logging. This API provides the tool to record data and is based on Pyserial and Arduino library.
Features
View repository on Github
API Interface:
Data and Meta files:
Back to Project List Nov 2017
Overview:
A microquad is a frame which is in the category of 250g and below. This project is aimed at designing a 3D printable frame
Process:
The frame is modelled considering that the thrust is provided by 8mm coreless motor and 60mm propellers. A IRF540 voltage controlled current mosfet is used to vary the speed of the motors.
Back to Project List April 2018
Overview:
Robotic arm are of various types and this is an articualated type which mimic’s a human arm.
The Design Process:
Tips:
* Account for 3D printing parameters like wall thickness and warping especially for ABS materials. Design curves considering the extruder diameter to get better shape accuracy and think about the axis of printing for better strength.
* During any mechanical design, especially cases where movements are default, consider dynamic forces on the body.
* Test the actuators with loads prior to designing to get better focus on what is achievable in reality.
Back to Project List Nov 2019
The Bicopter:
The bicopter is a drone with four actuators and unlike a quadcopter the lifting thrust is provided by two and the other two actuators do
the work of tilting the thruster axis to control roll and yaw motion.
The Problem
Since aluminium is the primiary material we work with, due to material availability, machining and cost effectiveness the circuits often tend to shortcircuit when testing and during crashes. In order to do quick testing one cannot keep insulating and removing the insulation all the time to change and tune PID values.
The Solution:
Hence I designed this circuit with an external relay circuit which once activated by a switch is powered by the controller itself. This can be used as a worst case kill switch but that’s the most worst case.
Back to Project List Dec 2019
Overview:
Implementation of a PID controller using an Arduino to control a quadcopter.
Process:
Back to Project List Dec 2019
Github
Overview
Real time visualization of a IMU using VPython and Arduino
Implementation