饮料自动售货机系统设计说明书
自动售货机的设计

黑龙江科技学院课程设计任务书一、设计题目:自动售货机的设计二、设计的主要内容:自动售货机只出售1元、1元5 角、和2元三种饮料,机器有一个投币孔,能识别1 元、5角、1角三种硬币,且每次只能投一个币,每次只售出一瓶饮料。
机器能计算投币总额,看是否超过、正好或者少于饮料的价格,并发出饮料、找零和欠资信号等。
设有reset键,方便管理员管理。
指导教师:日期:教师评语:评阅成绩:评阅人:日期:摘要随着社会的发展,越来越多方便人们的东西出现在了这个世界上,自动售货机就是其中之一。
自动售货机的新奇、文明、高档、灵活方便等深受广大市民青睐。
为此,本文设计了一个自动售货机系统,有以下一些功能:自动售货机只出售1元、1元5角、和2元三种饮料,机器有一个投币孔,能识别1 元、5角、1角三种硬币,且每次只能投一个币,每次只售出一瓶饮料。
机器能计算投币总额,看是否超过、正好或者少于饮料的价格,并发出饮料、找零和欠资信号等。
设有reset键,方便管理员管理。
关键词:自动售货机、功能、管理。
第1章自动售货机系统的概述1.1 自动售货机的历史、现状、前景从自动售货机的发展趋势来看,它的出现是由于劳动密集型的产业构造向技术密集型社会转变的产物。
大量生产、大量消费以及消费模式和销售环境的变化,要求出现新的流通渠道;而相对的超市、百货购物中心等新的流通渠道的产生,人工费用也不断上升;再加上场地的局限性以及购物的便利性等这些因素的制约,无人自动售货机作为一种必须的机器便应运而生了。
从广义来讲投入硬币、纸币、信用卡等后便可以销售商品的机械,从狭义来讲就是自动销售商品的机械。
从供给的条件看,自动售货机可以充分补充人力资源的不足,适应消费环境和消费模式的变化,24小时无人售货的系统可以更省力,运营时需要的资本少、面积小,有吸引人们购买好奇心的自身性能,可以很好地解决人工费用上升的问题等各项优点。
现在,自动售货机产业正在走向信息化并进一步实现合理化。
基于PLC的饮料自动售货机控制系统设计

基于PLC的饮料自动售货机控制系统设计本文将介绍一种基于PLC的饮料自动售货机控制系统设计方案,该方案可实现准确的货品计数、货币识别和交易记录等功能,提高了自动售货机业务的竞争力和利润。
一、设备概述饮料自动售货机是一种非常便捷的自助购物设备,安装在各种公共场所,如办公室、学校、车站和商场等。
该设备使用PLC控制技术,实现自动售卖饮料、咖啡和小食品等功能,并提供货品计数、货币识别、交易记录和库存管理等功能。
二、控制系统设计该系统的控制器采用PLC(可编程逻辑控制器)控制器,用于控制饮料自动售货机的各种功能。
PLC控制器由以下部分组成:1. 控制器:PLC控制器是控制系统的核心部分,它控制整个系统的操作,并收集货币和交易数据。
2. 电源:电源用于为PLC控制器提供电力,以保证系统可靠运行。
3. 输入设备:控制器使用输入设备接收并处理客户的指令,如按键和扫描枪等。
4. 输出设备:输出设备用于向客户传递信息,如显示屏、取货口和货币输入口等。
5. 传感器:传感器用来检测货品状态(如库存量和货品位置),并向PLC控制器发送信息。
6. 交易控制器:交易控制器用于处理货品交易,包括货币识别、验钞、找零、交易记录等功能。
7. 库存控制器:库存控制器用于管理货品库存,包括货物加减和盘点等功能。
三、系统工作原理当客户选择购买饮料时,他们选择希望购买的饮料和货币的面额。
顾客付款后,控制器通过交易控制器检测货币面额,然后使用标准计算公式计算找零。
客户选择的饮料被送入取货口,同时控制器通过传感器更新库存状态。
交易数据还收集到控制器和用于报告的记录器。
四、优点和特点PLC控制的饮料自动售货机相对于传统的自动售货机具有多种优势和特点。
以下是一些优点:1. 提高效率:自动售货机减少了客户购物时浪费的时间,特别是在繁忙的班次和场所。
2. 准确性:PLC控制器可准确地识别货币和交易记录,避免了误差和交易纠纷。
3. 节省成本:自动售货机自动化操作,减少了人力成本和人力资源。
自动饮料售物机控制系统的设计

