CN117556578A - 图形化生成物联网应用的方法、装置、设备及存储介质 - Google Patents

图形化生成物联网应用的方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN117556578A
CN117556578A CN202410028129.7A CN202410028129A CN117556578A CN 117556578 A CN117556578 A CN 117556578A CN 202410028129 A CN202410028129 A CN 202410028129A CN 117556578 A CN117556578 A CN 117556578A
Authority
CN
China
Prior art keywords
capability
internet
interface
things
equipment
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.)
Granted
Application number
CN202410028129.7A
Other languages
English (en)
Other versions
CN117556578B (zh
Inventor
严式弘
江盛
宁永恒
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhongke Wuqi Nanjing Technology Co ltd
Original Assignee
Zhongke Wuqi Nanjing Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhongke Wuqi Nanjing Technology Co ltd filed Critical Zhongke Wuqi Nanjing Technology Co ltd
Priority to CN202410028129.7A priority Critical patent/CN117556578B/zh
Publication of CN117556578A publication Critical patent/CN117556578A/zh
Application granted granted Critical
Publication of CN117556578B publication Critical patent/CN117556578B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/18Network design, e.g. design based on topological or interconnect aspects of utility systems, piping, heating ventilation air conditioning [HVAC] or cabling
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y20/00Information sensed or collected by the things
    • G16Y20/20Information sensed or collected by the things relating to the thing itself

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本公开提供了一种基于图形化生成物联网应用的方法、装置、设备和存储介质,该方法包括:根据当前设备标识的触发,在物联网应用编辑区中渲染出当前设备;根据配置的设备能力以及数据传输属性,创建当前设备的能力接口;根据当前设备的能力接口与其它设备能力接口的连接触发,建立设备的能力接口与其它设备能力接口的连线,得到物联网应用的设备拓扑图;基于设备拓扑图,生成物联网应用;其中,设备能力用于表征设备所具有的功能。本公开是基于物联网设备的拓扑图生成物联网应用的,因此,用户仅需要在物联网应用编辑区中创建出设备拓扑图即可以自动生成相应的物联网应用,从而使得不具备编程基础的普通用户也可以根据自己的需求生成物联网应用。

Description

图形化生成物联网应用的方法、装置、设备及存储介质
技术领域
本公开涉及物联网技术领域,尤其涉及一种图形化生成物联网应用的方法、装置、设备和存储介质。
背景技术
当下,物联网技术应用已经广泛渗透到人们生活和工作的方方面面,越来越多的设备和传感器实现互联互通,形成海量数据,为人们提供了更加智能化的生活和工作环境。目前,物联网应用场景非常广泛,例如智能家居、智慧城市、工业物联网、车联网、医疗健康等领域都已经得到了广泛地应用。
然而,传统的物联网应用开发方式通常需要开发者具备一定的硬件和软件开发经验,需要掌握复杂的通信协议和编程语言,因此,对于非专业的开发者和用户来说,物联网应用的开发和部署仍然存在一定的技术难点和门槛。
目前,为了降低物联网应用开发的难度,市场上推出了一些图形化的物联网应用开发工具,例如IFTTT和Node-RED,但是这些图像化物联网开发工具均是基于用户配置的逻辑块以及逻辑块之间的连线生成物联网应用的,因此,仍需要使用者具备一定的编程基础。进而如何提供一种更为简单的物联网应用开发工具,使得不具备编程基础的普通用户也可以根据自己的需求生成物联网应用,是本领域技术人员亟待解决的技术问题。
发明内容
有鉴于此,本公开提出了一种图形化生成物联网应用的方法、装置、设备和存储介质,可以降低物联网应用的开发难度,使得不具备编程基础的普通用户也可以根据自己的需求生成物联网应用。
根据本公开的第一方面,提供了一种图形化生成物联网应用的方法,包括:
根据当前设备标识的触发,在物联网应用编辑区中渲染出相应的当前设备;
根据配置的设备能力,创建所述当前设备的能力接口;
根据所述当前设备的能力接口与其它设备能力接口的连接触发,建立所述当前设备的能力接口与其它设备能力接口的连线,以得到物联网应用的设备拓扑图;
基于所述设备拓扑图,生成所述物联网应用;
其中,所述设备能力用于表征设备所具有的功能。
在一种可能实现方式中,所述当前设备上设置有接口创建控件,在配置所述设备能力时,可以基于所述接口创建控件实现。
在一种可能实现方式中,在基于所述接口创建控件,配置所述设备能力时,包括:
根据所述接口创建控件的触发,推送显示所述当前设备的能力列表,其中,所述能力列表中包括同类所述当前设备的所有能力;
基于所述能力列表,配置所述设备能力。
在一种可能实现方式中,在根据配置的设备能力,创建所述当前设备的能力接口时,还包括:配置所述能力接口的数据传输属性。
在一种可能实现方式中,在建立所述当前设备的能力接口与其它设备能力接口的连线时,通过直接连线的方式或添加逻辑编辑区的方式实现。
在一种可能的实现方式中,在建立所述当前设备的能力接口与其它设备能力接口的连线时,通过直接连线的方式实现;
在基于所述设备拓扑图,生成所述物联网应用时,包括:
针对所述当前设备和所述其它设备分别获取对应的抽象类,并对所述抽象类进行实例化,得到声明所述当前设备和所述其它设备的第一代码;
将所述连线起点的设备识别为发送设备,将所述连线终点的设备识别为接收设备;
获取所述发送设备的输出能力,生成调取所述输出能力的能力状态,将与所述能力状态相匹配的数据包发送至所述接收设备的第二代码;
获取所述接收设备的输入能力,生成根据所述数据包设置所述输入能力的能力状态的第三代码;
将所述第一代码、所述第二代码以及所述第三代码进行组合,得到所述物联网应用。
在一种可能的实现方式中,所述数据包中包括预先设定的至少两种数据类型以及各所述数据类型对应的数据值。
根据本公开的第二方面,提供了一种图像化生成物联网应用的装置,包括:
设备生成模块,用于根据当前设备标识的触发,在物联网应用编辑区中渲染出相应的当前设备;
能力接口创建模块,用于根据配置的设备能力,创建所述当前设备的能力接口;
能力接口连接模块,用于根据所述当前设备的能力接口与其它设备能力接口的连接触发,建立所述当前设备的能力接口与其它设备能力接口的连线,以得到物联网应用的设备拓扑图;
代码生成模块,用于基于所述设备拓扑图,生成所述物联网应用;
其中,所述设备能力用于表征设备所具有的功能。
根据本公开的第三方面,提供了一种图形化生成物联网应用的设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行本公开第一方面所述的方法。
根据本公开的第四方面,提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其中,所述计算机程序指令被处理器执行时实现本公开第一方面所述的方法。
本公开提供了一种图形化生成物联网应用的方法,包括:根据当前设备标识的触发,在物联网应用编辑区中渲染出相应的当前设备;根据配置的设备能力以及数据传输属性,创建当前设备的能力接口;根据当前设备的能力接口与其它设备能力接口的连接触发,建立设备的能力接口与其它设备能力接口的连线,以得到物联网应用的设备拓扑图;基于设备拓扑图,生成物联网应用;其中,设备能力用于表征设备所具有的功能。由于本公开中是基于物联网设备的拓扑图生成物联网应用的,因此,用户仅需要在物联网应用编辑区中创建出上述设备拓扑图即可以自动生成相应的物联网应用,从而使得不具备编程基础的普通用户也可以根据自己的需求生成物联网应用。
根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。
图1示出根据本公开一实施例的图形化开发工具的开发界面展示图;
图2示出根据本公开一实施例的图形化生成物联网应用的方法的流程图;
图3示出根据本公开一实施例的设备拓扑图的展示图;
图4示出根据本公开另一实施例的设备拓扑图的展示图;
图5示出根据本公开又一实施例的设备拓扑图的展示图;
图6示出根据本公开再一实施例的设备拓扑图的展示图;
图7示出根据本公开一实施例的图像化生成物联网应用的装置的示意性框图;
图8示出根据本公开一实施例的图像化生成物联网应用的设备的示意性框图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
<方法实施例>
首先需要说明的是,本公开的物联网应用生成方法是基于预先构建的图形化开发工具实现的。该图形化开发工具的开发界面可以如图1所示。具体地,该图形化开发界面中可以至少包括设备库、逻辑列表以及物联网应用编辑区(图1中的空白区域)。其中,在设备库中配置有如单按键开关、落地扇、吊扇灯、空调扇、门窗传感器、灯(家居)(家居灯)等等多种物联网设备的设备标识,基于这些设备标识的触发,可以在物联网应用编辑区中渲染出相应的物联网设备。在逻辑列表中配置有多种可视化的逻辑块标识,基于这些逻辑块标识,可以在物联网应用编辑区中创建相应的数据处理逻辑。下面将结合该图形化开发工具,对本公开中图像化生成物联网应用的方法进行详细说明。
图2示出根据本公开一实施例的图形化生成物联网应用的方法的流程图。如图2所示,该方法包括步骤S1100-S1400。
S1100,根据当前设备标识的触发,在物联网应用编辑区中渲染出相应的当前设备。此处需要说明的是,为了简化描述,将物联网应用编辑区中渲染出的当前设备图块简称为当前设备。
举例来说,在用户需要生成通过单按键开关控制落地扇开关的物联网应用时,可以先将单按键开关标识拖拽至物联网应用编辑区,这样,系统将根据单按键开关标识被拖拽至物联网应用编辑区的触发,在物联网应用编辑区中渲染出单按键开关。同理,将落地扇标识拖拽至物联网应用编辑区,这样,系统将根据落地扇标识被拖拽至物联网应用编辑区的触发,在物联网应用编辑区中渲染出落地扇。
此处需要说明的是,除了将设备标识拖拽至物联网编辑区的触发,还可以通过其它触发方式(如双击设备标识)在物联网应用编辑区渲染出相应设备,在此不作具体限定。
S1200,根据配置的设备能力,创建当前设备的能力接口。
此处需要说明的是,在本公开中的设备能力用于表征设备所具有的功能。例如,单按键开关具有开关能力,则表征该单按键开关具有开关的功能。又如,落地扇具有开关能力和风速调节能力,则表征该落地扇具有开关的功能和风速调节的功能。再如,家居灯具有开关能力、亮度调节能力、色温调节能力、呈现不同颜色的能力,则表征该家居灯具有开关功能、亮度调节功能、色温调节功能、呈现RGB颜色功能。
在一种可能的实现方式中,物联网编辑区中渲染出的设备上设置有接口创建控件(如图3所示的【+】按钮),在配置设备的设备能力时,可以基于接口创建控件实现。具体地可以包括以下步骤:
第一,根据当前设备上接口创建控件的触发,推送显示当前设备的能力列表。
此处需要说明的是,针对设备库中的每种物联网设备,均设置有对应的设备能力列表,该设备能力列表中包括市场上同类设备所具有的所有能力。举例来说,市场上一些家居灯仅具有开关的能力,一些家居灯既具有开关能力又具有亮度调节能力,一些家居灯既具有开关能力又具有色温调节能力,还有一些家居灯具既具备开关能力又具备显示颜色的能力,则家居灯的能力列表中包括开关能力、亮度调节能力、色温调节能力、显示RGB颜色能力。
在一种可能的实现方式中,该能力列表中还可以包括自定义能力字段,在自定义能力字段被触发的情况下,将推送显示自定义能力配置界面,基于该自定义能力配置界面可以获取用户配置的同类物联网设备所具有的新能力,这样,便可以对能力列表进行不断的迭代更新。
进一步地,图形化开发工具中存储有反映各种设备标识与对应能力列表之间映射关系的第一映射关系。这样,在设备上的接口创建控件被触发的情况下,将获取被触发的接口创建控件所属设备的设备标识,并通过查询第一映射关系的方式获取到与设备标识对应的能力列表,并将获取到的能力列表推送显示至被触发的接口创建控件的邻近位置。其中,能力列表可以通过表格的形式进行展示,也可以通过自定义的形式进行展示,在此不作具体限定。
第二,基于推送显示的能力列表,配置设备能力。
其中,需要配置的设备能力即在物联网应用中需要调用的设备能力。举例来说,在用户需要生成通过单按键开关控制落地扇开关的物联网应用时,需要调用单按键开关的开关能力,则需要为渲染出的单按键开关配置开关能力。同理,在该实施例中,还需要调用落地扇的开关能力,则需要为渲染出的落地扇配置开关能力。
在一种可能的实现方式中,在基于推送显示的能力列表,配置设备能力时,可以直接将能力列表中被选中的能力作为配置的设备能力。例如,在为渲染出的单按键开关配置开关能力时,用户可以在单按键开关的能力列表中选中开关能力,此时,选中的开关能力即为需要为单按键开关配置的能力。又如,在为渲染出的落地扇配置开关能力时,用户可以在落地扇的能力列表中选中开关能力,此时,选中的开关能力即为需要为落地扇配置的能力。
在另外一种可能的实现方式中,能力列表中设置有默认能力,在设备的接口创建控件被触发的情况下,将直接由设备的能力列表中选择默认的能力作为需要为设备配置的能力。举例来说,单按键开关的能力列表中默认的能力为开关能力,此时,在单按键开关的接口创建控件被触发的情况下,将直接选中单按键开关能力列表中的开关能力作为需要为该单按键开关配置的能力。
在获取到配置的设备能力后,直接将配置的设备能力显示至被触发的接口创建控件上,以完成相应能力接口的创建。
由以上接口创建过程可知,在物联网应用编辑区中渲染出的设备中均设置有能力接口创建控件,在该能力接口创建控件被触发的情况下,将推送显示包括市场上所有同类设备的设备能力的能力列表,用户可以根据需要从能力列表中选择当前设备需要调用的能力,从而完成当前设备的能力接口的创建。也就是说,渲染出的设备实际上基于市场上所有同类设备的设备能力构建。
在一种可能的实现方式中,在根据配置的设备能力,创建当前设备的能力接口时,还包括对能力接口的数据传输属性进行配置的操作。其中,对于设备的能力接口的创建和对能力接口的数据传输属性的配置这两个操作可以通过触发同一控件来进行,也可以通过触发不同的控件进行。在通过同一控件来进行能力接口的创建和数据传输属性的配置时,通过触发这一控件后即可同步完成能力接口的创建步骤和对这一能力接口的数据传输属性的配置步骤,从而达到提高图形化开发物联网应用的效率的目的。
具体地,在对能力接口的数据传输属性进行配置时,数据传输属性包括输入属性和数据输出属性。数据输入属性和数据输出属性这两种属性的配置则可以通过所设置的位于不同位置处的接口创建控件来实现。即,通过触发不同位置处的接口创建控件来实现不同的数据传输属性的配置。举例来说,在触发位于第一方位(如:渲染出的设备图的左侧)的接口创建控件时,对应的是对该接口创建控件所创建的能力接口的数据输入属性的配置;在触发位于第二方位(如:渲染出的设备图的右侧)的接口创建控件时,对应的是对该接口创建控件所创建的能力接口的数据输出属性的配置。由此,用户便可以直接触发与能力接口的数据传输属性相匹配的接口创建控件来完成能力接口的创建,无须再单独配置能力接口的数据传输属性,从而简化了能力接口创建的复杂度。
此处需要说明的是,渲染出的设备图中所配置的接口创建控件的数量可以是一个,可以是两个,还可以是多个,在此不作具体限定。
下面以一个具体示例对步骤S1200进行再一次说明。举例来说,在用户需要生成通过单按键开关控制落地扇开关的物联网应用的实施例中,在物联网应用编辑区中渲染出单按键开关和落地扇后,用户点击单按键开关右侧的接口创建控件,将推送显示单按键开关的能力列表,用户选中单按键开关能力列表中的开关能力后,将开关能力显示在单按键开关右侧的接口创建控件上,此时完成如图3所示的单按键开关的开关能力输出接口的创建。接着,用户点击落地扇左侧的接口创建控件,将推送显示落地扇的能力列表,用户选中落地扇能力列表中的开关能力后,将开关能力显示在落地扇左侧的接口创建控件上,此时完成如图3所示的落地扇的开关能力输入接口的创建。至此,完成单按键开关需要调用的开关能力输出接口的创建以及落地扇需要调用的开关能力输入接口的创建。
S1300,根据设备的能力接口与其它设备能力接口的连接触发,建立设备的能力接口与其它设备能力接口的连线,以得到物联网应用的设备拓扑图。
首先需要说明的是,用户需要先确定当前设备能力与其它设备能力之间的控制关系,然后基于该控制关系建立当前设备能力接口与其它设备能力接口之间的连线。续上实施例,用户需要用单按键开关的开关能力控制落地扇的开关能力,因此,需要建立单按键开关的开关能力输出接口与落地扇的开关能力输入接口之间的连线,以得到如图3所示的设备拓扑图。
在建立当前设备能力接口与其它设备能力接口之间的连线时,可以通过直接连线的方式或者添加逻辑编辑区的方式实现。
具体地,在当前设备能力与其它设备能力之间的控制关系符合用户常规使用需求时,可以选择直接连线的方式建立当前设备能力接口与其它设备能力接口之间的连线。举例来说,在使用单按键开关的开关能力控制落地扇的开关能力时,常规使用需求为:在单按键开关为开时,控制落地扇打开;在单按键开关为关时,控制落地扇关闭。当前用户的控制需求与常规使用需求一致,则可以通过直接连线的方式建立单按键开关的开关能力输出接口与落地扇开关能力输入接口之间的连接。这是因为,在直接连线的情况下,在进行代码转化时,将直接获取与当前设备输出能力的能力状态相匹配的默认数据包,并将该默认数据包发送至其它设备的输入接口,而该默认数据包就是根据用户的常规使用需求配置的,因此可以使得当前设备能力与其它设备能力之间的控制关系满足常规使用需求。通过这样的设计,可以在建立当前设备能力接口与其它设备能力接口之间的连线后,自动匹配当前设备能力与其它设备能力之间的控制关系,从而可以进一步降低物联网应用的生成难度。
在当前设备能力与其它设备能力之间的控制关系不符合用户常规使用需求时,就需要通过添加逻辑编辑区的方式建立当前设备能力接口与其它设备能力接口之间的连线,这样,便可以通过逻辑编辑区修订默认数据包,进而实现修订当前设备能力与其它设备能力之间的控制关系的目的。举例来说,在使用单按键开关的开关能力控制落地扇的开关能力时,常规使用需求为:在单按键开关为开时,控制落地扇打开;在单按键开关为关时,控制落地扇关闭。而前用户的希望在单按键开关为开时,控制落地扇关闭;在单按键开关为关时,控制落地扇打开。此时,则需要在单按键开关与落地扇之间建立如图4所示的逻辑编辑区,并通过该逻辑编辑区建立单按键开关的开关输出能力接口与落地扇开关输入能力接口之间的连线。这样,便可以通过逻辑编辑区修订与单按键开关的开关能力状态相匹配的默认数据包,进而将单按键开关的开关能力与落地扇开关能力之间常规控制关系修改为满足用户当前需求的控制关系。
在通过建立逻辑编辑区的方式建立当前设备能力接口与其它设备能力接口之间的连线时,可以包括以下步骤:建立当前设备能力接口与其它设备能力接口之间的直接连线。在建立直接连线后,根据点击直接连线中点的触发,在直接连线的中点位置创建出逻辑编辑区。该逻辑编辑区包括位于左侧的连接接口创建控件(如图4中位于逻辑编辑区左侧的【+】按钮)和位于右侧的连接接口创建控件(如图4中位于逻辑编辑区右侧的【+】按钮)。根据位于逻辑编辑区左侧且与当前设备能力接口连接的连接接口创建控件的触发,设置左侧连接接口的名称,例如,在如图4所示的实施例中将其名称设置为A1。根据位于逻辑编辑区右侧且与其它设备能力接口连接的连接接口创建控件的触发,设置右侧连接接口的名称,例如,在如图4所示的实施例中,将其命名为B1。最后,在逻辑列表中选择相应的可视化逻辑块,并对可视化逻辑块中的参数进行编辑,从而得到最终的修订逻辑。
在一种可能的实现方式中,逻辑列表中可以包括事件可视化逻辑块、控制可视化逻辑块、运算可视化逻辑块、元件可视化逻辑块、设备可视化逻辑块以及服务可视化逻辑块中的至少一种。其中,事件可视化逻辑块用于表征一个事件。例如,图4中标识“当A1内容变化时”的可视化逻辑块用于表征逻辑编辑区A1接口接收到的数据发生变化这个事件。控制可视化逻辑块用于配置设备之间的控制逻辑。例如,在传感器检测到有人时,需要控制家具灯打开,则需要在逻辑编辑区中创建一个控制可视化逻辑块,以通过控制可视化逻辑块参数的配置实现传感器对家居灯的上述控制逻辑。运算可视化逻辑块用于配置逻辑运算逻辑。例如,跳绳设备中需要进行跳绳次数的计数运算,则需要在逻辑编辑区中创建一个运算可视化逻辑块,以通过运算可视化逻辑块参数的配置实现对跳绳次数的计数处理。元件可视化逻辑块用于对基本元件的状态进行显示。例如,基本元件为日历,则可以在逻辑编辑区中创建一个元件可视化逻辑块,以通过元件可视化逻辑块参数的配置实现对日历元件中的当前日期进行显示。设备可视化逻辑块用于设置设备的接口之间的对应关系和数据处理逻辑。服务可视化逻辑块用于调用常见的快捷接口工具。例如,在需要查询天气时,可以在逻辑编辑区中创建一个服务可视化逻辑块,以通过服务可视化逻辑块参数的配置实现对天气查询快捷接口工具的调用,从而可以快速进行天气状况的查询。通过以上可视化逻辑块可以在逻辑编辑区中创建用户所需的修订逻辑。
在另一种可能的实现方式中,在通过建立逻辑编辑区的方式建立当前设备能力接口与其它设备能力接口之间的连线时,还可以通过以下步骤实现:根据生成逻辑编辑区的被拖拽至当前设备和其它设备之间的触发,在当前设备和其它设备之间创建逻辑编辑区。根据位于逻辑编辑区左侧的连接接口创建控件的触发对左侧连接接口的名称进行设置,并根据当前设备能力输出接口与左侧连接接口的连线触发,在当前设备能力输出接口与左侧连接接口之间建立连线。根据位于逻辑编辑区右侧的连接创建控件的触发对右侧连接接口的口名称进行设置,并根据其它设备输入能力接口与右侧连接接口的连线触发,在其它设备输入能力接口与右侧连接接口之前建立连线。最后,在逻辑列表中选择相应的可视化逻辑块,并对可视化逻辑块中的参数进行编辑,从而得到最终的修订逻辑。
通过生成的修订逻辑可以对输入逻辑编辑区左侧连接接口的默认数据包进行修订,从而使得其它设备的响应与用户意图一致,满足用户的个性化控制需求。
S1400,基于设备拓扑图,生成物联网应用。
在建立设备的能力接口与其它设备能力接口的连线时,通过直接连线的方式实现的实施例中,在基于设备拓扑图,生成物联网应用时,可以包括以下步骤:
第一,针对当前设备和其它设备分别获取对应的抽象类,并对抽象类进行实例化,得到声明当前设备和其它设备的第一代码。具体地,在图形化开发工具中预先存储有各种设备对应的抽象类,在生成物联网应用时,针对物联网应用编辑区内的每个设备,分别获取设备标识,并基于设备标识获取设备对应的抽象类,并对获取到的抽象类进行实例化,从而得到声明设备的第一代码。
举例来说,针对用户单击单按键开关,家居灯显示红色,双击单按键开关,家居灯显示黄色的场景下,参见上文步骤构建出的设备拓扑图可以如图5所示,在根据图5所示的设备拓扑图生成物联网应用时,先根据单按键开关的设备标识获取单按键开关对应的抽象类,并对单按键开关对应的抽象类进行实例化,得到声明单按键开关的第一代码。根据家居灯的设备标识获取家居灯对应的抽象类,并对家居灯对应的抽象类进行实例化,得到声明家居灯的第一代码。
其中,声明单按键开关的第一代码如下所示:
1. classSwitch{
2.//声明一个cal变量
3.#cal;
4.//声明当前开关的构造函数,默认开关的方法
5.constructor(deviceId){
6.//标记这个开关的身份证标识,可以从各种不同开关中找到当前使用的这个开关
7.this.deviceId=deviceId;
8.//开关上面挂一个onReceive方法,用来实时上报当前灯的信息
9.this.onReceive=(callBack)=>{
10.if(callBack){
11.this.#cal=callBack
12.}
13.}
14.}
15.}
声明家居灯的第一代码如下所示:
1.classLight{
2.//声明一个cal变量
3.#cal;
4.//声明当前灯的构造函数,默认灯上面的方法
5.constructor(deviceId){
6.//标记这个灯的身份证标识,可以从各种不同的灯中找到当前使用的这个灯
7.this.deviceId=deviceId;
8.//灯上面挂一个onReceive方法,用来实时上报当前灯的信息
9.this.onReceive=(callBack)=>{
10.if(callBack){
11.this.#cal=callBack
12.}
13.}
14.}
15.}
第二,将连线起点的设备识别为发送设备,将连线终点的设备识别为接收设备。具体地,将连线与输出能力接口连接的一端作为连线起点,将连线与输出能力接口连接的一端作为连线终点。
举例来说,针对图5中位于上侧的第一连线,左端连接单按键开关的单击触发输出能力接口,右端连接家居灯的RGB颜色输入能力接口,则第一连线左端为连线起点,右端为连线终点,因此,位于第一连线起点的单按键开关为发送设备,位于第一连线终点的家居灯作为接收设备。
第三,获取发送设备的输出能力,生成调取输出能力的能力状态,将与能力状态相匹配的数据包发送至接收设备的第二代码。
该发送设备的输出能力根据发送设备的输出能力接口进行确定。举例来说,针对图5中的第一连线,单按键开关作为发送设备其输出能力接口为单击触发输出能力接口,则此时获取到的单按键开关的输出能力为单击触发能力。
此处需要说明的是,在图形化开发工具中,针对各种设备的各种能力,分别设置有调取其能力状态的能力接口,这样,在获取到输出能力的情况下,便可以直接根据调取其能力状态的能力接口,生成调取输出能力状态的子代码。
进一步地,图形化开发工具中,针对各种设备的各种能力,分别设置有不同的能力状态,并针对各种能力状态设置有对应的默认数据包,这样,在获取到输出能力的能力状态后,便可以查询到与输出能力的能力状态相匹配的数据包,进而可以生成将与能力状态相匹配的数据包发送至接收设备的子代码。
举例来说,针对图5中的第一连线,生成的将与能力状态相匹配的数据包发送至接收设备的子代码如下所示:
1.input=true;
2. output={
3.device:{
4.name:'Light',//灯
5.category:'light',//灯
6.model:'xxx',//设备model
7.port:'OnOff'//开关
8.},
9.data:{
10.percent:0.100,//百分比
11.int:1,//整型
12.float:1.1,//小数类型
13.string:'1.1',//字符串
14.bool:true,
15.//真实值:【概念,单位,值,JS解析类型】
16.real:['State','',true,'boolean']
17.}
18.}
对上述两个子代码进行组合,即可得到调取输出能力的能力状态,将与能力状态相匹配的数据包发送至接收设备的第二代码。
在一种可能的实现方式中,数据包中包括预先设定的至少两种数据类型以及各数据类型对应的数据值。
在一种可能的实现方式中,每个数据包中预先设定的数据类型可以包括布尔型、整数型、字符型、浮点型和枚举类型中的至少一种。具体地,布尔型的数据类型可以记为bool,整数型的数据类型可以记为int,字符型的数据类型可以记为string,浮点型的数据类型可以记为float,枚举类型的数据类型可以记为enum,基于此,该数据包可以的内容可以如表1所示。
在一种可能的实现方式中,数据包中各数据类型对应的数据值基于用户的惯常控制需求确定,这样便可以使物联网设备的控制满足用户的惯常控制需求,从而提升用户的使用体验。
举例来说,用户通常会期望门窗处于开启的情况下可以控制室内的落地扇关闭,落地扇风速为0,工作模式选择关闭,监控装置可以显示“门窗开启”字样,同时,期望门窗处于关闭的情况下可以控制室内的落地扇开启,以体感最舒服的风速60进行运行,以自动的工作模型进行运行,监控装置可以显示“门窗关闭”字样,其中,落地扇开启通常采用bool型数据控制,风速通常采用int型数据控制,工作模型通常采用enum型数据控制,监控装置的显示字样通常采用string型数据控制,此时,可以将门窗传感器开启能力的闭合能力状态的数据包设置为表1的形式,将门窗传感器开启能力的分开能力状态的数据包设置为表2的形式。
表1
表2
第四,获取接收设备的输入能力,生成根据数据包设置输入能力的能力状态的第三代码。
在一种可能的实现方式中,在根据数据包设置输入能力的能力状态的第三代码时,可以包括以下步骤:
首先,获取输入能力接口的可支持数据类型,生成由数据包中提取出可支持数据类型的数据值的初始代码。
其次,生成基于数据值设置输入能力的能力状态的第三代码。
举例来说,针对图5中的第一连线,生成的第三代码可以如下所示:
1.比如上面图示,
2.(1)这里单击触发后连接了灯的设置红色。
3.这里对应生成与连线相关的代码的代码如下:
4.Switch.setClick().then(()=>{
5.//此时连线代码后,生成true
6.if(true){
7.Light.setRGB('red').then((output)=>{
8.//代码说明:获取到连线的值,设置红色成功
9.output.data.string='red'
10.})
11.}
12.})
第五,将第一代码、第二代码以及第三代码进行组合,得到物联网应用。
在建立设备的能力接口与其它设备能力接口的连线时,通过添加逻辑编辑区的方式实现的实施例中,在基于设备拓扑图,生成物联网应用时,还包括以下步骤:
第一,对逻辑编辑区中的可视化逻辑块进行代码转换的操作。具体地,每个可视化逻辑块均具有对应的映射代码,在进行代码转换时,按序获取逻辑编辑区中的可视化逻辑块,并调取可视化逻辑块对应的映射代码,进而将得到的所有映射代码进行按序组合,得到设备能力接口与其它设备能力接口之间的修订逻辑对应的代码。
举例来说,若用户希望将单按键开关被单击时亮红灯的默认逻辑修改为单按键开关被单击时亮蓝灯的逻辑,那么用户只需在如图5所示的设备拓扑图上添加如图6所示的逻辑编辑区,即可以实现默认控制逻辑的修改。
针对图6中逻辑编辑区中的修订逻辑,生成的修订逻辑代码如下所示:
1.Switch.setClick().then(()=>{
2.//此时A1点击后,A1接口变化信号发出,生成true
3.if(true){
4.//灯收到后,设置RGB颜色为blue
5.Light.setRGB('blue').then((output)=>{
6.//代码说明:获取到连线的值,设置蓝色成功
7.output.data.string='blue'
8.})
9.}
10.})
第二,生成将通过修订逻辑修订后的默认数据包发送至接收设备的第二代码。
其它代码转换步骤与直线连接方式相同,在此不再赘述。
本公开提供了一种图形化生成物联网应用的方法,包括:根据当前设备标识的触发,在物联网应用编辑区中渲染出相应的当前设备;根据配置的设备能力以及数据传输属性,创建当前设备的能力接口;根据当前设备的能力接口与其它设备能力接口的连接触发,建立当前设备的能力接口与其它设备能力接口的连线,以得到物联网应用的设备拓扑图;基于设备拓扑图,生成物联网应用;其中,设备能力用于表征设备所具有的功能。由于本公开中是基于物联网设备的拓扑图生成物联网应用的,因此,用户仅需要在物联网应用编辑区中创建出上述设备拓扑图即可以自动生成相应的物联网应用,从而使得不具备编程基础的普通用户也可以根据自己的需求生成物联网应用。
<装置实施例>
图7示出根据本公开一实施例物联网应用生成装置的示意性框图。如图7所示,物联网应用生成装置100包括:
设备生成模块110,用于根据当前设备标识的触发,在物联网应用编辑区中渲染出相应的当前设备;
能力接口创建模块120,用于根据配置的设备能力以及数据传输属性,创建所述当前设备的能力接口;
能力接口连接模块130,用于根据所述当前设备的能力接口与其它设备能力接口的连接触发,建立所述当前设备的能力接口与其它设备能力接口的连线,以得到物联网应用的设备拓扑图;
代码生成模块140,用于基于所述设备拓扑图,生成所述物联网应用;
其中,所述设备能力用于表征设备所具有的功能。
<设备实施例>
图8示出根据本公开一实施例物联网应用生成设备的示意性框图。如图8所示,物联网应用生成设备200包括:处理器210以及用于存储处理器210可执行指令的存储器220。其中,处理器210被配置为执行可执行指令时实现前面任一所述的基于图形化生成物联网应用的方法。
此处,应当指出的是,处理器210的个数可以为一个或多个。同时,在本公开实施例的物联网应用生成设备200中,还可以包括输入装置230和输出装置240。其中,处理器210、存储器220、输入装置230和输出装置240之间可以通过总线连接,也可以通过其他方式连接,此处不进行具体限定。
存储器220作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序和各种模块,如:本公开实施例的基于图形化生成物联网应用的方法所对应的程序或模块。处理器210通过运行存储在存储器220中的软件程序或模块,从而执行物联网应用生成设备200的各种功能应用及数据处理。
输入装置230可用于接收输入的数字或信号。其中,信号可以为产生与设备/终端/服务器的用户设置以及功能控制有关的键信号。输出装置240可以包括显示屏等显示设备。
<存储介质实施例>
根据本公开的第四方面,还提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,计算机程序指令被处理器210执行时实现前面任一所述的基于图形化生成物联网应用的方法。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (10)

1.一种图形化生成物联网应用的方法,其特征在于,包括:
根据当前设备标识的触发,在物联网应用编辑区中渲染出相应的当前设备;
根据配置的设备能力,创建所述当前设备的能力接口;
根据所述当前设备的能力接口与其它设备能力接口的连接触发,建立所述当前设备的能力接口与其它设备能力接口的连线,以得到物联网应用的设备拓扑图;
基于所述设备拓扑图,生成所述物联网应用;
其中,所述设备能力用于表征设备所具有的功能。
2.根据权利要求1所述的方法,其特征在于,所述当前设备上设置有接口创建控件,在配置所述设备能力时,基于所述接口创建控件实现。
3.根据权利要求2所述的方法,其特征在于,在基于所述接口创建控件,配置所述设备能力时,包括:
根据所述接口创建控件的触发,推送显示所述当前设备的能力列表,其中,所述能力列表中包括同类所述当前设备的所有能力;
基于所述能力列表,配置所述设备能力。
4.根据权利要求1所述的方法,其特征在于,在根据配置的设备能力,创建所述当前设备的能力接口时,还包括:配置所述能力接口的数据传输属性。
5.根据权利要求1所述的方法,其特征在于,建立所述当前设备的能力接口与其它设备能力接口的连线时,通过直接连线的方式或添加逻辑编辑区的方式实现。
6.根据权利要求5所述的方法,其特征在于,在建立所述当前设备的能力接口与其它设备能力接口的连线时,通过直接连线的方式实现;
在基于所述设备拓扑图,生成所述物联网应用时,包括:
针对所述当前设备和所述其它设备分别获取对应的抽象类,并对所述抽象类进行实例化,得到声明所述当前设备和所述其它设备的第一代码;
将所述连线的起点的设备识别为发送设备,将所述连线的终点的设备识别为接收设备;
获取所述发送设备的输出能力,生成调取所述输出能力的能力状态,将与所述能力状态相匹配的数据包发送至所述接收设备的第二代码;
获取所述接收设备的输入能力,生成根据所述数据包设置所述输入能力的能力状态的第三代码;
将所述第一代码、所述第二代码以及所述第三代码进行组合,得到所述物联网应用。
7.根据权利要求6所述的方法,其特征在于,所述数据包中包括预先设定的至少两种数据类型以及各所述数据类型对应的数据值。
8.一种图像化生成物联网应用的装置,其特征在于,包括:
设备生成模块,用于根据当前设备标识的触发,在物联网应用编辑区中渲染出相应的当前设备;
能力接口创建模块,用于根据配置的设备能力,创建所述当前设备的能力接口;
能力接口连接模块,用于根据所述当前设备的能力接口与其它设备能力接口的连接触发,建立所述当前设备的能力接口与其它设备能力接口的连线,以得到物联网应用的设备拓扑图;
代码生成模块,用于基于所述设备拓扑图,生成所述物联网应用;
其中,所述设备能力用于表征设备所具有的功能。
9.一种图形化生成物联网应用的设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述可执行指令时实现权利要求1至7中任意一项所述的方法。
10.一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1至7中任意一项所述的方法。
CN202410028129.7A 2024-01-09 2024-01-09 图形化生成物联网应用的方法、装置、设备及存储介质 Active CN117556578B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410028129.7A CN117556578B (zh) 2024-01-09 2024-01-09 图形化生成物联网应用的方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410028129.7A CN117556578B (zh) 2024-01-09 2024-01-09 图形化生成物联网应用的方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN117556578A true CN117556578A (zh) 2024-02-13
CN117556578B CN117556578B (zh) 2024-03-26

Family

ID=89823418

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410028129.7A Active CN117556578B (zh) 2024-01-09 2024-01-09 图形化生成物联网应用的方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN117556578B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160232196A1 (en) * 2009-07-07 2016-08-11 Certusview Technologies, Llc Methods, apparatus and systems for generating electronic records of underground facility locate and/or marking operations
CN106990895A (zh) * 2017-03-30 2017-07-28 山东中创软件商用中间件股份有限公司 一种基于jTopo技术实现的应用拓扑图编辑器
CN110161870A (zh) * 2019-05-16 2019-08-23 中科物栖(北京)科技有限责任公司 一种物联网设备控制方法及系统
CN110531972A (zh) * 2019-09-05 2019-12-03 无锡华云数据技术服务有限公司 资源编排资源属性的编辑方法及装置
CN111556158A (zh) * 2020-05-08 2020-08-18 中国通信服务股份有限公司 物联网平台的接入方法、接入装置、接入设备及存储介质
CN112241424A (zh) * 2020-10-16 2021-01-19 中国民用航空华东地区空中交通管理局 一种基于知识图谱的空管设备应用系统及方法
CN114094694A (zh) * 2021-10-20 2022-02-25 深圳市微信联科技有限公司 一种拖拽式智能断路器管理系统及其控制方法
CN114580674A (zh) * 2022-03-09 2022-06-03 树根互联股份有限公司 设备运行信息的处理方法及电子设备
CN115495067A (zh) * 2022-09-29 2022-12-20 济南浪潮数据技术有限公司 一种拓扑图编辑器代码可视化生成方法、装置及存储介质
CN115981619A (zh) * 2022-12-08 2023-04-18 睿珀智能科技有限公司 可视化功能编辑器

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160232196A1 (en) * 2009-07-07 2016-08-11 Certusview Technologies, Llc Methods, apparatus and systems for generating electronic records of underground facility locate and/or marking operations
CN106990895A (zh) * 2017-03-30 2017-07-28 山东中创软件商用中间件股份有限公司 一种基于jTopo技术实现的应用拓扑图编辑器
CN110161870A (zh) * 2019-05-16 2019-08-23 中科物栖(北京)科技有限责任公司 一种物联网设备控制方法及系统
CN110531972A (zh) * 2019-09-05 2019-12-03 无锡华云数据技术服务有限公司 资源编排资源属性的编辑方法及装置
CN111556158A (zh) * 2020-05-08 2020-08-18 中国通信服务股份有限公司 物联网平台的接入方法、接入装置、接入设备及存储介质
CN112241424A (zh) * 2020-10-16 2021-01-19 中国民用航空华东地区空中交通管理局 一种基于知识图谱的空管设备应用系统及方法
CN114094694A (zh) * 2021-10-20 2022-02-25 深圳市微信联科技有限公司 一种拖拽式智能断路器管理系统及其控制方法
CN114580674A (zh) * 2022-03-09 2022-06-03 树根互联股份有限公司 设备运行信息的处理方法及电子设备
CN115495067A (zh) * 2022-09-29 2022-12-20 济南浪潮数据技术有限公司 一种拓扑图编辑器代码可视化生成方法、装置及存储介质
CN115981619A (zh) * 2022-12-08 2023-04-18 睿珀智能科技有限公司 可视化功能编辑器

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MEENAKSHI SHRUTI PAL等: "Current status, topographical constraints, and implementation strategy of municipal solid waste in India: a review", pages 1 - 26, Retrieved from the Internet <URL:《网页在线公开:https://link.springer.com/article/10.1007/s12517-022-10414-w》> *
蔡业胜: "基于物联网的智能配电监测系统研究", 《中国优秀硕士论文学位论文全文数据库 工程科技II辑》, 15 April 2021 (2021-04-15), pages 3 *

Also Published As

Publication number Publication date
CN117556578B (zh) 2024-03-26

Similar Documents

Publication Publication Date Title
CN113412457B (zh) 场景推送方法、装置、系统、电子设备以及存储介质
CN112180754B (zh) 智能控制场景的设定方法、设备控制系统
KR20160034775A (ko) 조명 제어 장치 및 이의 조명 제어 방법
JP2009520448A (ja) アプリケーション適応的モバイル端末
CN111970180B (zh) 智能家居设备的组网配置方法、装置、电子设备及存储介质
CN108833223A (zh) 家电设备控制方法、装置、遥控器、终端、服务器及介质
CN108803371B (zh) 一种电器设备的控制方法以及装置
CN113253625A (zh) 智能家居控制方法、装置、设备及存储介质
EP3075206A1 (en) Zigbee light link network commissioning
CN109189295A (zh) 显示控制方法、装置及终端设备
CN110764679A (zh) 电器设备的控制方法、存储介质及处理器
CN114978925B (zh) 一种物模型创建方法及系统
CN113110093A (zh) 智能家居控制面板的控制方法、装置、设备及存储介质
CN117556578B (zh) 图形化生成物联网应用的方法、装置、设备及存储介质
JP4907354B2 (ja) リモートユーザインタフェースに関する一貫したユーザインタフェースのフロントエンド
CN114385276A (zh) 信息处理方法、装置和存储介质
CN208001293U (zh) 基于ZigBee和Raspberry Pi的智能家居系统
CN112015101A (zh) 智能设备的控制方法、装置、智能控制开关以及存储介质
US10959315B2 (en) System and method for operation of multiple lighting units in a building
CN115066074A (zh) 一种灯具匹对控制可视化的方法及装置
CN114659252A (zh) 空调器与照明装置的互联控制方法与装置
CN117555527B (zh) 物联网应用的开发方法、装置、设备和存储介质
CN117768511A (zh) 物联网设备的数据传输方法、装置、设备和存储介质
CN114024862A (zh) 一种物理交换机可视化配置方法、系统及装置
CN117806620A (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