项目一:物联网云打印系统开发以及系统接入其他系统的开发
开发需求和问题难点:
打印机品牌多样化,硬件接口不统一,驱动多样化
打印协议不一致主要是基于 http 的 ipp1.0 协议,
系统在 arm 和 mips 架构上运行,还要能在能够移植 android 系统上
Android 系统上没有相应的底层库
开发板配置有限,要通过内网渗透将开发板控制权交给服务器
打印页面渲染需要拆分,拆分后按流的方式发给打印机,要处理线程数据一致问题
由于打印机使用 ipp 协议(阻塞),需要解决打印机状态,打印结果上报实时上报的中间状态
解决服务端和开发板高性能,高并发的通信
复印件打印页数难以统一,无法完成复印的支付
项目职责:
开发 android 系统和 arm,mips 架构下的代码交叉编译,和一些底层库的交叉编译
服务端 websocket 协议设定,通信业务支撑,开发板打印协议的封装(线程池)
Android 系统下使用 JNI 调用底层库,并设计业务逻辑
打印模块,打印结果上报模块,打印状态模块联调
打印流程拆分,打印页面拆分
辅助功能开发
开发板蓝牙或 wifi 配置辅助软件开发
集成打印机复印的页数获取
丰富打印字体,和打印文件的支持
解决的问题和完成情况:
封装打印模块,实现打印协议(usb 协议或网络 ipp 协议)和打印驱动的“统一”。
打印流程和打印细节的调整以及打印文件压缩,实现做微小系统配置下打印,大大节省硬件成本。
增加辅助功能,如远程支持,二维码和广告打印,远程更新,人脸检测。
优化代码结构,编译方式,实现跨平台一键编译部署。
开发 Android 云打印应用程序开发,使用 MVP 架构,快速扩展用户端需求。
开发打印机复印件页数获取并收费的需求,增加公司这部分难以收费的情况。
摆脱了之前只支持部分打印机的现状。
解决了之前打印文件不支持,或者字体不存在的情况。
项目经历 Project Experience
项目二:某模拟检测发射训练系统开发
开发需求和问题难点:
模拟设备涉及多个板卡,多串口的通信,需要每个板卡去轮询
涉及到大量按键和灯状态获取,设计状态模式的组合。处理逻辑复杂多变。
使用 UDP 协议通过考官客户端将考官指令及考试数据发送给多个考生客户端
解决考官客户端控制考生客户端的能力
考生开始考试,并将训练记录通过消息队列 mqtt 反馈给服务端,由服务端再将成绩给到考生
项目职责:
上位机通过 mqtt 协议和后端对接开发
考生客户端 Qt 操作界面开发
考生客户端业务开发,接收教官指令,具备切换对应页面的能力
上位机和串口通信逻辑开发,将数据上报服务器
解决的问题和完成情况:
解决上位机通过多串口轮询获取数据和整理数据的能力。
解决和服务端通信的协议。
解决教官客户端控制考生客户端能力。
产品受到部队认可,几乎能模拟真实实战效果
项目顺利验收。
项目经历 Project Experience
项目三:南通市局智慧勘察项目开发
开发需求和问题难点:
规范警情现场取证的操作流程
DNA 比对,指纹识别比对,人脸识别比对算法对接及比对结果上报
大数据信息存储,警情数据,现场人脸,指纹,足迹等数据
报警数据甄别和视频比对人员和车辆轨迹回放,PGIS 对接
现场采集数据加密,手机或其他采集设备加密
手机端负责勘察录入工作,连接互联网,数据加密通过 vpn 方式加密上传到公安内网
手机端跟短信安全验证,保证数据安全,采集数据能一键直达
支持任务指派
内网端口有限,需要借助反向代理转发
内网提供 FTP 对外的接口转发,所有外网数据必须加密后上传
文件系统,主要是采集图片文件的存储和管理
项目职责:
熟悉项目整体需求和公安业务流程。
对接警务系统 PGI 地图和警情,对接开发相应算法比对模块
数据处理结果上报模块开发,主要是 oracle 数据库的开发
开发警务人员登录验证模块,使用了 redis 缓存机制
使用 ngnix 实现多个业务系统的转发功能
使用 fastfds 开源框架,对接手机端,实现文件存储功能
解决的问题和完成情况:
智慧勘察大大节省了警务人员现场录入的工作量
增加后台比对功能更强大,一个系统集成各大比对模块,效率更高
数据安全上
产品受到市局领导的赞扬,并向各个地区推广使用,开会交流学习软件使用
南通