工作经历
2020-11-01 -至今重庆山外山血液净化技术股份有限公司软件开发工程师
1.参与系统项目和各模块的需求分析,进行系统框架的架构及设计; 2.负责产品系统软件的设计、开发和改进,并组织系统软件的试验和验证; 3.负责系统软件的全套软件文档的编制; 4.负责协助产品的采购、制造、检验、销售和售后服务过程中与软件相关的技术支持工作; 5.负责协助产品于软件有关的质量分析和质量事故处理; 6.复制编制系统通讯协议; 7.负责协调模块软件以及软件测评过程中的相关工作;
教育经历
2017-09-01 - 2021-06-01贵州商学院物联网工程本科
技能
优化工具有:“智能升级程序”、“模块模拟器”、“升级包打包工具”;软件运行的平台:linux、windows 智能升级程序:软件运行于 Linux 系统之上,需 QT 运行库支持,采用 Sqlite 数据库保存历史记录和系统设置数据等,使用 RS485和 RS232串口与各个硬件模块进行通信,配备以太网驱动,可使用 TCP socket 与信息化系统进行通信,内置 USB 驱动,可连接U盘进行程序升级、数据备份等操作,核心功能为通过识别U盘中升级包文件包头,选择正确的升级包,并在用户选中升级包时,通过包内置软硬件兼容表,自动为用户选择能够升级的模块程序,以及存在更新的主控以及数据库程序,同时在升级异常关机时能够自动恢复升级现场。模块模拟器:在编程阶段使开发人员能够脱离硬件环境,在本地进行模拟运行,自由设置模块参数,使主控能够轻易的达到某种特定条件,软件运行于 Windows 系统之上,无需 QT 运行库支持,采用二进制文件保存系统设置数据,使用 com 口和命名管道方式与虚拟机或 Windows 上运行的主控程序进行通信,使用7z打包升级文件,内置 MD 5校验文件,可软硬件兼容表。升级包打包工具:解决客服工程师升级模块程序时,为不兼容的硬件板升级了不兼容的模块程序,同时能够有效防止升级文件在传递过程中的缺失和破坏软件运行于 Windows 系统之上,无需 QT 运行库支持,采用二进制文件保存系统设置数据,使用 com 口和命名管道方式与虚拟机或 Windows 上运行的主控程序进行通信,使用7z打包升级文件,内置 MD 5校验文件,可软硬件兼容表.
1.提供加密方式2.提供加密密钥的控制方式3.提供加密动态库用于UDI码生产4.集成主控软件用于解密5.识别方式为扫码识别和RFID识别编写密钥生成工具:采用RSA非对称加密,同时采用三方公司加密狗进行优化处理,在普通的RSA密钥上进行封装处理,形成不可见的密钥。编写动态库:动态库加密接口设计,只有正确的权限和精准的硬件配套才能调用动态库完成加密,其中涉及整个加密过程的监听和其他操作。确定RFID通信协议和上位机软件中RFID通过串口实现通信的对耗材相关的业务逻辑处理。设计扫码识别界面,完成扫码用户交互。配置动态数据库,在耗材有更改的情况下,只需要更改数据库即可,不需要更改上位机程序。
1.软件由5个独立进程组合形成,分别是界面进程、数据处理进程、串口通信进程、socket服务器进程和1个守护进程。2.主控软件分为3个独立的层次,分别是串口通信层、数据处理层、界面控制层。处于最底层的是串口通信层,负责主控软件与设备的各硬件电路板进行数据交互;处于最上层的是界面层,负责用户与主机的数据交互,实现设备信息展示和接收用户对设备操作控制;处于中间层的是数据处理层,该层是主控软件的核心,负责记录和收发界面所有数据、硬件电路板的所有数据、以及协调数据之间的关联关系。 3.三个层次由三个独立的进程实现,各个进程可独立地开发、调试和运行。串口通信层与数据层之间采用共享内存加信号量的方式进行数据通信。数据层与界面层之间采用socket通信进行数据交互,并在界面层与数据层之间增设Socket服务器程序,以实现与远程监控功能的完美兼容,Socket服务器程序采用独立进程的方式进行处理。 4.因为可靠性要求高,所以主控软件专门为这四个进程设计了守护进程,当其中任意一个进程异常后,守护进程能够立即做出相应处理。 其中主要负责串口通信进程和守护进程的独立开发设计、数据处理层和界面层数据结构的设计和通用接口的编程,以及界面进程和数数据进程的数据库设计,还有其他的普通功能接口设计。