文档库 最新最全的文档下载
当前位置:文档库 › 自动售货机系统用例图

自动售货机系统用例图

自动售货机系统用例图

自动售货机控制系统的设计(最终版)

课程设计任务书 设计题目:饮料自动售货机PLC控制系统设计 学院:机械工程学院 专业:机械测控 班级: 姓名: 组员: 指导老师:

【摘要】 本文介绍了自动售货机的基本原理以及工作流程,然后以一次交易过程为例,把交易过程分为几个程序块,然后分别对程序块进行编程。具体说明了可编程序控制器在自动售货机中的作用。程序涉及到了自动售货机工作的绝大部分过程。利用PLC控制的自动售货机提高了系统的稳定性,保证自动售货机能够长期稳定运行。 关键词:自动售货机;可编程序控制器;梯形图 Abstract:This paper introduces the basic principles of vending machines, as well as workflow, and then to a transaction process as an example, the transaction process is divided into several blo ck, and then the block were programmed. Specify the PLC in the r ole of vending machines. Procedures related to the work of the va st majority of vending machine process. PLC control of the use of vending machines enhance the stability of the system to ensure t hat vending machines capable of long-term stable operation. Key words:Vending machines; PLC; Ladder Diagram 一.PLC的概述 1.1 PLC的产生

测试用例设计自动售货机因果图分析

实验三黑盒测试(二) 一、实验目的 通过本实验,掌握因果图法生成测试用例的步骤。 二、相关内容 利用因果图生成测试用例的基本步骤如下: (1)分析软件规格说明中哪些是原因(即输入条件或输入条件的等价类),哪些是结果(即输出条件),并给每个原因和结果赋予一个标识符。 (2)分析软件规格说明中的语义,找出原因与结果之间、原因与原因之间对应的关系,根据这些关系画出因果图。 (3)由于语法或环境的限制,有些原因与原因之间、原因与结果之间的组合情况不可能出现。为表明这些特殊情况,在因果图上用一些记号表明约束或限制条件。 (4)把因果图转换为决策表。 (5)根据决策表中的每一列设计测试用例。 三、实验内容 有一个处理单价为5角钱的饮料的自动售货机软件测试用例的设计。其规格说明如下:若投入5角钱或1元钱的硬币,押下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;若有零钱找,则显示〖零钱找完〗的红灯灭,在送出饮料的同时退还5角硬币。 编写程序实现之,然后用因果图法对自动售货机设计测试用例并测试之。 要求: 1、编写程序,实现上述自动售货过程。(任选一种自己熟悉的语言,有无界面均可,实现相应的功能即可。) 2、用因果图法设计测试用例。 (1)正确画出因果图。(2)画出决策表。(3)给出测试用例。 提示:可按如下步骤进行: 1)分析这一段说明,列出原因和结果。 2)画出因果图。(所有原因结点列在左边,所有结果点列在右边。可以考虑建立中间结点,表示处理的中间状态。比如,可设如下几种中间状态:该找5角,可找5角,按下按钮、钱已付清) 3)画出决策表。 4)给出测试用例。 四、实验报告 实验报告提交内容:源程序清单、因果图、决策表。(测试用例有时间就设计,没有时间可以不设计) 一,因果图; 因果图-画条件和结果

新产品开发部门工作流程图

新产品开发部门工作流程图 新产品开发策略 要紧方式 呈 报 时期性工作总结 新产品样品开发 新产品开发过程

附件一:内部治理制度 新产品开发工作,是指运用国内外在基础研究与应用研究中所发觉的科学知识及其成果,转变为新产品、新材料、新生产过程等一切特不规性质的技术工作。新产品开发是企业在激励的技术竞争中赖以生存和进展的命脉,是实现“生产一代,试制一代,研究一代和构思一代”的产品升级换代宗旨的重要时期,它对企业产品进展方向,产品优势,开拓新市场,提高经济效益等方面起着决定性的作用。因此,新产品开发必须严格遵循产品开发的科学治理程序,即选题(构思。调研和方案论证)样(模)试批试正式投产前的预备这些重要步骤。 一、调查研究与分析决策 新产品的可行性分析是新产品开发中不可缺少的前期工作,必须在进行充分的技术和市场调查后,对产品的社会需求、市场占有率、技术现状和进展趋势以及资源效益等五个方面进行科学预测及技术经济的分析论证。 (一)调查研究: 1、调查国内市场和重要用户以及国际重点市场同 类产品的技术现状和改进要求;

2、以国内同类产品市场占有率的前三名以及国际 名牌产品为对象,调查同类产品的质量、价格、 市场及使用情况; 3、广泛收集国内部外有关情报和专刊,然后进行 可行性分析研究。 (二)可行性分析: 1、论证该类产品的技术进展方向和动向。 2、论证市场动态及进展该产品具备的技术优势。 3、论证进展该产品的资源条件的可行性。(含物 资、设备、能源及外购外协件配套等)。 (三)决策: 1、制定产品进展规划: (1)企业依照国家和地点经济进展的需要、从企业产吕进展方向、进展规模,进展水平和技 术改造方向、赶超目标以及企业现有条件进 行综合调查研究和可行性分析,制定企业产 品进展规划。 (2)由研究所提出草拟规划,经厂总师办初步审查,由总工程师组织有关部门人员进行慎密

