一种自动编译方法、系统及控制器技术方案

技术编号:34769046 阅读:12 留言:0更新日期:2022-08-31 19:26
本发明专利技术公开了一种自动编译方法、系统及控制器,涉及自动化设备技术领域,解决了自动化或工业控制中,需要专业软件技术人员进行PLC或单片机的控制代码编写和编译,增加了设备的运行和维护成本的技术问题。该自动编译方法包括:控制器与上位机连接,自动在所述上位机生成编程模板文件;用户在所述编程模板文件进行控制代码编写;用户完成控制代码编写并保存得到控制代码文件,所述控制器对所述控制代码文件进行自动编译,生成执行代码。本发明专利技术无需编程工具、无需编译工具就可以实现用户对设备的编程和编译操作,并省去了执行代码下载流程,无任何编程基础的用户,都可以在极短时间内完成全部操作,降低了自动控制设备的运行和维护成本。成本。成本。

【技术实现步骤摘要】
一种自动编译方法、系统及控制器


[0001]本专利技术涉及自动化设备
,尤其涉及一种自动编译方法、系统及控制器。

技术介绍

[0002]自动化设备采用PLC(Programmable Logic Controller,可编程逻辑控制器)或单片机主板进行控制,用户必须采用PLC语言、C语言或者汇编语言等进行控制程序编写,并使用各种PLC厂商或单片机的编译器。这既要求用户熟悉繁杂的PLC控制语言、C语言或者汇编语言等,还要求用户必须熟悉并使用各种语言对应的编译工具。在自动化或工业控制中,基于PLC或单片机的操作就需要配备相应的软件技术人员,对于没有软件基础的技术人员,无法独立高效完成自动化或工业控制设备调试与应用,增加了设备的运行和维护成本。
[0003]在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:
[0004]自动化或工业控制中,需要专业软件技术人员进行PLC或单片机的控制代码编写和编译,增加了设备的运行和维护成本。

技术实现思路

