0% found this document useful (0 votes)
7 views11 pages

SRS AIoT Coffee Maker

The document is a System/Software Requirements Specification (SRS) for an IoT Coffee Maker, detailing its purpose, intended audience, and overall system description. It outlines functional and non-functional requirements, including user interactions, remote access capabilities, and power management. The SRS serves as a foundational guide for system and software engineers in the development of the coffee maker's software architecture and design.

Uploaded by

xiaotianxinzz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views11 pages

SRS AIoT Coffee Maker

The document is a System/Software Requirements Specification (SRS) for an IoT Coffee Maker, detailing its purpose, intended audience, and overall system description. It outlines functional and non-functional requirements, including user interactions, remote access capabilities, and power management. The SRS serves as a foundational guide for system and software engineers in the development of the coffee maker's software architecture and design.

Uploaded by

xiaotianxinzz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

Official (Closed), Non-Sensitive

IoT Coffee Maker - System / Software Requirements Specification (SRS)

Table of Contents
1. Purpose ........................................................................................................................................... 2
1.1. Intended Audience .................................................................................................................. 2
1.2. Intended Use ........................................................................................................................... 2
1.3. Scope ....................................................................................................................................... 2
1.4. Definitions and Acronyms ....................................................................................................... 2
2. Overall System Description ............................................................................................................. 3
2.1. Use Case Diagrams .................................................................................................................. 3
2.2. System Architecture ................................................................................................................ 4
2.3. Functional Requirements ........................................................................................................ 5
2.3.1. Start Up and Main Menu ................................................................................................ 5
2.3.2. Dispense Black Coffee ..................................................................................................... 6
2.3.3. Dispense Hot Water ........................................................................................................ 7
2.3.4. Remote Access ................................................................................................................ 8
2.3.5. Authentication Services .................................................................................................. 9
2.4. Non-Functional Requirements .............................................................................................. 10
2.4.1. Power Management ..................................................................................................... 10
3. Software Architecture ................................................................................................................... 11
3.1. Static Software Architecture ................................................................................................. 11
Official (Closed), Non-Sensitive

IoT Coffee Maker - System / Software Requirements Specification (SRS)

1. Purpose
1.1. Intended Audience
This SRS document describes the System Requirements and Software Design for an IoT Coffee
maker and the target audience are System and Software Engineers working on the development
of this project.

1.2. Intended Use


The SRS defines the overall System Architecture and Requirements as well as the Software
Architecture and Design. This document is also contains the definition of the System
Requirements which shall be used as the input for System Test cases and Software Unit Test
cases.

1.3. Scope

1.4. Definitions and Acronyms

Acronym Description
IR Infra Red
LED Light Emitting Diode
NFC Near Field Communication
SW Software
HW Hardware
Official (Closed), Non-Sensitive

IoT Coffee Maker - System / Software Requirements Specification (SRS)

2. Overall System Description


2.1. Use Case Diagrams
Official (Closed), Non-Sensitive

IoT Coffee Maker - System / Software Requirements Specification (SRS)

2.2. System Architecture


The System Architecture

Raspberry Pi Development Board

Water
Temperature SPI_ADC_CH01
Sensor GPIO23 DC Motor

GPIO26 Servo Motor

GPIO24 Heater

GPIO

I2C LCD
Official (Closed), Non-Sensitive

IoT Coffee Maker - System / Software Requirements Specification (SRS)

2.3. Functional Requirements


2.3.1. Start Up and Main Menu

REQ_ID Requirement

REQ-01 When the Coffee Maker is first powered ON, the main menu with the text below
shall be displayed on the LCD scree

Line 1 = “1.Prepare Coffee”


Line 2 = “2. Power Off”

REQ-02 In the main menu defined in REQ-01, if the option “1. Prepare Coffee” is selected
on the keypad, then the following menu shall be displayed on the LCD screen

Line 1 = “Black Coffee”


Line 2 = “Hot Water”

REQ-03 In the main menu defined in REQ-01, if the option “2. Power Off” is selected, the
LCD should display the following text for 2 seconds and then turn off the LCD
display and back light and enter into the Low Power Mode state defined in the
State Machine in REQ-xx

Line 1 = “Thank you”


Line 2 = “Powering Off”
Official (Closed), Non-Sensitive

IoT Coffee Maker - System / Software Requirements Specification (SRS)

2.3.2. Dispense Black Coffee

REQ_ID Requirement

