SRS AIoT Coffee Maker
SRS AIoT Coffee Maker
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
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.3. Scope
Acronym Description
IR Infra Red
LED Light Emitting Diode
NFC Near Field Communication
SW Software
HW Hardware
Official (Closed), Non-Sensitive
Water
Temperature SPI_ADC_CH01
Sensor GPIO23 DC Motor
GPIO24 Heater
GPIO
I2C LCD
Official (Closed), Non-Sensitive
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
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
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
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
N Water Temperature
≥100 REQ-11
REQ-07
Turn OFF heating
element REQ-12
End
Figure 1
Official (Closed), Non-Sensitive
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
REQ-17
End
Figure 2
Official (Closed), Non-Sensitive
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,
REQ-20
The internal Web Server on the IoT Coffee Maker shall allow the user to control
the following,
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
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,
Buzzer
ON
OFF
Conditions for trigger the events are defined in the requirements below.
evEnterLPM evEnterHPM
Figure 3
REQ_ID Requirement
REQ-24 “evEnterLPM” Trigger Condition 1
When the option “2. Power Off” is selected in the main menu
When the coffee maker has not dispensed any coffee for at least 1 minute
When the IR sensor detects that the coffee container has been removed
Official (Closed), Non-Sensitive
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
NFC hal_servo.py
Hal_adc.py hal_usonic.py