机器人扫图和雷达点云地图坐标转换和实时显示方案制造技术

技术编号:37705389 阅读:12 留言:0更新日期:2023-06-01 23:53
本发明专利技术公开了机器人扫图和雷达点云地图坐标转换和实时显示方案,属于web前端机器人领域,使用web前端技术在页面上,即机器人本机屏幕、安卓、ios、小程序、pc等平台,展示机器人实时扫图状态的技术,扫图状态包含目前已扫区域,机器人实时位置、机器人实时方向、机器人实时速度、机器人扫描的激光雷达点云信息等。展示刷新的频率默认为每秒一次,根据展示平台的性能可以最高提升至10Hz的刷新频率。本发明专利技术有利于机器扫图过程中实时观察机器人扫图状态、定位进准度情况、扫图速度是否过快等关键性情况,便于人机交互的顺利进行。便于人机交互的顺利进行。便于人机交互的顺利进行。

【技术实现步骤摘要】
机器人扫图和雷达点云地图坐标转换和实时显示方案


[0001]本专利技术涉及web前端机器人领域,尤其涉及机器人扫图和雷达点云地图坐标转换和实时显示方案。

技术介绍

[0002]机器人ros平台自带了当前机器人所在地图的ros2djs方案,可以提供机器人当前所在地图的map坐标系的实时展示功能,源码其中自带了ros传递的二位数组(pgm格式)转化为jpg格式并且在页面上展示的功能。现有技术存在的问题:
[0003]1.只能展示机器人当前地图,必须通过配置实现在机器人扫图过程中实时进行地图的变化,而且变化频率无法通过配置修改,默认变化频率过高导致性能较低的设备无法支持。2.地图展示需要通过pgm转jpg的遍历转换,非常消耗运算量,在性能一般的机器上延时很严重。3.只能固定大小展示地图,无法按照扫图实际大小进行变换。4.地图在map坐标系左下角默认必须是(0,0)坐标,但是扫图过程中实际原点是机器人一开始扫图的位置,会导致用此方法地图中只能展示第一象限内的部分,而处于其他象限内的地图无法展示的情况。5.地图中不包含任何其他元素,比如机器人实时位置和激光雷达点云等等信息,也无法给客户提示当前推图速度过快的警告信息等。

技术实现思路

[0004]本专利技术的目的在于针对上述现有技术的不足,提供了一种机器人扫图和雷达点云地图坐标转换和实时展示。
[0005]本专利技术为解决上述技术问题采用以下技术方案:
[0006]机器人扫图和雷达点云地图坐标转换和实时显示方案,包括以下步骤:
[0007]步骤S1.机器人扫图中,将获取的地图pgm文件格式的图片转化为jpg图片
[0008]步骤S2.前端接收到jpg图片并根据屏幕宽高展示
[0009]步骤S3.机器人持续扫图中,不断通过rostopic推送机器人实时位置、方向、点云等信息到前端
[0010]步骤S4.前端处理机器人实时位置和点云信息,从map坐标系下点坐标转化为像素坐标
[0011]步骤S5.机器人方向对四元数转化为欧拉角处理
[0012]步骤S6.根据处理过的数据实时展示机器人扫图信息情况
[0013]步骤S7.监听机器人前进速度和轮子转速,超过一定阈值界面提示告警消息
[0014]进一步地,S1具体如下:
[0015]步骤S11,使用python基础库中的图片转jpg格式输出的方案,输出jpg图片流(base64);
[0016]步骤S12,定义一个新的topic,用于实现ros底层传递jpg图的base64字符串直达前端;
[0017]步骤S13,将步骤S2中的base64渲染入canvas中,实现机器人当前地图的实时展示功能;
[0018]步骤S14,根据通过ros提供的配置项控制发送和接收topic的频率,用来实现地图数据刷新率。
[0019]进一步地,还包括地图回传以后,通过地图图片的长宽进行等比缩放适应屏幕展示,并居中。
[0020]进一步地,还包括地图中的点位在前端采用map坐标系

地图像素坐标系转换工作,将实际的机器物理位置坐标转换为以图片像素为基准的坐标。
[0021]进一步地,还包括激光雷达点云使用的是以机器人当前位置为中心点的坐标系,具体如下:
[0022]先转化为map坐标系发送给前端,然后前端再采取map坐标系

