问题标签 [drake]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
37 浏览

python - 在 Drake:Python 中可以使用 AddJointActuator 吗?

我正在尝试使用 Python 构建 MultibodyPlant,而不是从 URDF 加载它。即,将 CPP 代码make_cartpole_plant.cc翻译成 Python。

我找到了所有 Python 绑定,除了AddJointActuator. 我在python doc中找不到这个函数声明。也许这个函数没有 Python 绑定?我想知道是否有办法从 Python 添加执行器。

这是我的代码:它有效。AddJointActuator但我不知道如何将执行器添加到我的购物车,因为我在 CPP 中找不到该函数的 Python 绑定。

0 投票
2 回答
224 浏览

drake - 使用 cmake 从源代码构建 Drake 时的问题

我正在尝试从源代码构建和安装 Drake,以获得对 Mosek 的支持。然而,我总是遇到麻烦。作为记录,我正在运行 macOS Catalina。

现在我的方法是这样的:

  1. 将 github 中的 drake 克隆到我计算机上的某个位置(来自https://github.com/RobotLocomotion/drake.git
  2. 安装先决条件./setup/mac/install_prereqs.sh
  3. 运行bazel build //...创建一个名为buildandcd build cmake ..然后make 的目录make install
  4. 在我使用 cmake 构建的 C++ 项目中,我将其添加到 CMakeLists.txt: link_directories(drakelocation/build/install/lib) include_directories(drakelocation/build/install/include)

但是,当我尝试构建我的项目时,我收到 Drake 无法找到 Eigen: 的错误'Eigen/Core' file not found。我能够通过添加来解决这个问题:

target_link_libraries(my_lib Eigen3::Eigen)到我的 CMakeLists.txt

我觉得这有点奇怪,因为我希望 Drake 在构建时包含 Eigen,但至少这让我能够更进一步。

在此之后,我收到一堆类型的消息: no member named 'signbit' in the global namespace

即,Drake 似乎突然失去了所有标准 C++ 库。我还没有能够解决这个问题,所以这是我目前卡住的地方。

您有什么建议,或者您之前遇到过类似的问题吗?

其他信息:

  • 使用find_package(drake)根本不适用于我当前的方法(cmake 无法找到 drake-config.cmake)。我在这里遗漏了完成这项工作所需的东西吗?cmake 期望在哪里安装库,我如何在那个地方安装它们?
  • 我也试过跳过整个bazel build //...步骤,直接进入cmake ..步骤,这似乎没有任何区别。
  • 在我运行的每一种不同的构建方法之间bazel clean --expunge,以确保没有任何东西从前一次运行中遗留下来。

谢谢!

0 投票
2 回答
44 浏览

python - 是否可以支持将 X_PF、X_BM 作为参数的 AddJoint 的 Python 绑定?

我正在尝试翻译make_acrobot_plant.cc成 Python。要添加elbow关节,我需要将X_PFandX_BM传入AddJoint(如此)。

这在 C++ 接口中受支持,如JointType. 但是目前的 Python 绑定只支持AddJoint不带X_PFandX_BM,有解决办法吗?

0 投票
1 回答
55 浏览

drake - 输入端口的索引是什么意思?

在 MIT6.832 HW2 "Cart-Pole: Linearization and LQR Balncing" 中,carpole 定义为:

稍后,carpole 的驱动输入端口设置为 0:

但是,输入端口的索引是 3,而不是 0,这让我很困惑。


这里一个额外的相关问题是,当定义一个新系统时(例如,继承自 VectorSystem),我们可以在哪里定义输入和输出端口?

我一直在研究 HW1 的 Cartpole 模型,发现端口的使用非常混乱。有时它使用get_xxx_port(),而在其他情况下它使用get_xxx_port(0),括号内有一个特定的端口号。

0 投票
1 回答
83 浏览

drake - 使用 Drake 和 Mosek 的 SOS 多项式产生错误代码 1501

我正在尝试使用 SOSPolynomial 解决数学程序。我正在使用 Mosek 从源代码编译的 C++ 中运行 Drake。

MathematicalProgram 包含二次成本函数和一些等式约束,在Solve()不添加 SOS 多项式的情况下调用时可以正常工作。在查看时result.get_solver_id(),我发现:“Equality constrained QP”,正如预期的那样。

但是,在调用 时,在通过(作为决策变量)Solve()添加 SOS 多项式后,程序返回找不到解决方案。在查看 中找到的值时,我发现和。prog.NewSosPolynomial({t}, degree)tresult_.get_solution_result()solution_status = falserescode = 1501

这里rescode = 1501意味着:“问题包含非线性项圆锥约束。请求的操作不能应用于此类问题。”。但是,通过在添加 SOS 多项式之前检查 的值result.get_solver_id(),很明显问题中没有其他非线性约束。

我在这里遗漏了什么,还是这是一个错误?

0 投票
3 回答
227 浏览

drake - pydrake URDF 设置动态参数

我在 URDF 文件中设置碰撞的动态属性时遇到问题。

我看到使用了标准的 ode 标签,并且还有一个新的特定 drake drake github pull requeset xml 标签。

这是我在 urdf 中定义碰撞的方式。该对象是一个简单的盒子。

pydrake代码如下:

我检索材料属性并打印它们。输出是:

似乎解析有问题,或者我做错了什么。

0 投票
1 回答
98 浏览

yaml-cpp - meshcat_visualizer_test 无法获取存储库“yaml_cpp”

我正在尝试按照所述文件顶部的注释说明运行 drake/bindings/pydrake/systems/test/meshcat_visualizer_test.py,但我不熟悉如何添加 yaml-ccp,我认为这是导致错误。我已经克隆了 drake repo 并配置了 pydrake,并且能够运行服务器(第一个必需的命令),但是如果缺少 yaml-cpp 包,我不知道如何添加它。

0 投票
1 回答
143 浏览

drake - 构建 Drake Python 绑定时出现 Clang 格式错误

我正在尝试为 Drake 安装 Python 绑定,但遇到了问题。我已经按照从“Python 的二进制安装”部分到“构建 Python 绑定”的步骤进行操作。我正在运行“make -j”步骤并收到以下错误:

输出错误的完整回溯是:

有没有人对可能导致问题的原因有任何见解?谢谢您的帮助!

0 投票
1 回答
46 浏览

drake - Pydrake 中 FirstOrderHold 中第一个参数的含义是什么?

一个例子是

我想知道这个 [0., 4.] 是什么意思。我检查了文档:FirstOrderHold(breaks, samples),但仍然对“休息”感到困惑。

0 投票
1 回答
3309 浏览

python - 为什么我会得到`SystemError:导入“pydrake”东西时返回带有错误集的结果?

FTR:这是我对 Drake Slack 对话的“公开档案”。


2019 年 9 月 17 日下午 2:44

任何想法从哪里开始?它只在导入时发生pydrake.geometry,我可以先导入pydrake、、、等,这些都可以正常工作pydrake.commonpydrake.multibodyPython 3.6 / Ubuntu 18.04 / 当前大师

15 条回复

eric.cousineau 7 个月前

Python 3.6.9 |Anaconda, Inc.| (default, Jul 30 2019, 19:07:31)

我认为这Anaconda部分可能是可疑的?(请参阅此处顶部的警告:https ://drake.mit.edu/python_bindings.html

eric.cousineau 7 个月前 以前有用 吗?

eric.cousineau 7 个月前 你可以尝试通过/usr/bin/python3而不是 Anaconda 来运行它吗?

gizatt 7个月前 我通过conda稳定使用了一段时间,这是新的

eric.cousineau 7 个月前 嗯...你是用 Conda 自己构建的,还是下载预构建的?你知道它最后一次工作是什么时候吗?

eric.cousineau 7 个月前 (更具体地说,master 的 SHA1?)

gizatt 7 个月前, 我使用 conda python 构建它(我在那里运行的是同一个),尽管没有 conda 环境来源——这在一段时间内工作正常。破坏它的不是德雷克的升级——我怀疑我这边的一些配置调整揭示了一些东西。当我在德雷克上时它坏了……也许是一周大?我升级了,但不知道我从什么升级(已编辑)

gizatt 7 个月前 抱歉,它是/usr/bin/python3.6在没有 conda 环境来源的情况下构建的。然后我获取一个 conda env 并导入 drake 并将它与 conda python 一起使用,直到现在都很棒

eric.cousineau 7 个月前 嗯...不知道如何在这里提供帮助...您是否以兼容conda的方式使用?pip您可以只做 purevirtualenv并完全避免 conda 吗?(我们正在使用pyro和其他东西pip,它工作得很好。)(编辑)

eric.cousineau 7 个月前python3 --version另外,在 Ubuntu(我的机器上是 3.6.8)和 Conda(你的机器上是 3.6.9)上 可能有区别吗?(已编辑)

gizatt 7 个月前 我在 conda 中对版本进行了降级,现在版本至少是一致的

gizatt 7 个月前 我一次移动了几件东西,所以我还不确定罪魁祸首,但我已经确定,如果我尝试使用我的主目录pydrake.geometry中的任何一个 python3.6 版本导入,我就会遇到问题,但如果我从其他任何地方做,那很好。(已编辑)

gizatt 7 个月前 我只是呃...把这归结为一些导入路径 bs 并称之为解决?

eric.cousineau 7 个月前 SGTM!虽然这听起来像是一个神奇的路径阴影问题,就像pydrake你的主目录中有一个文件夹?(已编辑)

eric.cousineau 7 个月前 (此外,一些软件包订阅了从安装*.pth文件的邪恶setup.py或什么东西摆弄sys.path......所以也许这取决于解释器从哪里开始?)