一种向用户界面提供数据报告和实时数据的方法与流程

文档序号:16326379发布日期:2018-12-19 05:56阅读:463来源:国知局
一种向用户界面提供数据报告和实时数据的方法与流程

本公开涉及一种易于扩展和可升级的用户接口,该接口可以支持面向对象编程客户端和代表性状态转移客户端的系统,并且特别涉及一种向用户界面提供数据报告和实时数据的方法。

背景技术

一套产品的配送中心是一个仓库或其他专门的建筑,通常有制冷或空调,其中储存有产品(货物),以重新分配给零售商,批发商,或直接向消费者。配送中心是整个订单履行过程中的一个主要部分,即订单处理单元。配送中心通常被认为是需求驱动的。配送中心也可以称为仓库、履行中心、交叉码头设施、散货中心和包装处理中心。分配中心已知的名称通常基于操作的目的。例如,一个“零售配送中心”通常将货物分配给零售商店,一个“订单履行中心”通常将货物直接分发给消费者,而交叉码头设施则存储很少或没有产品,但将货物分配到其他目的地。配送中心是供应网络的基础,因为它们允许一个单一的位置存储大量的产品。一些组织在一个单一的设施之外经营零售分销和直接向消费者,共享空间、设备、劳动力资源和存货。一个典型的零售分销网络运作在整个商业市场建立中心,每个中心服务于多个商店。大型零售公司的大型配送中心可以服务50-125家商店。供应商将卡车的货物运送到配送中心,配送中心将货物存放到零售地点所需,并装运适当数量的货物。由于一个大型零售商可能会从成千上万的供应商那里销售数万个产品,因此将每一个产品直接从每个供应商运送到每个商店是不可能的。许多零售商拥有并经营他们自己的分销网络,而较小的零售商可以外包这一功能给专门的物流公司,以协调多个公司产品的分销。配送中心可以设在物流中心。一个大型的配送中心每年可以接收和运送超过一万辆卡车,每一家商店每周只收到两辆卡车,最多20,30辆。配送中心的规模从不到50000平方英尺(5000平方米)到最大接近300万平方英尺(3000000米)。配送中心的物料搬运系统可以包括许多类型的子系统的自动化机器控制,如运输输送机、码垛机、分拣机、订单履行站等。这些子系统的布局和类型通常是针对特定的业务流程定制的。特定制造业、零售业、电子商务或批发客户的sse。即使对于同一个客户,一个特定的配送中心通常是基于随时间推移或地理驱动的需求而唯一设计的。因此,用于零件或整个材料处理系统的人机界面(hmi)通常也针对特定配送中心的特定物料搬运系统。通常,需要对硬件自动化的深入了解,以便直接读取控制或报告材料处理系统的活动所必需的数据。执行机器自动化的实时控制的控制器还必须提供实时数据的直接读数。创建一个独特的hmi版本的每一个版本都是一个耗时和昂贵的命题,通过引入新的用户平台(如平板电脑、智能手机等),其复杂性进一步增加。

随着诸如平板电脑和智能手机等高性能移动设备的扩散,越来越多的材料处理系统的运营商寻求增加与hmi交互的用户的数量。一些用户,例如安装程序和调试/升级工程师,需要与设计和操作的亲密实时细节交互,例如通过基于套接字的面向对象程序的实现。其他用户可能需要通过基于web的接口来进行商业智能或状态报告。随着用户数量的增加,支持不同的接口要求可以在hmi的容量扩展中附加额外的问题。机器自动化控制器可以克服额外的开销,响应于对实时参数和性能数据的大量信息的请求。

技术方案

