(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202210600501.8
(22)申请日 2022.05.30
(71)申请人 北京计算机技 术及应用研究所
地址 100854 北京市海淀区永定路51号
(72)发明人 陈占杰 寇金桥 瞿秋薏 籍雁翔
吴敏 王浩枫
(74)专利代理 机构 中国兵器 工业集团公司专利
中心 11011
专利代理师 辛海明
(51)Int.Cl.
B25J 9/16(2006.01)
(54)发明名称
一种通用的机器人运动控制方案的设计方
法
(57)摘要
本发明涉及一种通用的机器人运动控制方
案的设计方法, 属于机器人领域。 本发明分离了
直行速度发布线程, 使机器人在持续执行单一动
作指令时不会因速度发布器陷入死循环而无法
执行其他动作指令; 对于转弯指令, 利用惯导的
角度信息进行几何转换, 获取目标角度, 在按照
指令方向旋转时同时监测惯导实时角度, 大大提
高了旋转的精确度; 本发明设计了优先级调度
器, 使机器人处理多进程同时下发控制指令时具
有可控逻辑, 不会陷入动作失控状态; 本发明自
定义了一种包含 更多元素的消息类型, 能够使用
户更加灵活的控制机器人的运动方式。 本发明使
机器人运动更智能和精确, 提高了用户对机器人
控制的灵活性。
权利要求书2页 说明书5页 附图1页
CN 115008453 A
2022.09.06
CN 115008453 A
1.一种通用的机器人运动控制方案的设计方法, 其特 征在于, 该 方法包括:
S11、 自定义控制消息文件, 该消息文件包括消息来源、 指令类别和速度值; 消息来源用
于指示消息的进程来源, 用于判断是否读取速度值; 指 令类别用于指示机器人行为指 令, 包
括前进、 后退、 左转、 右转和停止; 速度值用于指示机器人本次动作的速度值大小;
S12、 注册ROS节点、 订阅器和发布器; 发布器用于发布控制消息到话题, 供需要该消息
的进程订阅; 订阅器则从话题订阅消息, 再通过回调函数 处理消息, 回调函数在初始化订阅
器时声明;
S13、 控制消息首先会经过优先级调度器的筛选, 按照用户预先设定的优先级将最终的
消息发送到话题上供控制进程订阅; 订阅器在话题订阅到控制消息时, 回调函数会进行消
息来源判断, 根据功能协议的不同, 从而读取不同的消息内容, 根据消息中的指 令执行相应
的动作;
指令为直行时, 设置全局flag=1, 构建一个单独的线程, 按照预设速度或消息速度循
环发布速度消息 到动作模块, 线程的执 行方式为detac h(), 即分离线程;
当指令为旋转时, 设置flag=2, 直行线程因flag值变化从而跳出自循环, 直行线程结
束,执行旋转动作;
当指令为停车时, 设置flag=0, 回调函数会将所有速度值初始化为零, 然后发送一次
速度指令清空控制器速度信息, 使机器人停车。
2.如权利要求1所述的通用的机器人运动控制方案的设计方法, 其特征在于, 所述步骤
S11中, 消息来源 包括语音识别和手势 识别。
3.如权利要求2所述的通用的机器人运动控制方案的设计方法, 其特征在于, 当消息来
源为语音识别时, 用户可能会口述以某速度前进, 需要读取速度值, 如为空值, 则使用控制
程序内的默认值; 当消息来源为手势识别时, 由于手势不包含速度消息, 则不需要读取速度
值。
4.如权利要求1所述的通用的机器人运动控制方案的设计方法, 其特征在于, 所述步骤
S12中, 在私有成员中实例化节点句 柄、 订阅器、 发布器, 节点句 柄是ROS节点用来调用函数
的标志; 然后, 在公有成员中初始化订阅器、 发布器, 定义订阅和发布的消息类型、 消息话
题、 消息传输频率以及订阅回调函数; 最后, 将动作函数和回调函数声明为公有函数, 其中
动作函数直接在类中实现。
5.如权利要求1所述的通用的机器人运动控制方案的设计方法, 其特征在于, 所述步骤
S13中, 语音识别功能能识别出动作指令及速度消息, 则消息内容中会包含速度值内容, 那
么订阅器回调就会读取速度值以及指令类别; 如果进程不能识别速度值消息, 则根据指令
调用不同的动作发布方法。
6.如权利要求1所述的通用的机器人运动控制方案的设计方法, 其特征在于, 当指令为
旋转时, 预设旋转角度为90度, 首先订阅惯导模块话题, 获取角度信息, 然后将该模块的四
元数信息转 化为欧拉角, 根据初始位置以及旋转角度计算目标位姿的方向, 从而精准 转向。
7.如权利要求1所述的通用的机器人运动控制方案的设计方法, 其特征在于, 所述 回调
函数会将所有速度值初始化 为零包括将线速度、 角速度初始化 为零。
8.如权利要求1 ‑7任一项所述的通用的机器人运动控制方案的设计方法, 其特征在于,
所述步骤S13中的优先级调度方法包括:权 利 要 求 书 1/2 页
2
CN 115008453 A
2假设有两个进程a,b会同时发布运动指令;
将a, b两个进程的消息指令发布到 两个不同的话题 topic1和topic2;
创建优先级调度器, 订阅topic1和topic2, 并且设置两个话题的静态优先级的数值; 假
设topic2的优先级高于topic1;
根据优先级的数值, 当两个topic中都有数据时, topic1会被放弃处理, 优先级调度器
只发布topic2中的消息 到新的话题 topic3中, 控制节点将始终从topic 3中订阅消息 。
9.如权利要求8所述的通用的机器人运动控制方案的设计方法, 其特征在于, 优先级的
数值越小, 优先级越高。
10.如权利要求8所述的通用的机器人运动控制方案的设计方法, 其特征在于, 多个进
程发布的指令消息在优先级调度器中设置不同的优先 数, 实现多选一。权 利 要 求 书 2/2 页
3
CN 115008453 A
3
专利 一种通用的机器人运动控制方案的设计方法
文档预览
中文文档
9 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共9页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 10:23:12上传分享