一种用于智慧控制系统的在线编程工具及方法
文献发布时间:2023-06-19 10:38:35
技术领域
本申请涉及系统设计技术的领域,尤其是涉及一种用于智慧控制系统的在线编程方法及系统。
背景技术
智能家居控制系统(smarthome control system,SCS),也称为智慧控制系统,是以智能家居系统为平台,家居电气及家电设备为主要控制对象,利用综合布线技术、网络通信技术、安全防范技术、自动控制技术、音视频技术将家居有关的设备进行高效集成,构建高效的住宅设施与家庭日程实务的控制管理系统,提升家居智能、安全、便利、舒适,并能实现环保控制系统平台。
为了清除在智能家居控制系统运行中发生的故障和错误,以及为了使系统适应用户环境的变化,满足新提出的需要,也要对原系统做些局部的更新,这些工作都称为系统维护。
在智能家居控制系统的系统维护工作中,一般维护人员现根据需要维护的功能编写/修改相应的代码,以形成数据包,再将数据包发送至智能家居控制系统实现更新或维护。但是,前期编写/修改代码需要耗费较长的时间,导致智能家居控制系统维护成本较高。
发明内容
为了改善智能家居控制系统维护成本较高的问题,本申请提供一种用于智慧控制系统的在线编程工具及方法。
第一方面,本申请提供一种用于智慧控制系统的在线编程工具,采用如下的技术方案:
一种用于智慧控制系统的在线编程工具,所述在线编程工具包括代码库、存储单元、逻辑单元、编辑器、编译器和控制单元;其中,
所述代码库,存储有代码;
所述逻辑单元,存储有执行逻辑;
所述存储单元,存储有但不限于函数、参数和变量;
所述编辑器,用于根据用户编辑的功能需求调用代码库中对应的代码、逻辑单元中对应的执行逻辑以及存储单元中对应的函数、参数和变量,生成功能代码;
所述编译器,用于将功能代码编译成编程语言,生成程序包文件;以及,
所述控制单元,用于发送升级命令给目标系统主机,在接收目标系统主机返回的控制命令后,将程序包文件通过调试工具发送至目标系统主机上,并接收目标系统主机解析程序包文件后返回的升级结果。
通过采用上述技术方案,用户在编辑器上编辑功能需求后,编辑器根据用户的功能需求调用对应的代码、函数、参数变量和执行逻辑,自动生成功能代码,编译器将编辑器生成的功能代码编译成编程语言后生成程序包文件,控制单元发送升级命令给目标系统主机,并在接收到目标系统主机根据升级命令返回的控制命令后,将程序包文件发送给目标系统主机,功能代码自动生成,无需重复修改代码,程序包文件自动发送,生效速度快,且可以满足不同用户/客户的功能需求,能够提高目标系统的部署效率,从而能够改善智能家居控制系统维护成本较高的问题;此外,控制单元接收目标系统主机解析程序包文件后返回的升级结果,从而便于维护人员/用户及时得到升级是否成功。
可选的,所述编程语言可以是二进制程序语言。
通过采用上述技术方案,二进制语言是面向机器的语言,从而便于使生成的程序包文件被各类计算机、计算设备等识别。
可选的,所述程序包文件能够被可编程逻辑控制器识别并执行。
通过采用上述技术方案,程序包文件能够被单片机、PLC等可编程逻辑控制器识别并执行,从而提高在线编程工具的实用性。
可选的,所述在线编程工具还包括UI界面,所述UI界面用于将用户编辑功能需求的过程进行可视化。
通过采用上述技术方案,用户进行需求功能编辑时,能够通过UI界面实时查看已编辑的需求功能是否出现问题,来及时进行修改,能够降低生成的功能代码错误的几率,从而有助于改善智能家居控制系统维护成本较高的问题。
可选的,所述调试工具包括但不限于socket工具。
通过采用上述技术方案,socket工具能够帮助检查网络应用软件及硬件的通讯情况,以有助于向目标系统主机发送程序包文件。
第二方面,本申请提供一种用于智慧控制系统的在线编程方法,采用如下的技术方案:
一种用于智慧控制系统的在线编程方法,所述在线编程方法包括,
功能代码生成,基于用户编辑的功能需求调用代码对应的代码、函数、参数、变量和执行逻辑,生成功能代码;
程序包文件生成,将功能代码编译成编程语言,生成程序包文件;
程序包文件发送,将程序包文件转换成二进制代码发送给目标系统主机;以及,
升级结果接收,接收目标系统主机解析程序包文件后返回的升级结果。
通过采用上述技术方案,用户编辑功能需求后,能够根据用户编辑的功能需求调用对应的代码、函数、参数变量和执行逻辑,自动生成功能代码,并将生成的功能代码编译成编程语言后生成程序包文件,接着将程序包文件转换成二进制代码后发送给目标系统主机,功能代码自动生成,无需重复修改代码,程序包文件自动发送,生效速度快,且可以满足不同用户/客户的功能需求,能够提高目标系统的部署效率,从而有助于改善智能家居控制系统维护成本较高的问题;此外,能够接收目标系统主机解析程序包文件后返回的升级结果,从而便于维护人员/用户及时得到升级是否成功。
可选的,所述程序包文件发送的具体方法包括,
向目标系统主机发送升级命令,并判断是否接收到目标系统主机接收升级命令后返回的控制命令;以及,
若接收到返回的控制命令,则将程序包文件转换成二进制代码发送给目标系统主机,否则,重新发送升级命令。
通过采用上述技术方案,将升级命令发送给目标系统主机,使目标系统主机配置好资源和端口供接收程序包文件,目标系统主机配置完成后,会返回控制命令,若配置不成功装置,则不返回控制命令,接收到返回的控制命令后,发送程序包文件,否则,重新发送升级命令,直至接收到控制命令,使得程序包文件被目标系统主机接收并解析成功的概率提高,有助降低程序包文件发送失败的几率。
可选的,所述程序包文件能够被可编程逻辑控制器识别并执行。
通过采用上述技术方案,程序包文件能够被单片机、PLC等可编程逻辑控制器识别并执行,从而有助于提高实用性。
可选的,所述用户编辑功能需求的过程为可视化操作。
通过采用上述技术方案,用户进行需求功能编辑时,能够实时查看已编辑的需求功能是否出现问题,来及时进行修改,能够降低生成的功能代码错误的几率,从而有助于改善智能家居控制系统维护成本较高的问题。
第三方面,本申请提供一种计算机可读存储介质,采用如下的技术方案;
一种计算机可读存储介质,存储有能够被处理器加载并执行如第二方面中任一种方法的计算机程序。
综上所述,本申请包括以下至少一种有益技术效果。
附图说明
图1是本申请实施例的一种用于智慧控制系统的在线编程工具的结构示意图。
图2是本申请实施例的在线编程的流程图。
图3是本申请实施例的一种用于智慧控制系统的在线编程方法的第一流程图。
图4是本申请实施例的一种用于智慧控制系统的在线编程方法的第二流程图。
附图标记说明:1、逻辑单元;2、代码库;3、存储单元;4、编辑器;5、编译器;6、UI界面;7、控制单元;8、目标系统主机。
具体实施方式
以下结合附图1-4对本申请作进一步详细说明。
智能家居控制系统(smarthome control system,SCS),也称为智慧控制系统,是以智能家居系统为平台,家居电气及家电设备为主要控制对象,利用综合布线技术、网络通信技术、安全防范技术、自动控制技术、音视频技术将家居有关的设备进行高效集成,构建高效的住宅设施与家庭日程实务的控制管理系统,提升家居智能、安全、便利、舒适,并能实现环保控制系统平台。
现今,已有智慧控制系统采用单片机方案,采用单片机芯片作为控制器,继电器作为通断开关,结合强弱电主板分离式设计,以C语言为底层程序实现。这种智慧控制系统,性能稳定,且功能强大。
本申请实施例公开一种用于智慧控制系统的在线编程工具。参照图1和图2,在线编程工具包括代码库2、存储单元3、逻辑单元1、编辑器4、编译器5和控制单元7;其中,
代码库2,存储有代码;
逻辑单元1,存储有执行逻辑;
存储单元3,存储有但不限于函数、参数和变量;
编辑器4,用于根据用户编辑的功能需求调用代码存储单元3中对应的代码、逻辑单元1中对应的执行逻辑以及存储单元3中对应的函数、参数和变量,生成功能代码;
编译器5,用于将功能代码编译成编程语言,生成程序包文件;以及,
控制单元7,用于发送升级命令给目标系统主机8,在接收目标系统主机8返回的控制命令后,将程序包文件通过调试工具发送至目标系统主机8上,并接收目标系统主机8解析程序包文件后返回的升级结果。
其中,编程语言可以是二级制程序语言,且程序包文件能够被可编程逻辑控制器识别并执行。目标系统主机8可能是智慧控制系统、楼宇控制系统等或类似系统的控制主机。执行逻辑包括各种类型的目标控制系统的软硬件设备的执行逻辑,例如,按键执行逻辑、开关执行逻辑等。
需要说明的是,程序包文件能够被可编程逻辑控制器识别并执行。使得程序包文件能够被采用单片机、PLC等方案的控制系统所解析。
上述在线编程工具的实施方式中,用户在编辑器4上编辑功能需求后,编辑器4根据用户的功能需求调用对应的代码、函数、参数变量和执行逻辑,自动生成功能代码,编译器5将编辑器4生成的功能代码编译成编程语言后生成程序包文件,控制单元7发送升级命令给目标系统主机8,并在接收到目标系统主机8根据升级命令返回的控制命令后,将程序包文件发送给目标系统主机8,功能代码自动生成,无需重复修改代码,程序包文件自动发送,生效速度快,且可以满足不同用户/客户的功能需求,能够提高目标系统的部署效率,从而能够改善智能家居控制系统维护成本较高的问题;此外,控制单元7接收目标系统主机8解析程序包文件后返回的升级结果,从而便于维护人员/用户及时得到升级是否成功。
参照图1,作为在线编程工具的进一步实施方式,在线编程工具还包括UI界面6,UI界面6用于将用户编辑功能需求的过程进行可视化操作。
上述在线编程工具的进一步实施方式中,用户进行需求功能编辑时,能够通过UI界面6实时查看已编辑的需求功能是否出现问题,来及时进行修改,能够降低生成的功能代码错误的几率,从而有助于改善智能家居控制系统维护成本较高的问题。
作为调试工具的一种实施方式,调试工具包括但不限于socket工具。socket工具能够帮助检查网络应用软件及硬件的通讯情况,以有助于向目标系统主机8发送程序包文件。
以采用单片机方案的智慧控制系统为维护应用场景,用户编辑的功能需求包括一般设定、I/O设定、空调设定、红外设定、模式设定、组合案件设定和语音控制设定,这些功能需求均可以在UI界面显示,并进行设定。
其中,一般设定包括酒店编号/家庭编号设置、温控器厂家选择、状态同步开关选择、开关背光类型选择、开关通讯类型选择、门牌输出类型选择、空调类型选择、窗帘电机类型选择、红外触发电平选择、门磁触发电平选择、拔卡延时设定、昼夜模式切换、空调季节模式选择等。
I/O设定包括输入编号设定、输入类型设定、输出类型设定、输出回路设定等。
空调设定包括多个空调的参数设定,其中,每个空调的配置包括空调的状态设定、空调模式设定和温控器ID设定等。
红外设定包括新增红外区域设定、红外启用、回路ID设定和保持时长设置。
模式设定包括新增模式种类选择,其中,每个模式的配置包括每个活路上的类型(继电器、开关、窗帘、空调、调光和背景音乐等)以及各个类型的状态配置。当新增类型为灯光时,则灯光模式设定包括新增灯光组合设置、灯光组合执行条件设置、灯光组合下设备添加及添加的设备的状态配置。
组合案件设定包括组合案件的新增、执行逻辑选择及配置。
语音控制设定包括指令配置、名称配置、类型配置和回路ID配置。
上述的功能需求的编辑过程在编辑器4上进行编辑,UI界面6将编辑过程进行可视化,以便于用户实时查看已编辑的功能是否出现错误,以便于及时修正。
本申请提供的一种用于智慧控制系统的在线编程工具,可以基于Windows、Linux等系统实现,开发语言可以基于C语言,硬件基于单片机。其中,UI界面、可设定的功能可以根据不同人的功能喜好来进行配置。
本申请实施例还公开一种用于智慧控制系统的在线编程方法,参照图2和图3,在线编程方法包括,
功能代码生成101,基于用户编辑的功能需求调用代码对应的代码、函数、参数、变量和执行逻辑,生成功能代码;
程序包文件生成102,将功能代码变异成编程语言,生成程序包文件;
程序包文件发送103,将程序包文件转换成二进制代码发送给目标系统主机8;以及,
升级结果接收104,接收目标系统主机8解析程序包文件后返回的升级结果。
需要说明的是,程序包文件能够被可编程逻辑控制器识别并执行。返回的升级结果包括失败或成功,若返回的升级结果为失败,则维护人员可及时对目标系统主机8所在目标控制系统进行维护。
上述在线编程方法的实施方式中,用户编辑功能需求后,能够根据用户编辑的功能需求调用对应的代码、函数、参数变量和执行逻辑,自动生成功能代码,并将生成的功能代码编译成编程语言后生成程序包文件,接着将程序包文件转换成二进制代码后发送给目标系统主机8,功能代码自动生成,无需重复修改代码,程序包文件自动发送,生效速度快,且可以满足不同用户/客户的功能需求,能够提高目标系统的部署效率,从而有助于改善智能家居控制系统维护成本较高的问题;此外,能够接收目标系统主机8解析程序包文件后返回的升级结果,从而便于维护人员/用户及时得到升级是否成功。
参照图2和图4,作为程序包文件发送103的一种实施方式,程序包文件发送103的具体步骤如下:
1031、向目标系统主机8发送升级命令,并判断是否接收到目标系统主机8接收升级命令后返回的控制命令。
1032、若接收到返回的控制命令,则将程序包文件转换成二进制代码发送给目标系统主机8,否则,重新发送升级命令
上述程序包文件发送103的实施方式中,将升级命令发送给目标系统主机8,使目标系统主机8配置好资源和端口供接收程序包文件,目标系统主机8配置完成后,会返回控制命令,若配置不成功装置,则不返回控制命令,接收到返回的控制命令后,发送程序包文件,否则,重新发送升级命令,直至接收到控制命令,使得程序包文件被目标系统主机8接收并解析成功的概率提高,有助降低程序包文件发送失败的几率。
作为在线编程方法的进一步实施方式,用户编辑功能需求的过程为可视化操作。
上述在线编程方法的进一步实施方式中,用户进行需求功能编辑时,能够实时查看已编辑的需求功能是否出现问题,来及时进行修改,能够降低生成的功能代码错误的几率,从而有助于改善智能家居控制系统维护成本较高的问题。
本申请实施例还公开一种计算机可读存储介质,存储有能够被处理器加载并执行如一种用于智慧控制系统的在线编程方法中任一种方法的计算机程序。
以上均为本申请的较佳实施例,并非依此限制本申请的保护范围,故:凡依本申请的结构、形状、原理所做的等效变化,均应涵盖于本申请的保护范围之内。
- 一种用于智慧控制系统的在线编程工具及方法
- 一种用于智慧装备控制系统的防护设备及其防护方法