0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

PythonRobotics-自主机器人导航

云深之无迹 来源:云深之无迹 作者:云深之无迹 2022-08-03 11:04 次阅读

这个系列的文章是之前Python实现所有算法的兄弟篇,眼看着夏令营完事,我也要又开始学习日子了:

3c3c1c58-1267-11ed-ba43-dac502259ad0.png

若干篇,大家可以看以前的文章

我思来想去,决定深耕机器人领域,又大又深。虽然现在的算法大部分都可以找到,但是没有一个集成的项目来做,这个PR的项目首先是保证了可视化的操作,我想没人不爱可视化吧。其次就是算法的齐全:

3c70bd82-1267-11ed-ba43-dac502259ad0.png

常见的定位算法

3c930504-1267-11ed-ba43-dac502259ad0.png

地图绘制

3cc21218-1267-11ed-ba43-dac502259ad0.png

点云配准

3ce59238-1267-11ed-ba43-dac502259ad0.png

路径规划

3d134a0c-1267-11ed-ba43-dac502259ad0.png

路径追踪

3d37ea88-1267-11ed-ba43-dac502259ad0.png

机械臂等等

对于代码库,作者还编制了一个doc

安装库以后,这里把依赖的库安装一下:

pip install -r requirements/requirements.txt

3d89fde6-1267-11ed-ba43-dac502259ad0.png

会把使用的全安装

3db3e606-1267-11ed-ba43-dac502259ad0.png

测试一下这个怎么样,注意是使用Python的终端

3de099da-1267-11ed-ba43-dac502259ad0.png

运行的很OK

除此之外,还搞了一篇论文,原文在最后:

3e036618-1267-11ed-ba43-dac502259ad0.png

3e3dd730-1267-11ed-ba43-dac502259ad0.png

3e523e82-1267-11ed-ba43-dac502259ad0.png

3e87345c-1267-11ed-ba43-dac502259ad0.png

3eb33674-1267-11ed-ba43-dac502259ad0.png

3eec8b72-1267-11ed-ba43-dac502259ad0.png

3f2f1f78-1267-11ed-ba43-dac502259ad0.png

看不懂英文的意思?我给你翻译一下,近年来自主的导航技术在很多的领域都大受关注,这个系统是指,在不受操作者控制的情况下,能够长时间的向目标移动的系统,首先是需要知道自己在哪里,那些地方是安全的,去这个安全的地方该如何去,以及如何控制自己的运动。如果缺少任意一个,都是不可以的。可能太大白话了,定位,映射,路径规划,路径跟随。但是熟悉这些东西需要大量的不同的技能集合,线性代数,统计学,概率论,优化理论,控制理论等等。而且学习这些还得良好的教育资源,那么这个项目就是为了为这个美好的愿望来添砖加瓦,他有很多的模拟动画,有助于读者来了解之后的基本思想。

3f6b25e0-1267-11ed-ba43-dac502259ad0.png

还是继续说,虽然可以找到很多的资料,但是对于一个初学者还是不能很好的来了解算法的思路。

项目按照可读性,就是代码易于阅读,实用性,算法必须具有实用性,就是在学术界和工业界得到广泛的应用,最后就是最小的依赖关系,很少的外部依赖可以让我们轻松的运行代码的demo。这就是库的三个重要特征。

在文章的后面我想写一下这个库的组织方式:

3f8ebc58-1267-11ed-ba43-dac502259ad0.png

按照大的技术类别分为:定位,映射,SLAM,路径规划和路径跟踪。然后我会简单的介绍一下这几个的作用,定位是通过各种传感器来确定自己的位置和方向的能力。映射也可以称为测绘的能力,机器人需要了解环境,可以设别障碍物的位置和形状,才能避开障碍物。SLAM是一种更加好的办法,可以同时估计机器人的姿态和环境地图的能力,但是它难以求解,因为定位需要地图,映射需要定位,这样看就好像是先有鸡还是先有蛋的问题。路径规划是机器人寻找可行高效的路径到达目标的能力,路径必须要根据机器人的运动模型和障碍物位置满足一些约束条件,并优化目标的时间和到障碍物的距离等一些目标函数。

3fbab09c-1267-11ed-ba43-dac502259ad0.png

现在就安装这些库就好,最后一个是一个优化的库。

CVXPY 是一种用于凸优化问题的开源 Python 嵌入式建模语言。它可以让您以一种遵循数学的自然方式表达您的问题,而不是求解器所需的限制性标准形式。

3fd8e08a-1267-11ed-ba43-dac502259ad0.png

因为要不停的看各种API,划词翻译这个浏览器插件也值得拥有~

400a8086-1267-11ed-ba43-dac502259ad0.png

概率机器人,这个书你看过吗?如果看过的话,这个库是练习的解决方案

https://github.com/pptacher/probabilistic_robotics

https://fanyi.youdao.com/

https://arxiv.org/ftp/arxiv/papers/1808/1808.10703.pdf

https://github.com/AtsushiSakai/PythonRobotics

https://www.cvxpy.org/

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器人
    +关注

    关注

    206

    文章

    27025

    浏览量

    201379
  • 可视化
    +关注

    关注

    1

    文章

    1018

    浏览量

    20551
  • python
    +关注

    关注

    51

    文章

    4674

    浏览量

    83464

原文标题:PythonRobotics-自主机器人导航

