Microsoft Robotics Developer Studio VPL中的“加入连接到独立数据源”

时间:2013-03-09 08:39:15

标签: robotics-studio

我正在研究由一组实体制作的定制机器人。我正在尝试评估其重心和零力矩点,我需要每个实体的重心,然后应用重心的一般规则:

(身体重心的X坐标)*(身体总质量)

(实体1的重心X坐标)(实体1的质量) + ... + (实体n的重心的X坐标)(实体n的质量)

(重力中心的其他坐标也一样) 但为此我需要GPS传感器通知每个实体的重心位置,以及将所有这些传感器合并到“计算”块中执行的上述计算中的方法。 但问题是,当我尝试从不同的GPS传感器实例“加入”值时,弹出以下错误: “Join连接到独立的数据源。它永远不会完成。尝试修改你的连接。” (附图是VPL图的图像)。 https://docs.google.com/file/d/0B2w3mmBOvQsIWHBiR2NvUmxHUnc/edit?usp=sharing 有人请帮帮我。

1 个答案:

答案 0 :(得分:0)

问题

因为VPL无法知道两个数据源的预期数据速率,并且只有当所有分支上都有项目(然后消耗这些项目)时才会触发连接,有两个问题,一个是它可能永远不会触发,另一个是数据可能不同步(想象一下,如果两个数据源以1Hz和2Hz激发,则连接的每个分支上的第一个元素将随时间漂移)

解决方案

在你的图表中使用数据源来设置变量及其值(看起来你已经这样做了)

使用其中一个数据源(或其他一些定期通知)使用已设置为状态的最新值来触发计算。虽然您可能并不总是拥有最新的数据,但它始终是最新的

或者,您可以将合并放在当前具有连接的位置,并在任一数据源上使用通知来触发计算(再次,使用已设置为状态的最新值)