2 ms·
It's pretty straightforward – building a robot is like building a complex bit of software, except you have to build the complex software and a whole robot too :
by matthewmacleod 8y ago
It's pretty straightforward – building a robot is like building a complex bit of software, except you have to build the complex software and a whole robot too :)
A robot platform can be a complex bit of hardware depending of the use case – it might be mobile, in an open/uncontrolled environment, using complex or expensive sensors, needs to be physically robust etc.
Now, many of those can be built from generic components – off-the-shelf controller boards, sensors etc. – but there's a lot of complexity in getting everything to reliably connect to and talk to everything else. Since there are far fewer robotics projects out there than software projects, there are also fewer of those "abstract components" in the first place – and physical requirements can mean it's harder to use them for particular designs.
Then there's the software layer. Again, depending on the use-case, this can be challenging - it can involve combining lots of sensor data, making decisions, planning motion, and so on. There are established algorithms and some reusable tools that can make this easier, but a lot of the magic is specific to individual projects. User interfaces can also be complex – building a reliable conversational UI is a project in itself, and if you're building a robot which interacts with humans, it needs to do this as well as all the robot stuff.
(FWIW I am working at a robotics startup right now, and every day is quite a challenge!)