计算加速度(驾驶汽车)

Posted

技术标签:

【中文标题】计算加速度(驾驶汽车)【英文标题】:Calculate Acceleration (Driving a Car) 【发布时间】:2011-11-16 19:48:59 【问题描述】:

我正在尝试复制应用程序“Dynolicious”之类的加速度计算,但我不知道该去哪里进行计算。我是使用Core Motion 还是使用其他数字进行计算?

我曾尝试使用Core MotionuserAcceleraion 值,但它与我所寻找的完全不同。

coreMotion = [[CMMotionManager alloc]init];
[coreMotion startDeviceMotionUpdates];

//then every second it updates my label...

NSString *accel = [NSString stringWithFormat:@"%f", [[coreMotion accelerometerData]acceleration].x];
accelerationLabel.text = accel;

即我希望我的值像 0.4、-0.4 等一样。

【问题讨论】:

【参考方案1】:

您可能需要考虑低通滤波(如 this SO post 所示),这实际上是 Apple 的指南(请参阅事件处理编程指南的 Isolating the Gravity Component from Acceleration Data)

如果您使用加速度计数据来检测当前 设备的方向,您需要能够过滤掉该部分 由重力引起的加速度数据的一部分 由设备运动引起的数据。为此,您可以使用 低通滤波器,以减少突然变化对 加速度计数据。得到的过滤值然后反映 更恒定的重力影响。

您还可以查看“从加速度数据中分离瞬时运动”部分

如果您使用加速度计数据仅检测即时运动 的设备,您需要能够隔离运动的突然变化 来自重力的恒定作用。你可以用高通来做到这一点 过滤器。

它接着给出了一个简单的实现来完成这个。

【讨论】:

【参考方案2】:

Apple 在http://developer.apple.com/library/ios/#documentation/EventHandling/Conceptual/EventHandlingiPhoneOS/MotionEvents/MotionEvents.html 获得了一些关于收集加速信息的好文档

看起来您需要设置加速度计,然后使用委托方法来读取数据。

【讨论】:

以上是关于计算加速度(驾驶汽车)的主要内容,如果未能解决你的问题,请参考以下文章

Java案例:根据速度计算刹车的安全距离

云计算未来可以满足自动驾驶汽车的需求吗?

阿里云 ACK@Edge 助力元戎启行加速进入自动驾驶规模化生产

阿里云 ACK@Edge 助力元戎启行加速进入自动驾驶规模化生产

自动驾驶“稳打地基”,小鹏汽车基于阿里云建自动驾驶AI智算中心算力可达600PFLOPS

禾多科技与RTI达成合作,加速自动驾驶在中国量产落地