资源描述
中文摘要摘要地铁在解决我国因为城市化和信息化迅猛发展而带来的城市轨道交通拥塞问 题上起到了关键的作用,而地铁采用了自动售检票系统(AFC)取代传统的人工 售票来提高地铁的效率,并且自动售检票系统还是地铁信息化和自主化的重要标 志。自动售票机(TVM)作为自动售检票系统中必不可缺的关键设备之一,其主 要是为乘客提供一个简单、友好、并且易操作的界面来指引乘客自主快速的购买 相关有效票。在国家大力支持下地铁事业也得到快速的发展,与此同时自动售票 机的需求也日益增长,自动售票机中的系统在结合了当地的实际情况和特点下,才能够把自动售票机的功能和效率充分发挥完全。因此研究和开发可靠并简单易 用的自动售票机终端软件系统具有十分重要的现实意义。本文以深圳地铁自动售票机终端软件系统项目作为研究背景,对自动售检票 系统和自动售票机的国内外现状进行了详细的调查与研究。本文主要完成以下工 作:系统选取Windows Embedded Standard 7(WES7)嵌入式系统作为运行环境,采用面向对象C+语言在Visual Studio 2013平台下进行系统开发。对地铁自动售票机终端软件系统进行详细分析,确定了 Mercury架构作为 本系统的系统架构。对该系统进行分层设计,主要包括界面层,业务层,硬件层,公共模块层,并对每一层进行详细的设计与实现。对系统的接口和界面进行了详细设计。接口主要包括用户接口,外部接口,内部接口;界面王要有乘客界面和维护界面。在系统与其他设备进行消息传递过程中使用了消息中间件技术;人机界面 设计中采用了 Adobe Flash/Flex技术;数据库设计中采用了轻型嵌入式数据库 SQLite数据库。本系统进行一系列相关的测试,确保系统能够符合相关的需求和可靠、稳 定并持续运行,同时还能够指出本系统有待改进的不足之处,作为下一个版本更 新升级的意见。关键词:自动售检票系统(AFC),自动售票机(TVM),自动售票机终端软件系 统I重庆大学硕士学位论文英文摘要ABSTRACTThe subway has played a key role in solving the problem of urban rail transit congestion caused by the rapid development of urbanization and informatization.The MTR has adopted the Automatic Fare Collection system(AFC)to replace the traditional artificial ticket to improve the efficiency of the subway,and Automatic Fare Collection system is an important symbol of subway information and autonomy.Ticket Vending Machines(TVM)is one of the essential equipment in the Automatic Fare Collection system.It is mainly for the passengers to provide an interface,which is simple,friendly,and easy to operate,guiding the passengers to quickly and independently purchase the relevant valid votes.With the strong support of the country,the subway business has also been developed rapidly,at the same time,the demand for Ticket Vending Machines is also growing.Only combined with the local situation and characteristics,the Ticket Vending Machines system can be able to fully exert the functions and efficiency of itself.Therefore,it is great practical significance to study and develop a reliable and easy-to-use terminal software system for subway Ticket Vending Machine.Taking the terminal software system for Shenzhen subway Ticket Vending Machine project as a research background,this paper makes a detailed investigation and research on the domestic and foreign research status of Automatic Fare Collection system and Ticket Vending Machines.This article mainly completes the following work:The system selected Windows Embedded Standard 7(WES7)embedded system as the operating environment,and adopted the use of object-oriented C+language in the Visual Studio 2013 platform for system development.(DAfter the terminal software system for subway Ticket Vending Machine has been analyzed thoroughly,the Mercury architecture is determined as the system architecture.The system has been hierarchically design,including the interface layer,business layer,hardware layer,the public module layer,and each layer were designed and implemented in detail.The system interface and interface were designed in detail.Interface mainly includes user interface,external interface,and internal interface.The interface are mainly passenger interface and maintenance interface.The system uses the active messenger technology during the message ill重庆大学硕士学位论文transmission process with other equipment,and uses the Adobe Flash/Flex technology in human-machine interface design,and uses a lightweight embedded database SQLite database in the database design.The system conducts a series of related tests to ensure that the system can meet the relevant needs and operate reliably,stably and continuously,meanwhile,it also can point out the insufficiency of system which can be improved as the updated advice for the next version.Keywords:Automatic Fare Collection System(AFC),Ticket Vending Machines(TVM),Terminal Software System for Subway Ticket Vending MachineIV目录目录 I英文摘要.HI1绪论.11.1 研究背景.11.1.1 自动售检票系统国内外研究现状.21.1.2 自动售票系统国内外研究现状.31.2 论文的意义.41.3 论文主要研究内容与结构.52地铁自动售票机与相关技术简介.72.2 地铁自动售票机概述.82.3 地铁自动售票机终端软件系统开发相关技术.102.3.1 SQLite 数据库.102.3.2 Adobe Flash/Flex 人机交互技术.122.3.3 消息中间件技术.132.4 本章小结.143地铁自动售票机终端软件系统分析与设计.153.1 系统需求分析.153.2 系统软件架构.203.2.1 网络结构.203.2.2 系统架构.213.2.3 系统分层设计.223.3 系统开发环境.243.3.1 开发语言.243.3.2 开发平台.253.3.3 工控机环境.253.4 接口设计.263.4.1 用户接口.263.4.2 外部接口.263.4.3 内部接口.27V重庆大学硕士学位论文3.5 界面总体设计.283.5.1 乘客界面.293.5.2 维护界面.303.6 本章小结.314地铁自动售票机终端软件系统实现.334.1 程序结构说明.334.2 业务层设计与实现.344.2.1 程序结构图及说明.344.2.2 业务层流程.374.3 界面层设计与实现.424.3.1 乘客界面.444.3.2 维护界面.484.4 硬件层设计与实现.514.5 公共模块层设计与实现.554.5.1 日志模块.554.5.2 运营模式模块.554.6 本章小结.575地铁自动售票机终端软件系统测试.595.1 系统测试环境.595.2 系统测试.615.2.1 系统功能测试.615.2.2 系统性能测试.645.3 系统测试结果与分析.655.4 本章小结.656总结与展望.676.1 总结.676.2 工作展望.68致 谢.69参考文献.71附 录.73VI1绪论1绪论随着现代社会的进步、城市化进程的加剧、人口的日益增长,城市交通的压 力也变得越来越巨大。在出行客流量急剧增长的同时,人们对出行的要求也在逐 渐提高,对此城市交通拥挤已然成为了一个急需解决的大问题。此时城市轨道交 通地铁在缓解这个问题上显得尤为重要,它不仅可以解决交通拥挤问题而且还让 城市更加现代化,信息化。自动售票检票系统(Auto Fare Collection,AFC),是集 计算机技术、信息收集和处理技术、机械制造于一体的自动化售票、检票系统以 及自动收费、自动统计,具有很强的智能化功能山。自1967年起,其取代了传统 的人工售票应用在地铁领域中,使得地铁在客流量日益增长的情况下,还能够快 速的出售和检验有效票。作为自动售检票系统必不可少的一个终端设备自动售票 机(Ticket Vending Machines,TVM),其主要负责的是供给乘客们自主的购买地 铁的有效票。随着国家大力的建设地铁,自动售检票系统和自动售票机的需求都 在日益的增长,我国对该方面的研究比国际上一些发达国家起步的晚,相关技术 还有待提高,因此自动售检票系统和自动售票机需求的增加是对我国的一个巨大 挑战。1.1 研究背景在早期无论在国际上还是我国对于处理用户购买各种有效票(火车票、高铁 票、地铁票、电影票等),主要是通过人工售票的方式。现如今城市化的进程加快,人口数量也积极上升,人工售票的方式在客流量巨大压力的环境下,工作效率和 准确度均相应的逐渐下降,更严重甚至影响其运行。为了解决人工售票暴露出来 的一系列问题,研发出自动售票机技术。在使用了自动售票机之后,能够很好的 解决了用户可以快速购买有效票的问题。现在自动售票机已经在火车站,高铁站 和地铁等领域得到了大量的运用。在地铁方面上,继1969年北京地铁建成通车之后,国内的地铁事业发展迅速。据中国轨道交通网上统计,2015年末,我国中国大陆地区25个城市开通运营轨道 交通线路,总里程3286公里,设车站2257座;在2016年末,我国中国大陆地区 共29个城市开通运营轨道交通线路,总里程3849公里,设车站2630座。同比 与2015年,2016年增加了总里程数563公里和车站373座。地铁为每个车站配置 4到14台自动售票机作为相应设施,所以现在我国大约有10520至36820台自动 售票机在地铁上运作。同时地铁发展趋势正处于上升阶段,全国各地都在兴建地 铁,所以自动售票机的需求还会持续上升。1重庆大学硕士学位论文深圳作为一个城市化和信息化的代表,据深圳地铁官方网站上的统计,地铁 事业在1999年开始并且截止于2016年尾的17年内,总共兴建地铁八条线,总运 营里程是285km,拥有车站199座,运营里程位列于全国第四位,日均客运量350 多万人次。在现有的199座车站中,根据每个车站的客流实际情况,地铁为每个 车站配置4到14台自动售票机作为相应设施。在深圳大概平均每个车站有10台,故现在大概有1990台在地铁上运营,因此可以得出自动售票机在深圳地铁领域中 有很大的需求。同时深圳市在未来对地铁事业的投资也会不断,更多的线路将会 出现在深圳这片土地上。所以自动售票机的需求将会持续上升,发展的前景也非 常的可观。1.1.1 自动售检票系统国内外研究现状地铁在解决城市轨道交通拥挤的问题发挥着至关重要的作用,在1863年第一 条地铁诞生之后,地铁事业得到了迅速发展。但是由于城市化进程的加剧和社会 的快速发展,使得人口逐渐的增多,地铁在客流量增多后快速售票、验票和管理 等方面均出现了问题。在地铁发展了 100多年后的1967年,国际上在加拿大的蒙 特利尔市出现了第一套轨道交通的自动售检票系统。继第一套自动售检票系统 出现后,各国对其进行改进。如:1974年,美国旧金城市地铁票务系统(BART)中首先使用上了电子钱包的收费系统;1982年,中国香港的地铁票务系统(MTRC)率先于其他国家采用了可循环的磁票卡;1993年,香港在接触式IC卡出现后把所 有的地铁磁卡换成了接触式IC卡等。在非接触式IC卡出现之前,自动售检票系统只有唯一传统的磁卡票式,磁卡 的主要核心技术就是卡上粘贴的磁条,只要保证卡上的磁条不被磨损或者不被其 他的磁场干扰,磁卡就不会因此失效,而且磁卡还具有利于使用,成本低,便于 管理等优点。在日益发展的科技下,磁卡里面的信息容易被不法分子复制并进行 非法操作。二十世纪九十年代非接触式IC卡问世,IC卡相比较于磁卡可靠性更高、抗干扰性强、保密性强、存储容量大、具有运算处理能力、使用寿命长,而且卡 与读卡器之间不需要物理接触力。基于非接触式IC卡的这些优点,不仅使得自动 售检票系统在技术上得到了突破,而且还广受人们的喜欢,所以在新的一代自动 售检票系统中使用非接触式IC卡已经成为了不可阻挡的趋势了。非接触式IC卡 的出现,使得自动售检票系统增加了非接触式IC卡、磁卡和非接触式IC卡混合 的两种新型的票式。所以综上所述,自动售检票系统具有磁卡、非接触式IC卡、磁卡和非接触式IC卡混合的三种票式。我国的第一条地铁是在1969年的北京诞生,但是首个地铁自动售检票系统应 用是在1979年香港首条地铁线路开通时应用的,因此对比于其他发达国家的自动 售检票系统应用起步晚。在20世纪80年代末,我国在自动售检票系统这个研究 21绪论领域相当于还是空白一片。上海是我国首个着手于研究自动售检票系统以及其设 备的城市。在研发期间,上海地铁一方面从国外的一些成功的经验中学习研究,另一方面不仅靠着香港地铁传送过来的宝贵建设和运营经验,而且还有一些来源 于国际上专业产品生产厂商的自动售检票系统方面的相关技术与经验的指导。我 国的首个AFC系统供货合同是在90年代中期与美国的CUBIC公司完成签订。在1997年开始建设中国第一条基于磁卡单程票以及非接触式IC卡存储票为基础 的自动售检票系统,并在1999年上半年正式的投入使用。经过长期的摸索中慢 慢的掌握和归纳出一些适合我国国情的轨道交通自动售检票系统的新功能,使得 现在我国的自动售检票系统更加的完善,更加的富有自己的特色,符合自身的发 展特点。随着发展,城市化进程越来越加剧,国家正在大力的发展城市轨道交通事业,在紧接着的未来中,我国对自动售检票系统的需求将会逐步增大,但是我国的厂 商在自动售检票系统相关领域的技术上还不能算的上完全掌握,还是需要靠进口 一些设备和引进一些技术才能够完成,所以这个问题对于我国的厂商而言既是一 个很好的机遇也是一个巨大的挑战。1.1.2 自动售票系统国内外研究现状自动售票机是自动售检票系统中的必不可少的重要设备,它主要设立于车站 中的非付费区域,便于乘客们以自助的形式来购买有效票,同时可以自主的处理 乘客支付的钱和找回相应的零钱给乘客。自动售票机的出现大大的提升了自动售 检票整个系统的效率,是售票智能化的一个里程碑。自动售票机不仅仅只有上述 的自助的发售有效票,处理支付和找零这三个功能,并且还具有维护业务功能(整 机自检,下班盘点,部件维护等)、设备运营状态、接受车站下发的指令和上传车 票处理交易记录等功能。自动售票机应用于地铁系统中,主要分为以下三种:第一种是只发售有效票 的自动售票机;第二种是发售有效票的同时也可以现金充值和查询余额;第三种 是在发售有效票和现金充值和查询余额基础上,外加还可以用支付宝,银行卡等 进行充值的功能。但是这只是普遍的三种情况,每个地区可能会根据自己地区的 需求变更。国外自动售检票系统起步的比较早,相应的自动售票机技术也比较发达。在 研究这个领域中的国家以及公司都为数不多,主要供应商有法国的CGA、美国 CUBIC公司、日本东芝、日本OMRON、日本的信号株式会社、澳大利亚的EGR、韩国SAMSUNG公司和瑞士的ASCOM公司等口口刀。在2003年,著名的自动售检 票系统的提供商ASCOM公司为了能够让自动售票机更加的现代化,售票时间缩 短,设计出一款新型的自动售票机,这款自动售票机可以转换多种不同的语言的 3重庆大学硕士学位论文同时,还可以接受借记卡,信用卡和现金等多种支付的方式口叫 除此之外,还提 供当自动售票机出现故障或者是票卡的数量不够的时候,自动实时的向车站计算 机发出警报,使得我们的工作人员能够及时的前往自动售票机处处理这些异常。我国国内对自动售检票系统的研究虽然起步的比较晚,但是对这个领域的研 究是非常热情,并且在这个领域中发展的速度也是比较快的。国内出现了大量致 力于研究该领域的公司企业,比如上海邮通,深圳高新现代,华虹,达实智能等。虽然说发展的速度比较快,但是在成果方面相对于国外的资深企业还是有很大的 差距,存在的问题也比较多。自动售票机结合了深圳自身的特点,在深圳现在的自动售票机具有出售普通 单程票和机场快线单程票的功能。可以通过参数灵活控制自动售票机只出售普通 单程票、只出售机场快线单程票和同时出售普通单程票和机场快线单程票。同时 自动售票机接收硬币和纸币的支付方式,并可以进行硬币和纸币混合找零。自动 售票机能对符合发售条件的单程票赋值发售,对系统设定需回收的单程票分拣并 回收到废票箱或回收箱。自动售票机将售票、与上级系统交互、维护等这些功能 主要操作过程记录和数据记录到设备中,并具备上传到车站系统的功能。这些数 据断电不丢失。自动售票机的乘客显示器用于显示城市轨道交通线路及票价信息,其前面板具有良好的中引文操作界面,并在乘客操作过程中进行准确友善的提示。自动售票机具有自检功能,发现部件异常时进入相应的降级运行模式或者暂停服 务。在维护单元报告准确的故障原因。现在国内自动售检票系统虽然很多企业致力于研究这个领域,但是一些核心 的模块的技术还是远远的落后于国外,比如自动售票机中的纸币硬币识别技术,电磁离合等方面都打不到国际标准,也因此我国的这些设备都需要从国外进口来 使用。所以在这方面革新发展是我国未来大力发展的必然趋势。只有我国熟练掌 握好该项技术,才能够更好的结合我国自身的情况来量身订造出更适用于我国各 地区的自动售票机。1.2 论文的意义在我国经济飞速发展的情况下,城市人口越来越密集,使得现如今的交通问 题越来越严峻,发展各地区的轨道交通事业已经成为了必然的趋势。虽然在我国 自动售检票系统领域研究方面起步的比较慢,但是我们不能够一味的从外面引进 国外技术,必须要独立自主的开发属于自己,并且也符合于自身状况的相关技术。因为假设每次都从外面引进相关的软件和硬件技术,那么我们将会受制于其他国 家的限制,也会为这种限制付出巨额的成本和一些维护产生的相关费用。另一方 面,当我们拥有自主开发的技术的时候,我们不仅仅降低整个自动售检票系统的 41绪论工程造价和相关的一些维护费用,还可以通过结合自身情况来为每个地区量身定 制属于该地区的专有的系统。而自动售票机在地铁领域中是不可缺少的重要设备。对比于人工售票,充分 的展现出它出票迅速,计算乘车区间需要的票价快,能轻易的处理大量的票务信 息等,这样不仅能够节省了大量的人力资源还可以更加准确的处理相关业务,同 时也解决了一些工作人员人在售票过程中受贿的情况。自动售票机是城市地铁建设更加的现代化,信息化的重要标志之一。自动售 票机实时上传票务相关数据以便于工作人员的监控,减少了工作人员与金钱的接 触,提高了地铁运营效率,最重要的是还方便了乘客的使用。因此自主开发自动 售票机相关软件具有巨大的现实意义。1.3 论文主要研究内容与结构本文主要研究的是自动售检票系统中自动售票机的目前发展现状,以深圳地 铁自动售票机终端软件系统的设计与开发作为背景,根据深圳的实际情况,设计 与开发适用于深圳本土的自动售票机终端软件系统。本文的结构如下:第一章,绪论。论文的总体介绍。本章阐述论文的背景知识,通过对自动售 检票系统和自动售票机的国内外研究现状调查与研究,总结出论文的意义。并且 对文章的基本机构进行了概述。第二章,地铁自动售票机与相关技术简介。本章主要对自动售检票系统和自 动售票机进行了详细介绍其基本信息的同时,对在设计开发自动售票机终端软件 系统过程中运用到的一些相关技术进行了介绍与描述。第三章,地铁自动售票机终端软件系统总体分析与设计。本章主要根据自动 售票机终端软件系统的实际需求,来进行对系统的架构设计和制定开发环境,并 进一步的对系统进行分层设计、接口设计和界面总体设计。第四章,地铁自动售票机终端软件系统详细设计与实现。本章主要是对地铁 自动售票机终端软件系统的程序结构上做出详细的设计后,再分别的针对界面层、业务成、硬件层和公共模块这四大块进行详细设计与实现。第五章,地铁自动售票机终端软件系统的测试。本章主要根据在地铁自动售 票机终端软件系统测试的环境下,对地铁自动售票机终端软件系统进行系统测试,包括系统功能测试和系统性能测试,得出系统测试的报告结果。第六章,总结与展望。本章主要是总结了本文对自动售票机终端软件系统的 设计与实现的研究成果和过程,并对指出该系统不足之处,为下一版本的开发提 供意见。5重庆大学硕士学位论文1.4 本章小结本章主要在对自动售检票系统和自动售票机进行了国内外现状的分析,并基 于其国内外现状的分析总结出本论文的意义。同时,也对本文的组织结构进行了 描述与讲解。62地铁自动售票机与相关技术简介2地铁自动售票机与相关技术简介自动售检票系统是一个设备之间相互联系的系统,每个子设备都不可能自己 独立存在。自动售票机也不例外,其必须依附在这巨大又复杂的自动售检票系统 中。在基于自动售票机必须要依附在自动售检票系统上的情况下,不能单单对自 动售票机做出介绍,还有必要对自动售检票系统做出相关介绍。2.1地铁自动售检票系统概述自动售检票系统,是实现轨道交通统计、管理、清分、收费、计费、检票、售票等全部过程的自动化处理。一般的自动售检票系统主要囊括机电一体化、硬 币纸币识别、计算机网络通讯、微电子计算、嵌入式的数据库和系统等前沿技术 的运用胤,主要是用来替换早期传统的人工的售检票环节,使得轨道交通事业进 入自主化和信息化的主要里程碑AW。通过自动检票机系统,我们可以更加实时 的得到可靠的数据,提高了运营的效率,还大大的降低了人工工作量。对于这种 大型的并且涉及钱财的系统,稳定性,兼容性还有安全性等特性是一个极大的挑 战。我国的起步比较晚,现在来说许多相关的技术都还是要从外国引进。如图2.1自动售检票系统架构图所示,对自动售检票系统进行了层次的划分,每层的相关功能和职责如下:终端设备层车票ticket)|车票层图2.1自动售检票系统架构图Fig.2.1 Automatic fare collection system architecture diagram7重庆大学硕士学位论文清分系统层:轨道交通清分中心(AFC Clearing Center,ACC),主要功能有 四个,如下:收集并统计分析运营的数据;对车票进行调配和跟踪,并统一的对车票做初始化操作;与下一层中央线路计算机(CLC)和一卡通系统进行清分对账;主要是为下层中央线路计算机(CLC)与一卡通系统或者其他系统相连接 的接口。线路中央层:中央线路计算机(Central Line Computer,CLC),主要负责以下 四个方面。1)收集来自于各个车站上传上来的各类有关于票务、客流、车站设备运营状 态的有关数据信息;2)是控制和监视所有车站的设备运营状况;3)是接受上层轨道交通清分中心的命令或者下达命令至下一层车站计算机中;4)是时钟同步的功能。车站系统层:车站计算机(Station Computer,SC),这层起着承上启下的作用,该层不仅仅可以从上一层中央线路计算机中得到相关的参数和指令和把从上层得 到的相关参数和指令下发至下一层车站现场设备中,还可以将本地的运用数据上 传至上一层中央线路计算机中。除此之外,该层还肩负着对下一层车站现场设备 的实时监控和控制。终端设备层:车站现场设备(Station Level Equipment,SLE),主要包括自动 检票机(Automatic Gate Machine,AGM)、自动售票机(Ticket Vending Machine,TVM)、自动充值机(Add Value Machine,AVM)、票房售票机(Booking Office Machine,BOM)和便携式验票机(Portable Card Analyzer,PCA)。a.自动检票机。主要的功能是乘客进站时检票,并上传票的相关数据给上层;b.自动售票机。主要功能是方便乘客自主购买所需要的有效票票,同时也把乘 客购票信息上传至上层;c.自动充值机。主要功能是方便乘客自主充值自身的非接触式IC卡上,同时 也把乘客的充值的相关信息传到上层;d.票房售票机主。要是让工作人员操作以上三个终端一些无法处理的事务;已便携式验票机。主要是让工作人员随时可以查验乘客手上的票。车票层:车票(Ticket),主要包括磁卡票式,非接触式IC卡等。2.2 地铁自动售票机概述自动售票机是由微型电脑来进行控制,功能性强大,稳定程度高,设立于车 82地铁自动售票机与相关技术简介站非付费区的自动售检票系统的必要终端之一。在乘客方面,自动售票机的乘客 显示器用于显示城市轨道交通线路及票价信息,其前面板具有良好的中引文操作 界面,并在乘客操作过程中进行准确友善的提示,乘客可以以自助的形式购买有 效票,自动售票机在接收了乘客的硬币或者纸币时,可进行硬币和纸币混合找零;对自动售票机自身方面,具有自检功能,发现部件异常时进入相应的降级运行模 式或者暂停服务,能对符合发售条件的有效票赋值发售,对系统设定需回收的无 效票分拣并回收到废票箱或回收箱,还有能将售票、与上级系统交互、维护等主 要操作过程的记录和数据记录到设备中,并具备上传到车站系统的功能,这些数 据断电不丢失。在工作人员的方面,可以通过参数灵活控制自动售票机只出售普 通有效票、只出售机场快线有效票或者同时出售普通单程票和机场快线有效票,在车站计算机中还能实时的得知自动售票机的运营状况,并且下发参数控制自动 售票机的运营状态。如图2.2所示,自动售票机软件系统操控的主要有硬币模块,主要负责的是硬 币的接受,存储和找零;纸币模块主要负责的是纸币的接受存储和找零;读写器,主要负责的是对单程票的读写;票卡传输模块,主要负责的是单程票的存储和传 送;运营状态显示器,主要负责的是提示设备的运行模式和整机状态;综合控制 器,主要负责的是声光提示,传感器状态,维护门磁力锁等功能;显示器及触摸 屏,主要供给乘客一个操作的界面平台;后维护显示器及触摸屏,主要供给维护 和运营人员的操作的界面平台。图2.2自动售票机结构图Fig.2.2 Ticket vending machine structure diagram9重庆大学硕士学位论文2.3 地铁自动售票机终端软件系统开发相关技术2.3.1 SQLite 数据库数据库通常被我们用来对数据的存储,查询,删除和更改等操作,早已经成 为了我们软件应用开发中必不可缺少的重要部分之一。现在主流的数据库有DB2,Oracle,SQLServer,MySQL等,但是自动售票机会在每天的工作中会产生出大量 的交易数据和日志文件,随着这些庞大的数据,数据库管理系统也会随着变的巨 大起来,由于自动售票机本身的系统资源就已经非常有限,再加上这巨大的数据,会增加了很多不必要的复杂性,因此我们需要用轻量级的数据库来减少数据库给 系统带了的负担。具备着与基本数据库特性的数据库文件嵌入式数据库应允而生,与传统的数 据库不同点主要在于驱动方式和体积,传统的数据库的驱动方式是采用的引擎响 应方式,并且体积比较大,而嵌入式数据库则是采用的是程序方式直接驱动,并 且体积小口7,18。嵌入式数据库不是一个单独的进程,它主要依附在文件系统中,在外部的角度来看待,其并不像一个RDBMS,但是在进程的内部角度来看,那么 它就是完整的RDBMS。现如今常用的嵌入式数据库有:SQLite,mSQL,eXtremeDB,Firebird,Berkeley DB等。每一款嵌入式数据库都有自己的特点。本系统使用的是SQLite嵌入式数 据库。SQLite数据库是在2000年D.Richard Hipp发布的一款嵌入式数据库口”它的 主要设计的想法为轻型,速度快,体积小并且在对管理方面做到最小化。SQLite 的主要特点如下:遵循着原子性(Atomicity)一致性(Consistency)隔离性(Isolation)持久性(Durability)的关系型数据库管理系统;支持多个主流的操 作系统:Windows Linux Unix系统;不用配置也不需要安装;占用资源足够低;支持数据库大小至2TB;同时还支持一些事物处理功能等等mi。SQLite内部是由内核、SQL编译器、后端以及附件组成的,它利用虚拟机和 虚拟数据库引擎来方便了其内核的调试修改和扩展三方面。它的工作流程如同 下图2.3所示:102地铁自动售票机与相关技术简介图2.3 SQLite架构图Fig.2.3 SQLite architecture diagram公共接口(interface)接口是由SOLiteCAPI组成的,所以只要是要与SQLite有交互的文件或者是 程序,都要通过这个公共接口来与SQLite进行相应的操作。由于函数的实现是分 散在其他文件中,所以SQLite为了避免和其他软件的名字相同,其外部符号都会 以SQLite为前缀来命名。编译器(Compiler)编辑器主要包括词法分析器(Tokenizer)、语法分析器(Parser)和代码生成 器(Code Generator)这三个重要部分。主要的分工是词法分析器从我们接口接收 到字符串,分割成一个个标示符,并且把这些标示符传递给语法分析器;语法分 析器在接收到词法分析器传达到来的标示符的时候,就在指定的上下文中赋予标 示符其具体的含义所在;代码生成器接收到来自语法分析器的标示符时,把标示 符组装成完整的SQL语句,调用代码生成该SQL语句相应的虚拟机代码,并传达 到虚拟机中。虚拟机(Virtual Machine)虚拟机是该架构中最为核心的重点部分,同时虚拟机还有一个别名为虚拟数 据库引擎(Virtual Database Engine,VDBE)虚拟机在接收并执行编译器传达过来 的虚拟机代码。后端(B ack-End)后端主要包括B-树(B-Tree)、页面高速缓存(Page Cache)和操作系统接口(OS interface)这三个重要部分。B-tree的主要功能就是索引,通过索引来把页 11重庆大学硕士学位论文面与页面之间杂乱无章的关系屡顺畅,便于快速查找所需要的数据和维护操作。页面高速缓存主要负责读、写和缓存这些数据模块,可以确保数据模块能够快速,安全并且有效的被处理。最后的操作系统接口是为了能够在不同的操作系统使用 该数据库抽象出来的接口。2.3.2 Adobe Flash/Flex 人机交互技术乘客通过自动售票机来进行自主的购买有效单程票,所以在人机交互方面,自动售检票系统需要提供一个易操作、简单明了并且友好的界面给乘客使用。称 该界面为人机界面(Human Machine Interaction,HMI),同时也称为使用者界面或 者是用户界面,是用户向计算机传递信息或者用户和计算机之间进行交换信息的 对话接口和媒介阳。在处理人际界面的相关问题上,引发出了 RIA(Rich Internet Applications)技术,中文翻译为丰富互联网程序,其具备有互动性高和用户体验 性强的特性。而RIA现如今的主流技术分别有Adobe Flash/Flex、XUL、SilverLight 和HTML5等。由于本系统采用的RIA为Adobe Flash/Flex,所以着重对Adobe Flash/Flex进行分析与概述。Adobe Flash/Flex作为RIA的主流技术之一,其架构模式如图2.4所示。Adobe Flash/Flex技术是一个开源的软件开发工具包,俗称的框架,主要的作用是用来构 建与部署基于Adobe Flash的跨平台丰富互联网程序,表现层是应用最广泛的一层。目前已经在界面开发中得到了广泛的应用。AdobeFlash/Flex在常规的设计模 式上为使用者提供了一个基于现代标准与程序建模的模式侬,在描述行为事件和 用户界面设计上是使用了基于XML语言的MXML,并且使把面向对象的语言 Actionscript3.0作为其脚本语言由,可以与用户开发客户端要实现的功能变量、函 数或类进行相互调用用Flex创建的RJA由服务器翻译成SWF格式的客户端 应用程序,可以用FlashPIaver播放,或在桌面端用AdobeAIR跨平台运行时来运122地铁自动售票机与相关技术简介客户层运行层运行层ClientServerX叫 JSON,_SOAP,RSS,ATOMAMF,etc HTTP,HTTPS?RAW,SOCKCTsrTMPASP.NET,PHP,Java,Pyth on,etc图2.4
展开阅读全文