自动售货机软件设计.docx

上传人:b****6 文档编号:12843344 上传时间:2023-06-08 格式:DOCX 页数:39 大小:1.12MB
下载 相关 举报
自动售货机软件设计.docx_第1页
第1页 / 共39页
自动售货机软件设计.docx_第2页
第2页 / 共39页
自动售货机软件设计.docx_第3页
第3页 / 共39页
自动售货机软件设计.docx_第4页
第4页 / 共39页
自动售货机软件设计.docx_第5页
第5页 / 共39页
自动售货机软件设计.docx_第6页
第6页 / 共39页
自动售货机软件设计.docx_第7页
第7页 / 共39页
自动售货机软件设计.docx_第8页
第8页 / 共39页
自动售货机软件设计.docx_第9页
第9页 / 共39页
自动售货机软件设计.docx_第10页
第10页 / 共39页
自动售货机软件设计.docx_第11页
第11页 / 共39页
自动售货机软件设计.docx_第12页
第12页 / 共39页
自动售货机软件设计.docx_第13页
第13页 / 共39页
自动售货机软件设计.docx_第14页
第14页 / 共39页
自动售货机软件设计.docx_第15页
第15页 / 共39页
自动售货机软件设计.docx_第16页
第16页 / 共39页
自动售货机软件设计.docx_第17页
第17页 / 共39页
自动售货机软件设计.docx_第18页
第18页 / 共39页
自动售货机软件设计.docx_第19页
第19页 / 共39页
自动售货机软件设计.docx_第20页
第20页 / 共39页
亲,该文档总共39页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

自动售货机软件设计.docx

《自动售货机软件设计.docx》由会员分享,可在线阅读,更多相关《自动售货机软件设计.docx(39页珍藏版)》请在冰点文库上搜索。

自动售货机软件设计.docx

自动售货机软件设计

摘要

随着经济水平的提高,人们开始追求灵活、方便、快捷以及自助式服务,这使得自动售货机得以迅猛的发展。

自动售货机吸引了大量的顾客,人们可以利用自动售货机购买饮料,零食等商品。

在发达国家,自动售货机已经成为零售业不可分割的一部分,这种前卫的消费方式吸引了众多客户。

并且,针对地球暖化,新型自动售货机的开发致力于能源的节省。

本论文涉及到自动化、节能和计算机软件的开发,该软件可以更加方便的应用在自动售货机中。

本文对用Java语言设计自动售货机进行了系统的研究,利用Java语言实现自动售货机的硬币识别,币值累加,自动售货,自动找钱功能。

该软件的程序代码具有灵活性和可扩展性,它可以重复使用,而且当整个系统实施一些新的特点时,对现有代码的影响较小。

关键词:

自动售货机;Java设计模式;J2SE

Abstract

Withtheimprovementofeconomiclevel,peoplebegantopursueaflexible,convenient,efficient,andself-service.Akindofmachinewhichiscalledvendingmachineemergesandattractsquantitiesofcustomerstouseittobuydrinks,snacksandsimilarproducts.Indevelopedcountries,thevendingmachinehasbecomeanintegralpartoftheretailindustry,thisavant-gardewayofconsumptionattractedmanycustomers.And,inviewofglobalwarming,newdevelopmentofvendingmachineiscommittedtoenergysaving.Thispaperinvolvestheautomation,energyefficiencyandcomputersoftwaredevelopment,whichcanbemoreconvenientapplicationinthevendingmachine.

Thisthesis hasa systemic study ofthedesignofvendingmachineintheJavalanguage.Thesystemcanachievethefunctionssuchascoinrecognition, currencyaccumulate,vendingmachines,automaticallychangebyusingJavalanguage.Thesoftwareprogramcodehastheflexibilityandextensibility,so itcanberepeateduse,andwhentheentiresystemtoimplementsomenewcharacteristics,therewillbelessimpactonexistingcode.

Keywords:

VendingMachine;JavaDesignPatterns;J2SE

第1章概述

1.1研究的背景和意义

自动售货机是一种全新的商业零售形式。

20世纪70年代自日本和欧美发展起来。

它又被称为24小时营业的微型超市。

在日本,70%的罐装饮料是通过自动售货机售出的;全球著名饮料商可口可乐公司在全世界就布有50万台饮料自动售货机[1]。

在中国,售货机从1999年开始进入中国市场。

如今,在机场、地铁、商场、公园等客流量较大的场所也不难发现自动售货机的身影。

从自动售货机的发展趋势来看,它的出现是由劳动密集型的产业构造向技术密集型社会转变的产物。

