系列文章目录

提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
TODO:写完再整理

文章目录

  • 系列文章目录
  • 前言
  • 一、微分平坦(Differential Flatness)目的
  • 二、无人机微分平坦控制举例
  • 三、无人机的规划和控制关系
  • 四、【拓展控制方法】微分动态规划法(Differential Dynamic Programming)
    • 1.数学原理
    • 2.原理的表述
    • 3.优点
    • 4.缺点
  • 参考资料

前言

认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长!

在项目和平时的学习中,我对机器人/无人驾驶的决策规划模块进行了划分,当然划分的方法有很多,我的划分方式仅供参考
(1)动态障碍物行为预测模块(Behavior prediction)–结合感知和高精度地图信息,估计周围障碍物未来运动状态
(2)执行机构的轨迹规划模块(Trajectory_planning)–执行机构如机器人载体上的机械臂、串行云台等的运动轨迹规划
(3)任务决策模块(Mission_planning)–任务决策模块比较偏业务层了,处理机器人/无人驾驶的各种任务,主要分为三个方面:车底盘航线业务决策(交规、横向换道等等)、执行应用机构业务决策(机械臂、人机交互等等)、不同场景的导航方案切换决策(组合导航、融合导航)
(4)前端路径探索模块(path_finding)–全局路径规划算法难度不算复杂,找到一条可通行的(必须满足)、考虑动力学的(尽可能满足)、可以是稀疏的路径base_waypoints【由于其只考虑了环境几何信息,往往忽略了无人机本身的运动学与动力学模型。因此,其得到的轨迹往往显得比较“突兀”,并不适合直接作为无人机的控制指令】
(5)后端轨迹处理模块(motion_planning)–我主要归纳整理为三个方向:(1)对base_waypoints进行简单处理及生成方向、(2)对base_waypoints轨迹优化方向【一般是二次优化,这里用的较多的事优化方面的知识】、(3)进行对应功能的replan方向(replan之前的预处理、进入replan的条件、停障replan、避障replan、纠偏replan、换道replan、自动泊车replan、穿过狭窄道路replan等等),这部分内容使用的方法比较专
(6)路径跟踪模块(trajectory_following)–这个模块就得针对机器人载体了,如无人驾驶使用得阿克曼模型可以采用几何的pure pursuit纯追踪算法,更好的可以用模型预测控制MPC方法,还有强化学习做的(效果怎样我就没验证过了);当然也可能事麦克纳姆轮车、差速车PID、还有无人机的三维轨迹跟踪等等
(7)碰撞检测模块
(8)集群多机器人规划模块

当然,这种划分方式是我权衡了原理和功能粗略划分的,在实际产品研发过程中,需要理解了各个算法的功能和定位的基础上融汇贯通,不能生搬硬套,如全段通过hybrid A探索出来的路径与A、RRT*探索出来的路径更平滑,后端轨迹优化的任务就不用这么重了;又如,机器人/无人驾驶项目研发的需求业务还没发展到能响应很多功能阶段,任务决策使用简单的状态机(fsm)就可以对现有任务进行状态转移了

本文先对**微分平坦(Differential Flatness)**做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章


提示:以下是本篇文章正文内容

一、微分平坦(Differential Flatness)目的

用于确定优化的对象状态维度的【一般是位置及其导数或方向及其导数】

二、无人机微分平坦控制举例

(1)无人机的系统状态包括位置xyz及其导数(线速度),方向rpy及其导数(角速度)


(2)无人机的非线性动力学
1)平移动力学【牛顿定理表示】

2)旋转动力学【欧拉定理表示】


(3)无人机微分平坦的输出量(不冗余)
Done. You should only remember the planning of a UAV can be done in


(4)总结

四旋翼的状态和输入可以写作四个平坦(flat)的输出变量和它们导数的代数方程,【防盗标记–盒子君hzj】使得轨迹能够自动生成

三、无人机的规划和控制关系

前半部分是无人车的规划部分,输出的是

后半部分是无人车的控制部分,输出的是四轴电机的力矩

四、【拓展控制方法】微分动态规划法(Differential Dynamic Programming)

【非线性的线性化处理解决问题】【防盗标记–盒子君hzj】

1.数学原理

2.原理的表述

3.优点

(1)能获得最优的轨迹,【防盗标记–盒子君hzj】也能活得最优的反馈控制器
(2)局部LQR问题的求解可以并行化计算,能达到非常高的求解速度

4.缺点

(1)需要较好的初始化轨迹
(2)比较难考虑额外的约束


参考资料

论文
Minimum Snap Trajectory Generation and Control for Quadrotors, Daniel Mellinger and Vijay Kumar

参考资料
【具体看看深蓝学院】

