bob体育官方平台
当前位置: bob体育官方平台 > 办公软件 >
Google将Firebase性能监控引入Web应用程序

垃圾管理是现代城市一个非常有挑战性的任务,每个地区都有其独特的垃圾产生模式,但无论产生垃圾的种类和数量如何变化,优化垃圾的收集方式是降低成本、保持城市清洁的重要手段。

截至2018年10月,谷歌的移动和网络开发平台Firebase拥有18款产品。这听起来可能很多,但试着告诉谷歌。在过去的六个月里,山景城公司说,它已经发布了100多个新的Firebase功能和改进。在它的第一天I/O 2019年本周的开发者大会上,谷歌详细介绍了即将推出的增强功能。

图片 1

对于一些城市来说,由于不能安装大型垃圾箱,这项任务变得更加困难,比如阿姆斯特丹,在市中心的大部分地区,垃圾收集依赖于市民和游客每周两次将垃圾袋投放到指定的收集点。

图片 2

摘 要: 随着交通的便利,自驾车出门游玩已经成为常事,人们对导航的需求也日渐强烈。市面上的导航以线框图的方式为主,而这种方式比较适用于城市内部的导航,当有需要去郊区或者山地野外等活动时这种方式就显得力不从心。而基于Google Earth的GPS导航能有效地满足对这些需求。在Google Earth免费版本上,利用Google Earth的KML,实现GPS导航和轨迹记录。系统由三个部分组成:GPS接口,实现与GPS模块之间的通讯;通过内嵌Web服务器实现与GoogleEarth之间的通讯;基于预定轨迹的导航功能,实现偏离预定轨迹时的报警。1 绪论随着科技的发展车辆的普及,人们对GPS实时导航的需求变的越来越突出。随之出现了,许多GPS实时导航系统,这其中有软硬件集成一体的GPS导航设备,也有基于其他GPS设备的软件系统。而所有的这些GPS导航几乎都是以线框图为主。线框图的方式比较适用于城市内部的导航,当有需要去郊区或者山地野外去探险等活动时,这种方式就显得力不从心了。因为这些地方的地图信息少,图示比较粗糙,其次,它提供的时线框的方式去描述地理,显然不能很深刻的反应该地的地貌特征,比如海拔,山野等。而且为了及时更新维护这些线框图带来的代价也时很大的。而这些需求的信息可以在卫星地图上找到。与此同时Google公司在近些年出来的Google Earth软件,是一款十分优秀的卫星地图服务软件,它免费提供的卫星地图精度很高。大部分地区的地区都比较清晰,特别是各个城市的照片,可以清晰的看到马路上的车辆。在中国卫星图像里,一线城市以2009、2010年拍摄的为主,二、三线城市以05、06年的库存图片为主,能较好地满足导航的要求。在Google Earth Plus以上的收费版本中还提供了GPS接口,能实时地显示当前位置的地图和移动轨迹。而在免费版本中不带这个功能。因此,设计一个基于Google Earth的GPS导航系统也是很有实际意义的。通过该系统,完成对Google Earth软件的控制,从而达到基于GPS的实物图导航的目的。此外近期, 基于Google Earth的开发已经很多了, 例如, 利用Google官方提供的3D图形绘制工具,绘制各种建筑或者树木等物品,可以上传摆置在Google Earth上面作为产品展出,也可以设计各种树木摆放到山林的平面卫星照片上,从而勾勒出具有3D特性的卫星地图,便于防止森林火灾抢救等应用。2 需求分析2.1 功能需求本系统由如下的四部分构成:1)GPS导航系统与GPS设备的通讯模块。2)WEB服务器,接受来至于Google Earth的Network Link的请求,响应当前的坐标及轨迹信息。3)预定轨迹的导航,根据预定轨迹对位置进行检测,实现偏离预定轨迹时的报警功能。4)提供轨迹管理和与其他GPS数据交换的工具。2.2 数据流分析如图1,在整个系统中,数据的流动比较的重要,各个功能之间的数据信息的交互都是数据的流动。GPS硬件设备是个数据源,不停的接受来自卫星的信号,通过计算,组织成有格式的数据流传递到本系统,而本系统对这些GPS信息进行读取,并与系统内部的其他的功能配合完成一系列功能。由于系统要控制Google Earth来完成卫星地图的导航功能,所以必须要有一个可以控制Google Earth软件的方式来完成这个任务。这个功能需要把之前从GPS硬件设备读取的信息以某种方式来控制Google Earth。此外,系统的轨迹管理功能也需要与其他功能配合才能完成一系列的管理功能。