包括识别用户投币、选择饮料、取货等步骤,以及 如何处理用户取消操作或退款等异常情况。
03
自动饮料售物机应提供友好的人机界面,使用户能 够快速、方便地完成购买过程。
支付处理逻辑
01
支付处理逻辑是指自动饮料售物机如何处理用户的支付请求。
02
包括与支付系统对接、验证支付信息、处理支付成功或失败的
情况等步骤。
自动饮料售物机控 制系统的设计
目录
• 系统概述 • 硬件设计 • 软件设计 • 控制逻辑设计 • 安全设计 • 测试与调试
01
CATALOGUE
系统概述
设计目标
实现自动化售卖
保证商品质量
通过自动饮料售物机控制系统,能够 实现24小时无人值守的饮料售卖服务 ,提高售卖效率,降低人工成本。
系统应确保所售卖的饮料质量,防止 过期或劣质商品的销售,保障消费者 权益。
自动饮料售物机应支持多种支付方式,如现金、银行卡、移动
03
支付等,以满足不同用户的需求。
补货逻辑
1
补货逻辑是指自动饮料售物机如何进行补货和库 存管理。
2
包括监测库存量、自动下单、补货提醒等步骤, 以确保自动饮料售物机的正常运营。
3
自动饮料售物机应具备智能库存管理功能,以实 现快速、准确的补货和库存控制。
06
CATALOGUE
测试与调试
功能测试
功能测试
确保自动饮料售物机控制系统能够完成预设的功能, 如投币、出货、找零等。
异常处理测试
测试系统在异常情况下的表现,如投币后不出货、找 零错误等。
兼容性测试
测试系统在不同型号、品牌或配置的自动饮料售物机 上的兼容性。
压力测试
基于PLC的饮料自动售货机系统设计课件

名称 代 输出 号 编号
1角投票光 ST I0.1 汽水指示 HL Q0.0
电开关 1
灯
1
5角投票光 ST I0.2 橙汁指示 HL Q0.1
电开关 2
灯
2
1元投票光 ST I0.3 放汽水电 YV Q0.2
电开关 3
磁阀
1
汽水按钮 SB I0.4 放橙汁电 YV Q0.3
1
磁阀
2
饮料自动售货机系统
投入一角、五角、一元硬币时,I0.1、I0.2.I0.3闭合,产生脉冲输 入给M0.1、M0.2.M0.3
饮料自动售货机系统
( 五 ) 、饮料自动售货机系统程序设计
M0.1闭合时, 就将MW10中的数据和MW20中的数据相加并存入 MW20中。同理M0.2 闭合时, 就将MW12中的数据和MW20中的 数据相加并存入MW20中;M0.3闭合时, 就将MW14中的数据和 MW20中的数据相加并存入MW20中.
(四)、饮料自动售货机系统PLC控制接线 图:
饮料自动售货机系统
(四)、饮料自动售货机系统PLC控制接线 图:
饮料自动售货机系统
( 五 ) 、饮料自动售货机系统程序设计
上电初始化,此时将一、五、十分别存入到寄存器M10、M12. M14中。
饮料自动售货机系统
( 五 ) 、饮料自动售货机系统程序设计
饮料自动售货机系统
( 五 ) 、饮料自动售货机系统程序设计
汽水按钮和橙汁按钮, T0和T1为8S定时器.I0.4闭合, 汽水电磁 阀打开, 放出汽水; 同理, I0.5闭合, 橙汁电磁阀打开, 放出橙汁 。
饮料自动售货机系统
( 五 ) 、饮料自动售货机系统程序设计
自动饮料售货机系统设计及实现课程设计 精品

