在移动端实现动态虚拟墙的方法和装置与流程

文档序号:16900212发布日期:2019-02-19 17:54阅读:343来源:国知局
在移动端实现动态虚拟墙的方法和装置与流程

本发明涉及虚拟墙系统领域,更具体地,涉及一种在移动端实现动态虚拟墙的方法和在移动端实现动态虚拟墙的装置。



背景技术:

现有虚拟墙系统主要通过三大模块实现整个系统:通信模块,主要用于相关地图信息、虚拟墙信息、定位信息、任务信息传递,起到桥梁的作用;交互模块,用户通过图形化的编辑环境,设定、添加或者删除任意形状的虚拟墙信息,并将此信息发送至智能移动算法处理部分;获取模块,获取交互模块提供的虚拟墙信息,并进行相关数据存储。

目前,现有技术在实现机器人虚拟墙上更多针对web系统,而忽略了移动端带来的极大便利性,对于虚拟墙也只是静态地展示,虽然也可以通过图形化的界面设定,但便携性相比移动设备来说逊色不少,也不支持手势处理虚拟墙信息从而达到位移缩放旋转效果,同时对其他设备兼容性不好。因此,存在改进需要。



技术实现要素:

有鉴于此,本发明提供一种在移动端实现动态虚拟墙的方法和装置,动态实现地图扫描和虚拟墙绘制,易于实现,方便扩展。

为解决上述技术问题,一方面,本发明提供一种在移动端实现动态虚拟墙的方法,所述方法包括:采集地形数据,并将地形数据上传至中心服务;获取移动端连接请求,并将匹配的地形数据实时传送至移动端,由移动端对地形数据进行处理;在所述移动端动态添加虚拟墙并在所述移动端显示画面。

根据本发明的一些实施例,所述采集地形数据,并将地形数据上传至中心服务,包括:通过接入服务将采集的数据上传至所述中心服务。

根据本发明的一些实施例,所述移动端与所述中心服务首次连接时,所述移动端主动与所述中心服务建立连接。

根据本发明的一些实施例,在进行地图扫描时,所述中心服务将采集的地图数据转换成json格式传送给所述移动端。

根据本发明的一些实施例,所述在所述移动端动态添加虚拟墙并在所述移动端显示画面,包括:获取地图文件和像素大小,并对其进行同步换算,以在所述移动端动态添加虚拟墙并在所述移动端显示画面,同步换算公式为:

x1/sw=(x2+delta1)/dw

(sh-y1)/sh=(y2+delta2)/dh

其中,delta1和delta2是经过平移或缩放或旋转产生的偏移量,x1和y1表示原始地图文件的坐标数据,x2和y2表示在移动端上显示画面的坐标数据,sw和sh分别表示原始地图文件在坐标中的宽度和高度,dw和dh分别表示在移动端上显示的画面在坐标中的宽度和高度。

第二方面,本发明实施例提供一种在移动端实现动态虚拟墙的装置,包括:数据采集模块,所述数据采集模块用于采集地形数据;中心服务模块,所述中心服务模块接收所述数据采集模块采集的地形数据,所述中心服务模块接收移动端的连接请求,并将匹配的数据实时传送至所述移动端,由所述移动端对数据进行处理;数据转换模块,所述数据转换模块将所述数据采集模块采集的信息进行同步换算,在所述移动端动态添加虚拟墙并在所述移动端显示画面。

根据本发明的一个实施例,在移动端实现动态虚拟墙的装置还包括:接入服务模块,所述接入服务模块用于将所述数据采集模块采集的地形数据上传至所述中心服务模块。

根据本发明的一个实施例,所述移动端与所述中心服务模块首次连接时,所述移动端主动与所述中心服务模块建立连接。

根据本发明的一个实施例,所述数据转换模块获取地图文件和像素大小,并对其进行同步换算,以在所述移动端动态添加虚拟墙并在所述移动端显示画面,同步换算公式为:

x1/sw=(x2+delta1)/dw

(sh-y1)/sh=(y2+delta2)/dh

其中,delta1和delta2是由于经过平移或缩放或旋转产生的偏移量,x1和y1表示原始地图文件的坐标数据,x2和y2表示在移动端上显示画面的坐标数据,sw和sh分别表示原始地图文件在坐标中的宽度和高度,dw和dh分别表示在移动端上显示的画面在坐标中的宽度和高度。

根据本发明的一个实施例,在移动端实现动态虚拟墙的装置还包括:存储模块,所述存储模块与所述中心服务模块交互以存储数据。

本发明的上述技术方案至少具有如下有益效果之一:

