CN107398902B - 机器人控制方法、机器人控制系统 - Google Patents

机器人控制方法、机器人控制系统 Download PDF

Info

Publication number
CN107398902B
CN107398902B CN201710651936.4A CN201710651936A CN107398902B CN 107398902 B CN107398902 B CN 107398902B CN 201710651936 A CN201710651936 A CN 201710651936A CN 107398902 B CN107398902 B CN 107398902B
Authority
CN
China
Prior art keywords
director data
robot
arm processor
robot control
central controller
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.)
Active
Application number
CN201710651936.4A
Other languages
English (en)
Other versions
CN107398902A (zh
Inventor
韩勇
万海兵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Jidao robot Co.,Ltd.
Original Assignee
Hefei Sunleads Robot Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hefei Sunleads Robot Technology Co Ltd filed Critical Hefei Sunleads Robot Technology Co Ltd
Priority to CN201710651936.4A priority Critical patent/CN107398902B/zh
Publication of CN107398902A publication Critical patent/CN107398902A/zh
Application granted granted Critical
Publication of CN107398902B publication Critical patent/CN107398902B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

本发明公开了一种机器人控制方法、机器人控制系统。其中机器人控制方法包括ARM处理器获取由中央控制器发布的指令数据;将获取到的指令数据存储于ARM内存的动态缓存区域;当所述动态缓存区域内存储的指令数据达到预设帧数时,根据读取周期依次调取指令数据,并将调取的指令数据发送至机器人的运动控制器。采用本技术方案可以使机器人的运动控制器以固定时延(根据预设帧数来确定)执行控制机器人运动的任务,从而可以减弱甚至消除网络延时所带来的影响。

Description

机器人控制方法、机器人控制系统
技术领域
本发明涉及机器人控制领域,尤其涉及一种机器人控制方法、机器人控制系统。
背景技术
网络时延是指各种数据(例如,数据包,通信指令等)在网络介质中通过网络协议(如TCP/IP)进行传输,如果信息量过大不加以限制,超额的网络流量就会导致设备反应缓慢,造成网络延迟。
刊登于《兰州理工大学学报》第40卷第6期上题为《基于时延预测的VOIP抖动缓冲控制算法》的论文公开了一种基于时延预测的抖动缓冲控制算法。由于网络时延抖动是影响VOIP语音质量的重要因素之一,为消除时延抖动,提高VOIP语音质量,该论文提出一种基于时延预测的自适应抖动缓冲控制算法.算法采用AR模型为时延序列建模,通过LMS算法进行时延的异步预测,并根据时延预测值,以缓冲时延最小化为目标,自适应调节缓冲区大小。
该论文提供的时延抖动控制应用于语音传输,但对于应用于机器人控制领域,虽然通过预测可以减小网络时延,但是无法精确预测网络时延,也就无法对网络时延作精确补偿。
机器人是通过网络获取中央控制轨迹指令,由于机器人移动速度较快,网络波动会导致控制精度的存在较大的误差,并且会引起机器人的速度抖动。假设,机器人的移动速度10米/秒,网络波动延时100毫秒,指令周期为10毫秒,那么机器人获取下一指令时,机器人已经有了1米的距离误差。
发明内容
本发明就是针对上述问题,提供了一种机器人控制方法,包括如下步骤:ARM处理器获取由中央控制器发布的指令数据;将获取到的指令数据存储于ARM内存的动态缓存区域;当所述动态缓存区域内存储的指令数据达到预设帧数时,根据读取周期依次调取指令数据,并将调取的指令数据发送至机器人的运动控制器。
可选的,所述ARM处理器获取由中央控制器发布的指令数据包括:
所述中央控制器生成包含指令数据的指令队列,且所述指令队列采用预设通信协议通过消息服务器发布;
所述ARM处理器通过订阅方式从所述消息服务器获取指令队列;
其中,所述中央控制器和ARM处理器分别作为客户端与所述消息服务器连接,以通过所述消息服务器实现两者之间的通信。
可选的,所述消息服务器为ActiveMQ服务器或者RabbitMQ服务器。
可选的,所述动态缓存区域所能存储的预设帧数是基于最大网络时延来确定的。
可选的,所述最大网络时延为200毫秒,所述预设帧数为60帧。
可选的,根据读取周期依次调取指令数据是指ARM处理器根据读取周期依照指令数据存入所述动态缓存区域的先后顺序按照先入先出的次序调取指令数据。
可选的,所述读取周期为10毫秒。
可选的,ARM处理器将调取的指令数据发送至机器人的运动控制器是通过串口UART方式发送的。
本发明实施例还提供了一种机器人控制系统,包括中央控制器和机器人;其中,所述机器人包括ARM处理器,ARM内存以及运动控制器,其特征在于,所述ARM内存中设有动态缓存区域,用于缓存所述ARM处理器获取到的由中央控制器发布的指令数据;所述ARM处理器用于当所述动态缓存区域内存储的指令数据达到预设帧数时,根据读取周期依次调取指令数据,并将调取的指令数据发送至机器人的运动控制器;所述运动控制器用于根据指令数据控制机器人运动。
与现有技术相比,本发明技术方案至少具有以下有益效果:
在机器人的ARM内存中设置一个动态缓存区域,用于缓存ARM处理器获取到的由中央控制器发布的指令数据,当该动态缓存区域内存储的指令数据达到预设帧数时,根据读取周期依次调取指令数据,并将调取的指令数据发送至机器人的运动控制器。由于相对于中央控制器发布的指令数据的周期,运动控制器可以以固定时延(根据预设帧数来确定)执行控制机器人运动的任务,从而可以减弱甚至消除网络延时所带来的影响。
附图说明
图1是本发明实施例的一种机器人控制系统的结构示意图;
图2是本发明实施例的一种机器人控制方法的流程示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。
如图1所示的是本发明实施例的一种机器人控制系统的结构示意图。参考图1,所述机器人控制系统包括中央控制器11和机器人,其中所述机器人包括ARM处理器21,ARM内存211和运动控制器22。中央控制器11内设有无线通信模块111,所述机器人的ARM处理器21中设有无线通信模块212,中央控制器11与ARM处理器21通过无线通信模块传输指令数据。
与现有技术不同的是,在所述ARM内存211中设有动态缓存区域2111,所述动态缓存区域2111用于缓存所述ARM处理器21获取到的由中央控制器发布的指令数据。所述ARM处理器21用于当所述动态缓存区域2111内存储的指令数据达到预设帧数时,根据读取周期依次调取指令数据,并将调取的指令数据发送至机器人的运动控制器22,ARM处理器21与机器人的运动控制器22之间是通过串口UART方式传送数据。所述运动控制器22用于根据指令数据控制机器人运动。所述ARM处理器21中还设置有CPU213,用于处理机器人接收到的各种数据。
下面结合具体实施例描述机器人的ARM处理器处理指令数据的具体实施方法。
结合图2所示的是本发明实施例的一种机器人控制方法的流程示意图。参考图2,所述机器人控制方法包括如下步骤:
步骤S1:ARM处理器获取由中央控制器发布的指令数据;
步骤S2:将获取到的指令数据存储于ARM内存的动态缓存区域;
步骤S3:当所述动态缓存区域内存储的指令数据达到预设帧数时,根据读取周期依次调取指令数据,并将调取的指令数据发送至机器人的运动控制器。
本实施例中,中央控制器和ARM处理器之间是通过建立消息服务器来实现ARM处理器与中央控制器之间的通信,所述中央控制器和ARM处理器分别作为客户端与消息服务器连接。本领域技术人员知晓,消息服务器是采用发布、订阅的方式实现各客户端间的通信。
具体来说,步骤S1包括:
所述中央控制器生成包含指令数据的指令队列,且所述指令队列采用预设通信协议通过消息服务器发布;
所述ARM处理器通过订阅方式从所述消息服务器获取指令队列。
其中,所述消息服务器可以采用ActiveMQ(Active message queuing)服务器或者RabbitMQ服务器。预设通信协议可以采用MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)协议。MQTT协议是IBM开发的一个基于TCP/IP的即时通信协议,两个App端发送和接收消息需要中间人,这个中间人就是消息服务器(比如ActiveMQ服务器、RabbitMQ服务器),三者通信协议就是MQTT协议。
指令队列可以采用json的协议格式发布,例如如下格式:
/IOV/Robot/f1c03371-fa58-11e6-981a-a5467436a6d6/MoveTo,{"time":"0.050000000000000","longitude":"121.627000000000000","latitude":"31.247874560000000","speed":"0.003400000045076","heading":"-1.324900000000000"}。
由于受到网络时延的影响,ARM处理器获取由中央控制器发布的指令数据的时间间隔会有波动。因此,在本实施例中,先将ARM处理器获取到的指令数据存储于ARM内存的动态缓存区域(如步骤S2所述)。
所述动态缓存区域所能存储的预设帧数是基于最大网络时延来确定的。具体来说,根据网络时延波动测试,如果最大网络时延为200毫秒。根据经验公式固定网络延时为该最大网络延时的两倍再加上200毫秒,即600毫秒。需要说明的是,设置最大网络延时的目的是为防止动态缓存区域里的指令数据被取空,导致ARM处理器发送给机器人的运动控制器的指令数据产生时延波动。其中,最大网络时延基于不同场景以及基于网络质量,例如无线访问接入点(AP)质量和数量而不同。
在本实施例中,每一帧指令数据是10毫秒,因此当所述动态缓存区域内存储的指令数据达到预设帧数(60帧)时,根据读取周期依次调取指令数据,并将调取的指令数据发送至机器人的运动控制器(如步骤S3所述)。
具体地,根据读取周期依次调取指令数据是指ARM处理器根据读取周期依照指令数据存入所述动态缓存区域的先后顺序按照先入先出的次序调取指令数据。其中,ARM处理器的读取周期为10毫秒。ARM处理器将调取的指令数据发送至机器人的运动控制器是通过串口UART方式发送的。
采用上述实施例的控制方法,相对于中央控制器发布的指令数据的周期,机器人的运动控制器可以以固定时延(如上述实施例中的600毫秒)执行控制机器人运动的任务,从而可以减弱甚至消除网络延时所带来的影响。如果需要进一步提高机器人运动控制的实时性,可以通过缩短固定时延,即可达到同步控制的要求。
另一方面,采用本发明实施例的技术方案可以降低成本,由于通过硬件成本降低网络时延的成本很高,以10米布置一个ap的方案。一个工业ap价格在5000元左右,500m长度的空间,至少需要25万。因此可以通过固化时延的方式解决因ap数量不足引起的网络时延抖动问题。
本发明虽然已以较佳实施例公开如上,但其并不是用来限定本发明,任何本领域技术人员在不脱离本发明的精神和范围内,都可以利用上述揭示的方法和技术内容对本发明技术方案做出可能的变动和修改,因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化及修饰,均属于本发明技术方案的保护范围。

