
机器人最优控制工具

文章平均质量分 92
支持一下平台
优惠券已抵扣
余额抵扣
还需支付
¥29.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
kuan_li_lyg
有问题请在评论区讲,关注左下角公众号。
展开
-
OceanSim: 基于Isaac Sim GPU 加速水下机器人感知仿真框架
OceanSim 采用先进的基于物理的渲染技术,对水下视觉和声学传感器进行精确建模。与其他模拟引擎相比,OceanSim 的渲染速度要快得多。作为 NVIDIA Issac Sim 的扩展,OceanSim 采用了多功能设计。通过融入快速发展的 NVIDIA Omniverse 生态系统,我们的模拟器自然而然地在机器人学习和水下机器人技术之间架起了一座桥梁,从而促进了水下应用中体现型人工智能技术的开发和部署。OceanSim 将以开放源码的方式提供,使研究界能够以合作的模式作出贡献。原创 2025-04-06 18:04:18 · 897 阅读 · 0 评论 -
NVIDIA Isaac Sim 入门教程(六)- 移动机器人差速、全向、阿克曼驱动控制器
关节控制器是低层面控制器,用于控制 Isaac Sim 中的关节位置、关节速度和关节力度。关节控制器可通过 Python 和 Omnigraph 接口连接。注意角度单位以弧度为单位,而USD中的角度以度为单位,关节控制器将进行相应调整。原创 2025-04-14 17:58:45 · 926 阅读 · 0 评论 -
Pinocchio - 开源多刚体动力学 C++、Python库
建议使用教程(请参阅页面顶部菜单中的相应项目):在 20 个小时的工作中生成第一个仿人行走机器人,同时了解 Python、Pinocchio 界面、逆运动学和 LQR。原创 2023-12-17 16:40:17 · 3861 阅读 · 0 评论 -
iLQR DDP 微分动态规划推导详细过程(二)
在下面的推导中,我们使用泰勒多项式来逼近非线性函数。我们通常对状态和控制两个变量的非线性函数的一阶或二阶近似感兴趣。以下推导可能会有所帮助。f(x)的二阶泰勒级数近似,f(x)是一个非线性标量值函数,它依赖于一个变量(x∈R),并围绕 xˉ\bar{x}xˉ(不一定为零)线性化:f(x)→f(xˉ+δx)≈f(xˉ)+∂f∂x∣xˉ(x−xˉ)+12∂2f∂x2∣xˉ(x−xˉ)2≈f(xˉ)+∂f∂x∣xˉδx+12∂2f∂x2∣xˉδx2\begin{aligned}f(x)\rightarrow原创 2025-03-27 07:00:00 · 832 阅读 · 0 评论 -
iLQR DDP 微分动态规划推导详细过程(四)
这个离散优化控制问题的微分动态程序设计包括辛普森正交阶段成本、一阶保持控制、不可行控制、最短时间以及一般非线性等式和不等式约束,用于解决以下问题:minu,tfℓf(x(tf))+∫0tfℓ(x,u)dts.t.x˙(t)=f(x(t),u(t))+ui(t)xmin≤x(t)≤xmax,0≤t≤tfumin≤u(t)≤umaxh(x(t),u(t))=0g(x(t),u(t))≤0ui(t)=0tfmin≤tf≤tfmaxx(tf)=xfx(0)=x0\begin{aligned}& \begin原创 2025-03-28 07:00:00 · 880 阅读 · 0 评论 -
iLQR DDP 微分动态规划推导详细过程(一)
布莱恩-杰克逊、泰勒-豪威尔斯坦福大学机器人探索实验室2019年7月2日xk+1=Akxt+Bkukx_{k+1}=A_kx_t+B_ku_kxk+1=Akxt+BkukJ(x0,U)=12xNTQfxN+12∑k=1N−1xkTQkxk+ukTRkukJ(x_0,U)=\frac{1}{2}x_N^TQ_fx_N+\frac{1}{2}\sum_{k=1}^{N-1}x_k^TQ_kx_k+u_k^TR_ku_kJ(x0,U)=21xNTQfxN+21k=1∑N−1xk原创 2025-03-27 07:00:00 · 654 阅读 · 0 评论 -
iLQR DDP 微分动态规划推导详细过程(三)
有了 δLˉ\delta\bar{L}δLˉ 后,我们还需要方程中的 δPˉ\delta\bar{P}δPˉ,以便计算方程 51 中的 Q 元素。我们只需将线性化的离散动力学(公式 43)插入下一时间步的成本-去向中即可:δP(δy,δv)=12[δyδv]T[SyySyvSvySvv][δyδv]+[SySv][δyδv](34)δPˉ(δx,δu,δv)=12[Aδx+Bδu+Cδvδv]T[SyySyvSvySvv][Aδx+Bδu+Cδvδv](35)+[SySv][Aδx+Bδu+Cδvδv]=原创 2025-03-28 07:00:00 · 710 阅读 · 0 评论 -
NVIDIA Isaac Sim 入门教程(三)ROS2 联合仿真
导入URDF调整机器人参数该属性用于传感器标签,为传感器提供Isaacsim配置。有两种可能的用途--随Isaacsim提供的预配置激光雷达或用户自定义配置。与用户自定义配置一起使用时,必须提供配置json的位置,否则就必须提供预配置激光雷达的配置名称。URDFImporter的测试中提供了一个示例配置文件,位于data/lidar_sensor_template中。注意事项。原创 2025-01-20 01:23:54 · 2244 阅读 · 0 评论 -
线性倒摆模型(Linear inverted pendulum model)
线性倒立摆是一种点质量模型,主要针对足式机器人运动的平移动力学。原创 2024-11-29 18:57:58 · 851 阅读 · 0 评论 -
人形机器人 —— 运动学方程
物理系统的运动方程描述了其运动与时间和可选控制输入的函数关系。其一般形式如下其中,是时间变量、是广义坐标矢量,例如机械手的关节角矢量、是的一阶时间导数(速度)、是的二阶时间导数(加速度)、是控制输入矢量。这些方程提供了控制空间、我们发送给执行器的指令和机器人运动状态空间之间的映射。想象一个刚体块在桌面上滑动,我们可以将其视为坐标为 𝑥 的 1-DOF(一自由度)系统。操作员施加水平力 𝑢 将木块向前推。原创 2024-11-29 18:57:04 · 1203 阅读 · 0 评论 -
DRAKE - 基于模型的机器人设计与验证 由丰田研究所支持的 C++ / Python 工具箱。
Drake(中古英语中的 "龙")是一个 C++ 工具箱,由麻省理工学院计算机科学与人工智能实验室(CSAIL)的机器人运动小组开发。目前,开发团队已大幅壮大,核心开发工作由丰田研究所领导。这是一套用于分析机器人动力学和构建机器人控制系统的工具集合,重点强调基于优化的设计/分析。虽然机器人仿真工具的数量越来越多,但它们大多像黑盒子一样:指令输入,传感器输出。原创 2023-12-17 16:30:16 · 2217 阅读 · 0 评论 -
SAPIEN ManiSkill3 入门教程(一)
请注意,table.set_pose(pose) 设置的是演员在世界帧中的坐标系姿势。移除的实体可以再次添加到场景中,但已在场景中的实体则不能再次添加。显示器可以是物理的(如显示器),也可以是虚拟的(如 VNC)。我们可以通过 get_pose()、get_linear_velocity() 和 get_angular_velocity()获取演员的运动量(姿势、线速度、角速度)。现在,让我们创建一个斜坡。例如,您可能需要一个简单的碰撞形状来进行快速模拟,但却需要一个复杂的视觉形状来进行逼真的渲染。原创 2024-11-09 08:54:30 · 1694 阅读 · 0 评论 -
零倾覆力矩点(ZMP)
从形式上讲,ZMP 指的是空间中相对于一个平面(通常是地平面)抵消接触力矩的点的集合。这个集合实际上是一个轴,而不是一个点,但为了方便起见,让我们按照传统的推导方法来计算地面平面上的 ZMP。这一推导从任何多刚体系统的牛顿-欧拉运动方程开始:其中,为机器人的总质量,为重力矢量,为系统的重心,为加速度,为固定点的角动量变化率。在右侧,表示净接触扭矩,即施加到机器人上的所有接触扭矩之和,坐标取自质心 (COM)。原创 2024-09-15 09:43:38 · 1643 阅读 · 0 评论 -
Underactuated Robotics - 欠驱动机器人学(三)- 体操机器人、小车摆杆和四旋翼飞行器
在低维模型系统的背景下,已经开展了大量有关欠驱动系统控制的工作。这些模型系统捕捉到了问题的本质,却没有引入更真实世界的例子中经常涉及的所有复杂性。在本章中,我们将重点讨论两个最著名、研究最深入的模型系统--Acrobot 和 Cart-Pole。在我们开发了一些工具后,我们将看到这些工具可以直接应用于其他模型系统;我们将使用四旋翼机器人举出一些例子。所有这些系统都是微不足道的欠驱动系统,执行器数量少于自由度。原创 2024-08-30 01:18:03 · 1130 阅读 · 0 评论 -
人形机器人创新发展顶层设计与关键技术布局
通过以上四个层面的战略布局与实施举措,我国正全力推动人形机器人产业迈向高质量发展的新阶段,力求在全球竞争中占据领先地位,为经济社会各领域的发展注入新动能。原创 2024-01-23 22:23:59 · 800 阅读 · 0 评论 -
ethz(苏黎世联邦理工学院)机器人系统实验室开源库
RSL 机器人系统实验室提供大量开源软件包,为机器人社区提供支持。请查看github。原创 2023-12-02 08:56:31 · 2153 阅读 · 0 评论 -
利用线性化 ZMP 约束条件优化轮式四足机器人的轨迹
摘要 -- 我们提出了一种带驱动轮的四足机器人轨迹优化器。通过级联方式求解底座和脚部轨迹的角度、垂直和平面分量,并引入零点平衡准则的新型线性公式,我们只需进行二次规划,从而无需非线性最优规划。然而,即使是包含完整飞行阶段的步态,我们也能生成执行复杂运动的轨迹,其中包括同时驾驶、行走和转弯。我们在对装有轮子的四足机器人 ANYmal 的模拟中验证了我们的方法,我们能够以 50 Hz 的频率运行所提出的轨迹优化器。据我们所知,这是首次使用在线运动规划器为有轮足式四足机器人演示这种动态运动。原创 2024-10-02 15:11:15 · 1178 阅读 · 0 评论 -
OSQP 求解器教程
OSQP 求解器文档[请访问我们的 GitHub 讨论页面 (https://github.com/orgs/osqp/discussions),了解与求解器相关的任何问题!OSQP(运算符分割二次方程式程序)求解器是一个数值优化软件包,用于求解形式如下的凸二次规划其中 x 为优化变量,x 为半正定矩阵。半正定矩阵,是正定矩阵的推广。实对称矩阵A称为半正定的,如果二次型X'AX半正定,即对于任意不为0的实列向量X,都有X'AX≥0.代码可在 GitHub 上获取。原创 2024-09-28 21:43:39 · 1387 阅读 · 0 评论 -
OCS2 入门教程(七)- CartPole
这段代码定义了一系列参数和配置,用于控制一个名为CartPole的系统的动态行为。其中包括CartPole系统的参数(如质量、长度等),SQP优化算法的配置, rollout(系统动态模拟)的配置,MPC(模型预测控制)的配置,初始状态和状态、控制、目标权重矩阵,以及最终目标状态。这些参数和配置将用于控制CartPole系统的运动。这段代码描述了一个模型预测控制(MPC)问题的详细配置,应用在经典的 CartPole 平衡任务上。原创 2024-08-30 00:58:33 · 429 阅读 · 0 评论 -
Whole Body Control(WBC)全身控制
谷歌的几种解释在这里,全身控制指的是 Oussama Khatib 教授提出的一种控制框架。该框架也被称为任务空间控制、操作空间控制或操作空间制定。当你控制一个有很多关节的机器人时,很难计算出所需的关节角度/力矩集。传统的方法是逆运动学(IK),这是一种几何解决方案。ahl_wbc 可以根据机器人指尖的期望位置/方位计算所需的角度/力矩集。因此,如果使用这个框架,就可以在不使用 IK 的情况下轻松控制复杂的机器人。原创 2023-11-18 08:56:43 · 4493 阅读 · 0 评论 -
TinyMPC - CMU (卡耐基梅隆大学)开源的机器人 MPC 控制器
TinyMPC: 资源受限微控制器上的模型预测控制作者:Anoushka Alavilli*, Khai Nguyen*, Sam Schoedel*, Brian Plancher, Zachary Manchester模型预测控制(Model-predictive control,MPC)是控制受复杂约束条件(complex constraints)影响的高动态机器人系统(highly dynamic robotic systems)的有力工具。原创 2023-12-06 07:09:21 · 3422 阅读 · 3 评论 -
NVIDIA Isaac Sim 入门教程(一)
文档分为以下几个部分: 简介、安装指南、API 文档、教程、手册和参考资料。简介部分是对 Omniverse Isaac Sim 的基本概述,以及它如何融入 NVIDIA Omniverse™ 生态系统。它还概述了 Omniverse Isaac Sim 的架构、工作流程和文档布局。原创 2024-01-15 06:24:54 · 14132 阅读 · 4 评论 -
NVIDIA Isaac Sim 入门教程(二)
Omniverse Isaac Sim 的工作空间非常容易自定义。调整用户界面的大小、停靠、取消停靠、添加和移除面板都非常容易。进入顶部菜单栏,单击下拉菜单最下方的窗口 > 视口 > 视口 2(现在工作区中应该会出现一个名为 "视口 2 "的新视口。如果您想创建更多的视口,请按照相机检查器扩展进行操作。单击并拖动视口 2 的顶部标题以激活停靠部件。拖放到原始视口的右侧,将两个视口并排放置。单击并向左拖动视口 2 的左侧,使视口大小相等。原创 2024-01-30 14:14:37 · 4894 阅读 · 3 评论 -
NVIDIA Isaac Lab 入门教程(一)
Isaac Lab 是一个用于机器人学习的统一模块化框架,旨在简化机器人研究中的常见工作流程(如 RL、从演示中学习和运动规划)。它建立在英伟达 Isaac Sim 的基础上,利用最新的仿真功能实现逼真的场景和快速高效的仿真。该框架的核心目标是Isaac Lab 的主要功能包括:由 PhysX 提供的快速准确的物理模拟、用于矢量化渲染的平铺渲染 API、用于提高鲁棒性和适应性的域随机化,以及对在云中运行的支持。有关该框架的更多信息,请参阅论文[MYY+23]。原创 2024-08-16 15:08:15 · 4890 阅读 · 0 评论 -
NVIDIA Isaac ROS - 入门教程(一)
欢迎访问 Isaac ROS,这是一套硬件加速、高性能、低延迟的 ROS 2 软件包,用于制造自主机器人,充分利用 Jetson 和其他英伟达平台的强大功能。英伟达 Jetson 平台运行在基于 Ubuntu Linux 的 JetPack 操作系统上。JetPack 5.x 是在 Ubuntu 20.04 Focal 的基础上构建的,这意味着由 ROS 2 Buildfarm 为 Ubuntu 22.04 Jammy 构建的 ROS 2 Humble 的 Debian 包不受支持。由于官方 ROS 2 B原创 2024-01-27 00:58:26 · 4519 阅读 · 0 评论 -
Underactuated Robotics - 欠驱动机器人学(三)- 体操机器人、小车摆杆和四旋翼飞行器
在低维模型系统的背景下,已经开展了大量有关欠驱动系统控制的工作。这些模型系统捕捉到了问题的本质,却没有引入更真实世界的例子中经常涉及的所有复杂性。在本章中,我们将重点讨论两个最著名、研究最深入的模型系统--Acrobot 和 Cart-Pole。在我们开发了一些工具后,我们将看到这些工具可以直接应用于其他模型系统;我们将使用四旋翼机器人举出一些例子。所有这些系统都是微不足道的欠驱动系统,执行器数量少于自由度。原创 2024-08-28 14:18:59 · 315 阅读 · 0 评论 -
IEEE RAS 机器人最优控制(Model-based Optimization for Robotics)学习资料
作者深入浅出地介绍了 NLP 的基本特性和算法,并将其与过程优化中的实际问题类相联系,从而使化学工程师和数学优化专家都能理解和使用这些材料。该书清晰、出色地介绍了优化的理论和概念,以及一些重要的算法类别,并附有大量来自不同领域的实际示例。这是一本更先进、涉及更多数学知识的书籍,探讨了非欧几里得流形上的优化问题,该问题在机器人学中受到了一定的关注。该书出色地介绍了优化的理论和概念,以及一些重要的算法类别,并附有大量来自不同领域的实际示例。对基于模型的机器人学的许多概念进行了很好的介绍。原创 2023-12-09 00:37:22 · 1221 阅读 · 0 评论 -
Crocoddyl - 多接触最优控制的高效多功能框架
我们介绍了 Crocoddyl(Contact RObot COntrol by Differential DYnamic Library),这是一个专为高效多触点优化控制(multi-contact optimal control)而定制的开源框架。Crocoddyl 可高效计算给定预定义接触序列(predefined sequence of contacts)的状态轨迹(state trajectory)和控制策略(control policy)。原创 2023-12-17 16:00:12 · 2998 阅读 · 0 评论 -
MATLAB - 使用 TOPP-RA 求解器生成带约束条件的时间最优轨迹
两条轨迹连接同一组航点,并受到一组速度和加速度限制。指定航点。不同的轨迹具有不同的几何和运动属性,这会影响它们在空间中的导航路径。为机械手路径选择轨迹示例说明了机器人系统工具箱™中提供的各种轨迹函数之间的一些差异。在本示例中,使用五次多项式轨迹连接航点。五次多项式通过使用平滑的速度和加速度曲线来连接线段。原创 2024-01-16 06:00:00 · 1661 阅读 · 0 评论 -
实时最优控制(Real-Time Optimal Control)工具
许多现代控制方法,如模型预测控制(model-predictive control),在很大程度上依赖于实时解决优化问题。特别是,高效解决优化控制问题的能力使复杂机器人系统在实现高动态行为(highly dynamic behaviors)方面取得了许多最新突破。原创 2023-12-10 06:30:00 · 1620 阅读 · 0 评论 -
Underactuated Robotics - 欠驱动机器人学(二)- 简单摆杆
本章的目标并不高,我们只想了解钟摆的动力学原理。为什么是摆呢?部分原因是,我们大多数多连杆机器人操纵器的动力学都是大量耦合摆的动力学。此外,单摆的动力学原理非常丰富,足以引入我们在本文中将会用到的大部分非线性动力学概念,同时又非常易懂,我们在接下来的几页中就可以(基本)理解。简摆运动方程的拉格朗日推导(如附录所述)得出我们将考虑广义力模拟阻尼力矩(来自摩擦)加上控制力矩输入。原创 2024-01-10 01:57:52 · 1132 阅读 · 0 评论 -
Underactuated Robotics - 欠驱动机器人学
第 1 章:全驱动与欠驱动系统。原创 2024-01-04 16:40:16 · 1208 阅读 · 0 评论 -
Underactuated Robotics - 欠驱动机器人学(一)- 全驱动与欠驱动系统
根据牛顿的观点,机械系统的动力学是二阶的(其状态由位置向量 q(也称为配置向量)和速度向量以及(可能还有)时间给出。二阶控制动力系统的一般形式是:其中 u 是控制向量。定义 1.1 (欠驱动控制微分方程) 二阶控制微分方程描述如下:在状态和时间 t 中,如果所得到的映射是可射的:对于每一个,都存在一个能产生预期响应的,那么系统就是全驱动的。否则,就是欠驱动(状态在时间 t)。原创 2024-01-06 11:00:10 · 2984 阅读 · 0 评论 -
OCS2 入门教程(一)
OCS2 是专为切换系统优化控制(ptimalontrol forwitchedystems,OCS2)定制的 C++ 工具箱。该工具箱提供以下算法的高效实现:SLQ:连续时间域约束 DDPiLQR:离散时域约束 DDPSQP:基于 HPIPM 的多重打靶算法IPM: 基于非线性内点法的多重搜索算法SLP:基于 PIPG 的顺序线性规划算法OCS2 通过增强拉格朗日法(Augmented Lagrangian)或松弛障碍法(relaxed barrier methods)处理一般路径约束。原创 2023-12-17 15:20:37 · 6883 阅读 · 15 评论 -
OCS2 入门教程(六)- Double Integrator
双积分器示例是我们最简单的问题。它模拟了一个沿 x 方向移动的一维点质量。模型是线性的,成本函数是二次函数。目标点通过参考管理器模块设置为二次成本。原创 2024-01-21 06:00:00 · 2420 阅读 · 4 评论 -
OCS2 入门教程(五)- 从 URDF 到 OCP、配置求解器、MPC - Net
阻碍 MPC 在机器人任务中广泛应用的主要挑战之一是设置最优控制问题的负担。OCS2 提供了多个辅助类,用于定义一些常用模型、成本和约束条件,以减轻这一问题。为此,OCS2 提供了多个第三方软件包接口,如 RobCoGen、CppADCodeGen、Pinocchio 和 HPP-FCL。我们在此重点介绍 Pinocchio 接口。本页讨论的所有软件包都可以在元软件包 ocs2_pinocchio 中找到。原创 2024-01-09 11:10:07 · 2803 阅读 · 1 评论 -
OCS2 入门教程(四)- 机器人示例
OCS2 包含多个机器人示例。我们在此简要讨论每个示例的主要特点。原创 2024-01-06 11:20:15 · 3046 阅读 · 0 评论 -
OCS2 入门教程(三)- 最优控制模块
在本页中,我们将为您提供如何定义 MPC 问题的一些提示。在 OCS2 中,OptimalControlProblem 结构定义了优化问题的主要组成部分,即动力学、成本和约束条件。除此之外,您可能还希望为 MPC 提供一些参考轨迹、预定义模式计划(用于切换系统)和其他外部信息,如模型参数的更新(如在自适应控制设置中)、环境地图(如用于避免碰撞的 SDF 地图)等。所有这些都可以借助参考管理器(ReferenceManager)和求解器同步模块(SolverSynchronizedModule)来实现。原创 2024-01-05 18:50:37 · 2145 阅读 · 0 评论 -
MATLAB - 强化学习(Reinforcement Learning)
控制系统环境是表示动态系统的环境,其中的状态和观测通常属于无限(不可数)的数值向量空间。在这种环境中,状态转换规律是确定性的,通常是通过对所要建模的底层物理系统的动力学进行离散化推导出来的。请注意,在这些环境中,动作仍然可以属于有限集合。强化学习工具箱提供了多个预定义的控制系统环境对象,用于模拟双积分器或小车摆杆系统等动态系统。一般来说,每个预定义环境都有两个版本,一个是离散(有限)动作空间,另一个是连续(无限和不可数)动作空间。原创 2024-08-12 19:56:42 · 2410 阅读 · 0 评论 -
Humanoid Whole-body Control
我们拟举办的研讨会旨在为生物力学和机器人学这两个学科架起一座桥梁,尤其侧重于人体运动分析和仿人机器人的全身控制。将人体运动转化为仿人机器人是一个新兴的跨学科领域。在过去二十年里,传统的双足行走步态生成和基于动态模型优化的全身控制取得了长足进步,但也遇到了各自的局限性。近来,机器学习、计算机视觉和计算能力的进步使人类运动分析取得了显著进展,尤其是在复杂的技能动作方面。我们认为,从人体工程学和生物力学模型中汲取灵感,将人体运动分析与机器人的全身控制联系起来,是一个前景广阔的研究方向。原创 2024-06-01 00:43:29 · 794 阅读 · 0 评论