System Design and Specifications

In this project, we want to enable NAO robots to express facial emotion in reaction to words that are spoken to it. To achieve this, we envision creating custom hardware and software that will integrate seamlessly with NAO robots in order to achieve a set of design specifications.

Specifications

For this stage of the project, due to be completed by December of 2019, we aim to create hardware and software that will enable a NAO robot to react to 3 spoken words and then express emotions corresponding to those words on its face. These words/emotions are:

  • Happy
  • Sad
  • Angry

Our goal is to produce software for the NAO robot which will enable it to listen for these words and then respond to them, at which point custom-built mechanical facial features will be used to exhibit the corresponding facial emotion on the NAO’s face. These facial features will include a set of 2 eyebrows, and a pair of lips.

Additionally, we have outlined a list of specifications which our hardware and software for this project must conform to:

SpecificationValue
Maximum Latency (from vocal cue to motor movement)170.0 ms
Range of Eyebrow rotation -35° ≤ 𝛳 ≤ 25°  (60° total)
Maximum Backpack Weight0.8 lb
Backpack Dimensions2.125in * 4.0in * 5.0in
Maximum Headset Weight0.2 lb
Headset Dimensions4.5in * 5.5in * 4.5in
Device Operating Voltage5.0V

System Design

High-level system diagram

Our system is comprised of 3 primary components: a NAO robot, a microcontroller, and a set of motors. The general system flow consists of the following steps:

  1. Human speaks to the NAO robot
  2. NAO recognizes the word using its speech processing engine
  3. NAO tells the microcontroller which emotion it recognized
  4. Microcontroller operates motorized facial features to display appropriate facial emotion

A more detailed description of our system which incorporates functionality of the software on both the NAO robot and the microcontroller can be seen below. The NAO robot and microcontroller will communicate via serial communication over a USB cable.

Detailed system diagram