CN109960516B - 一种集群式物联应用开发***及其方法 - Google Patents
一种集群式物联应用开发***及其方法 Download PDFInfo
- Publication number
- CN109960516B CN109960516B CN201910149564.4A CN201910149564A CN109960516B CN 109960516 B CN109960516 B CN 109960516B CN 201910149564 A CN201910149564 A CN 201910149564A CN 109960516 B CN109960516 B CN 109960516B
- Authority
- CN
- China
- Prior art keywords
- program
- service
- internet
- things
- control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000011161 development Methods 0.000 title claims abstract description 23
- 238000013461 design Methods 0.000 claims abstract description 42
- 230000008569 process Effects 0.000 claims abstract description 23
- 238000004806 packaging method and process Methods 0.000 claims abstract description 9
- 238000004891 communication Methods 0.000 claims description 38
- 230000006870 function Effects 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 9
- 230000000007 visual effect Effects 0.000 claims description 5
- 238000012937 correction Methods 0.000 claims description 3
- 238000013519 translation Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 14
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 239000003595 mist Substances 0.000 description 3
- 239000007921 spray Substances 0.000 description 3
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000005507 spraying Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000009529 body temperature measurement Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 239000012530 fluid Substances 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/63—Image based installation; Cloning; Build to order
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及集群式物联应用开发***及其方法。其中的开发***包括:设计平台程序编译器;程序下发服务模块,用于将含有编译文件的工程打包下发推送至对应的芯云网关,然后管控芯云网关烧录程序到目标终端,该目标终端包含一个或多个物联网终端。其中的方法包括:接入集群式云服务平台关联的设计平台,以创建、编辑和发布用户自定义的业务程序,然后将业务程序编译成适配物联网终端的MCU的机器码,并烧录至该物联网终端。本发明的技术方案简化物联网应用程序的开发过程,降低开发门槛;整合云计算服务,提供开放、发布便捷、稳定运行的物联网应用程序发布、跟踪和运行。
Description
技术领域
本发明涉及一种集群式物联应用开发***及其方法,属于物联网通信技术领域。
背景技术
物联网是在互联网基础上的延伸和扩展的物物相连的网络,其用户端延伸和扩展到了任何物品与物品之间进行信息交换和通信。物联网技术开发的软件***广泛用于智慧工厂、共享租借、交通管理、智能家居等应用场合。正因为物联网技术应用的场景广泛,所以开发过程涉及的自定义因素多;加上,面向的联网设备、传感设备和执行设备的种类众多,兼容的通信协议众多,因此开发物联网应用程序的效率低。有必要提供一种通用的物联设计平台来简化物联网应用程序的开发过程,降低开发门槛。还可以整合云计算平台,提供开放、发布便捷、稳定运行的物联网发布平台和运行***,以实现物联开发和应用的整套解决方案。
发明内容
本发明提供一种集群式物联应用开发***及其方法,实现物联网***工程的高效开发。
本发明的技术方案第一方面为一种集群式物联应用开发***,包括:设计平台,其包含提供图形化编程界面的UI设计器和脚本编辑器;程序编译器,用于将图形化的业务程序脚本编译成硬件级别的低级语言;程序下发服务模块,用于将含有编译文件的工程打包下发推送至对应的芯云网关,然后管控芯云网关烧录程序到目标终端,该目标终端包含一个或多个物联网终端;其中,所述的设计平台是由用户的自定义控制端通过集群式云服务平台来操控使用,所述的程序编译器和所述的程序下发服务模块由所述的云服务平台维护运行。
进一步,所述的程序编译器包括:修订模块,用于根据目标终端的MCU的型号,对编译后的低级语言进行适配修订,然后由原始编译器编译成匹配的机器码;地址修正模块,用于匹配目标终端的MCU的型号,修正机器码中的地址描述。
进一步,所述的UI设计器包括:项目索引模块,用于从网关导入与每个物联网终端连接的电子硬件的输入单元和执行单元;可视化控件模块,其包含图形化包装的输入控件、逻辑控件和执行控件;项目流程编辑区域,用于在每个开发项目中对用户选取的控件进行流程关联,以组成图形化的业务程序流程图;辅助窗口模块,用于展示当前使用的控件的相关参数和事件,或者提供临时编译的业务程序脚本,供用户直接进行脚本输入;模板库,用于提供预设的业务程序模板。
进一步,所述的物联网终端包括烧录调试模块,用于接收到来自网关的业务程序块,进行存储、烧录、硬件调试和转换成应用程序;所述的网关包含应用程序联动管理模块,用于对多个物联网终端的应用程序提供联动接口和控制。
本发明的技术方案第二方面为一种集群式物联应用开发方法,所述方法包括以下步骤:
A1、在云服务平台中注册网关、通用终端、电子硬件和自定义控制端,并且在设计平台中将网关、通用终端、电子硬件和自定义控制端的接口和功能包装成图形化的控件,供用户进行业务编程时调用;
A2、由用户的自定义控制端通过集群式云服务平台来操控使用设计平台的UI设计器和脚本编辑器,以创建和编辑自定义的业务程序;
A3、将设计完成的业务程序从设计平台发布到云服务平台,然后经过云服务平台统一编译成硬件级别的低级语言;
A4、将含有编译文件的工程打包下发推送至对应的芯云网关,然后管控芯云网关烧录程序到目标终端,该目标终端包含一个或多个物联网终端。
进一步,所述步骤A2包括:在设计平台的项目流程编辑区域跟踪用户拖放的控件的ID 和位置,对所述控件进行流程关联,以组成图形化的业务程序流程图;以默认方式或用户定义方式配置控件属性及其接口属性的参数,关联控件并设置通信属性;在设计平台中,对用户编辑设计的项目程序中的控件工作流脚本、事件驱动脚本进行预编译和虚拟调试;对虚拟调试通过的项目程序,经由设计平台保存和发布到云服务平台。
进一步,所述步骤A3包括:调用语言翻译引擎,将业务程序脚本翻译成编译型低级语言;根据不同的目标终端的MCU的型号,对低级语言进行适配修订,然后编译成机器码;根据目标终端的MCU的型号,修正机器码中的地址描述。
进一步,所述步骤A4包括:使芯云网关将收到的工程包拆解,对应逻辑脚本程序开启线程容器来执行,并将MCU业务程序放入下发缓冲区等待请求指令。
本发明的技术方案第三方面为一种云计算机装置,包括存储器、处理器及储存在存储器上并能够在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实施上述的方法。
本发明的技术方案第四方面为一种计算机可读存储介质,其上储存有计算机程序,所述计算机程序被处理器执行时实施上述的方法。
本发明的有益效果为:
提供了通用的物联网***工程的设计和运行的整套解决方案,简化物联网应用程序的开发过程,降低开发门槛;整合云计算服务,提供开放、发布便捷、稳定运行的物联网应用程序发布、跟踪和运行;
支持多种终端通信方式,对自定义设备进行最大程度的接口完全兼容适配;提供图形UI 及简化脚本SDK,提高开发效率;提供的脚本编译器,将设备控制脚本转换为MCU机器码,降低运行成本及功耗;支持远程烧写器,可以将MCU机器码远程下放烧录至远端通用终端模块的MCU,方便业务程序的远程调试和运行。
附图说明
图1为一个实施例中的基于云平台的开放式物联平台。
图2为一个实施例中的基于集群服务平台的物联***。
图3为一个实施例中的物联网终端的示意图。
图4为一个实施例中的设计平台的界面示意图。
图5为一个实施例中操作设计平台的流程示意图。
图6为一个实施例中的用于物联平台的业务程序下发流程示意图。
图7为一个实施例中的用于物联平台的物联网应用程序的执行和联动控制流程示意图。
图8所示为一个具体的物联网应用实例的示意图。
具体实施方式
以下将结合实施例和附图对本发明的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本发明的目的、方案和效果。
需要说明的是,如无特殊说明,当某一特征被称为“固定”、“连接”在另一个特征,它可以直接固定、连接在另一个特征上,也可以间接地固定、连接在另一个特征上。此外,本公开中所使用的上、下、左、右等描述仅仅是相对于附图中本公开各组成部分的相互位置关系来说的。在本公开中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。此外,除非另有定义,本文所使用的所有的技术和科学术语与本技术领域的技术人员通常理解的含义相同。本文说明书中所使用的术语只是为了描述具体的实施例,而不是为了限制本发明。本文所使用的术语“和/或”包括一个或多个相关的所列项目的任意的组合。
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种元件,但这些元件不应限于这些术语。这些术语仅用来将同一类型的元件彼此区分开。例如,在不脱离本公开范围的情况下,第一元件也可以被称为第二元件,类似地,第二元件也可以被称为第一元件。本文所提供的任何以及所有实例或示例性语言(“例如”、“如”等)的使用仅意图更好地说明本发明的实施例,并且除非另外要求,否则不会对本发明的范围施加限制。
需要说明的是,为了方便本发明的技术方案描述过程中区分程序种类,在本文中将业务程序宽泛地指设计中的物联网项目程序、编译中的程序或者编译后下发烧录的程序;将物联网应用程序特定指发布完成的用于实际物联网应用的程序。
在一个实施例中,基于本发明的开放式物联平台从上级到下级的架构包括以下组成部分:云服务平台、设计平台、网关、通用终端、用户自定义设备或硬件。其中这些组成部分优选基于蜂窝无线通信***的物联网技术(C-IoT)架构进行交互通信。下面参照图1解析每个部分负责的工作。
一、设计平台(如图中的C-IoT设计平台)
UI设计器及脚本编辑器,可创建自定义的业务程序,自由组合网关及通用终端模块,接驳自定义设备。设计完成可以立即发布到服务平台投入使用。
1.1UI设计器
UI设计器提供了网关、通用终端、自定义设备、自定义控制端及其他扩展控件。UI设计器还可以提供自定义控件,供开发用户根据实际的中断要求、高级功能需求等编写自定义功能。UI设计器还提供通信接口选择,然后根据不同的通信接口可以接入对应的网关或者通用终端,以提供控件。
可针对控件的属性,接口属性进行设置,支持主流通信协议总线的自动适配,产生通信链路设计。
1.2脚本编辑器
脚本编辑器通过CSDK支持库,对控件进行高级脚本编程支持。
对网关的运行逻辑、IO接口通信、事件触发等编程支持。
对传感器运行逻辑,IO接口通信、事件触发、自动控件输入输出接口等编程支持。
对自定义控制端编程支持。
二、云服务平台(如图中的C-IoT服务平台)
云服务平台是一个开放式、集群式平台,可对网关进行控制,进行指令转发、烧录程序及下发等服务。云服务平台包括项目运行器,通信转发器,脚本编译处理器。在一些实施例中,所述云服务平台可以采用国芯云公司的物联网商用芯云服务平台,以获得更好的技术实施效果。
2.1项目运行器
负责执行自创项目的云端逻辑程序。
2.2通信转发器
负责转发网关,自定义控制端的通信。
2.3脚本编译处理器
负责编译网关、通用终端脚本代码,并打包下发。其中通用终端的脚本将被编译成MCU 机器码。
三、网关(如图中的C-IoT网关)
网关对通用终端模块进行集中管控,与其他网关、自定义控制器及远端通信。在一些实施例中,多个网关之间可以通过蓝牙、紫蜂(zigbee)或者射频(例如433MHz频段)直接相互通信,而不用经由互联网的TCP/IP协议进行通信,这样能够最大限度地降低网关之间的联动延迟。优选地,网关与网关之间可以采用大功率的远距离射频通信,使得通信范围达到20Km 距离。此外,网关之间的通信还可以采用5G无线通信的方式,使得接入云服务平台的速度更快,延迟更短。
这里讨论的网关可以是接入云计算平台的云网关。该网关可以作为云计算***的服务终端,执行来自云计算平台的云端下发的脚本。此外,所述网关还可以负责下发来自云端的通用终端程序。
四、通用终端(如图中的C-IoT通用终端)
通用终端负责控制自定义设备或者电子硬件,并与网关通信。多个通用终端可以通过 C-Iot协议进行物联网通信。在一些实施例中,多个通用终端之间可以通过射频直接相互通信,而不用经由上级的网关进行通信,这样能够提供通用终端之间的控制操作的快速联动。
通用终端内置烧录程序,接收到来自云端的业务程序块,将在业务程序存储区进行烧录储存,并提供调试和实际执行支持。
图2为一个实施例中的基于集群服务平台的物联***。其中,附图标记1表示用户控制端,例如是个人计算机或者移动终端。附图标记2表示集群式服务器(或集群式计算***),其中运行云服务平台。附图标记3表示云设计平台。附图标记4表示通信转发器,通信转发器可以集成在集群式服务器中,可以是任意公知的任意通信设备(比如,网卡、网络交换机、移动网络5G通信模块、射频通信模块等)。通信转发器用于将用户控制端和网关与集群式服务器建立数据通信连接。附图标记5表示网关,该网关可以支持蓝牙、WiFi、NFC、5G等通信方式,从而与用户控制端数据通信。附图标记6表示通用终端,下面会在图3的实施例来描述。附图标记10表示电子硬件。电子硬件可以是各种类型的传感器(例如,温度计、车载定位传感器等等)、执行器(例如,磁致动器、电机、流体驱动器等等)、显示器、工控设备、医疗设备、个人计算设备等等。优选地,通用终端提供开放式通信定义(例如,串行通信协议、标准工业总线协议等),并且提供接口扩展(例如,开放式IO扩展等),因此,用户可以根据通信接口定义,自由设计电子硬件为任意的传感电路(包含信号输入输出电路)和/或执行电路。
图3为一个实施例中的物联网终端的示意图。该通用终端包括微处理器U1;用于供电的电压调节器U2;与微处理器连接的第一无线收发器U3、第二无线收发器U4;与微处理器连接的调试接口J2和按键K1;与微处理器连接的高速IO连接器J4;与电压调节器连接的USB连接器JK1;与所述无线收发器连接的天线连接器JK2。与所述的高速IO连接器J4连接的ESD静电保护元件阵列。微处理器U1可以采用STM8、STM32等MCU。可以采用超低功耗产品线,以支持多种对功耗极为敏感的应用,例如便携式设备。微处理器U1自带基础OS和烧录程序。可以通过调试接口J2以单线接口模块(SWIM)可以方便地对MCU进行在线编程和非侵入式调试。电压调节器U2可以通过USB接口设备提供的5V电转3.3V电,供微处理器U1和其它电气元件或接口用电。第一无线收发器U3可以采用E18、E19的射频通信模块,也可以采用其它低功耗的通信模块,其与MCU的通信接口一般为SPI。第二无线收发器U4可以采用2.4G 无线射频芯片。其硬件设计上带有抗干扰屏蔽罩,使得模块的抗干扰能力大大提升。同样通过外部MCU使用标准串行外设接口SPI通讯协议对该射频芯片进行配置及操作。高速IO连接器J4通过电阻连接到MCU的高速IO管脚,同时通过ESD静电保护元件阵列TVS进行保护。
无线收发器U3、U4被配置为与物联网的网关连接或者与用户电子硬件进行无线连接,高速IO连接器J4被配置为能够与用户电子硬件有线连接。
图4为一个实施例中的设计平台的界面示意图。根据本发明的UI设计器可以包括:项目索引模块、可视化控件模块、项目流程编辑区域、辅助窗口模块、模板库。下面参考图4进一步描述上面的每个模块。
项目索引模块,用于从网关导入与每个物联网终端连接的电子硬件的输入单元(例如,温度传感)和执行单元(例如,电磁阀开关动作功能控件)。用户通过设计平台搭建物联网程序之前需要进行准备工作,而项目索引模块可以运行在准备阶段,将接入的(或已成功注册的)电子硬件的每个功能单元(包括输入单元和执行单元)连同参数信息导入到当前的用户设计项目中,供编程过程中调用。在一个实例中,可以在设计平台中显示电子硬件的缩览图,当用户点选某电子硬件时,项目索引模块可以追踪用户的选取焦点,优先导入该电子硬件的功能程序控件及其参数。
可视化控件模块,其包含图形化包装或封装的输入控件、逻辑控件、联动性控件和执行控件。这些图形化的控件可以是***默认的编程功能控件,也可以是云服务平台和网关提供的功能控件,还可以是所述的项目索引模块调取的与每个物联网终端连接的电子硬件的功能控件。在另一个实例中,还可以导入联动控件,使多个业务程序项目之间进行数据交互、进程联动、事件触发等。这里的图形化的控件有类似于计算机软件行业中的图形化编程控件的地方,但是主要的区别在于,根据本发明实施例中的图形化控件可以是依托于物联***的用户电子硬件来生成和调整,具有更灵活的开放性。
项目流程编辑区域,用于在每个开发项目中对用户选取的控件进行流程关联,以组成图形化的业务程序流程图。例如,用户可以新建一个业务程序(比如,水雾喷淋项目Prj_1),在项目流程编辑区域以框图表示该业务程序主体,然后用户可以从图4左侧所示的控件区将所需的控件拖动到所述框图内,并按照编程规范将控件之间连线以配置成业务程序流程图(实例如图4中部所示)。
辅助窗口模块,用于展示当前使用的控件的相关参数和事件,或者提供临时编译的业务程序脚本,供用户直接进行脚本输入,如图4右侧所示。
模板库,用于提供预设的业务程序模板。模板库可以提供现成的、可复用的程序模板,例如是常规的“输入-条件判断-执行操作”的程序模板,各种循环逻辑结构模板等。
图5所示为另一实施例中操作图4所示的设计平台的流程示意图。用户的操作设计平台,拖放控件组成项目流程,然后设计控件属性和接口属性,关联控件设置通信属性;自行便携或者辅助生成控件工作流脚本、时间驱动脚本等,然后保存项目后即可发布到云服务平台。
图6为一个实施例中的用于物联平台的业务程序下发流程示意图。其中一个远程烧录业务程序的实例描述如下。
一、远程烧录的硬件架构
1、云平台下发服务
自创平台程序发布完成时,云平台下发服务将会对工程打包,下发推送至对应的网关。工程包包含两类程序,网关的逻辑脚本程序,以及MCU业务程序(机器码)。
2、网关
网关收到工程包后拆解,对应网关逻辑脚本程序开启线程容器来执行,并将MCU业务程序放入下发缓冲区等待请求指令。一般来说,网关会在本地保留业务程序或者待烧录程序,用于备份或升级。
3、通用终端(包含MCU)
通用终端可以包括至少一个MCU,例如可以留有运行应用程序的MCU和用于协助烧录或升级业务程序的另一个MCU。每一个MCU都可以包含基础Os,负责下发烧录业务程序。
MCU存储中,包含一个可更新标志,标志为1,则MCU启动后将向网关请求最新业务程序。
MCU有三种状态:
A.无业务程序,可更新标志为1;
MCU启动时,将向网关请求最新业务程序,如请求不到,则定时请求。
B.有业务程序,可更新标志为1;
MCU启动时,将向网关请求最新业务程序,如请求不到,则定向到当前业务程序执行入口;
C.有业务程序,可更新标志为0(一次性烧录);
MCU启动时,直接定向到业务程序执行入口。
二、程序编译(运行于云平台,只描述MCU业务程序部分)
发布时,语言翻译引擎会将业务程序脚本翻译成编译型低级语言(C或汇编),修订模块根据不同的目标MCU,将对低级语言进行适配修订,然后由原始编译器编译成机器码。地址修正器根据目标MCU的型号,修正机器码中的地址。
三、全局变量、静态变量、常量、函数地址修正
云平台会将修订全局变量,静态变量,常量,函数地址,根据通用终端(MCU)的固定格式,进行偏移修正。并将各种变量存储区,代码区分别打包。
四、远程下发及存储
MCU会分别收到以修正好的,带有地址描述的变量、常量及代码区包,并进行烧写和存储。
五、业务代码执行
MCU接收到完整业务程序后,根据协议头的描述,修改可更新标志。然后reset重起。
MCU的基础Os向业务代码跳转时,会将MCU设置成初始状态,避免与业务程序冲突(如关闭无线,关闭中断等)。
图7为一个实施例中的用于物联平台的物联网应用程序的执行和联动控制流程示意图,其中步骤流程如下:
S1、通过物联网终端实时接收电子硬件的输入单元所发送的输入信号。
S2、将输入信号与关联的应用程序标识一起上报到网关,以被网关对该程序标识关联的应用程序进行联动控制。
S3、根据用户在应用程序的设计平台预设的程序执行方式,来确定上报到网关的应用程序的联动控制方式是否为本地网关联动控制、远程网关联动控制或本地通用终端联动控制;
S41至S61、如果所述的应用程序的执行方式为本地网关联动控制,则在本地网关或其下级连接的物联网终端运行应用程序,以根据本地上报的输入信号处理逻辑运算和数据处理,然后发送输出信号到本地执行单元。
S42至S62、如果所述的应用程序的执行方式为远程网关联动控制,则只在本地网关或者远程网关的下级连接的物联网终端运行应用程序,以根据上报的输入信号处理逻辑运算和数据处理;发送输出信号到本地或者远程的目标执行单元。
S43至S63、如果通用终端上报网关的网络通信延时超过预设的第一延时阈值,使通用终端调用本身的应用程序来执行本地联动控制。
S7、由网关和/或通用终端记录执行结果。
S8、根据需要由云服务平台监控应用程序执行过程。
此外,根据步骤S7或S8获取的数据,还可以将接收输出信号的目标执行单元的运行成功时间与输入信号的接收时间的时间差来计算联动控制延时值;如果判断所述的联动控制延时值超过预设的第二延时阈值,则上报网关,并反馈相关的输入单元和执行单元的ID至云服务平台和/或用户自定义控制端;降低输入信号和输出信号的传送速度,直至所述的联动控制延时值低于所述的第二延时阈值。
图8所示为一个具体的物联网应用实例的示意图,其中通用终端连接有温度传感器11和喷雾器12。返回参照图4,在设计平台创建一个水雾喷淋项目Prj_1,关联所述通用终端,然后温度传感器和喷雾器的注册功能控件出现在控件区中。在设计或编辑区,从业务程序的开始标志后面可以连接温度传感输入控件,然后相继连接逻辑控件和执行控件,例如判断温度超过预设阈值后,触发电磁阀工作使喷雾器进行喷淋。此外,还可以在设计平台创建电子标牌项目Prj_2,通过联动控件,建立两个项目之间的交互,参考图4所示的图形业务程序所示。在设计平台建立水雾喷淋的项目业务程序后,调试发布到云服务全平台,然后通过网关下发烧录到通用终端。在应用场景时,温度传感器11保持连接至通用终端来发送温度测量数据,当温度超过预设阈值(比如33℃)并持续一定时间,应用程序发送指示执行指令,然后通过网关联动另一通用终端连接的喷雾器12,进行喷淋。还可以通过另外的网关,联动远程的通用终端连接的电子标牌13,进行温度显示。
应当认识到,本发明的方法可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机***通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。
此外,可按任何合适的顺序来执行本文描述的过程的操作,除非本文另外指示或以其他方式明显地与上下文矛盾。本文描述的过程(或变型和/或其组合)可在配置有可执行指令的一个或多个计算机***的控制下执行,并且可作为共同地在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)、由硬件或其组合来实现。所述计算机程序包括可由一个或多个处理器执行的多个指令。
进一步,所述方法可以在可操作地连接至合适的任何类型的计算平台中实现,包括但不限于个人电脑、迷你计算机、主框架、工作站、网络或分布式计算环境、单独的或集成的计算机平台、或者与带电粒子工具或其它成像装置通信等等。本发明的各方面可以以存储在非暂时性存储介质或设备上的机器可读代码来实现,无论是可移动的还是集成至计算平台,如硬盘、光学读取和/或写入存储介质、RAM、ROM等,使得其可由可编程计算机读取,当存储介质或设备由计算机读取时可用于配置和操作计算机以执行在此所描述的过程。此外,机器可读代码,或其部分可以通过有线或无线网络传输。当此类媒体包括结合微处理器或其他数据处理器实现上文所述步骤的指令或程序时,本文所述的发明包括这些和其他不同类型的非暂时性计算机可读存储介质。当根据本发明所述的方法和技术编程时,本发明还包括计算机本身。
计算机程序能够应用于输入数据以执行本文所述的功能,从而转换输入数据以生成存储至非易失性存储器的输出数据。输出信息还可以应用于一个或多个输出设备如显示器。在本发明优选的实施例中,转换的数据表示物理和有形的对象,包括显示器上产生的物理和有形对象的特定视觉描绘。
以上所述,只是本发明的较佳实施例而已,本发明并不局限于上述实施方式,只要其以相同的手段达到本发明的技术效果,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。在本发明的保护范围内其技术方案和/ 或实施方式可以有各种不同的修改和变化。
Claims (10)
1.一种集群式物联应用开发***,其特征在于,包括:
设计平台,其包含提供图形化编程界面的UI设计器和脚本编辑器;
程序编译器,用于将图形化的业务程序脚本编译成硬件级别的低级语言;
程序下发服务模块,用于将含有编译文件的工程打包下发推送至对应的芯云网关,然后管控芯云网关烧录程序到目标终端,该目标终端包含一个或多个物联网终端;
其中,在云服务平台中注册网关、通用终端、电子硬件和自定义控制端,并且在所述设计平台中将网关、通用终端、电子硬件和所述自定义控制端的接口和功能包装成图形化的控件,供用户进行业务编程时调用,由用户的所述自定义控制端通过集群式云服务平台来操控使用所述设计平台的所述UI设计器和所述脚本编辑器,以创建和编辑自定义的业务程序;所述的程序编译器和所述的程序下发服务模块由所述的云服务平台维护运行,将设计完成的业务程序从设计平台发布到所述云服务平台,然后经过所述程序编译器统一编译成硬件级别的低级语言;所述程序下发服务模块将含有编译文件的工程打包下发推送至对应的芯云网关,然后管控芯云网关烧录程序到目标终端,该目标终端包含一个或多个所述物联网终端。
2.根据权利要求1所述的***,其特征在于,所述的程序编译器包括:
修订模块,用于根据目标终端的MCU的型号,对编译后的低级语言进行适配修订,然后由原始编译器编译成匹配的机器码;
地址修正模块,用于匹配目标终端的MCU的型号,修正机器码中的地址描述。
3.根据权利要求1所述的***,其特征在于,所述的UI设计器包括:
项目索引模块,用于从网关导入与每个物联网终端连接的电子硬件的输入单元和执行单元;
可视化控件模块,其包含图形化包装的输入控件、逻辑控件和执行控件;
项目流程编辑区域,用于在每个开发项目中对用户选取的控件进行流程关联,以组成图形化的业务程序流程图;
辅助窗口模块,用于展示当前使用的控件的相关参数和事件,或者提供临时编译的业务程序脚本,供用户直接进行脚本输入;
模板库,用于提供预设的业务程序模板。
4.根据权利要求1所述的***,其特征在于:
所述的物联网终端包括烧录调试模块,用于接收到来自网关的业务程序块,进行存储、烧录、硬件调试和转换成应用程序;
所述的网关包含应用程序联动管理模块,用于对多个物联网终端的应用程序提供联动接口和控制。
5.一种集群式物联应用开发方法,其特征在于,所述方法包括以下步骤:
A1、在云服务平台中注册网关、通用终端、电子硬件和自定义控制端,并且在设计平台中将网关、通用终端、电子硬件和自定义控制端的接口和功能包装成图形化的控件,供用户进行业务编程时调用;
A2、由用户的自定义控制端通过集群式云服务平台来操控使用设计平台的UI设计器和脚本编辑器,以创建和编辑自定义的业务程序;
A3、将设计完成的业务程序从设计平台发布到云服务平台,然后经过云服务平台统一编译成硬件级别的低级语言;
A4、将含有编译文件的工程打包下发推送至对应的芯云网关,然后管控芯云网关烧录程序到目标终端,该目标终端包含一个或多个物联网终端。
6.根据权利要求5所述的方法,其特征在于,所述步骤A2包括:
在设计平台的项目流程编辑区域跟踪用户拖放的控件的ID和位置,对所述控件进行流程关联,以组成图形化的业务程序流程图;
以默认方式或用户定义方式配置控件属性及其接口属性的参数,关联控件并设置通信属性;
在设计平台中,对用户编辑设计的项目程序中的控件工作流脚本、事件驱动脚本进行预编译和虚拟调试;
对虚拟调试通过的项目程序,经由设计平台保存和发布到云服务平台。
7.根据权利要求5所述的方法,其特征在于,所述步骤A3包括:
调用语言翻译引擎,将业务程序脚本翻译成编译型低级语言;
根据不同的目标终端的MCU的型号,对低级语言进行适配修订,然后编译成机器码;
根据目标终端的MCU的型号,修正机器码中的地址描述。
8.根据权利要求5所述的方法,其特征在于,所述步骤A4包括:
使芯云网关将收到的工程包拆解,对应逻辑脚本程序开启线程容器来执行,并将MCU业务程序放入下发缓冲区等待请求指令。
9.一种云计算机装置,包括存储器、处理器及储存在存储器上并能够在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实施如权利要求5至8中任一项权利要求所述的方法。
10.一种计算机可读存储介质,其上储存有计算机程序,所述计算机程序被处理器执行时实施如权利要求5至8中任一项权利要求所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910149564.4A CN109960516B (zh) | 2019-02-28 | 2019-02-28 | 一种集群式物联应用开发***及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910149564.4A CN109960516B (zh) | 2019-02-28 | 2019-02-28 | 一种集群式物联应用开发***及其方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109960516A CN109960516A (zh) | 2019-07-02 |
CN109960516B true CN109960516B (zh) | 2022-08-12 |
Family
ID=67023892
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910149564.4A Active CN109960516B (zh) | 2019-02-28 | 2019-02-28 | 一种集群式物联应用开发***及其方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109960516B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110955420B (zh) * | 2019-10-16 | 2022-07-08 | 珠海格力电器股份有限公司 | 一种自定义设备控制方法、装置、设备以及可读介质 |
CN110928526B (zh) * | 2019-11-13 | 2023-03-24 | 深圳市宇创达计算机技术有限公司 | 一种物联网处理装置 |
CN111629029B (zh) * | 2020-04-17 | 2023-06-20 | 金蝶软件(中国)有限公司 | 服务发布方法和*** |
CN113535154B (zh) * | 2021-07-16 | 2024-06-14 | 麦克方程(北京)科技有限责任公司 | 无代码编程方法及装置、电子设备、可读存储介质 |
CN114205189B (zh) * | 2021-08-25 | 2023-03-24 | 四川长虹电器股份有限公司 | 一种基于二级网关批量烧录设备信息的方法 |
CN113568365B (zh) * | 2021-09-22 | 2022-07-05 | 蘑菇物联技术(深圳)有限公司 | 控制工业控制器的方法、计算设备和计算机存储介质 |
CN114553848B (zh) * | 2021-12-31 | 2024-03-12 | 山东有人物联网股份有限公司 | 一种云编程***、方法、设备及计算机存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018121573A1 (zh) * | 2016-12-28 | 2018-07-05 | 珠海国芯云科技有限公司 | 一种基于云计算的物联网平台创建***及其方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10116519B2 (en) * | 2015-03-27 | 2018-10-30 | Yodiwo Ab | Programmable distributed management system of interconnected things and applications |
WO2017109791A1 (en) * | 2015-12-22 | 2017-06-29 | Tangirala Srinivas | A system and method for building enterprise applications |
US10832665B2 (en) * | 2016-05-27 | 2020-11-10 | Centurylink Intellectual Property Llc | Internet of things (IoT) human interface apparatus, system, and method |
CN108023952B (zh) * | 2017-12-04 | 2020-08-18 | 西安电子科技大学 | 一种基于云雾结合的模块化物联网应用快速构建平台 |
CN107819657B (zh) * | 2017-12-07 | 2021-08-13 | 广州鲁邦通物联网科技有限公司 | 一种基于集中控制的动态解析Modbus协议的方法、物联网网关设备和*** |
CN109032614A (zh) * | 2018-08-07 | 2018-12-18 | 佛山市苔藓云链科技有限公司 | 一种物联网应用程序开发与维护的***及方法 |
CN109271144A (zh) * | 2018-08-24 | 2019-01-25 | 深圳市创客星空科技有限公司 | 一种用于学习的云集成环境开发方法 |
-
2019
- 2019-02-28 CN CN201910149564.4A patent/CN109960516B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018121573A1 (zh) * | 2016-12-28 | 2018-07-05 | 珠海国芯云科技有限公司 | 一种基于云计算的物联网平台创建***及其方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109960516A (zh) | 2019-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109960516B (zh) | 一种集群式物联应用开发***及其方法 | |
CN109857446B (zh) | 一种基于云平台的开放式物联***和方法 | |
CN105704234B (zh) | 智能设备的控制方法及装置 | |
US10705511B2 (en) | Abstraction layers for automation applications | |
CN100386743C (zh) | 一种嵌入式***的调试方法及其*** | |
KR100559251B1 (ko) | 개방형 인터넷망 기반의 로봇 개발을 위한 분산소프트웨어 통합서비스방법 | |
WO1999022489A2 (en) | Method of reprogramming memories in field devices over a multidrop network | |
CN111459605A (zh) | 一种基于Docker的边缘计算网关虚拟化方法 | |
US20230289198A1 (en) | Configuring application scene | |
CN109683941A (zh) | 一种基于单芯片在线加载的应答机软件升级方法 | |
CN104679513A (zh) | 一种智能终端中的设备驱动架构开发方法 | |
WO2024140416A1 (zh) | 一种工业控制程序开发平台及方法 | |
CN110119282A (zh) | 一种基于通用嵌入式计算机的物联网终端及*** | |
CN105430094A (zh) | 农业物联网控制方法和*** | |
CN108334102A (zh) | 无人机开发平台和方法 | |
CN115934566A (zh) | 一种调试信息显示方法、装置、电子设备及存储介质 | |
EP3857324A1 (en) | Dynamically refining markers in an autonomous world model | |
CN107765585A (zh) | 数字电源的升级方法、装置及*** | |
CN108933771A (zh) | 一种模块级升级方式的通信局站设备协议解析方法 | |
CN207367004U (zh) | 一种无人机外挂设备识别处理装置 | |
CN102679509B (zh) | 空调器控制接口装置、空气调节器以及空调器控制*** | |
CN117667781A (zh) | 一种基于AM64x的EtherCAT主站设计与实时性优化方法 | |
CN109710291B (zh) | 一种航空光电载荷软件配置项远程升级方法 | |
CN113172622B (zh) | 基于ros的机械臂抓取装配管理方法、***及相关设备 | |
CN115208718A (zh) | 设备侧智能网关及其***、和嵌入式设备适配控制方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20231213 Address after: Room 601, Unit 1, Building 11, No. 293 Lianhua Road, Xiangzhou District, Zhuhai City, Guangdong Province, 519000 Patentee after: Yang Liqun Address before: 519000 room 105-66092, No. 6, Baohua Road, Hengqin new area, Zhuhai City, Guangdong Province (centralized office area) Patentee before: ZHUHAI HENGQIN NEW AREA XINYUN PLATFORM TECHNOLOGY Co.,Ltd. |
|
TR01 | Transfer of patent right |