颤振:使用 GPS 确定车辆的速度



我想监控设备(手机,平板电脑,..(的速度,就像谷歌地图一样,它们以几乎精确的速度显示车辆移动的速度,延迟为几分之一秒。 如果可能,请告诉我。

是的,您可以使用geolocator插件来测量速度。它为您提供Position对象,您可以对其调用speed。例:

Geolocator.getPositionStream().listen((position) {
double speedMps = position.speed; // This is your speed
});

(可选(您还可以为其提供位置设置。例如:

var androidSettings = AndroidSettings(
// Change parameters to your liking.
);
var iosSettings = AppleSettings(
// Change parameters to your liking. 
);
var settings = Platform.isIOS ? iosSettings : androidSettings;
Geolocator.getPositionStream(locationSettings: settings).listen((position) {
double speedMps = position.speed;
});

这是当前有效的实现...

Geolocator.getPositionStream(
forceAndroidLocationManager: true,
intervalDuration: Duration(seconds: 3),
distanceFilter: 2,
desiredAccuracy: LocationAccuracy.bestForNavigation)
.listen((position) {
var speedInMps =
position.speed.toStringAsPrecision(2); // this is your speed
print(speedInMps);

如果您想要以公里为单位的速度:

速度以Km = 速度以Mps * 3.6为单位;

<小时 />

如何将米/秒转换为公里/小时?

方法1(扣除法(:

从逻辑上看整个事情,要将 m/s 转换为 km/h,将米除以 1000,然后将结果乘以 3600。

例如,要将 40 m/s 转换为 km/h:

  • 步骤 1:40 m/1000 = 0.04 km
  • 第 2 步:0.04 公里 * 3600 = 144
  • 结果:40 米/秒 = 144 公里/小时

为什么我们做这些行动而不是其他行动?因为首先我们需要将米转换为公里。为此,我们必须将它们除以 1,000,因为 1 m = 0.001 km。在这个阶段,我们将以公里/秒为单位获得结果。为了得到以公里/小时为单位的结果,我们必须将整数另外乘以 3600,因为 1 小时 = 3600 秒。

方法 2(更快(:

较短的方法是将 m/s 乘以 3.6,因为 1 m/s = 3.6 km/h。

示例:12 m/s * 3.6 = 43.2 km/h。

将公里/小时转换为米/秒

要快速将 km/h 转换为 m/s,只需将其除以 3.6。

示例:90 公里/小时/3.6 = 25 米/秒

最新更新