掌桥专利:专业的专利平台
掌桥专利
首页

一种智能机具在线动态仿真装置

文献发布时间:2023-06-19 19:35:22


一种智能机具在线动态仿真装置

技术领域

本发明涉及一种智能机具在线动态仿真装置。

背景技术

随着自助设备机具行业的不断发展,自助设备机具的数量急剧增加,应用的领域也越来越广泛,包括金融、税务、政务、医疗等多个领域。而且随着自助机具智能化程度越来越高,集成的基础模块也越来越多,包括可以读卡的读卡器模块、正确识别钞票真伪和数量的现金类模块、人体生物特征识别的指纹仪模块和人脸摄像头模块、支持个性化定制的制卡模块、保障通信安全的密码键盘模块、身份证阅读器模块、手写签名、发卡模块(如银行卡、社保卡)、发票模块、支票模块等。集成了这些功能模块,智能机具支持的业务功能也更为丰富便捷。

但在智能机具配套环境研制开发过程中,这些功能模块普遍硬件成本高,常受限于硬件模块资源限制,难以给分布在全国各地的开发与测试人员提供与之配套的硬件模块资源,于是硬件模块资源常成为项目中的资源瓶颈,出现因硬件环境无法及时到位从而拖延了项目整体开发进度;或者即使硬件模块到位后,团队内多人并行开发或测试时,仍然存在硬件模块资源不够,导致硬件资源抢夺与竞争的问题。同时,在开发、测试过程中偶现一些异常问题时,测试人员使用真实的硬件设备很难再复现这些问题,常导致偶现问题迟迟没有得到解决。此外,为了提高产品质量,常采用自动化测试方法,但涉及到一些需要人参与的操作(如插卡、插证件、按指纹、输入密码等)时,因等待人工操作难以做到自动化测试,迫切需要模块能支持自动化测试。而且智能机具配套环境涵盖了Windows、Linux、Android等不同的操作系统环境,为了验证应用软件的兼容性,常需要搭建多套硬件环境。

发明内容

本发明目的在于提供一种智能机具在线动态仿真装置,以解决硬件资源瓶颈、偶现故障难以排查、人工干预步骤多难以实现自动化等问题。为达成此目的,本发明提出如下技术方案。

一种智能机具在线动态仿真装置,包括:

分别与处理中心模块通信连接的仿真驱动模块、属性配置模块和数据库模块,以及与数据库模块通信连接的权限管理模块;

所述的仿真驱动模块包括多个用于模拟硬件设备中各个结构的仿真单元,以用于组合并模拟形成一个整体硬件设备运行;

所述的属性配置模块用于对仿真驱动模块中各个仿真单元进行参数属性的配置操作;

所述的数据库模块用于存储包括权限信息和设备信息在内的数据;

所述的处理中心模块用于从仿真驱动模块、属性配置模块和数据库模块中获取相应数据并进行处理,从而形成仿真设备以及仿真动态过程并提供给用户;

所述的权限管理模块用于管理不同用户的权限。

所述的装置,所述的权限管理模块,是通过以下步骤执行权限管理:

步骤一,初始化时建立系统管理账号及相应密码;

步骤二,以系统管理账号身份建立代表一个组织机构的租户账号及相应密码;

步骤三,以租户账号身份建立属于租户下的用户账号及相应密码;

步骤四,权限管理模块为基于用户账号登录的用户提供操作权限,以进行相应的仿真操作。

所述的装置,所述的处理中心模块,是通过以下过程为用户创建仿真设备:

设定仿真设备的基本信息和模块配置表,其中基本信息至少包括设备名、IP地址、MAC地址在内的信息,模块配置表包括仿真设备中包括的仿真单元数量及种类信息;

然后为每个仿真单元基于属性配置模块来初始化仿真参数,仿真参数至少包括仿真单元的当前状态、介质的当前状态、仿真单元支持的功能列表以及每个功能的预期结果。

所述的装置,所述的仿真参数中,仿真单元的当前状态用于表示仿真单元所模拟的结构当前是否为正常,包括正常、离线、故障和未知;介质的当前状态用于表示需要使用介质的结构中的介质情况,包括有介质、无介质、卡住和未知;仿真单元支持的功能列表用于表示仿真单元能够模拟的硬件动作列表;每个功能的预期结果是指用户期望此次操作是成功还是失败,以及设置失败原因。

