OCS2工具箱

2023-11-06 05:12
文章标签 工具箱 ocs2

本文主要是介绍OCS2工具箱,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

实时系统优化控制工具箱
参考视频:ETH 最优控制/MPC 实时求解器 OCS2 使用入门
参考文档:OCS2 求解器入门

选择OCS2

OCS2 是一个 MPC 实时求解器 (SLQ/iLQR),依赖 Pinocchio 构建机器人动力学模型,采用 RViz 或者 RaiSim 验证 (Rollout)。

OCS2介绍

(1)最优控制实时系统
(2)C++库:fast MPC 在高维系统
(3)提供了一个统一接口:先进的优化控制求解器
(4)提供了ROS接口,Python接口,通过CppADCodeGen实现自动区分和代码生成,与 Pinocchi等高性能刚体库的接口
(5)缓存友好:运动学和动力学能被快速计算并且重用在cost,约束,dynamics…
(6)在机器人平台上证实可用:球形机器人,固定/移动机械臂,四足机器人

OCS2能求解的问题

实时最优控制问题
定义:时间触发的最优控制序列问题
在这里插入图片描述

OCS2求解器和他们的特征
  • DDP微分动态规划:
    (1)连续时间SLQ (2)离散时间iLQR
  • SQP:Multiple shooting 多重动态规划
  • Path INtegral Stochastic OC (PISOC)
    算法拓展:
    处理实时问题
    处理约束:(1)状态输入等式约束(2)状态(only)等式和不等式约束(松弛屏障或增广拉格朗日量)
    包含频域约束,如致动器带宽

如何对于给定的问题建立MPC

优化控制问题接口
在这里插入图片描述

定义优化控制问题

(1)定义好优化控制compoents
(2)优化控制问题三步定义:

设置控制compoents为优化控制问题
设置/共享 ReferenceManagerInterface
(可选)设置/共享 SolverSynchronizedModule

对于机器人例子,我们在一个名为RobotInterface的样板类中执行这些操作,检查这些例子:

  • Ballbot接口
  • CartpoleInterface
  • DoubleIntegrator接口
  • MobileManipulator接口
  • LeggedRobot接口

构造最优控制问题
设置如下模块:
Cost,Soft Constraints, Hard Constraints, Dynamics, Pre-computation
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
OCS2缓存友好:在cost,constraints,dynamics和他们的近似值能够共享计算量。
使用PreComputation::request弥补一般不能弥补的计算量。

同步模块
在这里插入图片描述
MPC闭环
在这里插入图片描述

如何定义问题

OCS2机器人示例建模工具和界面

常见的机器人
一般:推杆、Double-Integrator
特殊的例子:球形机器人、四旋翼无人机
复杂、拓展的例子:机械臂、腿式机器人
在这里插入图片描述
从URDF到最优控制(OCP)问题
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

这篇关于OCS2工具箱的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/354659

相关文章

安卓玩机工具------小米工具箱扩展工具 小米机型功能拓展

小米工具箱扩展版                     小米工具箱扩展版 iO_Box_Mi_Ext是由@晨钟酱开发的一款适用于小米(MIUI)、多亲(2、2Pro)、多看(多看电纸书)的多功能工具箱。该工具所有功能均可以免root实现,使用前,请打开开发者选项中的“USB调试”  功能特点 【小米工具箱】 1:冻结MIUI全家桶,隐藏状态栏图标,修改下拉通知栏图块数量;冻结

PSINS工具箱函数介绍——pvtplot

关于工具箱 pvtplot是绘图函数,用于绘制位置、速度、时间信息 本文所述的代码需要基于PSINS工具箱,工具箱的讲解: PSINS初学指导:https://blog.csdn.net/callmeup/article/details/137087932 使用方法 使用例程: pvtplot(pvt, 't0h'); 例程实践 运行代码 运行程序“test_GPS_PVT.

【机器人工具箱Robotics Toolbox开发笔记(二十)】机器人工具箱SerialLink I类函数参数说明

