Meet Sahil Kumar
Robotics Student @ New York University
New York City Metropolitan Area
Sahil Kumar holds a Bachelor's degree in Electronics and Communication Engineering and a Master’s degree in Mechatronics and Robotics Engineering.
He has also 4 provisional patents filed in India where he was born and raised.
His love for engineering comes from all the geniuses in our past that paved the way for science as they showed what science is truly capable of and thus he enjoys both software and hardware projects in Robotics and even embedded systems in general.
What inspired you to pursue a career in robotics?
Growing up I have been fascinated by technology and understanding how it works, how when you press K on your keyboard, a K appears on your screen.
Many people I think take this stuff for granted but it is actually very interesting the way the brilliant minds of this world made technology so complex yet clear (Once you get the gist of it of course).
Robotics is the next step for hardware in engineering and technology, but that is one of the secondary reasons for me wanting to pursue this field.
The primary reason for me is how one of the most complex robots is the human body itself, down to the smallest task done by it.
With so many robots being bio-inspired, I found it really interesting to see where this can go next. Plus, I can also be rather lazy so robots help with that too.
Explain with a brief example of the programming language used for sensors inside robots?
So, with robotics, like every other field, there can not be a world full of roboticists creating their own robots with their own separate set of coding languages, protocols, interfaces, etc.
Just like everything else, robotics also has developed a standard for it called ROS (Robot Operating System).
This actually helps create a ubiquitous interface that all roboticists in the world can follow to create whatever they want and simulate it as well.
It has its own sets of features, interfaces, libraries, etc. However, truth be told, I have not heard of a lot of people using it. During my job search as well, the more common need I have come across is C++.
So to someone who wants to be a Robotics Engineer, I would suggest learning both and focus more on C++.
Mention one challenge Robotics is facing for their use and development?
Speaking from an engineering point of view, I would say processing power is still a hindrance as many algorithms require the processing of large sets of data in an instant.
One example of such a thing would be the vision of level 5 self-driving cars which need an extremely high level of accuracy in image recognition and overall scene comprehension.
If you are expecting any robot to perform a major task that puts humans at risk, it needs to be more than capable of doing so.
Do you have any Robotics projects that want to share your experience?
To give an idea of how one can make their own robot, I think the robotic manipulator project that I did last year would be a good way to demonstrate it.
It essentially was a new design for a robot contrary to the regular KUKA and FANUC robots that are highly used.
Thanks to this design, this project dubbed the A.R.M.I.E could perform many operations in a simpler manner as can be seen in the video below.
However, constructing it took a lot more than what one may think when talking about such manipulators, you need to calculate things like Angle of each joint so that the end effector is in the right position, stability, fail-safes, workspace and image recognition to detect where the object is.
So I would say this project was challenging but just as satisfying once complete.
What do neural networks mean and how works?
Let’s say a person buys shoes based on color, brand, design, and function. We can develop a neural network that tells you exactly which shoes out of 1000 shoes, this person would buy.
This is done by first “training” the network, we give it data based on the above 4 criteria on 10000 shoes and ask it to guess which shoe the person liked, and which he did not.
We reward the network when it is right and punish it when it is wrong. Based on that, it adjusts “weights” for each of these factors to denote what is the person’s priority list out of these criteria. Eventually, if we trained it right, it would have outputted the final adjusted “weights”.
Now comes the “validation” phase where we no longer change these “weights” but make it guess the right answer again. This helps us see how well the network was trained. Once this is done with acceptable accuracy, we take it through the “testing” phase where we ourselves do not know the right answer.
This, of course, is a very basic example and stems into a gigantic field in itself, in a lot of cases we do not even know what we are looking for, but neural networks still flourish.
But, I hope this example makes sense in proving that this is essentially just taking from nature by using the same method that we as humans use all the time for doing things without realizing it.