所述的装置,所述的属性配置模块,对各个仿真单元进行参数属性的配置操作包括:

1)模拟即时故障:根据仿真的需要来修改仿真单元的仿真参数,模拟特定功能执行时发生故障;

2)模拟事后故障:模拟执行某功能成功返回,但执行完成后该仿真单元故障,即在仿真单元驱动执行某动作后属性值改变;

3)模拟随机故障:模拟随机出现模块故障,以使仿真单元根据设置在随机时间出现故障,从而复现偶发问题。

所述的装置,基于装置进行仿真的步骤包括:

(1)装置基于用户操作来发起仿真过程,以依次执行仿真过程中的动作;

(2)处理中心基于当前执行的动作,查询相关仿真单元的所有最新状态;

(3)判断当前执行的动作中的指令为查询类指令还是执行类指令,如果是查询类指令,则将步骤(2)中的查询结果返回给用户,并进入步骤(11);否则进入步骤(4);

(4)如果是执行类指令,则判断步骤(2)中的哪些状态会影响本次执行结果,形成设备属性列表,并检查设备属性列表中的各个状态值是否为正常,如果获取到该指令对应的状态此时为故障,则返回故障信息给用户,进入步骤(11),否则进入步骤(5);

(5)如果此时设备属性列表的各个状态都为正常,则向处理中心模块发起查询请求,查询该指令所涉及的仿真单元配置的是手动模式还是自动模式,以及对应的功能的预期结果;如果是自动模式,则进入步骤(9),否则进入步骤(6);其中手动模式是指需要等待用户进行操作,否则为自动模式;

(6)判断该指令是否涉及用户人工操作才能完成的动作,如果没有则进入步骤(9);否则进入步骤(7);

(7)判断是否超时,如果超时则返回超时提醒给用户,并进入步骤(11);否则进入步骤(8);

(8)判断用户是否已完成操作,如果没有完成操作则返回步骤(7);如果已完成则进入步骤(9);

(9)检查功能的预期结果是成功还是失败,如果是成功,则返回成功信息给用户,并进入步骤(11);否则进入步骤(10);

(10)根据失败对应的故障类型,判断是该仿真单元本身硬件类故障还是其他类故障,如果是本身硬件类故障,则由处理中心将该仿真单元的当前状态设置为故障,进入步骤(11);如果是非本身硬件类引起的故障,则直接返回故障信息给用户,然后进入步骤(11);

(11)判断当前执行的动作是否还有下一步执行动作,如果有,则继续判断下一步执行动作是改变仿真单元的状态还是执行指令,如果是改变仿真单元的状态则改变状态后结束本次仿真过程,如果下一步执行动作是执行指令则返回步骤(2),如果没有下一步执行动作则结束本次仿真过程。

所述的装置,查询类指令是用于查询仿真设备信息的指令;执行类指令是用于执行具体的设备操作动作的指令。

本发明的技术效果在于,本发明能够在用户没有硬件模块资源的情况下,通过在普通的终端电脑上安装仿真驱动,并在权限管理模块配置该终端相关的设备基础信息、模块列表、每个模块的属性参数信息即可替代真实硬件使用,该方法可以灵活模拟各种应用场景时的设备特性,不仅解决了开发和测试过程中硬件资源瓶颈的问题,而且当仿真模块设置为自动模式时,模块无须等待人工操作能快速返回,为自动化测试提供模拟真实设备的测试环境,更是可以灵活配置仿真设备模块特性,为偶现错误问题分析与定位提供调试测试环境,从而极大提升软件产品质量。

附图说明

图1在线动态设备仿真系统的架构图;

图2权限管理模块仿真智能机具三级用户管理体系;

图3权限管理模块新建仿真设备与仿真模块;

图4仿真模块响应上层设备调用。

具体实施方式

下面将结合实施例对本发明做进一步的说明。本实施例中,智能机具在线动态仿真装置包括仿真驱动模块、处理中心模块、属性配置模块、权限管理模块和数据库模块(DB)。其中仿真驱动模块运行在普通终端(如普通笔记本电脑、台式电脑)上,同时普通终端上还运行有应用、中间件和SP,这些均是用于调用仿真装置的具体软件组成部分,以便于实际用户的操作,由于其均是由实际用户进行操作并接收仿真装置返回的信息以显示给实际用户,故本实施例中均以用户作为描述对象。而仿真驱动模块集成多个仿真单元,与处理中心形成交互,为应用、中间件和SP提供设备调用服务。处理中心模块为仿真驱动和属性配置模块提供数据访问服务。权限管理模块对账户信息、仿真设备和仿真模块信息等进行管理,如图1所示。