基于plc的自动售货机程序设计

题目:基于plc的自动售货机程序设计 1 PLC的硬件组成 PLC的硬件主要由中央处理器(CPU)、存储器、输入单元、输出单元、通信接口、扩展接口、电源等几部分组成。其中,CPU是PLC的核心;输入单元/输出单元是CPU 与现场输入/输出设备之间的接口电路;通信接口用于连接编程器、上位计算机等外部设备,其硬件构成图如图1-1。 图1-1 PLC硬件结构图 2 PLC控制自动售货机的主要硬件及选型 2.2.2自动售货机I/O点的分配 输入/输出单元通常也称I/O单元或I/O模块,是PLC与工业生产现场之间的连接部件。PLC通过输入接口可以检测被控对象的各种数据,以这些数据作为PLC对被控对象进行控制的依据;同时PLC又通过输出接口将处理的结果送给被控对象,以实现控制目的。本次自动售货机I/O点的分配表如表3-1所示。 输入信号PLC地址输出信号PLC地址 找零按钮x0 找零y0 一元饮料按钮x1 咖啡出口y1 五元饮料按钮x2 汽水出口y2 十元元饮料按钮x3 汽水指示灯y3 咖啡饮料按钮x4 咖啡指示灯y4

2.2.3自动售货机的I/O接口图 此次自动售货机的I/O接口如图3-1所示,SB2-SB7是物品选择按钮,当投入货币物品绿灯亮(Q1.0-Q1.5)。按下SB2-SB7其中一个,对应的KM线圈得电,电机转动出相应的物品(Q0.1-Q0.6);当有物品售完,其行程开关断开,物品绿灯不亮并同时向总部发送物品销售完的信息;当购买物品总值低于投入总值时,可按找零按钮SB1后KM1得电,电机转动找零(Q0.0)。 图3-1自动售货机PLC控制I/O接口图 4.1.2 数学运算指令 在梯形图中,整数、双整数与浮点数的加、减、乘、除指令(见表4-2)分别执行下列运算:IN1+IN2=OUT,IN1-IN2=OUT,IN1*IN2=OUT,IN1/IN2=OUT。 在语句表中,整数、双整数与浮点数的加、减、乘、除指令分别执行下列运算:IN1+OUT=OUT,OUT-IN1=OUT,IN1*OUT=OUT,OUT/IN2=OUT。 表4-2 加减乘除指令

基于自动售货机的软件工程

面向对象分析实践大作业(40%) 下面是自动售货机系统的需求陈述,请 你: 1.编写分析和设计报告; 2.报告分需求分析、系统设计和对象设计三部分编撰,各部分应按相应的格式编写,并包含用例图、顺序图、类图、业务流程图、系统结构图等; 3.大作业的结构为: A项目需求说明 B需求分析报告 C系统设计报告 D对象设计报告 E分析设计过程说明:这部分介绍分析

和设计过程中使用了什么技术 需求陈述: 自动售货机系统是一种无人售货系统。售货时,顾客把硬币投入机器的投币口中,机器检查硬币的大小、重量、厚度及边缘类型。有效的硬币是一元币、五角币、五分币、二分币、一分币。其他货币被认为是假币。机器拒绝接受假币,并将其从退币孔退出。当机器接受了有效的硬币之后,就把硬币送入硬币储藏器中。顾客支付的货币根据硬币的面值 进行累加。 自动售货机装有货物分配器。每个货物分配器中包含零个或多个价格相同的货物。顾客通过选择货物分配器来选择货物。如果货物分配器中有货物,而且顾客支付的货币值不小于该货物的价格,货物将被分配到货物传送孔送给顾客,并将适当的零钱返还到退币孔。如果分

配器是空的,则和顾客支付的货币值相等的硬币将被送回到退币孔。如果顾客支付的货币值少于所选择的分配器中货物的价格,机器将等待顾客投进更多的货币。如果顾客决定不买所选择的货物,他投放进的货币将从退币孔中退出。 参考资料:《软件工程》张海藩清华大学出版社 2009年第一版 下面是自动售货机系统的需求陈述,试建立它的对象模型、动态模型和功能模 型: 自动售货机系统是一种无人售货系统。售货时,顾客把硬币投入机器的投币口中,机器检查硬币的大小、重量、厚度及边缘类型。有效的硬币是一元币、五角币、五分币、二分币、一分币。其他货币被认为是假币。机器拒绝接受假币,并将其从退币孔退出。当机器接受了有效的硬币之后,就把硬币送入硬币储藏

