CN111684414A - 可视化编程控制装置、可编程控制的设备及其控制方法、计算机可读存储介质以及编程控制系统 - Google Patents
可视化编程控制装置、可编程控制的设备及其控制方法、计算机可读存储介质以及编程控制系统 Download PDFInfo
- Publication number
- CN111684414A CN111684414A CN201980008953.3A CN201980008953A CN111684414A CN 111684414 A CN111684414 A CN 111684414A CN 201980008953 A CN201980008953 A CN 201980008953A CN 111684414 A CN111684414 A CN 111684414A
- Authority
- CN
- China
- Prior art keywords
- visual programming
- execution
- program
- control device
- programming 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.)
- Pending
Links
- 230000000007 visual effect Effects 0.000 title claims abstract description 250
- 238000000034 method Methods 0.000 title claims abstract description 92
- 238000004891 communication Methods 0.000 claims description 47
- 230000001360 synchronised effect Effects 0.000 claims description 22
- 230000004044 response Effects 0.000 claims description 14
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 claims description 11
- 238000012790 confirmation Methods 0.000 claims description 8
- 230000000694 effects Effects 0.000 claims description 7
- 230000003190 augmentative effect Effects 0.000 claims 1
- 238000013461 design Methods 0.000 abstract description 7
- 230000008569 process Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 4
- 230000001795 light effect Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 239000008280 blood Substances 0.000 description 1
- 210000004369 blood Anatomy 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010304 firing Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 238000012800 visualization Methods 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/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/0011—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement
- G05D1/0016—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement characterised by the operator's input device
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/0011—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement
- G05D1/0022—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement characterised by the communication link
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/0011—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement
- G05D1/0038—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement by providing the operator with simple or augmented images from one or more cameras located onboard the vehicle, e.g. tele-operation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3632—Software debugging of specific synchronisation aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Aviation & Aerospace Engineering (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Stored Programmes (AREA)
Abstract
一种用于可视化编程控制设备的方法、可视化编程控制装置、可编程控制的设备、计算机可读存储介质以及编程控制系统。该方法包括:提供可视化编程界面(S11),可视化编程界面中包括多个对象块,每个对象块分别被配置为与设备所包括的至少一个执行部件相关联;针对选定的对象块提供相关的程序块,在可视化编程界面中,基于程序块生成选定的对象块的执行程序(S12);根据执行程序生成控制设备的控制指令(S13);以及将控制指令发送到设备(S14)。该方法提供了对于模块化设计产品的支持和编程控制。
Description
技术领域
本发明实施例涉及编程控制技术领域,尤其涉及一种可视化编程控制装置、可编程控制的设备、用于可视化编程控制设备的方法、计算机可读存储介质以及编程控制系统。
背景技术
随着编程技术的不断发展和进步,现在市面上兴起了一种像blockly和scratch等图形化编程工具,其打破了传统的程序编程模式,不再要求用户输入复杂的程序代码,用户只需通过拖拽预先设定的程序模块,来控制角色和背景等元素的行动和变化,即使在用户从未学过程序编程的情况下,也能够轻易地完成创作设计,锻炼其编程能力,达到教育教学的目的。
现有的图形化编程工具通常使用灌入的方式将编写的程序在硬件上运行。然而,现有的图形化编程工具缺少对模块化产品的支持。
发明内容
本发明提供一种可视化编程控制装置、可编程控制的设备、用于可视化编程控制设备的方法、计算机可读存储介质以及编程控制系统。
根据本发明实施例的一个方面,提供一种可视化编程控制装置。所述可视化编程控制装置用于控制包括至少一个可编程的执行部件的设备,其包括适于存储多条程序命令的存储器、处理器及无线通信模块。当所述程序命令被所述处理器执行时,所述处理器被配置为:提供可视化编程界面,所述可视化编程界面中包括多个对象块,每个所述对象块分别被配置为与所述至少一个执行部件相关联;针对选定的对象块提供相关的程序块,在可视化编程界面中,基于所述程序块生成所述选定的对象块的执行程序;及根据所述执行程序生成控制所述设备的控制指令。所述无线通信模块被配置为发送所述控制指令。
根据本发明实施例的另一个方面,提供一种用于可视化编程控制设备的方法。所述方法包括:提供可视化编程界面,所述可视化编程界面中包括多个对象块,每个所述对象块分别被配置为与所述设备所包括的至少一个执行部件相关联;针对选定的对象块提供相关的程序块,在可视化编程界面中,基于所述程序块生成所述选定的对象块的执行程序;根据所述执行程序生成控制所述设备的控制指令;以及将所述控制指令发送到所述设备。
根据本发明实施例的另一个方面,提供一种计算机可读存储介质。所述计算机可读存储介质适于存储多条程序命令,当所述程序命令被所述处理器执行时执行上述的用于可视化编程控制设备的方法的步骤。
根据本发明实施例的另一个方面,提供一种可编程控制的设备。所述设备包括至少一个可编程的执行部件及智能中控。所述智能中控与所述至少一个执行部件通讯连接,其中,所述智能中控被配置为:上传与可视化编程控制装置提供的对象块相关联的执行部件是否已挂载到所述设备的同步状态消息;在所述相关联的执行部件已挂载到所述设备的同步状态下,接收来自于所述可视化编程控制装置的控制指令;及根据所述控制指令控制所述设备的相应执行部件执行。
根据本发明实施例的另一个方面,提供一种用于可视化编程控制设备的方法。所述方法包括:上传与可视化编程控制装置提供的对象块相关联的执行部件是否已挂载到所述设备的同步状态消息;在所述相关联的执行部件已挂载到所述设备的同步状态下,接收来自于所述可视化编程控制装置的控制指令;及根据所述控制指令控制所述设备的相应执行部件执行。
根据本发明实施例的另一个方面,提供一种编程控制系统。所述编程控制系统包括设备及可视化编程控制装置。所述设备包括至少一个可编程的执行部件和智能中控,所述智能中控与所述至少一个执行部件通讯连接。所述可视化编程控制装置包括适于存储多条程序命令的存储器、处理器及无线通信模块。当所述程序命令被所述处理器执行时,所述处理器被配置为:提供可视化编程界面,所述可视化编程界面中包括多个对象块,每个所述对象块分别被配置为与所述至少一个执行部件相关联;针对选定的对象块提供相关的程序块,在可视化编程界面中,基于所述程序块生成所述选定的对象块的执行程序;及根据所述执行程序生成控制所述设备的控制指令。所述无线通信模块其被配置为将所述控制指令发送到所述设备。所述智能中控被配置为:接收来自于所述可视化编程控制装置的控制指令;及根据所述控制指令控制所述设备的相应执行部件执行。
本发明实施例针对可编程的硬件模块,设计开发了与该可编程的硬件模块相关联的对应软件模块,并且,进一步针对软件模块进行编程,来达到对于该可编程的硬件模块的控制,从而提供了对于模块化设计产品的支持和编程控制。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例的编程控制系统的一个应用场景示意图;
图2为本发明编程控制系统的一个实施例的示意性框图;
图3为本发明实施例提供的可视化编程界面的一种状态显示图;
图4为本发明实施例提供的可视化编程界面的另一种状态显示图;
图5为本发明用于可视化编程控制设备的方法在控制端一侧的一个实施例的流程图;
图6为本发明用于可视化编程控制设备的方法在控制端一侧的另一个实施例的流程图;
图7为本发明用于可视化编程控制设备的方法在控制端一侧的另一个实施例的流程图;
图8为本发明用于可视化编程控制设备的方法在控制端一侧的另一个实施例的流程图;
图9为本发明用于可视化编程控制设备的方法在控制端一侧的另一个实施例的流程图;
图10为本发明用于可视化编程控制设备的方法在控制端一侧的另一个实施例的流程图;
图11为本发明用于可视化编程控制设备的方法在设备端一侧的一个实施例的流程图;
图12为本发明用于可视化编程控制设备的方法在设备端一侧的另一个实施例的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
在本发明使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。除非另行指出,“前部”、“后部”、“下部”和/或“上部”等类似词语只是为了便于说明,而并非限于一个位置或者一种空间定向。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而且可以包括电性的连接,不管是直接的还是间接的。在本发明中“能够”可以表示具有能力。
下面结合附图,对本发明的各个实施例进行详细说明。在不冲突的情况下,下述的实施例及实施方式中的特征可以相互组合。
图1为本发明实施例的编程控制系统的一个应用场景示意图,图2为本发明编程控制系统的一个实施例的示意性框图。如图1和图2所示,本发明实施例的编程控制系统包括控制端和设备端。在控制端,本发明实施例的编程控制系统包括可视化编程控制装置100,在设备端,本发明实施例的编程控制系统包括一种可编程控制的设备200,可视化编程控制装置100可以对设备200进行编程控制。
本发明实施例的可视化编程控制装置100可以包括移动终端、个人电脑或可视化遥控器,移动终端可以包括手机或平板电脑等,在本发明实施例中,可视化编程控制装置100以手机为示例被示出。本发明实施例的设备200可以包括移动设备,在本发明实施例中,设备以可移动小车为示例被示出。然而,以上示例仅用于更好地解释说明本发明实施例而设,其并不应理解为对本发明的限制。
在控制端,本发明实施例可以提供一种可视化编程控制装置100。如图1和图2所示,可视化编程控制装置100包括适于存储多条程序命令的存储器110、处理器120和无线通信模块130(即控制端无线通信模块),处理器120分别与存储器110和无线通信模块130通讯连接。在一些实施方式中,无线通信模块130可以为Wi-Fi通信模块。在可视化编程控制装置100中,无线通信模块130还可以包括多个通信模块,例如包括Wi-Fi、蓝牙、NFC等,其可以统称为无线通信模块130。
当存储器110存储的程序命令被处理器120执行时,处理器120可以提供可视化编程界面150,即执行程序命令以使得所述可视化编程控制装置100的显示屏上呈现可视化编程界面150。如图3和图4所示,可视化编程界面150中可以包括多个对象块151,每个对象块151分别被配置为与至少一个执行部件210相关联。
下面以设备200为可移动小车为例,对本发明实施例进行说明。当然,本发明实施例中的设备200还可以为其他搭载有可编程控制的硬件模块的设备。
如图1所示,可移动小车的可编程的执行部件210可以包括底盘211、装甲212、云台213、水弹枪214、音效部件(未示出)和视觉部件(未示出)中的至少一个。可编程的执行部件210指的是设备200上可以被编程控制的硬件部件。相应地,可视化编程界面150中提供的对象块151可以包括对应的底盘对象块、装甲对象块、云台对象块、水弹枪对象块、音效部件对象块和视觉部件对象块等。其中,对象块151作为软件模块,可移动小车的执行部件210作为硬件模块,通过将对象块151与对应的执行部件210相关联,从而将硬件模块与相应的软件模块关联起来。
在可视化编程界面150中,用户可以根据提供的多个对象块151,来选择所需的对象块151。在用户选定对象块151的情况下,处理器120可以针对选定的对象块151提供相关的程序块152。
在本文中所述的程序块152可以包括:对通过各种不同程序代码编写的程序内容进行打包处理而形成的带有程序命令的编程模块。因此,在用户实际使用时,为了实现某一程序命令,用户无需再编写复杂的程序代码,仅需点击或拖拽不同的程序块152即可,方便用户操作,降低了用户操作的门槛。
处理器120可以在可视化编程界面150中,基于程序块152生成选定的对象块151的执行程序,选定的对象块151的执行程序能够被直观地显示在可视化编程界面150中。在本发明的一个实施例中,处理器120可以获取在可视化编程界面150中拖拽程序块152的操作,并根据程序块152的拖拽操作结果来生成选定的对象块151的执行程序。例如,在一个实施例中,可视化编程控制装置100可以基于Scratch编程框架而开发,因此,在可视化编程界面150中,用户可以通过拖拽程序块152,并且以例如搭建积木的方式,来组合拖拽的程序块152,从而来生成选定的对象块151的执行程序。进而,处理器120可以根据执行程序生成控制可移动小车的控制指令。这里也可以以连线或流程等的方式组合用户选择的程序块152来生成执行程序,本发明对此并不作限制。无线通信模块130可以发送控制指令。
本发明实施例的可视化编程控制装置100针对可编程的执行部件210(即硬件模块),设计开发了与该可编程的执行部件相关联的对象块151(即软件模块),从而将硬件模块与对应的软件模块相关联,并且,进一步针对软件模块进行编程,生成相应的控制指令来达到对于该可编程的硬件模块的控制,从而提供了对于模块化设计产品的支持和编程控制。
在一个实施例中,处理器120可以对执行程序进行调试,确定用户通过组合程序块生成的执行程序不存在不可执行的错误。可视化编程界面150上可以提供调试按钮155。当执行程序调试通过后,处理器120可以根据调试后的执行程序来生成控制指令,在一些实施方式中,控制指令可以为可执行的Python脚本;当执行程序调试不通过后,处理器120还可以分析程序具体的错误类型、错误位置等,以及提供相应的修改建议,在一些情况下,可视化编程界面150上可以对存在错误的程序块或程序块逻辑执行高亮等着重性显示。
在用户通过组合程序块生成执行程序后,可视化编程控制装置100可以保存该执行程序,并生成工程文件。该工程文件可以在不同的可视化编程控制装置之间进行分享、传输以及被识别,并且可以包括至少如下信息:创建者、创建时间、标题、备注信息等等。当该工程文件被可视化编程控制装置100识别后,还可以还原原编写执行程序中对象块的组织结构或相关顺序。并且,该工程文件还可以存储可视化编程控制装置100或设备200的软件或硬件的版本信息,也可以存储设备200上各个可执行部件的硬件信息;当该工程文件被分享、传输至另一个可视化编程控制装置时,可以识别该另一可视化编程控制装置是否满足该工程文件所需的软件版本要求,当不满足时可以提供相应的警示信息;并且,当该可视化编程控制装置连接至设备200时,还可以识别设备200的硬件版本信息,当不满足要求时可以提供相应的警示信息。
在另一个实施例中,处理器120还可以查询选定的对象块151与在可移动小车中相关联的执行部件210的同步状态并接收选定的对象块151相关联的执行部件210是否已挂载到可移动小车的同步状态消息。并且,在接收到相关联的执行部件210已挂载到可移动小车的同步状态消息下,无线通信模块130才发送控制指令。进一步地,处理器120还可以在接收到相关联的执行部件210已挂载到可移动小车的同步状态消息时,在可视化编程界面150中显示已同步,如图4所示;以及在接收到相关联的执行部件210未挂载到可移动小车的同步状态消息时,在可视化编程界面150中显示未同步,如图3所示。从而,用户能够通过可视化编程界面150及时了解相关联的执行部件210是否已挂载到可移动小车的同步状态。
在本发明的另一个实施例中,处理器120还可以通过无线通信模块130接收来自于可移动小车拍摄的图像,并且,随后在可视化编程界面150的图像显示区153中显示图像300,如图4所示。在图4中所示的图像300仅用于说明目的,不应理解为对本发明的限制。本发明可以根据实际应用需要来接收来自于可移动小车拍摄的任何图像。可选地,处理器120还可以对接收到的图像先进行图像识别,然后,在可视化编程界面150的图像显示区153中显示识别后的图像。例如,当有多辆可移动小车在同一块场地时,拍摄的图像可以存在着其他小车,并且图像中的这些小车可以被识别出来然后以边界框、着重色等方式显示在图像显示区153中。
在本发明实施例中,可移动小车拍摄的图像可以通过对视觉部件对象块的编程操作来控制。例如,当用户选定“视觉部件”对象块时,可以在可视化编程界面150中组合“视觉部件”对应的程序块,如依次组合程序块“显示图像”、“识别图像中小车”和“一分钟后关闭显示图像”,则当该序列程序块被执行时,图像显示区153会显示图像并显示所识别的小车,并且在一分钟后不再显示图像。需要理解的是,这里的程序块仅作示意性举例,并不代表实际程序块分割或编写逻辑。
本发明实施例的可视化编程控制装置100可以将可视化编程与图传显示相结合,用户能够通过可视化编程界面150中显示的图像300来获取编程的执行结果,达到了更直观的编程操作体验。
在本发明的另一个实施例中,处理器120还可以通过无线通信模块130接收来自于可移动小车推送的设备运行状态消息,并且,在可视化编程界面150的状态显示区154中显示设备运行状态,如图4所示。
例如,整机模式、可移动小车当前的行驶速度、云台的俯仰角以及云台的偏航等设备运行状态可以显示在状态显示区154中。例如图4中所示,在状态显示区154中显示云台跟随底盘模式,速度2.4m/s,俯仰20.0°以及偏航10.0°。当然,也可以根据实际应用需要,在状态显示区154中显示可移动小车的其他运行状态及变量。
本发明实施例的可视化编程控制装置100可以将可视化编程与设备运行状态显示相结合,用户能够通过可视化编程界面150中显示的设备运行状态来获取编程的执行结果,查看设备运行是否成功等状态,从而方便用户定位和分析编程问题之所在。
在本发明的另一个实施例中,处理器120还可以接收来自于可移动小车的执行部件210的挂载状态消息,在执行部件210已挂载到可移动小车时,则在可视化编程界面150中显示执行部件210相关联的对象块151及程序块152为可使用的,以及在执行部件210未挂载到可移动小车时,则在可视化编程界面150中显示执行部件210相关联的对象块151及程序块152为不可使用的。
在本发明实施例中,例如,当可移动小车的底盘211已挂载到可移动小车上,而云台213未挂载到可移动小车上时,处理器120通过接收底盘211已挂载到可移动小车的状态消息,则会在可视化编程界面150中显示底盘对象块及其程序块为可使用的,如正常颜色显示,而处理器120通过接收云台213未挂载到可移动小车的状态消息,则会在可视化编程界面150中显示云台对象块及其程序块为不可使用的,如灰度显示。
本发明实施例的可视化编程控制装置100在用户编程之前,通过将已挂载的执行部件210相关联的对象块151及程序块152显示为可使用的,而将未挂载的执行部件相关联的对象块151及程序块152显示为不可使用的,因此,用户能够预先知道哪些对象块及其程序块是可使用的,哪些对象块及其程序块是不可使用的,能够方便用户更加直观地选择有效的对象块151及程序块152,进而避免了后续针对编程好的对象块151的执行程序的不可执行而需要重新选择对象块151及重新调整程序块152进行编程的过程,提高了编程效率。
在本发明的另一个实施例中,在可移动小车增加可编程的新执行部件210的情况下,可视化编程控制装置100可以相应地增加与新执行部件210相关联的对象块151,从而来支持新的执行部件210。例如,当在可移动小车上增加可编程的光效部件时,则可视化编程控制装置100可以通过事先编程来增加与该光效部件相关联的软件模块,该软件模块将作为光效部件对象块被保存在可视化编程控制装置100中。当在可移动小车的可编程的执行部件210的硬件和软件升级的情况下,可视化编程控制装置100可以根据执行部件210的硬件和软件版本来进行识别,相应地升级与执行部件210相关联的对象块151,从而来支持升级后的执行部件210。例如,当可移动小车的可编程云台的硬件有更新时,例如更换了一个升级的云台,则可视化编程控制装置100会根据云台的硬件版本来识别现有的云台对象块是否兼容软件更新后的云台,如果不兼容,则会相应地对现有的云台对象块来进行升级,从而支持更新后的云台。
本发明实施例的可视化编程控制装置100能够支持可编程执行部件210的扩展性。
在设备端,本发明实施例提供一种可编程控制的设备200。如图2所示,可编程控制的设备200包括至少一个可编程的执行部件210和智能中控220,智能中控220与至少一个执行部件210通讯连接。可编程的执行部件210指的是设备200上可以被编程控制的硬件部件。智能中控220可以用于与可视化编程控制装置100中的无线通信模块130通讯连接。在一个实施例中,至少一个执行部件210可以通过通信总线,例如CAN总线连接到智能中控220,并且可编程控制的设备200支持执行部件210的可插拔。当执行部件210挂载到CAN总线上时,即可实现执行部件210与智能中控220的通讯连接。智能中控220可以进行无线通信,例如使用Wi-Fi通信。对于设备200为可移动小车的实施例来说,如图1所示,至少一个可编程的执行部件210可以包括底盘211、装甲212、云台213、水弹枪214、音效部件(未示出)和视觉部件(未示出)中的至少一个。
在对设备200进行编程控制时,智能中控220可以上传与可视化编程控制装置100提供的对象块151(如图3和图4所示)相关联的执行部件210是否已挂载到设备200的同步状态消息,在相关联的执行部件210已挂载到设备200的同步状态下,接收来自于可视化编程控制装置100的控制指令,并且,根据控制指令控制设备200的相应执行部件210执行。
在一些实施方式中,智能中控220可以在接收到来自于可视化编程控制装置100的同步查询指令,并响应于该同步查询指令上传所述同步状态消息。例如,用户在可视化编程控制装置100上使用云台对象块、底盘对象块、水弹枪对象块编写了一段程序,则可视化编程控制装置100可以针对该段程序向设备200发送同步查询指令,智能中控220接收到该同步查询指令后,检测程序中存在的对象块对应的执行部件210的同步状态,并上传同步状态消息。同步状态消息可以包括版本是否同步、存在与否同步等。例如,当水弹枪被用户从可移动小车上拔去时或者水弹枪硬件版本不符合时,水弹枪执行部件的同步状态消息为未同步,相应的可视化编程控制装置100在接收到同步状态消息后,对应的水弹枪对象块也可以显示未同步,从而提示用户需要修改程序或安装水弹枪以正确执行程序。
在本发明的一个实施例中,设备200还可以从可视化编程控制装置100下载已存在的工程文件。该工程文件由可视化编程控制装置100在编程时生成并包括编程生成的选定的对象块的执行程序。
在本发明的一个实施例中,设备200还可以包括设备端无线通信模块230,设备端无线通信模块230可以包括图传模块231,图传模块231与智能中控220通讯连接,并且,图传模块231可以将设备200所拍摄的图像传送至可视化编程控制装置100的无线通信模块130。图传模块231可以响应于智能中控220的控制,向可视化编程控制装置100发送可移动小车所拍摄到的图像或视频。
在本发明的另一个实施例中,设备200中的设备端无线通信模块230还可以包括设备状态推送模块232,设备状态推送模块232与智能中控220通讯连接,并且,设备状态推送模块232可以将设备200的设备运行状态推送至可视化编程控制装置100。设备状态推送模块232可以响应于智能中控220的控制,向可视化编程控制装置100发送可移动小车的设备运行状态。设备运行状态可以包括各个执行部件210的状态,例如包括且不限于,底盘状态可以包括是否被卡住,水弹枪状态可以包括发射频率、单次发射或多次发射、每次发射水弹个数,装甲状态可以包括是否受到攻击、受到攻击的装甲编号、装甲检测灵敏度、装甲剩余血量等等。可以理解的是,设备状态推送模块232可以响应于用户编写的控制程序来推送状态,例如用户在程序中编写或包含某个对象块,则推送某个对象块的状态;也可以作为默认及可修改的设置来推送状态,例如推送哪些状态信息是独立于程序编写单独进行设置的。
在本发明实施例中,对设备200的编程控制以及设备200的图传和状态推送可以采用两条不同的通信链路。
在本发明的另一个实施例中,智能中控220还可以上传设备200的执行部件210是否已挂载到设备200的挂载状态消息。
在本发明的另一个实施例中,智能中控220还可以接收来自于可视化编程控制装置100发送的暂停执行指令,响应于暂停执行指令,控制设备200的相应执行部件210暂停执行,并且在暂停执行结束后,向可视化编程控制装置100返回设备暂停执行结束的确认消息。
基于系统考量,本发明实施例可以提供一种编程控制系统。图2为本发明编程控制系统的一个实施例的示意性框图。如图2所示,本发明实施例的编程控制系统可以包括如上所述的设备200及如上所述的用于对设备200进行编程控制的可视化编程控制装置100。
设备200包括至少一个可编程的执行部件210和智能中控220,智能中控220与至少一个执行部件210通讯连接。可视化编程控制装置100包括适于存储多条程序命令的存储器110、处理器120及无线通信模块130。当存储器110保存的程序命令被处理器120执行时,处理器120可以提供可视化编程界面150,如图3和图4所示,可视化编程界面150中包括多个对象块151,每个对象块151分别被配置为与至少一个执行部件210相关联;针对选定的对象块151提供相关的程序块152,在可视化编程界面150中,基于程序块152生成选定的对象块151的执行程序;以及根据执行程序生成控制设备200的控制指令。无线通信模块130可以将控制指令发送到设备200。相应地,智能中控220可以接收来自于可视化编程控制装置100的控制指令,并且,根据控制指令控制设备200的相应执行部件210执行。
在一个实施例中,处理器120可以查询选定的对象块151与在设备200中相关联的执行部件210的同步状态,智能中控220上传与选定的对象块151相关联的执行部件210是否已挂载到设备200的同步状态消息,处理器120接收来自智能中控220的选定的对象块151相关联的执行部件210是否已挂载到设备200的同步状态消息,并且,在接收到相关联的执行部件210已挂载到设备200的同步状态消息下,无线通信模块130可以向设备200发送控制指令。
在另一个实施例中,设备200还可以包括图传模块231,图传模块231将设备200所拍摄的图像传送至可视化编程控制装置100,处理器120可以通过无线通信模块130接收来自于设备200拍摄的图像,并且,可以在可视化编程界面150中显示该图像,如图4所示。或者,处理器120也可以对接收到的图像先进行图像识别,然后,在可视化编程界面150中显示识别后的图像。
在另一个实施例中,设备200还可以包括设备状态推送模块232,设备状态推送模块232可以将设备200的设备200运行状态推送至可视化编程控制装置100,处理器120通过无线通信模块130接收来自于设备200推送的设备200运行状态消息,并且,在可视化编程界面150中显示设备运行状态,如图4所示。
在另一个实施例中,智能中控220可以上传设备200的执行部件210是否已挂载到设备200的挂载状态消息,处理器120可以接收来自于设备200的执行部件210的挂载状态消息,在执行部件210已挂载到设备200时,则在可视化编程界面150中显示执行部件210相关联的对象块151及程序块152为可使用的;以及在执行部件210未挂载到设备200时,则在可视化编程界面150中显示执行部件210相关联的对象块151及程序块152为不可使用的。
本发明实施例的编程控制系统中的设备200及可视化编程控制装置100的其他特征请参照上面所述,在此不再赘述。此外,本发明实施例的编程控制系统可以具有与上述可视化编程控制装置相似的有益技术效果,故在此不再赘述。
图5为本发明用于可视化编程控制设备的方法在控制端一侧的一个实施例的流程图。如图5所示,在控制端一侧,本发明实施例的用于可视化编程控制设备的方法S1可以包括步骤S11至步骤S14。
在步骤S11中,提供可视化编程界面150,如图3和图4所示,可视化编程界面150中包括多个对象块151,每个对象块151分别被配置为与设备所包括的至少一个可编程的执行部件相关联,从而将硬件模块与对应的软件模块关联起来。
在步骤S12中,针对选定的对象块151提供相关的程序块152,如图3和图4所示,在可视化编程界面150中,基于程序块152生成选定的对象块151的执行程序。
在一个实施例中,基于程序块152生成选定的对象块151的执行程序可以包括:获取在可视化编程界面150中拖拽程序块152的操作,并根据程序块152的拖拽操作结果来生成选定的对象块151的执行程序。
在步骤S13中,根据执行程序生成控制设备的控制指令。
在步骤S14中,将控制指令发送到设备。
本发明实施例的用于可视化编程控制设备的方法针对可编程的硬件模块,设计开发了与该可编程的硬件模块相关联的对应软件模块,并且,进一步针对软件模块进行编程,生成相应的控制指令来达到对于该可编程的硬件模块的控制,从而提供了对于模块化设计产品的支持和编程控制。
图6为本发明用于可视化编程控制设备的方法在控制端一侧的另一个实施例的流程图。如图6所示,本发明实施例的用于可视化编程控制设备的方法S2可以在图5的基础上进一步包括步骤S21。
在步骤S21中,调试执行程序。然后,过程才前进到步骤S13。在这种情况下,在步骤13中,将根据调试后的执行程序来生成控制指令。
图7为本发明用于可视化编程控制设备的方法在控制端一侧的另一个实施例的流程图。如图7所示,本发明实施例的用于可视化编程控制设备的方法S3可以在图5或图6的基础上进一步包括步骤S31。
在步骤S31中,查询选定的对象块151与在设备中相关联的执行部件的同步状态,并接收选定的对象块151相关联的执行部件是否已挂载到设备的同步状态消息。其中,在接收到相关联的执行部件已挂载到设备的同步状态消息下,过程才前进到步骤S14,在步骤S14中将控制指令发送到设备。
在一个实施例中,本发明实施例的用于可视化编程控制设备的方法S3还可以包括步骤S32和步骤S33。
在步骤S32中,在接收到相关联的执行部件已挂载到设备的同步状态消息时,则在可视化编程界面150中显示已同步,如图4所示。
在步骤S33中,在接收到相关联的执行部件未挂载到设备的同步状态消息时,则在可视化编程界面150中显示未同步,如图3所示。
图8为本发明用于可视化编程控制设备的方法在控制端一侧的另一个实施例的流程图。如图8所示,本发明实施例的用于可视化编程控制设备的方法S4可以在图5或图6的基础上进一步包括步骤S41至步骤S43。
在步骤S41中,接收来自于设备的执行部件的挂载状态消息。
在执行部件已挂载到设备时,则过程前进到步骤S42。在步骤S42中,在可视化编程界面150中显示执行部件相关联的对象块151及程序块152为可使用的。
在执行部件未挂载到设备时,则过程前进到步骤S43。在步骤S43中,在可视化编程界面150中显示执行部件相关联的对象块151及程序块152为不可使用的。
因此,能够方便用户更加直观地选择有效的对象块151及程序块152,提高了编程效率。
图9为本发明用于可视化编程控制设备的方法在控制端一侧的另一个实施例的流程图。如图9所示,本发明实施例的用于可视化编程控制设备的方法S5在步骤S11之后还可以包括步骤S51至步骤S55。
在步骤S51中,加载当前已有的工程列表,其中,工程由每次的编程创建而形成,并且,工程包括每次编程生成的选定的对象块151的执行程序。
在选定任一已有的工程的情况下,过程继续到步骤S52。在步骤S52中,查询选定的工程中选定的对象块151与在设备中相关联的执行部件的同步状态并接收选定的对象块151相关联的执行部件是否已挂载到设备的同步状态消息。
在接收到相关联的执行部件已挂载到设备的同步状态消息时,则过程前进到步骤S53。在步骤S53中,在可视化编程界面150中显示已同步及执行程序。然后,过程可以前进到步骤S55。
在接收到相关联的执行部件未挂载到设备的同步状态消息时,则过程前进到步骤S54。在步骤S54中,在可视化编程界面150中显示未同步。
在步骤S55中,在相关联的执行部件已挂载到设备的同步状态下,将根据执行程序生成的控制指令发送到设备。
在本实施例中,可以方便用户选择性地调出装置中保存的已有的执行程序来实现对设备的控制,而无需再手动编程。
图10为本发明用于可视化编程控制设备的方法在控制端一侧的另一个实施例的流程图。如图10所示,本发明实施例的用于可视化编程控制设备的方法S6可以在上述各种实施例的基础上进一步包括步骤S61和步骤S62。
在步骤S61中,接收来自于设备拍摄的图像。
在步骤S62中,在可视化编程界面150的图像显示区153中显示图像300,如图4所示,从而将可视化编程与图传显示相结合,达到了更直观的设备运行体验。
在一个实施例中,本发明实施例的用于可视化编程控制设备的方法S6还可以包括步骤S63。在步骤S63中,对在步骤S61中接收到的图像进行图像识别,然后,过程才前进到步骤S62。在这种情况下,在步骤S62中,在可视化编程界面中将显示识别后的图像。
在另一个实施例中,本发明实施例的用于可视化编程控制设备的方法S6还可以在上述各种实施例的基础上进一步包括步骤S64和步骤S65。
在步骤S64中,接收来自于设备推送的设备运行状态消息。
在步骤S65中,在可视化编程界面150的状态显示区154中显示设备运行状态,从而,将可视化编程与设备运行状态显示相结合,及时查看设备运行结果,方便用户定位和分析编程问题之所在。
在另一个实施例中,本发明实施例的用于可视化编程控制设备的方法S6还可以在上述各种实施例的基础上进一步包括步骤S66至步骤S68。
在步骤S66中,向设备发送暂停执行命令。
在步骤S67中,在收到设备接收到暂停执行命令的确认消息后,可视化编程界面150显示暂停中。
在步骤S68中,在收到设备暂停执行结束的确认消息后,可视化编程界面150恢复到初始状态。
本发明实施例还提供了一种计算机可读存储介质。计算机可读存储介质适于存储多条程序命令,当程序命令被处理器执行时执行上述任一个实施例的用于可视化编程控制设备的方法的步骤。
图11为本发明用于可视化编程控制设备的方法在设备端一侧的一个实施例的流程图。如图11所示,在设备端一侧,本发明实施例的用于可视化编程控制设备的方法S7可以包括步骤S71至步骤S73。
在步骤S71中,上传与可视化编程控制装置提供的对象块151相关联的执行部件是否已挂载到设备的同步状态消息。
在步骤S72中,在相关联的执行部件已挂载到设备的同步状态下,接收来自于可视化编程控制装置的控制指令。
在步骤S73中,根据控制指令控制设备的相应执行部件执行。
图12为本发明用于可视化编程控制设备的方法在设备端一侧的另一个实施例的流程图。如图12所示,本发明实施例的用于可视化编程控制设备的方法S8可以在图11的基础上进一步包括步骤S81。
在步骤S81中,将设备所拍摄的图像传送至可视化编程控制装置。
在一个实施例中,本发明实施例的用于可视化编程控制设备的方法S8还可以在图11的基础上进一步包括步骤S82。
在步骤S82中,将设备的设备运行状态推送至可视化编程控制装置。
在另一个实施例中,本发明实施例的用于可视化编程控制设备的方法S8还可以在上述实施例的基础上进一步包括步骤S83至S85。
在步骤S83中,接收来自于可视化编程控制装置发送的暂停执行指令。
在步骤S84中,响应于暂停执行指令,控制设备的相应执行部件暂停执行。
在步骤S85中,在暂停执行结束后,向可视化编程控制装置返回设备暂停执行结束的确认消息。
在本发明的一些实施例中,本发明实施例的用于可视化编程控制设备的方法S7和S8还可以包括:上传设备的执行部件是否已挂载到设备的挂载状态消息。
本发明实施例的用于可视化编程控制设备的方法与上述可视化编程控制装置及编程控制系统的具体操作及执行过程相类似,并且具有与上述可视化编程控制装置及编程控制系统相类似的有益技术效果,故在此不再赘述。在不冲突的情况下,本发明实施例的用于可视化编程控制设备的方法可以使用或包括前述可视化编程控制装置及编程控制系统的具体操作及执行过程的实施例或实施方式。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明实施例所提供的可视化编程控制装置、可编程控制的设备、用于可视化编程控制设备的方法、计算机可读存储介质以及编程控制系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想,本说明书内容不应理解为对本发明的限制。同时,对于本领域的一般技术人员,依据本发明的思想,可以在具体实施方式及应用范围上做出任何修改、等同替换或改进等,其均应包含在本发明的权利要求书的范围之内。
Claims (76)
1.一种可视化编程控制装置,其用于控制包括至少一个可编程的执行部件的设备,其特征在于,其包括:
存储器,其适于存储多条程序命令;
处理器,当所述程序命令被所述处理器执行时,所述处理器被配置为:
提供可视化编程界面,所述可视化编程界面中包括多个对象块,每个所述对象块分别被配置为与所述至少一个执行部件相关联;
针对选定的对象块提供相关的程序块,在可视化编程界面中,基于所述程序块生成所述选定的对象块的执行程序;及
根据所述执行程序生成控制所述设备的控制指令;以及
无线通信模块,其被配置为发送所述控制指令。
2.根据权利要求1所述的可视化编程控制装置,其特征在于,所述处理器被配置为基于所述程序块生成所述选定的对象块的执行程序包括:所述处理器被配置为获取在可视化编程界面中拖拽程序块的操作,并根据所述程序块的拖拽操作结果来生成所述选定的对象块的执行程序。
3.根据权利要求1所述的可视化编程控制装置,其特征在于,所述处理器还被配置为:
调试所述执行程序,根据调试后的执行程序来生成所述控制指令。
4.根据权利要求1所述的可视化编程控制装置,其特征在于,所述处理器还被配置为:
查询所述选定的对象块与在所述设备中相关联的执行部件的同步状态并接收所述选定的对象块相关联的执行部件是否已挂载到所述设备的同步状态消息,
其中,在接收到所述相关联的执行部件已挂载到所述设备的同步状态消息下,发送所述控制指令。
5.根据权利要求4所述的可视化编程控制装置,其特征在于,所述处理器还被配置为:
在接收到所述相关联的执行部件已挂载到所述设备的同步状态消息时,则在所述可视化编程界面中显示已同步;及
在接收到所述相关联的执行部件未挂载到所述设备的同步状态消息时,则在所述可视化编程界面中显示未同步。
6.根据权利要求1所述的可视化编程控制装置,其特征在于,所述处理器还被配置为:
通过所述无线通信模块接收来自于所述设备拍摄的图像。
7.根据权利要求6所述的可视化编程控制装置,其特征在于,所述处理器还被配置为:
在所述可视化编程界面中显示所述图像。
8.根据权利要求6所述的可视化编程控制装置,其特征在于,所述处理器还被配置为:
对接收到的图像进行图像识别,并且,在所述可视化编程界面中显示识别后的图像。
9.根据权利要求1至8中任一项所述的可视化编程控制装置,其特征在于,所述处理器还被配置为:
通过所述无线通信模块接收来自于所述设备推送的设备运行状态消息,并且,在所述可视化编程界面中显示设备运行状态。
10.根据权利要求1所述的可视化编程控制装置,其特征在于,所述处理器还被配置为:
接收来自于所述设备的执行部件的挂载状态消息;
在所述执行部件已挂载到所述设备时,则在所述可视化编程界面中显示所述执行部件相关联的对象块及程序块为可使用的;及
在所述执行部件未挂载到所述设备时,则在所述可视化编程界面中显示所述执行部件相关联的对象块及程序块为不可使用的。
11.根据权利要求1所述的可视化编程控制装置,其特征在于,所述处理器还被配置为:
基于所述执行程序生成工程文件,所述工程文件包括所述执行程序。
12.根据权利要求11所述的可视化编程控制装置,其特征在于,所述工程文件还包括所述可视化编程控制装置的软件版本信息、所述可视化编程控制装置的硬件版本信息、所述设备的软件版本信息、所述设备的硬件版本信息,所述设备中的所述至少一个执行部件的硬件信息中的至少一个信息。
13.根据权利要求11所述的可视化编程控制装置,其特征在于,所述可视化编程控制装置还被配置为:将所述工程文件分享或传输至另一可视化编程控制装置中。
14.根据权利要求13所述的可视化编程控制装置,其特征在于,所述可视化编程控制装置被配置为:当所述工程文件被分享或传输至所述另一可视化编程控制装置时,识别所述另一可视化编程控制装置是否满足所述工程文件所需的软件版本要求,并在不满足时提供相应的警示信息。
15.根据权利要求11所述的可视化编程控制装置,其特征在于,在所述可视化编程控制装置连接至所述设备时,所述可视化编程控制装置被配置为:识别所述设备的硬件版本信息是否满足所述工程文件存储的设备的硬件版本要求,并在不满足时提供相应的警示信息。
16.根据权利要求1所述的可视化编程控制装置,其特征在于,在所述设备增加可编程的新执行部件的情况下,所述可视化编程控制装置被配置为:增加与所述新执行部件相关联的对象块。
17.根据权利要求1所述的可视化编程控制装置,其特征在于,在所述设备的可编程的执行部件的硬件和软件升级的情况下,所述可视化编程控制装置被配置为:根据所述执行部件的硬件和软件版本来进行识别,升级与所述执行部件相关联的对象块。
18.根据权利要求1所述的可视化编程控制装置,其特征在于,所述无线通信模块为Wi-Fi通信模块。
19.根据权利要求1所述的可视化编程控制装置,其特征在于,所述可视化编程控制装置基于Scratch编程框架而开发。
20.根据权利要求1所述的可视化编程控制装置,其特征在于,所述可视化编程装置包括移动终端、个人电脑或可视化遥控器。
21.一种用于可视化编程控制设备的方法,其特征在于,其包括如下步骤:
提供可视化编程界面,所述可视化编程界面中包括多个对象块,每个所述对象块分别被配置为与所述设备所包括的至少一个执行部件相关联;
针对选定的对象块提供相关的程序块,在可视化编程界面中,基于所述程序块生成所述选定的对象块的执行程序;
根据所述执行程序生成控制所述设备的控制指令;
将所述控制指令发送到所述设备。
22.根据权利要求21所述的方法,其特征在于,基于所述程序块生成所述选定的对象块的执行程序包括:获取在可视化编程界面中拖拽程序块的操作,并根据所述程序块的拖拽操作结果来生成所述选定的对象块的执行程序。
23.根据权利要求21所述的方法,其特征在于,其还包括:
调试所述执行程序,根据调试后的执行程序来生成所述控制指令。
24.根据权利要求21所述的方法,其特征在于,其还包括:
查询所述选定的对象块与在所述设备中相关联的执行部件的同步状态并接收所述选定的对象块相关联的执行部件是否已挂载到所述设备的同步状态消息,
其中,在接收到所述相关联的执行部件已挂载到所述设备的同步状态消息下,发送所述控制指令。
25.根据权利要求24所述的方法,其特征在于,其还包括:
在接收到所述相关联的执行部件已挂载到所述设备的同步状态消息时,则在所述可视化编程界面中显示已同步;及
在接收到所述相关联的执行部件未挂载到所述设备的同步状态消息时,则在所述可视化编程界面中显示未同步。
26.根据权利要求21所述的方法,其特征在于,其还包括:
接收来自于所述设备的执行部件的挂载状态消息;
在所述执行部件已挂载到所述设备时,则在所述可视化编程界面中显示所述执行部件相关联的对象块及程序块为可使用的;及
在所述执行部件未挂载到所述设备时,则在所述可视化编程界面中显示所述执行部件相关联的对象块及程序块为不可使用的。
27.根据权利要求21所述的方法,其特征在于,其还包括:
接收来自于所述设备拍摄的图像。
28.根据权利要求27所述的方法,其特征在于,其还包括:
在所述可视化编程界面中显示所述图像。
29.根据权利要求27所述的方法,其特征在于,其还包括:
对接收到的图像进行图像识别,并且,在所述可视化编程界面中显示识别后的图像。
30.根据权利要求21至29中任一项所述的方法,其特征在于,其还包括:
接收来自于所述设备推送的设备运行状态消息,并在所述可视化编程界面中显示设备运行状态。
31.根据权利要求21所述的方法,其特征在于,其还包括:
加载当前已有的工程文件列表,其中,所述工程文件由每次编程而生成,并且,所述工程文件包括每次编程生成的选定的对象块的执行程序;
在选定任一已有的工程文件的情况下,查询所述选定的工程文件中所述选定的对象块与在所述设备中相关联的执行部件的同步状态并接收所述选定的对象块相关联的执行部件是否已挂载到所述设备的同步状态消息;
在接收到所述相关联的执行部件已挂载到所述设备的同步状态消息时,则在所述可视化编程界面中显示已同步及所述执行程序,在接收到所述相关联的执行部件未挂载到所述设备的同步状态消息时,则在所述可视化编程界面中显示未同步;
在接收到所述相关联的执行部件已挂载到所述设备的同步状态消息下,将根据所述执行程序生成的控制指令发送到所述设备。
32.根据权利要求21所述的方法,其特征在于,其还包括:
向所述设备发送暂停执行命令;
在收到所述设备接收到所述暂停执行命令的确认消息后,所述可视化编程界面显示暂停中;并且
在收到所述设备暂停执行结束的确认消息后,所述可视化编程界面恢复到初始状态。
33.一种计算机可读存储介质,其适于存储多条程序命令,其特征在于,当所述程序命令被所述处理器执行时执行根据权利要求21至32中任一项所述的用于可视化编程控制设备的方法的步骤。
34.一种可编程控制的设备,其特征在于,其包括:
至少一个可编程的执行部件;及
智能中控,其与所述至少一个执行部件通讯连接,其中,所述智能中控被配置为:
上传与可视化编程控制装置提供的对象块相关联的执行部件是否已挂载到所述设备的同步状态消息;
在所述相关联的执行部件已挂载到所述设备的同步状态下,接收来自于所述可视化编程控制装置的控制指令;及
根据所述控制指令控制所述设备的相应执行部件执行。
35.根据权利要求24所述的可编程控制的设备,其特征在于,所述智能中控还被配置为:在接收到来自于所述可视化编程控制装置的同步查询指令,并响应于所述同步查询指令上传所述同步状态消息。
36.根据权利要求34所述的可编程控制的设备,其特征在于,所述同步状态消息包括版本是否同步和存在与否同步中的至少一个。
37.根据权利要求34所述的可编程控制的设备,其特征在于,其还包括:
图传模块,其被配置为将所述设备所拍摄的图像传送至所述可视化编程控制装置。
38.根据权利要求37所述的可编程控制的设备,其特征在于,所述图传模块被配置为响应于所述智能中控的控制来传送所述图像。
39.根据权利要求34至38中任一项所述的可编程控制的设备,其特征在于,其还包括:
设备状态推送模块,其被配置为将所述设备的设备运行状态推送至所述可视化编程控制装置。
40.根据权利要求39所述的可编程控制的设备,其特征在于,所述设备状态推送模块被配置为响应于所述智能中控的控制来推送所述设备运行状态。
41.根据权利要求39所述的可编程控制的设备,其特征在于,所述设备状态推送模块被配置为响应于用户编写的控制程序来推送所述设备运行状态。
42.根据权利要求39所述的可编程控制的设备,其特征在于,所述设备运行状态包括所述至少一个执行部件的状态。
43.根据权利要求34所述的可编程控制的设备,其特征在于,所述智能中控进一步被配置为:
上传所述设备的执行部件是否已挂载到所述设备的挂载状态消息。
44.根据权利要求34所述的可编程控制的设备,其特征在于,所述设备还被配置为:从所述可视化编程控制装置下载已存在的工程文件,所述工程文件由所述可视化编程控制装置在编程时生成并包括编程生成的选定的对象块的执行程序。
45.根据权利要求34所述的可编程控制的设备,其特征在于,所述智能中控进一步被配置为:
接收来自于所述可视化编程控制装置发送的暂停执行指令;
响应于所述暂停执行指令,控制所述设备的相应执行部件暂停执行;并且
在暂停执行结束后,向所述可视化编程控制装置返回所述设备暂停执行结束的确认消息。
46.根据权利要求34所述的可编程控制的设备,其特征在于,所述设备包括可移动小车。
47.根据权利要求46所述的可编程控制的设备,其特征在于,所述至少一个执行部件包括底盘、装甲、云台、水弹枪、音效部件和视觉部件中的至少一个。
48.根据权利要求34所述的可编程控制的设备,其特征在于,所述智能中控基于Wi-Fi进行无线通信。
49.根据权利要求34所述的可编程控制的设备,其特征在于,所述至少一个执行部件通过通信总线连接到所述智能中控。
50.根据权利要求49所述的可编程控制的设备,其特征在于,所述通信总线包括CAN总线。
51.一种用于可视化编程控制设备的方法,其特征在于,其包括如下步骤:
上传与可视化编程控制装置提供的对象块相关联的执行部件是否已挂载到所述设备的同步状态消息;
在所述相关联的执行部件已挂载到所述设备的同步状态下,接收来自于所述可视化编程控制装置的控制指令;及
根据所述控制指令控制所述设备的相应执行部件执行。
52.根据权利要求51所述的方法,其特征在于,其还包括:
接收来自于所述可视化编程控制装置的同步查询指令,并响应于所述同步查询指令上传所述同步状态消息。
53.根据权利要求51所述的方法,其特征在于,其还包括:
将所述设备所拍摄的图像传送至所述可视化编程控制装置。
54.根据权利要求51至53中任一项所述的方法,其特征在于,其还包括:
将所述设备的设备运行状态推送至所述可视化编程控制装置。
55.根据权利要求51所述的方法,其特征在于,其还包括:
上传所述设备的执行部件是否已挂载到所述设备的挂载状态消息。
56.根据权利要求51所述的方法,其特征在于,其还包括:
从所述可视化编程控制装置下载已存在的工程文件,所述工程文件由所述可视化编程控制装置在编程时生成并包括编程生成的选定的对象块的执行程序。
57.根据权利要求51所述的方法,其特征在于,其还包括:
接收来自于所述可视化编程控制装置发送的暂停执行指令;
响应于所述暂停执行指令,控制所述设备的相应执行部件暂停执行;并且
在暂停执行结束后,向所述可视化编程控制装置返回所述设备暂停执行结束的确认消息。
58.一种编程控制系统,其特征在于,其包括:
设备,其包括至少一个可编程的执行部件和智能中控,所述智能中控与所述至少一个执行部件通讯连接;以及
可视化编程控制装置,其包括:
存储器,其适于存储多条程序命令;
处理器,当所述程序命令被所述处理器执行时,所述处理器被配置为:
提供可视化编程界面,所述可视化编程界面中包括多个对象块,每个所述对象块分别被配置为与所述至少一个执行部件相关联;
针对选定的对象块提供相关的程序块,在可视化编程界面中,基于所述程序块生成所述选定的对象块的执行程序;及
根据所述执行程序生成控制所述设备的控制指令;以及
无线通信模块,其被配置为将所述控制指令发送到所述设备,其中,所述智能中控被配置为:
接收来自于所述可视化编程控制装置的控制指令;及
根据所述控制指令控制所述设备的相应执行部件执行。
59.根据权利要求58所述的编程控制系统,其特征在于,所述处理器被配置为基于所述程序块生成所述选定的对象块的执行程序包括:所述处理器被配置为获取在可视化编程界面中拖拽程序块的操作,并根据所述程序块的拖拽操作结果来生成所述选定的对象块的执行程序。
60.根据权利要求58所述的编程控制系统,其特征在于,所述处理器还被配置为:
调试所述执行程序,根据调试后的执行程序来生成所述控制指令。
61.根据权利要求58所述的编程控制系统,其特征在于,
所述处理器还被配置为:
查询所述选定的对象块与在所述设备中相关联的执行部件的同步状态并接收所述选定的对象块相关联的执行部件是否已挂载到所述设备的同步状态消息,
其中,在接收到所述相关联的执行部件已挂载到所述设备的同步状态消息下,发送所述控制指令;
所述智能中控被配置为:
上传与所述选定的对象块相关联的执行部件是否已挂载到所述设备的同步状态消息。
62.根据权利要求61所述的编程控制系统,其特征在于,所述处理器还被配置为:
在接收到所述相关联的执行部件已挂载到所述设备的同步状态消息时,则在所述可视化编程界面中显示已同步;及
在接收到所述相关联的执行部件未挂载到所述设备的同步状态消息时,则在所述可视化编程界面中显示未同步。
63.根据权利要求58所述的编程控制系统,其特征在于,所述设备还包括被配置为将所述设备所拍摄的图像传送至所述可视化编程控制装置的图传模块,所述处理器还被配置为:
通过所述无线通信模块接收来自于所述设备拍摄的图像。
64.根据权利要求63所述的编程控制系统,其特征在于,所述处理器还被配置为:
在所述可视化编程界面中显示所述图像。
65.根据权利要求63所述的编程控制系统,其特征在于,所述处理器还被配置为:
对接收到的图像进行图像识别,并且,在所述可视化编程界面中显示识别后的图像。
66.根据权利要求58至65中任一项所述的编程控制系统,其特征在于,所述设备还包括被配置为将所述设备的设备运行状态推送至所述可视化编程控制装置的设备状态推送模块,所述处理器还被配置为:
通过所述无线通信模块接收来自于所述设备推送的设备运行状态消息,并且,在所述可视化编程界面中显示设备运行状态。
67.根据权利要求58所述的编程控制系统,其特征在于,
所述智能中控进一步被配置为:上传所述设备的执行部件是否已挂载到所述设备的挂载状态消息;以及
所述处理器还被配置为:
接收来自于所述设备的执行部件的挂载状态消息;
在所述执行部件已挂载到所述设备时,则在所述可视化编程界面中显示所述执行部件相关联的对象块及程序块为可使用的;及
在所述执行部件未挂载到所述设备时,则在所述可视化编程界面中显示所述执行部件相关联的对象块及程序块为不可使用的。
68.根据权利要求58所述的编程控制系统,其特征在于,在所述设备增加可编程的新执行部件的情况下,所述可视化编程控制装置被配置为:增加与所述新执行部件相关联的对象块。
69.根据权利要求58所述的编程控制系统,其特征在于,在所述设备的可编程的执行部件的硬件和软件升级的情况下,所述可视化编程控制装置被配置为:根据所述执行部件的硬件和软件版本来进行识别,升级与所述执行部件相关联的对象块。
70.根据权利要求58所述的编程控制系统,其特征在于,所述可视化编程控制装置的所述无线通信模块为Wi-Fi通信模块,所述智能中控基于Wi-Fi进行无线通信。
71.根据权利要求58所述的编程控制系统,其特征在于,所述可视化编程控制装置基于Scratch编程框架而开发。
72.根据权利要求58所述的编程控制系统,其特征在于,所述可视化编程装置包括移动终端、个人电脑或可视化遥控器。
73.根据权利要求58所述的编程控制系统,其特征在于,所述设备包括可移动小车。
74.根据权利要求73所述的编程控制系统,其特征在于,所述至少一个执行部件包括底盘、装甲、云台、水弹枪、音效部件和视觉部件中的至少一个。
75.根据权利要求58所述的编程控制系统,其特征在于,所述至少一个执行部件通过通信总线连接到所述智能中控。
76.根据权利要求75所述的编程控制系统,其特征在于,所述通信总线包括CAN总线。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2019/084951 WO2020220184A1 (zh) | 2019-04-29 | 2019-04-29 | 可视化编程控制装置、可编程控制的设备及其控制方法、计算机可读存储介质以及编程控制系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111684414A true CN111684414A (zh) | 2020-09-18 |
Family
ID=72451470
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980008953.3A Pending CN111684414A (zh) | 2019-04-29 | 2019-04-29 | 可视化编程控制装置、可编程控制的设备及其控制方法、计算机可读存储介质以及编程控制系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20210208852A1 (zh) |
EP (1) | EP3866002A1 (zh) |
CN (1) | CN111684414A (zh) |
WO (1) | WO2020220184A1 (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113176894A (zh) * | 2021-04-29 | 2021-07-27 | 华人运通(上海)云计算科技有限公司 | 车控系统的控制方法、装置、存储介质、设备及汽车 |
CN113189909A (zh) * | 2021-04-29 | 2021-07-30 | 华人运通(上海)云计算科技有限公司 | 车控指令块的控制方法、装置、设备及存储介质 |
CN113204381A (zh) * | 2021-05-11 | 2021-08-03 | 深圳市星火数控技术有限公司 | 指令文件生成方法、装置、机器设备和存储介质 |
CN113419483A (zh) * | 2021-07-06 | 2021-09-21 | 乐聚(深圳)机器人技术有限公司 | 设备状态的显示方法、装置、终端及存储介质 |
WO2022228527A1 (zh) * | 2021-04-29 | 2022-11-03 | 华人运通(上海)云计算科技有限公司 | 一种车载控制系统的控制方法、装置、设备及存储介质 |
WO2022228528A1 (zh) * | 2021-04-29 | 2022-11-03 | 华人运通(上海)云计算科技有限公司 | 一种车辆仿真系统的模拟方法、装置、设备及存储介质 |
CN115657571A (zh) * | 2022-12-26 | 2023-01-31 | 广东群宇互动科技有限公司 | 智能玩具生产方法、系统、平台及存储介质 |
CN118012407A (zh) * | 2024-01-03 | 2024-05-10 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、设备以及存储介质 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112764899A (zh) * | 2021-01-20 | 2021-05-07 | 深圳橙子自动化有限公司 | 基于应用程序处理视觉任务的方法及装置 |
CN113608731B (zh) * | 2021-08-06 | 2024-04-02 | 乐聚(深圳)机器人技术有限公司 | 积木编程关卡更新方法、装置、终端设备及存储介质 |
CN114003512B (zh) * | 2021-12-30 | 2022-05-13 | 卡斯柯信号(北京)有限公司 | 一种基于列车自动控制集成验证平台脚本生成方法及装置 |
CN115394069B (zh) * | 2022-07-29 | 2024-04-09 | 上海合壹未来文化科技有限公司 | 一种多设备联动遥控系统、方法、设备及存储介质 |
DE102022209954A1 (de) * | 2022-09-21 | 2024-03-21 | Brose Fahrzeugteile Se & Co. Kommanditgesellschaft, Bamberg | Verfahren zur Implementierung eines Steuerungsprogramms in einer elektronischen Steuereinrichtung eines Fahrzeugs, Steuerungssystem und Computerprogrammprodukt |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130111464A1 (en) * | 2011-10-27 | 2013-05-02 | 3Dmedia Corporation | Modular and open platform image capture devices and related methods |
CN103513992A (zh) * | 2013-10-23 | 2014-01-15 | 电子科技大学 | 一种通用的教育娱乐机器人应用软件研制平台 |
CN105511887A (zh) * | 2015-12-28 | 2016-04-20 | 鲍敏祺 | 一种硬件可视化编程构架 |
CN107368333A (zh) * | 2017-07-20 | 2017-11-21 | 福建瑞恒信息科技股份有限公司 | 基于图形编程的可穿戴设备配置方法和系统及配置系统 |
CN107479780A (zh) * | 2017-07-13 | 2017-12-15 | 北京微视酷科技有限责任公司 | 一种虚拟场景处理、下载方法及装置、vr设备 |
TW201835869A (zh) * | 2017-02-24 | 2018-10-01 | 日商偉業達股份有限公司 | 控制裝置、控制方法、資訊處理裝置、資訊處理方法及程式 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3404535A1 (en) * | 2017-05-15 | 2018-11-21 | Ecole Nationale de l'Aviation Civile | Method and apparatus for processing code |
US11145217B2 (en) * | 2017-09-21 | 2021-10-12 | Fujitsu Limited | Autonomous speech and language assessment |
-
2019
- 2019-04-29 WO PCT/CN2019/084951 patent/WO2020220184A1/zh unknown
- 2019-04-29 EP EP19926895.4A patent/EP3866002A1/en not_active Withdrawn
- 2019-04-29 CN CN201980008953.3A patent/CN111684414A/zh active Pending
-
2021
- 2021-03-19 US US17/207,575 patent/US20210208852A1/en not_active Abandoned
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130111464A1 (en) * | 2011-10-27 | 2013-05-02 | 3Dmedia Corporation | Modular and open platform image capture devices and related methods |
CN103513992A (zh) * | 2013-10-23 | 2014-01-15 | 电子科技大学 | 一种通用的教育娱乐机器人应用软件研制平台 |
CN105511887A (zh) * | 2015-12-28 | 2016-04-20 | 鲍敏祺 | 一种硬件可视化编程构架 |
TW201835869A (zh) * | 2017-02-24 | 2018-10-01 | 日商偉業達股份有限公司 | 控制裝置、控制方法、資訊處理裝置、資訊處理方法及程式 |
CN107479780A (zh) * | 2017-07-13 | 2017-12-15 | 北京微视酷科技有限责任公司 | 一种虚拟场景处理、下载方法及装置、vr设备 |
CN107368333A (zh) * | 2017-07-20 | 2017-11-21 | 福建瑞恒信息科技股份有限公司 | 基于图形编程的可穿戴设备配置方法和系统及配置系统 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113176894A (zh) * | 2021-04-29 | 2021-07-27 | 华人运通(上海)云计算科技有限公司 | 车控系统的控制方法、装置、存储介质、设备及汽车 |
CN113189909A (zh) * | 2021-04-29 | 2021-07-30 | 华人运通(上海)云计算科技有限公司 | 车控指令块的控制方法、装置、设备及存储介质 |
WO2022228527A1 (zh) * | 2021-04-29 | 2022-11-03 | 华人运通(上海)云计算科技有限公司 | 一种车载控制系统的控制方法、装置、设备及存储介质 |
WO2022228528A1 (zh) * | 2021-04-29 | 2022-11-03 | 华人运通(上海)云计算科技有限公司 | 一种车辆仿真系统的模拟方法、装置、设备及存储介质 |
CN113204381A (zh) * | 2021-05-11 | 2021-08-03 | 深圳市星火数控技术有限公司 | 指令文件生成方法、装置、机器设备和存储介质 |
CN113419483A (zh) * | 2021-07-06 | 2021-09-21 | 乐聚(深圳)机器人技术有限公司 | 设备状态的显示方法、装置、终端及存储介质 |
CN115657571A (zh) * | 2022-12-26 | 2023-01-31 | 广东群宇互动科技有限公司 | 智能玩具生产方法、系统、平台及存储介质 |
CN118012407A (zh) * | 2024-01-03 | 2024-05-10 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、设备以及存储介质 |
CN118012407B (zh) * | 2024-01-03 | 2024-09-27 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、设备以及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20210208852A1 (en) | 2021-07-08 |
EP3866002A1 (en) | 2021-08-18 |
WO2020220184A1 (zh) | 2020-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111684414A (zh) | 可视化编程控制装置、可编程控制的设备及其控制方法、计算机可读存储介质以及编程控制系统 | |
US8924800B2 (en) | Remote monitoring systems and related methods and recording mediums using the same | |
CN110825378B (zh) | 基于程序积木的编程系统和控制系统 | |
CN103942021A (zh) | 内容呈现方法,内容呈现方式的推送方法和智能终端 | |
CN103197875B (zh) | 电子设备以及电子设备的显示画面的显示方法 | |
CN104396282A (zh) | 用于可编程多媒体控制器的配置界面 | |
US20180326592A1 (en) | Manipulator system and method for identifying operating devices | |
CN103914320A (zh) | 一种显示方法和电子设备 | |
CN106774399A (zh) | Vr设备的控制方法、装置及遥控器 | |
JP2017027211A (ja) | プラント制御システム | |
CN109343876A (zh) | 一种固件更新的方法、系统、装置、设备及存储介质 | |
KR102286283B1 (ko) | 제어 장치, 제어 방법, 정보 처리 장치, 정보 처리 방법 및 프로그램 | |
CN105094914A (zh) | 远程在线烧写方法、装置及远程在线烧写系统 | |
CN103929676A (zh) | 一种遥控测试智能电视板卡功能的方法及智能电视板卡 | |
CN114153477B (zh) | Pcie驱动卡固件升级方法、装置、系统、设备及介质 | |
KR100601684B1 (ko) | 외부 저장장치, 화상획득장치, 및 드라이버를 구동하는방법 및 시스템 | |
CN106469009B (zh) | 一种智能控制系统配置方法及装置 | |
CN105912319A (zh) | 反向控制移动端页面的方法和装置 | |
KR20190100696A (ko) | 웹 기반 로봇 프로그래밍 시스템 및 방법 | |
CN107229257A (zh) | 用于在hmi系统中显示监视查看器的方法 | |
KR101629235B1 (ko) | 모니터용 펌웨어 자동 업데이트 시스템 | |
CN105872278A (zh) | 一种usb数据的无线传输方法、摄像头及系统 | |
CN108958586A (zh) | 一种控制下载任务的方法和装置 | |
CN101472329A (zh) | 跨平台的交互式数据同步装置、系统及其方法 | |
TWI704436B (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20200918 |