机器人工具箱中的SerialLink表示串联机器人型机器人的具体类。该类使用D-H参数描述,每个关节一组。SerialLink I类包含的参数如表1所示。 表1 SerialLink I类参数 参  数 意    义 参  数 意    义 plot 显示机器人的图形表示 jacobn 工具坐标系中的雅可比矩阵 plot3D 显示机器人3D图形模型 Jacob_dot

Easy Voice Toolkit - 简易语音工具箱,一款强大的语音识别、转录、转换工具 本地一键整合包下载

Easy Voice Toolkit 是一个基于开源语音项目实现的简易语音工具箱,提供了包括语音模型训练在内的多种自动化音频工具,集成了GUI,无需配置,解压即用。 工具箱包括 audio-slicer、VoiceprintRecognition、whisper、SRT - to - CSV - and - audio - split、vits 和 GPT - SoVITS 等。这些优秀

【机器人工具箱Robotics Toolbox开发笔记(二)】Matlab中机器人工具箱的下载与安装

Matlab机器人工具箱(Robotics Toolbox)可从Peter Corke教授提供的网站上免费下载。网址为:http://www.petercorke.com/Robotics_Toolbox.html。 图1 网站所提供的机器人工具箱版本 在Downloading the Toolbox栏目中单击here按钮进入下载页面,然后在该页面中填写国家、组织和身份等信息,进入机器人工

【机器人工具箱Robotics Toolbox开发笔记(四)】 机器人位姿变换之位姿变换函数

机器人学的位姿变换相关内容,可以采用下列函数来进行计算。 (1)rpy2r() R = rpy2r (roll, pitch, yaw, options)能够根据一组回转角、俯仰角和偏转角求出对应齐次变换矩阵中的旋转矩阵R(3x3),其中3个角度rpy = [R, P, Y]分别对应于关于x、y、z轴的顺序旋转。 R = rpy2r (rpy, options)与前者相同,但是输入的是一个向量

野兔在线工具箱系统最新版本V4.0.1更新

兔在线工具箱系统,采用最新ThinkPHP8框架开发完成,也是基于YETUADMIN开发的工具箱系统,这次野兔在线工具系统更新,更新了几个新的功能模块,和已知的问题,修复系统部分功能。 程序开发 程序名称:野兔在线工具箱系统 程序开发:PHP+MySQL+tp8 程序源码:100%开源,支持任意二开,商用 程序支持:电脑版,小程序版,手机版,微信版,APP版本(Android,鸿蒙,IOS

CC工具箱使用指南:【整库计算BSM】

一、简介 这是一个批量计算【BSM】的小工具。 一般的数据库要素或表格都有一个【BSM】字段,用来标识唯一值。 【BSM】的计算一般都有同样的规律,前缀+中间的填充数字+OBJECT码。 二、工具参数介绍 在工程目录栏中,右键点击要处理的GDB数据库,选择【CC工具箱】组里的【整库计算BSM】工具: 即可打开下面的工具框界面: 1、输入前缀 这个前缀看数据库成果的要求

PDF Guru Anki - 支持 PDF 处理和 Anki 制卡的多功能工具箱

DF Guru Anki,这是一款能够大幅提升学习和办公效率的工具。 不仅能够帮助我们快速处理 PDF 文件,还能够高效管理各种学习资料,轻松制作 Anki 卡片。 PDF Guru Anki 支持 PDF 合并、拆分、旋转、加密等基本操作,还能够处理水印、书签以及进行 OCR 文字识别,快速提取文档内无法直接复制的内容。 软件的另一大亮点就是它的智能 PDF 制卡功能。PD

基于SVM的手势识别,SVM工具箱详解,SVM工具箱使用注意事项

目录 支持向量机SVM的详细原理 SVM的定义 SVM理论 Libsvm工具箱详解 简介 参数说明 易错及常见问题 SVM应用实例,基于支持向量机SVM的手势识别 代码 结果分析 展望 摘要 基于支持向量机SVM的手势识别,SVM原理,SVM工具箱详解,SVM常见改进方法 支持向量机SVM的详细原理 SVM的定义 支持向量机(support vector machines, SVM)