广东职业技术学院课程设计报告书课程名称:数据库系统设计设计题目:自动饮料售货机系统设计及实现系别:信息工程系摘要 (3)概要设计 (3)◆顾客模块 (3)1、顾客购买管理功能模块 (3)2、饮料供应管理 (3)◆普通管理员模块 (3)1、商品管理 (3)2、零钱补充管理 (3)3、商品补充管理 (3)4、取现管理 (4)5、销售记录管理 (4)6、售货机管理 (4)◆系统管理员管理 (4)◆E-R图 (4)各实体属性: (4)1、顾客模块 (5)2、普通管理员模块 (6)◆数据库表 (8)1、 (8)详细设计 (12)◆主界面——顾客专区 (12)◆查看价格管理 (14)◆管理员登录管理 (15)◆普通管理员主界面 (17)◆商品管理 (18)◆售货机管理 (19)◆销售记录 (20)◆各饮料销售情况汇总 (21)◆系统管理员主界面 (22)◆普通管理员管理 (23)◆系统管理员管理 (26)◆销售额汇总 (29)◆取现记录 (29)◆零钱补充记录 (30)◆商品补充记录 (31)◆普通管理员登陆记录 (33)◆系统管理员登陆记录 (34)程序设计总结 (35)◆开发过程的归纳和总结 (35)归纳: (35)总结: (35)◆所遇到的技术难点及解决办法 (35)致谢 (35)摘要自动售货机是一种可以给顾客选择商品而且不需要实际的人员操作的一种销售模式,顾客可以根据自动售货机上的商品最大限度的选择自己所需的商品。
顾客可以投入金额选择商品,然后自动售货机对其做出相应的判断,最后售出商品。
自动售货机分顾客模块、普通管理员模块和系统管理员模块。
顾客模块完成饮料的销售,管理员模块实现补充饮料、零钱,取现和统计分析等功能自动售货机分顾客需求管理、饮料供应系统管理、零钱供应系统管理、售货机管理、管理员管理、取现管理、销售记录管理等主要功能模块。
关键词:自动售货,顾客选择,自动找零概要设计◆顾客模块1、顾客购买管理功能模块当顾客投入其实际金额,机器显示货币金额,接下来顾客选择要购买的饮料,如果投币金额足够并且所购买的饮料存在,则提示用户在出口处取走饮料,同时找零.如果货币金额不足,则提示信息,如果所购饮料已经售完,显示售完信息。
饮料自动售货机系统设计说明书

饮料自动售货机系统设计摘要:设计一个饮料机,实现计算应找钱数,找币,以及销售量统计等多种功能。
1.引言自动售货机像磁卡、银行柜员机一样,以方便、新颖、文明、昼夜效劳等特点,成为兴旺国家不可缺少的便民配套设施。
如今的自动售货机可以为顾客提供多种效劳。
顾客可以根据自己的需要选择商品并投入钱币,售货机接收钱币,售出商品。
2.问题描述该设计模拟自动售货机的工作原理和方式,完成出售商品、接收钱币、找零钱等功能。
与系统交涉的人有两类:送货员和顾客。
送货员在每周固定时间查看售货机中的饮料数量和钱币数量情况,并根据方案适当添加饮料。
同时,送货员也可以根据需要通过重新初始化增加饮料的种类,或修改饮料的价格。
顾客根据需要选择饮料,投入钱币,并等待售货机的响应。
售货机〔所设计的系统〕所做的响应:如果售货机中没有该种饮料,则退回上一步,交易失败。
否则,如果售货机中有该种饮料,则判断顾客所投钱币是否足够,如果不够,则提示顾客交易失败,并退回上一步。
如果顾客所投的钱币够所购置的饮料,则售出饮料并询问是否继续购置。
如果不需购置则进展找币,返回初始界面。
当然,实际生活中的售货机可能有更加强大的功能和更完善的处理,这里只模拟一个售货机系统,所以只实现其核心原理,并练习和提高分析问题能力和编程能力。
问题模型如下图3.数据构造设计3.1类构造体说明采用了<iostream.h>和<string.h>建立了一个饮料机类class ylj{public:ylj(){count=0;}ylj(string a,double b){name=a;price=b;count=0;}void disp();void goumai();void gm();int count;string name;double price;int stock;};Count为销售量计数器,name为饮料名称,price为饮料价格,stock为饮料存货量。
基于PLC的饮料_自动售货机控制系统方案设计书