大量生产、大量消费以及消费模式和销售环境的变化要求出现新的流通渠道;而相对的超市、百货购物中心等新的流通渠道的产生,人工费用也不短上升;再加上场地的局限性以及购物的便利性等因素的制约,无人自动售货机作为一种必须的机器便应运而生了。

自动售货机可以充分补充人力资源的不足,适应消费环境和消费模式的变化,24小时无人售货的系统可以更省力,运营时需要的资本少、面积小,有吸引人们购买好奇心的自身性能,可以很好地解决人工费用上升的问题等各项优点。

自动售货机解放了人力,方便了生活,创造了效益,方便广大的市民。

实践和直觉告诉我们,自动售货机在中国的横空出世,必将为国内的食品、香烟、饮料等诸多行业带来新的契机,中国的现代文明又将以自动售货机的应用和普及开创一个新的时代。

所以设计自动售货机是非常必要的。

1.2自动售货机产业的现状

首先,我们来看一下发达国家的现状。

日本:

各种自动售货机保有量超过600万台,平均20人一台,世界普及率第一。

1990年通过自动售货机实现的销售额已达到5兆日元(约3000亿人民币)。

美国:

总的机器保有量大致和日本相当,2000年通过自动售货机实现的销售额达到250亿美元,其中OCS(OfficeCoffeeService)的销售额排第六位。

韩国:

自动售货机的使用历史要远短于其它发达国家,仅有25年,据2001年的统计,总保有量已超过80万台。

在2001年韩国生产的自动售货机中OCS占32.7%,排第一位,咖啡自动售货机占18.1%,排第三位,仅次于18.6%的充电自动售货机。

瓶罐饮料自动售货机和复合型自动售货机(同机销售瓶罐饮料和热咖啡)都仅占8.6%,并列第四位。

下面,我们来看一下我国的现状[2]。

自动售货机在我国的安放和使用,也已经有10多年的时间,但一直没有全面普及。

中国自1993年开始从日、韩等国引进自动售货机并投放中国市场。

1995年第一台国产自动售货机在北京诞生。

1999年国产自动售货机形成规模生产并批量投放市场。

相对于日本、美国等发达国家,中国目前市场运营的自动售货机数量还很少。

至2000年初,中国自动售货机研发、制造和运营的企业有10多家,天津南开戈德集团规模最大。

在自动售货机运营商方面,主要是由制造企业的关联或下属企业运营,如戈德集团的戈德移动商务公司、澳珂玛集团的澳鸿自动商务公司等,中国目前还没有产生独立的运营商。

自动售货机这种全新的零售方式已逐渐被国人所接受和信赖。

随着我国商品市场的不断繁荣和城市现代化程度的不断提高,自动售货机也已悄然步入了我国的大中城市。

自动售货机在北京、上海、大连、沈阳、西安开始出现,成为不少年轻人时髦的购物选择。

在国家相关政府部门的大力支持下,中国的自动售货机产业以超常规的速度迅猛发展,并带动了一批新的服务业、物流运输配送业的快速发展,丰富了中国的商业产业结构,开创了一个全新的自动销售和自助服务的时代[3]。

1.3本论文主要研究的内容

本论文主要研究用Java语言进行自动售货机控制系统软件部分的设计,即自动售货机的主控制系统。

可以实现硬币识别,币值累加,自动售货,自动找零的功能。

该设计提高了自动售货机的可靠性和执行效率,且系统维护容易,维修简单,有一定的市场推广价值。

本论文的主要研究工作如下:

第1章,概述。

简要介绍了本次毕业设计的背景,阐述了自动售货机的产业现状,介绍研究本课题的目的、意义和内容。

第2章,Java语言介绍。

主要介绍了Java语言的特点及其发展历程。

第三章,系统环境概述。

介绍了本设计的硬件系统环境及其软件系统环境。

第四章,环境搭建的介绍。

主要讲解如何运行Java程序。

第五章,利用Java语言进行详细设计。

包括总体结构设计与性能分析,主要操作的流程图,具体详细设计以及功能实现。

并介绍了本设计的两个创新点。

最后是总结,对本次的研究工作作出总结,阐明研究出的一些规律,说明了本次工作的重难点。

第2章Java语言介绍

2.1Java语言的特点

Java是1995年6月有Sun公司引进到这个世界的革命性的编程语言,它被美国的著名杂志《PCMagazine》评为1995年十大优秀科技产品。

之所以称Java为革命性编程语言,是因为传统的软件往往与具体的实现环境有关,一旦环境有所变化就需要对软件进行一番改动,耗时费力,而Java编写的软件能在执行码上兼容。