在这种情况下,优化垃圾收集过程和尽量减少垃圾袋在这些地点的堆积时间是至关重要的。

最重要的是FireBasePerformanceMonitor,这是一种软件开发工具包,可以帮助开发人员收集应用程序性能数据,并在一个控制台中对其进行分析。性能监控之前是预览版,但从今天开始,它将推出测试版的web应用程序。

图1 数据流图

传统的解决方法是将某种形式的传感器分散在城市中,这些传感器将负责收集有关垃圾分布的数据,但是这种方法成本很高,无论是安装还是维护都需要持续的投资,而且对环境不友好,毕竟这种解决环境问题的方法,同时又生产了更多的一次性电子产品,还将它们散布在城市的各个角落。

图片 3

3 系统设计3.1 系统模型完成GPS导航的整个系统的模型如图2所示。这其中包含了很多外部硬件设备和软件系统,而我们的GPS导航系统是安装在用户的PC机或笔记本电脑中的。首先GPS设备不断的接受来至于各个卫星的无线信号,通过它本身的固件计算得出当前的坐标等相关地理信息。然后与计算机进行蓝牙通讯传送这些地理信息,而在计算机中,操作系统底层把蓝牙通讯模拟成基本的串口通讯,供应用程序调用。本GPS导航系统,自动识别当前计算机中的被模拟为串口的端口号,并不断的读取来至于GPS设备的地理信息。再通过Google Earth控制模块,控制Google Earth的显示,若当前的地图信息还未加载,Google Earth会根据当前的网络情况,连接Google Earth服务器获取对应坐标视角的地图信息。用户一般都是在驾车行驶的时候需要这种导航,所以一般可能的话,可以通过笔记本无线网络连接Google Earth服务器,正如图2所示。3.2 功能模块划分整个系统由四大模块组成。分别为GPS设备通讯模块,WEB服务器模块,预定轨迹导航模块,用户图形界面。1)GPS设备的通讯模块根据操作系统底层对蓝牙的模拟串口,读取GPS设备发送过来的地理信息,并过滤无用信息,动态的更新到自定义的数据结构中去。2)WEB服务器模块接受来至于Google Earth的Network Link的请求,结合之前更新在结构体中的坐标信息,生成用来改变Google Earth显示的KML文件,并响应Google Earth.3)预定轨迹导航模块先加载KML文件,获得预定的轨迹信息。启动导航功能之后,实时地根据预定轨迹对当前位置检测,并在当前位置偏离预定轨迹时,提供报警功能。4)用户图形界面为了便于用户的快捷使用,本系统提供类似与金山快译的工具条按钮组,所有的功能全都由工具条上的几个形象的按钮完成。十分便利。3.3 核心模块分析3.3.1 GPS模块

但是medium上有位名叫Michele Moscaritolo博主就想,如果有一个智能摄像头可以准确地识别垃圾,那么这个问题就很好解决了。

Web应用程序的性能监控相对容易启动和运行。开发人员将几行代码粘贴到他们的站点上,PerformanceMonitor将跟踪和可视化诸如页面加载、网络统计、第一次绘制时间和用户段第一次输入延迟等指标。由此,在PerformanceMonitor仪表板中,可以更容易地了解整个Web应用程序的速度和性能。

图3 GPS模块分析

