无论是身处学校还是步入社会,大家都尝试过写作吧,借助写作也可以提高我们的语言组织能力。范文怎么写才能发挥它最大的作用呢?下面我给大家整理了一些优秀范文,希望能够帮助到大家,我们一起来看一看吧。
智能电子门锁设计综述篇一
;摘 要:
针对传统拦鱼设施承受不住大量污物和大流量洪水冲击、易被堵塞的问题,以及电栅拦鱼大区域水面控制难、智能化程度低等缺点,研制一种新型的基于can总线的电子脉冲拦鱼装置。该装置实现了1个主机和16个从机之间的长距离大容量数据的通信,适用于不同水域面积的拦鱼需求;不同档位的母线直流高压可连续切换运行,电脉冲参数可实时调节,解决了传统的电栅拦鱼长期运行效果不佳的难题;igbt 能快速的换向,从而避免电极氧化生锈而失效的隐患,拦鱼效率高、安全可靠,比传统可控硅省电65%,而且大大降低了工作过程的噪声污染;系统不仅具备触摸屏实时监控、自动故障电话报警等功能,而且引入“互联网+渔业”的新观念,实现了手机或因特网的远程操作。经实际应用表明,该新型智能拦鱼装置具有数字化、网络化、自动化、智能化等特点,能够适用于各类大小水库水域面积的拦鱼作业。
中小型水库发展多种经营,对稳定水利管理队伍,发展水利事业具有重要意义,而发展水库养殖则是开展多种经营的主要手段之一[1?4]。为了防止溢洪道泄洪时出现大量鱼群逃离,装备拦鱼设施是十分必要的,它的防逃效果将直接影响到水库渔业的经济效益和社会效益[5?6]。传统方法一般采用网箱和大面积隔离网进行防逃,洪水来时会夹杂大量的水草、树枝、漂浮杂物,容易承受不住大量污物和大流量洪水的冲击而被堵塞,不仅网破鱼逃,还有可能减少泄洪过水面积,影响泄洪量,造成拦鱼设备堵水损坝,甚至危及水库安全,出现人身伤亡等事故现象[7?8]。
电栅拦鱼是由脉冲电发生器、电极及导线组成,可控硅被触发开通时,高容量的电能就向电极放电,得到连续的一定幅度、宽度的脉冲电流,从而在水中拦鱼断面上形成一定强度的不均匀电场。鱼类受到刺激后将本能地向电场较弱的方向逃游,从而达到拦鱼的目的。电栅拦鱼具有结构简单、施工方便、间距大、安装牢固,对水利设施无危险等特点[9?11]。从根本上克服有形机械性拦鱼设施的局限性,从而得到了较大范围的应用。
1) 大区域面积拦截困难。每台拦鱼设备的控制区域极为有限,大区域水域面积需要较多拦鱼设备,而各个拦鱼设备之间相互独立,不能通信和集中监控,需要专人巡视设备。系统一旦出现故障,巡视员需要较长的时间从多个拦鱼设备中找出故障,拦鱼失控时间较长,较多的鱼会在失控时间内逃脱,损失较大。
2) 智能化程度低。设备工作过于单一,没有实现在鱼群到来时工作,无鱼群时断电节能的功能,存在效率较低、不节能、资源浪费的情况。此外,目前的拦鱼设备还没有实现自动故障电话报警功能,以及通过计算机或手机实现远程监控。
3) 长期运行效果不佳。电栅拦鱼的应用对象是活体鱼类,具有活动范围广、时间不定、无规律等特点,因此要求系统应当具有长期运行能力,以保持对鱼类不间断监测控制,市面上的电子脉冲拦鱼装置无法保证长时间连续稳定的工作,电栅拦鱼设备的电极负极容易生锈氧化而存在失效的隐患。
4) 设备工作过程噪声污染。现有的电栅拦鱼设备工作时会发出巨大的噪声,同时对设备维护人员也是一种伤害,电栅拦鱼工作的噪声应符合国家环境监测规定的要求,必须采用现代技术给予克服。
针对以上问题,笔者研发出一种基于can现场总线的电子脉冲智能拦鱼装置,可以有效地解决以上问题。
1 系统网络结构
拦鱼装置由电源及信号电缆、主机、多个从机等构成,网络结构具体如图1所示。主机控制器和从机控制器使用上海步科的ks105c1?16dt plc,它们之间仅仅通过一根can(controller area network)總线电缆即可完成一主多从连接,具有数字化、网络化和自动化的特点,不仅可以大大降低电缆等工程造价,而且用户可根据不同大小水域面积拦鱼需求,灵活自由地选择机组和从机个数。
主机产生的从机母线取放电的脉冲时序,并通过canopen协议与从机进行数据通信,用来控制不同从机的绝缘栅双极型晶体管 (insulated gate bipolar transistor, igbt)分时轮流导通,导通时间为0.6~1.2 ms,放电频率为3~12 hz,导通时间和放电频率均可调,从而适应不同泄洪量、不同水质和不同鱼类的拦鱼需求,克服了传统的电栅拦鱼设备工作较为单一的弊端。
触摸屏与主机进行数据通信,一方面用于系统配置和参数设置,另一方面用于监控拦鱼设备工作状态,界面友好、操作简单,方便操作人员进行及时排查和维护。同时,触摸屏带有虚拟网络计算机技术 (virtual network computer,vnc),系统利用此技术实现了拦鱼装置的网络远程操作。
2 硬件电路设计
主机主要由plc、变压器、储能单元、低压设备元件等构成, 主机plc通过can总线接口和rs 232串口,分别与从机plc、触摸屏、sim800c gsm模块连接。主机电路具体如图2所示。
主机输入ac 220 v,一路变压器使用不同抽头降压成ac 6.3 v、ac 20 v和ac 28 v并进行桥式整流,再分别通过7805稳定芯片输出dc 5 v供sim800c gsm模块使用,通过7824稳压芯片输出dc 24 v供主机plc使用,以及输出dc 36 v供从机使用。另外一路变压器通过抽头降压成交流 ac 150 v,通过两路电容储能单元升压成dc 420 v和dc 600 v母线电压并通过数显表进行显示,控制k1,k2继电器可以选择输出不同的母线电压,从而针对不同的泄洪量和鱼群切换相应的档位。
从机主要由plc、igbt驱动板、防浪涌吸收电路板、信号接口板等构成,具体电路如图3所示。
从机plc接收到时序脉冲后,生成预设周期与宽度脉冲输送给igbt驱动板。正向导通时,脉冲施加给bg1和bg3;负向导通时,脉冲施加给bg2和bg4,从而实现了igbt桥式电路的正负换向导通,利用igbt的开关作用将母线高压形成特殊脉冲电流作用于水域,达到在防逃区域形成一面看不见又不影响排水的刺激电网目的。
本装置使用igbt取代了传统的电栅拦鱼设备所用的可控硅,各电极轮流换向导通,不仅功耗低、效率高、安全可靠、控制迅速,更为重要的是,可避免水下的电极长期单向使用后,负极表面容易氧化或钙化而导致的性能不稳定,乃至失效的安全隐患,同时还可以大大降低拦鱼工作过程中的噪声污染。为了防止igbt关断时瞬间的浪涌电流损坏igbt,从机设计有可靠的防浪涌吸收保护,如图4所示。通过电容吸收电路可以大幅减小igbt关断和续流二极管恢复时产生的尖峰电压。经过实测,尖峰电压降为峰?峰值的5%以下,保护了igbt的安全可靠工作。
1) 频率故障。母线输出的直流高压脉冲通过信号接口板分压至24 v时,由plc进行频率采集。若采集的频率与触摸屏设置的放电频率不一致则进行故障报警。
2) 驱动故障。驱动板出现过流时输出高电平给从机plc,从机plc通过信号接口板报警电路反馈给主机plc进行报警。
3) 通信故障。当通信电缆断线或接触不良,以及在线从机个数与预设从机个数不符时,拦鱼装置将会产生总线通信故障。系统使用心跳技术进行判断,具体方法为所有的从机生成周期为1 s,占空比为50%的pwm方波,若主机在规定的时间内没有收到某从机的心跳信号,即判断为该从机出现通信故障。
3 软件程序设计
通过分析控制系统自身特点和工艺要求,所有从机时序是受主机控制的,区别仅在于从机的取放电次序时间和can通信地址不相同而已。因此,从机程序的程序架构和控制算法是完全相同的,plc程序具有模块化特点,大大减少了程序的编写量。
3.1 主机时序程序
主机产生的从机母线取放电的脉冲顺序时序,用来控制不同从机的igbt分时轮流导通。程序流程图如图5所示。
主机plc读取触摸屏输入的从机个数为n(1~16)、放电频率为f(3~12 hz)、脉宽长度参数为τ(0.6~1.2 ms),则每个从机轮流导通的间隔时间t=[1nτ],并将t赋予smd12,启动定时中断0。定时时间到后产生中断,调用sequence时序子程序,复位上一从机控制位,并置位下一从机控制位,通道值个数加1;若通道个数大于从机个数,主机复位最后一个从机的控制位,置位第一个子机的输出位,通道值个数清零,提前跳出循环,从头重复定时输出过程。主机通过can总线将控制位实时地传送给各个子机,子机接收到控制位后,产生pwm方波,轮流换向导通放电。
3.2 can总线通信程序
系统通信使用canopen协议。通信对象标识符cob?id的前10个,即181?18a,201?20a…依次类推,这些id已被其他内部资源占用,因此留给用户使用的标识符只能从18b,20b开始。主、从站的不同通道均有唯一的地址,各从机用上述的唯一地址进行读写。
对于时序控制位等实时性要求高的数据,主机使用高优先级的20bh~21ah地址发送给各从机。对于触摸屏上电初始化设置的从站个数、放电频率、脉宽等参数,以及从站远程启动/停止信号,主机则使用低优先级的cob_id进行通信,即通过30bh~31ah地址发送触摸屏初始化参数给各从机,通过40bh~41ah地址发送远程启动/停止信号给各从机。类似地,从机分别使用18b~19a,28b~29a发送状态信息,以及采样频率给主机。通过优先级调度的做法旨在根据从机个数、任务紧急程度、通信速率、报文数量和总线负荷之间达到最优化调度,从而满足系统的可靠性和稳定性。
3.3 自动故障电话报警程序
系统具有完善的自动故障电话报警功能。当系统出现故障时,主机plc通过内置有一张sim电话卡的sim800c gsm/gprs模块进行报警。自动故障电话报警流程如图6所示。
主机plc通过串口sim800c进行连接,xmt指令用于发送存放具体的故障信息,rcv指令用于接收sim800c反馈回来的状态数据。主机plc上电,首先发送at指令给sim800c模块,若返回ok,则说明sim800c模块初始化成功,否则进行通信模块不成功报警。初始化成功后,进行文本模式、文本参数模式、中英文模式等设置。
触摸屏上可预设有2个手机号码。当系统出现故障时,plc发送指令给sim800c拨打第1个手机,若第1个手机接通或挂断,plc会接收到“busy”参数,即代表用户已接收到电话报警,plc发送短信给第1个手机报告具体的错误代码,报警操作结束。如果第1个手机持续3次无接通,即代表用户没有接到报警电话,则按照上述步骤拨打电话和发短息给第2个手机。如果第2个手机也持续3次无接通,间隔5 min后重复上述过程,直到用户接收到报警电话和短信。
操作人员接收短信后,无需巡查即可足不出户而及时准确地获知故障位置与类型,从而迅速排查故障,避免长时间大量鱼跑了,最大限度减少用户损失,实现无人值守在水库养殖业上的应用。
3.4 组态监控设计
触摸屏监控系统以图文并茂的人机界面形式显示了拦鱼装置运行状态和各种状态信息,把所需要的状态数据,以及其他相关控制系统的参数在触摸屏上进行显示。主窗口如图7所示。
参数设置界面能够控制拦鱼装置、从机电源的启停,以及对拦鱼装置的从机个数、放电频率、长宽度、故障电话号码、vnc工作模式及密码等参数进行逐一设定,从而参与控制、调整拦鱼装置工作参数。除此之外,触摸屏还有用户权限设置、从站远程啟停、从机故障报警显示等界面。
系统利用触摸屏的虚拟网络计算机技术,借助于因特网将屏幕画面实时地传送到个人电脑或手机上,从而实现了网络远程操作,用户可实时地掌握拦鱼装置的工况状态,减少巡视人员的工作量,实现“互联网+渔业”的设计思想。手机监控界面如图8所示。用户通过按钮,即可实验控制vnc的开启、屏蔽用户操作(只允许查看不允许操作)、操作密码使能、查询密码使能等功能。
4 整机参数与实际应用
该电子脉冲拦鱼整机装置可安装在水库、池塘、湖泊、水电站、河道口、溢洪道口。图9所示为电子脉冲拦鱼装置施工示意图。
混凝土立柱尖端跨距每10 m承受1 t拉力,主副绳高差按拦宽的6%计算。1,2,3出线为25 m2防氧化绝缘铝导向,电极入水后其相互之间的阻值应在0.5~300 ω范围内,钢管与钢索,导线与钢索的绝缘电阻大于50 mω/1 000 v,钢索垂度小于0.5 m,所有钢铁件表面均做镀锌防锈处理。
该新型智能电子脉冲拦鱼装置已在多处水库投入拦鱼运行,如图10所示。经应用实践和用户反馈情况表明,该拦鱼装置具有柔性自动化与智能化功能,克服了市面上现有电栅拦鱼设备存在的各种弊端,极大地提升了拦鱼设备的性能,可大大提高水库的养鱼经济效益。
5 结 语
该新型电子脉冲拦鱼装置使用igbt 取代了可控硅,不同档位的母线直流高压可快速连续换向切换,并且具有完善的防浪涌电路保护,不仅避免了电极氧化生锈而丧失拦鱼功能的隐患,而且噪声小、效率高、拦鱼效果好、安全可靠。控制系统基于can总线实现了一主多从、长距离、大容量数据的通信,能够适用于各类大小水库水域面积的拦鱼需求,具有工程造价低廉、数字化、网络化、自动化的特点。该拦鱼装置还具备触摸屏实时监控、自动故障电话报警及网络远程操作等功能,大大减少了用户的巡检工作量,实现了无人值守,并且为大型水库养鱼提供了先进有效的防逃技术手段,体现出了“互联网+”在渔业上的应用。
参考文献
相关热词搜索:;智能电子门锁设计综述篇二
;【摘 要】本文研究项目式教学,研究智能小车及多旋翼飞行器设计融合到电子信息类的项目式教学,详细阐述了智能小车、多旋翼飞行器的设计原理方案,项目分类等关键问题,对拓展实践教学有较大的参考价值。
【关键词】项目式教学;智能小车;多旋翼飞行器;单片机;嵌入式系统
一、项目式教学简述
“项目式教学法”是师生通过共同实施一个完整的项目工作而进行的教学活动,是行为引导型教学方法中的一种。在整个教学过程中既发挥了教师的主导作用又体现了学生的主体作用。由于项目教学法整个过程活动都是真实的,以及学生的全程参与,它能大幅度的提高课堂教学的效果。
项目教学法起源于美国,盛行于德国,尤其适合于职业技术教育。它是指将传统的学科体系中的知识内容转化为若干个教学项目,围绕着项目组织和展开教学,使学生直接参与项目全过程的一种教学方法。其核心追求是:不再把教师掌握的现成知识技能传递给学生作为追求的目标,或者说不是简单的让学生按照教师的安排和讲授去得到一个结果,而是在教师的指导下,学生去寻找得到这个结果的途径,最终得到这个结果,并进行展示和自我评价,学习的重点在学习过程而非学习结果,他们在这个过程中锻炼各种能力。所以在运用项目教学法进行教学设计的时候,学生是认知的主体,是知识意义的主动建构者。教师已经不是教学中的主导地位,成为学生学习过程中的引导者、指导者和监督者,学生具有90%的积极性。
二、基于智能小车及多旋翼飞行器设计的项目式教学的背景和意义
“智能小车”是在企业生产技术不断提高、对自动化技术要求不断加深的环境下智能车辆以及在智能车辆基础上开发出来的产品已成为自动化物流运输、柔性生产组织等系统的关键设备。“多旋翼飞行器”是一种非共轴多旋翼飞行器,与旋翼直升机相比具有结构紧凑、效率高和机动性强灵活操控等特点。随着微机电技术(mems)、微惯导技术(mimu)以及飞行控制技术的进步,多旋翼飞行器的研究和应用得到迅速发展,其低廉成本、卓越性能和独特飞行控制方式使其成为国际研究热点。该课题选择的两个教学项目“智能小车”及“多旋翼飞行器”,即符合电子信息类专业的特点,同时符合国家战略新兴产业关于高性能集成电路工程、物联网和云计算工程、智能制造装备工程、新能源汽车工程的发展方向要求,对提升学生专业知识和实践能力有非常好的作用。
目前中高等职业学校电子专业学生普遍感到电子信息类课程的理论知识较抽象,电路原理难懂。电子信息类专业项目式教学研究在此背景下提出。对提升电子信息类专业的学生学习兴趣和效率,培养独立思考能力,积累专业设计和实践动手能力具有非常积极的价值。
三、智能小车的设计原理
“智能小车”是智能车辆的实验室模型,智能车辆也叫无人车辆是一个集环境感知、规划决策和多等级辅助驾驶等功能于一体的综合系统。它具有道路障碍自动识别、自动报警、自动制动、自动保持安全距离、车速和巡航控制等功能。
研究内容为教学项目即“智能小车”涉及的电子信息类专业知识和技能的项目式教学研究。项目本身的电路设计及整体设计制作方案简单示意如下图“智能小车”电路结构设计参考。
(一)基于嵌入式arm处理器s3c2440芯片部分的硬件方案:智能小车在设计时要充分考虑如何实现控制信号、图像采集、声音采集和wifi无线通信数据传输,具体需要要在s3c2440芯片的方案中实现智能小车摄像头驱动的安装,同时实现内部串口通信;在考虑arm处理器的设计方案中,可以选用s3c2440芯片的mini2440开发板作为开发研究的主板,负责图像采集和小车控制台数据处理,配以wifi天线将图像通过wifi通信方式发送给远端的pc机或智能手机等。
(二)单片机主控模块及显示电路:由于智能小车的要求不是很高,主要都是一些简单的控制,选用atmel公司的单片机at89c52作为主控模块,at89c52是许多教科书常讲解的型号,且价格便宜容易购买。本设计中用lcd显示小车运行的时间、运行的路程及小车运行的速度。
(三)避障传感器模块:使用红外线光电对管探测,可以考虑在小车的左前和右前装有探测管后,发射的红外线遇到障碍物时发生漫反射,反射光被光电开关接收。根据二个光电开关接受信号的情况来判断前方障碍物,一般情况下平均探测距离为3cm。
(四)电机驱动模块:使用l298n芯片设计驱动电路。一片l298n芯片可控制两个二相电机或者一个四相电机,控制端口的输出电压最高可达50v,可直接通过来调节电源输出电压来调节直流电机的工作状态。l298n芯片可以直接用单片机的io口提供控制信号,且带有使能端,从而可以实现pwm调速。
其它具体电路设计还可以根据项目式教学的实践要求不断丰富电子信息类的教学研究内容。
五、多旋转翼飞行器的设计原理
“多旋翼飞行器”一般指四旋翼直升机,国外又称quadrotor,four-rotor,4 rotors helicopter,x4-flyer等等,是一种具有四个螺旋桨的飞行器并且四个螺旋桨呈十字形交叉结构,相对的四旋翼具有相同的旋转方向,分两组,两组的旋转方向不同。与传统的直升机不同,四旋翼直升机只能通过改变螺旋桨的速度来实现各种动作。
(一)四旋翼飞行器动力学模型
(二)总体硬件电路设计与实现
系统以单片机为核心,主要包括电源模块、电机驱动模块、飞行控制模块、传感器检测等功能模块,该系统硬件结构框图如图2所示。
(三)pid控制算法结构分析
在动力学模型的基础上,将小型四旋翼飞行器实时控制算法分为两个控制回路,即位置控制回路和姿态控制回路。算法结构如图b-1所示。
使用经典pid控制算法实现位置控制回路和姿态控制回路。pid算法简单可靠,理论体系完备,而且在长期的应用过程中积攒了大量的使用经验,在飞行器位置和姿态控制应用中具有良好的控制效果和较强的鲁棒性,能提供控制量的较优解。
(四)飞行控制电路设计
飞行控制模块是控制系统的核心部分。它在每个控制周期内实时处理传感器采集的数据和飞行器的姿态信息,完成pid控制的算法,得到四旋翼飞行器的姿态和位置信息,计算出控制量,转化为相应的控制信号经驱动电路后驱动四个电机工作,保持四旋翼飞行器稳定飞行。
(五)传感器检测模块
传感器模块是为四旋翼飞行器的飞行控制提供各种飞行参数的装置,包括测量机身三轴角速率的陀螺仪、测量机身三轴线加速度的加速度传感器、测量机身航向及姿态信息的罗盘,电机转速检测的测速传感器、飞行高度传感器和黑线检测传感器。其中角度传感器和陀螺仪电路图如图4和图5所示。
六、基于智能小车及多旋翼飞行器的项目式教学的初步设计
项目式教学的设计研究重点是为弥补目前讲授式教学的不足之处,提出一套激发学生的学习兴趣的教学方法,尽可能少讲深奥的电路理论,多讲实用电路,多给学生提供电路制作的动手机会。有些学生基础差,学习理论比较吃力,但他们对自己制作电子电路普遍有很高热情和兴趣。教师在教学中要因势利导,扬长避短,精心设计教学内容,改进教学方法,加强学生动手能力培养。本课题涉及的电子信息类专业的技术路线囊括从芯片选型、电路设计、pcb设计与制作、底成驱动、单片机与嵌入式系统软件开发、智能应用等过程,也涉及到智能终端,智能机器人和控制等主流信息产业的技术发展方向。
技术路线方面考虑“智能小车”项目式教学细分为若干子项目:
七、项目式教学实施步骤
(一)项目技术究阶段:分部完成“智能小车”、“多旋翼飞行器”项目的设计,电路原理设计、综合调试、实物制作的指导书。各个老师分工合作,同时参考有关文献,共同完成。
(二)研究将“智能小车”、“多旋翼飞行器”项目分解为若干子项目,如遥控模块、动力驱动模块、串口模块、视频图像处理模块等等。鼓励参与者积极研究,为后续项目教学积累丰富的实践素材。
(三)综合上述设计,结合学生实际,通过电子兴趣协会、电子设计大赛培训小组等形式成立开放式的小范围教学组织形式,组织课题参与的老师对我院自愿参加课余学习的学生进行电子信息类项目式教学。
(四)通过教学项目研究设立、项目式教学实践、教学质量反馈的步骤环节,实现将两个教学项目即“智能小车”、“多旋翼飞行器”涉及的电子信息类专业知识和技能寓教于乐的传授给学生。
(五)以学生动手实践能力的提升程度,来检验该课题的实施效果,并持续的改进项目式教学的内容和方式。最后提出一套适合在中高职院校推广的电子信息类项目式教学的实例及通用教学参考方案。
八、课题研究综述
本课题是基于智能小车及多旋翼飞行器设计的电子信息类项目式教学研究,前述已经详细论述了项目式教学内容及具体实施的简要步骤,该项目式教学有较大的教学参考意义。同时。研究不足之处,请有关注该课题的同仁赐教。
【参考文献】
相关热词搜索:;智能电子门锁设计综述篇三
;摘 要: 针对电子钱包及电子存折的实际应用,基于智能卡,利用java card技术对卡片文件结构、交易流程、交易命令、写卡片e2prom位置及次数等多个优化点实施优化方案,提升电子钱包及电子存折卡片的交易速度。通过行业应用开通文件的添加及复合消费的设计,实现了金融与多行业应用结合的智能卡电子钱包及电子存折应用。在java card应用程序体系结构卡片端完成电子钱包及电子存折应用程序的设计、开发及测试。测试结果证明,该电子钱包及电子存折在投入市场前的性能、功能等检测项均符合国家银行卡检测中心及住建部检测要求。
zhang wenyou1, tian yun2
2. department of computer, xinzhou teachers university, xinzhou 034000, china)
0 引 言
磁条卡的发行和普及为使用者带来了诸多便利[1],然而近年来的“盗卡”和卡片“克隆”事件却引发了人们的强烈质疑。针对这一问题,三大国际卡组织制定了新的技术标准即智能卡,以解决银行卡从磁条卡向智能卡迁移的问题。智能卡采用新型智能卡技术,以java卡为代表的多应用智能卡平台不仅继承了智能卡的诸多优势,更结合了java语言本身跨平台、可移植等众多特点,较磁条卡而言,在安全性、可靠性、灵活性、高效性、耐用性等诸多方面,智能卡具有明显的优势[2]。电子钱包及电子存折(electronic purse and electronic deposit,edep)作为一种重要的智能卡应用,它的成功实行使智能卡被寄予厚望。因此,对电子钱包及电子存折的研究在方便人们日常生活、减少社会上的现金流通、提升各大银行的整体收益、加快国内外emv迁移速度等方面都有着现实意义。
1 系统需求分析
根据java card应用程序体系结构,本系统从物理结构上可分为三层:系统后端、读取端和卡片端,系统总体结构如图1所示。系统后端主要是银行后台应用系统;读取端由读取端主應用程序及卡片接收设备组成;卡片端包括卡片管理的应用程序(电子钱包及电子存折应用或其他行业应用程序)和支持应用程序的运行环境[3](cos,java card虚拟机以及相应的java card framework和api)。其中cos是卡片操作系统的简称;api是应用程序编程接口的简称。
对于本系统而言,卡片端cos的主要功能包括控制卡片与外界的信息交换、管理卡内存储器及在卡片内部完成各种命令的处理[4]。通常,cos要实现与外部信息交换,需要通信管理模块、命令管理模块、安全管理模块及文件管理模块的协作处理。外部信息通过通信管理模块进入cos之后,首先由命令解析模块进行处理,对输入信息内容的可执行性进行判断;其次,如果需要进行安全检查,则交给安全管理模块对它进行信息合法性的检查;最后,cos根据检查结果,凭借其合法且有效的信息,通知文件管理模块对e2prom执行相应的操作。
电子钱包及电子存折卡片在投入市场使用之前,需要根据实际需求建立相关文件,并在不同文件下写入对应数据[5]。只有完成了个人化,卡片才能进行正常交易。卡片中文件的建立和数据的写入主要依赖于个人化命令及文件结构的设计与实现[6]。本系统卡片端电子钱包及电子存折应用个人化流程,如图2所示。
本系统研究的电子钱包及电子存折应用的核心是在个人化模块及应用维护模块的辅助下实现交易模块的各项交易功能。因为对电子钱包和电子存折而言,相同交易类型的交易流程相同,因此整合电子钱包及電子存折的所有交易类型发现本系统主要的交易流程可包括:交易预处理流程、圈存交易流程、圈提交易流程、取现交易流程、消费交易流程、修改透支限额交易流程、查询余额交易流程、查询交易明细流程以及复合消费交易流程。
应用维护模块的主要功能是协助持卡人对卡片的正常使用进行管理与维护[7]。包括文件数据维护、pin(个人识别码)维护、卡片应用状态维护、内外认证维护四大功能块。
(1) 持卡人在卡片的使用过程中可通过个人化合法终端向卡片发送记录读、写、更新命令,卡片应用程序对其处理,实现记录数据的读取、写入和更新。
(2) 持卡人也可根据自身需求,修改或重新设置个人码。终端通过向卡片发送pin修改或重装命令,卡片应用程序对其处理,实现pin修改或重装。
(3) 持卡人在使用卡片的过程中,如果卡片存在多次与终端进行相互认证时发生错误,卡片上应用程序也会自动锁定当前应用,实现卡片的自锁定,对持卡人信息进行保护。
(4) 内部认证和外部认证都是出于卡片应用安全性考量的辅助功能。本系统通过主控密钥的外部认证来设置应用的后续状态,从而判定持卡人是否具有某种操作的权限。
2 系统设计
2.1 文件结构设计
根据卡片文件逻辑组织结构分析,卡片端电子钱包及电子存折应用可设计为adfef=1模式,其中,所对应的adf文件(edep应用文件)应包含文件控制信息(fci),通过该专用adf文件可以对树形结构下的ef文件进行访问。本系统电子钱包及电子存折应用卡片内部文件组织结构设计如图3所示。
根据卡片文件结构设计,本系统应用文件的初步实现方案拟为:设计ef文件为一个类,类中包含文件头及文件体。每个类对象通过链表连接,查找时从链表头开始找。对于文件的操作全部放在类中实现,如读写记录和二进制等。
本系统电子钱包及电子存折应用为adfef=1模式,本系统电子钱包及电子存折应用卡片内部文件结构设计包括二进制公共应用基本数据文件(短文件标识符sfi:0015)、二进制持卡人基本数据文件(短文件标识符sfi:0016)、循环记录交易明细文件(短文件标识符sfi:0018)、变长记录复合应用扩展文件(短文件标识符sfi:0017)、循环记录复合应用交易明细文件(短文件标识符sfi:0010)以及定长记录密钥文件(短文件标识符 sfi:0000)。短文件标识符是用来象征文件的2 b的符号标识,可通过此标识对文件进行操作和访问。
2.2 应用命令设计
根据本系统总体结构可知,读取端卡片接收设备与卡片的通信是基于特定协议,通过应用协议数据单元(apdu)的传输和交换来实现。智能卡接收来自卡片接收设备中的apdu命令,并将其传送给相应的java card applet。applet接收传入apdu命令,内部完成分析处理,然后返回一个响应apdu命令。
通过分析设计,本系统卡片端电子钱包及电子存折应用的命令主要包括三部分:个人化命令、基本命令及交易命令。因为卡片和读写器之间的通信是通过应用数据单元(apdu)进行传输,所以各项命令的设计必须符合应用数据单元的固有格式。其中,系统的个人化命令主要包括下列7条专用命令:create file命令、write key命令、initialize update命令、personal authentica te命令、install[for install]命令、append record命令以及delete命令。
根据pboc 2.0规范第1部分及互联互通规范中基本命令描述,本系统电子钱包及电子存折应用基本命令设计,如表1所示。
另外,根据pboc 2.0规范及互联互通规范交易命令的描述,系统还设计了电子钱包及电子存折的应用交易命令。
2.3 应用类设计
本系统出于电子钱包及电子存折应用的扩展性、安全性和高效性的角度对核心类进行拆分,设计了三个主要的用户自定义类:edep类、classfileef类和constants类。
classfileef类中定义了与文件相关的所有属性,有利于提高系统应用交易和文件查找的性能。constants类主要用于预定义整个应用开发中需要自定义完成的常量,负责对应用中的常量数据进行统一管理,抽象类,系统的个人化模块、交易模块以及应用维护模块的实现都依赖于edep类的设计和实现。
系统类与类之间主要存在依赖和泛化关系。对于apdu,iso7816,applet,isoexception,jcsystem,util,deskey,keybuilder,randomdata,signature,cipher等来自java card api类库的系统类,可被edep,classfileef,constants等用户自定义类import对应包直接引用。
3 系统实现
通过前期对电子钱包及电子存折应用的功能需求分析、交易流程分析以及对卡片文件结构、应用命令、相关类的设计,在选择了开发过程中会使用的相关技术后,开始启动程序的开发。
classfileef类成员变量和成员方法主要用于ef文件的建立、ef链表中的文件查找和文件内容的读写,对于要求读写权限的文件而言,首先需要通过方法getkey()获取相关密钥,通过外部认证取得文件操作权限。再通过方法api_findefbyfid()或api_findefbysfi()实现文件查找。当用户需要读取相关文件下对应记录时,通过文件查找方法选择对应文件,确保当前文件层次后,可通过方法appendrecord(),readrecord()和getrecord()对相关记录进行操作。当然,以上操作的前提必须是在该类构造器方法classfileef()中完成相应变量的初始化后进行。
edep类是整个应用开发的核心。在具体的实现过程中重写了父类applet中的install()方法和process()方法。当jcre接收到安装命令之后,调用edep的install()方法,通过一个新的edep对象完成对象的初始化,并调用register()方法完成注冊,告诉jcre实例已成功安装,并可以对这个应用进行选择或执行其他命令,此时卡片的生命周期进入被选择状态,当jcre接收到选择命令之后,调用edep的process()方法,通过此方法完成业务以及命令分支处理。在命令分支处理之前,程序首先得判断一下卡片和应用的锁定情况,如果出现异常,则根据具体接收命令的ins返回不同的状态码。在卡片和锁定检查中没有抛出异常后,程序继续执行命令分支处理。本系统通过switch⁃case语句完成命令的分支和相应功能的选择调用。根据命令设计部分,程序用22个分支完成了process()方法的实现。并且为了提高代码的重用性,不同case语句调用的命令处理方法仅处理其私有业务,对于公共业务的处理则通过再调用通用功能方法的方式实现。
个人化模块实现主要依赖于classfileef类和edep类。交易模块的实现紧紧依赖于 edep类的实现, 交易功能的实现主要是通过edep 类中与交易相关的成员方法之间的互相调用完成。应用维护模块主要负责电子钱包和电子存折中不涉及资金划转的其他维护类功能。文件数据维护、pin(个人识别码)维护、卡片应用状态维护及内外认证维护功能的实现是保障卡片进行正常交易的前提。其中,应用维护模块的实现也主要依赖于edep类的实现,其中各项功能的实现同样是通过edep类中相关成员方法的互相调用来完成。
4 系统测试
本系统借助专用测试工具testcard编写相关测试脚本对系统应用进行测试。首先,对于本系统电子钱包及电子存折应用而言,两个cap文件。通过上述cap包的转换工作,生成一个可以下载并同时安装进智能卡的特定cap文件。在安装和下载之前,必须通过平台的gp或者vgp认证,保障安装的cap文件的合法性[8]。成功执行上述步骤后,开始进行各项测试。
为了保证系统应用的质量,本系统在系统测试环节严格执行测试方案的撰写。按照电子钱包及电子存折应用的技术规范要求,本系统应用测试内容如表2所示。
系统严格按照测试方案对电子钱包及电子存折应用进行全面的系统测试。应用最具参考价值的复合消费交易进行分析,通过图表方式对其功能及性能的测试结果进行简要说明。
(1) 复合消费功能测试
对java card应用功能测试而言,首先需要完成卡片的个人化,即发卡。个人化操作主要是通过私有个人化命令建立应用的文件结构,并通过数据写入命令完成对应文件下相关数据的写入。本系统的个人化脚本通过文件正常测试后建立,个人化脚本编写完成后改动通常不会很大,其他功能测试脚本可通过脚本语言直接对其调用。按照复合消费流程编写正常及异常复合消费测试脚本后,利用测试工具进行功能测试。本文选择一异地复合消费交易测试脚本进行测试,复合消费测试结果如图4所示。对于本系统测试工具,“√”代表测试通过。
(2) 复合消费性能测试
通过对复合消费各命令执行时间的统计可知,本系统电子钱包及电子存折应用复合消费性能数据约为230 ms,各命令执行时间如表3所示。
相对于检测机构300 ms的检测指标而言,本系统性能数据远远超出,这也证实了本系统应用在文件结构、命令、交易流程等多项可优化点的设计及实现方案是成功的。
5 结 论
本文基于智能卡,利用java card技术,侧重于应用扩展性、安全性和高效性的角度在java card应用程序体系结构卡片端完成电子钱包及电子存折应用程序的设计、开发及测试。通过行业应用开通文件的添加及复合消费的设计,实现了金融与多行业应用结合的智能卡电子钱包及电子存折应用。在安全性方面,该应用通过国际des和国密sm双重加密算法来保障电子钱包及电子存折卡片的安全性。另外,通过对卡片文件结构、交易流程、交易命令、写卡片e2prom位置等进行优化,实现了设计要求,提升了电子钱包及电子存折卡片的交易速度。
参考文献
相关热词搜索:;
一键复制