这样,只要计算机提供了Java解释器,Java编写的软件就能在其上运行[4]。

自从1946年世界上第一台电子计算机问世以来,计算模式的发展经历了三个阶段:

集中计算模式、分散计算模式和网络计算模式。

Internet的出现,为在网络计算模式下的科学计算和信息处理提供了良好平台。

然而,要充分利用网络计算模式的功能与效益,平台的运行环境是个制约因素,而Java语言和Java技术则是解决这一问题的最佳途径。

Java语言具有以下特点:

1、Java语言是简单的。

Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java。

另一方面,Java丢弃了C++中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。

特别地,Java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。

2、Java语言是一个面向对象的。

Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制。

Java语言全面支持动态绑定,而C++语言只对虚函数使用动态绑定。

总之,Java语言是一个纯的面向对象程序设计语言。

3、Java语言是分布式的。

Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口,它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。

Java的RMI机制也是开发分布式应用的重要手段。

4、Java语言是健壮的。

Java的强类型机制、异常处理、废料的自动收集等是Java程序健壮性的重要保证。

对指针的丢弃是Java的明智选择。

Java的安全检查机制使得Java更具健壮性。

5、Java语言是安全的。

Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。

除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制,如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制让Java应用设置安全哨兵。

6、Java语言是体系结构中立的。

Java程序在Java平台上被编译为体系结构中立的字节码格式,然后可以在实现这个Java平台的任何系统中运行。

这种途径适合于异构的网络环境和软件的分发。

7、Java语言是可移植的。

这种可移植性来源于体系结构中立性,另外,Java还严格规定了各个基本数据类型的长度。

Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSIC实现的。

8、Java语言是解释型的。

如前所述,Java程序在Java平台上被编译为字节码格式,然后可以在实现这个Java平台的任何系统中运行。

在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。

9、Java是高性能的。

与那些解释型的高级脚本语言相比,Java的确是高性能的。

事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C++。

10、Java语言是多线程的。

在Java中,线程是一种特殊的对象,它必须由Thread类或其子类来创建。

通常有两种方法来创建线程:

其一,使用型构为Thread(Runnable)的构造子将一个实现了Runnable接口的对象包装成一个线程,其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象,即为线程。

Thread类已经实现了Runnable接口,因此,任何线程均有它的run方法,而run方法中包含了线程要运行的代码。

线程的活动由一组方法来控制。

Java语言支持多个线程的同时执行,并提供多线程之间的同步机制。

11、Java语言是动态的。

Java语言的设计目标之一是适应于动态变化的环境。

Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。

这也有利于软件的升级。

另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查[5]。

  

2.2Java的发展

Java自正式问世以来已经历了数年的历程,其发展极快。

一年一度在美国旧金山召开的世界JavaOne语言开发者大会(JavaOneDeveloperConference)盛况空前正说明了这一点。

四年中每年的JavaOne大会,既是了解Java最新技术动态、应用成果和下一步发展趋势的最好场所,又是推动下一年Java快速发展的重要动力。

首届JavaOne大会于1996年召开,各届简况如下:

1996年5月29-31日,第一届,出席会议者6500余人,来自工业界的超过一半。

有人评价说:

“这是近年计算机界最光辉的一次盛会”。

工业界相当看好Java语言,认为它的使用将会引起一场软件革命:

从软件的设计风格、设计方法、设计目标到设计过程,都会产生彻底的变革,“甚至会改变此星球的生活方式”。

1997年,第二届,出席会议者10000人。

Java的追随者不断增加,应用开发迅速起步。

1998年3月24-27日,第三届,出席会议者14000余人,注册门票售价1195美元,否则1395美元,即使如此,仍有不少人不惜工本,挤入会场。

本次会议除了软件巨头微软未参加会议外,几乎所有的计算机公司都参加了。

展厅内设300多个展台,先后举行了90场专题讨论会,每场参加的人数从千人至五六千人不等。

会议的主题是:

通过Java的培训来带动Java软件的开发和技术研究,从而发展生产力,获取高额利润,提高生活质量,推动信息产业的进步。

会议展出的内容大致如下:

Java开发工具软件,如:

JMF、JDK、SymantecVisualCafe、JavaDynamicManagementKit、JFC、JNDI、JavaStudio等;

企业信息管理解决方案软件,如:

EJB;

基于Java技术的信息家电,如:

机顶盒、Java电话等;

个人信息综合服务、社会信息综合查询亭;

电子商务软件、智能卡、JavaCardAPI等;

网络计算环境下的Java服务器软件、远程方法调用、基于Java技术的移动计算设备;