REQ-04 From the main menu, if the user selects “1. Prepare Coffee  1. Black Coffee”
then the flowchart defined in Figure 1 shall be implemented.

REQ-09
Start

Rotate Servo 30° position


REQ-05 for 5 seconds to dispense
coffee
Turn ON heating
element to boil water
REQ-10

Rotate Servo back to 0°


REQ-06 position

N Water Temperature
≥100 REQ-11

Display “Black Coffee


Y Ready” for 3 seconds

REQ-07
Turn OFF heating
element REQ-12

Display the Main Menu on


REQ-08 LCD

Turn ON motor to grind


coffee beans for 5 seconds

End

Figure 1
Official (Closed), Non-Sensitive

IoT Coffee Maker - System / Software Requirements Specification (SRS)

2.3.3. Dispense Hot Water

REQ_ID Requirement

REQ-13 From the main menu, if the user selects “1. Prepare Coffee  2. Hot Water” then
the flowchart defined in Figure 2 shall be implemented.

Start

REQ-14

Turn ON heating
element to boil water

REQ-15

N Water Temperature
≥100

Y
REQ-16

Turn OFF heating


element

REQ-17

Beep Buzzer for 500ms

End

Figure 2
Official (Closed), Non-Sensitive

IoT Coffee Maker - System / Software Requirements Specification (SRS)

2.3.4. Remote Access


The Coffee Maker supports “Remote Access” to monitor the coffee maker functions, set events and
also remote

REQ_ID Requirement

REQ-18 The user shall be able to login to the IP address of the IoT Coffee Maker to view a
web page

REQ-19
The internal Web Server on the IoT Coffee Maker shall allow the user to monitor
the following,

 Water Level using Moisture Sensor


 Ambient Room Temperature

REQ-20
The internal Web Server on the IoT Coffee Maker shall allow the user to control
the following,

 View the Main Menu defined in REQ-01


 Trigger all functions in the main menu remotely
Official (Closed), Non-Sensitive

IoT Coffee Maker - System / Software Requirements Specification (SRS)

2.3.5. Authentication Services


For commercial variants of the coffee maker, an added feature is to authenticate the user log in to
use the coffee maker via an NFC card reader before unlocking the functions on the coffee maker for
the user.

REQ_ID Requirement

REQ-21 For commercial variants of the IoT Coffer Maker with NFC reader, upon Power On the
LCD shall display the following

Line 1 = “Tap card to unlock”


Line 2 = Display time “hh:mm:ss”

REQ-22 If the NFC reader detects a NFC card that has been registered in the internal data base
then the coffee maker shall display the main menu defined in REQ-01

REQ-23 If the NFC reader detects an unregistered NFC card, the following shall be implemented,

 LCD shall display the following.

 Buzzer shall be activated based on the timing diagram below

Buzzer

ON

OFF

500ms 500ms 500ms 500ms


Official (Closed), Non-Sensitive

IoT Coffee Maker - System / Software Requirements Specification (SRS)

2.4. Non-Functional Requirements


2.4.1. Power Management
The IoT Coffee Maker has 2 Power Modes as defined in the State Machine diagram in Figure xx
below. The transitions between the Low Power Mode and High Power Mode are triggered by the
events labelled “evEnterLPM” and “evEnterHPM”.

Conditions for trigger the events are defined in the requirements below.

Low Power Mode

evEnterLPM evEnterHPM

High Power Mode

Figure 3

REQ_ID Requirement
REQ-24 “evEnterLPM” Trigger Condition 1

 When the option “2. Power Off” is selected in the main menu

REQ-25 “evEnterHPM” Trigger Condition 2

 When the coffee maker has not dispensed any coffee for at least 1 minute

REQ-26 “evEnterHPM” Trigger Condition 1

 When the user presses any button on the key pad

REQ-27 “evEnterHPM” Trigger Condition 2

 When the Ultrasonic Distance Sensor detects an object is within 10 cm of


the coffee maker

REQ-28 “evEnterHPM” Trigger Condition 3

 When the IR sensor detects that the coffee container has been removed
Official (Closed), Non-Sensitive

IoT Coffee Maker - System / Software Requirements Specification (SRS)

3. Software Architecture
3.1. Static Software Architecture

The Software Architecture defines the various Software Components that are developed to realize
the implementation of the system requirements.

Application Layer

Hmi.py Power_Mgt.py

Black_Coffee.py Hot_Water.py

Hardware Abstraction Layer (HAL)

NFC hal_servo.py

Hal_adc.py hal_usonic.py

You might also like