权限管理模块为了便于银行、证券、医疗、政务等不同类型客户的不同使用场景中进行集中用户管理,设计三级用户管理体系:其中系统管理员拥有最高权限,可以对系统中涉及的所有账户信息、仿真设备和仿真模块、设备模块属性模板信息等进行维护和管理,系统管理员通常可以根据需要创建多个租户;每个租户通常为一个客户(如某银行、某医院等),租户的信息即为该客户的基本信息,租户有权维护该租户下的所有用户信息、仿真设备和仿真模块等信息,一个租户根据购买需要可以创建一到多个用户(具体用户数量由购买后的权限确定,系统管理员有权配置);用户通常为一个租户下的某个具体使用角色(如某银行的某项目测试人员),用户可以维护该用户创建的所有仿真设备和仿真模块等信息,用户通常可以创建一到多个仿真设备(具体仿真设备数量由购买后的权限确定,系统管理员有权配置),如图2所示。

本实施例具体的初始化步骤如图3所示,下面以新建一台发卡机设备为例,初始化步骤如下:

(1)权限管理模块初始化时默认一个系统管理账号和初始密码;

(2)系统管理员使用默认的账号和密码首次登录后,系统强制要求修改初始密码;

(3)系统管理员在权限管理模块的账户管理中可以新建一个或多个租户,如某银行某网点机构、某医院等,创建租户时,系统管理员录入租户的基本信息(如所属机构名称、租户名、联系电话、邮箱等),并设置默认初始密码;

(4)系统管理员在权限管理模块的资产管理中维护所有仿真设备和仿真模块信息,包括仿真设备列表、仿真模块列表、仿真模块属性模板等:仿真设备主要是设备机型,如ATM设备、发卡机、制卡机等,此处设置为发卡机设备;仿真模块具体指协助办理业务的模块,如仿真二代身份证模块、仿真读卡器模块、仿真指纹仪模块、仿真摄像头等模块;

(5)每个租户使用默认初始化密码首次登录后,强制要求修改初始密码。租户可以查看并修改自己的信息(如所属机构名称、租户名、联系电话、邮箱等),也可以在权限管理模块的账户管理中,根据系统管理员配置的权限限制新建一个或多个用户,并录入用户的基本信息(如所属机构名称、用户名、联系电话、邮箱等),每个用户设置有单独的账号和默认初始默认密码;租户可以看到自己创建的所有用户列表和用户信息;

(6)每个用户使用默认初始密码首次登录后,强制要求修改初始密码。每个用户可以维护自己创建的所有仿真设备与仿真设备关联的仿真模块信息;

(7)如果用户需要新建仿真设备,需要添加仿真智能机具的基本信息(如设备名为发卡机设备、IP地址和MAC地址为这台普通终端的地址)和模块配置表(如发卡机设备需要配置仿真读卡器模块、二代身份证模块、密码键盘模块、凭条打印模块、摄像头模块、指纹仪模块等);

(8)配置完该仿真模块配置表后,为每个模块根据仿真模块属性模板设置初始化参数(参数包括设备的当前状态、介质的当前状态、模块支持的方法列表以及每个方法的返回参数等)。如配置读卡器模块当前的模式为自动模式,当前的设备状态为设备正常,当前的介质状态为无介质,当前的方法列表为读卡器模块支持的所有方法列表和参数,如读磁可以设置返回的磁条卡的磁道track1、track2、track3的数据。

完成发卡机仿真设备的新建和仿真模块的配着初始化后,模块属性的参数还可以通过以下三种方式动态改变:

(1)手动修改:通过属性配置模块选择仿真模块,手动修改状态和参数。如手动将读卡器状态修改为故障状态时,所有调用都会返回设备状态故障;手动选择插入卡时,仿真读卡器模块显示有介质状态;手动设置读卡返回介质故障时,调用读卡功能会返回读卡故障中的介质故障;

(2)执行后修改:模拟执行某动作成功但执行后故障,在仿真模块驱动执行某动作后属性值改变,执行某一动作后对当前仿真设备所产生的影响可以灵活配置成任意单一或组合影响。如读卡器模块执行读卡动作后,设备状态变为故障,或者在执行读卡后再执行退卡时设备故障,或者在执行读卡后再执行退卡和吞卡时都会设备故障等;

