问题标签 [inverse-kinematics]
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.
python-3.x - Dynamic Camera Caliberation OpenCV python3
I am planning on making a robotic arm. I have a camera mounted on the arm. I am using Opencv with python3 to do IP.
I want the arm to detect the point on the ground and the servos to move accordingly. I have completed the part of detection and calculating the world coordinates. Also, the inverse kinematics that is required.
The problem here is that I have calibrated the camera for a certain height (20 cm). So, the correct world coordinates are received at the height of 20 cm only. I want the camera to keep correcting the reading at every 2s that it moves towards the ground (downward).
Is there a way that I can do the calibration dynamically, and give dynamic coordinates to my arm? I don't know if this is the right approach. If there is another method to do this, please help.
python - 导入 URDF 抛出 ros::TimeNotInitializedException
我正在尝试使用trac_ik inverse kinematic solver与 NAO (V50) 一起工作。我需要使用修改后的限制,因为 NAO 在他身上添加了皮肤,这改变了限制。尝试使用预先生成的nao.urdf而不进行修改,但这会引发相同的错误。当我查看这个错误时,我发现它可能与 tf library 有关。他们包含的 pr2 的 trac_ik 示例代码工作得很好。当我认为这是 trac_ik 的错误时,他们回答说是 ROS 使用错误。
结束于:在抛出 'ros::TimeNotInitializedException' 的实例后调用终止 what(): 在创建第一个 NodeHandle 或调用 ros::start() 之前不能使用 ros::Time::now()。如果这是一个仅使用 ros::Time 并且不通过 ROS 进行通信的独立应用程序或测试,您也可以调用 ros::Time::init() Neúspěšně ukončen (SIGABRT)(核心转储 [obraz paměti uložen])
还尝试在开始时使用 rospy.init_node("text") ,但这也不起作用。使用 ROS 旋律。如何找到导致此问题的原因/正确的 ROS 用法是什么?
编辑:为什么投反对票?
c# - 如何将旋转与逆运动学结合使用?
我是 Unity 的新手,我正在使用逆运动学做一个项目,一方面(用手指),我正在接收硬件旋转数据(四元数),如果我唯一的输入是如何移动我的手指是旋转,最后一个手指上的四元数,手腕上的另一个!我在这里使用 Dogzer 的反向运动学示例链接!
3d - 球窝关节的雅可比矩阵?
我正在尝试将其中一种 IK 方法应用到我在 OpenGL 中制作的人体骨骼上,该方法使用雅可比矩阵的伪逆矩阵。我一直在使用以下链接, https://www.math.ucsd.edu/~sbuss/ResearchWeb/ikmethods/iksurvey.pdf
我了解到雅可比矩阵条目的计算非常简单(链接的第 5 页),使用等式
但是,这个方程只适用于有一个自由度,旋转轴为 v_j 的情况。对于像球窝关节这样的3个自由度的情况,如何设置雅可比矩阵的条目?
任何帮助,将不胜感激!
unity3d - 附加到游戏对象的统一角色
我对 Unity 很陌生,有一件事我想不出如何制作它,我也无法准确信息,所以我在这里。(对不起,我的英语不完美)
我想做的是将角色附加到游戏对象上。在我的游戏中,玩家(用户)将控制或操纵游戏对象,并且附加到游戏对象的角色看起来就像是骑乘或驾驶游戏对象一样。(为了帮助你理解,也许你可以想象玩家控制一个滑板,上面有一个角色)
到目前为止,我尝试了 2 种方法 - 1. 我将角色作为游戏对象的子对象,并为角色赋予动画,但我发现它看起来不太自然。2. 我制作了一个布娃娃,并尝试通过游戏对象和角色的脚之间的固定关节将它附加到游戏对象上,但在游戏模式下,只有布娃娃的脚随着游戏对象移动。
所以我想知道是否有一个好的方法来做到这一点。任何人都可以给我一个建议吗?我会很感激的。提前致谢。
inverse-kinematics - IK 的雅可比矩阵的两个伪逆矩阵之间的区别?
嗨,我正在尝试在我的骨架系统中实现 IK,并且正在在线阅读一些文章,其中一种方法是使用雅可比矩阵的伪逆矩阵。但是,我已经看到了伪逆的 2 种形式,我想知道这两种表示的区别是什么。
第一种形式是 J+ = ((Jt*J).inverse()) * Jt
第二种形式是 J+ = Jt * ((J*Jt).inverse())
老实说,我什至不确定他们是如何得到第二种形式的,我目前只能推导出第一种形式。
任何帮助,将不胜感激!
c++ - 雅可比矩阵的 5 DOF 逆运动学
我正在尝试将 IK 应用于我的人体骨骼的手臂,肩部位置固定,只有手臂在移动。
手臂的FK是这样的
这是我的 IK 解算器功能
我认为问题出在setOrientation(Q_desired);
功能上。Q_desired = Q_desired + deltaQ
更新每个循环中的自由度角度,因此我相应地更新每个关节的旋转矩阵。这是setOrientation(Q_desired)
功能。
我很好奇是否应该在那些旋转轴上应用角度旋转(应该是全局轴,而不是局部轴?)我没有发布 getJacobian() 方法,因为我认为它是正确的,但如果这段代码没有缺陷。任何帮助,将不胜感激。提前致谢!
编辑 这就是我获得手臂的雅可比矩阵的方式。请注意,只有肩部是球窝关节,其余只是基于局部 x 轴的旋转关节。
我对雅可比矩阵的每一列都使用了这个方程。轴应该在全局坐标中计算,所以这就是我在代码中所做的。
opengl - 具有末端执行器方向的反向运动学?
我正在尝试实现逆运动学求解器,但这次即使使用末端执行器的方向。当末端执行器只需要该位置时,我成功了。
我了解到,在这种情况下,您可以像这样构造雅可比矩阵,其中 w_i 是全局空间中的第 i 个旋转轴,p_i 是从第 i 个轴到目标位置的向量。
问题是当我必须在下面的等式中计算 x_dot 时。
当 x_dot 只考虑位置并且没有方向时,这非常简单。但是现在当 x_dot 需要 6 个条目(位置、方向)时,我不知道应该为方向部分做什么。我一直在使用欧拉角来表示我的程序中的方向。
我现在的想法只是用目标的偏航、俯仰和滚动减去当前末端执行器的偏航、俯仰和滚动,然后将每个结果除以 100。但这似乎有点复杂。有没有更好的方法来解决这个问题?任何想法将不胜感激!