The entire progressive geek community is looking forward to the start of its main annual event, the Geek Picnic festival . Here you can see demonstrations of various technologies and devices, listen to speeches of developers, scientists and people who are simply not indifferent to IT-progress. A nice feature of the festival is that it takes place simultaneously in two cities - Moscow and St. Petersburg.
One of the invited guests of Geek Picnic was the company "Ruskiborg" , engaged in the development and creation of robotic devices. At the festival, they will show the opensource-project of the international community - a life-size humanoid robot, almost entirely printed on a 3D printer. A large part of its design ("body" and "legs") were developed by the staff of "Ruskiborg". Before the festival, we took a short interview with the developers and made a video, which those who can not attend the festival, can get an idea about this robot.
Everyone is looking forward to the start of the Picnic, to see your full-sized robot.What parts of his body were the hardest for you to design and manufacture? ')
In the development, on the technical side, the hands were most difficult, or rather the brush. Now many are trying to make good manipulators for robots that look like human hands, sometimes simplifying their capabilities. If you try to do well, it will be expensive both in manufacturing and in components. If you show a simple functional with imitation of capture and movement, then the option in this project is one of the most optimal. But it would be better, and we are working on it.
The second most difficult task is upright walking. So far, few have managed to make a good movement of the robot on its feet, and we are working in this direction.
When creating a robot, do you prefer to develop each element from scratch or rely on publicly available designs and ideas implemented in other robots, rethinking each node?
Of course, something can be peeped from other robots. True, we saw not so much live, and usually the mechanisms are hidden. Bypassing the rollers from the Internet and photos. I do not want to reinvent the wheel, but not so much information, and often have to think out for yourself. It is also worth considering that many different people participate in the project, so there are several variants of the robot. The project is international. We optimize and check the results, make a decision and create our own version if we don’t like the other.
What software tools do you use when creating a robot?How much do you think they facilitate the development process?
If we talk about the process of designing the parts of a robot, then this is Siemens NX. This is a program for 3D-modeling. We also use Solidworks and Rinhoceros. Ansys is used to calculate the strength of a structure on a computer, until the part is manufactured. When digitizing engines we use Artec 3D scanner and Geomagic Design X 2014 software. All these tools, of course, greatly facilitate the development process. But the first sketches are still done with a pencil.
Is the working up of the mechanical part being used first on three-dimensional virtual models, or is development work carried out exclusively in plastic?
While we are doing everything in plastic, metal structures are mainly auxiliary function. If you do in metal, it turns out to be a completely different project, and you need a completely different power electronics (engines) for it. Well, the budget. By the ratio of quality, opportunities for developing software and money spent on the project, this option turns out to be optimal.
Tell us more about what your robot can do, and what functionality do you plan to put into it in the near future?
The main task at the initial stage was to make the robot body - for the opportunity to write software for it. For software, it is: 1. manipulation with hands with light objects; 2. tracking the head of a moving object; 3. speech module. We are currently working on an avatar system to control the robot from a distance. This is a costume for the operator who allows you to broadcast the robot human movement. We also plan to create group telemetry with gyroscopes to determine the position of the robot in space. This will give us the opportunity to start learning the robot walking. Well, improving the program code in the framework of what has already been implemented.
Do you develop motion algorithms yourself or adapt existing ones?What are the peculiarities of the algorithms you use, what advantages and disadvantages do you see in them?
We develop, or rather, write, ourselves. Find this in the public domain is almost impossible. Among the shortcomings: our algorithms are tied to a specific design, engines and sensors. It is difficult to say about the benefits, they should be evaluated by others.
How is the object tracking function implemented, on which principle (algorithms) is it built?How did you solve the problem of recognition and selection of objects?What computational power is required to keep track of the tracking function?
At the core of the system is the open library opencv. We added something ourselves, but there are a lot of articles on the Internet, we have not yet set ourselves the task of placing a great emphasis on this. We have a team member who completes the cloud data processing solution and uses various algorithms - for example, RANSAC. To work the system you need a good computer with a powerful processor. Otherwise, it all depends on the complexity of the task and the quality of the camera.
What exactly is used as a robot computing module?Is this module one or several, responsible for different functions?Are these some typical solutions or custom systems you have assembled?
The current version of the robot works in conjunction with a laptop. For the demonstration, we use the operator mode, where the operator himself controls the individual nodes of the robot through a program or runs a script that performs certain actions. If we talk about autonomy and independent decision making by a robot, then we must work harder in the direction of neural networks. At this time, no. We are still focusing on the design part of the robot. And for engine management we use Arduino boards.
Do you draw inspiration or ideas from fantastic literature or pop culture?If yes, where exactly?
Yes, we like science fiction. Some of the images in the films will see something inspire in literary works. Yes, they themselves, in fact, are romantics, we even work in the space center, we have to do with the Proton and Angara rockets.
Do you already have plans for the future, do you think through the design (or several) of the next robot?
We already have a small reserve for the robot, which will be all-metal, and also human-shaped. We want to teach him to walk - this is a difficult task, and we like it. Also in parallel and slowly we make for future exhibitions small characters from cartoons and movies. With regard to programming, will be used developments from our first robot. After all, the main problem for robotics programmers is that they have nothing to work with. And what is now on sale, is a toy inappropriate format and form factor. At the very beginning, we had the idea to make a robot design accessible for independent manufacturing, into which each programmer could “breathe life” through the program code.