小张同学的博客😎
MOOS-ivp中文手册参考
简述 ==注:本文章是基于官网的文档(MOOS-IvP : Helm - Cover browse (mit.edu))进行了简单的机翻,主要用于学习该仿真系统,文章中多少存在一些错误,请指出。== 2.4发布-订阅中间件设计思想与MOOS 星形拓扑通讯机制,使用发布订阅的方式进行。 2.5基于行为的控制设计思想与Ivp Helm Ivp Behavior 为用户的使命行为,例如避障,速度控制,搜索区域 Ivp Helm 用于调节个行为,哪些是活性的,哪些是非活性的。通过结合ivp function ,ivp solver进行协调多个冲突行为,将决策输出到MOOSDB。 3.4 MOOS应用程序中的重载函数 MOOS应用程序基类的关键虚函数:在从CMOOSApp派生的类上调用Run()后的执行流。滚动条指示CMOOSApp功能的用户将在哪里编写新代码,以实现新应用程序所需的任何内容。 3.4.1 The Iterate() Method 通过在一 个新的派生类中重写 CMOOSApp :: Iterate ( )函数 ,作者创建了一个函数,可以从该 函数中编排应用程序要执行的工作 ...
智能网联汽车协同决策与规划技术笔记
低速解构化场景中的单一车辆决策与规划 轨迹规划命题构建 车辆运动过程的最优控制问题属于连续[Bolza](博尔查问题_百度百科 (baidu.com))型问题,具有一下特征: 1)从状态方程类型来讲,它属于连续控制系统。 2)从性能指标类型来讲,它属于复合型性能指标。 3)从末端条件类型来讲,它属于末端受约束,且末端时刻可以不固定。 4)从系统函数类型来讲,它属于时变非线性系统。 Bolza 问题求解概述: 输入控制变量U(t),同时确定好终止时刻tf,使代价函数 沿着相应的状态轨线x(t)取得最小值。 约束包括: 系统动态方程约束(用于描述动力学/运动学约束): 两点边值约束: 流行约束: 系统动态方程约束 两点边值约束 在充斥着障碍物的复杂场景中,我们一般无法提前预判车辆以何种“转圈”方式抵达终点,因此下面的描述更合理。 车库约束: 计算点在矩形内: 最终表达: 流行约束 流形约束是指作用于车辆运动过程中( 除系统动态方程之外)的约束条件,它们能够将状态/控制变量限制在解空间的某一流形上。 分别为,前轮转角、线加速度、行驶速度、前轮转角速度 障碍物描述: 常见 ...
运动规划古月
what is planning 本质 $$ argmin_{x}f(x) $$ 搜索问题 “好”其实就是一个目标函数: $$ f(x) $$ f(x)的最优解 Motion planning 的三个跟踪领域 Robotics Fileds: 生成轨迹实现目标 RRT, A*, D* Lite Control Theory: 动态系统理论实现目标状态 MPC,LQR AI: 生成状态和Action的一个映射 RL, Imitation Learning cited by motion planning by steve lavelle: https://planning.cs.uiuc.edu/part1.pdf 如何解决Motion planning问题? 找到简单的突破口 path finding problem 不关心速度,不关心走 周围固定 简而言之就是:路径选择问题 A simple shortest path 路径最短:BFS &DFS ; Dijkstra; A* search 无人车 ...
Optimal trajectory generation for dynamic street scenarios in a Frenet Frame
Optimal trajectory generation for dynamic street scenarios in a Frenét Frame * Authors: [[Moritz Werling]], [[Julius Ziegler]], [[Sören Kammel]], [[Sebastian Thrun]] DOI: 10.1109/ROBOT.2010.5509799 初读印象 comment:: 自动驾驶车辆安全处理动态高速公路和内城场景涉及生成适应交通的轨迹的问题。为了满足全自主系统的实际需求,提出了一种可紧密集成到行为层的半反应式轨迹生成方法.该方法通过在街道的Frenet框架内的最优控制策略结合反应式防撞实现了长期目标,如速度保持、并道、跟随、停止。 文章骨架 %%创新点到底是什么?%% novelty::我们的主要焦点不是在某个成本泛函的优化上。相反,我们在最优意义上用公式表示轨迹跟踪问题,以利用在随时间选择最佳可行轨迹时主张一致性的理论。有了这个,我们试图确保一旦找到最优解,它将被保留(贝尔曼的最优性原则)。对于汽车而言,这意味着它在每个计划步 ...
机器人运动规划方法综述
机器人运动规划方法综述_唐永兴.pdf * Authors: [[ 唐永兴]] 初读印象 comment:: 首先阐释运动规划的基本内涵及经典算法的关键步骤;其次针对实时性与解路径(轨迹)品质间的矛盾,以是否考虑微分约束为标准,有层次地总结了现有的算法加速策略;最后面向不确定性(即传感器不确定性、未来状态不确定性和环境不确定性)下的规划和智能规划提出的新需求,对运动规划领域的最新成果和发展方向进行了评述。 绪 1 开环运动规划的一个中心主题是将连续空间离散化,进而借助人工智能领域的离散搜索思想,将求解运动规划问题视为在高维自由构型空间或自由相空间中的搜索过程。 2 反馈运动规划则通过对不确定性进行建模,并将该模型融入规划过程,为机器人的实际运动提供了安全保障。 传统运动规划 解决传统运动规划问题的思路正是用包含可数个节点的图结构G(V, E)捕捉Cfree的连通信息,并基于此离散结构搜索解路径。 组合运动规划 CMP为基于显式表示的障碍物。 可达性 对于任一 q ∈Cfree,可以简单高效地计算一条以其为起点,以S中任一点s为终点的路径τ:[0 1]→Cfree,即τ(0)=q,τ ...
Real Time Path Planning of Robot using Deep Reinforcement Learning
Real Time Path Planning of Robot using Deep Reinforcement Learning * Authors: [[Jeevan Raajan]], [[P V Srihari]], [[Jayadev P Satya]], [[B Bhikkaji]], [[Ramkrishna Pasumarthy]] DOI: 10.1016/j.ifacol.2020.12.2494 初读印象 comment:: 本文考虑从给定初始位置到目标位置的机器人实时找到一条路径。假定环境是映射的(完全已知),并且所得路径应避免在映射环境中静态和动态的所有障碍。假定机器人的(代理)动力学是带有过程噪声的离散LTI,并通过一组有限的输入来控制。为该问题提供了MDP公式和基于深入增强学习框架的解决方案。使用DQN算法对所提出的方法进行了数值实验,并将结果与基于静态和动态环境的基于最新采样的路径计划算法进行了比较。结果表明,即使提出的算法提供了一条次优路径,但与传统的路径计划方法相比,计算时间的明显更快。 文章骨架 %%创新点到底是什么?%% novelty: ...
Formation Flight in Dense Environments
Formation Flight in Dense Environments * Authors: [[Lun Quan]], [[Longji Yin]], [[Tingrui Zhang]], [[Mingyang Wang]], [[Ruilin Wang]], [[Sheng Zhong]], [[Yanjun Cao]], [[Chao Xu]], [[Fei Gao]] 初读印象 comment:: 现有方法缺乏在密集环境中实现完全自主的大规模编队飞行的能力。本文提出了一种基于可微图的度量来量化编队之间的总体相似性误差。此度量对于旋转,平移和缩放是不变的,为编队协调提供了更大的自由度。设计了一个分布式轨迹优化框架,该框架考虑了编队相似性、避障和动态可行性。为了提高高度受限场景下编队导航的弹性,我们提出了一种群重组方法,该方法通过生成本地导航目标来自适应地调整编队参数和任务分配。在这项工作中,提出了一种新颖的群协议策略,称为全局重新规划和编队级路径规划器,以有效地协调群全局规划和局部轨迹优化。 文章骨架 %%简介%% introduction:: 三个核心挑战限制了实际编队 ...
Divide Areas Algorithm for Optimal Multi-Robot Coverage Path Planning
DARP: Divide Areas Algorithm for Optimal Multi-Robot Coverage Path Planning * Authors: [[Athanasios Ch. Kapoutsis]], [[Savvas A. Chatzichristofis]], [[Elias B. Kosmatopoulos]] DOI: 10.1007/s10846-016-0461-x 参考论文地址:https://link.springer.com/article/10.1007/s10846-016-0461-x 初读印象 comment:: DARP区域分解,开始使用维诺图进行分配,然后使用评估函数进行评估,更新评估函数。为实现连通,使用了惩罚和奖励的机制。 文章骨架 %%创新点到底是什么?%% novelty:: 将地形划分为若干个相等的区域,每个区域对应一个特定的机器人,保证完全覆盖,无回溯解,最小覆盖路径,同时不需要任何准备阶段。 %%有什么意义?%% significance:: 无视初始位置;各机器人工作量相同, 也可根据需求更改进行不同比 ...
C++可视化-Matplot++
引言 关于c++的可视化一直是不太方便,个人使用过的可视化方案有基于ROS的RVIZ工具,但是这个是基于linux环境的在windows环境下不太适用。如果是小的demo的开发,并且希望在windows端的话,可以使用wsl2在windows 端使用ros的rviz工具进行可视化。个人还使用过opencv的库进行过可视化,但是可视化化效果有点“小丑”。目前找到了一个配置较为简单,使用起来和matlab的画图很类似并且审美也可接受,缺点就是暂时无法画动图,原因是图的更新频率太低了。 Matplot++概述 Matplot++ 是一个用于数据可视化的图形库,它提供交互式绘图、以高质量格式导出科学出版物绘图的方法、与类似库一致的紧凑语法、数十种具有专用算法的绘图类别、多种编码样式,并支持通用后端。 下面是一些效果图的示例,官网文档链接为:Home - Matplot++ (alandefreitas.github.io) 安装配置 由于这部分已经有大佬写的很详细了这里就不再赘述了。主要安装主要有gnuplot下载与安装&Matplot++下载和vs的配置。推荐大佬写的详细安装步骤 ...
Nanopi NEO Core测试
前言 ​ 最近收到了一块小板子,需要测试一下它的性能,但是在网上的资料都不太能满足我的需求,于是这里简单分享一下我的测试过程。板子就和下面的图类似。他们的官网也有一些教程,这里给出链接:http://wiki.friendlyelec.com/wiki/index.php/NanoPi_NEO_Core#System_Login 一些测试前的准备 硬件 microUSB的数据线一根,用来给板子供电,要求5v/2A的电源,直接用电脑的USB口供电即可。 网线一根,用来进行数据传输,这里主要使用网线连接电脑和板子后,使用ssh进行操作系统的访问。 一台电脑 一张8GB的sd卡,我用的是一张128GB的sd卡,最好找一张读写速度快一点的。 软件 MobaXterm终端,这个终端搭建选自己习惯的就行 win32diskimager, 用来烧录镜像 镜像 在这里(https://download.friendlyelec.com/nanopineocore) 下载你的镜像文件。本人选的OneDrive,有会员的小伙伴可以选择网盘下载。根据你的板子的型号以及你的需求,选择你的 ...
浅谈智能车入门-阳光算法
使用摄像头进行寻迹,优点在于可以使前瞻更加的长,速度越快对前瞻的需求越高。当然了也可能大佬的算法写的好,不是呈现完全的正相关,可以说是大体的正相关。但是如果遇到光线分布不均匀等情况干扰了图像赛道信息的提取,可能会造成灾难性后果。 在阳光分布较差的情况下,直接使用灰度图像,会对赛道边线的提取有着一定的帮助。下面说一下关于灰度图像的赛道边线提取。其主要思路和二值化后的图像边线提取思路相似,只不过二值化图像是根据0、1两个值进行处理,而对灰度图像,每一个像素点的值为0~255。观察下图(使用的逐飞的上位机获取的图片,之后使用python稍微处理了一下) 编辑 图1 原图 编辑 图2 excel 部分数据 编辑 图3 excel 部分数据(放大) 通过图3,可以明显的看出赛道的边线出的像素数值变化。由此,我们便可以通过计算像素变化大的地方,提取赛道边界。主要程序如下: 12345678910111213141516171819202122232425#define CBH(x,y) (fabs(x-y)/(x+y)*100) %差比和计算 for(j=center_l;j>3;j-- ...
浅谈智能车入门-硬件篇
浅谈智能车入门-硬件篇 硬件作为软件的实施载体自然是十分的重要。在设计之前需要进行充分的考虑,主要分为电源部分和外设接口部分。 电源部分 主要是设计降压稳压电路和升压稳压电路。常用的外设电压一般为3.3v和5v和舵机电压(不同舵机允许电压范围不同)。可以通过百度查找一些比较成熟的电路,或是查找相关稳压芯片的数据手册,大部分数据手册都有典型电路可供参考。 立创商城 基本上都可以查到相关的数据手册。 外设 交互&调参:按键、屏幕、蜂鸣器、蓝牙模块、无线模块 采集数据:编码器(速度计算)、陀螺仪(姿态计算)、电磁采集模块、摄像头 规划好后便可以进行PCB板的设计。 使用工具:立创EDA、Altium Designer 主要步骤为:原理图库设计->封装库设计->原理图绘制->PCB绘制 在这里提一下,立创EDA的封装和原理图很好用哦!!! 可参考大佬的这篇文章 手把手教你做一块电路板,从设计到制作! 补充: 记得考虑实际器件的大小以及相互位置的影响 布线时应根据电流大小考虑线宽 丝印最好是弄好,方便调试 多参考技术报告中国赛大佬的设计方案 以上仅供参考,有错请 ...
avatar
🐟认真摸鱼中
Zmh😎
Future is now 🍭🍭🍭
前往小窝
空降评论复制本文地址
随便逛逛昼夜切换阅读模式关于博客美化设置切换全屏打印页面