一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

跨操作系统的机器人流程自动化系统及方法与流程

2022-06-05 09:03:43 来源:中国专利 TAG:


1.本发明涉及一种跨操作系统的机器人流程自动化系统及方法,属于软件工程技术领域。


背景技术:

2.机器人流程自动化(robotic process automation,rpa)软件是运行在个人计算机或服务器上的软件,主要功能是模拟人操控各种系统软件、自动执行业务流程,适用于大批量、高重复的业务场景。
3.目前各行业使用的业务软件多种多样,可运行在不同的操作系统之上,包括windows、linux、mac os、国产操作系统等。rpa软件使用的工作流和自动化技术大多依赖微软操作系统的技术体系,难以在windows以外的平台上运行。


技术实现要素:

4.本发明的目的是解决上述背景技术中提及的缺陷。
5.为实现上述发明目的,第一方面,本发明提供一种跨操作系统的机器人流程自动化系统,包括自动化流程开发平台、控制中心和机器人;所述自动化流程开发平台基于可跨操作系统的运行环境开发,用于针对业务场景需求设计对应的自动化业务流程,将流程翻译成对应的流程代码,对该流程代码进行跨平台封装,并将封装后的跨平台流程代码打包发送至所述控制中心;所述控制中心基于可跨操作系统运行的编程语言开发,用于调度部署于不同操作系统的所述机器人来执行所述跨平台流程代码所对应的自动化业务流程;所述机器人基于可跨操作系统运行的编程语言开发,用于将所述跨平台流程代码下载至本地操作系统,按所述本地操作系统的类别调用相应类别的流程解析器对所述跨平台流程代码进行流程解析,并执行解析后的自动化业务流程。
6.进一步地,所述自动化流程开发平台包括第一前端界面模块、第一流程自动化sdk和第一底层服务模块;所述第一前端界面模块用于人机交互;所述第一流程自动化sdk为跨平台sdk,用于为流程代码操控其他软件提供功能支撑;所述第一底层服务模块用于支撑所述第一流程自动化sdk在各操作系统上运行。
7.进一步地,所述第一前端界面模块基于node.js和electron开发。
8.进一步地,所述第一流程自动化sdk基于python语言开发。
9.进一步地,所述第一底层服务模块基于c 和java语言开发。
10.进一步地,所述控制中心包括第二前端界面模块、后台服务模块和数据存储模块;所述第二前端界面模块用于人机交互;所述后台服务模块用于负载均衡和流程管理;所述数据存储模块用于存储流程、数据和运行结果。
11.进一步地,所述第二前端界面模块基于javascript和html开发。
12.进一步地,所述后台服务模块基于golang语言开发,通过nginx实现负载均衡,通过web框架gin和数据库连接框架gorm实现流程管理。
13.进一步地,所述数据存储模块将数据存储在mysql和redis数据库中。
14.进一步地,所述机器人包括第三前端界面模块、第二流程自动化sdk和第二底层服务模块;所述第三前端界面模块用于人机交互;所述第二流程自动化sdk用于为流程代码操控其他软件提供功能支撑;所述第二底层服务模块用于支撑所述第二流程自动化sdk在各操作系统上运行。
15.进一步地,所述第三前端界面模块基于node.js开发。
16.进一步地,所述第二流程自动化sdk基于python语言开发。
17.第二方面,本发明提供一种跨操作系统的机器人流程自动化方法,包括以下步骤:(1)在可跨操作系统的自动化流程开发平台上针对业务场景需求设计对应的可视化自动化业务流程;(2)所述自动化流程开发平台将自动化业务流程翻译成对应的流程代码;(3)跨平台sdk将流程代码封装成跨平台流程;(4)将流程代码打包发送至控制中心;(5)控制中心调度不同平台的机器人执行流程;(6)机器人按计划将流程下载至本地操作系统;(7)机器人按其所在本地操作系统的类别调用对应类别的流程解析器;(8)流程解析器对流程内容进行解析;(9)流程解析器对流程引用的跨平台sdk相关api进行调用;(10)api自动化操作相应的系统软件。
18.与现有技术相比,本发明的有益效果为:
19.1.采用基于golang、python和js等语言的技术框架,能够兼容windows、linux、mac os和国产操作系统等,解决了传统rpa不能跨平台部署的难题,实现底层服务、前端界面和自动化流程跨平台部署和运行,从而实现完整rpa软件系统的跨平台,极大扩展了rpa软件系统的应用场景。
20.2.基于跨操作系统的rpa,可以设计跨平台的自动化流程,在不同操作系统上可直接运行,无需重新设计。
21.3.随着国产化替代趋势的发展,未来有越来越多的国产操作系统业务场景,现有的大量windows平台的业务流程将迁移至国产系统,支持跨平台的rpa系统迁移成本更低。
22.4.基于主流语言技术搭建的跨平台方案,扩展性和稳定性更好。
附图说明
23.图1是本发明系统一个实施例的原理框图;
24.图2是本发明系统一个实施例中自动化流程开发平台的原理框图;
25.图3是本发明系统一个实施例中控制中心的原理框图;
26.图4是本发明系统一个实施例中机器人的原理框图;
27.图5是本发明方法一个实施例的流程图。
具体实施方式
28.下面结合附图和具体实施例,对本发明的技术方案做进一步说明。
29.如图1所示,本发明跨操作系统的机器人流程自动化系统的一个实施例,包括自动化流程开发平台、控制中心和机器人;所述自动化流程开发平台基于可跨操作系统的运行环境开发,用于针对业务场景需求设计对应的自动化业务流程,将流程翻译成对应的流程代码,对该流程代码进行跨平台封装,并将封装后的跨平台流程代码打包发送至所述控制
中心;所述控制中心基于可跨操作系统运行的编程语言开发,用于调度部署于不同操作系统的所述机器人来执行所述跨平台流程代码所对应的自动化业务流程;所述机器人基于可跨操作系统运行的编程语言开发,用于将所述跨平台流程代码下载至本地操作系统,按所述本地操作系统的类别调用相应类别的流程解析器对所述跨平台流程代码进行流程解析,并执行解析后的自动化业务流程。
30.在本发明系统的一个实施例中,所述自动化流程开发平台包括第一前端界面模块、第一流程自动化sdk和第一底层服务模块;所述第一前端界面模块用于人机交互;所述第一流程自动化sdk为跨平台sdk,用于为流程代码操控其他软件提供功能支撑;所述第一底层服务模块用于支撑所述第一流程自动化sdk在各操作系统上运行。
31.在本发明系统的一个实施例中,所述第一前端界面模块基于node.js和electron开发。
32.在本发明系统的一个实施例中,所述第一流程自动化sdk基于python语言开发。
33.在本发明系统的一个实施例中,所述第一底层服务模块基于c 和java语言开发。
34.在本发明系统的一个实施例中,所述控制中心包括第二前端界面模块、后台服务模块和数据存储模块;所述第二前端界面模块用于人机交互;所述后台服务模块用于负载均衡和流程管理;所述数据存储模块用于存储流程、数据和运行结果。
35.在本发明系统的一个实施例中,所述第二前端界面模块基于javascript和html开发。
36.在本发明系统的一个实施例中,所述后台服务模块基于golang语言开发,通过nginx实现负载均衡,通过web框架gin和数据库连接框架gorm实现流程管理。
37.在本发明系统的一个实施例中,所述数据存储模块将数据存储在mysql和redis数据库中。
38.在本发明系统的一个实施例中,所述机器人包括第三前端界面模块、第二流程自动化sdk和第二底层服务模块;所述第三前端界面模块用于人机交互;所述第二流程自动化sdk用于为流程代码操控其他软件提供功能支撑;所述第二底层服务模块用于支撑所述第二流程自动化sdk在各操作系统上运行。
39.在本发明系统的一个实施例中,所述第三前端界面模块基于node.js开发。
40.在本发明系统的一个实施例中,所述第二流程自动化sdk基于python语言开发。
41.如图5所示,本发明跨操作系统的机器人流程自动化方法的一个实施例,步骤如下:(1)在可跨操作系统的自动化流程开发平台上针对业务场景需求设计对应的可视化自动化业务流程;(2)所述自动化流程开发平台将自动化业务流程翻译成对应的流程代码;(3)跨平台sdk将流程代码封装成跨平台流程;(4)将流程代码打包发送至控制中心;(5)控制中心调度不同平台的机器人执行流程;(6)机器人按计划将流程下载至本地操作系统;(7)机器人按其所在本地操作系统的类别调用对应类别的流程解析器;(8)流程解析器对流程内容进行解析;(9)流程解析器对流程引用的跨平台sdk相关api进行调用;(10)api自动化操作相应的系统软件。
42.本发明提出了一种跨操作系统的机器人流程自动化的实现方法,旨在解决自动化流程机器人无法安装运行在所有操作系统上的问题。通过基于golang、python、js等技术的跨平台软件架构,实现底层服务、前端界面和自动化流程跨平台部署和运行,从而实现完整
rpa软件系统的跨平台。
43.一、机器人自动化流程的跨平台主要依赖于跨平台sdk的封装与解析来实现。
44.1、部署在不同操作系统上的开发平台,针对业务场景需求设计对应的自动化流程。流程翻译成代码后,通过跨平台sdk封装成可在不同操作系统上运行的流程。
45.2、控制中心接收开发平台发布的流程,并调度位于不同操作系统上的机器人执行流程任务。
46.3、部署在不同操作系统上的机器人将流程下载到系统本地,通过跨平台的sdk对流程代码解析和运行,从而完成对各平台上业务系统的自动化操控。
47.二、rpa软件由三部分组成,包括自动化流程开发平台、控制中心和机器人。
48.1、自动化流程开发平台的跨系统实现方案
49.(1)前端界面:前端界面基于node.js和electron开发,node.js和electron支持跨平台运行。
50.(2)流程自动化sdk:sdk基于python语言开发,python语言支持在不同操作系统上安装运行。sdk包含了对各类软件系统的操作api,用户可在不同操作系统上,通过api给软件系统(如浏览器、office等)发送自动化指令。
51.(3)底层服务:流程开发平台的界面元素自动捕获等技术基于c 和java语言开发,支持跨平台运行。
52.2、自动化流程控制中心的跨系统实现方案
53.(1)前端界面:前端界面基于javascript和html等网页技术研发,支持在不同操作系统上运行。
54.(2)后台服务:后台服务基于golang语言开发,其中使用了扩展性很强的web框架gin和出色的数据库连接框架gorm,服务使用nginx实现负载均衡。gin和gorm均支持在不同操作系统上运行。
55.(3)数据存储:数据存储在mysql数据库和redis中,mysql和redis支持在各类操作系统上运行。
56.3、自动化流程机器人的跨系统实现方案
57.(1)前端界面:前端界面基于node js语言开发,node.js是一个跨平台的javascript运行环境。
58.(2)流程自动化sdk:sdk基于python语言开发,python语言支持在不同操作系统上安装运行。sdk包含了对各类软件系统的操作api,用户可在不同操作系统上,通过api给软件系统(如浏览器、office等)发送自动化指令。
59.(3)底层服务:流程机器人的机器人管理服务包括流程执行过程录屏、机器人远程桌面控制等,相关服务支持跨平台运行。
60.具体的跨操作系统的方式有:
61.1、windows系统上开发的流程在windows和linux系统上运行
62.windows 10上部署控制中心:在win 10系统上快捷部署安装控制中心,启动管理服务,监听访问请求。
63.windows 10上部署开发平台:在win 10系统上一键安装开发平台,启动程序后,使用连接控制中心功能,连接到控制中心。
64.windows 10和redhat 7.5(linux)上部署机器人:在win 10和redhat7.5系统上一键安装机器人,启动程序后,使用连接控制中心功能,连接到控制中心。
65.至此,三部分即可实现互相通信,正常运行。用户在windows部署的开发平台上设计web端业务系统操控的自动化流程,可通过控制中心发布至windows和linux上的机器人执行。
66.2、linux系统上开发的流程在windows和linux系统上运行
67.linux上部署控制中心:在linux系统上使用docker技术部署安装控制中心,启动管理服务,监听访问请求。
68.linux上部署开发平台:在linux系统上一键安装开发平台,启动程序后,使用连接控制中心功能,连接到控制中心。
69.redhat 7.5和windows 10上部署机器人:在redhat 7.5和win 10系统上一键安装机器人,启动程序后,使用连接控制中心功能,连接到控制中心。
70.至此,三部分即可实现互相通信,正常运行。用户在linux部署的开发平台上设计web端业务系统操控的自动化流程,可通过控制中心发布至windows和linux上的机器人执行。
71.本发明是参照根据本发明实施例的系统、方法和计算机存储介质的流程图和/或框图来描述的。应理解可由计算机程序指令实现流程图和/或框图中的每一流程和/或方框、以及流程图和/或框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
72.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
73.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
74.最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献