选择用于推算的加速度计


11

我以前从未使用过加速度计,但是我知道它们带有I2C,SPI和模拟输出。如果选择使用I2c或SPI设备,由于通讯时间,我会积累错误吗?

与使用I2C相比,对模拟信号的快速采样是否可能使我获得更准确的推论位置?

这是真的吗

  1. 在房间里移动的机器人
  2. 在室外地形中移动的机器人可能会在斜坡上滑落。

另外,我没有G的感觉。我试图用握在拳头中的手机操作快速移动手,结果发现读数达到20m / s 2饱和。如果它被另一个发胖的机器人击中或被快走的人撞到,我能期望我的机器人有什么体验?

Answers:


5

增加传感器的采样频率不会提高其准确性或精度。这是您通常无法更改的传感器功能。如果您尝试仅通过积分加速度来估计位置,则肯定随着时间的流逝而累积误差,因为每个传感器都是嘈杂的。如果要使用加速度计确定位置或速度,则应将其与其他一些实际测量位置(甚至精度较低)或速度的传感器组合。然后,您可以将这些不同的传感器信号与卡尔曼滤波器组合在一起,以获得对您所在位置以及移动速度的合理估计。

考虑G力,请考虑1 G为9.81 m / s ^ 2,这对于小型业余机器人(至少对于室内机器人)而言对我来说似乎很多。根据引擎的强大程度,户外可能会是另一回事。20m / s ^ 2的饱和度就足够了。


4

考虑您的控制回路速度。典型的快速控制环路速度为1kHz。有些机器人使用的速度更快,有些机器人使用的速度更慢。通常,您的控制回路速度会比您实际需要的速度要高。

因此,每个控制帧持续1000us。在此控制范围内,您需要:

  • 采样传感器
  • 执行控制计算
  • 将新的输出发送到电机

只要您能在规定的时间内轻松完成所有这些操作,就不会有任何问题。那么读取加速度计需要多长时间?如果是使用400kbps I2C的3轴设备,则可能需要大约160us的时间来读取数据。这样一来,您就需要840us的时间来执行计算和更新电动机。甚至8位PIC都可以管理。


关于G部队。在撞击过程中,它们可能很高。例如,您认为破坏硬盘驱动器需要花费多少?大概不会那么多。好吧,我最近说过一个硬盘驱动器的额定最大加速为75G。因此,期望两个机器人碰撞至少产生几G。这是不可能精确估计的,因为它在很大程度上取决于机器人的机械设计。如果它们都像斯诺克球一样完全坚固,那么您可以期待很高的加速度。如果它们具有某种柔性外壳,则将大大降低加速度。但是,问题是,您真的需要知道撞击过程中加速度的实际值吗?


1

根据您的问题,我认为您正在尝试从加速度计获得位置。看看什么样的错误您之前期望过,然后可能会重新考虑。位置估计有很大的误差,主要是由于方向的不确定性。在船舶,飞机,火箭等中的应用使用非常昂贵的高精度导航级IMU。您的问题归结为等待时间并不是一个大问题。更相关的是其他传感器(例如陀螺仪)之间的同步。加速度计通常不用于位置估计(在某些情况下有帮助,但仅在短期内有效),而是用于补偿方向估计中的陀螺仪漂移。您也可以直接使用它们来估计方向,但是动态加速度会干扰您的估计。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.