用于分布式边缘节点部署的数据流图的集中式管理的制作方法

未命名 09-09 阅读:115 评论:0


1.本技术总体上涉及物联网(iot)技术,更具体地,涉及用于分布式边缘节点部署的数据流图的集中式管理。


背景技术:

2.许多行业已经实施了物联网(internet of things,iot)技术,其可以将工业环境中的机器、传感器、控制系统等连接到用于远程监测和控制的计算机。工业环境中的许多机器、传感器和控制系统可以具有外部接口,其经由充当用于工业环境与服务器之间的传输的协议转换器的边缘节点向服务器输出与它们的操作相对应的信息。例如,专门编程的边缘节点可以在一个传输协议中接收从工业环境中的机器、传感器和控制系统输出的信息,过滤或聚合从机器、传感器和控制系统接收的数据,以试图减少上传到服务器以供后续处理的数据的量,并且利用不同的传输协议将信息传输到服务器。
3.从工业环境中的机器、传感器和控制系统的外部接口通过一个或多个边缘节点到服务器的每个数据流通常包括定制配置。例如,工业环境中的机器、传感器和控制系统可以包括定制逻辑,以使用特定协议在外部接口处输出数据,而边缘节点可以被专门编程或以静态流进行硬编码,例如执行数据压缩、数据变换(例如快速傅里叶变换操作)、特征提取、来自各种源的数据组合(例如数据卷积)
……
这些定制的数据流在工业环境中被硬编码,以使得能够将数据从机器、传感器和控制系统传输到服务器。将数据流硬编码到边缘节点、机器、传感器和控制系统中是耗时的,并且使得整个工业环境不灵活且难以扩展。


技术实现要素:

4.本技术公开了一种计算系统,该计算系统通过以下步骤来生成物联网(iot)系统中的受管理设备和应用的模型:识别能够传输或接收数据的受管理设备和应用中的每个端点,并且定义从传感器中的端点经由可编程边缘设备应用的端点到iot服务器的端点的数据流。该计算系统可以开发数据流图,以定义可编程边缘设备应用到传感器和iot系统中的服务器的连接,以便经由可编程边缘设备应用将数据从传感器交换到iot系统中的服务器。该计算系统可以基于数据流图提示配置iot系统中的受管理设备和应用,其实施可编程边缘设备应用到传感器和iot系统中的服务器的连接。下面将更详细地描述实施例。
附图说明
5.图1和图2例示了可用于实施各种实施例的类型的计算机系统的示例。
6.图3例示了根据各种实施例的在服务器环境和本地部署(on-premises)环境中实施的物联网(iot)系统的示例。
7.图4例示了根据各种实施例的iot服务器中的应用管理器的示例。
8.图5例示了根据各种实施例的iot边缘节点的示例。
9.图6a和图6b例示了根据各种实施例的包括具有数据流图工具的数据流服务器的
示例iot系统。
10.图7例示了根据各种实施例的用于实施用来配置iot系统的数据流图的示例流程图。
具体实施方式
11.说明性操作环境
12.各种实施例可以通过由计算设备101(例如可编程计算机)执行软件指令来实施。因此,图1示出了计算设备101的说明性示例。如该图中看到的,计算设备101包括具有处理单元105和系统存储器107的计算单元103。处理单元105可以是用于执行软件指令的任意类型的可编程电子设备,但是通常将是微处理器。系统存储器107可以包括只读存储器(rom)109和随机存取存储器(ram)111。如本领域普通技术人员将理解的,只读存储器(rom)109和随机存取存储器(ram)111两者都可以存储用于由处理单元105执行的软件指令。
13.处理单元105和系统存储器107直接或通过总线113或可替代的通信结构间接地连接到一个或多个外围设备117-123。例如,处理单元105或系统存储器107可以直接或间接地连接到一个或多个额外的存储器储存设备,例如可以是磁性和/或可移动的硬盘驱动器117、可移动光盘驱动器119和/或闪存卡。处理单元105和系统存储器107也可以直接或间接地连接到一个或多个输入设备121和一个或多个输出设备123。输入设备121可以包括例如键盘、指点设备(例如鼠标、触摸板、触笔、轨迹球或操纵杆)、扫描仪、相机和麦克风。输出设备123可以包括例如监视器显示器、打印机和扬声器。对于计算设备101的各种示例,一个或多个外围设备117-123可以与计算单元103一起容纳在内部。可替代地,一个或多个外围设备117-123可以在计算单元103的壳体的外部,并且通过例如通用串行总线(usb)连接而连接到总线113。
14.对于一些实施方式,计算单元103可以直接或间接地连接到网络接口115,以用于与组成网络的其他设备通信。网络接口115可以根据一个或多个通信协议(例如传输控制协议(tcp)和因特网协议(ip))将来自计算单元103的数据和控制信号转换成网络消息。而且,网络接口115可以采用任意合适的连接代理(或代理的组合)来连接到网络,包括例如无线收发器、调制解调器或以太网连接。这样的网络接口和协议在本领域中是公知的,因此在此将不进行更详细的讨论。
15.应当理解,计算设备101仅作为示例例示,并且其并非旨在是限制性的。各种实施例可以使用一个或多个计算设备来实施,该一个或多个计算设备包括图1中例示的计算设备101的组件,仅包括图1中例示的组件的子集,或者包括组件的可替代组合,包括图1中未示出的组件。例如,可以使用多处理器计算机、布置到网络中的多个单处理器和/或多处理器计算机或两者的某种组合来实施各种实施例。
16.对于一些实施方式,处理器单元105可以具有多于一个的处理器核心。因此,图2例示了可以与各种实施例一起使用的多核处理器单元105的示例。如该图中看到的,处理器单元105包括多个处理器核心201a和201b。每个处理器核心201a和201b分别包括计算引擎203a和203b以及存储器高速缓存205a和205b。如本领域普通技术人员所知,计算引擎203a和203b可以包括用于执行各种计算功能(例如获取软件指令并且然后执行在所获取的指令中指定的动作)的逻辑设备。这些动作可以包括例如加、减、乘和比较数字、执行逻辑运算
(例如与、或、或非和异或)以及检索数据。每个计算引擎203a和203b然后可以分别使用其对应的存储器高速缓存205a和205b来快速地存储和检索数据和/或用于执行的指令。
17.每个处理器核心201a和201b连接到互连207。互连207的特定配置可以根据处理器单元105的架构而变化。对于一些处理器核心201a和201b(例如由索尼公司、东芝公司和ibm公司创建的cell微处理器),互连207可以被实施为互连总线。然而,对于其它处理器单元201a和201b(例如可从加利福尼亚州森尼维耳市的超威半导体公司获得的opteron
tm
和athlon tm
双核处理器),互连207可被实施为系统请求接口设备。在任何情况下,处理器核心201a和201b通过互连207与输入/输出接口209和存储控制器210通信。输入/输出接口209提供到总线113的通信接口。类似地,存储控制器210控制信息到系统存储器107的交换。对于一些实施方式,处理器单元105可以包括额外组件,例如由处理器核心201a和201b共享可访问的高级高速缓冲存储器。还应当理解,图1和图2所例示的计算机网络的描述仅作为示例提供,并且不旨在对可替代实施例的使用范围或功能提出任何限制。
18.工业环境中的物联网(iot)
19.图3例示了根据各种实施例的在服务器环境301和本地部署环境302中实施的物联网(iot)系统300的示例。参考图3,iot系统300的本地部署环境302可以包括多个传感器系统330-1至300-n,每个传感器系统包括能够与一个或多个iot边缘节点500-1至500-n通信的一个或多个传感器或其他设备。在一些实施例中,传感器系统330-1可以与iot边缘节点500-1通信,传感器系统330-2可以与iot边缘节点500-2通信,并且传感器系统330-n可以与iot边缘节点500-n通信。在其他实施例中,传感器系统330-1至330-n中的一者或多者可以与iot边缘节点500-1至500-n中的任何一者通信,并且如以下将更详细描述的,传感器系统330-1至330-n中的一者或多者可以由数据流服务器340配置(并且被动态地重新配置)来与托管在iot边缘节点500-1至500-n中的各种嵌入式应用通信。
20.在制造环境(例如工厂场地或多个分布式工厂)中,传感器系统330-1至330-n中的传感器可以例如通过识别制造设备、生产线、产品的制造、库存、产品的测试或验证过程等的操作或操作状态来收集与产品的制造相对应的信息。传感器系统330-1至330-n中的传感器可以经由iot边缘节点500-1至500-n中的一者或多者朝向iot服务器310传输所收集的信息。
21.iot边缘节点500-1至500-n可以分别包括嵌入式应用系统510-1至510-n,其处理从传感器系统330-1至330-n接收的信息。嵌入式应用系统510-1至510-n可以基于从传感器系统330-1至330-n接收的信息来确定机器、生产线、设备、产品、库存等的状态。嵌入式应用系统510-1至510-n可以基于所确定的状态生成消息并将消息传输到iot服务器310。
22.在一些实施例中,分别在iot边缘节点500-1至500-n中的嵌入式应用系统510-1至510-n,对于从传感器系统330-1至330-n到iot服务器310的数据流,可以是通用的或可编程的。数据流服务器340可以将例如来自数据流图的配置部署到iot边缘节点500-1至500-n,该配置可以将嵌入式应用系统510-1至510-n配置来实施从传感器系统330-1至330-n到iot服务器310的数据流。数据流服务器340还可更新iot边缘节点500-1至500-n的配置,以例如基于不同的数据流图实施从传感器系统330-1至330-n到iot服务器310的不同数据流。下面将更详细地描述实施例。
23.iot边缘节点500-1至500-n可以包括被配置为执行与嵌入式应用相对应的指令的
处理系统,这些指令可以提示处理系统分析从传感器系统330-1至330-n接收的信息,生成消息,并且将消息传输到iot服务器310。在一些实施例中,iot边缘节点500-1至500-n可以从位于服务器环境301中的iot服务器310接收嵌入式应用作为容器镜像。嵌入式应用系统510-1至510-n可以实施执行容器镜像的docker引擎。容器镜像可以是独立的、可执行的嵌入式应用,其可以包括由docker引擎用来实施与容器镜像相对应的嵌入式应用的可执行代码、运行时间、系统工具、系统库、设置等。
24.iot服务器310可以包括应用管理器400,其将具有容器镜像的容器部署到iot边缘节点500-1至500-n。在一些实施例中,应用管理器400可以例如从位于服务器环境301中的应用储存库320选择用来在iot边缘节点500-1至500-n中的一者中实施的嵌入式应用,并且生成将所选择的嵌入式应用部署到对应的iot边缘节点500-1至500-n的容器。将嵌入式应用系统510-1至510-n分别添加到iot边缘节点500-1至500-n可以允许通过应用管理器400将容器和对应的容器镜像部署到iot边缘节点500-1至500-n,这可以允许iot服务器310集中地控制由传感器系统330-1至330-n收集的信息流到iot服务器310。
25.iot服务器310中的应用管理器400还可以统筹分别由iot边缘节点500-1至500-n中的嵌入式应用系统510-1至510-n执行的各种操作。例如,应用管理器400可以利用嵌入式应用系统510-1至510-n将处理从服务器环境301卸载到本地部署环境302中的iot边缘节点500-1至500-n。在一些实施例中,iot服务器310中的应用管理器400可以识别iot边缘节点500-1至500-n中的在实施用于由传感器系统330-1至330-n收集的信息的通信的容器镜像之后剩余的处理和/或存储资源。应用管理器400可以利用iot边缘节点500-1至500-n中的剩余处理和/或存储资源来将处理从服务器环境301卸载到本地部署环境302。例如,应用管理器40可从应用储存库320选择与要卸载到iot边缘节点500-1至500-n的操作相对应的嵌入式应用,并将包括嵌入式应用的容器部署到对应的iot边缘节点500-1至500-n。
26.在另一个示例中,应用管理器400还可以统筹由嵌入式应用系统510-1至510-n实施的嵌入式应用中的参数的导入或导出。嵌入式应用中的参数可以对应于在嵌入式应用中编码的值或者由嵌入式应用在执行期间确定的值。例如,当嵌入式应用对应于温度监测应用(该温度监测应用利用来自传感器的温度读数来确定预设时间段内的温度变化率并且然后当温度变化率超过阈值时生成消息)时,所述参数可以对应于温度变化率和阈值。在该示例中,应用管理器400可以向iot边缘节点500-1至500-n中的实施温度监测应用的一者发送参数消息,该参数消息可以包括供对应的嵌入式应用系统510-1至510-n导入到温度监测应用中的参数,例如与不同阈值相对应的参数。应用管理器400还可以向iot边缘节点500-1至500-n中的实施温度监测应用的一者发送参数消息,该参数消息可以提示对应的嵌入式应用系统510-1至510-n从温度监测应用导出参数,例如与阈值或温度变化率相对应的参数。
27.应用管理器400还可以通过以下步骤来统筹嵌入式应用中的参数的导入或导出:实施在嵌入式应用系统510-1至510-n上运行的嵌入式应用的化身,并且然后将参数消息发送到嵌入式应用系统510-1至510-n。在一些实施例中,参数消息可以提示嵌入式应用系统510-1至510-n从iot服务器310导入参数,这可以允许应用管理器40修改由嵌入式应用系统510-1至510-n中的一者或多者实施的嵌入式应用,而不必将不同的嵌入式应用部署到iot边缘节点500-1至500-n。
28.参数消息还可以提示嵌入式应用系统510-1至510-n将参数导入或导出到其他设
备,例如其他iot边缘节点500-1至500-n。应用管理器400可以通过参数信息传递来统筹分布式iot边缘节点500-1至500-n之间的参数共享,这可以允许iot边缘节点500-1至500-n彼此结合地操作。下面将更详细地描述应用管理器和嵌入式应用系统的实施例。
29.图4例示了根据各种实施例的iot服务器中的应用管理器400的示例。参考图4,包括应用管理器400的iot服务器可以位于服务器环境中,并且被配置为与位于本地部署环境或不同服务器环境中的设备进行通信。应用管理器400可以包括嵌入式应用部署单元410,其选择用于部署在本地部署环境中的iot边缘节点上的嵌入式应用。在一些实施例中,应用管理器400可以基于从远程用户终端接收的输入或基于内部编程来选择嵌入式应用。应用管理器400可以从存储设备(例如位于服务器环境中的应用储存库或者存储可由iot服务器访问的容器镜像的另一存储系统)检索与所选择的嵌入式应用相对应的容器镜像。
30.嵌入式应用部署单元410可以包括容器化的iot应用单元412,其生成包括与所选择的嵌入式应用相对应的容器镜像的容器401。容器化的iot应用单元412可以通过通信网络(例如分组交换网络、电路交换网络、其组合等)朝向iot边缘节点传输容器401。iot边缘节点可以从接收到的容器401中提取容器镜像,并且例如利用docker引擎等执行容器镜像,以在iot边缘节点上实施嵌入式应用。
31.嵌入式应用的实施可以提示iot边缘节点生成应用消息402,iot边缘节点可以通过通信网络将该应用消息传输到iot服务器。应用消息402可以包括iot边缘节点响应于执行与容器镜像相对应的嵌入式应用而生成的、聚合的、过滤的、或诸如此类的信息。例如,当iot边缘节点接收工业测量数据时,应用消息402可以包括工业测量数据的子集、工业测量数据的聚合报告、iot边缘节点从工业测量数据检测到事件的指示等。
32.嵌入式应用部署单元410可以包括嵌入式应用状态单元414,其至少部分地基于从iot边缘节点接收到的应用消息402来对部署在iot边缘节点上的嵌入式应用的状态进行建模。嵌入式应用状态单元414可以通过存储能够由应用管理器400部署的容器镜像的实例、已经部署的容器镜像的实例、已经被委托从应用管理器400接收容器镜像的iot边缘节点的标识符、容器镜像所支持的参数、容器镜像所支持的参数的值等来对嵌入式应用的状态进行建模。当新的容器镜像已经被部署到iot边缘节点或从iot边缘节点释放时,嵌入式应用状态单元414可以基于来自实施嵌入式应用的iot边缘节点的应用消息402的内容等,来更新iot边缘节点上的嵌入式应用的模型。在一些实施例中,嵌入式应用的模型可以对应于iot边缘节点上的部署的容器镜像的化身,其可以模仿如在iot边缘节点上实施的部署的容器镜像的操作状态。例如,当iot边缘节点实施声音分类嵌入式应用时,嵌入式应用状态单元414可生成声音分类嵌入式应用的模型,该声音分类嵌入式应用的模型识别iot边缘节点,识别已部署在iot边缘节点上的声音分类嵌入式应用,识别与声音分类嵌入式应用相关联的参数,识别参数的值等。
33.应用管理器400可包括发布-订阅单元420,其生成参数消息403,该参数消息可提示iot边缘节点导入或导出与由iot边缘节点实施的嵌入式应用相关联的参数。由于嵌入式应用状态单元414可以包括部署在iot边缘节点中的嵌入式应用的模型,因此发布-订阅单元420可以生成参数消息403,其导入或导出与嵌入式应用相关联的参数。在一些实施例中,发布-订阅单元420可以在参数消息403中包括参数值,并且iot边缘节点可以将参数值导入嵌入式应用中。将参数值导入嵌入式应用的能力可允许iot服务器远程修改已部署的容器
镜像,而不必释放已部署的容器镜像并部署具有修改后的容器镜像的新容器401。
34.发布-订阅单元420可以生成参数消息403,当被提供给iot边缘节点时,该参数消息可以提示iot边缘节点导出参数值作为应用参数404。iot边缘节点可以将应用参数404传输到iot服务器中的应用管理器400,其可以利用参数值来更新嵌入式应用的模型。在一些实施例中,发布-订阅单元420可以将应用参数404重新传输到不同的联网设备或服务器平台,例如,传输到被订阅为在应用参数404中接收从iot边缘节点导出的一个或多个参数值的联网设备。在一些实施例中,参数消息403可以指定iot边缘节点应当在哪里导出应用参数404,例如,识别接收应用参数404的联网设备。发布-订阅单元420可以利用嵌入式应用的模型来识别和跟踪从哪些嵌入式应用导出哪些参数值以及哪些联网设备(例如其他iot边缘节点)订阅以接收该参数值。发布-订阅单元420可以生成参数消息403,其提示从在iot边缘节点上实施的嵌入式应用导入参数,提示从在iot边缘节点上实施的嵌入式应用导出参数,提示在iot边缘节点上实施的嵌入式应用在它们之间共享参数等。
35.应用管理器400可以包括分布式资源利用单元430,其利用多个分布式iot边缘节点来实施复杂服务,例如,通过将容器401协调部署到iot边缘节点,同时利用部署的嵌入式应用的模型以及发布-订阅技术来使嵌入式应用在分布式iot边缘节点之间彼此通信。通过对嵌入式应用的状态进行建模并协调参数值在分布式iot边缘节点之间的共享,应用管理器400可以引导分布式iot边缘节点实施复杂的计算任务或提供例如不能由单独的iot边缘节点执行的复杂服务。
36.在一些实施例中,分布式资源利用单元430可以将处理从服务器环境卸载到本地部署环境中的一个或多个iot边缘节点。在一些实施例中,iot服务器中的应用管理器400可以识别iot边缘节点中的可用处理和/或存储资源,部署具有容器镜像的容器401,当由具有可用处理和/或存储资源的iot边缘节点执行时,容器镜像可以执行从服务器环境卸载的处理。分布式资源利用单元430可以与嵌入式应用状态单元414和发布-订阅单元420一起工作,以使得实施卸载处理的多个iot边缘节点能够彼此传送参数。当多个iot边缘节点实施卸载处理时,分布式资源利用单元430可以利用嵌入式应用状态单元414来生成嵌入式应用的模型以实施卸载处理,并且利用发布-订阅单元420来配置提示在iot边缘节点之间交换参数的参数消息403,以便完成它们的处理任务。
37.图5例示了根据各种实施例的具有多个部署的嵌入式应用的iot边缘节点500的示例。参考图5,iot边缘节点500可以包括容器管理器521,其从例如位于服务器环境中的iot服务器接收容器501。容器501可以包括与用于部署在iot边缘节点500上的嵌入式应用相对应的容器镜像。容器管理器521可以将容器提供给iot边缘节点500中的docker守护进程530,其可以实施docker引擎并且执行容器501中的容器镜像以实施嵌入式应用。
38.在本示例中,docker守护进程530可以具有能够支持与多个容器531、534和537对应的嵌入式应用的docker引擎。容器531在由docker守护进程530实施时可以执行容器镜像并实施应用控制器532。容器531还可包括控制代理533,其经由应用管理器522将与应用控制器532相关联的参数502传送到iot服务器。在一些实施例中,控制代理533可以包括消息应用,其与应用管理器522通信以导入和导出与容器531和应用控制器532相关联的参数值。容器534在由docker守护进程530实施时可以执行容器镜像并实施应用代理程序(broker)535。容器534还可包括控制代理536,其经由应用管理器522将与应用代理程序535相关联的
参数502传送到iot服务器。在一些实施例中,控制代理536可以包括消息应用,其与应用管理器522通信以导入和导出与容器534和应用代理程序535相关联的参数值。容器537在由docker守护进程530实施时可以执行容器镜像并实施嵌入式应用538。容器537还可包括控制代理539,其经由应用管理器522将与嵌入式应用538相关联的参数502传送到iot服务器。在一些实施例中,控制代理539可以包括消息应用,其与应用管理器522通信以导入和导出与容器537和嵌入式应用538相关联的参数值。
39.应用管理器522可以从iot服务器接收参数消息,该iot服务器例如请求从容器531、534或537导入或导出参数502。应用管理器522可识别容器531、534或537中的哪一者发送参数消息,并且将参数消息传输到对应于所识别的容器531、534或537的控制代理533、536或539。在一些实施例中,控制代理533、536或539响应于参数消息可以从参数消息导入参数值。控制代理533、536或539还可响应于参数消息而引导参数502的导出。在一些实施例中,控制代理533、536或539可以响应于参数消息将参数502导出到应用管理器522以便传输到iot服务器,例如实施通常用于过程控制的“提交”逻辑。控制代理533、536或539还可以提示对应的嵌入式应用(例如应用控制器532或嵌入式应用538)将参数502导出到联网设备,例如iot服务器、不同的iot边缘节点、服务器环境等。
40.iot边缘节点500可以包括与传感器系统通信的微尘(mote)管理器523,传感器系统例如具有位于工业环境中的一个或多个传感器、致动器、执行各种操作(例如人工智能(ai)等)的外围节点。微尘管理器523可以从例如位于服务器环境中的iot服务器接收消息。在一些实施例中,消息可以包括传感器系统的配置数据,并且微尘管理器523可以将消息转发到传感器系统或者基于配置数据提示对传感器系统进行配置。微尘管理器523还可以从传感器系统接收信息,并将该信息转发到iot服务器,例如,生成包括该信息的消息并将该消息传输到iot服务器。
41.执行容器531、534和537中的容器镜像的iot边缘节点500可以实施复杂的系统,例如利用来自传感器系统的传感器数据503的工业监测系统。应用代理程序535可以从传感器系统接收传感器数据503,并将传感器数据503分发到应用控制器532和嵌入式应用538。在一些实施例中,可以经由发布-订阅操作向应用控制器532和嵌入式应用538提供应用代理程序535的消息参数。例如,iot服务器可以请求与应用代理程序535的消息功能相关联的参数502,其可以由控制代理536提供给iot服务器。iot服务器可以利用发布-订阅功能将应用代理程序535的消息参数导入到应用控制器532和嵌入式应用538,这可以允许应用代理程序535将传感器数据503分发到应用控制器532和嵌入式应用538。
42.应用控制器532和嵌入式应用538可以分析传感器数据503以监测工业环境。当应用控制器532和/或嵌入式应用538基于对传感器数据503的分析而检测到事件(例如机器故障、温度变化、检测到的噪声等)时,应用控制器532和/或嵌入式应用538可以生成用于传输到iot服务器或其他联网设备的应用消息。应用消息可以包括对检测到的事件的指示、与检测到的事件相对应的传感器数据503等。
43.用于分布式边缘节点部署的数据流图的集中式管理
44.图6a和图6b例示了根据各种实施例的包括具有数据流图工具642的数据流服务器640的示例iot系统600。参考图6a,iot系统600可包括具有一个或多个iot服务器的服务器系统610,iot服务器被配置成为iot系统600中的受管理设备实施服务,例如存储服务611、
计算服务612、人工智能(ai)服务613、商业逻辑服务614等。
45.iot系统600中的受管理设备可以包括边缘系统620中的通用iot应用621-623以及传感器系统630中的传感器、致动器或其他外围设备。在一些实施例中,边缘系统620可以包括一个或多个iot边缘节点,其例如配置有容器化应用,以实施通用iot应用621-623。传感器系统630可以例如通过监测一个或多个设备来收集或生成信息,并且通过边缘系统620将信息传输到服务器系统610。在制造环境(例如工厂场地或多个分布式工厂)中,传感器系统630可以例如通过识别制造设备、生产线、产品的制造、库存、产品的测试或验证过程等的操作或操作状态来收集与产品的制造相对应的信息。
46.边缘系统620可以促进服务器系统610与传感器系统630之间的数据通信,并且在一些实施例中,对传感器系统630或服务器系统610所接收的数据执行数据处理或过滤操作。边缘系统620可以包括能够与服务器系统610、传感器系统630以及彼此交换数据的多个通用iot应用621-623。在一些实施例中,通用iot应用621-623可以包括嵌入式应用系统,其例如配置有容器化应用,以实施可编程边缘设备,可编程边缘设备能够被配置为实施服务器系统610中的服务611-614与传感器系统630中的传感器之间的数据流。
47.iot系统600可以包括数据流服务器640,其通过部署在边缘系统620上的应用来定义传感器系统630与服务器系统610之间的数据流。数据流服务器640中的数据流图工具642可生成一个或多个数据流图,这些数据流图定义数据穿过iot系统600的路径以及边缘系统620对数据执行的任何数据处理或过滤。
48.数据流图工具642可以包括环境配置单元644,其通过单独地对服务器系统610中的iot服务器或在服务器系统610中实施的服务(例如存储服务611、计算服务612、人工智能(ai)服务613、商业逻辑服务614等)进行建模来对服务器系统610进行建模。在一些实施例中,环境配置单元644可以识别服务器系统610中的iot服务器的端点或服务器系统610中的服务的端点。端点可以对应于服务器系统610中的iot服务器的或者服务的能够与边缘系统620交换数据的部分。
49.环境配置单元644可以通过由通用iot应用621-623的端点单独地对通用iot应用621-623进行建模并且对能够在通用iot应用621-623中实施的数据处理操作进行建模来对边缘系统620进行建模。端点可对应于边缘系统620中的通用iot应用621-623的能够与服务器系统610、传感器系统630或边缘系统620中的其他通用iot应用交换数据的部分。
50.环境配置单元644可以通过根据传感器监测的设备、收集的信息的类型等来单独地对传感器系统630中实施的传感器建模,来对传感器系统630建模。在一些实施例中,环境配置单元644可以识别传感器系统630中的传感器的端点。端点可以对应于传感器系统630中的传感器的能够与边缘系统620交换数据的部分。
51.数据流图工具642可以包括图单元646,其基于服务器系统610、边缘系统620、通用iot应用621-623以及传感器系统630的模型来生成一个或多个数据流图。每个数据流图可以描述iot系统600的配置,并且定义通过iot系统600的数据流。数据流图可以利用iot系统600中的端点来将传感器系统630中的传感器链接到边缘系统620中的通用iot应用621-623中的一者或多者,并且将边缘系统620中的通用iot应用621-623彼此链接或者链接到服务器系统610中的一个或多个iot服务器或服务。数据流图可以识别数据流的方向(例如,从传感器到边缘节点到服务器)以及要由数据流中的通用iot应用621-623中的一者或多者对数
据执行的任何有效的数据处理、变换、操纵、过滤操作等。
52.在一些实施例中,图单元646可以生成数据流图演示641,其可以显示iot系统600中的传感器、iot服务器或服务以及通用iot应用621-623的模型。数据流服务器640响应于用户输入可以例如端点到端点地链接iot系统600中的模型,并且定义数据处理操作以生成数据流图。
53.数据流图工具642可以包括部署单元648,其提示iot系统600实施与至少一个数据流图相对应的配置。如以下将参考图6b更详细地描述的,部署单元648可以配置通用iot应用621-623、传感器系统630和服务器系统服务611-614,以形成用于在服务器系统610与传感器系统630之间交换数据的互连,并且可选地处理在数据流中接收的数据。
54.参考图6b,iot系统650类似于图6a中描述的iot系统600,除了数据流服务器640已经将示例数据流图部署到iot系统650中。部署单元648可基于示例数据流图生成配置部署643,并将配置部署643提供给边缘系统620、已配置的iot应用624-626、传感器系统630以及服务器系统服务611-614。图6a中的通用iot应用621-623可以从数据流图工具640接收配置部署643,其能够根据示例数据流图将通用iot应用621-623配置成已配置的iot应用624-626。传感器系统630中的传感器还可以从数据流服务器640接收配置部署643,其可以根据示例数据流图来配置传感器。利用配置部署643配置边缘系统620和传感器系统630可以允许传感器系统630经由边缘系统620与服务器系统610通信,并且可选地,允许边缘系统620对在传感器系统630与服务器系统610之间交换的数据执行数据处理操作。
55.数据流服务器640可以通过传输与由图单元646开发的不同数据流图相对应的新配置部署643来重新配置iot系统650。在一些实施例中,数据流服务器640可存储许多不同的数据流图,其各自描述图6a中的经建模的iot系统6600的不同配置。相对于停止应用并重新部署新的一组应用的传统过程,这种将数据流图部署和重新部署到iot系统650上的做法可以促进iot系统650的快速重新配置。通过包括可编程边缘设备(例如图6a中描述的通用iot应用621-623),数据流服务器640可以配置和重新配置iot系统650以实施多个不同的数据流,而不必将数据流硬编码到传感器系统630和边缘系统620中。
56.图7例示了根据各种实施例的用于实施配置iot系统的数据流图的示例流程图。参考图7,在方框701中,实施数据流图工具的计算系统可以将容器化应用部署到边缘系统中的边缘节点。在一些实施例中,边缘节点可以包括实施docker引擎以便执行容器镜像的嵌入式应用系统(例如,独立的、可执行的嵌入式应用),其可以包括由docker引擎利用来实施与容器镜像相对应的嵌入式应用的可执行代码、运行时间、系统工具、系统库、设置等。当边缘节点接收到与可编程边缘应用对应的容器镜像时,边缘节点可以执行容器镜像以实施能够例如由数据流服务器进一步配置的可配置iot应用。
57.在方框702中,实施数据流图工具的计算系统可以对边缘系统中的可配置iot应用的端点,传感器系统中的传感器、致动器或其他外围设备的端点,以及服务器环境中的服务器的端点进行建模。在一些实施例中,数据流图工具可以通过以下步骤对服务器系统进行建模:识别用于服务器系统中的iot服务器或服务的端点,并且然后基于它们的端点来单独地对iot服务器或服务(例如存储服务、计算服务、人工智能(ai)服务、业务逻辑服务等)进行建模。所述端点可以对应于服务器系统中的iot服务器的或者服务的能够与边缘系统交换数据的部分。
58.数据流图工具可以通过识别由边缘系统中的一个或多个边缘节点托管的可配置iot应用的端点、识别可配置iot应用中的数据处理能力、以及由可配置iot应用的端点和数据处理能力单独地对可配置iot应用建模,来对边缘系统建模。端点可对应于能够与服务器系统、传感器系统或由边缘系统中的一个或多个边缘节点托管的其它可配置iot应用交换数据的可配置iot应用的部分。
59.数据流图工具可以通过根据传感器监测的设备、收集的信息的类型等来单独地对传感器系统中实施的传感器建模,来对传感器系统建模。在一些实施例中,环境配置单元可以识别传感器系统中的传感器的端点。端点可以对应于传感器系统中的传感器的能够与边缘系统交换数据的部分。
60.在方框703中,实施数据流图工具的计算系统可以开发数据流图,所述数据流图定义可配置iot应用的配置并且定义经建模的端点之间的连接。数据流图工具可以经由边缘系统在服务器系统与传感器系统之间开发数据流,其可以包括可配置iot应用到传感器、其他可配置iot应用和/或服务器之间的端点到端点链接以及要由可配置iot应用执行的数据处理操作的描述。由数据流图工具定义的数据流可以被实施为数据流图,其可以描述传感器的、可配置iot应用的、和服务器的配置,该配置可以实施由数据流图工具开发的数据流。
61.在方框704中,实施数据流图工具的计算系统可以配置边缘系统和传感器系统,这可以实施数据流图中的连接。在一些实施例中,数据流图工具可以将部署配置传输至传感器系统,该部署配置可以提示传感器输出在特定端点处收集的数据以便传输至特定的可配置iot应用。数据流图工具还可以向边缘系统传输部署配置,该部署配置可以提示可配置iot应用经由特定端点与传感器、服务器和/或可配置iot应用交换数据。在一些实施例中,部署配置还可对可配置iot应用进行编程以实施一个或多个数据处理算法,这些算法例如过滤或操纵在服务器系统与传感器系统之间交换的数据。一旦利用部署配置进行了配置,传感器系统、边缘系统和服务器系统就可以实施数据流图中定义的数据流。
62.上述系统和装置可以使用专用处理器系统、微控制器、可编程逻辑设备、微处理器或其任意组合来执行本文所述的一些或全部操作。上述操作中的一些可以用软件实施,而其它操作可以用硬件实施。本文所述的任何操作、过程和/或方法可以由与本文所述的装置、设备和/或系统大致类似的装置、设备和/或系统并且参考所例示的附图来执行。
63.处理设备可以执行存储在存储器中的指令或“代码”。存储器也可存储数据。处理设备可以包括但不限于模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。处理设备可以是集成控制系统或系统管理器的一部分,或者可以被提供为被配置来经由无线传输本地地或远程地与联网系统对接的便携式电子设备。
64.处理器存储器可以与处理设备集成在一起,例如,布置在集成电路微处理器等内的ram或闪速存储器。在其它示例中,存储器可以包括独立设备,例如外部磁盘驱动器、存储阵列、便携式闪速密钥卡等。存储器和处理设备可以例如通过i/o端口、网络连接等可操作地耦合在一起或者彼此通信,并且处理设备可以读取存储在存储器上的文件。根据权限设置,相关联的存储器可以通过设计而是“只读的”(rom)或者并非如此。存储器的其它示例可以包括但不限于worm、eprom、eeprom、闪存等,其可以在固态半导体设备中实施。其它存储器可以包括移动部件,例如已知的旋转磁盘驱动器。所有这些存储器可以是“机器可读的”并且可以由处理设备读取。
65.操作指令或命令可以以存储的计算机软件(也称为“计算机程序”或“代码”)的有形形式来实施或具体实施。程序或代码可以存储在数字存储器中,并且可以由处理设备读取。“计算机可读存储介质”(或可替代地,“机器可读存储介质”)可以包括所有前述类型的存储器以及未来的新技术,只要存储器能够至少临时地存储具有计算机程序或其他数据的性质的数字信息,并且只要所存储的信息可以由适当的处理设备“读取”即可。术语“计算机可读”可以不限于“计算机”暗示完整的大型机、小型计算机、台式机或甚至膝上型计算机的历史使用。相反,“计算机可读”可以包括可由处理器、处理设备或任何计算系统读取的存储介质。这样的介质可以是可由计算机或处理器本地和/或远程访问的任何可用介质,并且可以包括易失性介质和非易失性介质、可移动介质和不可移动介质、或其任何组合。
66.存储在计算机可读存储介质中的程序可以包括计算机程序产品。例如,存储介质可以用作存储或传输计算机程序的方便装置。为了方便起见,操作可以被描述为各种互连或耦合的功能框或图。然而,可能存在这些功能框或图可以等效地聚合到单个逻辑设备、程序或操作中而没有清楚边界的情况。
67.结论
68.虽然本技术描述了执行实施例的具体示例,但是本领域技术人员应当理解,存在落入所附权利要求中阐述的本发明的精神和范围内的上述系统和技术的许多变化和置换。
69.本领域技术人员还将认识到,可以以许多其它方式将本文教导的概念调整为适合于特定应用。特别地,本领域技术人员将认识到,所例示的示例仅是在阅读本公开内容时将变得明了的许多可替代实施方式中的一者。
70.尽管说明书可能在若干位置中提到“一”、“一个”、“另一个”或“一些”示例,但这不一定意味着每个这样的引用是针对相同的一个或多个示例或者特征仅应用于单个示例。