自动售货机程序

重庆科技学院 《C语言程序设计》 课程设计报告 学院:_电气与信息工程学院_ 专业班级:测控1302 学生姓名:张宇学号: 2013441294 设计地点(单位)_____重庆科技学院___ ________ __ 设计题目:_____________自动售货机系统________________ 完成日期: 2014 年 07月 04 日 指导教师评语: ______________________ _________________ __________________________________________________________________________________ __________________________________________________________________________________ 成绩(五级记分制):______ __________ 指导教师(签字):________ ________

重庆科技学院 课程设计任务书设计题目:自动售货机系统

2014年6月02日

摘要 有史以来,人类发明了无数的信息技术来扩展自身的信息交流、处理和记忆能力。然而,以1946年世界第一台电子计算机的出现为开端,信息技术开始走向一个全新的数字时代。50年多年来,计算机技术飞速发展,日新月异。人们发现起初为解决计算问题而发明的计算机用途越来越广,几乎渗透到涉及信息活动的一切领域。计算机软件的开发更是帮助到各个领域对计算机的使用,更加优化了计算机的功能。 根据本次课程设计内容及要求,完成自动售货机系统的设计。这种无人值守自动售货机贩卖价值为A、B、C的三种商品,价格分别为2元,3元和6元。顾客投入10元的纸币,然后选择购买3种商品之一,自动售货机吐出商品,并且找给用户零钱。如果商品已经卖完,或者无法找零,则给出用户一个提示,商品已售完,并且退还纸币。 在自动售货机系统中,数据的固化采用.out文件格式进行储存。 关键词:计算机自动售货机储存

自动售货机测试用例

题目: 有一个处理单价为5角钱的饮料的自动售货机软件测试用例的设计。其规格说明如下: 若投入5角钱或1元钱的硬币,押下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。 若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;若有零钱找,则显示〖零钱找完〗的红灯灭,在送出饮料的同时退还5角硬币。 1.分析这一段说明,列出原因和结果 原因: 1.售货机有零钱找 2.投入1元硬币 3.投入5角硬币 4.押下橙汁按钮 5.押下啤酒按钮 结果: 2 1."售货机〖零钱找完〗灯亮 2 2."退还1元硬币 2 3."退还5角硬币

2 4."送出橙汁饮料 2 5."送出啤酒饮料 2.画出因果图 如图所示。所有原因结点列在左边,所有结果结点列在右边。建立中间结点,表示处理的中间状态。中间结点: 1 1."投入1元硬币且押下饮料按钮 1 2."押下〖橙汁〗或〖啤酒〗的按钮 1 3."应当找5角零钱并且售货机有零钱找 1 4."钱已付清 3.转换成判定表: 4.设计测试用例 1)在售货机有零钱找的情况下,投入1元硬币,押下橙汁按钮,找回5角硬币并送出橙汁饮料。 2)在售货机有零钱找的情况下,投入1元硬币,押下啤酒按钮,找回5角硬币并送出啤酒饮料。 3)在售货机有零钱找的情况下,投入1元硬币,系统不做任何处理。

4)在售货机有零钱找的情况下,投入5角硬币,押下橙汁按钮,送出橙汁饮料。 5)在售货机有零钱找的情况下,投入5角硬币,押下啤酒按钮,送出啤酒饮料。 6)在售货机有零钱找的情况下,投入5角硬币,系统不做任何处理。 7)在售货机有零钱找的情况下,押下橙汁按钮,系统不做任何处理。 8)在售货机有零钱找的情况下,押下啤酒按钮,系统不做任何处理。 9)在售货机没有零钱找的情况下,投入1元硬币,押下橙汁按钮,售货机“零钱找完”灯亮,并退还1元硬币。 10)在售货机没有零钱找的情况下,投入1元硬币,押下啤酒按钮,售货机“零钱找完”灯亮,并退还1元硬币。 11)在售货机没有零钱找的情况下,投入1元硬币,售货机“零钱找完”灯亮。 12)在售货机没有零钱找的情况下,投入5角硬币,押下橙汁按钮,售货机“零钱找完”灯亮,并送出橙汁饮料。 13)在售货机没有零钱找的情况下,投入5角硬币,押下啤酒按钮,售货机“零钱找完”灯亮,并送出啤酒饮料。 14)在售货机没有零钱找的情况下,投入5角硬币,售货机“零钱找完”灯亮。 15)在售货机没有零钱找的情况下,押下橙汁按钮,售货机“零钱找完”灯亮。 16)在售货机没有零钱找的情况下,押下啤酒按钮,售货机“零钱找完”灯亮。

自动售货机管理程序