漯河职业技术学院基于PLC自动售货机设计学院漯河职业技术学院系部机电工程系专业机电一体化班级10机电四班学生姓名雷豪强学号2010010304009指导老师赵艳平完成日期2013/3/24漯河职业技术学院2013届毕业设计任务书一、课题名称:基于PLC自动售货机设计二、指导教师:陈艳平三、设计内容与要求1、课题概述:本课题采用三菱FX2N系列PLC对饮料饮料自动售货机控制系统进行设计,首先对饮料饮料自动售货机结构进行简单介绍,然后根据系统的设计要求对饮料自动售货机控制系统、检测系统进行分析,给出饮料自动售货机控制系统的总体设计思路,并通过I/O列表、I/O接线图、梯形图、指令表等对其控制系统进行了程序设计,控制程序经上机调试运行,其结果基本符合要求。
2、设计内容与要求:1)简单介绍饮料自动售货机结构;2)分析饮料自动售货机的控制系统、检测系统,确定其控制系统的总体设计思路;3)采用FX2N系列PLC作为饮料自动售货机控制PLC,正确选取PLC型号,设计出其控制程序。
4)控制程序上机调试。
5)所设计的饮料自动售货机控制程序,应符合饮料自动售货机运行规则。
如饮料自动售货机收到识币信号后,自动进行累计、外部金额显示、顾客按键后自动推出商品和发出退币找零等信号的电控系统。
6)设计说明书要有硬件原理连接图,I/O分配图,程序梯形图、指令表及相应的说明。
要求文字流畅,图形清晰,便于阅读。
有条件的设计方案要求在实验室验证其正确性。
目录摘要 (6)第1章任务与要求...................................................................................................................... ,81.1课题概述 (8)1.2 设计内容与要求 (8)1.3 FX2N-32MR产品说明 (8)第2章引言 (10)2.1研究背景 (10)2.2论文研究目标和意义 (12)第3章方案论证与设计 (14)3.1 总体设计分析 (14)3.2 方案的选择与设计 (14)3.2.1 继电控制 (14)3.2.2 单片机控制 (15)3.2.3 PLC控制 (15)3.3 方案确定 (16)第4 章自动售货机的PLC控制系统设计 (17)4.1 硬件电路设计 (17)4.1.1硬件系统组成 (17)4.1.2 电气设备的选择 (17)4.2 软件设计 (19)4.2.1 自动售货机控制要求 (19)4.2.2 控制流程图 (20)4.2.3 I/O分配表 (21)4.2.4 硬件接线图 (22)4.2.5程序设计 (23)第5章系统调试 (27)5.1 调试设备 (27)5.2 调试步骤 (27)第6章心得体会(致谢) (29)参考文献 (30)附表一:梯形图 (31)摘要在今天的工业生产中,可编程逻辑控制器(PLC)已经成为实现工业自动化的关键。
《基于PLC触摸屏自动饮料售卖机的控制系统设计任务书1000字》

