一种基于图形块编程控制可编程设备的方法及其系统

文档序号:6924 发布日期:2021-09-17 浏览:24次 >En<

阅读说明:本技术 一种基于图形块编程控制可编程设备的方法及其系统 (Method and system for controlling programmable device based on graphic block programming ) 是由 刘燃 曹强 靳立冰 韦佳顺 于 2021-06-23 设计创作,主要内容包括:本发明公开了一种基于图形块编程控制可编程设备的方法及其系统,具体涉及图形块编程技术领域,包括一种基于图形块编程控制可编程设备的系统,包括上位机编程软件、可编程设备程序固件和可编程设备物理硬件,所述上位机编程软件位于上位机内部,所述上位机与可编程设备物理硬件之间电性连接,所述可编程设备程序固件安装于可编程设备物理硬件上。上述方案中,通过在对图形块做出特定动作,由上位机自动生成代码,再烧录到可编程设备,实现了用户可以按照自己的逻辑和想法利用可编程设备直接控制目标设备的目的,使用户可以在不需要了解任何编程语言的语法知识和硬件设备的编程知识的情况下,打造出独一无二的专属可编程设备。(The invention discloses a method and a system for controlling programmable equipment based on graphic block programming, and particularly relates to the technical field of graphic block programming. In the scheme, the purpose that a user can directly control the target equipment by utilizing the programmable equipment according to own logic and idea is achieved by making a specific action on the graphic block, automatically generating codes by the upper computer and burning the codes to the programmable equipment, so that the user can create unique special programmable equipment without knowing grammar knowledge of any programming language and programming knowledge of hardware equipment.)

一种基于图形块编程控制可编程设备的方法及其系统

技术领域

本发明涉及图形块编程

技术领域

,更具体地说,本发明涉及一种基于图形块编程控制可编程设备的方法及其系统。

背景技术

图形化编程就是编写有界面的程序,平时接触的一般都是界面程序,就是有按钮之类的界面。编程语言就是开发者控制或者是是与计算机交流的手段,开发者通过编写编程语言告诉计算机该怎么运行。通过这种图形化编程环境,大多数儿童和初学者现在都有机会学习这种编程。

通过检索中国发明专利CN 106775765 B,公开了一种图形化编程系统,包括视化操作界面,其可添加可视化功能组件和可视化线组件,每种可视化功能组件表示一种功能,可视化线组件用于建立可视化功能组件间的连接关系,可视化线组件具有方向性;程序解释单元,其可添加节点模块和边模块,每种节点模块分别与一种可视化功能组件对应,并可实现该种可视化功能组件表示的功能,边模块与可视化线组件对应,并可根据可视化线组件的方向在节点模块之间传递数据。该发明利用纯图形化界面操作构建程序,无需书写代码,无需编译,简单易用,但仍存在缺点,呈现的是虚拟影像无法实体化,所能实现的能力仅仅是控制软件中的某一个虚拟场景,这种使用场景十分单一,用户使用一段时间后就会感觉乏味,并且也根本锻炼不了用户的动手能力,不能拿到一个自己创作出来的实物和朋友们一起分享,体验感不佳,不具备可推广的效果。

因此亟需提供一种基于图形块编程控制可编程设备的方法及其系统。

发明内容

为了克服现有技术的上述缺陷,本发明的实施例提供一种基于图形块编程控制可编程设备的方法及其系统,以解决现有技术的图形化编程实现的是以虚拟影像呈现,无法将虚拟影像实体化,用户缺少体验感和动手能力的问题。

为解决上述技术问题,本发明提供如下技术方案:一种基于图形块编程控制可编程设备的系统,包括上位机编程软件、可编程设备程序固件和可编程设备物理硬件,所述上位机编程软件位于上位机内部,所述上位机与可编程设备物理硬件之间电性连接,所述可编程设备程序固件安装于可编程设备物理硬件上,,所述可编程设备物理硬件电性连接有可控制设备。

所述上位机编程软件的内部设有可视化单元和程序解释单元,所述可视化单元包括可视化操作界面和虚拟影像界面,所述可视化操作界面包括若干个可视图形块,所述程序解释单元包括节点模块和运行控制模块,所述节点模块包括若干个独立函数,所述独立函数与可视图形块在功能上一一对应,所述虚拟影像界面的内部设有虚拟影像呈现模块。

一种基于图形块编程控制可编程设备的方法,步骤如下:

步骤一:可编程设备开发人员根据设备所具有的功能和特性,把设备可以实现的功能封装成一个个独立执行函数;

步骤二:上位机开发人员根据可编程设备封装好的函数,定义好对应的图形块以及图形块与代码之间的转换关系;

步骤三:用户对图形块执行特定动作,完成自己所想的执行逻辑;

步骤四:用户把可编程设备与上位机连接,并点击烧录按钮;

步骤五:上位机将用户拖拽的图形块转换为对应代码,并烧录到可编程设备中;

步骤六:可编程设备在烧录过程完毕后自动执行所烧录的代码,按照用户的特定动作控制设备执行相应的逻辑和动作。