[0005]本专利技术的目的在于提供一种自动编译方法、系统及控制器,以解决现有技术中存在的自动化或工业控制中,需要专业软件技术人员进行PLC或单片机的控制代码编写和编译,增加了设备的运行和维护成本的技术问题。本专利技术提供的诸多技术方案中的优选技术方案所能产生的诸多技术效果详见下文阐述。
[0006]为实现上述目的,本专利技术提供了以下技术方案:
[0007]本专利技术提供的一种自动编译方法,包括以下步骤:S100:控制器与上位机连接,自动在所述上位机生成编程模板文件;S200:用户在所述编程模板文件进行控制代码编写;S300:用户完成控制代码编写并保存得到控制代码文件,所述控制器对所述控制代码文件进行自动编译,生成执行代码。
[0008]优选的,所述编程模板文件为.txt格式或.C格式。
[0009]优选的,在所述S300步骤中,所述控制器对所述控制代码文件进行自动编译的过程包括:S310:所述控制器读取所述控制代码文件;S320:检测所述控制代码是否存在语法错误,如存在语法错误,执行S330,否则执行S340;S330:所述控制器生成编译错误报告并进行提示,用户查看所述编译错误报告,对所述控制代码文件进行修改,并返回执行S310;S340:所述控制器对所述控制代码文件进行逐行解析,并转化为二维数组;S350:所述控制器按预设格式对所述二位数组进行编译,得到执行代码。
[0010]优选的,在所述S340步骤中,所述二维数组为11列,每列均为整型数字。
[0011]优选的,所述二维数组中,第1列为命令解析列,第2列为顺序行号列,第3列为跳转行号列,第4~11列为参数列。
[0012]优选的,通过所述命令解析列执行所述参数列,所述顺序行号列为语句的执行行号或条件为真时下一语句的执行行号,所述跳转行号列为条件为假时跳转对应行号,所述
参数列为语句的执行操作参数。
[0013]优选的,所述上位机为台式机、一体机、笔记本电脑、平板电脑或手机,所述控制器与上位机通过USB线连接。
[0014]优选的,所述控制器包括存储模块,所述存储模块为SPI Flash、SD卡或TF卡。
[0015]一种自动编译系统,所述自动编译系统采用以上任一项所述的自动编译方法进行编程,所述自动编译系统的运行过程如下:S10:控制器与上位机连接,自动编译系统对工作模式进行选择,如果所述控制器存在所述执行代码,执行S20,否则执行S30;S20:自动编译系统通过所述执行代码控制设备运行,进入运行模式;S30:自动编译系统自动生成所述编程模板文件,进入编程模式。
[0016]一种设备,包括:一个或多个处理器;存储器,用于存储一个或多个计算机程序,一个或多个所述处理器用于执行所述存储器存储的一个或多个计算机程序,以使一个或多个所述处理器执行以上任一项所述的自动编译方法。
[0017]实施本专利技术上述技术方案中的一个技术方案,具有如下优点或有益效果:
[0018]本专利技术无需编程工具、无需编译工具就可以实现用户对设备的编程和编译操作,并省去了执行代码下载流程,操作过程更为简单方便,无任何编程基础的用户,都可以在极短时间内完成全部操作,降低了自动控制设备的运行和维护成本。
附图说明
[0019]为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍,显而易见,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,附图中:
[0020]图1是本专利技术实施例一自动编译方法的流程图;
[0021]图2是本专利技术实施例一中自动编译过程的流程图;
[0022]图3是本专利技术实施例一中在编程模板文件进行编程的示例图;
[0023]图4是本专利技术实施例一中控制代码文件逐行解析后的二维数组示例图;
[0024]图5是本专利技术实施例一中二维数组的结构示意图;
[0025]图6是本专利技术实施例二自动编译系统的运行流程图。
具体实施方式
[0026]为了使本专利技术的目的、技术方案及优点更加清楚明白,下文将要描述的各种示例性实施例将要参考相应的附图,这些附图构成了示例性实施例的一部分,其中描述了实现本专利技术可能采用的各种示例性实施例。除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。应明白,它们仅是与如所附权利要求书中所详述的、本专利技术公开的一些方面相一致的流程、方法和装置等的例子,还可使用其他的实施例,或者对本文列举的实施例进行结构和功能上的修改,而不会脱离本专利技术的范围和实质。
[0027]在本专利技术的描述中,需要理解的是,术语“中心”、“纵向”、“横向”等指示的是基于附图所示的方位或位置关系,仅是为了便于描述本专利技术和简化描述,而不是指示或暗示所
指的元件必须具有的特定的方位、以特定的方位构造和操作。术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。术语“多个”的含义是两个或两个以上。术语“相连”、“连接”应做广义理解,例如,可以是固定连接、可拆卸连接、一体连接、机械连接、电连接、通信连接、直接相连、通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。术语“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本专利技术中的具体含义。
[0028]为了说明本专利技术所述的技术方案,下面通过具体实施例来进行说明,仅示出了与本专利技术实施例相关的部分。
[0029]实施例一:
[0030]如图1所示,本专利技术提供了一种自动编译方法,包括以下步骤:S100:控制器与上位机连接,自动在上位机生成编程模板文件,如生成“编程模板.TXT”文本文件作为编程本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种自动编译方法,其特征在于,包括以下步骤:S100:控制器与上位机连接,自动在所述上位机生成编程模板文件;S200:用户在所述编程模板文件进行控制代码编写;S300:用户完成控制代码编写并保存得到控制代码文件,所述控制器对所述控制代码文件进行自动编译,生成执行代码。2.根据权利要求1所述的一种自动编译方法,其特征在于,所述编程模板文件为.txt格式或.C格式。3.根据权利要求1所述的一种自动编译方法,其特征在于,在所述S300步骤中,所述控制器对所述控制代码文件进行自动编译的过程包括:S310:所述控制器读取所述控制代码文件;S320:检测所述控制代码是否存在语法错误,如存在语法错误,执行S330,否则执行S340;S330:所述控制器生成编译错误报告并进行提示,用户查看所述编译错误报告,对所述控制代码文件进行修改,并返回执行S310;S340:所述控制器对所述控制代码文件进行逐行解析,并转化为二维数组;S350:所述控制器按预设格式对所述二位数组进行编译,得到执行代码。4.根据权利要求3所述的一种自动编译方法,其特征在于,在所述S340步骤中,所述二维数组为11列,每列均为整型数字。5.根据权利要求4所述的一种自动编译方法,其特征在于,所述二维数组中,第1列为命令解析列,第2列为顺序行号列,第3列为跳转行号列,第4~11列为参数列。6.根...

【专利技术属性】
技术研发人员:唐永生
申请(专利权)人:深圳市凯乐思通科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1