📜 ⬆️ ⬇️

Project change in the educational center "Sirius"

The first project shift in the educational center "Sirius" is coming to an end. Usually, educational changes are held here, in which schoolchildren prepare for all-Russian and world-level olympiads. For example, a team of mathematicians before the World Olympiad was held in the "Sirius". In the future, it is intended to make this place one of the main centers of attraction for talented young people for further integration into high-tech projects that are in the special account of the state.

The ITMO University team , in addition to extensive participation in projects related to nanotechnology, worked with students of schools on several robotic projects. Our group consisted of 19 students and 3 teachers. In advance, we identified the main technologies and design features that will be implemented during the project. Some projects are focused on the automation of certain processes, and some have more creative visual component. As a basis for creating robots, it was decided to use the TRIK robotic designer. There have already been published examples of the use of this constructor.



From the very beginning, we tried to divide students into programming and design skills groups. For the organization of work, we used the Trello project management system. Since the work on the projects was given two and a half weeks, the rest was spent on entertainment and organizational events, and there were a limited number of tasks, Trello completely satisfied us. Every three days we gathered with the guys and defined tasks for a new sprint. It cannot be said that this was done according to all the canons of development in serious companies, but we managed to acquaint the children with the basics of project management. Next, go directly to the project.
')
The first project is related to the interaction of human and robot “human-robot interaction”, both in terms of the design of pleasant appearance of the robot, and in terms of communication with the person and retention of attention. First, the guys figured out using speech recognition technology. For this purpose, Yandex SpeechKit was used , which allows, via http, to receive the response of the recognized text in response, in descending order of the probability of correct recognition. On the TRIK controller itself, there is a unix system, and the developers have provided the system with the ability to convert text to speech. For this, the system has an eSpeak speech synthesizer that voices the desired text.
The main program was implemented on Qt Script in the TRIK Studio system supported by the designers of the designer, and the part with the transfer of the audio file to the Yandex servers is implemented via the bash script. Accordingly, it is necessary to transfer information from the linux workspace to the memory area of ​​the Qt Script program, this was done through an additional file. In general, the robot can record your speech, send a file for recognition and pronounce phrases that are written in the general database of requests and responses, or perform certain actions.

Next was the task to program the movements of the robot. The robot turns his eyes toward the interlocutor, attracting his attention. By voice command, the robot can grab items with the help of a manipulator. The robot has two controllers on board: the first controls the movement of the wheels, removes information from microphones and sensors; the second transmits the video from the camera, controls the manipulator and eye movement, lights the LED strip while the text is being spoken. There are many tasks to synchronize the work of programs on different controllers, while all parts of the project are connected to each other via TCP / IP. For example, on one block, the pronunciation of the text should be accompanied by animation of the mouth, and on the other the LED tape should turn on.

The technical vision of the robot is placed on a separate computer, where OpenCV is used for this. First, the image is binarized, the gradient is further defined, the nested contours are removed, the objects are selected according to their geometric dimensions and area. This allows you to determine the position of objects on the table, send a robot to them and grab them with a manipulator. All of the tasks described are solved on various devices, the guys were faced with network interaction and successfully coped with this task. The presentation of the project can be viewed at the link .



The second project is a robot, erasing from the board. In this project, we have a marker board and a two-wheeled robot that can move along it. The first robot drives up and stands in front of the board. A camera is located on it, the image from which is transmitted via TRIK to a computer, where the image processing and determination of the location of the robot and its target takes place. On the robot are orange and yellow marks to determine the location of the robot. First, we select all the yellow and orange pixels in the image, after which we determine the largest solid areas of these colors and find their centers, which can be used to determine the coordinates and rotation angle of the robot. Next we find the Laplacian image and leave only the red and red areas that need to be cleaned. Running through the whole image again, we find the point nearest the robot, which becomes the target.

Only the distance and angle between the course of the robot and the direction to the target are sent to the robot erasing the board. From these values, the control actions for the engines are calculated, and the robot moves to the target.



This project also includes a robot polisher. When receiving a message from the first robot, it moves forward a predetermined distance and moves in a given area, rotating the cleaning element under itself. At the end of time, the robot begins to turn around its axis and look for the orange mark. After being found, it begins to move in the direction of the mark, until it occupies a significant area in the image from the camera. In this case, image processing is performed entirely on the robot, it only receives a command to start. The presentation of the project can be viewed at the link , and more video work .



The third project relates to the automation of parking space. The goal was to create a prototype of an automated public parking at the business center. Two four-wheel drive vehicles were assembled, the building was constructed, and the parking spaces themselves were labeled (black circles). The parking system consisted of a controller, a webcam connected to it, and a barrier.

The controller has a DSP core designed for processing audio and video on board, but since the project participants did not have programming experience of the controllers, it was decided to simply transmit the video, and process the state on the parking lot on a computer.

To determine the free parking spaces, the image was binarized, the contours were selected and unnecessary elements were discarded along the radius of the circle. The last stage was clustering with numbering.

As a result, the working system looked as follows:
the car drives up to the barrier, sends a request to the server, which, in turn, returns the number of the nearest free space, and also informs the parking system that it is necessary to raise the barrier. Then the car, having a parking space number, moves along the recorded trajectory. The presentation of the project can be viewed at the link .

All source codes of programs are laid out on github .



In general, everything turned out quite well. Students all the time asked to stay and spend more time in the work on the project, which indicates the interest of students in robotics.

All the projects of the shift were divided into engineering, where work was carried out on the implementation of a specific design, and research, where data on various phenomena were collected and analyzed. In my opinion, in the final assessment, it is worthwhile to separate such areas, it is difficult to compare the analysis of the state of the Mzymta River and the Smart Desk. The presentation and poster format is more suitable for research, and for projects the exhibition format with stands is better.

Those who wish to participate in such shifts, should be puzzled by a preliminary thorough study of the area in which they want to participate. For this there is a huge number of courses of video lectures and other accompanying material. Learn to use different project management systems (you can start with the one we used ) and version control systems.

Many thanks to all the participants of this shift, its organizers and teachers. I hope to be here again and again!

Source: https://habr.com/ru/post/396233/


All Articles