【control】微分平坦(Differential Flatness)相关推荐

  1. 微分平坦(differential flatness)

      推荐下自己的公众号--Joe学习笔记,公众号上会不定期更新一些文章,主要是自己平时学到的知识,内容包括自动驾驶.计算机视觉.人工智能和机器人技术.我会第一时间把文章更新在公众号上,欢迎大家订阅和分 ...

  2. Differential flatness

    微分平坦特性是针对有常微分方程描述的动力系统的一种特性,比方说无人机通常以系统的状态x(三维的位置.速度.姿态.角速率)以及输入的控制u(总的推力.在三个轴上的力矩)构成.常微分方程描述了状态和输入之 ...

  3. 四旋翼无人机动力学模型及控制

    四旋翼无人机动力学模型及控制 I: 欧拉角与旋转矩阵 Overview 欧拉角与旋转矩阵 Body Frame Angular Velocity and [ ϕ ˙ , θ ˙ , ψ ˙ ] T [ ...

  4. 【控制control】机器人运动控制器----基于模型的控制方法(关节控制--阻抗控制)

    系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录 系列文章目录 前言 一.设计基于模型泛型控制器的步骤 二.机械臂控制科普 1.工业机械臂 ...

  5. 读书笔记: Cartesian Impedance Control of Redundant and Flexible-Joint Robots, Section 2

    读书笔记: Cartesian Impedance Control, Section 2 Section 2 柔性关节机器人建模 2.1 运动学 2.2 柔性关节机器人动力学模型 2.2.1 Comp ...

  6. 【控制control】机器人运动控制器----基于模型预测控制MPC方法

    系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录 系列文章目录 前言 一.模型预测控制(MPC)的介绍及构成 1.介绍 2.构成 二.模型 ...

  7. UA MATH636 信息论6 微分熵

    UA MATH636 信息论6 微分熵 Differential Entropy Conditional Differential Entropy Differential Entropy of Ga ...

  8. 袖珍电子书:一元实函数的微分定义

    在传统微积分学里面,函数的微分概念很重要.但是,转移到无穷小微积分学之后,微分失去了它原有的"光彩",消失不见了,由此可见,仅依赖导数来展开无穷小微积分学即已足够.此话当真? 在J ...

  9. 四旋翼与四元数学习笔记

    为了实现四旋翼无人机的编队控制,重点学习了四旋翼加速度转换为姿态角和推力指令的具体手段,详细学习了四元数.旋转矩阵.欧拉角在四旋翼上的应用,学习了四旋翼的几何控制法.姿态角控制器设计,学习了mavro ...

最新文章

  1. C#.NET 轻量级通用快速开发平台,DevExpress DXperience 12.2
  2. 烂泥:纠结一天的zencart网站问题,终于解决了
  3. sh脚本异常:bad interpreter: No such file or directory
  4. 38. Leetcode 101. 对称二叉树 (二叉树-二叉树性质)
  5. android防止内存溢出浅析
  6. 基于华为云的一个典型的持续部署方案
  7. rvest | 网络爬虫初步——使用CSS选择器
  8. [转载] python 需求清单_Python清单操作摘要
  9. 重庆c语言程序二级考试,优·历届重庆市计算机C语言二级考试试题及答案.doc
  10. vfp公交车调度系统
  11. php电竞酒店系统,星云电竞酒店管理系统
  12. android平板电脑 刷机工具,安卓平板电脑刷机教程之一键刷机.pdf
  13. 朗道-西格尔零点猜想(the Landau-Siegel Zeros Conjecture)
  14. Sox切割脚本简单思路
  15. webservice 405 java_用浏览器测试Get与Post Webservice,Post一直报405错误,而Get能够成功的原因与解决方法...
  16. android EditText 属性
  17. 架构师进阶之路——1、持久化框架(一)
  18. mysql 进入_如何进入MySQL
  19. 二阶线性微分方程解的结构(齐次与非齐次)+ 常数变易法 | 高阶微分方程(二)
  20. 真实入手评测:荣耀手表gspro和华为gt2的区别-荣耀手表gspro和magic2的区别-看看内行人怎么说

热门文章

  1. ubuntu1804
  2. C语言中指针*p、p以及p之间的区别以及*p和**p的区别
  3. 嫁人就嫁程序猿——钱多话少死的早!很励志。。。
  4. 茶觉 | 林先生的“岩香”
  5. 简述需求评审的目的、主要内容、主要参加人员.
  6. 特朗普遭抗议:美国投资人仍看好可再生能源
  7. 封装、继承和多态以及抽象类和接口
  8. 报名 | 相约杭州,我们来聊聊区块链技术与行业应用落地
  9. 经济基础知识(初级)【9】
  10. 华为Fit AP 刷 Fat AP