(3)定时修改:模拟随机出现模块故障,具体时间可以随机设置,仿真模块驱动会根据设置随机出现故障。如设置2s后设备故障,2s后会改变设备的状态为设备故障,此时可能随机在执行某一操作动作。

本实施例的具体调用和处理流程如图4所示,上层金融/医疗/政务应用程序完成某个具体业务时,由仿真模块支撑真实业务处理流程中的设备调用。下面以仿真发卡设备办理发卡业务为例,具体步骤如下:

(1)进入金融业务主界面,用户选择办理发卡业务,需要使用到仿真二代身份证读取单元、仿真摄像头、仿真发卡单元、仿真指纹仪、仿真读卡器、仿真密码键盘、仿真签字笔等仿真单元。应用通过中间件调用SP服务,SP调用仿真驱动服务。

(2)以所需要进行仿真过程是调用二代身份证的读取动作。

(3)仿真二代身份证单元向处理中心发起查询请求,查询此时仿真二代身份证单元相关的所有最新状态,包括此时二代身份证的设备状态和二代身份证的介质状态。

(4)根据调用动作的不同,指令可以分为查询类指令和执行类指令。其中,查询类指令主要用于查询设备状态、设备能力、介质状态、耗材状态等信息。执行类指令指执行具体的设备操作动作,如初始化设备、读卡、读二代身份证、发卡、吞卡、出钞、存钞、打印等动作。判断此时是查询类指令还是执行类指令,如果是查询类指令,则步骤(2)中的查询结果返回给SP服务,进入步骤(13)。

(5)二代身份证读证是执行类指令,则判断步骤(2)中的哪些设备属性状态会影响本次执行结果,形成设备属性列表,包括设备状态、介质状态等信息,并检查设备属性列表中的设备状态是不是正常,介质状态是不是有介质,如果此时设备状态为故障,则返回故障信息给SP服务,进入步骤(13)。如果此时设备属性列表的各个状态都为正常,则向处理中心发起查询请求,查询该读证指令的返回参数配置。

(6)向处理中心发起查询二代身份证模块读证属性参数请求,查询二代身份证模块配置的是手动模式还是自动模式。

(7)如果是手动模式,读证指令涉及用户人工操作才能完成的动作(等待客户插入身份证),则等待用户插入证件。

(8)判断是否等待插证超时,如果是超时直接返回超时,进入步骤(13)。

(9)如果此时没有超时或设置的无限超时,则判断用户是否已完成操作,如果没有完成操作继续进入步骤(8),如果读证已完成操作进入步骤(11)。

(10)如果是自动模式,直接进入步骤(11)。

(11)判断读证的参数是否是正常返回,还是返回错误码,如果是正常,则返回正常的读证数据给SP服务,进入步骤(13)。

(12)如果参数是返回故障码,则仿真模块需要根据故障类型,判断是设备本身故障还是其他类故障(如介质不符合要求)。如果是设备类故障,则需要判断此次执行操作会影响哪些设备属性,形成设备属性列表,向处理中心发起请求,返回故障并更新设备属性列表的各个设备状态,进入步骤(13)。如果是非设备类引起的故障,则返回故障,进入步骤(13)。比如,读证的属性设置为返回1700044003代码,该代码表示进卡超时,此时只是因为未正常插入证件,不影响仿真设备状态。但如果是返回1700041032代码,该代码表示USB口读数据错误,那么此时需要修改仿真设备状态为故障。

(13)判断当前执行的指令是否配置了执行完后的下一步执行动作,如果配置了则执行下一步动作,可以灵活模拟读证后发生的各种故障场景,比如执行完读证操作后将设备状态设置为故障,表示读证完后设备即发生故障的场景,在改变完设备状态后即结束当前的二代身份证读取反正过程。又比如执行完读证操作后设备故障并且介质状态为无介质状态,表示读证完后设备故障且检测不到介质的场景。如果后续还有其他执行指令的动作,则返回步骤(2)继续循环流程。如果没有配置后续处理,则结束本次仿真过程。

相关技术
  • 一种烧结燃料粒度在线智能检测装置及其检测方法
  • 一种基于动态仿真与智能控制策略的压缩机组并网联合供气方法、装置和系统
  • 一种用于农用机具的智能牵引与移动装置
技术分类

06120115967944