CN110385709A - 一种基于机器人控制的多任务实时处理与同步方法 - Google Patents
一种基于机器人控制的多任务实时处理与同步方法 Download PDFInfo
- Publication number
- CN110385709A CN110385709A CN201810342060.XA CN201810342060A CN110385709A CN 110385709 A CN110385709 A CN 110385709A CN 201810342060 A CN201810342060 A CN 201810342060A CN 110385709 A CN110385709 A CN 110385709A
- Authority
- CN
- China
- Prior art keywords
- task
- tasks
- robot control
- real
- control
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 24
- 230000001360 synchronised effect Effects 0.000 title claims abstract description 17
- 230000002093 peripheral effect Effects 0.000 claims abstract description 3
- 230000005621 ferroelectricity Effects 0.000 claims description 5
- 238000001514 detection method Methods 0.000 claims description 4
- 238000012544 monitoring process Methods 0.000 claims description 3
- 238000007726 management method Methods 0.000 claims description 2
- 238000005070 sampling Methods 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1661—Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Numerical Control (AREA)
- Manipulator (AREA)
Abstract
本发明涉及一种基于机器人控制的多任务实时处理与同步方法,通过配置运行控制调度模块、逻辑控制调度模块、资源池管理模块、并行调度模块,四个模块协调配合,保证机器人控制的实时性与有效性,实现对机器人运动各轴和其外围设备的并行任务控制,解决了机器人控制过程中多任务实时性的问题。
Description
技术领域
本发明涉及多任务实时处理与同步方法,具体说是一种基于机器人控制的多任务实时处理与同步方法。
背景技术
随着工业机器人应用的日趋广泛,面对日益复杂的工业应用需求,机器人系统必须具有通用性、开放性、模块化和拓展性等特点,为了同时满足这些条件,提出了多任务实时处理与同步技术。
工业机器人是一种复杂的被控对象和运动作业工具,需要具备的基本功能包括作业编程、运动控制和逻辑与过程控制、I/O设备控制等,如何协调这些任务,对机器人控制任务调度提出了严格的要求。
发明内容
针对现在机器人控制过程中,任务调度不协调的问题,本发明要解决的技术问题是提供一种用于机器人运动控制的多任务实时处理与同步方法,满足机器人控制1ms的任务多任务优先级调度需求。
本发明为实现上述目的所采用的技术方案是:一种基于机器人控制的多任务实时处理与同步方法,包括:
步骤1:配置运行控制调度模块,包括对机器人运动控制任务进行配置;
步骤2:配置逻辑控制调度模块,包括对外围设备的逻辑控制执行任务进行配置;
步骤3:配置资源池管理模块,包括根据机器人运动控制任务和逻辑控制执行任务,配置资源池中的数据信息;所述数据信息包括任务信息和设备信息;
步骤4:配置并行调度模块,在执行并行任务时从配置资源池中读入并行任务的数据信息;
步骤5:并行调度模块根据并行任务的数据信息中的优先级输出任务顺序执行;
步骤6:并行调度模块将任务执行顺序以通信子结构体的形式保存;
步骤7:并行调度模块将通信子结构体中的任务执行顺序发送配置给相关任务;
步骤8:并行调度模块控制CPU按照任务执行顺序依次运行任务;当前任务执行完成后,控制CPU按照任务执行顺序运行次高级优先级的任务。
所述配置机器人运动控制任务包括:设置机器人运动控制任务和其对应的优先级。
所述机器人运动控制任务包括:采集机器人手臂的轴角度、轴位置的输入信号量;下发机器人轴的轴角度、轴位置的输出信号量;以及通过笛卡尔坐标系转化,计算机器手臂下一个时刻轴位置、轴角度。
所述配置逻辑控制执行任务包括:设置配置逻辑控制执行任务和其对应的优先级。
所述逻辑控制执行任务包括:DI/AI/RTD/TC通道采集的输入采集任务、DO/AO通道输出的输出控制任务、HMI在线监视任务、工程组态任务、逻辑运算任务。
所述任务信息包括:机械手臂轴编号、机器手臂球形坐标系、机械手臂当前位置和轴角度、机械手臂目标位置和轴角度、I/O通道上下限、执行周期、逻辑运算算法;所述设备信息包括:串口波特率、停止位、奇偶校验、Modbus从站地址,以太网IP地址、端口信息。
所述步骤5并行调度模块根据并行任务的数据信息中的优先级输出任务执行顺序还包括:对相同优先级的任务按照时间片设置任务执行顺序。
所述控制CPU按照任务执行顺序依次运行任务包括:
当读取铁电中的任务信息时;
判断是否读取成功,如果不成功,则重新读取;
如果读取成功,则获取当前任务的执行顺序、栈区大小;
动态申请该任务信息所需内存的配置使用权;
配置并启动任务;
检测执行该任务的串口设备是否在线,如果不在线,则继续检测;
如果串口设备在线,获取该串口设备的设备信息;
配置该串口设备的采样输出频率,控制串口设备执行任务。
当所述读取铁电中的任务信息与其他任务之间相关联,需要动态申请任务间的共享内存配置使用权时,则执行如下步骤:
检测任务间的共享内存的信号量是否被占用,如果被占用,则重新检测;
如果共享内存的信号量没有被占用,则将信号量进行锁存操作;
将任务信息读取或写入共享内存;
释放信号量,完成对所需内存的读取或写入操作。
本发明具有以下有益效果及优点:
1.满足机器人控制1ms的任务多任务优先级调度需求。
2.提高内核实时性。
3.内核小巧,便于移植。
附图说明
图1为本发明机器人实时多任务运行内核架构图;
图2为本发明从配置资源池中的获取数据信息流程图;
图3为本发明多任务实时调度流程图。
具体实施方式
下面结合附图及实施例对本发明做进一步的详细说明。
机器人在运动中要处理多项并行任务,包括机器人运动控制任务和逻辑控制执行任务。机器人运动控制任务包括:采集机器人手臂的输入信号量(轴角度、轴位置等)、下发机器人轴的输出信号量(轴角度、轴位置)、计算机器手臂下一个位置点(通过笛卡尔坐标系转化,计算出下一个时刻轴位置、轴角度)等。逻辑控制执行任务包括:输入采集任务(DI/AI/RTD/TC通道采集)、输出控制任务(DO/AO通道输出)、HMI在线监视任务、工程组态任务、逻辑运算任务等。
本发明的一种基于机器人控制的多任务实时处理与同步方法,如图1所示,包括以下步骤:
步骤1,配置机器人运动控制任务;
步骤2,配置逻辑控制执行模块;
步骤3,配置资源池中的数据信息;
步骤4,并行调度模块在并行应用执行时从配置资源池中读入任务信息和设备信息;
步骤5,并行调度模块通过信号量同步技术,采用调度算法完成对并行应用的调度;
步骤6,并行调度模块将调度结果以通信子结构体的形式给出;
步骤7,通信子结构体包含的数据通过解析后,分发给各任务,确定目前正在执行任务;
步骤8,当前任务执行完成后,信号量立即释放,将解释权交给下一高优先级的任务。
在所述步骤1:配置机器人运动控制任务,此任务是机器人控制的核心,对机器人运动控制任务进行优先级配置,以便控制器内核对任务进行优化调度。
在所述步骤2:配置逻辑控制执行模块,机器人运动控制过程中,除了运动控制任务,还有外围的逻辑控制执行模块任务,用户根据实际需要,通过对逻辑控制执行模块进行配置,以便对运动控制任务和逻辑控制执行模块进行协调调度。
在所述步骤3:根据所述步骤1中,配置机器人运动控制任务,根据所述步骤2中,配置逻辑控制执行模块,根据不同任务,配置资源池中对应的数据信息。
所述步骤4:根据所述步骤3中,并行调度模块在并行应用执行前从配置资源池中读入任务信息和资源信息。
所述步骤5:根据所述步骤4中,并行调度模块通过信号量同步技术,采用调度算法完成对并行应用的调度。
所述步骤6:并行调度模块将调度结果以通信子结构体的形式给出。
所述步骤7:给出的通信子结构体,通过数据解析后,分发给各任务,同时确定目前正在执行任务。
所述步骤8:当前任务执行完成后,信号量立即释放,将解释权交给次高优先级的任务。
所述任务信息包括:机械手臂轴编号、机器手臂球形坐标系、机械手臂当前位置和轴角度、机械手臂目标位置和轴角度、I/O通道上下限、执行周期、逻辑运算算法等。
所述设备信息包括:串口波特率、停止位、奇偶校验,Modbus从站地址,以太网IP地址、端口等信息。
如图2所示,从资源池获取数据结构采集流程如下。
读取铁电中的任务信息;
是否读取成功,如果不成功,重新读取;
如果读取成功,获取任务优先级、栈区大小;
动态申请所需内存;
配置并启动任务;
检测串口设备是否在线,如果不在线,继续检测;
如果串口设备在线,获取设备信息;
配置设备采样输出频率;
结束。
如图3所示,多任务实时调度流程图:
创建共享内存;
共享内存是否被占用,如果被占用,重新创建;
共享内存如果没有被占用,将当前进程信号量进行锁存操作(P操作);
读取/写入共享内存数据;
当前进程信号量进行释放操作(V操作);
结束。
Claims (9)
1.一种基于机器人控制的多任务实时处理与同步方法,其特征在于,包括:
步骤1:配置运行控制调度模块,包括对机器人运动控制任务进行配置;
步骤2:配置逻辑控制调度模块,包括对外围设备的逻辑控制执行任务进行配置;
步骤3:配置资源池管理模块,包括根据机器人运动控制任务和逻辑控制执行任务,配置资源池中的数据信息;所述数据信息包括任务信息和设备信息;
步骤4:配置并行调度模块,在执行并行任务时从配置资源池中读入并行任务的数据信息;
步骤5:并行调度模块根据并行任务的数据信息中的优先级输出任务顺序执行;
步骤6:并行调度模块将任务执行顺序以通信子结构体的形式保存;
步骤7:并行调度模块将通信子结构体中的任务执行顺序发送配置给相关任务;
步骤8:并行调度模块控制CPU按照任务执行顺序依次运行任务;当前任务执行完成后,控制CPU按照任务执行顺序运行次高级优先级的任务。
2.按照权利要求1所述的一种基于机器人控制的多任务实时处理与同步方法,其特征在于,所述配置机器人运动控制任务包括:设置机器人运动控制任务和其对应的优先级。
3.按照权利要求2所述的一种基于机器人控制的多任务实时处理与同步方法,其特征在于,所述机器人运动控制任务包括:采集机器人手臂的轴角度、轴位置的输入信号量;下发机器人轴的轴角度、轴位置的输出信号量;以及通过笛卡尔坐标系转化,计算机器手臂下一个时刻轴位置、轴角度。
4.按照权利要求1所述的一种基于机器人控制的多任务实时处理与同步方法,其特征在于,所述配置逻辑控制执行任务包括:设置配置逻辑控制执行任务和其对应的优先级。
5.按照权利要求4所述的一种基于机器人控制的多任务实时处理与同步方法,其特征在于,所述逻辑控制执行任务包括:DI/AI/RTD/TC通道采集的输入采集任务、DO/AO通道输出的输出控制任务、HMI在线监视任务、工程组态任务、逻辑运算任务。
6.按照权利要求1所述的一种基于机器人控制的多任务实时处理与同步方法,其特征在于,所述任务信息包括:机械手臂轴编号、机器手臂球形坐标系、机械手臂当前位置和轴角度、机械手臂目标位置和轴角度、I/O通道上下限、执行周期、逻辑运算算法;所述设备信息包括:串口波特率、停止位、奇偶校验,Modbus从站地址,以太网IP地址、端口信息。
7.按照权利要求1所述的一种基于机器人控制的多任务实时处理与同步方法,其特征在于,所述步骤5:并行调度模块根据并行任务的数据信息中的优先级输出任务执行顺序还包括:对相同优先级的任务按照时间片设置任务执行顺序。
8.按照权利要求1-7任意一项所述的一种基于机器人控制的多任务实时处理与同步方法,其特征在于,所述控制CPU按照任务执行顺序依次运行任务包括:
当读取铁电中的任务信息时;
判断是否读取成功,如果不成功,则重新读取;
如果读取成功,则获取当前任务的执行顺序、栈区大小;
动态申请该任务信息所需内存的配置使用权;
配置并启动任务;
检测执行该任务的串口设备是否在线,如果不在线,则继续检测;
如果串口设备在线,获取该串口设备的设备信息;
配置该串口设备的采样输出频率,控制串口设备执行任务。
9.按照权利要求8所述的一种基于机器人控制的多任务实时处理与同步方法,其特征在于,当所述读取铁电中的任务信息与其他任务之间相关联,需要动态申请任务间的共享内存配置使用权时,则执行如下步骤:
检测任务间的共享内存的信号量是否被占用,如果被占用,则重新检测;
如果共享内存的信号量没有被占用,则将信号量进行锁存操作;
将任务信息读取或写入共享内存;
释放信号量,完成对所需内存的读取或写入操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810342060.XA CN110385709A (zh) | 2018-04-17 | 2018-04-17 | 一种基于机器人控制的多任务实时处理与同步方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810342060.XA CN110385709A (zh) | 2018-04-17 | 2018-04-17 | 一种基于机器人控制的多任务实时处理与同步方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110385709A true CN110385709A (zh) | 2019-10-29 |
Family
ID=68283928
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810342060.XA Pending CN110385709A (zh) | 2018-04-17 | 2018-04-17 | 一种基于机器人控制的多任务实时处理与同步方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110385709A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111390905A (zh) * | 2020-03-18 | 2020-07-10 | 深圳市人工智能与机器人研究院 | 机器人多任务控制方法、控制装置及终端设备 |
CN112099461A (zh) * | 2020-11-06 | 2020-12-18 | 基点生物科技(成都)有限公司 | 一种基于样本库系统的自动化设备远程控制方法 |
CN112327759A (zh) * | 2020-10-21 | 2021-02-05 | 苏州谷夫道自动化科技有限公司 | 一种多通道数控系统通道同步的方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080306740A1 (en) * | 2007-06-07 | 2008-12-11 | Mckesson Automation Inc. | Remotely and interactively controlling semi-automatic devices |
CN101976062A (zh) * | 2010-08-12 | 2011-02-16 | 华南理工大学 | 基于lsoa构架的开放式控制方法 |
CN102752136A (zh) * | 2012-06-29 | 2012-10-24 | 广东东研网络科技有限公司 | 通信设备操作调度方法 |
CN103916875A (zh) * | 2014-04-24 | 2014-07-09 | 山东大学 | 基于wifi无线网络多类控制终端的管理与规划系统 |
CN105137817A (zh) * | 2015-07-24 | 2015-12-09 | 浙江中控研究院有限公司 | 控制程序处理器的片上系统及其控制程序执行方法 |
CN106777009A (zh) * | 2016-12-07 | 2017-05-31 | 北京奇虎科技有限公司 | 智能设备及任务计划执行控制方法和装置 |
-
2018
- 2018-04-17 CN CN201810342060.XA patent/CN110385709A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080306740A1 (en) * | 2007-06-07 | 2008-12-11 | Mckesson Automation Inc. | Remotely and interactively controlling semi-automatic devices |
CN101976062A (zh) * | 2010-08-12 | 2011-02-16 | 华南理工大学 | 基于lsoa构架的开放式控制方法 |
CN102752136A (zh) * | 2012-06-29 | 2012-10-24 | 广东东研网络科技有限公司 | 通信设备操作调度方法 |
CN103916875A (zh) * | 2014-04-24 | 2014-07-09 | 山东大学 | 基于wifi无线网络多类控制终端的管理与规划系统 |
CN105137817A (zh) * | 2015-07-24 | 2015-12-09 | 浙江中控研究院有限公司 | 控制程序处理器的片上系统及其控制程序执行方法 |
CN106777009A (zh) * | 2016-12-07 | 2017-05-31 | 北京奇虎科技有限公司 | 智能设备及任务计划执行控制方法和装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111390905A (zh) * | 2020-03-18 | 2020-07-10 | 深圳市人工智能与机器人研究院 | 机器人多任务控制方法、控制装置及终端设备 |
CN112327759A (zh) * | 2020-10-21 | 2021-02-05 | 苏州谷夫道自动化科技有限公司 | 一种多通道数控系统通道同步的方法及系统 |
CN112099461A (zh) * | 2020-11-06 | 2020-12-18 | 基点生物科技(成都)有限公司 | 一种基于样本库系统的自动化设备远程控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110385709A (zh) | 一种基于机器人控制的多任务实时处理与同步方法 | |
CN101266553B (zh) | 基于嵌入式系统的多任务管理方法 | |
CN101446818B (zh) | 金属冲击试样自动化加工装置的自动控制系统 | |
CN100429594C (zh) | 一种智能step-nc控制器系统及其实现方法 | |
Nezhmetdinov et al. | Approach to the construction of logical control systems for technological equipment for the implementation of Industry 4.0 concept | |
CN102354155B (zh) | 开放式数控系统的实时内核及刀路曲线的实时控制方法 | |
CN103744356A (zh) | 一种基于dsp/fpga动态可配置的机床智能控制器及控制方法 | |
CN103926928B (zh) | 一种模块动态调度的机器人控制器 | |
CN104615087A (zh) | 总线型运动控制器 | |
Nikishechkin et al. | Approach to development of specialized terminals for equipment control on the basis of shared memory mechanism | |
CN107678325A (zh) | 一种基于实时操作系统和fpga的转台伺服控制方法 | |
CN113954104B (zh) | 并联机器人的多线程控制器 | |
CN102540973A (zh) | 一种用于数控系统的命令多发机制的实现方法 | |
CN102354154B (zh) | 一种开放式数控系统的实时内核芯片 | |
CN201489345U (zh) | 双处理器运动控制卡 | |
Toquica et al. | STEP-NC-based machining architecture applied to industrial robots | |
Zhang et al. | Process comprehension for interoperable CNC manufacturing | |
US10921783B2 (en) | Numerical control device | |
Yu et al. | Design of controller system for industrial robot based on RTOS Xenomai | |
Li et al. | An open CNC system based on EtherCAT network | |
CN201084005Y (zh) | 基于arm技术的嵌入式机床数控系统 | |
CN113848772B (zh) | 一种基于嵌入式系统和fpga的转台伺服控制系统及方法 | |
CN204480008U (zh) | 总线型运动控制器 | |
Wang et al. | Open architecture of CNC system based on STEP-NC data model | |
Souza et al. | Remote machining of prismatic parts through the internet in a cnc machine compliant with the step-nc standard |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191029 |
|
RJ01 | Rejection of invention patent application after publication |