自动咖啡机项目--参照 IEEE Guide to Software Requirements Specifications 标准

软件需求规范文档
Software Requirements Specifications Document (SRS)

本文档参照IEEE Guide to Software Requirements Specifications (Std 830-1993). 本文档只用于定义软件的需求分析、功能和接口定义,不涉及软件的具体实现方法。

  • 项目名称:自动咖啡机

  • 开发团队:华中科技大学RTCSD第三小组

  • 版本号:(1.0)

  • 日期: (10/18/2017)

1. 引言

本项目是华中科技大学2017年14级机械本科《实施控制软件设计》课程第四次作业,也是课程设计的作业内容。需要各小组组成开发团队进行协同合作。本小组成员以及分工如下:

  • 张照博 (C语言代码编写、软件设计规格书撰写)
  • 彭彦毓 (物理建模、模块导出)
  • 陈志平 (C语言代码编写、Debug)
  • 李佳杰 (单元测试、概要设计说明书)
  • 刘玉松 (项目总结、说明文档)

1.1 编写目的

本文档用于指导自动咖啡机硬件及软件开发过程,与软件用户定义和明确软件的功能需求。本文档的目标读者为软件用户和软件开发项目组成员。

1.2 背景

1.2.1 立项目标

用户在咖啡机面板上选择自己想要喝的咖啡(美式、拿铁、卡布奇诺...)并按下开始按钮后,咖啡机开始按照设定的配方制作咖啡。

1.2.2 类似产品分析

主校区图书馆一楼大厅进门右侧就有一台自动咖啡机,支持联网付费,全自动咖啡现磨冲泡。支持多品种选择,价格从10元到30元不等。与本项目产品高度相似,但是外部无操作界面,全部由服务器通过移动端进行操作,远程控制咖啡机进行生产。

全自动咖啡机是整个咖啡机行业里发展最快的。从1999年GAGGIA发布了第一台能制作Espresso(意式浓缩咖啡)的全自动咖啡机,各个不同的咖啡机厂商都在致力于研究开发,使得其功能不断的完善,已经有能加热牛奶并把它按比例配在咖啡里的高端机型面市。好的全自动咖啡机制作出来的咖啡完全可以和商用专业机相媲美,而因其能自动磨豆且相对于专业机来说价格又低很多,所以从问世以来便一直受到家庭及办公场所的青睐。

1.3 定义和缩写

自动咖啡机能依靠机械电动磨粉、填充和烧煮咖啡,全部免除了手工的操作。或称全自动咖啡机,内部装有电子控制系统,用来控制磨豆粗细的调节,每杯的水量。

Automatic Coffee Machine (ACM??)

1.4 参考资料

自动咖啡机_百度百科
全自动咖啡机_百度百科

2. 任务概述

2.1 目标

制作流程为:Feeder机构取一空杯放到传送带上,传送带把空杯送到龙头下,牛奶、糖浆、浓缩咖啡液和热水按照配方比例混合后装入空杯,传送带把满杯的咖啡送到用户取杯处,用户取走咖啡后,自动咖啡机可以继续响应面板上的按钮制作下一杯咖啡。

2.2 用户的特点

身体健康,手指无残疾现象。有喝咖啡的习惯,并且愿意接受现冲咖啡。

2.3 假定和约束

  • 实验条件: 一块STM32的板子。可编程的的电脑。Github分布式协作管理。
  • 开发期限:2017年10月完成软件开发,2017年11月完成集成调试。
  • 开发流程:按照软件流程规范,进行需求分析文档撰写和评审、系统架构方案撰写和评审、单元模块代码开发和单元测试、软件集成测试、现场调试和bug修复等工作。

3. 需求规定

3.1 功能需求规定

3.1.1 功能1--美式咖啡

  • 功能描述:

美式咖啡的原料就是沸水和咖啡粉,所以只需要Coffee 和 Water Part 正常工作即可。

  • 输入:按下“美式咖啡”

  • 参数:无

  • 处理过程:Feeder取空杯,传送带传动。两个Part的阀门打开,加热器加热。按照比例调节咖啡粉和沸水的配比。

  • 输出:美式清咖

3.1.2 功能2--拿铁

  • 功能描述:

拿铁的原料是咖啡粉,沸水,牛奶。所以只需要Coffee、Milk 和 Water Part 正常工作即可

  • 输入:按下“拿铁”

  • 参数:无

  • 处理过程:Feeder取空杯,传送带传动。三个Part的阀门打开,加热器加热。按照比例调节咖啡粉和沸水以及牛奶的配比。

  • 输出:拿铁咖啡

3.1.3 功能3--卡布奇诺

  • 功能描述:

卡布奇诺的原料是咖啡粉,沸水,糖、牛奶。所以需要Coffee、Milk、Sugar 和 Water Part 正常工作方可运行。

  • 输入:按下“卡布奇诺”

  • 参数:无

  • 处理过程:Feeder取空杯,传送带传动。四个Part的阀门打开,加热器加热。按照1:1:1比例调节咖啡粉和糖以及牛奶的配比。

  • 输出:卡布奇诺

