Questions tagged «imu»


5
如何从陀螺仪和加速度计输入确定位置?
我有一个3轴加速度计和2轴陀螺仪。我打算测量仅在X和Z轴上移动的东西。我听说过使用卡尔曼滤波器来平滑加速度矢量,但是对于该主题的完整初学者,我找不到很好的教程。另外,我知道我可以对加速度进行两次积分以获得位置,但是如何使用有限数量的采样加速度矢量来做到这一点呢?对于这两个主题的初学者,我都希望能获得指向不错的教程的链接。

2
磁力计动态校准
我正在研究作为IMU一部分的磁力计AK8975。这对我来说似乎很棘手。该芯片提供3D向量作为输出,描述地球上任何地方或附近的地球磁场。 我尝试了两种航向计算算法:一种很简单arctan(-y/x),另一种是倾斜(俯仰)和倾斜(横滚)抵消的数学运算,如下所述。倾斜度和倾斜度都给出错误的输出。 当旋转地球时,使用两个算法中的任何一个,我都能获得正确的航向(使用简单的可用开放学习资源),使地球保持水平。 我尝试校准软铁和硬铁错误。我可以用3D绘制它并显示一个完美的3D球体。仍然不适用于倾斜或偏角。 任何指针都会有所帮助。 代码及其实现如下: void Compass_Heading() { double MAG_X; double MAG_Y; double cos_roll; double sin_roll; double cos_pitch; double sin_pitch; cos_roll = cos(roll); sin_roll = sin(roll); cos_pitch = cos(pitch); sin_pitch = sin(pitch); //// Tilt compensated Magnetic filed X: MAG_X = magnetom_x*cos_pitch + magnetom_y*sin_roll*sin_pitch + magnetom_z*cos_roll*sin_pitch; //// Tilt compensated Magnetic …

1
磁力计∞形校准
在移动电话和其他使​​用3轴电子罗盘的设备中,使用∞/ 8 / S形运动来校准磁力计,如这些视频所示。 为什么要执行此动作,其理论是什么,任何人都可以提供一些示例C代码来实现它吗? 您必须经历另一个包含更多信息的类似问题。 有关此特定问题的一些其他信息:该平台是使用AVR Studio 5的8位AtMega32。 到目前为止,我已经尝试过:我尝试将平均值除以制作形状的磁力计的矢量值的2。思考可能有助于计算偏移量。我认为形状的两个相同部分/侧面如何抵消地球的磁场并给出偏移值。我可能错了。但是特别是对于基于形状的校准,这是我目前所在的位置。我认为校准是通过这种方式进行的。这样做的目的是找出这样做的效果吗? 好的代码,通过它我可以计算出偏移量,然后再从原始3D矢量中简单地减去这些偏移量。我可能完全错了,没有任何解释。看完视频和球面上绘制的数据后,某种程度上加快了我的想法,我将这种想法用于方程式。B) 码: 的Read_accl();和Read_magnato(1);功能正在阅读的传感器数据。我希望代码可以自我解释。希望明智的ppl一定会以更好的方式使用它。:\ void InfinityShapedCallibration() { unsigned char ProcessStarted = 0; unsigned long cnt = 0; while (1) { Read_accl(); // Keep reading Acc data // Detect Horizontal position // Detect Upside down position // Then detect the Horizontal position …
15 calibration  imu 

4
使用MEMS传感器进行航位推算的极限
我正在尝试追踪相对于一个人躯干的身体部位。我看到了很多有关使用MEMS加速度计和陀螺仪进行航位推算的问题,它们证实了我的怀疑,即各种因素极大地限制了它们在这类应用中的用途,但我正在寻求这些限制的说明: 这些限制到底是什么? 其他答案已经解决了为什么存在这些限制的问题。自然地,所讨论系统中的零件的规格以及什么被视为系统的“可接受的误差”都将改变确切的限制,但是在时间或距离方面,我可以预期航位推算会起作用吗?我很清楚,长距离(几码左右)的误差对于大多数实际用途来说太大了,但是在几英尺之内呢? 我该怎么做才能改善这些限制? 我目前正在考虑使用加速度计和陀螺仪。我可以在系统中添加哪些其他传感器以提高错误率?我知道可以在更长的距离上使用GPS,但是我怀疑任何消费类电子产品的GPS是否具有足够的分辨率可以为我提供帮助。 此外,在改进传感器的基础上,改善这些限制的唯一途径似乎是达成共识,即提供一个不受错误影响的参考。一些系统使用照相机和标记器解决此问题。便携式/可穿戴设备可以提供哪些参考点? 我已经看到了使用无线电波来精确测量长距离的方法,但是我无法确定使用“现成的”组件在这么小的规模(就测得的距离而言)中该系统是否准确。

4
带加速度计和陀螺仪的航位推算。可能?
我有一个3轴加速度计和3轴陀螺仪。我的任务是使用这种硬件开发航位推测系统。 本质上,我需要开发一些代码来实时跟踪电路板在3d空间中的位置。因此,如果我从桌面上的木板开始并将其向上抬起1m,我应该能够在屏幕上看到该运动。也需要考虑旋转,因此,如果我将板颠倒通过相同的动作进行一半,它仍应显示相同的1m向上结果。对于几秒钟内的任何复杂运动,也应保持相同的状态。 忽略执行计算和旋转向量等所需的数学运算,即使使用如此低成本的设备,这是否有可能?据我所知,我将无法以100%的精度去除重力,这意味着我相对于地面的角度将关闭,这意味着我的矢量旋转将关闭,这将导致错误的位置测量。 我也有加速度计和陀螺仪偏置产生的噪声。 能做到吗?

1
连续线性加速度下的AHRS算法
我尝试了几种算法来获得连续线性加速度和振动(小于0.4g,频率小于10HZ)下的俯仰,侧倾和偏航。它们均未提供良好的结果,因为读数可能漂移或受线性加速度的影响太大。我要实现的是,当外部加速度小于+ -0.4g时,俯仰和横滚的误差应小于+ -1deg。 我已经尝试过这些算法: 麦格威克算法。当Beta增益设置得很高时,收敛速度很快,但是角度更容易受到线性加速度的影响。我将其调低,并将线性加速度下的误差降低至+ -0.5deg。但是,如果振动是连续的,则读数将漂移,并且需要很长时间才能收敛到真实值。这是有道理的,因为在线性加速度下,陀螺仪受到更多的信任,并且计算出的角度随着陀螺仪积分的漂移而漂移。 Mahony的算法。与Madgwick的相反,无论我为Ki和Kp使用什么值,它都不会漂移。但是,它始终受线性加速度的影响。(误差大于+ -6deg) 传统卡尔曼滤波器。在调整那些巨大的R和Q向量上已经花费了很多时间。到目前为止,它具有与Mahony相同的性能。 我正在使用剃刀IMU。我知道使用廉价的传感器不可能获得与这一传感器相同的结果。 还有更多类似UKF的选项,但是很难理解或实施。 任何建议都欢迎。
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.