本发明主要解决的技术问题是提供一种向用户界面提供数据报告和实时数据的方法,所述方法包括:由机器自动化控制器接收物料搬运的一个或多个机器自动化装置的实时数据系统;由所述机器自动化控制器使用所述实时数据作为反馈来控制所述一个或多个机器自动化设备;根据域模型将实时数据整形为登台对象;在代理进程中维护对应于分段对象的缓存对象;和通过将包含在高速缓存对象中的数据的至少一部分传输到客户端设备以响应于对数据项目的一个或多个客户端请求,以在用户界面中呈现或收集用于报告目的。

可选的,还包括响应至少一个客户端请求用于表示数据的代表性状态转移的网页服务。

可选的,其中:分级对象包括一个可定位的字符串,该字符串包含一个以上的语言字符串;并且响应一个或多个客户端对数据项的请求还包括:确定客户端请求的首选语言;提取包含首选语言的选定可本地化字符串。

可选的,其中:分级对象包括一个可定位的字符串,该字符串包含一个以上的语言字符串;并且响应一个或多个客户端对数据项的请求还包括:确定客户端请求的首选语言;确定可定位字符串是否包含首选语言;响应于确定可本地化字符串包含首选语言,去掉包含首选语言的选定可本地化字符串;响应于确定可定位字符串不包含首选语言,将包含相关语言的可选择可本地化字符串剥离到可本地化字符串中包含的首选语言中。

本发明的有益效果是:

本发明的一种向用户界面提供数据报告和实时数据的方法,通过将包含在高速缓存对象中的至少一部分数据发送到客户端设备以在用户界面中呈现或收集用于报告目的,来响应对数据项的一个或多个客户端请求。

附图说明

图1示出了根据一个或多个实施例的可扩展、工业物联网(iiot)友好数据分发以及支持材料处理系统的实时控制的统一架构(ua)的简化框图。

图2示出了根据一个或多个实施例的包括混合机控制系统和提供多个协议访问的网关服务器的物料搬运系统的框图。

实施例

下面对本发明的较佳实施例进行详细阐述,以使本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围做出更为清楚明确的界定。

本公开提供了一种材料处理系统,该系统包括统一的体系结构,以促进人机界面(hmi)能力的快速开发和部署。统一架构有效地跨网络通信,同时提供实时数据显示和最小化软件更新大小。统一架构是构建统一ui的基石,客户机代码在本质上是通用的,而不管填充数据的机器控制技术如何。统一ui规范机械和过程的操作和显示。统一架构使用优化的二进制协议在客户端和服务器之间移动版本对象。该技术是服务器驱动的,因此客户端总是构建与服务器对象完全匹配的对象。客户端可以包括用户界面、数据收集或其他机器。统一体系结构提供可扩展的分布式对象技术(dot)。

根据本公开的一个方面,材料处理系统具有将来自机器自动化控制器的数据成形为由域模型描述的标准形式的适配器。领域模型是在客户环境中的位置和事物的可扩展标记语言(xml)形式的描述,用于创建软件合约来解决与该域相关的问题。无论是在构建时间还是在运行时,域模型都使用xml生成代码骨架。域模型是一个应用程序编程接口(api)或适配器,包括一组用于构建软件应用程序的例程、协议和工具。在域模型使用中,api是客户端和服务器之间的软件契约。开发人员利用域模型中的代码骨架来创建实现。为了在保持二进制兼容性的同时更新服务器或客户端,在一个或多个实施例中,javascript扩充提供引用和绑定,以增强可以根据标准api规则改变的类。