1引言 21世纪,我们已经进入了信息时代,计算机的使用大大方便了我们的日常生活,超市和网上购物已经不能满足我们对便利生活的要求,不能随时随地购物的缺点不能克服的。在此情况下,就需要一个程序化的自动售货机来满足人们日常生活的需求。在C语言的平台下实现,用户可以方便的进行各项购物操作。 C语言是一种程序设计语言,早在20世纪90年代,C语言表现出了强劲的生命力,C语言是一种结构化语言。它层次清晰,便于按模块化方式组织程序,易于调试和维护。C语言的表现能力和处理能力极强。它不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构。它还可以直接访问内存的物理地址,进行位一级的操作。由于C语言实现了对硬件的编程操作,因此C语言集高级语言和低级语言的功能于一体,既可用于系统软件的开发,也适合于应用软件的开发。此外,C语言还具有效率高,可移植性强等特点。因此可以广泛地移植到了各类型计算机上,从而形成了多种版本的C语言。 采用输入函数和输出函数方式,可以完成对待售物品的名称、数量、价格的输出、顾客所选物品的输入、以及其它购物信息显示。

在对自动售货机管理程序进行需求分析的过程中,需要确定系统的主要功能,对程序开发的主要目的、程序的使用领域和有关该程序开发的软硬件环境进行详细的分析。下面从系统概述、功能模块描述两个方面进行需求分析。 2.1程序概述 自动售货机管理程序是运行于Windows系统下的应用软件,主要用于对待售商品的品名、价钱、数量、生产日期、保质期、编号进行输出等操作。 2.2功能需求 自动售货机管理程序为路边的行人提供了一个随时随地进行购物的平台,给消费者提供了一个简单友好的购物窗口,功能需求如下: (1)输出模块 程序在消费者购物前将所售商品的品牌输出以供消费者选择品牌,然后将消费者选择的品牌下的商品信息输出让消费者选择所需的商品,最后输出“请你付款班级”提示消费者完成购物。 (2)输入模块 让将消费者选定的商品的编码输入程序中然后进行价格的输出,以上述的方式让消费者把购物数量输入进程序中,最后将消费者付款金额输入,进而完成找钱。 (3)返回模块 如果消费者所输入的商品编码自动售货机上没有,则程序自动跳转到商品品牌的选择,提示消费者输入正确的商品编码。并且如果消费者输入的购买数量大于库存数量,程序将自动返回到商品的数量选择界面下,还有如果消费者的付款金额小于消费金额时,程序将自动返回到付款界面。 (4)找钱模块 将消费者付款金额进行判断后,进行一定运算后按50元、20元、10元、1元的分类分别找对。 程序由上述几个模块组成,能帮助消费者以自助的方式完成所需商品的购买并且有效地减少购物时间。另外还能节省售货者的管理时间,大大的提高管理的效率。

实验04.使用基本路径测试法求解“自动售货机”问题

实验报告 实验序号:04 实验项目名称:使用基本路径测试法求解“自动售货机”问题 一、实验目的及要求 理解基本路径覆盖测试法的概念和方法; 掌握使用Eclipse+JUnit+EclEmma进行基本路径覆盖测试的方法。二、实验设备(环境)及要求 开发环境:Eclipse 及以上版本;JUnit 及以上版本;文本编辑软件。 硬件要求:CPU PIV 以上,256M 内存,1G 硬盘空间。 系统要求:Windows98/Me/XP/NT/2000,IE 5 以上。 三、实验内容步骤 1.下载并安装Eclipse+JUnit+EclEmma实验环境; 2.通读自动售货机程序,并在Eclipse环境下运行该程序; 3.使用基本路径测试法设计测试用例,完成以下表格; 编号输入值 Type 输入值 money 状态预期输出实际情 况 001Beer5C各资 源剩 余Input Information Type: Beer; Money: 5 Cents; Change: 0 Current State Beer: 5 Orange Juice: 6 5 Cents: 7 1 Dollar: 6 002Orange Juice 5C各资 源剩 余 Input Information Type: OrangeJuice; Money: 5 Cents; Change: 0 Current State Beer: 6

Orange Juice: 5 5 Cents: 7 1 Dollar: 6 003Beer1D没有 啤酒Failure Information Beer Shortage 步骤: 1、解压eclemma软件包,并放到eclipse安装目录的dropins文件夹下: 2、重新启动eclipse软件,菜单栏会出现新的图标: 3、查看Windows的Customize perspective项中的Command Groups Availabiity 多了Coverage 项: 4、编写待测试类文件和测试Junit Test Case文件:

简单自动售货机VerilogHDL程序

自动售货机VerilogHDL程序 一个简单的自动售卖饮料机的程序。该机器具有投币,显示余额,购买六种饮料,退钱等功能,为了更具实用性,增添了饮料选择允许提示和投币允许提示的功能。具体形容,可投入一元、五元、十元和二十元面值的钱币,显示出当前的余额,并根据当前的余额提示能购买哪些饮料,选择某种饮料,则输出选定的饮料,同时余额减去相应的金钱。若选择退钱,机器就退出所有的钱,余额清零。 下图为功能示意图: 程序的状态表:

程序中包含了一个状态机,定义了一个任务(task)和函数(function),用该任务调用了该函数,使用若干分支语句,详见附后源程序和测试程序。 附上程序编译仿真图:

源程序如下: `define one 3'b001 `define five 3'b010 `define ten 3'b011 `define twenty 3'b100 module automart(money,state,moneyout,coinable,adrkable,bdrkable, cdrkable,drkout1,drkout2,drkout3,drkout4,drkout5, drkout6,coin,clk,reset,moneyback,choice1,choice2, choice3,choice4,choice5,choice6); input[2:0] coin;//投币输入,分为1、5、10、20元四种输入 input clk,reset,moneyback,choice1,choice2,choice3,choice4, choice5,choice6;//moneyback为退钱输入,choice1~6是饮料选择output moneyout,coinable,adrkable,bdrkable,cdrkable,drkout1, drkout2,drkout3,drkout4,drkout5,drkout6; //依次为退钱输出,投币许可提示,饮料选择许可,6种饮料输出output[2:0] state;//状态记录 output[7:0] money;//余额显示 reg[7:0] money; reg[2:0] state; reg moneyout,coinable,backable,adrkable,bdrkable,cdrkable; parameter A=3'b000, B=3'b001, C=3'b010,D=3'b011, E=4'b100; assign drkout1=choice1&adrkable;

新产品开发工作流程

新产品开发工作流程1.流程工作内容

2.流程具体实施要求 新产品的开发流程根据以下几个阶段来考虑完善(顾客有明确要求的汽车主机厂整车付新产品开发执行APQP程序): 顾客要求评审(合同评审) 2.1.1顾客要求评审的输入有三种: 1)顾客新要求,评审依据:《顾客要求评审表》; 2)产品变更要求,评审依据:《产品变更通知单》; 3)顾客确认不合格,评审依据:《新产品开发样品顾客确认通知单》。 2.1.2顾客要求评审的输出有三种: 1)顾客要求明确,公司有能力达到,纳入开发计划; 2)顾客要求不明确,需进一步沟通后纳入开发计划; 3)顾客要求明确,但公司没有能力达到,暂不纳入开发计划。 2.1.3技术部是新产品开发顾客要求评审(合同评审)的组织者。评审的模式及时间节点:销售部将《顾客要求评审表》或《产品变更通知单》《新产品开发样品顾客确认通知单》传递给技术部 1)简单产品(比如单口型挤出、单件产品、不涉及外协加工等),技术部根据以往经验和当前公司能力初步判定能否满足顾客要求;如无法独自判定,则组织生产、供应和相关人员进行评审确定。能够开发的项目,技术部进行产品工艺分析,确定原材料、工艺流程和技术文件完成时间并编制《新产品开发计划》交生产部及责任车间评审开发各阶段的完成时间。

技术部根据开发计划的评审时间确定产品交付时间,填写完成《顾客要求评审表》或《产品变更通知单》。最终将单据交回销售部。销售部将经过审批的单据分发到相关部门。如果进行开发,技术部据此组织开发计划实施。 时间节点,技术部自接单时刻计算,两个工作日完成(当日下班前一小时的接单计入次日)。特殊情况,技术部在接到销售部单据两个工作小时内销售部提出延长评审时间的要求,销售部同意或请示上级领导同意后,按同意的时间节点完成。 2)复杂项目或整车付产品项目的开发,技术部组织相关技术人员、供应部、生产部、质保部和生产车间召开项目开发评审策划专题会议,对开发项目进行评审策划,将最终结果填写在《产品开发项目评审记录表》与《项目开发评审策划书》上,形成评审结论。 根据评审结论,《顾客要求评审表》要求的相关部门填写完成此单据,在规定的时间前返回销售部。如果进行开发,技术部据此编制开发计划和技术文件。 时间节点,技术部自接单时刻计算,五至七个工作日完成(当日下班前一小时的接单计入次日)。特殊情况,技术部在接到销售部单据两个工作小时内销售部提出延长评审时间的要求,销售部同意或请示上级领导同意后,按同意的时间节点完成。 编制新产品开发计划 2.2.1新产品开发计划的输入有四种: 1)《顾客要求评审表》; 2)《产品变更通知单》; 3)《质量问题反馈单》中涉及到需要进行产品开发(完善)的相关措施; 4)经过顾客确认上次开发样品不合格的《新产品开发样品顾客确认通知单》。 2.2.2新产品开发计划的输出:项目负责人编制新产品开发试制技术文件和开发计划的实施。 2.2.3新产品开发计划的编制 技术部根据上述“输入”编制新产品开发计划。 1)对于前述第1种评审模式确定的开发计划的编制 技术开发部确定开发计划中的具体工艺流程项目,根据顾客要求数量(主要是根或套),由技术部在开发计划中增加相应的余量(余量的目的是为了留样和车间的损耗,从而保证最终入库的数量满足顾客要求)。采用x+x的格式,例如顾客数量要求5套,开发计划上可能是5+5套,后者的+5为挤出车间的余量,故挤出车间要按10套进行生产。材料数量由技术部在开发计划上注明实际用量和种类,由生产部根据生产情况进行适应的调整。由生产部组织相关责任车间评审各阶段的具体实施和完成时间,相关责任车间负责人分别在《新产品开发计划》签字,《新产品开发计划》经技术部负责人(或其代理人)批准后下发到生产部和相关责任车间。 2)对于前述第2种评审模式确定的开发计划的编制 技术部根据《项目开发评审策划书》直接编制《新产品开发计划》经技术部负责人(或其代理人)批准后下发到生产部和相关责任车间。 编制新产品试制技术文件

自动售货机控制系统的设计最终版

精品文档 课程设计任务书 PLC控制系统设计设计题目:饮料自动售货机 学院:机械工程学院 机械测控专业: 班级: 姓名: 组员: 指导老师:

精品文档 摘要】【本文介绍了自动售货机的基本原理以及工作流程,然后以一 次交易过程为例,把交易过程分为几个程序块,然后分别对程序块进行编程。具体说明了可编程序控制器在自动售货机中的作用。程序涉及到了自动售货机工作的绝大部分过程。利用PLC控制的自动售货机提高了系统的稳定性,保证自动售货机能够长期稳定运行。 关键词:自动售货机;可编程序控制器;梯形图 Abstract:This paper introduces the basic principles of vending machines, as well as workflow, and then to a transaction process as an example, the transaction process is divided into several block, and then the block were programmed. Specify the PLC in the role of vending machines. Procedures related to the work of the vast majority of vending machine process. PLC control of the use of vending machines enhance the stability of the system to ensure that vending machines capable of long-term stable operation.

c语言自动售货机实验报告

课程设计 课程名称C语言高级程序设计学院xxx 小组成员1 XXX 小组成员2 XXX 小组成员3 XXX 任课教师XXX 2016——2017学年第1学期

一.所选题目与要求 自动售货机 问题情景: 分析学校教学楼自动售货机的功能,设计一个自动售货系统。 功能要求: 1.系统能提供所售商品的清单(编号,名称,单价,数量) 2.客户输入商品编号及购买数量,系统显示应付的金额,输入客户实付的钱数,系统计算应找的钱数系统如果没有足够的库存或零钱时,现实应返还客户已付的金额。(不考虑用支付宝付款的情况) 3.可增加商品种类,增加商品库存,查询商品库存,查询商品销售量及销售额。 成果要求: 通过网络教学平台中的“研究型教学”建立分组,每组2-3人,通过小组讨论,确定每人的分工,并确定系统设计方案。 各小组成员在网络教学平台上进行讨论、并完成最终的报告,整个过程作为小组及个人工作评价的重要依据。 各小组成员根据系统设计方案分模块进行编程,在系统各模块编码完成后集成调试,并最终完成整个系统的测试。 根据下面的报告模板完成综合实验总结报告,并打印成纸质报告,作为大作业课程结束时上交。 附:综合实验总结报告应包含的内容: 1. 系统功能说明 2. 程序结构 程序结构说明 重要数据说明 函数清单 /* 每个函数的书写格式 */ 函数名:所在文件名 函数功能

参数说明 算法描述或程序代码 3. 系统运行结果 4. 系统设计难点及其解决方法 5. 不足之处 6. 人员分工说明 二.问题分析及算法设计 主函数 void main() //主函数模块 { do{ system("pause"); show(); //显示屏幕函数,商品清单 loop1:printf("现在你有%.1f元\n你可以选择商品序号开始选购或按0 退出\n",M); input(); //输入函数 if(M-goods[n-1].price>v) {t=0;printf("对不起,售货机没有足够的零钱了\n谢谢光临!退还%.1f元\n",M);break;} //判断售货机是否有足够的零钱,0表无if(n==0){ //确认用户是选择离开还是买东西开始购买 t=1; change(M);} //找零函数 else { loop2:sell(n,M,1,1); //购买函数 if(A==0)//货没有了怎么办 input(); //输入函数………………………………………………………………………..

自动售货机系统源代码

#include #include #include #include "goods.h" bool GetCharge(int Sum,int Money); void Getsmalcharge(int Money,int *ChargeNum); int KouLing(); char ChooseJieMian(); char SaleCenter(); void loadGoodsFromFile(Goods* gs); char ManageCenter(); void KunCun(); void Sale(); void ShangJia(); void TongJiFun(); Goods goods[3]; TongJi tj[3]; void init(){ for(int i = 0; i < 3; ++i){ tj[i].jrxl = 0; tj[i].jrzje = 0; } } void main() { //初始化 init(); int op = 0; //读取商品信息 loadGoodsFromFile(goods); char c = ChooseJieMian(); while(true) { system("cls"); if( c == '1'){ c = SaleCenter(); }else if(c == '2'){ op = KouLing(); if(op == 1){ //进入管理界面 c = ManageCenter();

//system("pause"); } else if(op == 0){ //进去销售界面 c = SaleCenter(); } } } } //---------------------------------------------------- /** * @return 1销售界面2管理界面 */ char SaleCenter() { char state='N'; int Sum=0; char Pro = 'd'; // printf("\n********************************\n"); while(true) { state='N'; Sum=0; while(!(Pro == 'c' || Pro == 'a' || Pro == 'b' || Pro == 'q')) { system("cls"); printf("\n\t*******************************************"); printf("\n\t*********顾客您好,请选择商品**************\n"); printf("\n\t·a·商品%s ·b·商品%s ·c·商品%s ·q·管理\n",goods[0].name,goods[1].name,goods[2].name); printf("\n\t -%d- -%d- -%d- (单位:件)",goods[0].totalCount,goods[1].totalCount,goods[2].totalCount); printf("\n\t*******************************************\n\t\t"); Pro = getchar(); } if(Pro == 'q') break; switch(Pro) {

基于自动售货机的软件工程(精)

面向对象分析实践大作业(40% 下面是自动售货机系统的需求陈述,请你: 1. 编写分析和设计报告; 2. 报告分需求分析、系统设计和对象设计三部分编撰, 各部分应按相应的格式编写,并包含用例图、顺序图、类图、业务流程图、系统结构图等; 3. 大作业的结构为: A 项目需求说明 B 需求分析报告 C 系统设计报告 D 对象设计报告 E 分析设计过程说明:这部分介绍分析 和设计过程中使用了什么技术 需求陈述: 自动售货机系统是一种无人售货系统。售货时,顾客把硬币投入机器的投币口中,机器检查硬币的大小、重量、厚度及边缘类型。有效的硬币是一元币、五角币、五分币、二分币、一分币。其他货币被认为是假币。机器拒绝接受假币, 并将其从退币孔退出。当机器接受了有效的硬币之后,就把硬币送入硬币储藏器中。顾客支付的货币根据硬币的面值进行累加。 自动售货机装有货物分配器。每个货物分配器中包含零个或多个价格相同的货物。顾客通过选择货物分配器来选择货物。如果货物分配器中有货物,而且顾客

支付的货币值不小于该货物的价格, 货物将被分配到货物传送孔送给顾客, 并将适当的零钱返还到退币孔。如果分 配器是空的,则和顾客支付的货币值相等的硬币将被送回到退币孔。如果顾客支付的货币值少于所选择的分配器中货物的价格,机器将等待顾客投进更多的货币。如果顾客决定不买所选择的货物, 他投放进的货币将从退币孔中退出。 参考资料:《软件工程》张海藩清华大学出版社 2009年第一版 下面是自动售货机系统的需求陈述,试建立它的对象模型、动态模型和功能模型: 自动售货机系统是一种无人售货系统。售货时,顾客把硬币投入机器的投币口中,机器检查硬币的大小、重量、厚度及边缘类型。有效的硬币是一元币、五角币、五分币、二分币、一分币。其他货币被认为是假币。机器拒绝接受假币, 并将其从退币孔退出。当机器接受了有效的硬币之后,就把硬币送入硬币储藏 器中。顾客支付的货币根据硬币的面值进行累加。 自动售货机装有货物分配器。每个货物分配器中包含零个或多个价格相同的货物。顾客通过选择货物分配器来选择货物。如果货物分配器中有货物,而且顾客支付的货币值不小于该货物的价格, 货物将被分配到货物传送孔送给顾客, 并将适当的零钱返还到退币孔。如果分配器是空的,则和顾客支付的货币值相等的硬币将被送回到退币孔。如果顾客支付的货币值少于所选择的分配器中货物的价格,机器将等待顾客投进更多的货币。如果顾客决定不买所选择的货物, 他投放进的货币将从退币孔中退出。 参考资料:《软件工程》张海藩清华大学出版社 2009年第一版 面向对象的分析 面向对象分析方法的核心思想是利用面向对象概念和方法为软件需求构造一组相关模型(对象模型,动态模型和功能模型 ,来获得关于问题域的全面认识。

测试用例设计—自动售货机因果图分析

测试用例设计—自动售货机因果图分析 命题 设计了一个自动售货机软件测试用例,用于处理单价为50美分的饮料。规格如下:如果你放入50美分或1元硬币,并按下按钮[橙汁]或[啤酒],相应的饮料将交付如果自动售货机没有零钱,红灯将显示[零钱已经被换了],然后在放入1元硬币并按下按钮后,饮料将不会被递送,并且1元硬币将退出。如果有零钱,显示“换出”的红灯将熄灭,50美分将在饮料交付时返还。 分析 根据这个命题,我们可以分析自动售货机业务中存在5个条件和5个结果。条件如下: 1。自动售货机有零钱。投入1元硬币3。投入50美分硬币4。按下橙汁按钮5。按下啤酒按钮结果: 1。自动售货机[换出]灯亮着。当自动售货机没有变化时,会出现红灯 2。当硬币投入1元并且自动售货机没有零钱时,返还1元硬币。3.当硬币投入1元时,返还50美分。当自动售货机4有变化时。发送橙汁饮料5。发送啤酒饮料 因果图-绘制条件和结果 有变化红灯亮1元1元50美分,啤酒50美分,橙汁 因果图-绘制简单关系

在绘制空白条件和结果后,我们可以标记 1为主题中最直接和最简单的因果条件。条件“有变化”和结果“红灯亮”之间的关系是“没有”。当“有零钱”时,红灯不亮,而当自动售货机“没有零钱”时,红灯必须亮。 2年,有条件的“投1元”和有条件的“投50分”是一种“E”关系。这两个动作不能同时发生,即1元钱和50美分(不能同时发生);但是,我们允许“没有1元钱”和“没有50美分”(同时可能是假的) 3,“啤酒选择”条件和“橙汁选择”条件为“e”关系,这两个动作不能同时发生,即“啤酒选择”和“橙汁选择”(不能同时为真);但是我们允许“不喝啤酒”和“不喝橙汁”(这可能同时是错误的) 4,条件“啤酒选择”和条件“橙汁选择”相当于程序处理过程,即价格和系统处理方法都是相同的 ,因此这两个条件可以组合成一个中间节点此外,在两个条件之间使用“或”的关系 5。请注意,有条件的“1元”和有条件的“50美分”不是等价关系。从表面上看,他们都是“钱”,这似乎是相似的。然而,程序的处理是完全不同的。在“50美分”(因为标题规定所有商品都是50美分)之后,完全没有必要判断当前的自动售货机是否有任何变化,但是“1元”不是 有小变化,红灯亮,1元E投50美分选择商品,1元找50美分选择啤酒E选择橙汁V给啤酒给橙汁

自动售货机C++程序设计

#include using namespace std; class Shop{ public : void shop(); float money(); float choose(); void out(); void con(); int a,b,c,d,v; }; void Shop::out(){ cout<<"该商品已售完\n\t\t1、购买其他商品\n\t\t2、退出"<>money; //输入 if (money!=0.5&&money!=1&&money!=2&&money!=5&&money!=10) {cout<<"请投入可接受面额!"<

cout<<"已投入金额: "<>a; switch(a){ case 1:{ if(f<=0){ out(); cin>>v; if(v==1){ shop(); continue; } if (v==2)exit(-1);} if(sum>=2) {f--;}change=sum-2; }break; case 2:{ if(g<0){ out(); cin>>v; if(v==1){ shop(); continue; } if (v==2)exit(-1); } if(sum>=2) {g--;}change=sum-2; }break; case 3:{ if(h<0){ out(); cin>>v; if(v==1){ shop(); continue;}

软件工程 自动售货机

软件工程 信息学院 08级通信工程二班罗运俊 200800120134 作业题:面向对象分析实践 下面是自动售货机系统的需求陈述,试建立它的对象模型、动态模型和功能模型: 自动售货机系统是一种无人售货系统。售货时,顾客把硬币投入机器的投币口中,机器检查硬币的大小、重量、厚度及边缘类型。有效的硬币是一元币、五角币、五分币、二分币、一分币。其他货币被认为是假币。机器拒绝接受假币,并将其从退币孔退出。当机器接受了有效的硬币之后,就把硬币送入硬币储藏器中。顾客支付的货币根据硬币的面值进行累加。自动售货机装有货物分配器。每个货物分配器中包含零个或多个价格相同的货物。顾客通过选择货物分配器来选择货物。如果货物分配器中有货物,而且顾客支付的货币值不小于该货物的价格,货物将被分配到货物传送孔送给顾客,并将适当的零钱返还到退币孔。如果分配器是空的,则和顾客支付的货币值相等的硬币将被送回到退币孔。如果顾客支付的货币值少于所选择的分配器中货物的价格,机器将等待顾客投进更多的货币。如果顾客决定不买所选择的货物,他投放进的货币将从退币孔中退出。 参考资料:《软件工程》张海藩清华大学出版社2009年第一版 面向对象的分析 面向对象分析方法的核心思想是利用面向对象概念和方法为软件需求构造一组相关模型(对象模型,动态模型和功能模型),来获得关于问题域的全面认识。 这三个模型从不同的角度对系统进行描述,其中:对象模型描述了系统静态的、结构化的数据性质;动态模型描述了系统顺势的、行为化的控制性质;功能模型描述了变化的系统的功能性质。这三个模型都涉及到数据。控制和操作等共同的概念,但每种模型描述的侧重有所不同。它们各自以不同侧面反应系统的实质内容,综合起来则全面反映了目标系统的需求。 对象模型是三个模型中最关键的。它的作用是描述系统的静态结构,包括构成系

相关文档
相关文档 最新文档