Mechanical Design, Machine Design

Task:-

Group assignment:

Mechanical Design
  • Design a machine that includes mechanism + actuation + automation + application.
  • Build the mechanical parts and operate it manually.
Machine Design
  • Actuate and automate your machine.
  • Document the group project.
Individual assignments: Document your individual contribution


For the Mechanical Design & Machine Design part, my role was to integrate voice control into the system.

Brainstorming and project planning:

During brainstorming, Mishael proposed idea of rotary tool table inspired by a Lazy Susan. The idea was to rotate different tool compartments when needed. We planned to control this using voice commands with Alexa.

Our instructor suggested using Alexa or Raspberry Pi. While exploring Alexa, I found the Alexa Developer Console, where we can create custom skills to connect voice commands to actions. I also explored another option using Raspberry Pi with Python, which can work without Alexa.

One challenge was how the system would know where and who to rotate . So we decided to give each position a name like A1, B2, etc., so users can call specific positions. Later, our instructor suggested using the ReSpeaker 4-Mic Array for Raspberry Pi. It can detect the direction of the user’s voice, which helps in identifying where the command is coming from and improves interaction with the system.

Alexa developer console

It's a web-based portal where we can create, test, manage, and publish Alexa skills.

An Alexa skill is like a new ability you give to Alexa. Like i'm learning how to play sitar, it adds up to by skillset.

Invocation Name

The name you use to open your skill.

How it works:
You must say it to Alexa to start your skill.


The name must follow specific rules — it usually needs at least two words, and you cannot use launch words like “open”, “start”, or “ask” as the name.

Intent

An action Alexa should perform based on what the user says.

Utterance


The different ways a user can say the same command(phrases). Alexa uses these to understand and match the user’s speech to the correct intent.

Slot

A variable value inside an intent (dynamic input from user).
for eg: fact about {planet}

Slot type


Defines what kind of values a slot can take.
slot type: planettype
values: Mercury, Venus, Earth....

There are in build slot types like AMAZON.SearchQuery -A built-in slot type used to capture any free-form text or phrase the user says.

Built-in Slot Types
  • AMAZON.NUMBER : captures numbers
  • AMAZON.DATE : captures dates
  • AMAZON.TIME : captures time
  • AMAZON.SearchQuery : captures any free text
  • AMAZON.YesNo : yes / no
Built-in Intent

Predefined intents provided by Alexa for common actions. You don't need to create them.

  • AMAZON.HelpIntent
  • AMAZON.NavigateHomeIntent
  • AMAZON.FallbackIntent
  • AMAZON.StopIntent

Building an Alexa skill requires two main parts: the Voice Interaction Model and the Programming Logic.

Voice Interaction Model

it is created in the Amazon Developer Console and defines how the user speaks to Alexa, including the invocation name, intents, utterances, and slots. It helps Alexa understand what the user is saying.

Programming Logic

it is written in code (using Python or Node.js) and runs on AWS. This part decides what action should happen after Alexa understands the command.


Creating an Alexa Skill

After logging into the Alexa Developer Console with Amazon account, i created a skill by following these steps:


1

Skill Name

First, give a name to your skill.


Primary Locale

Next, select the primary language (locale) for your skill (e.g., English - IN, US).

2

Choose Type of Experience

Since this project is a custom system (rotary table), select: "Other"


3

Choose a Model

Alexa provides Pre-built models: already defined phrases and actions and Custom model: can create your own phrases and actions.
Choose Custom

4

Hosting Service

Choose: Alexa-hosted (Python)

Other options:

5

Template

Choose: Start from scratch

6

Review and Create

Finally: Review all selected options and click "Create Skill"