JMS用于出版、票据订阅的软件;

JOS、基于Java技术的NC和JavaStation。

随着Internet的飞速发展,企业计算模式正摒弃C/S结构而采用Web-Browser结构,此即瘦客户端/胖服务器、大容量数据库的3层或N层体系结构。

由于Java的特点,使得它在开发服务器端的应用程序方面有着得天独厚的优势,面向服务器端的J2EE为当今逐渐流行的N层体系结构提供了一个标准的Java计算平台:

界面一致、工具简易、丰富、Web页面互联便捷,从而能大大加速和简化各种应用系统的开发。

Java语言的出现和发展,得到了IT业界的青睐,它像一面大旗,凝聚了世界众多的厂商与Sun公司一道,结成了对抗微软垄断的联盟。

许多知名厂商纷纷购买Java许可证,目前已有90多万个软件开发商加入了Java阵营,1亿个Java最终用户,几千种Java应用软件产品,1500余种Java书籍。

IBM公司提出“高举Java大旗,全力以赴”的口号,它在全世界的11个国家有28个实验室,集聚了2500余名技术人员,全天侯24小时进行全方位开发;芯片巨人Intel提出“抓住时机,占领Java阵地”决心使Intel芯片系统成为开发Java应用运行的最佳平台;Novell则宣称“Java是Novell的未来,未来是服务器端Java的市场”;作为Java发明者的Sun公司,坚持“保卫Java大旗,发展Java之路”的方针,从而占领市场。

此外,HP、Oracle、Apple、Sybase、Netscape、Informix、3Com、Motorola等公司均是Sun的坚强同盟。

在中国,Java的开发可以说是“人才济济,成果累累”。

如清华大学王克宏教授带领的课题组面向全国,自96年开始举办了多期Java培训班和讲座,开设了数期本科生、研究生Java课程,出版了“Java系列丛书”10余册,承担了国家“九五”攻关项目“基于Java技术的交互式远程教学系统”,并与日本就Java开发进行了国际合作,成绩斐然;东大阿派下属的宝钢东软软件技术研究中心是国内是首屈一指的Java研发骨干企业,该中心从95年起就开始了Java的研发,目前,已掌握了PersonalJava的核心移植技术,并成功地将JVM移植到汽车导航平台。

此外,他们还开发出支持Jini协议的即插即用网络打印机软件,以及一套Jini信息家电网络的可视化演示环境,完成了基于JavaBeans的组件化软件开发及运行支持环境等多项成果;在台湾,22家知名计算机公司成立了“Java联盟”,并在台北建立了“Java开发中心”,新竹建立了“Java语言实验室”;在香港,举行了全岛Java杯比赛,掀起了学习Java的热潮。

Java的浪潮汹涌澎湃,席卷全球。

Java发展至今日,已不仅仅是一种编程语言,实际上已形成了一门技术。

其内容包括:

1、Java软件包

Java语言及其编程技术、JavaOS、Java开发环境与工具、Java语言的各种软件包、数据库接口JDBC等。

2、Java虚拟机及其规范

3、Java嵌入技术

1999年8月2日,Sun公司宣布名为MAJC的专门为Java语言设计的的芯片优化研制成功,欲与Intel试比高低。

该芯片在设计时采用了模块式高性能计算引擎,实质为一种芯片级并行处理机,能以更有效的方式分解计算任务,特别适合处理多媒体数据。

Sun公司希望通过MAJC芯片的发布催生出一个基于Java语言的微处理器家族,与Intel公司竞争。

设想中的Java处理器将应用在从低价消费电子产品到高端因特网服务器领域。

4、Java计算

基于Java技术的企业Internet/Intranet信息系统以及其他应用系统。

5、Jini技术

1999年初正式发布后,立刻得到业界的广泛支持。

Jini的出现为Java网络连接提供了公共标准,使得任何Java设备都可以连入网络中被自动识别,并可充分利用网络上已有的各种资源。

它把网络上的各类设备(包括消费类电子设备如移动电话、PDA、DTV、HPC、NC、游戏机、电冰箱、智能卡等等)和各种软件组合成一个单一、动态的分布式系统,使网络更易于操纵、易于管理,具有更高的可配置性。

Jini将使网络具有自发性,它的出现大大扩展了“计算”和“计算机”的含义,极大地简化了网络操作,对家庭用户来说,使用网上设备即插即用,就像使用电话一样方便。

Java和Jini不仅可以不依赖于Windows为代表的操作系统,而且引导着信息产业的潮流,使Sun公司能在未来的、非PC类电子产品的数字化市场中强占制高点。

