自动售货机软件系统的设计与实现毕业设计Word格式文档下载.docx
- 文档编号:18283360
- 上传时间:2022-12-15
- 格式:DOCX
- 页数:29
- 大小:138.06KB
自动售货机软件系统的设计与实现毕业设计Word格式文档下载.docx
《自动售货机软件系统的设计与实现毕业设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《自动售货机软件系统的设计与实现毕业设计Word格式文档下载.docx(29页珍藏版)》请在冰豆网上搜索。
2)原创性声明
3)中文摘要(300字左右)、关键词
4)外文摘要、关键词
5)目次页(附件不统一编入)
6)论文主体部分:
引言(或绪论)、正文、结论
7)参考文献
8)致谢
9)附录(对论文支持必要时)
2.论文字数要求:
理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
3.附件包括:
任务书、开题报告、外文译文、译文原文(复印件)。
4.文字、图表要求:
1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写
2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。
图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画
3)毕业论文须用A4单面打印,论文50页以上的双面打印
4)图表应绘制于无格子的页面上
5)软件工程类课题应有程序清单,并提供电子文档
5.装订顺序
1)设计(论文)
2)附件:
按照任务书、开题报告、外文译文、译文原文(复印件)次序装订
指导教师评阅书
指导教师评价:
一、撰写(设计)过程
1、学生在论文(设计)过程中的治学态度、工作精神
□优□良□中□及格□不及格
2、学生掌握专业知识、技能的扎实程度
3、学生综合运用所学知识和专业技能分析和解决问题的能力
4、研究方法的科学性;
技术线路的可行性;
设计方案的合理性
5、完成毕业论文(设计)期间的出勤情况
二、论文(设计)质量
1、论文(设计)的整体结构是否符合撰写规范?
2、是否完成指定的论文(设计)任务(包括装订及附件)?
三、论文(设计)水平
1、论文(设计)的理论意义或对解决实际问题的指导意义
2、论文的观念是否有新意?
设计是否有创意?
3、论文(设计说明书)所体现的整体水平
建议成绩:
(在所选等级前的□内画“√”)
指导教师:
(签名)单位:
(盖章)
年月日
评阅教师评阅书
评阅教师评价:
一、论文(设计)质量
二、论文(设计)水平
评阅教师:
教研室(或答辩小组)及教学系意见
教研室(或答辩小组)评价:
一、答辩过程
1、毕业论文(设计)的基本要点和见解的叙述情况
2、对答辩问题的反应、理解、表达情况
3、学生答辩过程中的精神状态
评定成绩:
教研室主任(或答辩小组组长):
(签名)
教学系意见:
系主任:
一自动售货机需求分析
1.1实验设计分工—————————————————————————1
1.2产品介绍———————————————————————————1
1.3产品面向的用户群体——————————————————————1
1.4产品应当遵循的标准或规范———————————————————1
1.5产品范围———————————————————————————1
1.6产品的系统需求————————————————————————1
1.7产品的非功能性需求——————————————————————2
二概要设计说明
2.1引言——————————————————————————————3
2.2总体设计————————————————————————————4
2.3接口设计————————————————————————————5
2.4运行设计————————————————————————————6
2.5系统出错处理设计————————————————————————6
三详细设计说明
3.1引言——————————————————————————————7
3.2程序系统的结构—————————————————————————7
3.3自动售货机AVM(主程序)设计说明————————————————8
3.4投币模块设计说明————————————————————————10
3.5物品栏处理模块设计说明—————————————————————10
3.6购物车处理模块设计说明—————————————————————11
3.7出货模块说明——————————————————————————12
四测试分析报告
4.1引言——————————————————————————————13
4.2测试概要————————————————————————————14
4.3对软件功能的结论————————————————————————15
4.4分析摘要————————————————————————————16
五项目开发总结报告
5.1引言——————————————————————————————17
5.2实际开发结果——————————————————————————18
5.3开发工作评价——————————————————————————19
5.4经验与教训———————————————————————————20
一.自动售货机需求分析
1.1.实验设计分工:
彭明强负责设计购买出货管理系统,韩宾负责设计修改单价管理系统,袁哲坤负责设计添加新商品管理系统,段一帆负责设计删除商品管理系统,马光圆负责设计添加货物管理系统。
其中的图形界面由大家商议并由彭明强同学完成代码。
1.2.产品介绍:
a)自动售货机系统是一种无人售货系统。
售货时,顾客把硬币投入机器的投币口中,机器检查硬币的大小、重量、厚度及边缘类型。
有效的硬币是一元币、五角币、一角币、五分币、二分币和一分币。
其他货币都被认为是假币。
机器拒绝接受假币,并将其从退币孔退出。
当机器接收了有效的硬币之后,就把硬币送入硬币储藏器中。
顾客支付的货币根据硬币的面值进行累加。
b)自动售货机装有货物分配器。
每个货物分配器中包含零个或多个价格相同的货物。
顾客通过选择货物分配器来选择货物。
如果货物分配器中有货物,而且顾客支付的货币值不小于该货物的价格,货物将被分配到货物传送孔送给顾客,并将适当的零钱返回到退币孔。
如果分配器是空的,则和顾客支付的货币值相等的硬币将被送回到退币孔。
如果顾客支付的货币值少于所选择的分配器中货物的价格,机器将等待顾客投进更多的货币。
如果顾客决定不买所选择的货物,他投放进的货币将从退币孔中退出。
1.3.产品面向的用户群体:
自动售货机面向的对像主要是大众消费者,包括各种文化程度以用各种年龄阶段的人,它并没有特别的针对性,它的使用者可能是成人,也可能只是个什么都不太懂的孩子,因此自动售货机的操作应尽可能的定义简单一点。
1.4.产品应当遵循的标准或规范:
鉴于自动售货机面向对象的复杂性,自动售货机不应做的太过复杂,应该越简单越好,不好操作的自动售货机是不会受到大家的欢迎的
1.5.产品范围
该产品适合在自助餐厅,人流密度较大的路边,学校等地方摆设,且应有工作人员定期更新或补充货物。
自动售货机只能部分的替代货物的也售功能,使用者不能完全依赖这种设备来营利。
1.6.产品的系统需求
根据售货机自动控制系统的流程如下图可以知道自动售货机的主要系统包括:
计币系统、选择系统、饮料供应系统、退币系统、报警系统,对于工作人员来说,还应有控制系统。
a)计币系统:
当有顾额色买饮料时,投入的钱币经过感应器,感应器记忆投币的个数关且传送到检测系统(即电子天平)和计币系统。
只有当电子天平测量的重量少于误差值时,允许计币系统进行叠加钱币,叠加的钱币数据存放在数据寄存器D2中。
如果不正确时,认为是假币。
既定出投币,既定出系统,等待新顾客。
b)选择系统:
当按下汽水或咖啡选择时,会有相应的指示告诉你你选择了什么货物,当选择完毕后可以确定自己的选择再按确定。
c)饮料供应系统:
当按下选择按钮时,相应的电磁阀(Y4或Y6)和电机(Y3或Y5)同时启动。
在饮料输出的同时,减去相应的购买钱币数。
当饮料输出达到8秒时,电磁阀首先关断,小电机继续工作0.5秒后停机。
此小电机的作用是:
在输出饮料时,加快输出。
在电磁阀关断时,给电磁阀加压作用,加速电磁阀的关断。
(注:
由于该售货机是长期使用,电磁阀使用过多时,返回弹力减少,不能完全关断会出现漏饮料的现象。
此时电机Y3和Y5延长工作0.5秒起到电磁阀加压的作用,使电磁阀可以完好的关断。
)
自动控制系统的流程
d)退币系统:
当顾客购完饮料后,多余的钱币只要按下退币按钮。
系统就会把数据寄存器D2内的钱币数首先除以10得到整数部分,是1元钱需要退回的数量,存放在D10里。
余数存放在D11里。
再用D11除以5得到的整数部分是5角钱需要退回的数量,存放在D12里。
余数存放在D13里。
最后D13里面的数值,就是1角钱需要退回的数量。
在选择退币的同时启动3个退币电机。
3个感应器开始计数,当感应器记录的个数等于数据寄存器退回的币数时,退币电机停止运转。
e)报警系统:
报警系统如果是非故障报警,只要通过网络通知送液车或者送币车即可。
但是如果是故障报警则需要通知维修人员到现声进行维修。
同时停止服务,避免造成顾客的损失。
f)控制系统:
当货物数量为0时就要添加货物,有时候一种货物长期滞销,我们就应该把它从货架上取下来,为了更多的营利,货物的价格也应是随着时间变化的,因此要有一个完整的控制系统。
1.7产品的非功能性需求
a)界面要求:
软件的界面要求简单明了,货物选择最好是直接点击商品就能实现,或者是提供简单的选择系统(比如行用字母表示,列用数字表示)。
货物的名称可以直接用汉字,也可以用汉字加图片的方式,在每一个货物上应该明确标明价格信息和数量,尤其是当货物数量为空时,要能够提醒用户并作出正确的判断。
在用户界面上,还要有用户所选货物的信息以便用户确认,在用户确认选择的货物后,要求售货机能给出相应的货物。
此外,用户界面应做得尽量美观多彩,以吸引更多的用户前来使用。
b)软伯环境需求:
所设计的自动售货机要求能在WINDOW各版本下运行。
二概要设计说明书
2引言
2.1.1编写目的
此概要说明书主要说明了自动售货机的软件编程设计过程和总共包含的模块,各个模块的功能都做了介绍,使客户读者能够了解相关的设计思想和所完成的功能。
2.1.2背景
a.待开发软件系统的名称:
自动售货机软件系统的设计与实现;
b.本软件基于Matlab软件开发而出,算法及图形界面均基于此。
2.1.3定义
goods:
商品。
name:
商品的名称。
price:
商品的价格。
num,原词组number:
记录商品的货物量。
tip:
指点。
2.2总体设计
2.2.1需求规定
对本系统的主要的输入是计币和选择物品,两者均由按钮响应来实现。
输出主要由图片显示和退币系统组成,两者在购物后触发显示。
处理的功能有用于客户的投币及选择所需的物品,可以一次选择多个物品,将这些物品放入所设计的购物车中,并且在购物车中的物品还可以按客户的喜好随意的删除不想购买的物品,并且当即会退回相应的钱。
在确认购买后,就会退出余额并显示出物图片。
当钱额不够时就会提醒用户钱不够,请用户继续投币。
本系统还为后台服务人员提供了相应的功能,添加新商品功能可以方便其对新购入的货物加入售货机。
删除物品功能可心方便其对过期的货物进行删除。
修改物品的单价功能可以方便其根据物价修改单价。
添加物品功能可以方便其对卖完的物品进行添加。
2.2.2运行环境
本系统的运行环境为Matlab.
2.2.3基本设计概念和处理流程
2.2.4尚未问决的问题
尚未完成的功能有各物品的图片在所用的按钮中显示,以及相应的按钮声音出货图片的掉落过程。
2.3接口设计
2.3.1用户接口
用户点投币按钮,显示框中会显示相应的钱数。
用户按选择按钮时会在货物显示区显示相应的物品名称。
2.3.2外部接口
本系统同外界的软件与硬件之间无接口、本系统应用Matlab软件的编程功能。
2.3.3内部接口
主模块与各程序模块之间通过参数goodsnamepricenum等来控制。
2.4运行设计
2.4.1运行模块组合
说明对系统施加不同的外界运行控制时所引起的各种不同的运行模块组合,说明每种运行所历经的内部模块和支持软件。
2.4.2运行控制
说明每一种外界的运行控制的方式方法和操作步骤。
2.4.3运行时间
运行模块组合占用各种资源的时间比较短。
2.5系统出错处理设计
2.5.1出错信息
系统没有操作上的出错,各种操作情况都会有相应的提示语句。
2.5.2系统维护设计
系统维护采用保证相关的传递参数的正确性,以及程序的完整性。
三详细设计说明书
3.1引言
3.1.1编写目的
基于自动售货机的工作方式,完成用户投币,选购货物以及确认购买并取得物品的功能,同时为了方便用户以及对于软件实现的功能多样化,实现了可以对货物进行取消购买的选项以及对于自动售货机工作人员工作的软件化,即对于商品可以进行处理:
添加,删除以及更改等多种操作。
3.1.2背景
a.待开发软件系统的名称:
自动售货机
b.开发者:
彭明强
c.用户和运行该程序系统的计算中心:
matlabR2009a。
3.1.3定义
自动售货机系统GUI人机界面
3.1.4参考资料
精通GUI图形用户界面编程(matlab)施晓红周佳北京大学出版社
3.2程序系统的结构
3.3自动售货机AVM(主程序)设计说明
3.3.1程序描述
此模块对应整个系统的主模块,主要完成的是对其他子模块的调度,以及一些全局变量的使用说明。
3.3.2功能
启动程序之后,进入主界面面板,等待用户进行操作,并进行相应的响应,一般的响应都是进入另外一个子程序,响应的操作在子程序中完成,子程序修改相应的变量,完成之后再返回主程序。
3.3.3性能
可靠性要求高,主界面比较直观,能够准确的响应用户的操作。
3.3.4输出项
错误提示:
在主界面的提示显示框中显示相应的出错信息,如:
钱不够,商品已经卖完等。
操作界面:
进入子模块的程序界面。
3.3.5算法
显示主界面,等待用户操作
如果点击相应的投币按钮进入投币模块
如果点击相应的物品栏按钮进入物品处理模块
如果点击相应的购物车按钮进入购物车处理模块
如果点击确认按钮进入出货模块
3.3.6流程逻辑
3.3.7存储分配
物品的信息(名称,单价,数量)占据整个存储空间。
3.3.8测试计划
首先采取白箱方式测试系统,各种可能的输入方式都进行测试,包括各种错误的操作,再要求同学进行各种误操作测试。
3.3.9尚未解决的问题
主程序界面图形化没有做到与真实的售货机的形似,与现实的还是有很大的差别的。
3.4投币模块设计说明
3.4.1模块描述与功能
此模块对应用户投币,用户投入钱币后,对总钱数的处理。
3.4.2设计方法(算法)
用户点击按钮
钱的总量相应增加并显示在显示区。
3.4.3流程逻辑
3.4.4限制条件
投入的总的钱的数额不能超过最大的数值65536。
3.5物品栏处理模块设计说明
3.5.1模块描述与功能
此模块实现用户购买物品时,选购了该物品但是并没有确定是否最终购买与否的功能。
此时物品栏的物品数量相应减去一件,当该物品已经售完时,应在提示显示框中显示相应的提示信息,并等待用户重新选择。
3.5.2设计方法(算法)流程图
3.6购物车处理模块设计说明
3.6.1模块描述与功能
此模块实现当用户已经选购了相应的商品时,可以将不想购买的商品退掉,即从购物车里将其删除,这是相应的商品的数量以用户的前的总数都要进行相应的增加。
3.6.2设计方法(算法)流程图
3.7出货模块设计说明
3.7.1模块描述与功能
此模块处理用户点击确认购买后的图形处理程序,首先由出货口将货物弹出,同时将用户的余额退还,再显示相应的提示信息(欢迎下次光临)。
将总钱数置零,购物车内货物清空。
等待下一位客户。
3.7.2设计方法(算法)流程图
3.7.3尚未解决的问题
货物从出货口弹出的图形化设计没有做到与实际相符合,在实际中应该是物品有一个下落的过程,以及‘噔’的响声,以及其他的一些更加人性化的东西。
4引言
4.1.1编写目的
编写测试分析报告是为了达到以下目的:
·
把测试的结果写成文档,并对测试结果进行分析,纠正软件中的BUG。
把测试阶段的工作进程通报给编写程序的同学,以便对下一步工作做出调整。
4.1.2背景
被测试系统名称:
自动售货及仿真系统
软件任务提出者:
江国星老师
软件开发者:
彭明强韩宾袁哲坤段一帆马光圆
用户:
普通消费人群
测试环境是在测试人员的个人计算机上,实际运行环境则是在自动售货机上。
两种环境下存在的差异:
测试环境下只是一个仿真软件,不涉及硬件参与;
在实际的自动售货机上设计硬件系统与软件系统的结合问题。
在计算机上运行仿真程序速度会更快一些。
4.1.3定义
自动售货及仿真系统:
在电脑上模拟出自动售货机的各种功能和动作。
4.1.4参考资料
《测试分析报告(GB8567——88)》
4.2测试概要
测试标识符
测试内容
实际与计划的差别
存在差别的原因
1角
点击一下显示栏钱数加0.1
与计划一致
5角
点击一下钱数显示栏加0.5
1元
点击一下钱数显示栏加1
货物名称
点击一下显示栏钱数减少单价数,右方购物车出现商品名称
移除
点击一下所选中货物被移除,显示栏钱数增加商品单价
OK键
点击一下视为正式购买商品,出货口会有动态显示
Cancel键
点击一下视为退出该次仿真程序
4.3对软件功能的结论
4.3.1功能一:
投币
4.3.1.1能力
该功能是模拟自动售货机中的投硬币功能,它能让系统中的钱数按规定的数额增加,0.1、0.5、1,这三个固定数值。
投币功能只能是钱数增加不能减少。
4.3.1.2限制
该功能只能按着规定的额度增加,不能减少,数值分别为0.1,0.5,1。
缺陷在于没有真实投币过程中的声音和形象。
4.3.2功能二:
选货
4.3.2.1能力
该功能可以让用户选择自己想要的产品,产品由售货机提供,每次选货后商品进入购物车中待定。
选货是点击按钮的方式。
4.3.2.2限制
选货点击次数是handles.num的值,有一定限制。
选货没有图形参考,且没有选货过程的动态显示。
4.3.3功能三:
购物车
4.3.3.1能力
该功能是让已选择的物品进入一个“待定席”,给用户可以退货的选择。
当用户点击“移除”按钮时,相应的商品会被退还到货架上,handles.num也会增加1,钱数也增加相应商品的单价。
4.3.3.2限制
选中的商品只有名称没有图形化显示,商品排列是按顺序一个挨一个名称来的,而不是简便的名称加数量。
测试中可以满足所有商品的待定,即数值从0到所有商品的handles.num的总
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 自动 售货 软件 系统 设计 实现 毕业设计