根据本发明实施例的在移动端实现动态虚拟墙的方法和装置,可以在移动设备上呈现虚拟墙信息,充分考虑了移动端的应用场景,结构清晰,易于实现,虚拟墙支持动态添加修改,同时支持手势操作,兼容性好,方便扩展。

附图说明

图1为本发明实施例的在移动端实现动态虚拟墙的方法的流程图;

图2为本发明实施例的在移动端实现动态虚拟墙的方法获取的图片和在移动端显示画面的对比图,其中,图2(a)表示获取的原始地图文件和坐标系,图2(b)表示在移动端显示的画面及坐标系;

图3为本发明实施例的在移动端实现动态虚拟墙的装置的示意图;

图4为本发明实施例的电子设备的示意图。

附图标记:

在移动端实现动态虚拟墙的方法100;

在移动端实现动态虚拟墙的装置200;

数据采集模块210;中心服务模块220;移动端240;接入服务模块250;存储模块260;

电子设备300;

存储器310;操作系统311;应用程序312;

处理器320;网络接口330;输入设备340;硬盘350;显示设备360。

具体实施方式

下面将结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

下面首先结合附图具体描述根据本发明实施例的在移动端实现动态虚拟墙的方法100。

如图1所示,根据本发明实施例的在移动端实现动态虚拟墙的方法100包括:

采集地形数据,并将地形数据上传至中心服务。

获取移动端连接请求,并将匹配的地形数据实时传送至移动端,由移动端对地形数据进行处理。

在所述移动端动态添加虚拟墙并在所述移动端显示画面。

换言之,根据本发明实施例的在移动端实现动态虚拟墙的方法100主要包括三个步骤,首先,根据设备应用的场景,选择需要采集的地形数据,并将采集的地形数据上传至中心服务,实现地形数据的上传与指令的执行,例如,在吸尘器中,可以在吸尘器上嵌入具有扫描和检测等功能的底盘,由其负责对地形等状态数据进行采集。采集的数据会一直上送至中心服务,中心服务是一个智能化中心,在获取到移动端连接请求时会智能匹配将地形数据实时传送至移动端,移动端的指令也是交由中心服务进行分发,实现对设备的控制与地形数据的处理。同时,为了提高可靠性,中心服务可以与存储服务交互,实现对数据的持久化。最后,根据移动端获得的地形数据,经过计算,在移动端动态添加虚拟墙,并且在移动端上显示画面。

由此,根据本发明实施例的在移动端实现动态虚拟墙的方法100,通过在移动设备上管理呈现虚拟墙信息,充分考虑了移动端的应用场景,结构清晰,易于实现,并且兼容性好,方便扩展。

根据本发明的一个实施例,所述采集地形数据,并将地形数据上传至中心服务的方法包括:

通过接入服务将采集的地形数据上传至所述中心服务。

也就是说,根据本发明实施例的在移动端实现动态虚拟墙的方法100,可以用来对地形等状态数据进行采集,采集的地形数据可以通过接入服务接入系统,将设备接入中心服务,交于中心服务处理,实现对地形数据的上传与指令的执行。接入服务可以消除不同设备接入方式不一致的问题,提升兼容性。

在本发明的一些具体实施方式中,所述移动端与所述中心服务首次连接时,所述移动端主动与所述中心服务建立连接。换句话说,移动端首次需要主动与中心服务建立连接,之后即可收到相应设备的数据。

可选地,根据本发明的一个实施例,在进行地图扫描时,所述中心服务将采集的地图数据转换成json格式传送给所述移动端。

具体地,在进行地图扫描时,中心服务会将地图数据转换成json的格式传送给移动端,即地图数据会以点阵数据的形式传送给客户端,客户端收到数据进行解析绘制,便可实现实时动态地图扫描的效果,扫描完成会生成一份地图图片数据进行持久化保存。

优选地,在本发明的一些具体实施方式中,所述在所述移动端动态添加虚拟墙并在所述移动端显示画面的步骤具体包括:

获取地图文件和像素大小,并对其进行同步换算,以在所述移动端动态添加虚拟墙并在所述移动端显示画面,同步换算公式为:

x1/sw=(x2+delta1)/dw

(sh-y1)/sh=(y2+delta2)/dh

其中,如图2所示,delta1和delta2是经过平移或缩放或旋转产生的偏移量,x1和y1表示原始地图文件的坐标数据,x2和y2表示在移动端上显示画面的坐标数据,sw和sh分别表示原始地图文件在坐标中的宽度和高度,dw和dh分别表示在移动端上显示的画面在坐标中的宽度和高度。