一个城市只需要有一些这样的摄像头,装在垃圾收集车或专用车辆,垃圾处理中心的人员可以从他们的办公室实时远程监控垃圾统计数据,比如每种垃圾类型通常出现在哪里,每天、每周和每月的趋势,热点等。

跟踪用户行为是一项最适合GoogleAnalyticsforFirebase的任务,这种集成提供了对多达500个不同事件的免费、无限制的报告。几周前,它获得了一个先进的过滤功能,同时筛选了一系列属性和受众的报道。今天,在这些升级的基础上,谷歌揭开了一个全新的、从头开始的观众建设者的面纱。

这里GPS模块的输入是来至于GPS硬件设备发送过来的地理信息,而它的输出是对这些地理信息解析提取出来的坐标和轨迹信息,传递给GoogleEarth控制模块。内部完成串口数据的接受与坐标轨迹的提取。3.3.2 Google Earth控制模块

另外,这样的专用车辆还可以检测居民不按时间地点要求扔垃圾的情况,以进行实时干预。

图片 4

图4 Google Earth控制模块分析

有了这样的想法,Michele Moscaritolo就付诸行动,做了这样的一个智能摄像头和垃圾监控系统。

重新设想的观众构建器包括序列、范围、时间窗口、成员资格持续时间等功能。它将与远程配置(Remoteconfig)等工具结合使用。Remoteconfig是一种云服务,允许开发者动态地改变应用程序的行为和外观,以及应用程序活动(App Campaign),后者利用人工智能来识别Google搜索、Play、YouTube以及数百万个网站和应用程序中高度活跃的用户。

这个Google Earth控制模块,有两个输入,一个是外部输入,就是来自于Google Earth的请求,一个是用于构造响应这个请求时用到的坐标与轨迹信息,这些信息来至于GPS模块,对外输出就是响应Google Earth的KML文件。3.3.3 串口通讯模块分析在这个过程中,首先GPS设备不断的接受来至于各个卫星的无线信号,通过它本身的固件计算得出当前的坐标等相关地理信息。然后与计算机进行蓝牙通讯传送这些地理信息,而在计算机中,操作系统底层把蓝牙通讯模拟成基本的串口通讯,供应用程序调用。我们的GPS导航系统,自动识别当前计算机中的被模拟为串口的端口号,并开启线程,不断的读取来至于GPS设备的地理信息。这里并不是所有的地理信息在本系统都是有用的,通过程序过滤,提取出当前坐标点经纬度、速度、方向等几个基本的数据信息。把这些信息存储到结构体中,并通过与之前的坐标点的累加,可以构造出一连串的坐标,从而构成行驶轨迹。

让我们一起来膜拜一下大神的教程。

最后但并非最不重要的一点是,谷歌最近将其完全管理的NoSQL数据库CloudFiRestore从beta版升级到通用版,价格更低,地点也更新。它还增加了对Collection Group查询的支持,它允许搜索跨同名集合的字段,而不管它们在数据库中的位置。

图5 串口通讯模块

相机,要选就选最好的

在Firebase中,这并不是所有的新东西。

3.3.4 WEB服务器模块分析WEB服务器模块中首先开启HTTP服务线程, 等待来至于GoogleEarth的Network Link的请求,结合之前更新在结构体中的坐标信息,生成用来改变Google Earth显示的KML文件,并响应Google Earth.这里有三个KML文件,其中Network Link中的URL直接指向这里的5080是WEB服务器注册的端口号。3.3.5 预定轨迹导航模块分析

检测方面我采用了一个常用且非常有效的对象检测神经网络:Yolo,阿姆斯特丹市的人工智能专家Maarten Sukel最近发布了这个网络的一个版本,专门训练识别垃圾箱、袋子和纸箱,这个系统作为我们相机软件的核心。

CloudFunctions仿真器允许开发人员在将函数部署到生产之前在本地运行函数以测试它们,它得到了一层新的油漆。它现在与CloudFiRestore仿真器进行通信,该模拟器运行单元测试,检查CloudFi还原安全规则的行为。

图6 预定轨迹导航及越界警报模块

返回顶部