1 of 21

Voice Control of a HumanOid robot

  • Shir Graus
  • Gili Oved
  • Supervisor: Koby Kohai
  • CRML Lab

1

2 of 21

Agenda

  • Project goals
  • Technologies overview
  • Architecture
  • Demonstration
  • Conclusion and Improvements

2

3 of 21

Project Goals

  • Build voice automated system using Google Assistant interface to control BIOLOID robot motion through MATLAB as a work environment
  • Support various voice commands

3

4 of 21

Technologies overview

  • Google home is a smart device developed by Google. It allows the user to use voice commands to communicate with services through google assistant – a personal assistant software for google users. We used these capabilities to control the robot by providing voice commands.

4

5 of 21

Technologies overview

  • BIOLOID robot produced by Robotis is a humanoid �robot
  • The robot has an cm-530 controller and 18 ax-12 engines.
  • It has IR and GYRO sensors.
  • It has 18 degrees of freedom expressed by 18 engines, six of them in the arms and 12 in the legs. Each engine has an id number and using this number the controller can communicate with each engine individually.

5

6 of 21

Architecture

  • We connected the Google Home interface to MATLAB by IFTTT and ThingSpeak .
  • With the help of these Apps we created a new voice command which translated to Data Vector in MATLAB.

6

7 of 21

Architecture

  • The project progressed in stages. We created new voice commands for the Google Home interface through Google Assistant by IFTTT.
  • We activated a trigger so that when the voice command is entered, a change in the vector value that represents the information in the MATLAB software is generated.

7

8 of 21

Architecture

  • We moved the control of the robot programmed into the MATLAB software. Using MATLAB we connected the two interfaces so that the robot responds to the voice commands.

8

9 of 21

Demonstration

  • At the beginning of the code, we define the appropriate port for the robot and stabilize it. Then we set a timer for a desirable running time so that the robot will run live in a while loop

9

10 of 21

Demonstration

  • Vector data is the information vector that contains all the voice changes that is sent to MATLAB using the function “ThingSpeakRead”.
  • The vector contains a value '1' for the last received command and a ‘NaN' value for the other commands. We converted the ‘NaN' to '0' to simplify the work.

10

11 of 21

Code example

11

12 of 21

Demonstration

  • The code is divided into eight cases (one case for each command). Each command is run if the value '1' is found in its place in the vector.

12

13 of 21

Demonstration

  • To generate movement, we used a step matrix. Each line in the matrix represents the location of a specific step and each column represents a specific engine.
  • We go through the entire matrix, so for every step we will go through all the engines.

13

14 of 21

Demonstration

  • We are placing the robot in the desired coordinates by the function "setGoalPosition“. strength of the engine movement is determined by the function "setMovingSpeed“.
  • We used movements from a previous project and improved and added additional movements we created.

14

15 of 21

Code example

15

16 of 21

Demonstration-Demo Video

16

17 of 21

17

18 of 21

Conclusion and improvements

Based on the results of the project, we recommend the following:

  • Using a battery to maintain a better balance of the robots rather than using a direct connection to electricity which limits the robot's movement.
  • Turning the robot off and on every time something "gets stuck“. This startup helps solve problems.

18

19 of 21

Conclusion and improvements

For a further project, we suggest the following improvements:

  • Stop the robot in the process and not after it is finished.
  • Working with a robot with a different shape in order to make the robot more stable so that additional movements can be preformed.

19

20 of 21

Conclusion and improvements

  • Option for more voice commands.
  • Add another interface – a graphical display where you can view the chat done with the robot.

20

21 of 21

Thanks!

Any questions?

  • Gili Oved
  • Shir Graus

21