一种基于Android平台实现多功能支付的智能点验钞机及
方法
技术领域
本发明属于金融机具设备技术领域,涉及一种基于Android平台实现多功能支付的智能点验钞机及方法。本发明除能够完成纸币清点、鉴伪等基本功能外,还可以完成移动支付、银联支付等支付功能。
背景技术
由于点验钞机体积较大,具备集成非现金支付手段潜力,如果能够在其上集成非现金支付功能,将能够大幅节约商户收银柜台面积,使柜面更加整洁,提升商户形象。这类非现金支付设备目前不能与现金设备点验钞机进行有机的整合,其原因主要在于目前还没有办法在同一个运算器上完成非现金支付和现金点验功能,即使有一体化的产品也只是简单连接两个独立的系统,如申请号2013105705841,“一种带pos机的点验钞机” ,只是简单的将在点验钞机本体内置一pos机,pos机的操作面板位于点验钞机本体的上表面,pos机与点验钞机本体内的控制电路板相连,使得这种带pos机的点验钞机具备点钞和刷卡的功能,但该机仍不能满足现今支付多样化要求。
非现金支付方式与现金点验设备在设计上的侧重点存在不同:非现金支付设备主要采用了单片机或ARM方案,特别是移动支付设备往往采用了基于ARM(Advanced RISCMachines)的Android方案,侧重点在于交易和系统安全性;点验钞机主要有单片机、DSP(Digital Signal Processing)、ARM等三大类解决方案,基于Linux平台的居多,侧重点在于系统可靠性和实时性。
目前常见的点验钞机系统方案如下:
方案1.单片机或无操作系统ARM方案;
方案2.DSP或无操作系统ARM结合FPGA(Field Programmable Gate Array)方案;
方案3.运行Linux或其它操作系统的ARM用于人机交互,另外使用ARM(或多核ARM中的一个核)或其他外部处理器来完成鉴伪功能的方案。
方案1与方案2因使用的都是封闭系统,得不到移动支付服务提供公司支持,基本无法实现对移动支付的支持。方案3虽然具备非现金支付与现金点验潜力,但其实现方式、成本都与分离设备通过线缆连接并无本质区别。
但点验钞基于的Linux与非现金支付基于的Android却存在一定的冲突,点验钞的点验钞关键进程(Continuous Current Mode简称CCM),通过加载Linux实时补丁获得为保障系统实时性保障,但该CCM无法融入Android运行时环境(runtime)。由于CCM作为独立于Android系统的Linux的实时进程, 需要与Android系统的应用程序(Application简称APP)进行数据交互,既不能使用Linux下的C/C++多进程通信的DBUS(Data Base UtilitySubsystem),也不能使用Android系统内的Binder进行通信。
发明内容
为了解决上述技术问题,本发明提供了一种基于Android平台实现多功能支付的智能点验钞机及方法,能够在一台设备上实现现金支付和非现金支付的要求。
本发明的一种基于Android平台实现多功能支付的智能点验钞机,其特征在于:包括ARM处理器、传感器数据采集控制模块、存储模块、人机交互模块、数据传输模块、电机控制模块、POS功能模块;
所述传感器数据采集控制模块用于磁信号、红外信号、紫外信号、胶带纸信号、进接钞检测信号、码盘、CIS图像的采集、处理、判断,以实现纸币面额识别、统计、鉴伪功能;
所述存储模块用于存放运行的代码、程序文件、配置文件、库、商品资料、点钞机的状态信息和即插即用的数据读写;
所述人机交互模块用于控制外设的输入显示设备;
所述数据传输模块用于控制外设的网口、移动支付设备、打印设备;
所述电机控制模块由ARM 处理器控制工作;
所述POS功能模块用于POS刷卡;
所述ARM处理器分别与所述传感器数据采集控制模块、存储模块、人机交互模块、数据传输模块、电机控制模块、POS功能模块连接,用于控制所述传感器数据采集控制模块、存储模块、人机交互模块、数据传输模块、电机控制模块、POS功能模块工作。
本发明的一种基于Android平台实现多功能支付的方法,其特征在于:所述智能点验钞机的软件部分包括linux内核、CCM核心进程、Android基础程序框架、应用程序四大模块,所述linux内核、Android基础程序框架为所述智能点验钞机的系统软件,所述CCM核心进程、应用程序组成了智能点验钞机的应用软件;
所述linux内核、CCM核心进程、Android基础程序框架、应用程序在ARM处理器上运行;所述linux内核、CCM核心进程是智能点验钞机的点验钞功能区,并将结果输出到应用程序的现金APP模块上;所述Android基础程序框架、应用程序是非现金支付方式的功能区,非现金支付方式主要通过应用程序的卡APP、支付APP完成;
所述CCM核心进程并行于Android基础程序框架。
与现有技术相比,本发明具有以下有益效果:
本智能点验钞机采用通用的ARM处理器,运行优化过的Android系统,CCM核心进程并行于Android基础程序框架,CCM核心进程与智能点验钞机的应用程序实现了良好通信,不仅能够实时完成人民币、外币的鉴伪、计数,还能够运行微信、支付宝等APP软件。另外,该设备还具备无线联网功能,本发明结构简单,设计新颖,用户体验好,实用性强,易于广泛推广应用。
附图说明
图1是本发明实施例的硬件结构图。
图2是本发明实施例的软件框架图。
图3是本发明实施例的数据通信图。
具体实施方式
为了便于本领域普通技术人员理解和实施本发明,下面结合附图及实施例对本发明作进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明。
请见附图1,本发明提供的一种基于Android平台实现多功能支付的智能点验钞机,包括ARM处理器1、传感器数据采集控制模块2、存储模块3、人机交互模块4、数据传输模块5、电机控制模块6、POS功能模块;传感器数据采集控制模块2用于磁信号、红外信号、紫外信号、胶带纸信号、进接钞检测信号、码盘、CIS图像的采集、处理、判断,以实现纸币面额识别、统计、鉴伪功能;存储模块3用于存放运行的代码、程序文件、配置文件、库、商品资料、点钞机的状态信息和即插即用的数据读写;人机交互模块4用于控制外设的输入显示设备;数据传输模块5用于控制外设的网口、移动支付设备、打印设备;电机控制模块6由ARM 处理器1控制工作;POS功能模块用于POS刷卡;ARM处理器1分别与传感器数据采集控制模块2、存储模块3、人机交互模块4、数据传输模块5、电机控制模块6、POS功能模块连接,用于控制传感器数据采集控制模块2、存储模块3、人机交互模块4、数据传输模块5、电机控制模块6、POS功能模块工作。
ARM处理器包括包括内置的Cortex-A9内核37、第一PRU8、第二PRU10、第三PRU14、第四PRU17、第一ADC(Analog-to-Digital Converter)9、第二ADC24和多个数据接口;Cortex-A9内核和第一PRU(Programmable Real-Tim Unit)8、第二PRU10、第三PRU14、第四PRU17组成了ARM的处理中心,二者分工合作,提高处理效率;第一ADC9用于采集磁信号、紫外信号、红外信号、胶带纸检测信号、进钞检测信号;第二ADC24用于控制LCD及触摸屏设备;数据接口包括第一SPI(Serial Peripheral Interface) 11、第一CAM(Camera) 12、第二SPI 13、第二CAM 15、第三SPI 16、第一GPIO (General Purpose Input Output)18、第一UART (Universal Asynchronous Receiver/Transmitter)19、第四SPI 20、第五SPI 21、第二GPIO 22、DSS(Display Subsytem ) 23、RGMII(Reduced Gigabit Media IndependentInterface ) 25、MIDO (Management Data Input/Output)50、SDIO 56、第一USB(Universal Serial Bus)26、第二USB 27、MMC(Multimedia Card)28、第二UART 29、第三GPIO 30、第四GPIO 31、第三UART 32、GPMC (General Purpose Memmory Controller)33、EMIF(External Memory Interface) 34 、I²C ( Inter-Integrated Circuit)35。
传感器数据采集控制模块2包括磁信号处理模块38、红外信号处理模块39、紫外信号模块40、胶带纸模块41、进接钞模块42、码盘模块43、红外发射模块44、CIS(ContactImage Sensor)图像采集模块45;磁信号处理模块、红外信号处理模块、紫外信号模块、胶带纸模块经多路复用开关向ARM处理器上的第一ADC发送模拟信号;ARM处理器上的接口第一SPI连接DAC(Digital-to-Analog Converter)49;第一SPI控制DAC49自动完成红外信号校正,红外发射模块44完成红外发射;进接钞模块直接向第一ADC发送模拟信号;码盘模块直接向ARM处理器上的第二PRU输送数据流;第一ADC、第二PRU将信息流转换成ARM处理器能识别的数字信号后,经ARM处理器实时完成纸币的面额识别、统计、鉴伪功能。
CIS图像处理模块所产生的CIS图像数据经过82V48模数转换后,通过ARM处理器的高速并行数据接口第一CAM、第二CAM,由片内DMA(Direct Memory Access)控制器将数据搬移到片上缓存,通过ARM处理器芯片内的第一PRU、第四PRU单元对片上缓存的数据进行重排序、预处理和统计,然后将数据搬移到存储模块的DDR内存上供ARM处理器进行纸币信息识别,使得单个的ARM处理器完成了纸币图像数据的采集、处理、判断功能;82V48与ARM处理器上的接口第二SPI、第三SPI、第三PRU相连,接口第二SPI、第三SPI通过控制82V48来控制CIS的发光;接口第三PRU控制82V848和CIS的时序。ARM 处理器通过接口第一GPIO控制电机控制模块6工作,纸币通过红外传感器、紫外传感器、磁传感器、CIS图像传感器,由磁信号处理模块38、红外信号处理模块39、紫外信号模块40、CIS图像采集模块45采集对应的信号,并经内置第一ADC转换,ARM处理器1实时完成人民币、外币的面额识别、统计、鉴伪等操作,并将处理结果反馈到人机交互模块3。
存储模块3包括FLASH存储器、DDR(Double Data Rate)内存、EEPROM分别与ARM处理器上的接口GPMC、EMIF、I²C相连;DDR内存用来存放运行的程序代码;FLASH存储器用来存储程序文件、配置文件、库、商品资料以及点验钞机的状态信息;EEPROM用于即插即用的数据读写。
人机交互模块4包括设于ARM处理器1上面的接口第一UART19、第四SPI20、第五SPI21、第二GPIO22、DSS23、第二ADC24;第一UART19用于控制外设的二维扫描设备,接口第四SPI20、第五SPI21控制外设的LED内、外显示设备,第二GPIO22控制按键输入设备,DSS23、第二ADC24控制LCD及触摸屏设备;按键输入设备用于辅助控制显示界面。
数据传输模块5包括设于ARM处理器1上的接口RGMII 25、MDIO 50、SDIO56、第一USB26、第二USB27、MMC28、第二UART29;RGMII、MDIO用于控制网口,SDIO用于控制蓝牙和WIFI,第一USB控制USB Host,第二USB控制USB Device,MMC用于控制外设的TF(Trans-flash Card)卡,第二UART用于控制打印设备;USB Host用于连接外界U盘、打印机、扫描枪,USB Device用于连接手机、电脑。
点验钞机还设置有具备密钥安全存储功能的加密芯片7,通过第三GPIO30、第四GPIO31、第三UART32与银行交易系统进行交互,完成POS交易功能。
请见附图2,本发明提供的一种基于Android平台实现多功能支付的方法,将现金支付与非现金支付所对应的CCM核心进程与Android运行环境进行有机结合,使二者既相互独立,又能发挥各自的优势。
智能点验钞机的软件部分包括linux内核51、CCM核心进程52、Android基础程序框架53、应用程序54四大模块,linux内核51、Android基础程序框架53为智能点验钞机的系统软件,CCM核心进程52、应用程序54组成了智能点验钞机的应用软件;
linux内核、CCM核心进程、Android基础程序框架、应用程序在ARM处理器上运行。linux内核、CCM核心进程是智能点验钞机的点验钞功能区,并将结果输出到应用程序的现金APP模块上。Android基础程序框架、应用程序是非现金支付方式的功能区,非现金支付方式主要通过应用程序的卡APP、支付APP完成。
CCM核心进程并行于Android基础程序框架, CCM核心进程通过加载Linux实时补丁为系统提供实时性保障,同时CCM核心进程能够获取传感器数据采集控制模块的信息及对外设的访问权限,从而完全满足智能点验钞机对系统实时性要求。
请见图3,本实施例的CCM核心进程由C/C++开发,智能点验钞机的应用程序采用JAVA程序开发,CCM核心进程与智能点验钞机的应用程序之间使用了UNIX域通信55方式。UNIX域通信55方式与使用TCP/IP socket使用方式基本一致,UNIX域通信方式由于不使用TCP/IP协议栈,性能比使用TCP/IP socket快一倍。
本发明采用一种基于Android操作系统,使用单运算器完成移动支付、POS支付、点验钞功能的一体化设备。通过Android系统的运用,可使得该设备具备网络鉴伪数据库升级、交易统计数据远程访问等智能化功能。
应当理解的是,本说明书未详细阐述的部分均属于现有技术。
应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。