主
要
工
作
内
容
设计一套基于PLC的自动饮料售卖机的控制系统的设计过程和成品仿真,讲解了自动售卖机的发展背景、发展现状与发展前景。介绍了主控制器的型号选择原因及其优点,程序编写环境以及模拟环境。以自助售货机实际工作流程以及特点,讲解总体的设计思路以及设计方法。以三菱FN2X-48MR型PLC为主控制器,基于三菱GX Works2编程软件为环境,以分模块设计的思路,完成自助售货机所要完成的基本功能对程序进行设计,包括了投币程序、货物选择和供给程序、钱币找补程序三个大模块。并且将完整程序模拟在触摸屏模拟软件上,对各种功能的开发完成度进行模拟仿真,根据模拟仿真的具体情况对程序修改及完善。
(3)将饮料自动售卖机内可供消费的饮料种类定为四种,分别为矿泉水(二元)、可乐(三元)、脉动(五元)、咖啡(十元)。即以不找零为前提,更多的余额可以有更多种购买方案(10→10=5+5=5+3+2=3+3+2+2)。
因设计的主题为程序设计以及模拟,为了能更好得将各个功能做到更直观的可视化,将部分功能的运行添加指示灯的程序输出。
最后一次修改并定稿,准备论文答辩。
论
文
进
度
安
排
起止时间
工作内容
开始选题,在实践中与指导老师商讨,确定毕业论文题目及写作方向
通过查询资料并结合写作方向,完成论文开题报告
完成论文初稿,期间在图书馆及网上查阅并参考了大量相关资料
完成论文初稿第一次修改。根据指导老师针对文章论点、论据的阐述以及论文逻辑性等方面问题提出的修改意见进行修改
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
饮料自动售货机系统设计摘要:设计一个饮料机,实现计算应找钱数,找币,以及销售量统计等多种功能。
1. 引言自动售货机像磁卡电话、银行柜员机一样,以方便、新颖、文明、昼夜服务等特点,成为发达国家不可缺少的便民配套设施。
如今的自动售货机可以为顾客提供多种服务。
顾客可以根据自己的需要选择商品并投入钱币,售货机接收钱币,售出商品。
2. 问题描述该设计模拟自动售货机的工作原理和方式,完成出售商品、接收钱币、找零钱等功能。
与系统交涉的人有两类:送货员和顾客。
送货员在每周固定时间查看售货机中的饮料数量和钱币数量情况,并根据计划适当添加饮料。
同时,送货员也可以根据需要通过重新初始化增加饮料的种类, 或修改饮料的价格。
顾客根据需要选择饮料,投入钱币,并等待售货机的响应。
售货机(所设计的系统)所做的响应:如果售货机中没有该种饮料,则退回上一步,交易失败。
否则,如果售货机中有该种饮料,则判断顾客所投钱币是否足够,如果不够,则提示顾客交易失败,并退回上一步。
如果顾客所投的钱币够所购买的饮料,则售出饮料并询问是否继续购买。
如果不需购买则进行找币,返回初始界面。
当然,实际生活中的售货机可能有更加强大的功能和更完善的处理,这里只模拟一个售货机系统,所以只实现其核心原理,并练习和提高分析问题能力和编程能力。
问题模型如图所示3. 数据结构设计3.1 类结构体说明采用了<iostream.h> 和<string.h> 建立了一个饮料机类class ylj {public:ylj(){count=0;}ylj(string a,double b){name=a;price=b;count=0;}void disp();void goumai();void gm();int count;string name;double price;int stock;};Count 为销售量计数器,name为饮料名称,price 为饮料价格,stock 为饮料存货量3.2 函数说明disp() 函数用于输出对象。
goumai(); 函数用于购买时的统计。
gm(); 函数用于当购买失败时的返回处理。
zhaobi(int a) 用于对元的找币。
zhaobj(int a) 用于对角的找币。
4. 算法设计#include<iostream>#include<string>using namespace std;double sum;#define password 123456class ylj{public: ylj(){count=0;}ylj(string a,double b){name=a;price=b;count=0;}void disp();void goumai();void gm();int count;string name;double price;int stock;};void ylj::disp() // 输出函数{cout<<" 饮料:"<<name<<" 价格"<<price<<"存货量"<<stock<<endl;}void zhaobi(int a) // 找币函数(元){int b,c;cout<<" 找币为"<<endl;b=a/50;c=a%50;if(b)cout<<b<<" 张五十元"<<endl;b=c/20;c=c%20;if(b)cout<<b<<" 张二十元"<<endl;b=c/10;c=c%10;if(b)cout<<b<<" 张十元"<<endl;b=c/5;c=c%5;if(b)cout<<b<<" 张五元"<<endl;cout<<c<<" 张一元"<<endl;}void zhaobij(int a) // 找币函数(角){int b,c;b=a/5;c=a%5;if(b)cout<<b<<" 枚五角"<<endl; cout<<c<<" 枚一角"<<endl; void ylj::goumai() // 购买函数{sum+=price;count++;stock--;}void ylj::gm() // 购买失败函数{sum-=price;count--;stock++;}void main() // 主函数{int pw,i,n,choice,c,xz,x,xx,pd,yuan,b,jiao;double money=0;choice=0;xz=0;pd=0;ylj *a; // 定义饮料机对象数组cout<<" 进行饮料机初始化,请输入有几种饮料"<<endl;cin>>n; a=new ylj[n]; // 分配空间for(i=0;i<n;i++) // 对饮料机进行初始化{cout<<" 请输入第"<<i+1<<" 种饮料名称"<<endl; cin>>a[i].name;cout<<" 请输入第"<<i+1<<" 种饮料价格"<<endl; cin>>a[i].price;cout<<" 请输入第"<<i+1<<" 种饮料现有量"<<endl; cin>>a[i].stock;if(i==(n-1))cout<<" 输入完毕"<<endl;}cout<<" 目前已有饮料明细为"<<endl;for(i=0;i<n;i++)a[i].disp();while(x!=3) // 界面系统{cout<<" 请选择您的身份:进货员 ----- 1 顾客2 如果要终止系统请按3"<<endl;cin>>x;switch(x){case 1: // 进货员系统cout<<" 请输入密码"<<endl; // 密码判断cin>>pw;if(pw==password){while(xx!=3){cout<<" 目前已有饮料明细为"<<endl;for(i=0;i<n;i++)a[i].disp();cout<<" 请输入要进行的操作:1 --------------- 查询销售统计2--- 补货3--- 返回上一级"<<endl;cin>>xx;switch(xx){case 1:for (i=0;i<n;i++)cout<<a[i].name<<" 售出"<<a[i].count<<" 瓶"<<endl;break;case 2:for (i=0;i<n;i++){cout<<a[i].name<<" 补货多少瓶"<<endl;cin>>b;a[i].stock+=b;}break;case 3:break;}}break;}else cout<<" 密码错误"<<endl;break;case 2:while(xz!=4) // 顾客系统{cout<<" 目前已有饮料明细为"<<endl;for(i=0;i<n;i++)a[i].disp();cout<<" 当前饮料机中共有余额"<<money<<endl;cout<<" 请输入要进行的操作: 1 购买2--- 找币3--- 查询销售统计4 ----- 退出系统"<<endl;cin>>xz;switch(xz)case 1:cout<<" 是否已投币是---1 ,否---2"<<endl;cin>>pd;if(pd==2){cout<<" 请投币"<<endl;cin>>money;} while(choice<1||choice>n){cout<<" 请选择购买第几种饮料"<<endl;cin>>choice;if(choice<1||choice>n)cout<<" 输入错误,请重新输入"<<endl;}c=choice-1;cout<<" 您所购买的是"<<endl;a[c].disp();a[c].goumai();money-=a[c].price;if(money<0){cout<<" 钱不够啦买不起,请继续投币"<<endl;money+=a[c].price;a[c].gm();}else if(a[c].stock<0){cout<<" 抱歉没货啦请选择别的饮料"<<endl;money+=a[c].price;a[c].gm();}choice=0;break;case 2:cout<<" 应找"<<money<<"元"<<endl;yuan=money;jiao=(money-yuan)*10;zhaobi(yuan);zhaobij(jiao);money=0;break;case 3:for (i=0;i<n;i++)cout<<a[i].name<<" 售出"<<a[i].count<<"瓶"<<endl;cout<<" 总计销售额为"<<sum<<"元"<<endl;case 4:break;}}break;case 3:break;}5. 程序运行的结果5.1 饮料机初始化5.2 身份选择5.2.1 顾客界面5.2.2 进货员界面6 实现技术讨论运用了类进行饮料的存储。