因此,具有大量不同的控制器和版本的机器自动化代码的复杂、独特和不断发展的材料处理系统可以由hmi处理,对机器自动化的版本和类型的变化几乎没有敏感度。与以往定制的基于项目的材料处理系统不同,本发明提供了一种从机器自动化获得数据的产品化方法。根据本公开的另一个方面,一种材料处理系统提供了对多个hmi用户和hmi用户类型的缩放,而不会对自动化控制器造成开销负担。基于面向对象编程或可编程逻辑的典型基于套接字的机器自动化控制器会被来自hmi用户的数据请求太多而淹没。这样的基于web套接字的机器自动化控制器不能应用代表性状态转移(rest)或restweb服务所使用的方法来增加额外的web服务器以适应需求。本创新通过引入分布式对象技术(dot),提供了基于web套接字的机器自动化控制器的可扩展性。点网关利用域模型获取机器自动化控制器/s的实时数据缓存的影子副本,点网关既支持面向对象客户端又支持restweb服务。可以添加额外的点网关以增加可扩展性。作为一种面向对象的api,点网关提供的hmi采用了一种非常高效和实时事件驱动的二进制协议。作为一个restapi,点网关支持iiot。dot网关是一种工业物联网(iiot)友好的方法,将遗留系统与外部访问隔离,以提供系统保护,同时提供更大的数据可访问性。iiot是由许多通信设备连接的设备组成的。由此产生的系统,甚至包括它的单个设备,都可以监视、收集、交换、分析和立即作用于信息,以智能地改变他们的行为或环境,而不需要人为干预。关于基于web套接字的控制,用于物料搬运系统自动化的机器控制的创造者经常采用面向对象编程(oop)。面向对象编程(oop)是一种基于“对象”概念的编程范例,它可以包含数据,以字段的形式,通常称为属性;以及代码,以过程的形式,通常称为方法。对象的一个特征是对象的过程可以访问并经常修改与它们相关联的对象的数据字段(对象具有“这个”或“自我”的概念。在面向对象编程中,计算机程序是通过使它们脱离相互作用的对象而设计的。oop语言有很大的多样性,但最流行的是基于类的,这意味着对象是类的实例,这通常也决定了它们的类型。在安装、调试、升级和维护过程中,开发人员经常需要通过面向对象的客户端访问材料处理系统的用户界面。

根据本公开的另一个方面,语言本地化渗透到材料处理系统的hmi。域模型支持在utf8格式中以相同的字符串捆绑在一起的任意数量的其他语言的不变量文本的打包,包括特殊字符。点网关可以剥离客户端不要求的语言。在不支持请求的语言的情况下,点网关可以确定最接近的语言。例如,所要求的语言可以是英式英语,但该系统能够提供美式英语。这种可本地化的字符串方法允许在不重载页面的情况下切换语言。除了效率更高之外,这种能力还可以允许在多个语言之间调试系统,而不必重新启动系统。这样的重新启动可能会导致一个难以捉摸的软件bug在bug被识别之前暂时消失。点网关提供了一个可配置的数据存储(cds),它是一个抽象的伪数据库。cds是由主机控制服务器提供的分层数据存储。cds类似于windows注册表,但它是版本化的和安全的。点网关处理排序和过滤。客户端可以在特定语言中进行排序和搜索,而不影响其他客户端。

图1示出了用于可扩展、iiot友好数据分发以及支持实时控制的统一架构100。统一架构(ua)100支持基于web套接字的内部通信技术和客户机设备102与机器自动化控制器或服务器104之间的二进制数据传输。该技术是服务器驱动的,这意味着服务器表示确定客户端呈现给用户的能力。域模型(未示出)使协议在客户端和服务器之间保持一致。ua100还提供用于服务器端搜索排序和大数据集寻呼的解决方案。ua100提供基于域模型的子系统和跟踪对象一致呈现的统一ui。ua100包括网关系统106从机器自动化控制器104接管大部分ui责任。为了清楚起见,机器自动化控制器104执行服务器进程108。网关系统106执行代理进程110。客户端设备102执行客户端进程112。代理进程110和客户端进程112是机器无关的。服务器框架的一部分也是机器不可知的,但是服务器进程108的对象提供者不是机器无关的。进程108,110,112可以在相同的控制器硬件上运行,或者它们可以分布在多个机器上。单个站点可以具有任意数量的服务器、代理和客户端进程108,110,112。在一个或多个实施例中,配置在控制器104上运行服务器和代理进程108,110,并且客户端在工作站和/或平板设备上处理112。具有多个客户端的大型设备可以在单独的机器上运行服务器和代理进程108,110,以最小化控制器工作负载,例如包括单独的网关系统106。服务器进程108利用对象提供器114来创建和维护分级对象116。分级对象116将信息从共享存储器或从真实世界设备传送到域模型对象。换句话说,分级对象116为向客户端呈现的数据形状或“阶段”。阶段对象116的结构和行为由域模型类定义。如果域模型定义了类的方法,则分级对象116实现这些方法。对象提供程序114创建分级对象116,并用数据填充分级对象116。每个真实世界子系统通常具有至少一个对象提供者114。对象提供程序114可以只管理一个分级对象116,但通常管理一个子系统中收集当前可用的阶段对象实例的一个或多个列表。例如,排序器根对象提供程序允许用户访问可用的逻辑和/或物理分类器。单个服务器进程108可以承载多个对象提供者114。适配器简单地是从可编程逻辑控制器(plc)或传统控制器获得其数据的对象提供者114。适配器与任何其他对象提供程序114一样填充分级对象116。适配器和其他类型的对象提供者之间的区别在于适配器通过在机器控制和域模型之间提供可配置的映射层来提供额外的灵活性。其他对象提供程序不提供可配置性。一个名为ucat(统一控制器适配器工具)的工具是用于为不同厂商提供plc配置的工具,以及配置遗留机器控件。一个这样的例子是不同版本的传统boss机控件的配置。代理进程110管理缓存对象118,该缓存对象是介于对象对象116和由客户端进程112管理的数据项120之间的中介。高速缓存对象118防止多个数据更新对服务器(如机器自动化控制器104)造成直接负担。对象代理进程110管理一组缓存对象118,该缓存对象对应于一个对象提供者114的分级对象116。此外,每个对象代理进程110使用域模型自动生成一个restapi,它提供客户端对其缓存对象的访问。数据项120驻留在ui客户端进程112中。数据项120从域模型提供信息,然后可以直接显示或为用户界面(未示出)准备。每个数据项120对应于诸如服务器之类的机器自动化控制器116中的一个阶段对象116。多个客户端进程102可以同时具有对应于相同的分级对象116的数据项120。例如,两个ui客户端进程102可以查看相同的输入/输出(i/o)点。在示例性实施例中,图2示出了使用c++(.cpp)语言实现的ui200。机器控制202实现了xml域模型204,从该模型中,编译代码生成过程206被执行以产生对象提供程序编译代码208。特别地,生成.cpp基类210、.cpp开发者代码212和嵌入式xml域模型(排版)214。使用ui编译代码208执行开发/释放过程216以产生生产对象提供者218。网关220包括一个或多个iiot网关222,其访问生产对象提供者218并向客户机226生成排版xml版本224。客户端226执行点类生成过程228,以生成版本化的点javascript(js)类230。然后将版本不可知的javascript扩充类合并到特定于版本的类上。

图2示出了具有混合机控制系统302的材料处理系统300,该混合机控制系统302包括基于plc的机器控制304、基于传统个人计算机(pc)的机器控制306、基于现代plc的机器控制308和基于现代pc的机器控制310。为了分别支持基于plc和基于传统pc的机器控制304,306,网关服务器312包括plc对象提供者314和传统pc对象提供者316。modemplc和pc机控制308,310分别包含自己的现代对象提供者318,320。提供者314,316,318、320中的每一个将缓存数据提供给网关聚合器322,该网关聚合器支持多协议接入系统328的rest协议324和web套接字协议326。例如,基于云的监控系统330可以保持使用rest协议324接收和中继到客户端设备334的报告ui332的警报、事件和统计历史。web套接字协议326可以向客户端设备334的实时ui336传递实时数据。

以上实施例的先后顺序仅为便于描述,不代表实施例的优劣。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

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