Claims (7)

1.一种机器人控制方法,其特征在于,包括如下步骤:
ARM处理器获取由中央控制器发布的指令数据;
将获取到的指令数据存储于ARM内存的动态缓存区域;
当所述动态缓存区域内存储的指令数据达到预设帧数时,根据读取周期依次调取指令数据,并将调取的指令数据发送至机器人的运动控制器;
所述ARM处理器获取由中央控制器发布的指令数据包括:
所述中央控制器生成包含指令数据的指令队列,且所述指令队列采用预设通信协议通过消息服务器发布;
所述ARM处理器通过订阅方式从所述消息服务器获取指令队列;
其中,所述中央控制器和ARM处理器分别作为客户端与所述消息服务器连接,以通过所述消息服务器实现两者之间的通信;
根据读取周期依次调取指令数据是指ARM处理器根据读取周期依照指令数据存入所述动态缓存区域的先后顺序按照先入先出的次序调取指令数据。
2.如权利要求1所述的机器人控制方法,其特征在于,所述消息服务器为ActiveMQ服务器或者RabbitMQ服务器。
3.如权利要求1所述的机器人控制方法,其特征在于,所述动态缓存区域所能存储的预设帧数是基于最大网络时延来确定的。
4.如权利要求3所述的机器人控制方法,其特征在于,所述最大网络时延为200毫秒,所述预设帧数为60帧。
5.如权利要求1所述的机器人控制方法,其特征在于,所述读取周期为10毫秒。
6.如权利要求1所述的机器人控制方法,其特征在于,ARM处理器将调取的指令数据发送至机器人的运动控制器是通过串口UART方式发送的。
7.一种机器人控制系统,包括中央控制器和机器人;其中,所述机器人包括ARM处理器,ARM内存以及运动控制器,其特征在于,所述ARM内存中设有动态缓存区域,用于缓存所述ARM处理器获取到的由中央控制器发布的指令数据;所述ARM处理器用于当所述动态缓存区域内存储的指令数据达到预设帧数时,根据读取周期依照指令数据存入所述动态缓存区域的先后顺序按照先入先出的次序调取指令数据,并将调取的指令数据发送至机器人的运动控制器;所述运动控制器用于根据指令数据控制机器人运动;
所述ARM处理器还用于作为客户端与消息服务器连接,以通过订阅方式从消息服务器获取所述中央控制器通过所述消息服务器发布的指令队列。
CN201710651936.4A 2017-08-02 2017-08-02 机器人控制方法、机器人控制系统 Active CN107398902B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710651936.4A CN107398902B (zh) 2017-08-02 2017-08-02 机器人控制方法、机器人控制系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710651936.4A CN107398902B (zh) 2017-08-02 2017-08-02 机器人控制方法、机器人控制系统