优选地,所述步骤三中的所述图形块为组合基础图形块和上位机开发人员定义好的图形块,所述基础图形块,是指对应代码基础语法的图形块,例如变量的定义及赋值,文本相关基础函数,数字相关基础函数,程序判断代码块,循环代码块等等,所述步骤三中的所述特定动作可为拖拽图形块、单击图形块和双击图形块等,若干个所述特定动作由开发人员定义为不同含义。

优选地,所述步骤一中的所述独立可执行函数,是指可以独立完成某一个功能的函数,且任意一个函数的执行与其他函数没有任何关系,所述功能包括但不限于执行一个动作或者多个动作组合而成的动作组。

优选地,所述步骤二中的所述图形块和步骤一中的所述函数是需要一一对应的,所述图形块包含的输入参数的个数以及类型已排序完毕,返回值的类型必须和步骤一中所述的函数一致,要确保根据转换关系生成出来的代码是能在可编程设备中正常运行的。

优选地,所述步骤四中的所述上位机为具有连接可编程设备及烧录代码的能力的上位机,所述上位机所转换的代码是由上位机开发人员定义的,包括但不限定于Python、C和JavaScript,所述可编程设备自身可以执行语言的代码决定具体生成语言的代码。

优选地,所述步骤六中的所述可编程设备,至少包含一个原始固件和存储这个固件的介质,这个固件具有实现步骤一中的所述独立执行函数的能力。

优选地,所述步骤六中的所述可编程设备连接的可控制设备包括但不限于各类传感器、马达、舵机和LED灯。

本发明的上述技术方案的有益效果如下:

上述方案中,通过在对图形块做出特定动作,由上位机自动生成代码,再烧录到可编程设备,实现了用户可以按照自己的逻辑和想法利用可编程设备直接控制目标设备的目的,使用户可以在不需要了解任何编程语言的语法知识和硬件设备的编程知识的情况下,打造出独一无二的专属可编程设备,该装置使用简单,不需要书写专业代码,不需要编译,只需对图形块执行特定动作就会自动产生用户需要的代码,从而将虚拟的东西现实化,提高用户的体验感,增加用户的趣味性,值得推广。

附图说明

图1为本发明的一种基于图形块编程控制可编程设备的系统框图;

图2为本发明的一种基于图形块编程控制可编程设备的系统流程图;

图3为本发明的一种基于图形块编程控制可编程设备的方法流程图;

图4为本发明的一种基于图形块编程控制可编程设备的方法的实施例流程图;

图5为本发明的一种基于图形块编程控制可编程设备的方法的执行逻辑图;

图6为本发明的一种基于图形块编程控制可编程设备的方法的代码块转换图。

具体实施方式

为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。

如图1至图2所示,本发明的实施例提供一种基于图形块编程控制可编程设备的系统,包括上位机编程软件、可编程设备程序固件和可编程设备物理硬件,上位机编程软件位于上位机内部,上位机与可编程设备物理硬件之间电性连接,可编程设备程序固件安装于可编程设备物理硬件上,可编程设备物理硬件电性连接有可控制设备;上位机编程软件的内部设有可视化单元和程序解释单元,可视化单元包括可视化操作界面和虚拟影像界面,可视化操作界面包括若干个可视图形块,程序解释单元包括节点模块和运行控制模块,节点模块包括若干个独立函数,独立函数与可视图形块在功能上一一对应,虚拟影像界面的内部设有虚拟影像呈现模块。

具体的,上位机编程软件需要用户下载到上位机上,上位机是指可以直接发出操控命令的计算机,而可编程设备程序固件可制作成大小不一的盒体,并安装在可编程设备上,上位机将代码烧录到可编程设备程序固件上,可编程设备开始根据代码执行动作。

具体的,可视化操作界面与虚拟影像界面各占据整个界面的一半面积,用户对图形块执行特定动作后,虚拟影像界面呈现对应的模拟场景,用户由此可得知自己刚才的操作正确与否,是否为自己想要可执行设备体现的逻辑或动作。

具体的,程序解释单元中有节点模块,节点模块为开发者自己定义的函数块,每个函数块对应可执行设备能实现的特定功能,此节点模块与可视图形块一一对应。

如图2至图6所示,一种基于图形块编程控制可编程设备的方法,步骤如下:

步骤一:可编程设备开发人员根据设备所具有的功能和特性,把设备可以实现的功能封装成一个个独立执行函数;

步骤二:上位机开发人员根据可编程设备封装好的函数,定义好对应的图形块以及图形块与代码之间的转换关系;

步骤三:用户对图形块执行特定动作,完成自己所想的执行逻辑;

步骤四:用户把可编程设备与上位机连接,并点击烧录按钮;

步骤五:上位机将用户拖拽的图形块转换为对应代码,并烧录到可编程设备中;

步骤六:可编程设备在烧录过程完毕后自动执行所烧录的代码,按照用户的特定动作控制设备执行相应的逻辑和动作。