技术特征:
1.一种方法,包括:由计算系统生成物联网(iot)系统中的受管理设备的模型,其中,所述受管理设备包括托管可编程边缘设备应用的一个或多个边缘设备和被配置来朝向所述iot系统中的一个或多个服务器输出数据的传感器;由所述计算系统开发数据流图,以定义所述可编程边缘设备应用到所述传感器和所述iot系统中的所述服务器的连接,以便经由所述可编程边缘设备应用将所述数据从所述传感器交换到所述iot系统中的所述服务器;以及由所述计算系统基于所述数据流图提示配置所述iot系统中的所述可编程边缘设备应用,其实施所述可编程边缘设备应用到所述传感器和所述iot系统中的所述服务器的连接。2.根据权利要求1所述的方法,其中,生成所述iot系统中的所述受管理设备的模型包括:识别能够传输或接收所述数据的所述可编程边缘设备应用中的每个端点,并且定义从所述传感器的端点经由所述可编程边缘设备应用的端点到所述iot服务器的端点的所述数据的流。3.根据权利要求1所述的方法,其中,所述数据流图被配置来定义供所述可编程边缘设备应用实施的数据处理应用,并且其中,基于所述数据流图提示配置所述iot系统中的所述可编程边缘设备应用包括:基于所述数据流图将所述数据处理应用部署到所述可编程边缘设备应用上。4.根据权利要求1所述的方法,其中,所述传感器被配置来监测制造设备以获得所述传感器朝向所述iot系统中的所述服务器输出的所述数据。5.根据权利要求1所述的方法,其中,所述可编程边缘设备应用对应于已经配置有嵌入式应用的远程边缘节点设备,所述嵌入式应用允许根据所述数据流图配置所述设备应用。6.根据权利要求5所述的方法,其中,所述服务器中的至少一者被配置来将所述嵌入式应用部署到所述远程边缘节点设备,并且其中,所述嵌入式应用在由所述远程边缘节点设备执行时提示所述远程边缘节点设备实施所述可编程边缘设备应用。7.根据权利要求5所述的方法,其中,所述远程边缘节点设备包括一个或多个处理设备,所述一个或多个处理设备被配置来实施docker引擎,以执行所述嵌入式应用。8.一种包括存储指令的至少一个存储设备的装置,所述指令被配置为使得一个或多个处理设备执行操作,所述操作包括:生成物联网(iot)系统中的受管理设备的模型,其中,所述受管理设备包括托管可编程边缘设备应用的一个或多个边缘设备和被配置来朝向所述iot系统中的一个或多个服务器输出数据的传感器;开发数据流图,以定义所述可编程边缘设备应用到所述传感器和所述iot系统中的所述服务器的连接,以便经由所述可编程边缘设备应用将所述数据从所述传感器交换到所述iot系统中的所述服务器;以及基于所述数据流图提示配置所述iot系统中的所述可编程边缘设备应用,其实施所述可编程边缘设备应用到所述传感器和所述iot系统中的所述服务器的连接。9.根据权利要求8所述的装置,其中,所述指令还被配置来使所述一个或多个处理设备执行操作,所述操作包括通过以下步骤生成所述iot系统中的所述受管理设备的所述模型:识别能够传输或接收所述数据的所述可编程边缘设备应用中的每个端点,并且定义从所述
传感器的端点经由所述可编程边缘设备应用的端点到所述iot服务器的端点的所述数据的流。10.根据权利要求8所述的装置,其中,所述数据流图被配置来定义供所述可编程边缘设备应用实施的数据处理应用,并且其中,所述指令还被配置来使所述一个或多个处理设备执行操作,所述操作包括:基于所述数据流图将所述数据处理应用部署到所述可编程边缘设备应用上。11.根据权利要求8所述的装置,其中,所述传感器被配置来监测制造设备以获得所述传感器朝向所述iot系统中的所述服务器输出的所述数据。12.根据权利要求8所述的装置,其中,所述可编程边缘设备应用对应于已经配置有嵌入式应用的远程边缘节点设备,所述嵌入式应用允许根据所述数据流图配置所述设备应用。13.根据权利要求12所述的装置,其中,所述服务器中的至少一者被配置来将所述嵌入式应用部署到所述远程边缘节点设备,并且其中,所述嵌入式应用在由所述远程边缘节点设备执行时提示所述远程边缘节点设备实施所述可编程边缘设备应用。14.根据权利要求12所述的装置,其中,所述远程边缘节点设备包括一个或多个处理设备,所述一个或多个处理设备被配置来实施docker引擎,以执行所述嵌入式应用。15.一种系统,包括:存储设备,其被配置来存储机器可读指令;以及计算系统,其包括一个或多个处理设备,响应于执行所述机器可读指令,所述一个或多个处理设备被配置来:生成物联网(iot)系统中的受管理设备的模型,其中,所述受管理设备包括托管可编程边缘设备应用的一个或多个边缘设备和被配置来朝向所述iot系统中的一个或多个服务器输出数据的传感器;开发数据流图,以定义所述可编程边缘设备应用到所述传感器和所述iot系统中的所述服务器的连接,以便经由所述可编程边缘设备应用将所述数据从所述传感器交换到所述iot系统中的所述服务器;以及基于所述数据流图提示配置所述iot系统中的所述可编程边缘设备应用,其实施所述可编程边缘设备应用到所述传感器和所述iot系统中的所述服务器的连接。16.根据权利要求15所述的系统,其中,所述一个或多个处理设备响应于执行所述机器可读指令而被配置来生成所述iot系统中的所述受管理设备的所述模型包括:识别能够传输或接收所述数据的所述可编程边缘设备应用中的每个端点,并且定义从所述传感器的端点经由所述可编程边缘设备应用的端点到所述iot服务器的端点的所述数据的流。17.根据权利要求15所述的系统,其中,所述数据流图被配置来定义供所述可编程边缘设备应用实施的数据处理应用,并且其中,所述一个或多个处理设备响应于执行所述机器可读指令而被配置为基于所述数据流图将所述数据处理应用部署到所述可编程边缘设备应用上。18.根据权利要求15所述的系统,其中,所述传感器被配置来监测制造设备以获得所述传感器朝向所述iot系统中的所述服务器输出的所述数据。19.根据权利要求15所述的系统,其中,所述可编程边缘设备应用对应于已经配置有嵌
入式应用的远程边缘节点设备,所述嵌入式应用允许根据所述数据流图配置所述设备应用。20.根据权利要求19所述的系统,其中,所述服务器中的至少一者被配置来将所述嵌入式应用部署到所述远程边缘节点设备,并且其中,所述嵌入式应用在由所述远程边缘节点设备执行时提示所述远程边缘节点设备实施所述可编程边缘设备应用。

技术总结
公开了一种计算系统,该计算系统通过以下步骤来生成物联网(IOT)系统中的受管理设备和应用的模型:识别能够传输或接收数据的受管理设备和应用中的每个端点,并且定义从传感器中的端点经由可编程边缘设备应用的端点到IOT服务器的端点的数据流。该计算系统可以开发数据流图,以定义可编程边缘设备应用到传感器和IOT系统中的服务器的连接,以便经由可编程边缘设备应用将数据从传感器交换到IOT系统中的服务器。该计算系统可以基于数据流图提示配置IOT系统中的受管理设备和应用,其实施可编程边缘设备应用与传感器和IOT系统中的服务器的连接。连接。连接。


技术研发人员:E
受保护的技术使用者:西门子股份公司
技术研发日:2020.08.27
技术公布日:2023/9/7
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