IMHO robotics is 90% mechanical and electronics. The programming part is minor. When someone tells you that you can learn the field by buying a third party device and programming it, they are either lying to you or to themselves. I'd put this one down to "well meaning academic".
Totally disagree. To a very large degree, the mechanics are a solved problem. Robots have all the mechanical capabilities they need to solve all sorts of useful problems. The challenge is figuring out how to control them to do anything useful. That's mostly software. Sensors too, and electronics to run the software. But it's mostly an algorithmic and coding challenge.
I do think the mechanical and electrical aspects of robotics (ie the mechatronics) are ignored or glazed over when teaching robotics, especially through simulation. One has a new appreciation for how wheels roll on carpet once they try to implement a control / path planning algorithm on a real robot in their living room! It would be valuable to gain these "appreciations" by learning robotics more intimately with real robots.
Agree, hands on is great and it's an awesome way to learn. Anything that gets hardware in to more hands is positive. However, limited programming of a third-party hardware platform is a far cry from learning "mobile robotics" in any intellectually honest sense, which was my original point. Useful indeed, but a small part of the overall equation.
The grandparent obviously has limited experience. Custom electromechanical systems, particularly mobile ones, are not like software. You can't spitball them together in five minutes for free, and you can't build more than a tiny percentage of things using ready-made parts if you care about weight/space/cost/repeatability/efficiency/etc. Particularly if you are planning to take them to market and want a defensible USP.
Not sure where this idea comes from. While certainly important, the biggest barriers to robots being more ubiquitous are in software not hardware. The hardware for self-driving cars, warehouse robots, etc. is not the reason they haven’t made much market penetration.
There are certainly mechanical and electrical challenges to building really reliable robotic systems with 98%+ uptime 24/7 in a logistics or manufacturing setting, but it's mostly applying good best practices and design for those engineering disciplines. Sensors and actuators can still be a challenge in some settings for sure. I think many of the really difficult (and fun) problems today are in the software. Even traditional automation shops used to basic PLC programming are starting to recruit and grow software engineering teams.
Robotics requires both and neglecting either one will give you bad results, if you even get results.
Issues in hardware can be solved in software to some degree and vice versa some things that can be hard to do in software can be solved with better hardware.
You can certainly get started on robot software when you have some ready-made hardware. You will not learn how to build your own robot from scratch by skipping that part, obviously. You will likely not make a successful robot business case with just buying hardware off the shelf without understanding it well.
The various self-driving car teams are all building their cars themselves, not now and not in the days of the DARPA Grand Challenge.
20th century mechanical engineering is a "solved problem". i.e. designing products to be manufactured with milling, bending, turning, welding, injection molding etc.
21th century mechanical engineering primarily involves novel manufacturing processes that massively increase design flexibility while making manufacturing extremely expensive.
Most people don't need the state of the art, they need affordability. Meanwhile semiconductors get cheaper every year. There is more opportunity on the software side.
You're also forgetting that it's a MOOC for ROS2, not "the field". If you've ever been at a college you notice that you don't learn "the field" in a single course.
Strongly disagree. Manufacturing is objectively getting cheaper, faster, and more flexible. There are high tech and high precision processes available at small scale on a wider range of materials for less money than there were 10, 20 or 30 years ago. This trend will continue.
Furthermore, if as you suggest the primary design goal of many products should be that of affordability, then you most certainly have to look deeply at the hardware, as software is not typically a contributor to unit costs (excepting weird licensing regimens).
ROS 2 is in this uncomfortable place that python3 was in for many years. It's clearly the future. Everybody wants to move to it. But too many of the useful libraries haven't been ported over yet, so people mostly stick with ROS1.
We might be getting close to a tipping point. I hope so. But it's probably still 1-4 years out.
It's unfortunate because there was no need at all for it to be such a painful transition. Even when you do have all the packages you need available in ROS 2 the experience is still notably more complex and less developer friendly. Just consider what it says that at ROSCon this year a 3rd-party library was highlighted that lets ROS 2 python nodes use the ROS 1 API, almost four years after the first official ROS 2 release.
17 comments
[ 5.1 ms ] story [ 49.7 ms ] thread[1] https://news.ycombinator.com/item?id=25323435
The grandparent obviously has limited experience. Custom electromechanical systems, particularly mobile ones, are not like software. You can't spitball them together in five minutes for free, and you can't build more than a tiny percentage of things using ready-made parts if you care about weight/space/cost/repeatability/efficiency/etc. Particularly if you are planning to take them to market and want a defensible USP.
You can certainly get started on robot software when you have some ready-made hardware. You will not learn how to build your own robot from scratch by skipping that part, obviously. You will likely not make a successful robot business case with just buying hardware off the shelf without understanding it well. The various self-driving car teams are all building their cars themselves, not now and not in the days of the DARPA Grand Challenge.
21th century mechanical engineering primarily involves novel manufacturing processes that massively increase design flexibility while making manufacturing extremely expensive.
Most people don't need the state of the art, they need affordability. Meanwhile semiconductors get cheaper every year. There is more opportunity on the software side.
You're also forgetting that it's a MOOC for ROS2, not "the field". If you've ever been at a college you notice that you don't learn "the field" in a single course.
Furthermore, if as you suggest the primary design goal of many products should be that of affordability, then you most certainly have to look deeply at the hardware, as software is not typically a contributor to unit costs (excepting weird licensing regimens).
We might be getting close to a tipping point. I hope so. But it's probably still 1-4 years out.