其中,步骤三中的图形块为组合基础图形块和上位机开发人员定义好的图形块,基础图形块,是指对应代码基础语法的图形块,例如变量的定义及赋值,文本相关基础函数,数字相关基础函数,程序判断代码块,循环代码块等等,步骤三中的特定动作可为拖拽图形块、单击图形块和双击图形块等,若干个特定动作由开发人员定义为不同含义。

具体的,组合基础图形块为现有常见的,而其他图形块为开发人员自己根据可执行设备具备的功能自己定义的,特定动作代表的含义也可由开发者自己定义,例如:单机对应“选中”,双击对应“取消选中”,拖拽出来对应“选中”,拖拽回位对应“取消”等等。

具体的,上位机界面还可制作成触屏界面,使用更方便。

其中,步骤一中的独立可执行函数,是指可以独立完成某一个功能的函数,且任意一个函数的执行与其他函数没有任何关系,功能包括但不限于执行一个动作或者多个动作组合而成的动作组。

其中,步骤二中的图形块和步骤一中的函数是需要一一对应的,图形块包含的输入参数的个数以及类型已排序完毕,返回值的类型必须和步骤一中的函数一致,要确保根据转换关系生成出来的代码是能在可编程设备中正常运行的。

其中,步骤四中的上位机为具有连接可编程设备及烧录代码的能力的上位机,上位机所转换的代码是由上位机开发人员定义的,包括但不限定于Python、C和JavaScript,可编程设备自身可以执行语言的代码决定具体生成语言的代码。

具体的,上位机转换代码用到的也是函数,具体生成何种语言的代码由可编程设备自身可以执行何种语言的代码决定。

其中,步骤六中的可编程设备,至少包含一个原始固件和存储这个固件的介质,这个固件具有实现步骤一中的独立执行函数的能力,保证上位机转换后的代码能在此设备中正常运行,不会出现任何错误。

其中,步骤六中的可编程设备连接的可控制设备包括但不限于各类传感器、马达、舵机和LED灯。

如图4,具体的,以舵机为例:

用户想要转动舵机,可以先在上位机的可视化操作界面上拖拽代码块,点击下拉框,选择“S1”、“顺时针”,接着输入参数“90”度,然后分别将舵机与可编程设备连接,可编程设备与上位机连接,此时虚拟影像界面上用户可以看到舵机在沿着顺时针方向转动90度的虚拟场景,此场景可以帮助用户确认刚才的操作是否为自己想要的动作,上位机会先根据上位机的代码转换器转换为可识别的代码,并把这串用户代码保存为文件后烧录到可执行设备的某个固定目录中,舵机再次启动时检测到对应目录下存在用户代码文件,就会执行用户代码,这是一个函数调用,而设备固件中是存在这个函数的具体实现的,固件会控制舵机开始重启,并执行顺时针方向转动90度的动作,整个过程完结。

如图5,图中展示了可编程设备的执行逻辑,当可控制设备通电启动后,会立即执行可编程设备固件中定义好的开机执行代码,这会让可控制设备开启两个线程,线程1会一直监听是否有代码烧录请求,如果有的话,那么就接收代码,接收完毕后立即重启可控制设备,如果没有,就会开启线程2;线程2会检查可控制设备对应目录下是否存在用户代码文件,如果存在,线程2会去执行这个文件里面的代码,如果不存在,则线程2销毁,可控制设备待机,整个过程完结。

如图6,图中演示了代码语言的转换,根据可执行设备自身可识别的代码进行相应的转换。

本发明的工作过程如下:

当用户想要对目标设备执行动作时,可以先对图形块执行特定动作,然后连接上可编程设备与上位机,此时虚拟影像界面上用户可以看到可控制设备在做出对应动作的虚拟场景,此场景可以帮助用户确认刚才的操作是否为自己想要的动作,然后上位机开始转换为可编程设备可以识别的代码,并烧写代码,再将代码烧录在可编程设备上,可编程设备识别到有烧录代码的请求,开始重启,并执行用户想要的逻辑和动作。

该系统和方法实现了用户可以按照自己的逻辑和想法直接控制目标设备的目的,使用户可以在不需要了解任何编程语言的语法知识和硬件设备的编程知识的情况下,打造出独一无二的专属可编程设备,该装置使用简单,不需要书写专业代码,不需要编译,只需对图形块执行特定动作就会自动产生用户需要的代码,从而将虚拟的东西现实化,提高用户的体验感,增加用户的趣味性,可以大力推广。

最后应说明的几点是:首先,在本申请的描述中,需要说明的是,除非另有规定和限定,术语“安装”、“相连”、“连接”应做广义理解,可以是机械连接或电连接,也可以是两个元件内部的连通,可以是直接相连,“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变,则相对位置关系可能发生改变;

其次:本发明公开实施例附图中,只涉及到与本公开实施例涉及到的结构,其他结构可参考通常设计,在不冲突情况下,本发明同一实施例及不同实施例可以相互组合;

最后:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

12页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种高效编解码规则实现PLC高速差分背板总线的方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类