6、Jiro平台

异质网络环境中安装的存储系统的多样性和分布性,给存储管理带来了巨大的挑战。

用户和开发人员都希望能有一种技术,能更好地促进企业存储管理方案的开发。

而Jiro平台正是解决此问题的革命性方案。

Jiro平台实现了Java和Jini技术,它是一个便于用户管理异质网络上由各种服务器、存储和设备组成的混合环境的开放式存储管理平台。

它对操作系统是中立的。

Jiro为跨异质存储局域网(SAN)的管理服务和设备提供了一个开放平台,允许服务器、存储和联网设备在异质网络环境中无缝地协同工作。

Jiro平台为开发者带来的好处有:

允许开发者利用各种实现管理存储网络的目标功能创建应用;提供了一个可以在各种应用、服务和设备之间交互操作的组件模型;允许设备易被增加、删除;允许应用或服务被自动更新。

1999年7月,Sun发布了正式的Jiro规范草案,供公众讨论、修改。

目前,Jiro平台的团体成员已超过25家,支持Jiro平台的厂商超过300家。

有眼光的厂商纷纷加入到这些组行列,从而加快了Jiro的发展[6]。

2.3本章小结

本章介绍了Java语言。

从Java语言的特点及其Java语言的发展历程进行介绍。

 

第3章开发环境概述

3.1系统硬件环境概述

自动售货机是集光、机、电一体化的独立机构,它只需要顾客投币和按键购物选择即可自动售货及退钱找零,其工作程序如下图所示:

 

图3-1自动售货机工作时序图

自动售货机的工作原理是:

首先,从投币口送入货币,然后通过传感器采集数据、识别器判断货币的真伪并判别面值。

然后,识别器把信息数据传送给通信模块。

通信模块与售货机的主控制系统通信,主控系统显示面值,启动售货机的面板键,显示出哪个货道有货,哪个货道已经售完,并等待顾客选择商品。

顾客选择商品后,售货机自动把商品送出,等待顾客取走。

在交易过程中,如果金额足够多,顾客可以将找回的零钱取回,完成交易;如果款额不足,则不能进行交易。

下面结合图3-2对本自动售货机做进一步描述:

如图3-2示,这种具备商品信息和健康建议功能的自动售货机包括机身1、商品收容室2、货物传送装置、中央处理器,机身1上有商品取出口3、货币投入口4,商品收容器、货物传送装置、中央处理器均设置在机身内,从货币投入口4投入货币后,如需找零,剩余的货币从退币口5退出,购买的商品从商品取出口3传送出来;机身1上还设置有商品健康信息触摸显示器6,商品健康信息触摸显示器6连接中央处理器,中央处理器连接商品健康信息存储器。

商品健康信息触摸显示器6设置在货币投入口4的上面。

图3-2自动售货机

图3-3是自动售货机的硬件原理图,如图所示,人们在通过触摸的方式操作商品健康信息触摸显示器6后,商品健康信息触摸显示器6会将此信息传送给中央处理器,中央处理器从商品健康信息存储器中查找到相关信息后,从商品健康信息触摸显示器6显示出来,供人们查阅。

图3-3硬件原理图

综上所述,自动售货机控制系统可以分为三部分组成,即自动售货机的主控制系统、通讯系统、硬币及纸币识别系统。

其中主控制系统是本设计的研究重点。

下面将着重介绍。

3.2系统软件环境概述

本设计是利用Java语言设计的,下面将分别介绍本系统的运行平台及运行环境。

目前Java运行平台主要分为下列3个版本。

1、J2SE:

称为Java标准版或Java标准平台。

J2SE提供了标准的SDK开发平台(以前称为JDK开发平台)。

利用该平台可以开发Java桌面应用程序和低端的服务器应用程序,也可以开发JavaApplet程序。

2、J2EE:

称为Java企业版或Java企业平台。

使用J2EE可以构建企业级的服务器应用程序,J2EE平台包含了J2SE平台,并增加了附加类库,以便支持目录管理、交易管理和企业级消息处理等功能。

3、J2ME:

称为Java微型版或Java小型平台。

J2ME是一种很小的Java运行环境,用于嵌入式的消费产品中,如移动电话、掌上电脑或其它无线设备等。

本系统的运行平台是J2SE。

同时,本系统的运行环境是Java7。

Java7具有以下特性:

首先,Java7采用了模块的划分方式来提速,一些不是必须的模块并没有下载和安装,因此在使用全新的Java7的虚拟机的时候会发现真的很快,当虚拟机需要用到某些功能的时候,再下载和启用相应的模块,这样使

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2