Ask HN: How do I get into robotics?
Hi,
FYI: Second year maths degree, work in Python and SQL, entry level knowledge of C and CPP.
I was inspired by the fluid movement displayed in the litter picker sort of arm one of the Boston Dynamic robots has and I would like to learn how to go about creating such a robot as a side project (just the arm). I want to know what resources I should look at to get started? I have no real experience soldering, EE or working with sensors. So some entry level projects recommendations may be best?
Thank you.
14 comments
[ 2.9 ms ] story [ 44.3 ms ] threadA short overview of what FIRST robotics is: https://www.youtube.com/watch?v=Jd29kzjclV0
A web based tool to search for local teams: https://www.firstinspires.org/team-event-search#type=teams&s...
I've been volunteering as a FIRST mentor for the last nine years and have learned more about robotics from the students than I did in my master's program or on my own.
If anyone else has information pertaining to how to begin working on small projects that would be great. Even just a list from the top of your head of things to learn in some chronological order.
After some time, you can take a look at more serious projects, such as robot-spiders, or robots manipulators.
Might you also be interested in buying cheap 3D printer, to make the parts such as gears or cases for your hardware projects.
After you are quite comfortable with electronics and hardware, you can make your own 3D printed robot, such as CM6 - Compliant 3D printed robotic arm [1] or WE-R2.4 Six-Axis Robot Arm [2].
Happy building!
[1] https://hackaday.io/project/180588-cm6-compliant-3d-printed-... [2] https://www.thingiverse.com/thing:3327968
There are several different "compatible" arms which are good for learning.
https://www.ros.org/ https://github.com/ros
And as others have mentioned it wouldn't hurt to gain access to a 3d printer and possibly some other microcontroller kits.
Quite a few writeups out there if you do some searching around though.
I would recommend getting into arduino. It's fun to buy little components, build little circuits, and see how your ability to program can have a physical manifestation.
As for programming concepts -- yes kinematics and inverse kinematics will allow you to move robotic limbs to certain points in real space.
And you'll find yourself wanting a larger conceptual framework to put those technical bits. That's where things like finite state machines, hierarchical finite state machines, behavior trees, and/or goal oriented action planners may come in handy. This grouping of concepts is often called "ai programming" but whatever you decide to call it, they're algorithms to decide what to do at any given slice of time.
Obviously follow your own path in this subject; follow the bits that resonate with you.
Consumer/Commercial robotics. These are things like Roombas and Robomows. The dominate type of engineer in these companies is embedded systems and firmware engineer. You should probably switch to an electrical or computer engineering and get experience with some robotics program at your school which is smaller scale and works with microcontrollers and C/C++.
Advanced robotics. Things like Boston Dynamics. These companies also have embedded system engineers, but it is more important to have high-level controls experience. You should look for a CS or other degree which includes control theory, Digital Signal Processing, and so on. A lot of universities have robotics programs (think DARPA challenge) and teams, definitely join one of those.
Good luck!
For more hobbyist stuff, join the Lego FIRST competitions though note that the Mindstorms product line has been recently discontinued though Educators may still be able to obtain the Spike set. Look into open source ROS operating system
E.g. control engineers can also get into robotics and it's better not to havea more broad degree in my humble opinion
The general process he uses in his projects is worth emulating, as well as many of his design choices. He also provides 3d print files and code.
As far as a specific project that would be a good entry point, I reccommend making some variety of inverted pendulum which is actively balanced by a microcontroller. Every skill needed to achieve this is fundamental to succeeding and having fun in robotics.
[1] : https://www.duckietown.org