也就是说,在动态添加虚拟墙时,需要先获取地图文件和像素大小,这些数据是实现多手势计算的关键,虚拟墙数据都是相对原地图的坐标数据,为了支持位移缩放旋转等多手势,可以对其进行同步换算,每进行一次手势操作都需要根据手势的改变修正坐标值。

总而言之,根据本发明实施例的在移动端实现动态虚拟墙的方法100,考虑了动态性与实时性,摒弃了主动连接主动请求的方式,通过提供sdk集成方式实现tcp长连接来保证数据的可靠传输,同时数据采取主动通知方式以达到实时性,对于移动终端的应用,除了包含虚拟墙信息的增删查改操作,以图形可视化界面实时预览效果,同时支持位移,缩放,旋转等多种手势操作,丰富了移动端的使用场景,带来更多的灵活性与可用性。数据传输以友好的json格式代替传统的xml方式,同时提供xml转json接口,不仅减轻了传输流量,也获得较大的兼容性。虚拟墙底图即地图,摒弃人工测量绘制方式,而是通过设备移动与感应扫描生成实际的地图,省去了人工测量的不便,减少了误差。

如图3所示,根据本发明实施例的在移动端实现动态虚拟墙的装置200包括:数据采集模块210、中心服务模块220和数据转换模块。

具体地,所述数据采集模块210用于采集地形数据,所述中心服务模块220接收所述数据采集模块210采集的地形数据,所述中心服务模块220接收移动端240的连接请求,并将匹配的地形数据实时传送至所述移动端240,由所述移动端240对地形数据进行处理,所述数据转换模块将所述数据采集模块210采集的信息进行同步换算,在所述移动端240动态添加虚拟墙并在所述移动端240显示画面。

换句话说,根据本发明实施例的在移动端实现动态虚拟墙的装置200可以用于吸尘器等设备,数据采集模块210可以是嵌设在设备上的具有扫描或者检测等功能的底盘,由其负责对地形等状态数据进行采集。数据采集模块210将采集的地形数据一直上送至中心服务模块220,中心服务模块220是一个智能化中心,在获取到移动端240连接请求时会智能匹配将数据实时传送至移动端240,移动端240的指令也是交由中心服务模块220进行分发,实现对设备的控制与数据的处理。数据转换模块能够将数据进行同步换算,在移动端240上动态添加虚拟墙并显示画面。

由此,根据本发明实施例的在移动端实现动态虚拟墙的装置200,通过在移动设备上管理呈现虚拟墙信息,充分考虑了移动端的应用场景,结构清晰,易于实现,并且兼容性好,方便扩展。

根据本发明的一个实施例,在移动端实现动态虚拟墙的装置200还包括:接入服务模块250,所述接入服务模块250用于将所述数据采集模块210采集的地形数据上传至所述中心服务模块220。

也就是说,数据采集模块210需要通过接入服务模块250接入系统,由数据采集模块210采集的数据,通过接入服务模块250交于中心服务模块220,接入服务模块250可以消除不同设备接入方式不一致的问题,提升兼容性。

在本发明的一些具体实施方式中,所述移动端240与所述中心服务模块220首次连接时,所述移动端240主动与所述中心服务模块220建立连接。换句话说,移动端240首次需要主动与中心服务模块220建立连接,之后即可收到相应设备的数据。

可选地,根据本发明的一个实施例,在进行地图扫描时,所述中心服务模块220将采集的地图数据转换成json格式传送给所述移动端240。

具体地,在进行地图扫描时,中心服务模块220会将地图数据转换成json的格式传送给移动端240,即地图数据会以点阵数据的形式传送给客户端,客户端收到数据进行解析绘制,便可实现实时动态地图扫描的效果,扫描完成会生成一份地图图片数据进行持久化保存。

优选地,在本发明的一些具体实施方式中,所述数据转换模块获取地图文件和像素大小,并对其进行同步换算,以在所述移动端240动态添加虚拟墙并在所述移动端240显示画面,同步换算公式为:

x1/sw=(x2+delta1)/dw

(sh-y1)/sh=(y2+delta2)/dh

其中,如图2所示,delta1和delta2是由于经过平移或缩放或旋转产生的偏移量,x1和y1表示原始地图文件的坐标数据,x2和y2表示在移动端上显示画面的坐标数据,sw和sh分别表示原始地图文件在坐标中的宽度和高度,dw和dh分别表示在移动端上显示的画面在坐标中的宽度和高度。

