CN116295417A - 机器人导航方法及装置 - Google Patents
机器人导航方法及装置 Download PDFInfo
- Publication number
- CN116295417A CN116295417A CN202310251742.0A CN202310251742A CN116295417A CN 116295417 A CN116295417 A CN 116295417A CN 202310251742 A CN202310251742 A CN 202310251742A CN 116295417 A CN116295417 A CN 116295417A
- Authority
- CN
- China
- Prior art keywords
- information
- robot
- shared
- robots
- help
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 230000004888 barrier function Effects 0.000 claims abstract description 4
- 238000004590 computer program Methods 0.000 claims description 20
- 230000001133 acceleration Effects 0.000 claims description 14
- 238000003860 storage Methods 0.000 claims description 9
- 238000004891 communication Methods 0.000 description 21
- 230000007246 mechanism Effects 0.000 description 11
- 230000008859 change Effects 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 238000013461 design Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000007613 environmental effect Effects 0.000 description 3
- 230000007423 decrease Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013016 damping Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/86—Combinations of lidar systems with systems other than lidar, radar or sonar, e.g. with direction finders
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/93—Lidar systems specially adapted for specific applications for anti-collision purposes
-
- 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)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Electromagnetism (AREA)
- Automation & Control Theory (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本公开涉及机器人技术领域,提供了机器人导航方法及装置。该方法包括:获取当前机器人感知的自身所处环境的第一环境信息;根据第一环境信息获取当前机器人的第一位置信息和自身所处环境的障碍物信息;获取其它机器人共享的共享状态信息,共享状态信息包括其它机器人的第二位置信息、姿态信息和第一结构轮廓信息;根据第一位置信息、障碍物信息、共享状态信息和预置的自身所处环境的地图信息生成当前机器人的第一运动规划路径。采用上述技术手段,可以避免机器人相遇时出现机器人对撞、剐蹭或堵车,更好地实现机器人避障和导航。
Description
技术领域
本公开涉及机器人技术领域,尤其涉及一种机器人导航方法及装置。
背景技术
相关技术中,机器人可以使用线激光雷达的距离数据和深度相机的距离数据,来感知周围环境中的障碍物,从而实现机器人的避障和导航。此外,也可以通过向其它机器人共享当前机器人识别到的环境障碍物距离数据,来帮助其它机器人识别到自身盲区范围内的障碍物的变化,从而调整机器人的行驶速度和/或行驶路线,实现更好的机器人避障效果。
为了减少线激光雷达的盲区范围,机器人在结构上会尽量减少线激光雷达安装平面上的自身结构遮挡面积,所以在使用线激光雷达的距离数据来感知周围环境中的障碍物时,当前机器人的激光雷达数据里,可能看不到其它机器人的真实轮廓,而机器人的真实轮廓面积,比线激光雷达安装平面的自身结构遮挡面积要大。这样的设计,会导致多台机器人相遇时,机器人对撞、剐蹭或堵车,出现导航错误。
如何在多台机器人相遇时更好地实现机器人避障和导航是当前亟需解决的技术问题。
发明内容
有鉴于此,本公开实施例提供了一种机器人导航方法、装置、电子设备和计算机可读的存储介质,以解决现有技术中多台机器人在相遇时导航错误的问题。
本公开实施例的第一方面,提供了一种机器人导航方法,包括:获取当前机器人感知的自身所处环境的第一环境信息;根据第一环境信息获取当前机器人的第一位置信息和自身所处环境的障碍物信息;获取其它机器人共享的共享状态信息,共享状态信息包括其它机器人的第二位置信息、姿态信息和第一结构轮廓信息;根据第一位置信息、障碍物信息、共享状态信息和预置的自身所处环境的地图信息生成当前机器人的第一运动规划路径。
本公开实施例的第二方面,提供了一种机器人导航装置,包括:环境信息获取模块,用于获取当前机器人感知的自身所处环境的第一环境信息;障碍物信息获取模块,用于根据第一环境信息获取当前机器人的第一位置信息和自身所处环境的障碍物信息;共享信息获取模块,用于获取其它机器人共享的共享状态信息,共享状态信息包括其它机器人的第二位置信息、姿态信息和第一结构轮廓信息;生成模块,用于根据第一位置信息、障碍物信息、共享状态信息和预置的自身所处环境的地图信息生成当前机器人的第一运动规划路径。
本公开实施例的第三方面,提供了一种电子设备,包括存储器、处理器以及存储在存储器中并且可在处理器上运行的计算机程序,该处理器执行计算机程序时实现上述方法的步骤。
本公开实施例的第四方面,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述方法的步骤。
本公开实施例与现有技术相比存在的有益效果是:通过其它机器人共享的第一结构轮廓信息以及位置、姿态等运动数据,结合当前机器人感知得到的障碍物信息进行当前机器人的运动路径规划,可以避免机器人相遇时出现机器人对撞、剐蹭或堵车,更好地实现机器人避障和导航。
附图说明
为了更清楚地说明本公开实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本公开实施例的应用场景的场景示意图;
图2是本公开实施例提供的一种机器人导航方法的流程示意图;
图3是本公开实施例提供的一种机器人导航装置的结构示意图;
图4是本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本公开实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本公开。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本公开的描述。
下面将结合附图详细说明根据本公开实施例的一种机器人导航方法和装置。
图1是本公开实施例的应用场景的场景示意图。该应用场景可以包括终端设备101、102和103、服务器104以及网络105。
终端设备101、102和103可以是硬件,也可以是软件。当终端设备101、102和103为硬件时,其可以是具有显示屏且支持与服务器104通信的各种电子设备,包括但不限于智能手机、机器人、膝上型便携计算机和台式计算机等(比如102可以为机器人);当终端设备101、102和103为软件时,其可以安装在如上的电子设备中。终端设备101、102和103可以实现为多个软件或软件模块,也可以实现为单个软件或软件模块,本公开实施例对此不作限制。进一步地,终端设备101、102和103上可以安装有各种应用,例如数据处理应用、即时通信工具、社交平台软件、搜索类应用、购物类应用等。
服务器104可以是提供各种服务的服务器,例如,对与其建立通信连接的终端设备发送的请求进行接收的后台服务器,该后台服务器可以对终端设备发送的请求进行接收和分析等处理,并生成处理结果。服务器104可以是一台服务器,也可以是由若干台服务器组成的服务器集群,或者还可以是一个云计算服务中心,本公开实施例对此不作限制。
需要说明的是,服务器104可以是硬件,也可以是软件。当服务器104为硬件时,其可以是为终端设备101、102和103提供各种服务的各种电子设备。当服务器104为软件时,其可以是为终端设备101、102和103提供各种服务的多个软件或软件模块,也可以是为终端设备101、102和103提供各种服务的单个软件或软件模块,本公开实施例对此不作限制。
网络105可以是采用同轴电缆、双绞线和光纤连接的有线网络,也可以是无需布线就能实现各种通信设备互联的无线网络,例如,蓝牙(Bluetooth)、近场通信(Near FieldCommunication,NFC)、红外(Infrared)等,本公开实施例对此不作限制。
目标用户可以通过终端设备101、102和103经由网络105与服务器104建立通信连接,以接收或发送信息等。需要说明的是,终端设备101、102和103、服务器104以及网络105的具体类型、数量和组合可以根据应用场景的实际需求进行调整,本公开实施例对此不作限制。
图2是本公开实施例提供的一种机器人导航方法的流程示意图。图2的机器人导航方法可以由图1的终端设备或服务器执行。该方法应用于同一站点内的相互通信的多台机器人,如图2所示,该机器人导航方法包括:
步骤S201,获取当前机器人感知的自身所处环境的第一环境信息。
具体地,当前机器人可以使用线激光雷达和深度相机中的一种或者两种设备实时扫描周围环境,以对比提前扫描好的机器人服务地点地图进行位置和障碍物信息判断,为机器人安全移动做准备。其中,机器人服务地点地图可以在部署机器人时,提前使用线激光雷达对机器人服务地点进行扫描得到。在机器人正式投入使用后,获取保存的机器人服务地点地图,结合当前机器人扫描得到的即时环境信息即可以识别出机器人当前位置,帮助机器人动态识别障碍物。
步骤S202,根据第一环境信息获取当前机器人的第一位置信息和自身所处环境的障碍物信息。
具体地,根据线激光雷达和深度相机实时扫描周围环境得到的环境信息,可以获知当前机器人在所处环境中的位置以及所处环境中的障碍物的信息。其中,根据线激光雷达的测量数据可以得到当前机器人距离各种障碍物的距离,根据深度相机拍摄的深度图像可以得到当前机器人距离各种障碍物的距离以及各种障碍物的外部轮廓。第一位置信息包括当前机器人在机器人服务地点地图中的位置。
步骤S203,获取其它机器人共享的共享状态信息,共享状态信息包括其它机器人的第二位置信息、姿态信息和第一结构轮廓信息。
具体地,其它机器人可以采用蓝牙,WiFi_mesh(无线网格网络),WLAN(WirelessLocal Area Network,无线局域网),NFC(Near Field Communication,近场通信),RFID(Radio Frequency Identification,射频识别),Zigbee(紫蜂),Lora(Long Range Radio,远距离无线电),红外通信,UWB(Ultra Wide Band,超宽带),4G(4-generation mobiletelephone system,第四代移动电话系统)移动网络等无线通信技术中的一种或多种的进行状态信息共享,还可以通过卫星通信方式进行状态信息共享。通过无线通信技术,机器人可以将自身信息广播出去,其它机器人可以在同一无线频段和一定距离范围内接收到该机器人发出的信息,从而实现多台机器人在一定范围内共享自身的状态信息。其中,第二位置信息包括共享状态信息对应的机器人在机器人服务地点地图中的位置。姿态信息包括共享状态信息对应的机器人的朝向和运动方向。第一结构轮廓信息包括共享状态信息对应的机器人的轮廓的形状和大小。
步骤S204,根据第一位置信息、障碍物信息、共享状态信息和预置的自身所处环境的地图信息生成当前机器人的第一运动规划路径。
具体地,根据当前机器人的第一位置信息、障碍物信息以及其它机器人的第二位置信息、姿态信息和第一结构轮廓信息,结合保存的地图信息即机器人服务地点地图,可以为当前机器人规划运动路径,得到第一运动规划路径。
采用本公开实施例中的技术方案,可以提高同一场地中多台机器人的行走效率,降低多台机器人对撞、剐蹭或堵车的发生概率。实现在多台机器人场景下机器人间的安全回车和高效率回车。
本公开实施例可以应用于工业、服务业等使用机器人进行生产或者提供服务的场景,该场景中有多台机器人在同一机器人服务地点运行。图1的终端设备或服务器可以为远程终端设备或者远程服务器,其可以包括或者连接可以与机器人远程通信的通信模块。
在本公开实施例中,机器人之间还可以共享路径规划信息,生成当前机器人的第一运动规划路径之后,还可以获取其它机器人共享的共享路径规划信息,并根据共享路径规划信息和障碍物信息调整第一运动规划路径,得到第二运动规划路径。
具体地,增加共享机器人路径规划信息,可以使得当前机器人直接将其它机器人的行走路径融合到机器人自身实时扫描的障碍物地图和机器人自身的路径规划中,进一步提高同一场地的多台机器人行走效率,进一步降低多机器人对撞、剐蹭或堵车的发生概率。
在本公开实施例中,机器人之间还可以共享速度信息和加速度信息,生成当前机器人的第一运动规划路径之后,还可以获取其它机器人共享的共享速度信息和共享加速度信息,并根据共享速度信息和共享加速度信息生成第一碰撞风险数据,以根据第一碰撞风险数据对当前机器人进行运动避险。
具体地,机器人的速度和加速度会影响机器人的减速距离,增加共享机器人的速度和加速度信息,可以预判多台机器人在相遇时的刹车距离,对碰撞风险做出预判,更好地规避碰撞/剐蹭,减轻碰撞/剐蹭。
在本公开实施例中,机器人之间还可以共享载荷状态信息,生成当前机器人的第一运动规划路径之后,还可以获取其它机器人共享的共享载荷状态信息,并根据共享载荷状态信息生成第二碰撞风险数据,以根据第二碰撞风险数据对当前机器人进行运动避险,其中,共享载荷状态信息包括其它机器人是否空载,以及其它机器人非空载时的载荷数据。
具体地,机器人是否空载和载荷量信息会影响机器人与路面的路面摩擦力状况、减速距离以及行走能力,增加共享机器人是否空载和载荷量信息,空载机器人可以更主动地避让有载荷的机器人,因为有载荷的机器人减速距离更大,加减速更加耗能,融合该信息后,也能更精确地计算附近机器人的减速距离和碰撞概率,对碰撞风险做出预判,更好地规避碰撞或减轻碰撞,从而更加节能环保。
在本公开实施例中,机器人之间还可以共享告警信息,生成当前机器人的第一运动规划路径之后,还可以获取其它机器人共享的共享告警信息,并根据共享告警信息调整第一运动规划路径,得到第三运动规划路径,其中,共享告警信息至少包括路面打滑位置告警信息、网络质量差位置告警信息、机器人减速告警信息、机器人电量低告警信息以及机器人当前任务状态告警信息中的任一种。
具体地,在机器人运行过程中,可能出现很多突发情况,将这些突发情况共享,可以通知其它机器人进行避险。这些突发情况包括:路面打滑,网络状态不佳,机器人自身减速以及机器人电量下降到设定的阈值。其中,机器人网络状态不佳可以为机器人是否联网以及信号质量等方面的问题,机器人自身减速可能增加碰撞机会,机器人电量减少会影响机器人的行走能力。此外还可以针对机器人当前执行的任务的状态信息进行告警,该机器人当前任务状态信息包括任务进行中状态、回程途中状态、目的地等信息。
进一步地,如果机器人行走到某个位置发生打滑,可以通过消息共享机制对外发出“打滑告警”消息,附近其它机器人收到该消息后,会在该位置附近改变路径规划或调整电机参数或调整减震参数,避免打滑发生。
如果机器人行走到某个位置,监测到网络质量很差,无法连接到互联网,可以通过消息共享机制对外发出“网络质量差位置告警”消息,其它机器人收到该消息后,会在该位置改变路径规划,避免发生断网,影响到任务的正常执行。
如果机器人综合自身实时扫描的障碍物地图和其它机器人共享的信息,预判到有极大概率发生碰撞事件,可以通过消息共享机制对外发出“减速告警”,自身减速的同时,也通知其它机器人减速,从而尽最大能力避免碰撞发生。
如果机器人当前电量低,可以通过消息共享机制对外发出“电量低告警”消息,其它机器人收到该消息后,会主动地更大范围地绕行,使得电量低的机器人可以减少行驶距离,节省电量。
机器人行走过程中,还可以通过消息共享机制,持续对外发出“当前机器人任务状态”消息,该消息里可以携带任务优先级,执行低优先级任务的机器人,在路径规划时,要主动避让执行高优先级任务的机器人,使得高优先级任务能够被优先和及时完成。
在本公开实施例中,机器人在可以在迷路时发送求助信息,其它机器人可以在接收到求助信息后,根据感知的环境信息确定迷路机器人的位置信息并发送给该迷路机器人,以帮助迷路机器人进行自身定位。进一步地,其它机器人也可以确定迷路机器人的姿态信息、磁力计信息和全球卫星系统定位信息,并发送给该迷路机器人。
假设当前机器人接收到迷路的第一求助机器人发送的第一共享求助信息,在本公开实施例中,在获取第一求助机器人共享的第一共享求助信息后,可以获取当前机器人感知的自身所处环境的第二环境信息,并根据第二环境信息获取第一求助机器人的第一位置信息并发送给第一求助机器人,以帮助第一求助机器人进行自身定位。
具体地,机器人在迷路时,通过自身传感器信息无法校正地图,则可以通过消息共享机制对外发出求助信息,该求助信息可以包含机器人自身的结构设计轮廓。附近的机器人在接收到该求助信息后,可以结合自身实时扫描到的线激光雷达的距离数据和深度相机的距离数据,对比迷路机器人发来的结构设计轮廓,确定迷路机器人的位置坐标,并将该位置坐标发给迷路机器人,迷路机器人可以使用该位置坐标重置自己的位置。
在本公开另一个实施例中,机器人在可以在迷路时发送求助信息,其它机器人可以在接收到求助信息后,可以根据近距离定位技术确定迷路机器人的位置信息并发送给该迷路机器人,以帮助迷路机器人进行自身定位。
假设当前机器人接收到迷路的第二求助机器人发送的第二共享求助信息,在本公开实施例中,在获取第二求助机器人共享的第二共享求助信息后,可以获取当前机器人对自身环境进行拍摄得到的视频数据,并根据视频数据中第二求助机器人的灯光闪烁记录、类型信息和描述信息确定第二求助机器人的当前位置,之后,将第二求助机器人的当前位置的第二位置信息并发送给第二求助机器人,以帮助第二求助机器人进行自身定位。其中,第二共享求助信息包括第二求助机器人的类型信息以及第二求助机器人的灯光闪烁规律的描述信息。
具体地,第二求助机器人的类型信息可以包括第二求助机器人的型号和唯一标识符。此外,还可以结合视频数据中的时间戳信息确定第二求助机器人的当前位置。机器人在迷路时,通过自身传感器信息无法校正地图,则可以通过消息共享机制对外发出求助信息。附近的机器人在接收到该求助信息后,可以通过近距离精确定位技术和迷路机器人进行通信,即可确定迷路机器人的精确位置坐标,将该位置坐标发给迷路机器人,迷路机器人可以使用该位置坐标重置自己的位置。
在本公开另一个实施例中,机器人在可以在迷路时发送求助信息,其它机器人可以在接收到求助信息后,根据彩色相机和机器人灯带确定迷路机器人的位置信息并发送给该迷路机器人,以帮助迷路机器人进行自身定位。
如果机器人迷路,通过自身传感器信息无法矫正地图,可以通过消息共享机制对外发出求助信息,同时,迷路机器人可以以特定规律持续变化自身灯带的颜色。该求助信息中包含机器人的类型信息和当前迷路机器人的灯带颜色变化规律的描述信息。附近的机器人收到该求助消息后,使用迷路机器人的类型信息,查询到迷路机器人的外观图片,同时使用彩色相机对周围环境进行拍摄,机器人自转通过多个角度拍照,每个角度按特定规律拍摄多张照片。如果在某个角度拍摄的多张照片里,匹配到了迷路机器人的外观图片,并且该机器人的灯带颜色变化规律和求助信息里发来的灯带颜色变化规律一致,可以判断该机器人就是发来求助消息的迷路机器人,此时,通过特定图像算法,计算出照片里迷路机器人到当前机器人的距离和迷路机器人的朝向,由此确定迷路机器人的大概位置坐标,将该位置坐标发给迷路机器人,迷路机器人可以使用该位置坐标重置自己的位置。
在本公开实施例的技术方案中,借助蓝牙通信等无线通信技术,工作在同一站点内的相互通信的多台机器人,可以持续向外发送自身的位置信息、姿态信息、结构轮廓信息和路径规划信息,正在行走的当前机器人收到其它机器人共享的信息,可以将该信息融合到自身实时扫描到的障碍物地图中,相比单纯使用线激光雷达和深度相机的情况,当前机器人可以更大概率避开其它机器人行走,更大概率避免碰撞的发生,更早地做出规避其它机器人的路径规划,从而实现机器人运行过程中的及时避障和安全导航。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
根据本公开实施例的机器人导航方法,通过其它机器人共享的第一结构轮廓信息以及位置、姿态等运动数据,结合当前机器人感知得到的障碍物信息进行当前机器人的运动路径规划,可以避免机器人相遇时出现机器人对撞、剐蹭或堵车,更好地实现机器人避障和导航。
下述为本公开装置实施例,可以用于执行本公开方法实施例。下文描述的机器人导航装置与上文描述的机器人导航方法可相互对应参照。对于本公开装置实施例中未披露的细节,请参照本公开方法实施例。
图3是本公开实施例提供的一种机器人导航装置的示意图。如图3所示,该机器人导航装置包括:
环境信息获取模块301,用于获取当前机器人感知的自身所处环境的第一环境信息。
具体地,当前机器人可以使用线激光雷达和深度相机中的一种或者两种设备实时扫描周围环境,以对比提前扫描好的机器人服务地点地图进行位置和障碍物信息判断,为机器人安全移动做准备。其中,机器人服务地点地图可以在部署机器人时,提前使用线激光雷达对机器人服务地点进行扫描得到。在机器人正式投入使用后,获取保存的机器人服务地点地图,结合当前机器人扫描得到的即时环境信息即可以识别出机器人当前位置,帮助机器人动态识别障碍物。
障碍物信息获取模块302,用于根据第一环境信息获取当前机器人的第一位置信息和自身所处环境的障碍物信息。
具体地,根据线激光雷达和深度相机实时扫描周围环境得到的环境信息,可以获知当前机器人在所处环境中的位置以及所处环境中的障碍物的信息。其中,根据线激光雷达的测量数据可以得到当前机器人距离各种障碍物的距离,根据深度相机拍摄的深度图像可以得到当前机器人距离各种障碍物的距离以及各种障碍物的外部轮廓。第一位置信息包括当前机器人在机器人服务地点地图中的位置。
共享信息获取模块303,用于获取其它机器人共享的共享状态信息,共享状态信息包括其它机器人的第二位置信息、姿态信息和第一结构轮廓信息。
具体地,其它机器人可以采用无线通信技术中进行状态信息共享,还可以通过卫星通信方式进行状态信息共享。通过无线通信技术,机器人可以将自身信息广播出去,其它机器人可以在同一无线频段和一定距离范围内接收到该机器人发出的信息,从而实现多台机器人在一定范围内共享自身的状态信息。其中,第二位置信息包括共享状态信息对应的机器人在机器人服务地点地图中的位置。姿态信息包括共享状态信息对应的机器人的朝向和运动方向。第一结构轮廓信息包括共享状态信息对应的机器人的轮廓的形状和大小。
生成模块304,用于根据第一位置信息、障碍物信息、共享状态信息和预置的自身所处环境的地图信息生成当前机器人的第一运动规划路径。
具体地,根据当前机器人的第一位置信息、障碍物信息以及其它机器人的第二位置信息、姿态信息和第一结构轮廓信息,结合保存的地图信息即机器人服务地点地图,可以为当前机器人规划运动路径,得到第一运动规划路径。
采用本公开实施例中的技术方案,可以提高同一场地中多台机器人的行走效率,降低多台机器人对撞、剐蹭或堵车的发生概率。实现在多台机器人场景下机器人间的安全回车和高效率回车。
在本公开实施例中,机器人之间还可以共享路径规划信息,生成当前机器人的第一运动规划路径之后,共享信息获取模块还可以获取其它机器人共享的共享路径规划信息,生成模块可以根据共享路径规划信息和障碍物信息调整第一运动规划路径,得到第二运动规划路径。
具体地,增加共享机器人路径规划信息,可以使得当前机器人直接将其它机器人的行走路径融合到机器人自身实时扫描的障碍物地图和机器人自身的路径规划中,进一步提高同一场地的多台机器人行走效率,进一步降低多机器人对撞、剐蹭或堵车的发生概率。
在本公开实施例中,机器人之间还可以共享速度信息和加速度信息,生成当前机器人的第一运动规划路径之后,共享信息获取模块还可以获取其它机器人共享的共享速度信息和共享加速度信息,生成模块可以根据共享速度信息和共享加速度信息生成第一碰撞风险数据,以根据第一碰撞风险数据对当前机器人进行运动避险。
具体地,机器人的速度和加速度会影响机器人的减速距离,增加共享机器人的速度和加速度信息,可以预判多台机器人在相遇时的刹车距离,对碰撞风险做出预判,更好地规避碰撞/剐蹭,减轻碰撞/剐蹭。
在本公开实施例中,机器人之间还可以共享载荷状态信息,生成当前机器人的第一运动规划路径之后,共享信息获取模块还可以获取其它机器人共享的共享载荷状态信息,生成模块可以根据共享载荷状态信息生成第二碰撞风险数据,以根据第二碰撞风险数据对当前机器人进行运动避险,其中,共享载荷状态信息包括其它机器人是否空载,以及其它机器人非空载时的载荷数据。
具体地,机器人是否空载和载荷量信息会影响机器人与路面的路面摩擦力状况、减速距离以及行走能力,增加共享机器人是否空载和载荷量信息,空载机器人可以更主动地避让有载荷的机器人,因为有载荷的机器人减速距离更大,加减速更加耗能,融合该信息后,也能更精确地计算附近机器人的减速距离和碰撞概率,对碰撞风险做出预判,更好地规避碰撞或减轻碰撞,从而更加节能环保。
在本公开实施例中,机器人之间还可以共享告警信息,生成当前机器人的第一运动规划路径之后,共享信息获取模块还可以获取其它机器人共享的共享告警信息,生成模块可以根据共享告警信息调整第一运动规划路径,得到第三运动规划路径,其中,共享告警信息至少包括路面打滑位置告警信息、网络质量差位置告警信息、机器人减速告警信息、机器人电量低告警信息以及机器人当前任务状态告警信息中的任一种。
具体地,在机器人运行过程中,可能出现很多突发情况,将这些突发情况共享,可以通知其它机器人进行避险。这些突发情况包括:路面打滑,网络状态不佳,机器人自身减速以及机器人电量下降到设定的阈值。其中,机器人网络状态不佳可以为机器人是否联网以及信号质量等方面的问题,机器人自身减速可能增加碰撞机会,机器人电量减少会影响机器人的行走能力。此外还可以针对机器人当前执行的任务的状态信息进行告警,该机器人当前任务状态信息包括任务进行中状态、回程途中状态、目的地等信息。
在本公开实施例中,机器人在可以在迷路时发送求助信息,其它机器人可以在接收到求助信息后,根据感知的环境信息确定迷路机器人的位置信息并发送给该迷路机器人,以帮助迷路机器人进行自身定位。进一步地,其它机器人也可以确定迷路机器人的姿态信息、磁力计信息和全球卫星系统定位信息,并发送给该迷路机器人。
假设当前机器人接收到迷路的第一求助机器人发送的第一共享求助信息,在本公开实施例中,在获取第一求助机器人共享的第一共享求助信息后,共享信息获取模块还可以获取当前机器人感知的自身所处环境的第二环境信息,生成模块可以根据第二环境信息获取第一求助机器人的第一位置信息并发送给第一求助机器人,以帮助第一求助机器人进行自身定位。
具体地,机器人在迷路时,通过自身传感器信息无法校正地图,则可以通过消息共享机制对外发出求助信息,该求助信息可以包含机器人自身的结构设计轮廓。附近的机器人在接收到该求助信息后,可以结合自身实时扫描到的线激光雷达的距离数据和深度相机的距离数据,对比迷路机器人发来的结构设计轮廓,确定迷路机器人的位置坐标,并将该位置坐标发给迷路机器人,迷路机器人可以使用该位置坐标重置自己的位置。
在本公开另一个实施例中,机器人在可以在迷路时发送求助信息,其它机器人可以在接收到求助信息后,可以根据近距离定位技术确定迷路机器人的位置信息并发送给该迷路机器人,以帮助迷路机器人进行自身定位。
假设当前机器人接收到迷路的第二求助机器人发送的第二共享求助信息,在本公开实施例中,在获取第二求助机器人共享的第二共享求助信息后,共享信息获取模块还可以获取当前机器人对自身环境进行拍摄得到的视频数据,生成模块可以根据视频数据中第二求助机器人的灯光闪烁记录、类型信息和描述信息确定第二求助机器人的当前位置,之后,生成模块可以将第二求助机器人的当前位置的第二位置信息并发送给第二求助机器人,以帮助第二求助机器人进行自身定位。其中,第二共享求助信息包括第二求助机器人的类型信息以及第二求助机器人的灯光闪烁规律的描述信息。
具体地,第二求助机器人的类型信息可以包括第二求助机器人的型号和唯一标识符。此外,还可以结合视频数据中的时间戳信息确定第二求助机器人的当前位置。机器人在迷路时,通过自身传感器信息无法校正地图,则可以通过消息共享机制对外发出求助信息。附近的机器人在接收到该求助信息后,可以通过近距离精确定位技术和迷路机器人进行通信,即可确定迷路机器人的精确位置坐标,将该位置坐标发给迷路机器人,迷路机器人可以使用该位置坐标重置自己的位置。
在本公开另一个实施例中,机器人在可以在迷路时发送求助信息,其它机器人可以在接收到求助信息后,根据彩色相机和机器人灯带确定迷路机器人的位置信息并发送给该迷路机器人,以帮助迷路机器人进行自身定位。
如果机器人迷路,通过自身传感器信息无法矫正地图,可以通过消息共享机制对外发出求助信息,同时,迷路机器人可以以特定规律持续变化自身灯带的颜色。该求助信息中包含机器人的类型信息和当前迷路机器人的灯带颜色变化规律的描述信息。附近的机器人收到该求助消息后,使用迷路机器人的类型信息,查询到迷路机器人的外观图片,同时使用彩色相机对周围环境进行拍摄,机器人自转通过多个角度拍照,每个角度按特定规律拍摄多张照片。如果在某个角度拍摄的多张照片里,匹配到了迷路机器人的外观图片,并且该机器人的灯带颜色变化规律和求助信息里发来的灯带颜色变化规律一致,可以判断该机器人就是发来求助消息的迷路机器人,此时,通过特定图像算法,计算出照片里迷路机器人到当前机器人的距离和迷路机器人的朝向,由此确定迷路机器人的大概位置坐标,将该位置坐标发给迷路机器人,迷路机器人可以使用该位置坐标重置自己的位置。
在本公开实施例的技术方案中,借助蓝牙通信等无线通信技术,工作在同一站点内的相互通信的多台机器人,可以持续向外发送自身的位置信息、姿态信息、结构轮廓信息和路径规划信息,正在行走的当前机器人收到其它机器人共享的信息,可以将该信息融合到自身实时扫描到的障碍物地图中,相比单纯使用线激光雷达和深度相机的情况,当前机器人可以更大概率避开其它机器人行走,更大概率避免碰撞的发生,更早地做出规避其它机器人的路径规划,从而实现机器人运行过程中的及时避障和安全导航。
由于本公开的示例实施例的机器人导航装置的各个功能模块与上述机器人导航方法的示例实施例的步骤对应,因此对于本公开装置实施例中未披露的细节,请参照本公开上述的机器人导航方法的实施例。
根据本公开实施例的机器人导航装置,通过其它机器人共享的第一结构轮廓信息以及位置、姿态等运动数据,结合当前机器人感知得到的障碍物信息进行当前机器人的运动路径规划,可以避免机器人相遇时出现机器人对撞、剐蹭或堵车,更好地实现机器人避障和导航。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本公开实施例的实施过程构成任何限定。
图4是本公开实施例提供的电子设备400的示意图。如图4所示,该实施例的电子设备400包括:处理器401、存储器402以及存储在该存储器402中并且可在处理器401上运行的计算机程序403。处理器401执行计算机程序403时实现上述各个方法实施例中的步骤。或者,处理器401执行计算机程序403时实现上述各装置实施例中各模块/单元的功能。
示例性地,计算机程序403可以被分割成一个或多个模块/单元,一个或多个模块/单元被存储在存储器402中,并由处理器401执行,以完成本公开。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序403在电子设备400中的执行过程。
电子设备400可以是桌上型计算机、笔记本、掌上电脑及云端服务器等电子设备。电子设备400可以包括但不仅限于处理器401和存储器402。本领域技术人员可以理解,图4仅仅是电子设备400的示例,并不构成对电子设备400的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如,电子设备还可以包括输入输出设备、网络接入设备、总线等。
处理器401可以是中央处理单元(Central Processing Unit,CPU),也可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器402可以是电子设备400的内部存储单元,例如,电子设备400的硬盘或内存。存储器402也可以是电子设备400的外部存储设备,例如,电子设备4上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器402还可以既包括电子设备400的内部存储单元也包括外部存储设备。存储器402用于存储计算机程序以及电子设备所需的其它程序和数据。存储器402还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本公开的范围。
在本公开所提供的实施例中,应该理解到,所揭露的装置/电子设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/电子设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本公开实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,计算机程序可以存储在计算机可读存储介质中,该计算机程序在被处理器执行时,可以实现上述各个方法实施例的步骤。计算机程序可以包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如,在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的精神和范围,均应包含在本公开的保护范围之内。
Claims (10)
1.一种机器人导航方法,其特征在于,所述方法包括:
获取当前机器人感知的自身所处环境的第一环境信息;
根据所述第一环境信息获取所述当前机器人的第一位置信息和所述自身所处环境的障碍物信息;
获取其它机器人共享的共享状态信息,所述共享状态信息包括所述其它机器人的第二位置信息、姿态信息和第一结构轮廓信息;
根据所述第一位置信息、所述障碍物信息、所述共享状态信息和预置的所述自身所处环境的地图信息生成所述当前机器人的第一运动规划路径。
2.根据权利要求1所述的方法,其特征在于,生成所述当前机器人的第一运动规划路径之后,所述方法还包括:
获取所述其它机器人共享的共享路径规划信息;
根据所述共享路径规划信息和所述障碍物信息调整所述第一运动规划路径,得到第二运动规划路径。
3.根据权利要求1所述的方法,其特征在于,生成所述当前机器人的第一运动规划路径之后,所述方法还包括:
获取所述其它机器人共享的共享速度信息和共享加速度信息;
根据所述共享速度信息和所述共享加速度信息生成第一碰撞风险数据,以根据所述第一碰撞风险数据对所述当前机器人进行运动避险。
4.根据权利要求1所述的方法,其特征在于,生成所述当前机器人的第一运动规划路径之后,所述方法还包括:
获取所述其它机器人共享的共享载荷状态信息,所述共享载荷状态信息包括所述其它机器人是否空载,以及所述其它机器人非空载时的载荷数据;
根据所述共享载荷状态信息生成第二碰撞风险数据,以根据所述第二碰撞风险数据对所述当前机器人进行运动避险。
5.根据权利要求1所述的方法,其特征在于,生成所述当前机器人的第一运动规划路径之后,所述方法还包括:
获取所述其它机器人共享的共享告警信息,所述共享告警信息至少包括路面打滑位置告警信息、网络质量差位置告警信息、机器人减速告警信息、机器人电量低告警信息以及机器人当前任务状态告警信息中的任一种;
根据所述共享告警信息调整所述第一运动规划路径,得到第三运动规划路径。
6.根据权利要求1所述的方法,其特征在于,生成所述当前机器人的第一运动规划路径之后,所述方法还包括:
在获取第一求助机器人共享的第一共享求助信息后,获取当前机器人感知的自身所处环境的第二环境信息;
根据所述第二环境信息获取所述第一求助机器人的第一位置信息并发送给所述第一求助机器人,以帮助所述第一求助机器人进行自身定位。
7.根据权利要求1所述的方法,其特征在于,生成所述当前机器人的第一运动规划路径之后,所述方法还包括:
在获取第二求助机器人共享的第二共享求助信息后,获取所述当前机器人对自身所处环境进行拍摄得到的视频数据,其中,所述第二共享求助信息包括所述第二求助机器人的类型信息以及所述第二求助机器人的灯光闪烁规律的描述信息;
根据所述视频数据中所述第二求助机器人的灯光闪烁记录、所述类型信息和所述描述信息确定所述第二求助机器人的当前位置;
将所述第二求助机器人的当前位置的第二位置信息并发送给所述第二求助机器人,以帮助所述第二求助机器人进行自身定位。
8.一种机器人导航装置,其特征在于,包括:
环境信息获取模块,用于获取当前机器人感知的自身所处环境的第一环境信息;
障碍物信息获取模块,用于根据所述第一环境信息获取所述当前机器人的第一位置信息和所述自身所处环境的障碍物信息;
共享信息获取模块,用于获取其它机器人共享的共享状态信息,所述共享状态信息包括所述其它机器人的第二位置信息、姿态信息和第一结构轮廓信息;
生成模块,用于根据所述第一位置信息、所述障碍物信息、所述共享状态信息和预置的所述自身所处环境的地图信息生成所述当前机器人的第一运动规划路径。
9.一种电子设备,包括存储器、处理器以及存储在所述存储器中并且可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310251742.0A CN116295417A (zh) | 2023-03-15 | 2023-03-15 | 机器人导航方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310251742.0A CN116295417A (zh) | 2023-03-15 | 2023-03-15 | 机器人导航方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116295417A true CN116295417A (zh) | 2023-06-23 |
Family
ID=86786543
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310251742.0A Withdrawn CN116295417A (zh) | 2023-03-15 | 2023-03-15 | 机器人导航方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116295417A (zh) |
-
2023
- 2023-03-15 CN CN202310251742.0A patent/CN116295417A/zh not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11197042B2 (en) | Distributed 3D video for navigation | |
US11574262B2 (en) | Location accuracy using local device communications | |
CN108399792B (zh) | 一种无人驾驶车辆避让方法、装置和电子设备 | |
CN110164135B (zh) | 一种定位方法、定位装置及定位系统 | |
CN109817022B (zh) | 一种获取目标对象位置的方法、终端、汽车及系统 | |
US11269327B2 (en) | Picking up and dropping off passengers at an airport using an autonomous vehicle | |
US20170250561A1 (en) | System and Method for Wireless Charging | |
KR20120118478A (ko) | 교통 신호 맵핑 및 검출 | |
KR20190023055A (ko) | 클라우드 기반 비전 | |
US11645913B2 (en) | System and method for location data fusion and filtering | |
US20190320294A1 (en) | Location information processing method and apparatus, storage medium and processor | |
CN111474947A (zh) | 机器人避障的方法、装置及系统 | |
US11797024B2 (en) | Methods and systems for configuring vehicle communications | |
CN112116655A (zh) | 目标对象的图像的位置信息确定方法和装置 | |
US11743677B2 (en) | Apparatus and method for providing service related to target location based on UWB | |
US11210957B2 (en) | Systems and methods for generating views of unmanned aerial vehicles | |
CN113091737A (zh) | 一种车路协同定位方法、装置、自动驾驶车辆及路侧设备 | |
CN111107487B (zh) | 位置显示控制方法及相关装置 | |
CN116295417A (zh) | 机器人导航方法及装置 | |
US11820488B2 (en) | Image capturing method | |
WO2021168841A1 (zh) | 定位方法及装置 | |
WO2019008755A1 (ja) | 情報処理システム及びそれに用いる情報処理システムインフラ及び情報処理方法 | |
CN111897348A (zh) | 云端机器人的控制方法及系统、云端机器人、云端服务器 | |
KR102642266B1 (ko) | 자율이동체의 정보 공유 방법 및 그 서버 | |
KR102460949B1 (ko) | 자율이동체의 정보 공유 및 제어 방법 및 그 시스템 |
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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20230623 |
|
WW01 | Invention patent application withdrawn after publication |