Publications (2)

Publication Number Publication Date
CN107398902A CN107398902A (zh) 2017-11-28
CN107398902B true CN107398902B (zh) 2019-08-16

Family

ID=60401089

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710651936.4A Active CN107398902B (zh) 2017-08-02 2017-08-02 机器人控制方法、机器人控制系统

Country Status (1)

Country Link
CN (1) CN107398902B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109991967A (zh) * 2017-12-29 2019-07-09 深圳市优必选科技有限公司 一种机器人运动的控制方法、系统及终端设备
CN110065066A (zh) * 2018-01-24 2019-07-30 南京机器人研究院有限公司 一种用移动终端控制机器人进行互动的方法
CN111376259A (zh) * 2018-12-30 2020-07-07 深圳市优必选科技有限公司 一种数据发送周期的确定方法、装置、存储介质及机器人
CN111267111B (zh) * 2020-03-31 2021-10-01 烟台艾睿光电科技有限公司 一种机器人控制方法、装置及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003039374A (ja) * 2001-06-08 2003-02-13 Comau Spa ロボット用制御システム
CN106945045A (zh) * 2017-04-19 2017-07-14 广州视源电子科技股份有限公司 基于ros和orocos的机器人控制的通信方法和系统
CN106956265A (zh) * 2017-04-19 2017-07-18 广州视源电子科技股份有限公司 基于ros和orocos的机器人运动规划的执行方法和系统
CN106959672A (zh) * 2017-04-28 2017-07-18 深圳市汇川控制技术有限公司 一种基于api的工业运动控制系统及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6442451B1 (en) * 2000-12-28 2002-08-27 Robotic Workspace Technologies, Inc. Versatile robot control system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003039374A (ja) * 2001-06-08 2003-02-13 Comau Spa ロボット用制御システム
CN106945045A (zh) * 2017-04-19 2017-07-14 广州视源电子科技股份有限公司 基于ros和orocos的机器人控制的通信方法和系统
CN106956265A (zh) * 2017-04-19 2017-07-18 广州视源电子科技股份有限公司 基于ros和orocos的机器人运动规划的执行方法和系统
CN106959672A (zh) * 2017-04-28 2017-07-18 深圳市汇川控制技术有限公司 一种基于api的工业运动控制系统及方法