也就是说,在动态添加虚拟墙时,需要先获取地图文件和像素大小,这些数据是实现多手势计算的关键,虚拟墙数据都是相对原地图的坐标数据,为了支持位移缩放旋转等多手势,可以对其进行同步换算,每进行一次手势操作都需要根据手势的改变修正坐标值。

进一步地,根据本发明的一个实施例,在移动端实现动态虚拟墙的装置200还包括:存储模块260,所述存储模块260与所述中心服务模块220交互以存储数据。由此,可以提高在移动端实现动态虚拟墙的装置200的整体可靠性,实现对数据的持久化。

总而言之,根据本发明实施例的在移动端实现动态虚拟墙的装置200,主要包括五个模块,即移动终端(移动端240),设备端(数据采集模块210),接入服务(接入服务模块250),中心服务(中心服务模块220),存储服务(存储模块260)五大模块。其中,移动终端主要是实现地图扫描流程与动态虚拟墙的管理,设备端负责采集数据执行指令,接入服务负责各种设备接入,兼容转换,中心服务主要实现对数据的智能化处理与分发调度,存储服务实现对数据的持久化以及查询等。多个模块相互配合,共同实现虚拟墙在移动终端的应用,解决了虚拟墙在移动端的易用性问题,通过实现系统与移动设备的有机结合,动态实现地图扫描,虚拟墙绘制等,并且支持通过手势操作动态位移缩放虚拟墙。

此外,本发明还提供一种计算机存储介质,所述计算机存储介质包括一条或多条计算机指令,所述一条或多条计算机指令在执行时实现上述任一所述的在移动端实现动态虚拟墙的方法100。

也就是说,所述计算机存储介质存储有计算机程序,所述计算机程序被处理器运行时,使得所述处理器执行上述任一所述的在移动端实现动态虚拟墙的方法100。

如图4所示,本发明实施例提供了一种电子设备300,包括存储器310和处理器320,所述存储器310用于存储一条或多条计算机指令,所述处理器320用于调用并执行所述一条或多条计算机指令,从而实现上述任一所述的方法。

也就是说,电子设备300包括:处理器320和存储器310,在所述存储器310中存储有计算机程序指令,其中,在所述计算机程序指令被所述处理器运行时,使得所述处理器320执行上述任一所述的方法100。

进一步地,如图4所示,电子设备300还包括网络接口330、输入设备340、硬盘350、和显示设备360。

上述各个接口和设备之间可以通过总线架构互连。总线架构可以是可以包括任意数量的互联的总线和桥。具体由处理器320代表的一个或者多个中央处理器(cpu),以及由存储器310代表的一个或者多个存储器的各种电路连接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其它电路连接在一起。可以理解,总线架构用于实现这些组件之间的连接通信。总线架构除包括数据总线之外,还包括电源总线、控制总线和状态信号总线,这些都是本领域所公知的,因此本文不再对其进行详细描述。

所述网络接口330,可以连接至网络(如因特网、局域网等),从网络中获取相关数据,并可以保存在硬盘350中。

所述输入设备340,可以接收操作人员输入的各种指令,并发送给处理器320以供执行。所述输入设备340可以包括键盘或者点击设备(例如,鼠标,轨迹球(trackball)、触感板或者触摸屏等。

所述显示设备360,可以将处理器320执行指令获得的结果进行显示。

所述存储器310,用于存储操作系统运行所必须的程序和数据,以及处理器320计算过程中的中间结果等数据。

可以理解,本发明实施例中的存储器310可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom)、可编程只读存储器(prom)、可擦除可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom)或闪存。易失性存储器可以是随机存取存储器(ram),其用作外部高速缓存。本文描述的装置和方法的存储器310旨在包括但不限于这些和任意其它适合类型的存储器。

在一些实施方式中,存储器310存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:操作系统311和应用程序312。

其中,操作系统311,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序312,包含各种应用程序,例如浏览器(browser)等,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序312中。

本发明上述实施例揭示的方法可以应用于处理器320中,或者由处理器320实现。处理器320可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器320中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器320可以是通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器310,处理器320读取存储器310中的信息,结合其硬件完成上述方法的步骤。

可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(asic)、数字信号处理器dsp)、数字信号处理设备(dspd)、可编程逻辑设备(pld)、现场可编程门阵列(fpga)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。

对于软件实现,可通过执行本文所述功能的模块(例如过程、函数等)来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。

具体地,处理器320还用于读取所述计算机程序,执行上述任一所述的方法。

在本申请所提供的几个实施例中,应该理解到,所揭露方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述收发方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,简称rom)、随机存取存储器(randomaccessmemory,简称ram)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1