文章出处:【微信号:TT1827652464,微信公众号:云深之无迹】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    机器人编程需要什么软件?

    机器人编程需要什么软件
    发表于 11-01 07:34

    基于GPS的自主移动机器人导航定位系统的实现

    电子发烧友网站提供《基于GPS的自主移动机器人导航定位系统的实现.pdf》资料免费下载
    发表于 10-25 11:23 0次下载
    基于GPS的<b class='flag-5'>自主</b>移动<b class='flag-5'>机器人</b><b class='flag-5'>导航</b>定位系统的实现

    slamware自主定位导航解决方案赋能机器人智能移动

    上篇,小岚为大家介绍了slamware自主定位导航解决方案在移动生态、开发便利性、智能性上探索的成果,那背后到底是哪些关键技术在赋能呢? 机器人在未知场景中,要想实现类人般的智能移动,必须要具备地图
    的头像 发表于 10-11 16:07 663次阅读
    slamware<b class='flag-5'>自主</b>定位<b class='flag-5'>导航</b>解决方案赋能<b class='flag-5'>机器人</b>智能移动

    Arduino教学机器人的使用教程

    本文档的主要内容详细介绍的是Arduino教学机器人的使用教程
    发表于 09-27 06:53

    一种结构化道路环境中的视觉导航系统详解

    根据结构化道路环境的特点提出了一种将边沿检测和道路环境知识相结合的机器视觉算法 , 并结合基于行为响应的路径规划方法和智能预瞄控制方法 , 实现了一套基本的机器人视觉导航系统 . 在自主机器人
    发表于 09-25 07:23

    智能轮椅导航定位的研究现状及趋势

    电动轮椅,融合多种领域的研究,包括机器视觉,机器人导航和定位.模式识别,多传感器融合及用户接口等。目前美国、德国.日本、及中国等多个国家都在进行这方面的研究。 轮椅的安全导航,是智能轮
    发表于 09-25 07:13

    从 0 到 1 搭建机器人系列 | 利用 NVIDIA Jetson 和硬件加速 SDK 打造自主机器人

    机器人可以“变身”为咖啡师吗? 答 当然!机器人成为咖啡师的秘密武器是自主机器学习。想象一下,机器人可以在虚拟的“咖啡工坊”里反复练习冲泡咖啡,掌握各种口味和杯型的制作技巧。在你点
    的头像 发表于 09-21 19:35 309次阅读
    从 0 到 1 搭建<b class='flag-5'>机器人</b>系列 | 利用 NVIDIA Jetson 和硬件加速 SDK 打造<b class='flag-5'>自主机器人</b>

    稳石机器人|日化行业智慧物流:打造高效绿色供应链

    不同产品的上下料和运输要求,从而满足多样化的生产需求,并大幅减少了成本投入,为企业降本增效。 项目亮点 效率提升,质量保障 稳石机器人WS300s自主移动机器人进行的上下料、运输作业,大幅减少了人员
    发表于 09-21 13:45

    ai人工智能机器人

    的运营成本、人力成本还在不断提高(如:办公场地的租金、员工的工资、社保公积金、节假日福利等)。 如今的智能电话机器人,每天的电话拨打量可达800-1000通,相比人工提高了3-5倍,大大缩短了名单的筛选
    发表于 09-21 11:09

    profinet转ethernet网关连接发那科机器人配置案例

    PLC,设置好机器人的IP地址,打开机器人设置菜单找到主机通讯选项; 7、找到搬运机器人控制端的TCP/IP选项; 8、设置机器人
    发表于 08-03 17:58

    浅析基于SLAM的机器人自主定位导航

    正如图中所示,机器人自主定位导航技术中包括:定位和地图创建(SLAM)与路径规划和运动控制两个部分,而SLAM本身只是完成机器人的定位和地图创建,二者有所区别。
    发表于 08-03 11:12 763次阅读
    浅析基于SLAM的<b class='flag-5'>机器人</b><b class='flag-5'>自主</b>定位<b class='flag-5'>导航</b>

    【科普】干货!带你从0了解移动机器人(四) ——移动机器人导航技术

    移动机器人导航是指移动机器人确定自己在地图参考系中的位置后,自动规划出通往地图参考系中某个目标位置路径并沿着该路径到达目标位置点的能力,是移动机器人行动能力的关键。 基于整个智能制造的
    发表于 06-28 09:52

    【科普】干货!带你从0了解移动机器人(三) ——自主导航系统及上位机软件设计与实现

    人类社会中发挥着越来越重要的作用。但移动机器人拥有自主导航能力,才能进一步完成上诉所设定的任务。可以说自主导航能力是移动机器人最为基础和核心的技术,而上位机软件的实现与设计,则进一步推
    发表于 06-28 09:36

    自主导航机器人的创建

    电子发烧友网站提供《自主导航机器人的创建.zip》资料免费下载
    发表于 06-27 11:16 0次下载
    <b class='flag-5'>自主导航</b><b class='flag-5'>机器人</b>的创建

    浅谈儿童陪护机器人

    儿童陪护机器人越来越受到人们的关注,其中转动控制是其重要组成部分之一。步进电机芯片作为一种常用的控制芯片,被广泛应用于儿童陪护机器人中的转动控制。本文将从步进电机芯片的工作原理、优势和应用场景等方面
    发表于 05-11 15:12