3.2 性能需求的规定

3.2.1 精度要求

由于实力有限,目前只规定了产品类型,具体的口味清淡暂时无法顾及

3.2.2 实时性要求

对于实时性的需求不大,反应时间控制在五秒内即可。生产过程不予考虑

3.2.3 开放性和扩展性

后期添加产品类型的浓淡之分。本质上是添加了不同的输入按钮。或者可以添加二级输入。需要扩展命令集。

3.3 输入输出要求

硬件接口:

按钮

软件接口:

I/O接口

3.4 数据存储和管理能力要求

数据保存

在按钮被按下后,需要保存当前的输入。确保不会因为生产期间再次被按下按钮从而产生信号冲突。

3.5 故障和错误处理要求

不存在的。

3.6 其他特殊要求

要求生产过程中不接受按钮的信号量,短暂屏蔽,生产完成后才可以接受新的输入。

4. 用例

4.1 用例1:***操作过程

4.2 用例2:***实时画面

5. 运行环境规定

5.1 硬件设备及接口

STM32、PLC可编程控制器

5.2 软件平台及配置

Matlab/Simulink物理建模以及代码模块生成、gcc-ubuntu整体代码生成

5.3 通信协议

超文本咖啡壶控制协议(英文:Hyper Text Coffee Pot Control Protocol,HTCPCP)是一种用于控制、监测和诊断咖啡壶的协议。

6. 附录

6.1 **协议定义

这个协议在文档RFC 2324(发布于1998年4月1日)中被定义。尽管互联网国际标准机构经常在4月1日发布一些恶搞之作,他们还是让这个协议看上去像是一个真的、非虚构的协议(比如HTTP)。文本编辑器Emacs甚至完全兼容于这个协议,Mozilla也发布了数个补丁来扩展旗下产品的功能。Mosaic浏览器可能支持此协议。
HTCPCP是HTTP协议的扩展。HTCPCP请求通过URI架构coffee:来引用,并且还包含了若干种HTTP请求:
BREW或POST:令HTCPCP服务器(咖啡壶)煮咖啡。GET:从服务器获取咖啡。PROPFIND:获取咖啡的元数据。WHEN:让服务器停止向咖啡中加入牛奶(如适用),即英文"say when"之意。这个协议还定义了两种错误答复:
406 Not Acceptable(不能接受的):HTCPCP服务器由于某种原因而暂时不能煮咖啡。服务器在回复中应当包含一组可接受的咖啡类型列表。418 I'm a teapot(我是茶壶):HTCPCP服务器是一个茶壶。这个错误答复可能是由一个又矮又胖的东西发出的。

6.1.1 The BREW method, and the use of POST

Commands to control a coffee pot are sent from client to coffee
server using either the BREW or POST method, and a message body with
Content-Type set to "application/coffee-pot-command".

A coffee pot server MUST accept both the BREW and POST method
equivalently. However, the use of POST for causing actions to happen
is deprecated.

Coffee pots heat water using electronic mechanisms, so there is no
fire. Thus, no firewalls are necessary, and firewall control policy
is irrelevant. However, POST may be a trademark for coffee, and so
the BREW method has been added. The BREW method may be used with
other HTTP-based protocols (e.g., the Hyper Text Brewery Control
Protocol).

6.1.2 GET method

In HTTP, the GET method is used to mean "retrieve whatever
information (in the form of an entity) identified by the Request-
URI." If the Request-URI refers to a data-producing process, it is
the produced data which shall be returned as the entity in the
response and not the source text of the process, unless that text
happens to be the output of the process.

In HTCPCP, the resources associated with a coffee pot are physical,
and not information resources. The "data" for most coffee URIs
contain no caffeine.

6.1.3 PROPFIND method

If a cup of coffee is data, metadata about the brewed resource is
discovered using the PROPFIND method [WEBDAV].

6.1.4 WHEN method

When coffee is poured, and milk is offered, it is necessary for the
holder of the recipient of milk to say "when" at the time when
sufficient milk has been introduced into the coffee. For this
purpose, the "WHEN" method has been added to HTCPCP. Enough? Say
WHEN.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,723评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,485评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,998评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,323评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,355评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,079评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,389评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,019评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,519评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,971评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,100评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,738评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,293评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,289评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,517评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,547评论 2 354
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,834评论 2 345

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,600评论 18 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,515评论 25 707
  • 一周小结 Java基础语法 1.介绍 a)这部分课程的目标是掌握Java的基础语法 b)我们以开发BMI计算器为主...
    斐顾阅读 340评论 0 0
  • 一年高考又结束了。 无意间发现毕业照,发现我的高考过去三年了。 我那年高考的作文题叫青春不朽。我记不得我是怎么完成...
    呓语解忧馆阅读 499评论 0 0
  • 我是个有点文艺的姑娘,,喜欢阳光透过窗户照在桌上,安静又带点小忧伤。 而我坐在那里,一杯咖啡,一本小说...
    曾经想要的明媚阅读 318评论 0 0