地图像素坐标系转换在地图上实现展示功能。
[0023]进一步地,还包括在ros端采取的是用三维空间中的四元数来确定机器人实时朝向的,在前端二维页面中,转化为欧拉角进行处理,然后展示方向角度,进行前端的展示。
[0024]本专利技术采用以上技术方案与现有技术相比,具有以下技术效果:
[0025](1)本专利技术提供的一种机器人扫图和雷达点云地图坐标转换和实时展示,由于jpg相比于pgm文件格式,可以有更高的压缩比,因此在前端和ros的传输过程中,在相同传输频率的情况下,对带宽的压力会小很多,等量的带宽可以支撑传输更大面积的地图以及更高频率的刷新。
[0026](2)本专利技术提供的一种机器人扫图和雷达点云地图坐标转换和实时展示,采用此方案后,可以通过控制对应topic话题的发送频率或者接收频率来控制地图数据显示的刷新频率,两者是相同的。
[0027](3)本专利技术提供的一种机器人扫图和雷达点云地图坐标转换和实时展示,此方案实现后,可以使机器在推图过程中可以实时展示机器的推图状态,机器人位置、方向以及机器人当前的雷达点云情况。可以让用户通过浅显易懂的前端界面,了解到机器人目前的扫图实时状态以及定位情况,及时的做出判断。
附图说明
[0028]图1是本专利技术流程图。
[0029]图2是本专利技术适应屏幕展示流程图。
具体实施方式
[0030]以下基于实施例对本专利技术进行描述,但是本专利技术并不仅仅限于这些实施例。在下文对本专利技术的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本专利技术。为了避免混淆本专利技术的实质,公知的方法、过程、流程、元件和电路并没有详细叙述。
[0031]此外,本领域普通技术人员应当理解,在此提供的附图都是为了说明的目的,并且附图不一定是按比例绘制的。
[0032]同时,应当理解,在以下的描述中,“电路”是指由至少一个元件或子电路通过电气
连接或电磁连接构成的导电回路。当称元件或电路“连接到”另一元件或称元件/电路“连接在”两个节点之间时,它可以是直接耦接或连接到另一元件或者可以存在中间元件,元件之间的连接可以是物理上的、逻辑上的、或者其结合。相反,当称元件“直接耦接到”或“直接连接到”另一元件时,意味着两者不存在中间元件。
[0033]除非上下文明确要求,否则整个说明书和权利要求书中的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。
[0034]在本专利技术的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本专利技术的描述中,除非另有说明,“多个”的含义是两个或两个以上。
[0035]如图1所示,使用python基础库中的图片转jpg格式输出的方案,输出jpg图片流(base64),然后定义一个新的topic,如/mapCompress,用于实现ros底层传递jpg图的base64字符串直达前端,这样前端就可以直接将此base64渲染入canvas中,实现机器人当前地图的实时展示功能,同时,可以根据通过ros提供的配置项控制发送和接收topic的频率,用来实现地图数据刷新率的具体要求。
[0036]地图回传以后,通过地图图片的长宽进行等比缩放适应屏幕展示,并居中,而不是采取从map坐标系下原点坐标来进行渲染,解决了只能显示第一象限内地图的问题。地图中的点位在前端采用map坐标系

地图像素本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.机器人扫图和雷达点云地图坐标转换和实时显示方案,其特征在于,包括以下步骤:步骤S1.机器人扫图中,将获取的地图pgm文件格式的图片转化为jpg图片;步骤S2.前端接收到jpg图片并根据屏幕宽高展示;步骤S3.机器人持续扫图中,不断通过rostopic推送机器人实时位置、方向、点云等信息到前端;步骤S4.前端处理机器人实时位置和点云信息,从map坐标系下点坐标转化为像素坐标;步骤S5.机器人方向对四元数转化为欧拉角处理;步骤S6.根据处理过的数据实时展示机器人扫图信息情况;步骤S7.监听机器人前进速度和轮子转速,超过一定阈值界面提示告警消息。2.根据权利要求1所述的机器人扫图和雷达点云地图坐标转换和实时显示方案,其特征在于,S1具体如下:步骤S11,使用python基础库中的图片转jpg格式输出的方案,输出jpg图片流(base64);步骤S12,定义一个新的topic,用于实现ros底层传递jpg图的base64字符串直达前端;步骤S13,将步骤S2中的base64渲染入canvas中,实现机器人当前地图的实时展示功能;步骤S14,根据通过ros提供的...

【专利技术属性】
技术研发人员:陈志远陈俊标
申请(专利权)人:霞智科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1