一种串口数据转发系统及方法与流程
本发明涉及串口通信,尤其涉及一种串口数据转发系统及方法。
背景技术:
1、串口通信因接口简单、稳定性强、成本低廉的特性,在条码扫描枪、传感器、plc控制器等设备的数据传输中被广泛应用。在复杂设备联网场景中,常需将一个串口接收的数据转发至其他串口,以实现信号中继、数据共享或跨设备协同控制。
2、现有串口转发解决方案存在显著缺陷:其一,配置门槛高,需手动编写xml/json配置文件或修改核心代码定义转发规则,易因配置错误导致转发失败;其二,配置更新灵活性差,调整转发参数需停止服务并重启应用,造成业务中断;其三,可靠性薄弱,缺乏完善的错误处理机制,串口连接中断、数据丢包等问题需人工排查,故障响应滞后;其四,功能单一,不支持多串口并发管理、配置备份等实用功能,难以适配复杂拓扑需求。
3、因此,亟需一种配置便捷、支持动态更新、可靠性强的智能串口数据转发技术,以满足现代化工业及物联网应用的需求。
技术实现思路
1、本发明的目的可以通过以下技术方案实现:一种串口数据转发系统,包括:
2、配置管理模块,用于存储串口转发规则、动态更新配置及校验参数合法性,并在配置变更时发送更新通知;
3、转发控制模块,与所述配置管理模块通信连接,所述转发控制模块用于解析所述转发规则、按转发模式转发数据、实现异常容错、监控转发状态及生成日志;
4、串口管理模块,与所述转发控制模块通信连接,所述串口管理模块用于自动探测可用串口、实现多串口并发连接管理、完成串口数据收发及实时反馈串口连接状态。
5、从系统整体架构上限定串口数据转发系统的核心组成及模块协同关系,通过配置管理模块、转发控制模块和串口管理模块的分工配合,实现串口转发规则配置、数据转发执行以及串口连接管理的完整闭环。其作用是使系统能够支持规则化、自动化和可监控的串口数据转发,提高串口转发过程的灵活性、稳定性和可维护性。
6、作为本发明再进一步地方案:所述配置管理模块包括:
7、规则存储单元,用于存储转发规则;
8、动态更新单元,用于在运行时接收配置参数修改指令并保存修改后的配置参数;
9、配置校验单元,用于校验参数合法性,所述参数合法性指串口存在性及波特率是否为标准数值;
10、通知单元,用于在配置变更时向所述转发控制模块发送更新通知。
11、进一步细化配置管理模块的内部功能,使配置管理不仅能够保存转发规则,还能够在系统运行过程中支持配置修改、参数校验和变更通知。其作用是保证串口转发参数的合法性,避免因串口不存在或波特率错误导致转发失败,同时通过通知机制使新配置能够及时被转发控制模块感知并生效。
12、作为本发明再进一步地方案:所述转发规则包括源串口id、目标串口id、波特率、转发模式和异常重试次数上限。
13、明确转发规则中应包含的关键配置参数,包括源串口、目标串口、波特率、转发模式以及异常重试次数上限。其作用是为转发控制模块建立转发通路、选择转发策略和执行异常处理提供完整依据,从而保证不同串口之间的数据转发能够按照预设规则准确执行。
14、作为本发明再进一步地方案:所述标准数值为预设标准波特率列表中的数值。
15、限定波特率合法性校验的判断依据,即波特率必须属于预设标准波特率列表。其作用是避免用户输入非标准或设备不支持的波特率参数,减少串口连接失败、通信异常或数据乱码的风险,提高串口通信的可靠性。
16、作为本发明再进一步地方案:所述转发控制模块包括:
17、规则解析单元,用于解析所述配置管理模块下发的转发规则并构建数据转发通路;
18、数据处理单元,用于按转发模式转发数据;
19、容错处理单元,用于构建容错机制;
20、状态监控单元,用于记录转发成功次数和/或转发失败次数,在转发失败时生成含时间戳与错误原因的日志。
21、进一步限定转发控制模块的功能结构,使其具备规则解析、数据处理、容错处理和状态监控能力。其作用是使转发控制模块不仅能够完成基本的数据转发,还能够在转发过程中构建转发通路、处理异常情况、统计转发结果并生成故障日志,便于后续运维、排查和状态追踪。
22、作为本发明再进一步地方案:所述转发模式包括实时转发与缓存转发:
23、所述实时转发模式下,接收源串口数据后100ms内完成向目标串口的转发;
24、所述缓存转发模式下,将接收数据存入环形缓冲区,当所述环形缓冲区的数据量达到预设数量阈值,或自上一次批量转发起达到预设时间间隔时,批量执行转发操作。
25、对转发模式进行具体限定,将转发模式划分为实时转发和缓存转发,并明确两种模式的执行条件。其作用是使系统能够根据应用场景选择低延迟的实时转发方式,或选择适合批量处理的缓存转发方式,从而兼顾实时性和传输效率,提升系统对不同业务需求的适应能力。
26、作为本发明再进一步地方案:所述容错机制包括:
27、连接重试:转发失败时自动重试,直到重试次数达到所述异常重试次数上限;
28、数据缓存:重试次数达到所述异常重试次数上限后仍然失败时则将数据缓存;
29、服务降级:将待转发数据缓存后,暂停对应转发通路的转发服务,并推送异常通知。
30、明确系统在转发异常时采用的容错机制,包括连接重试、数据缓存和服务降级。其作用是当转发失败时,系统能够先自动重试以恢复通信,在多次重试失败后缓存待转发数据以避免数据丢失,并暂停异常转发通路及推送异常通知,从而提高系统的容错能力和故障隔离能力。
31、作为本发明再进一步地方案:所述串口管理模块包括:
32、串口探测单元,所述串口探测单元通过系统api扫描并返回可用串口的设备名称与端口号;
33、连接管理单元,所述连接管理单元支持同时建立至少两个独立串口连接,每个串口连接的波特率和数据位可独立配置;
34、数据收发单元,所述数据收发单元采用线程池异步接收发送数据;
35、状态反馈单元,所述状态反馈单元通过qt信号槽机制推送串口连接状态。
36、进一步限定串口管理模块的组成及实现方式,包括串口探测、连接管理、异步数据收发和状态反馈。其作用是使系统能够自动发现可用串口,支持多个串口并发连接,并通过线程池提升数据收发效率,同时利用qt信号槽机制实时反馈串口连接状态,增强系统的并发处理能力和界面响应能力。
37、一种基于所述串口数据转发系统的串口数据转发方法:包括:
38、s1. 配置加载:系统启动后,配置管理模块加载本地配置文件,在所述本地配置文件缺失时生成默认转发规则并完成参数合法性校验;
39、s2. 连接建立:转发控制模块解析所述转发规则,调用串口管理模块扫描可用串口,按参数建立源与目标串口连接;
40、s3. 数据转发:源串口数据经串口管理模块接收后推送至所述转发控制模块,按转发模式转发至目标串口;
41、s4. 动态更新:配置修改后,所述配置管理模块保存并发送通知,转发控制模块重启转发服务使新配置生效且无需重启系统。
42、从方法流程角度保护基于上述系统实现串口数据转发的具体步骤,包括配置加载、连接建立、数据转发和动态更新。其作用是明确系统运行时的工作流程,使系统能够在启动时自动加载或生成配置,建立串口连接并执行数据转发,同时支持运行过程中的配置修改生效,提高串口转发方法的完整性和可实施性。
43、作为本发明再进一步地方案:所述转发控制模块接收配置更新通知后,断开当前源与目标串口的连接;清空所述转发控制模块中的数据缓冲区及转发统计信息;重新获取更新后的转发规则并校验参数合法性;按新转发规则重建串口连接并启动转发服务,更新过程耗时不超过500ms且所述更新过程不影响配置显示、日志查询和串口状态显示功能。
44、进一步限定配置动态更新时转发控制模块的具体处理过程和性能要求,包括断开连接、清空缓存和统计信息、重新获取并校验规则、重建连接以及启动服务。其作用是保证配置变更能够在不重启系统的情况下快速生效,并且更新过程不影响配置显示、日志查询和串口状态显示等功能,从而提升系统的连续运行能力和用户体验。
45、本发明的有益效果:
46、(1)本发明通过配置管理模块对串口转发规则进行统一存储、合法性校验和动态更新,避免了传统方式中需要手动编写配置文件或修改程序代码的问题。当串口参数或转发规则发生变化时,系统能够在运行过程中保存新配置并通知转发控制模块生效,无需停止服务或重启系统,从而降低配置难度,提高串口转发系统的使用灵活性。
47、(2)本发明通过转发控制模块实现规则解析、数据转发、异常重试、数据缓存、服务降级和日志记录等功能。当串口连接异常或数据转发失败时,系统能够自动进行重试,并在重试失败后缓存待转发数据、暂停异常通路并推送异常通知,减少数据丢失和故障扩散的风险。同时,系统能够记录转发成功次数、失败次数以及带有时间戳和错误原因的日志,便于故障追踪和运维排查。
48、(3)本发明通过串口管理模块自动探测可用串口,并支持至少两个独立串口连接的并发管理,每个串口连接的波特率、数据位等参数可独立配置;同时结合线程池异步收发数据和qt信号槽机制实时反馈串口状态,提高了系统的数据处理效率和状态响应能力。此外,系统支持实时转发和缓存转发两种模式,能够兼顾低延迟传输和批量转发效率,适用于工业控制、物联网设备接入、数据中继等多种复杂应用场景。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com