Also Published As

Publication number Publication date
CN107398902A (zh) 2017-11-28

Similar Documents

Publication Publication Date Title
CN107398902B (zh) 机器人控制方法、机器人控制系统
US11620255B2 (en) Time sensitive networking device
KR102362687B1 (ko) 컴퓨팅 시스템 및 그것의 리소스 관리 방법
CA2847788C (en) Server system for providing current data and past data to clients
US20080095198A1 (en) Playout based delay scheduler
CN105100140B (zh) 文件传输方法和系统
CN113783793B (zh) 对时间敏感的数据帧的流量调度方法及相关设备
CN106462474A (zh) 使用故意延迟发送的网络超时
CN100555982C (zh) 来自外部存储器单元的协议控制块的推测预取
WO2021218683A1 (zh) 图像处理的方法和装置
CN109246004B (zh) 网络数据加速方法和客户端、路由器、服务器
CN109729104A (zh) 客户端源地址获取方法、装置、服务器和计算机可读介质
CN111740806A (zh) 一种自适应变帧长的遥测数据组帧方法及系统
CN115002047A (zh) 一种远程直接数据存取方法、装置、设备以及存储介质
Bagaskara et al. Performance analysis of message broker for communication in fog computing
CN110478906A (zh) 投射物运行轨迹处理方法及装置
CN117370033A (zh) 云边协同资源优化方法、装置、电子设备和存储介质
CN107959967A (zh) 无线控制装置、无线装置和基站
WO2018228493A1 (zh) 一种数据实时处理及存储装置
CN113134828A (zh) 定位追踪系统、基于线性趋势预测的时延补偿方法
US11552899B2 (en) Automatic scaling for consumer servers in a data processing system
EP3349405B1 (en) Method and apparatus for generating user traffic
CN113300874B (zh) 网络性能检测系统及方法
CN110602211B (zh) 一种带异步通知的乱序rdma方法与装置
Gundall et al. Computation offloading at field level: Motivation and break-even point calculation

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
CP03 Change of name, title or address

Address after: 322000 2nd Floor, Building 14, Kechuang Garden, 968 Xuefeng West Road, Beiyuan Street, Yiwu City, Jinhua City, Zhejiang Province

Patentee after: Zhejiang Zhong Dao Robot Technology Co.,Ltd.

Address before: 230601 Haiheng Building 543 No. 6 Cuiwei Road, Hefei Economic and Technological Development Zone, Anhui Province

Patentee before: ZHONGDAO ROBOT TECHNOLOGY Co.,Ltd.

CP03 Change of name, title or address
TR01 Transfer of patent right

Effective date of registration: 20210202

Address after: 201700 block B, room 126, area C, building 6, No. 500, Huapu Road, Qingpu District, Shanghai

Patentee after: Shanghai Jidao robot Co.,Ltd.

Address before: 322000 2nd Floor, Building 14, Kechuang Garden, 968 Xuefeng West Road, Beiyuan Street, Yiwu City, Jinhua City, Zhejiang Province

Patentee before: Zhejiang Zhong Dao Robot Technology Co.,Ltd.

TR01 Transfer of patent right