查看: 14398
回复: 17
报名参加第二次电子设计大赛-扫码支付中间件
云逸Baby
1
主题
7
回复
发表于2017-05-24 10:43:09 | 显示全部楼层
1# 电梯直达

【报名阶段需要填写的内容】


1. 参赛者姓名(必填项):

施勇

2. 单位或学校名称(必填项):

上海倍库电子科技有限公司

3. 当前职务或职称(必填项):

研发工程师

4. 参赛作品的名字(必填项):

支付宝微信扫描支付中间件

5. 简要陈述您的idea和作品(必填项):

模块封装好了完善的支付宝微信的支付请求协议,与自建的云服务器进行通信,完成支付逻辑。用户只需要在服务端,设置好微信和支付宝收款账号信息即可

用户通过串口或者485与模块进行交互,不用考虑的微信和支付宝的支付协议解析。大大缩短线下带支付产品开发。



6. 拟用到的立创商城在售物料(必填项):

stm32103RC,tps54331 sp3485 sp3232  等

7. 拟用到的非立创商城物料或其它补充(必填项):

sim800a 


【作品正式发表(报名成功后进入设计阶段)需要填写的内容】


一、作品简介

例如,可以包括但不局限于以下内容:

1.作品的PCB

 

作品焊接成品图片:

 


2.作品的研究背景、目的和功能、市场应用前景;

未来越来越多的商品服务通过现在自动售货等设备提供服务,现在扫码支付使用已经非常普遍。但是对于设备开发商来说,要设计一套扫码支付设备包括支付后台服务器还是有难度的。

鉴于此,开发一台扫码支付中间件。用户只需要熟悉串口通讯等通信协议,无须关心与微信支付和支付宝服务器的通信协议,只需要在服务器端设置好支付参数,就可以进行支付设备开发。大大缩短了,开发周期。目前共享设备异常火爆,这些设备都需要提供支付功能。此中间件市场前景应该很好

3.作品在创新性、趣味性、实用性甚至公益性方面,有哪些亮点可体现?

作品集成了电子技术与软件技术与一体融合了GPRS通信,内部集成了与后台服务器的支付通信协议,对线下支付设备开发者提供了简易的接口。此外作品提供一路DTU链路,可供用户传输自由数据。


二、系统构架图

用流程图或思维导图等形式,描述您的作品的组成构架,即方案图。

 

三、硬件部分的描述

1.原理图和PCB文件,Pads 开发

PayHardWare.zip 

2.用文字把该作品的实现原理、系统的工作过程大致讲解一下。

     系统主要分为2个部分,用户串口数据的解析,和支付请求数据和支付返回数据的解析。

模块通过串口接收用户支付数据,先解析校验用户请求数据后,更具用户的支付金额等参数,生成AES加密支付报文,通过SIM800A 发送到后台服务器。

后台服务器对模块发送来的支付数据进行二次验证,验证通过后,根据需要向支付宝或者微信支付服务器发送支付请求数据。随后后台服务器将接收到微信和支付宝的支付链接数据

发送给模块,模块接收到这些数据后,经过验证,通过串口发送给用户设备。

     此后,模块将进入等待支付结果状态。通过服务器的异步通知和模块定时轮休订单状况来确认当前订单的支付状态。定时将支付状态返回给用户。可以根据用户的设定,支付成功后,开启某个继电器。


四、材料清单(BOM列表)


 

五、软件部分的描述(选填)

如果您的作品涉及到软件,请列出作品对应的软件工作流程图,及关键部分的例程、源码(如果您想开源的话请上传全部源码)。


串口接收解码流程图:

 

GPRS 发送异常处理流程:

 

支付请求流程处理:

 


六、作品演示

请上传您的作品的功能演示到腾讯视频,并编辑到本楼(或附上视频链接)。按要求上传视频可获得5分,具体详见活动规则。

支付演示:


后台服务器演示:

七、总结


本作品主要功夫主要在软件上面。涉及到支付等资金操作,对系统的稳定性可靠性要求非常高。

对每笔支付订单,需要能明确的给出支付状态,即使设备异常重启,也不能丢失订单状态。这就要服务端和设备端都要进行密切配合,对每笔订单的支付log都要落地。

在通信方面,GPRS 与服务器端的要维持长链接,通过心跳来保持连接。由于各种各种不可控,链接会中断,这就需要设备需要及时的重连的能力。设计一台优雅的重连机制非常重要。

未来产品近继续完善,加入软件远程升级能力,在协议方面会添加多种协议。

jetbin
4
主题
50
回复
发表于2017-08-17 13:47:53   |  显示全部楼层
6#
有点不太明白,好像屏幕仅仅是为了显示一个二维码,没看到显示屏有什么变化,理论上貌似打印一个二维码也可以完成;是否应该把金额以及支付结果也显示出来啊
DIY玩家:a-diy.cn
jetbin
4
主题
50
回复
发表于2017-08-28 12:56:08   |  显示全部楼层
13#

个人觉得同样的功能如果使用ESP8266的lua语言结构写一小段Lua调用微信的api(当然这种方案只能走wifi),再使用串口屏来显示QR二维码,估计整体50元左右成本(含屏)可以搞定; 连接电脑也不需要串口,直接用http协议连接控制显示就可以;如果是跨网段,可以使用mqtt协议进行全网连接;有时候的关键技术可能是成本控制;

ESP8266模块12元,烧写LUA固件;Usart GPU26BK  2.6吋的40元左右; 两个模组直接TX RX串口连上,供上电就可以了

DIY玩家:a-diy.cn
jetbin
4
主题
50
回复
发表于2017-08-29 13:23:36   |  显示全部楼层
15#
发表于2017-08-28 15:30:22  14# 当初的设计思路是,应用逻辑层固定,通信层可兼容wifi,GPRS,以太网等,不同的通信方式,只需要加载相应的通信接口程序...

理解,看样子楼主应该设计过大项目;

只不过从设备分层的角度来看,可靠性以及容错最好建立在服务器体系上,类似阿里云,毕竟这是绝对成熟的商业服务,服务器的容错是没有问题的;既然有了这个基准,那么剩下的设备要求越松散,系统的可靠度越高,也就是说显示部分只负责显示,可以由服务器调度,客户端断电后,可以自动获取未完成交易进行显示;

另外,从实际使用过程中,如果现场有计算机之类的(比如收银机),完全可以使用计算机的USB转成TTL的串口直接驱动串口屏显示QR二维码以及价格,貌似更直接一些

-------------------------------------

前一段接触过几个做商城娃娃机的朋友,开始他们打印张贴支付二维码进行微信扫码支付,由于娃娃机无人职守,结果发现有人打印同样大小颜色的二维码不干胶覆盖到他们的二维码上进行偷钱;于是需要液晶屏显示二维码进行支付来弥补这个漏洞,这也是楼主这个项目的一个典型需求,至少这帮人量大,承受不了高价格方案

DIY玩家:a-diy.cn

主题

回复
  • 温馨提示: 标题不合格、重复发帖、发布广告贴,将会被删除帖子或禁止发言。 详情请参考: 社区发帖规则
  • 您当前输入了 0 个文字。还可以输入 8000 个文字。 已添加复制上传图片功能,该功能目前仅支持chrome和火狐

禁言/删除

X
请选择禁言时长:
是否清除头像:
禁言/删除备注:
昵 称:
 
温馨提示:昵称只能设置一次,设置后无法修改。
只支持中文、英文和数字。

举报

X
请选择举报类型:
请输入详细内容:

顶部