CN114722050A - 机器人系统的数据同步方法、及机器人系统 - Google Patents
机器人系统的数据同步方法、及机器人系统 Download PDFInfo
- Publication number
- CN114722050A CN114722050A CN202210649673.4A CN202210649673A CN114722050A CN 114722050 A CN114722050 A CN 114722050A CN 202210649673 A CN202210649673 A CN 202210649673A CN 114722050 A CN114722050 A CN 114722050A
- Authority
- CN
- China
- Prior art keywords
- data
- user side
- project
- control system
- robot
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2246—Trees, e.g. B+trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Manipulator (AREA)
Abstract
本申请涉及一种机器人系统的数据同步方法、及机器人系统,属于机器人技术领域,本申请的数据同步方法包括,在与用户端建立通信连接时,获取用户端侧加载的第一项目数据的项目结构信息;基于所述项目结构信息,进行所述第一项目数据与机器人控制系统侧的第二项目数据的分析比对,并将比对结果信息反馈给所述用户端;以及基于所述用户端针对反馈发出的同步指令,进行项目数据同步处理。本申请的技术方案实现了机器人系统中控制相关数据的同步,有效保证了机器人系统的稳定安全运行。
Description
技术领域
本申请属于机器人技术领域,具体涉及一种机器人系统的数据同步方法、及机器人系统。
背景技术
机器人系统中,机器人控制系统(或者说控制器)集成了控制机器人运动相关的所有指令,用户端可通过与机器人控制系统的交互实现对机器人设备的控制,例如用户可在用户端设计一系列的机器人运动动作,发送到机器人控制系统,由机器人控制系统执行,达到用户控制机器人运动的目的。
然而,在实际中,机器人控制系统和用户端中都保存着由机器人指令等数据信息构成的相关控制数据(如用于实现机器人复杂控制的项目数据),在实际工作中,机器人控制系统和用户端中机器人控制数据结构及其数据内容存在差异时,若不进行有效同步,会导致机器人控制失败甚至发生安全性问题(如与控制器新连接的用户端上的控制数据未能同步到控制器上时)。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
为至少在一定程度上克服相关技术中存在的问题,本申请提供一种机器人系统的数据同步方法、及机器人系统,具体实现了机器人系统中控制相关数据的同步,有效保证了机器人系统的稳定安全运行。
为实现以上目的,本申请采用如下技术方案:
第一方面,
本申请提供一种机器人系统的数据同步方法,该方法包括:
在与用户端建立通信连接时,获取用户端侧加载的第一项目数据的项目结构信息;
基于所述项目结构信息,进行所述第一项目数据与机器人控制系统侧的第二项目数据的分析比对,并将比对结果信息反馈给所述用户端;
以及基于所述用户端针对反馈发出的同步指令,进行项目数据同步处理。
可选地,所述第一项目数据以及所述第二项目数据均采用树状层级式的数据组织结构;
所述进行所述第一项目数据与机器人控制系统侧的第二项目数据的分析比对,包括:
采用遍历的方式对所述第一项目数据和第二项目数据进行对应分析比对。
可选地,所述数据组织结构中,包括从属于根节点的项目层级结构,从属于项目层级的程序层级结构,以及从属于程序层级的指令层级结构;
项目数据的各层级结构中对应包括该层级的层级结构描述数据,以及作用域为该层级及以下层级的变量数据。
可选地,所述数据同步方法还包括;
在系统运行过程中,接收连接的用户端发送的变量实时值同步请求;
基于所述变量实时值同步请求,将要同步更新的变量置于预设变量列表,向系统主进程推送变量更新任务,以使系统主进程根据所述预设变量列表进行变量实时值更新;
以及通知观察者进程进行响应处理,以使观察者进程基于监控到的变量变化对系统变量列表进行更新。
可选地,所述进行项目数据同步处理,具体包括:下传替换处理、上载替换处理、下传更新处理、上载更新处理或上载新建处理;
其中,
所述下传替换处理具体为,所述第一项目数据下传至所述机器人控制系统并代替机器人控制系统侧的第二项目数据;
所述上载替换处理具体为,所述第二项目数据上载至所述用户端并代替用户端侧的第一项目数据;
所述下传更新处理具体为,所述第一项目数据中的数据数值下传至所述机器人控制系统,并对应更新机器人控制系统侧的第二项目数据;
所述上载更新处理具体为,所述第二项目数据中的数据数值上载至所述用户端,并对应更新用户端侧的第一项目数据;
所述上载新建处理具体为,所述第二项目数据上载至所述用户端,并根据所述第二项目数据在用户端侧新建第三项目数据。
第二方面,
本申请提供一种机器人系统,该系统包括机器人控制系统和用户端;所述机器人控制系统与所述用户端交互,实现上述任一项所述的数据同步方法。
可选地,所述用户端基于对项目数据的操作权限不同划分为主用户端和次用户端。
本申请采用以上技术方案,至少具备以下有益效果:
本申请的技术方案中,基于具体的配置,机器人控制系统在与用户端建立通信连接后,基于获取的用户端加载的第一项目数据的项目结构信息,将第一项目数据与机器人控制系统侧的第二项目数据进行分析比对,并将比对结果信息反馈给用户端;并基于用户端针对反馈发出的同步指令,进行项目数据同步处理,使机器人控制系统中项目数据为使用者所需求的项目数据。这样进行数据同步处理后,可避免由于机器人控制系统和用户端中相关控制数据存在差异所导致的安全性问题,有利于机器人系统的稳定安全运行。
本发明的其他优点、目标,和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书,权利要求书,以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本申请的技术方案或现有技术的进一步理解,并且构成说明书的一部分。其中,表达本申请实施例的附图与本申请的实施例一起用于解释本申请的技术方案,但并不构成对本申请技术方案的限制。
图1为本申请应用场景中机器人系统的交互示意说明图;
图2为本申请一个实施例提供的机器人系统的数据同步方法的流程示意图;
图3为本申请一实施例中项目数据树状层级式的数据组织结构的说明示意图;
图4为本申请一实施例中采用遍历的方式对项目数据进行分析比对的流程示意说明图;
图5为本申请一实施例中进行项目数据同步处理的整体说明示意图;
图6为本申请一实施例中项目数据同步处理中下传机制的实现流程说明示意图;
图7为本申请一实施例中项目数据同步处理中上载机制的实现流程说明示意图;
图8为本申请一实施例中变量实时值的更新流程示意图;
图9为本申请一实施例中多用户端进行数据同步的示意说明图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将对本申请的技术方案进行详细的描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本申请所保护的范围。
如图1所示,机器人系统中,一般包括机器人控制系统、用户端以及受控机器人(或者说机器人设备)。机器人控制系统集成了控制机器人运动相关的所有指令,用户端可通过与机器人控制系统的交互实现对受控机器人的控制。具体的,使用者用户可在用户端设计一系列机器人运动动作,发送到机器人控制系统,由机器人控制系统执行,达到用户控制机器人运动的目的。
然而,在上述交互过程中有以下问题需要解决:
如背景技术中所述,机器人控制系统和用户端中都保存着由机器人指令等数据信息构成的相关控制数据(如用于实现机器人复杂控制的项目数据),在实际工作中,机器人控制系统和用户端中项目结构及其数据存在差异时,容易导致机器人控制失败或造成安全性问题;进一步的,在存在多个用户端时,为避免机器人控制失败或安全性问题,如何具体保障一用户端操作,其他用户端的数据同步也是一个需要解决的技术问题;
此外,现有技术中,在机器人控制系统执行某个逻辑指令时,一般是不允许对指令数据进行修改的,这里牵扯到指令的叠加(指令之间的关联,机器人控制系统执行指令时,一般把所有的指令进行了提前规划,运行过程中只是按照提前规划的指令顺序,执行既定指令),所以在某些必须在运行时进行修改指令数据值的情况下,如何做到用户端和机器人控制系统的数据同步也是一个亟待解决的问题。
为至少在一定程度上解决上述提到的相关技术问题,申请人对实际应用场景中机器人控制系统与用户端统数据不一致的发生情况进行了分析,发现导致数据不一致主要原因包括:
机器人控制系统与用户端连接后,机器人控制系统的相关控制数据为空或用户端相关控制数据为空;
机器人控制系统与用户端连接后,交互断开,用户端相关控制数据发生了改变,再次连接后导致机器人控制系统与用户端的相关控制数据不一致;
机器人控制系统与用户端连接后,机器人控制系统运动过程中产生的变量实时值,如机器人末端位置等,导致机器人控制系统与用户端的相关控制数据中变量值不一致;
机器人控制系统与用户端连接后,运行时用户端更改指令中变量的值,导致机器人控制系统与用户端的相关控制数据中变量值不一致,例如机器人从A点经B点到C点,现在在运行的过程中,修改变量值,使机器人末端到达B点后,直接向D点运动;
机器人控制系统与一用户端连接后,交互断开,由其他用户端连接,当前用户端与上一用户端相关控制数据不一致,导致机器人控制系统与当前用户端的相关控制数据不一致。
基于以上原因分析,本申请提出一种机器人系统的数据同步方法,具体实现了机器人系统中控制相关数据的同步,可一定程度上克服上述提到的相关技术问题,进而保证了机器人系统的稳定安全运行。
如图2所示,一实施例中,本申请提出的机器人系统的数据同步方法,应用于机器人控制系统,该方法包括:
步骤S110,在与用户端建立通信连接时,获取用户端侧加载的第一项目数据的项目结构信息;
这里容易理解的,该步骤中与用户端建立通信连接时,对应于前文原因分析中发生数据不一致的几种场景,基于对机器人控制系统端和用户端进行相关配置,来实现同步方法的该步骤;
此外,需要说明的是,在本申请的应用场景中,项目数据为用于实现对机器人控制的控制配置数据,这里的项目结构信息指表征该数据的组织结构的相关描述信息;且在本申请技术方案中,机器人控制系统侧仅存在一份项目数据,而用户端侧可存在多份项目数据,但在交互应用中仅能加载一份项目数据(如步骤S110中的第一项目数据)。
之后进行步骤S120,基于项目数据结构信息,进行第一项目数据与机器人控制系统侧的第二项目数据的分析比对,并将比对结果信息反馈给用户端;
需要说明的是,该实施例中,第一项目数据以及第二项目数据均采用树状层级式的数据组织结构;
具体的,为更清晰的描述机器人运动的各种操作,作为一种具体的实施方式,该实施例中,项目数据涉及项目、程序、指令等相关概念,其数据组织结构如图3所示:
该种树状层级式的数据组织结构中,包括从属于根节点(图3中root)的项目层级结构,从属于项目层级的程序层级结构,以及从属于程序层级的指令层级结构;
而相应的,项目数据的各层级结构中对应包括该层级的层级结构描述数据(如图3中的,项目n、程序n、指令n),以及作用域为该层级及以下层级的层级变量数据(如图3中的,全局变量n、项目变量n、程序变量n);
以图3为例,图中root为根节点,不同层的变量作用域不同,全局变量可以被其父节点root下所有的项目使用,项目变量可以被其父节点项目下所有的程序使用,程序变量可以被其父节点程序下所有的指令使用。
在本申请的技术方案中,基于上述数据管理形式的项目数据,用户可在用户端通过在界面进行可视化的逻辑配置,来实现控制机器人进行一些列复杂的、逻辑性强的动作,下表1为项目数据涉及相关概念的说明:
表1项目、程序、指令、变量相关概念
表示形式 | 描述 | 备注 | |
变量 | variable | 机器人控制系统定义的数据类型 | 由基本数据类型(int、bool、double)、数组或结构体组合而成,分为全局变量、项目变量和程序变量 |
指令 | instruct | 定义了控制机器人运动的一些列动作 | 指令分为控制指令和逻辑指令,变量是指令执行的参数,如位置、时间等,一条指令可以使用多个变量, |
程序 | program | 定义了机器人控制系统中多条执行指令的逻辑顺序 | 一个程序可以有多条指令和多个变量,用户通过自身需求定义每个程序的指令及其使用的变量 |
项目 | project | 满足用户对程序和变量分类的需求 | 每个用户端可以有多个项目,每个项目可以有多个程序和多个项目变量,以文件的形式存储 |
基于表1的说明,并结合图3所示,可知在本申请技术方案中,在机器人系统运行过程中,机器人控制系统和用户端解析相关控制数据时得到的项目结构中,项目结构可由多个项目和全局变量构成;进而该步骤在进行分析比对时,需以项目结构为一个整体来进行对应对比。
具体的,在步骤S120中,进行第一项目数据与机器人控制系统侧的第二项目数据的分析比对,具体包括:
在第一项目数据的项目结构(根据步骤S110中项目数据结构信息进行检测判断),以及第二项目数据的项目结构均存在的情况下,采用遍历的方式对第一项目数据和第二项目数据进行对应分析比对。
结合前文中对数据组织结构的介绍,该比对过程中,包括项目结构对比,即指机器人控制系统与用户端中项目结构进行对比,分为层级结构对比、程序中指令结构对比和变量结构对比。层级结构对比包括项目名、项目数量、程序名、程序数量、全局变量名、全局变量数量的对比。指令结构对比包括指令对比、指令中变量结构对比;指令对比包括指令和指令中变量名对比。变量结构对比变量类型对比和变量值对比等。
举例而言,如图4所示,为采用遍历(这里图4所示为先序遍历)的方式对第一项目数据(用户端侧)和第二项目数据(控制系统端侧)进行对应分析比对的流程示意说明图,该过程中,在出现分析比对不一致的情况时,会结束比对过程并对应生成相关不一致信息,而若遍历结束后两者完全一致则会生成项目数据一致信息,并将相关不一致信息或项目数据一致信息作为比对结果信息反馈给用户端(也即并将比对结果信息反馈给用户端)。
具体的,如图4所示,机器人控制系统先进行项目结构层级对比,若层级不一致,输出项目结构层级不一致的地方,并以通讯的方式发送给用户端,用于用户端显示。若层级一致,对比全局变量结构,若全局变量结构一致,则以项目进行对比,逐步对比程序、指令和变量,若不一致则输出不一致的地方,并以通讯的方式发送给用户端,用于用户端显示;若以上均一致,则输出项目数据一致。
继续回到图2,在步骤S120中将比对结果信息反馈给用户端后,用户端会对结果信息进行显示,实际用户根据显示信息在用户端的前端进行同步操作(对应的用户端后台会生成同步指令);
进而在机器人控制系统侧,如图2中步骤S130所示,机器人控制系统会基于用户端针对反馈发出的同步指令,进行项目数据同步处理。
具体的,基于用户进行同步操作,所生成的不同的同步指令,项目数据同步处理包括:下传替换处理、上载替换处理、下传更新处理、上载更新处理或上载新建处理,下面对此分别进行说明:
下传替换,下传替换处理具体为,第一项目数据下传至机器人控制系统并代替机器人控制系统侧的第二项目数据,实际交互实现中,用户端将用户端加载的的项目结构和数据数值下传发送到机器人控制系统,机器人控制系统替换掉当前项目结构和数据数值;
上载替换,上载替换处理具体为,第二项目数据上载至用户端并代替用户端侧的第一项目数据,实际交互实现中,机器人控制系统将机器人控制系统侧项目结构和数据数值上载发送到用户端,用户端替换掉当前加载的项目结构和数据数值(也可理解为将原用户端侧加载的项目数据删除,把机器人控制系统的复制过来);
下传更新,下传更新处理具体为,第一项目数据中的数据数值下传至机器人控制系统,并对应更新机器人控制系统侧的第二项目数据;
上载更新,上载更新处理具体为,第二项目数据中的数据数值上载至用户端,并对应更新用户端侧的第一项目数据;
容易理解的,上述下传更新处理和上载更新处理,是针对于在实际比对中,项目结构一致,而用户端与机器人控制系统的数据数值不一致性的情况的,该种情况下,将不一致的变量值,基于具体的同步指令,对不一致的数据数值进行更新同步;
上载新建,在实际中,当发生不一致需要进行同步时,用户可能需要保留当前用户端侧加载的项目数据,针对于此,本申请技术方案中同步处理还包括上载新建处理,即将第二项目数据上载至用户端,并根据第二项目数据在用户端侧新建第三项目数据,这样该第三项目数据和用户端加载的第一项目数据就同时存在于用户端侧了。
为便于理解本申请中的同步操作的实现,下面再从实现机制角度对下传及上载进行一下说明:
举例而言,如图6所示为下传实现机制的流程示意说明图,实现中,首先获取用户端加载的项目名称与程序名称,通过项目名称与程序名称获取项目项,项目项是显示在用户端的项目,如果项目项为空,则表示用户端没有项目,不需要下传至机器人控制系统。如果项目项不为空,则获取程序项,程序项时显示在用户端的程序;通过项目项和程序项获取指定项目下的程序,如果获取成功则下传至机器人控制系统。
举例而言,如图7所示为上载实现机制的流程示意说明图,实现中,首先获取机器人控制系统的全局变量以及局部变量,将机器人控制系统的变量值更新至用户端。获取用户端的程序名,通过程序名获取项目项,如果项目项不为空,则获取程序项,最后上载更新至用户端。
此外还需说明是,如图5所示的数据同步流程图,在实际中,还存在第一项目数据的项目结构(对应于图5用户端项目结构)为空和/或第二项目数据(对应于图5中机器人控制系统项目结构)的项目结构为空的情况,此时可基于实际需求,如图5所示进行相关操作(图5中右侧流程支路所示的上载同步,下传同步,或不进行操作),相关下传和上载的实现机制已在前文进行了介绍,这里的同步实现方式基本类似,本申请对此就不进行赘述了。
在机器人系统应用中,如前文所述,还存在某些必须在运行时进行修改指令数据值的情况,针对于此,本申请的技术方案中,机器人系统的数据同步方法,还包括运行时数据同步方法,这里先对该方法涉及的相关概念进行一下介绍说明:
变量初始值,是创建变量时赋予的值,一般是显示在用户端的变量值;
变量实时值,是存在于机器人控制系统侧的,随着机器人运行不断变化的值,如当前机器人末端坐标、轴位置等;
主进程,在机器人控制系统侧,当一个程序启动时,就有一个主进程被操作系统创建,与此同时一个观察者进程也立刻运行;
观察者进程,主要是负责监控变量的进行;
运行时数据同步,主要是指运行时修改变量的值,即在机器人控制系统运行状态时,用户端修改了变量的值,并需要将修改的变量值同步到机器人控制系统,从而改变机器人控制系统的运动或状态。
显示在用户端的变量值,可以是实时值或初始值,用户端实现提取变量实时值的复杂性比在机器人控制系统实现更复杂,并且所有用户端程序都需要实现这些逻辑,因此变量实时值在机器人控制系统实现,用户端只需要管理变量初始值。当用户端检测到项目有修改时,发送到机器人控制系统,机器人控制系统需要对全局变量和局部变量与实时值进行比对,将实时值替换为修改的变量初始值。
具体的,机器人系统的数据同步方法所包括的运行时数据同步方法,在机器人控制系统侧,包括:
在系统运行过程中,接收连接的用户端发送的变量实时值同步请求;
基于变量实时值同步请求,将要同步更新的变量置于预设变量列表,向系统主进程推送变量更新任务,以使系统主进程根据预设变量列表进行变量实时值更新;
以及通知观察者进程进行响应处理,以使观察者进程基于监控到的变量变化对系统变量列表进行更新。
举例而言,如图8所示,为一实施例中,实现运行时数据同步方法的流程示意说明图;
当用户端修改了变量,首先判断机器人控制系统的运行状态,如果正在运行,则机器人控制系统更新实时变量列表,如果机器人控制系统处于非运行状态,则将数据更新至等待执行的变量列表中。最后将更新后的变量列表写入文件,保持用户端数据与文件数据的一致性。
在机器人系统应用中,为提高用户端的自由度,如前文所述,还存在多用户端,与一机器人控制系统构成机器人系统的情况,此时存在控制权的切换所导致数据不同步的问题。
容易理解的是,控制权的切换,会涉及与新用户端的通信连接的建立,此种情况下,对建立通信连接的用户端与机器人控制系统而言,两者之间的数据等同于前文所记载说明的同步方法,而从整体上看,先后与机器人控制系统建立通信连接(或者说先后得到控制权)的用户端之间是基由机器人控制系统实现了数据同步,或者说多端数据同步。
此外需要说明的是,本申请技术方案中,用户端基于对项目数据的操作权限不同划分为主用户端和次用户端。
具体的,本申请技术方案中,主用户端有唯一性,可以修改项目结构,如HMI、Android,有着最高的控制权限,可以修改程序或变量的结构,甚至重新创建程序并下传到机器人控制系统;次用户端只能修改变量值或发送控制指令,如TCP、IO、Modbus。不可修改项目结构与变量结构。
且在同一时间,所有用户端中只有一个用户端可以控制机器人控制系统,即只有当一个用户端断开与机器人控制系统的连接时,才能将另一个用户端与机器人控制系统连接。
举例而言,考虑主用户端和次用户端的区别,本申请一实施例中实现多端数据同步的流程示意图如图9所示;
该实施例中,主用户端拥有对机器人控制系统完整的控制能力。主用户端负责添加修改管理项目、程序以及变量,允许用户从主用户端对项目、程序和变量进行机器人控制系统允许的所有操作,比如新增、修改、删除、注释、重命名等,由于主用户端不仅可以管理数据还可以显示数据,因此不仅可以修改变量以及程序结构还可以修改程序以及变量的值;
次用户端只拥有机器人控制系统部分控制能力,同时次用户端没有用以实时显示机器人数据的界面,次用户端可以获取、修改变量的值,由于次用户端不能显示项目程序以及变量,无法修改其数据结构,只能修改变量的值;
该实施例中,为了使得机器人在任何条件下主用户端与次用户端数据的一致性,在次用户端设置了一种用户端之间的数据同步机制,当次用户端修改了变量的值时,会将更改的值,同步到主用户端进而显示次用户端修改的值,保证机器人控制系统的多个用户端享有相同的机器人数据。
在一实施例中,本申请还提出一种机器人系统,该系统包括机器人控制系统和用户端;机器人控制系统与用户端交互,实现前文实施例所述的数据同步方法。
进一步的,该实施例中,用户端基于对项目数据的操作权限不同划分为主用户端和次用户端,主用户端和次用户端的相关内容,已在前文进行了介绍,这里就不进行赘述了。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人员在本发明所揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (7)
1.一种机器人系统的数据同步方法,其特征在于,包括:
在与用户端建立通信连接时,获取用户端侧加载的第一项目数据的项目结构信息;
基于所述项目结构信息,进行所述第一项目数据与机器人控制系统侧的第二项目数据的分析比对,并将比对结果信息反馈给所述用户端;
以及基于所述用户端针对反馈发出的同步指令,进行项目数据同步处理。
2.根据权利要求1所述的机器人系统的数据同步方法,其特征在于,所述第一项目数据以及所述第二项目数据均采用树状层级式的数据组织结构;
所述进行所述第一项目数据与机器人控制系统侧的第二项目数据的分析比对,包括:
采用遍历的方式对所述第一项目数据和第二项目数据进行对应分析比对。
3.根据权利要求2所述的机器人系统的数据同步方法,其特征在于,所述数据组织结构中,包括从属于根节点的项目层级结构,从属于项目层级的程序层级结构,以及从属于程序层级的指令层级结构;
项目数据的各层级结构中对应包括该层级的层级结构描述数据,以及作用域为该层级及以下层级的变量数据。
4.根据权利要求3所述的机器人系统的数据同步方法,其特征在于,所述数据同步方法还包括;
在系统运行过程中,接收连接的用户端发送的变量实时值同步请求;
基于所述变量实时值同步请求,将要同步更新的变量置于预设变量列表,向系统主进程推送变量更新任务,以使系统主进程根据所述预设变量列表进行变量实时值更新;
以及通知观察者进程进行响应处理,以使观察者进程基于监控到的变量变化对系统变量列表进行更新。
5.根据权利要求1所述的机器人系统的数据同步方法,其特征在于,所述进行项目数据同步处理,具体包括:下传替换处理、上载替换处理、下传更新处理、上载更新处理或上载新建处理;
其中,
所述下传替换处理具体为,所述第一项目数据下传至所述机器人控制系统并代替机器人控制系统侧的第二项目数据;
所述上载替换处理具体为,所述第二项目数据上载至所述用户端并代替用户端侧的第一项目数据;
所述下传更新处理具体为,所述第一项目数据中的数据数值下传至所述机器人控制系统,并对应更新机器人控制系统侧的第二项目数据;
所述上载更新处理具体为,所述第二项目数据中的数据数值上载至所述用户端,并对应更新用户端侧的第一项目数据;
所述上载新建处理具体为,所述第二项目数据上载至所述用户端,并根据所述第二项目数据在用户端侧新建第三项目数据。
6.一种机器人系统,其特征在于,包括机器人控制系统和用户端;所述机器人控制系统与所述用户端交互,实现权利要求1至5中任一项所述的数据同步方法。
7.根据权利要求6所述的机器人系统,其特征在于,所述用户端基于对项目数据的操作权限不同划分为主用户端和次用户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210649673.4A CN114722050B (zh) | 2022-06-10 | 2022-06-10 | 机器人系统的数据同步方法、及机器人系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210649673.4A CN114722050B (zh) | 2022-06-10 | 2022-06-10 | 机器人系统的数据同步方法、及机器人系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114722050A true CN114722050A (zh) | 2022-07-08 |
CN114722050B CN114722050B (zh) | 2022-09-30 |
Family
ID=82232556
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210649673.4A Active CN114722050B (zh) | 2022-06-10 | 2022-06-10 | 机器人系统的数据同步方法、及机器人系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114722050B (zh) |
Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101009565A (zh) * | 2006-01-25 | 2007-08-01 | 微星科技股份有限公司 | 机器人数据安全更新的系统及其方法 |
CN101526958A (zh) * | 2009-04-09 | 2009-09-09 | 中兴通讯股份有限公司 | 一种iptv系统模块间数据同步的方法及系统 |
CN102760152A (zh) * | 2012-04-05 | 2012-10-31 | 中国人民解放军国防科学技术大学 | 一种自动化的开源软件质量证据提取方法 |
CN104579873A (zh) * | 2015-01-27 | 2015-04-29 | 三星电子(中国)研发中心 | 对智能家居设备进行控制的方法及系统 |
CN106363634A (zh) * | 2016-11-29 | 2017-02-01 | 北京光年无限科技有限公司 | 一种远程控制机器人的方法及系统 |
CN107818019A (zh) * | 2016-09-12 | 2018-03-20 | 北京百度网讯科技有限公司 | 用于机器人操作系统的数据同步方法和装置 |
CN109325734A (zh) * | 2018-09-05 | 2019-02-12 | 江苏鸿信系统集成有限公司 | 一种财务机器人系统 |
CN110580843A (zh) * | 2018-09-05 | 2019-12-17 | 南京科青信息科技有限公司 | 机器人的控制方法、装置、设备及可读介质 |
CN110597696A (zh) * | 2019-09-04 | 2019-12-20 | 常州新途软件有限公司 | 一种log信息显示方法 |
CN111203874A (zh) * | 2019-12-26 | 2020-05-29 | 深圳市优必选科技股份有限公司 | 机器人的控制方法、装置、电子设备及存储介质 |
CN111352797A (zh) * | 2018-12-20 | 2020-06-30 | 波音公司 | 用于监视软件应用程序进程的系统和方法 |
CN111427313A (zh) * | 2020-02-28 | 2020-07-17 | 上海高仙自动化科技发展有限公司 | 一种机器人管理方法、装置、电子设备及存储介质 |
CN111475414A (zh) * | 2020-04-03 | 2020-07-31 | 深圳市吉祥腾达科技有限公司 | 模拟多个ap客户端实现在服务端产品上线的方法及系统 |
CN111813430A (zh) * | 2020-07-08 | 2020-10-23 | 杭州安森智能信息技术有限公司 | 机器人集群智能化更新与部署的方法及系统 |
CN112187914A (zh) * | 2020-09-24 | 2021-01-05 | 上海思寒环保科技有限公司 | 一种远程控制机器人管理方法及系统 |
CN112413847A (zh) * | 2020-11-20 | 2021-02-26 | 珠海格力电器股份有限公司 | 功能定制方法、装置、系统及存储介质 |
CN112668687A (zh) * | 2020-12-01 | 2021-04-16 | 达闼机器人有限公司 | 云端机器人系统、云服务器、机器人控制模块和机器人 |
CN113609232A (zh) * | 2021-10-08 | 2021-11-05 | 武汉四通信息服务有限公司 | 数据管理方法、数据管理系统和计算机可读存储介质 |
CN113794775A (zh) * | 2021-09-14 | 2021-12-14 | 上海景吾智能科技有限公司 | 机器人控制管理办法及系统 |
CN113954104A (zh) * | 2021-12-23 | 2022-01-21 | 辰星(天津)自动化设备有限公司 | 并联机器人的多线程控制器 |
CN114227719A (zh) * | 2022-01-07 | 2022-03-25 | 上海景吾酷租科技发展有限公司 | 移动机器人远程操控系统、方法及介质 |
-
2022
- 2022-06-10 CN CN202210649673.4A patent/CN114722050B/zh active Active
Patent Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101009565A (zh) * | 2006-01-25 | 2007-08-01 | 微星科技股份有限公司 | 机器人数据安全更新的系统及其方法 |
CN101526958A (zh) * | 2009-04-09 | 2009-09-09 | 中兴通讯股份有限公司 | 一种iptv系统模块间数据同步的方法及系统 |
CN102760152A (zh) * | 2012-04-05 | 2012-10-31 | 中国人民解放军国防科学技术大学 | 一种自动化的开源软件质量证据提取方法 |
CN104579873A (zh) * | 2015-01-27 | 2015-04-29 | 三星电子(中国)研发中心 | 对智能家居设备进行控制的方法及系统 |
CN107818019A (zh) * | 2016-09-12 | 2018-03-20 | 北京百度网讯科技有限公司 | 用于机器人操作系统的数据同步方法和装置 |
CN106363634A (zh) * | 2016-11-29 | 2017-02-01 | 北京光年无限科技有限公司 | 一种远程控制机器人的方法及系统 |
CN109325734A (zh) * | 2018-09-05 | 2019-02-12 | 江苏鸿信系统集成有限公司 | 一种财务机器人系统 |
CN110580843A (zh) * | 2018-09-05 | 2019-12-17 | 南京科青信息科技有限公司 | 机器人的控制方法、装置、设备及可读介质 |
CN111352797A (zh) * | 2018-12-20 | 2020-06-30 | 波音公司 | 用于监视软件应用程序进程的系统和方法 |
CN110597696A (zh) * | 2019-09-04 | 2019-12-20 | 常州新途软件有限公司 | 一种log信息显示方法 |
CN111203874A (zh) * | 2019-12-26 | 2020-05-29 | 深圳市优必选科技股份有限公司 | 机器人的控制方法、装置、电子设备及存储介质 |
CN111427313A (zh) * | 2020-02-28 | 2020-07-17 | 上海高仙自动化科技发展有限公司 | 一种机器人管理方法、装置、电子设备及存储介质 |
CN111475414A (zh) * | 2020-04-03 | 2020-07-31 | 深圳市吉祥腾达科技有限公司 | 模拟多个ap客户端实现在服务端产品上线的方法及系统 |
CN111813430A (zh) * | 2020-07-08 | 2020-10-23 | 杭州安森智能信息技术有限公司 | 机器人集群智能化更新与部署的方法及系统 |
CN112187914A (zh) * | 2020-09-24 | 2021-01-05 | 上海思寒环保科技有限公司 | 一种远程控制机器人管理方法及系统 |
CN112413847A (zh) * | 2020-11-20 | 2021-02-26 | 珠海格力电器股份有限公司 | 功能定制方法、装置、系统及存储介质 |
CN112668687A (zh) * | 2020-12-01 | 2021-04-16 | 达闼机器人有限公司 | 云端机器人系统、云服务器、机器人控制模块和机器人 |
CN113794775A (zh) * | 2021-09-14 | 2021-12-14 | 上海景吾智能科技有限公司 | 机器人控制管理办法及系统 |
CN113609232A (zh) * | 2021-10-08 | 2021-11-05 | 武汉四通信息服务有限公司 | 数据管理方法、数据管理系统和计算机可读存储介质 |
CN113954104A (zh) * | 2021-12-23 | 2022-01-21 | 辰星(天津)自动化设备有限公司 | 并联机器人的多线程控制器 |
CN114227719A (zh) * | 2022-01-07 | 2022-03-25 | 上海景吾酷租科技发展有限公司 | 移动机器人远程操控系统、方法及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114722050B (zh) | 2022-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE10121790B4 (de) | Softwarekonfigurationsverfahren zur Verwendung in einem Computersystem | |
US20090089234A1 (en) | Automated code generation for simulators | |
DE102011001460A1 (de) | Verfahren und Gerät für eine datengesteuerte Schnittstelle basierend auf Relationen zwischen Prozesssteuerungsetiketten | |
DE112013004924T5 (de) | Dynamisch wiederverwendbare Klassen | |
CN107612962B (zh) | 一种分布式仿真评估试验管理系统 | |
EP1516250A2 (de) | Softwareapplikation, softwarearchitektur und verfahren zur erstellung von softwareapplikationen, insbesondere für mes-systeme | |
CN111542790B (zh) | 用于处理软件项目的方法 | |
DE112013006481T5 (de) | Systementwicklungsgerät, Systementwicklungsverfahren und Systementwicklungsprogramm | |
CN114722050B (zh) | 机器人系统的数据同步方法、及机器人系统 | |
CN108062232A (zh) | 一种自动创建分支的系统及方法 | |
CN113741923A (zh) | 一种应用更新方法、装置、设备及介质 | |
CN114035860B (zh) | 一种基于rpa全局变量模块的流程参数配置系统 | |
CN113741881A (zh) | 一种rpa可视化流程设计方法 | |
CN113515275A (zh) | 一种所见即所得的云端工业组态软件系统及其开发方法 | |
Nawijn et al. | Automated finite element analysis in a knowledge based engineering environment | |
EP4091050B1 (de) | Verfahren und anordnung zum verwalten von automatisierungs-programmen für industrielle automatisierungsplattformen | |
CN111860854B (zh) | 模型特征管理系统、模型特征管理方法及存储介质 | |
JP2009282755A (ja) | シミュレーション装置 | |
CN114047953A (zh) | 流水线配置方法、装置、计算机设备及存储介质 | |
KR20210070896A (ko) | 클라우드 시스템 구축 장치, 방법, 및 그 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록매체 | |
WO2020174010A1 (de) | Verfahren zum bereitstellen von augmented-reality daten, recheneinrichtung, system und computerprogramm | |
Pedersen et al. | Graphical User Interface Programming Challenges Moving Beyond Java Swing and JavaFX | |
Baker et al. | IBEX: Beamline Control at ISIS Pulsed Neutron and Muon Source | |
CN115422219A (zh) | 机器人机型数据同步方法、系统及介质 | |
CN116820488B (zh) | 一种DevOps体系下研发部署过程联动的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |