The robotics revolution is about to happen as we are all expecting. But how will it take place, and what will change in our lives?
Open-source is the only way
Like everything else in life, the development will be gradual so that it won’t happen overnight. It is essential for the giant companies to get involved in the robotics development. Still, I don’t think that it will be them who will take the initiative, it will be crowdfunded open-source communities, because there won’t be big wins for early starting commercial organizations.
Robotics is in its infancy at the moment; investing in it is still commercially not viable. A company’s primary focus is profit. Robotics will not be a compelling investment for a company, considering the end product will be a robot that can not do much other than specific tasks. A reasonable CEO, understandably, will not be interested in such a project. They will only be interested after seeing some real-life achievements and when they can foresee the profit.
The problem of robotics is the fundamental complexity of it. A team of engineers should cover the disciplines
- Microprocessor programming: C, C++, Arduino IDE
- Artificial intelligence: Tensorflow, Python, OpenCV
- Simulation: The robot should simulate it’s movements before it does in the real world.
- CAD Design: Designing the parts, converting them to 3D printable STL files.
- Electrics: Batteries, voltage converting, cabling.
- Electronics: Motor drivers, servos, raspberry pi, Arduino, all sorts of sensors, and IMU knowledge.
- Edge products: ASICs like google coral.
- Mechanics: Moving parts, legs, arms.
- Production: 3D printing, experience on several tools to put things together.
Building a team with the expertise of all the disciplines would cost a small fortune. That is why the only way to create a robot is to start an opensource project. Also, even though there will be a massive demand for robotics, they will be very customized requests which can not be handled by a single type robot. Since companies do narrow their product areas, it still won’t be viable for them to mass-produce a particular type of robot.
So, how to start it, and what should the end product look like?
The modular framework - Core and modules
First of all, the project must start with a small team focusing on building a “framework” and a “platform.” The framework should offer a simple, functionally expandible box containing main functionalities that every robot needs, such as enough processing power, a battery, an AI edge product for object recognition, a camera, a motor driver, proximity, temperature, IMU, pressure sensors, etc. The box should have proper ports to connect various devices/modules such as motors to turn wheels, servos to actuate the arms and the legs. The extensibility of functionality is essential. Every project will have different requirements, and a simple box can not provide every single function. One project may need legs to make the robot walk, whereas another one will need propellers to fly.
The modules must be easily implemented and discharged with ease as well. There will be enormous benefits of this structure for building various projects.
Secondly, once a module is completed (like a robotic arm), developers should share their work and contribute to the community so everyone can benefit from the collective work.
The platform to contribute and share
A platform is necessary for the builders to download other modules and also contribute their modules. Like any other open-source platform, there will be certain QAs to complete while a module application keeps the community safe and tidy.
Extending the functionality - A simple dashboard
The modules should be easily downloadable via the robot dashboard, and the system automatically installs necessary software when a library is chosen. A good example would be to add wheels to the core. Once the hardware is installed, the end-user should simply visit the robot dashboard via their phones/computers and install the necessary libraries without having to deal with the software from a simple UI. Having an interface will extensively help developers focus on their tasks rather than spend hours, even days completing simple tasks.
The Robotics Agency
The cost of a simple robot will be around 300 - 1000 USD, depending on its extensions. After it becomes affordable, people will consider building their robots for tasks that can be automated. Imagine a farmer trying to catalog the insect species in their farm, a simple robot with object recognition capabilities can be implemented on the land, programmed simply to visit a “square” in every t minutes, stand by to take pictures for a given n minutes, activate the camera when there is movement in front of it, take photos of the action, search for an insect in it, recognize it with it’s trained library, catalog it and move to the next square. Even though this will be a simple task for a robotics expert to handle, it will still be too complicated for a non-developer who is unfamiliar with the framework. That is why people will choose to hire experts instead of trying to build one by themselves. Hiring people for specific tasks will be the beginning of the robotics agencies. Just like hiring someone to build their websites, they will do the same for the robotics.
I highly recommend all the young developers to start learning about robotics. They will witness people will be asking for simple task robots from the freelancers, and those freelancers will start their own business to catch up with the demand. I believe those companies will be the biggest ones in the future.
Lessons learned from the history of web development
At the beginning of the century, the web development business was booming. Developers have started to learn about this highly profitable new business and taught themselves since there were not many resources around, nor institutions to help them. This caused developers to code every single site from scratch each time. After a while, they have started to build their frameworks. In the year 2003, nearly all developers have had their frameworks. It was horrifying. Once the developer lost interest or stopped working on the project, the new developer had to understand this (most of the time hideous) framework first and then comply with the requests of the client after. This mechanism’s efficiency was horrible and, most of the time, catastrophic because the same websites were coded repeatedly without any good reason.
Luckily people gathered around particular frameworks and started to share their works with others. Being familiar with the framework saved considerable time and made it possible for developers to focus on the actual job rather than wasting time to build simple tasks like user log in, sessions, permissions, roles and other basic functionalities.
I believe the robotics business will revolve around the same idea, and specific frameworks will rise.
Mass production vs. customized products
Even though the core boxes and certain modules can be mass-produced, since each request will be unique (just like a website), it won’t make sense to mass produce the parts. It will also be a speedy evolution on the parts. Mass-produced parts will not be compatible with the new parts, so building a billion plastic parts will not be viable since they will be obsolete in a couple of moths. This is where 3D printers get up on stage. There will be a custom solution for every custom need that can only be manufactured by a 3D printer.
Having an extendable structure will make it very easy for students to learn about the basics of robotics. I imagine every stem lab will have a few cores with several modules; students will be able to test by themselves and achieve certain functionality quickly.
For the undergrad and grad students, it will be another story. They will use the core to focus on their assignment so they won’t lose time to build basic functionalities. For example, a CS student will not have to deal with the hardware and focus only on their AI training application.
Possible use cases and examples
- Search and rescue
- Farming: Instead of using pesticides, small robots can search and destroy unwanted plants on the land.
- Forestation: A swarm of robots will handle this automated job much better than any human.
- Environmental management: A swarm of robots around the world would be programmed to help cleaning the oceans, forests, and cities.
- Security: Both for households and commercial usages, this will be a powerful way of monitoring specific areas. Imagine leaving a security robot at your home when you are on holiday, and it can monitor your whole house and notify you when there is movement.
- Industrial: The amount of jobs waiting to be automated is highly significant, simple small robots can be handy for repeating tasks.
Where to begin with?
I have been working on a modular opensource project for around four years now. I have finished most of the work and will start a crowdfunding project very soon. The hardware is almost finished. We are also working on the platform and the dashboard at the same time. Stay tuned.
It will be a fascinating ten years to watch it happen and be a part of it. Getting involved in robotics is essential. Coding will not be as valuable as it is today since coding is becoming a part of everyday life. If you have just started your career as a tech person, I would recommend getting involved in the robotics and even encouraging you to start your own business in the field. It will take some time for both you and the sector to evolve, but eventually, it will be gratifying.