[发明专利]一种自动化设备控制软件开发方法、系统和存储介质有效
申请号: | 202210425055.1 | 申请日: | 2022-04-22 |
公开(公告)号: | CN114816349B | 公开(公告)日: | 2023-09-29 |
发明(设计)人: | 王长军;郑艳文;邓文波;陈垚;王飞 | 申请(专利权)人: | 珠海市奥德维科技有限公司 |
主分类号: | G06F8/20 | 分类号: | G06F8/20;G06F8/41 |
代理公司: | 北京方圆嘉禾知识产权代理有限公司 11385 | 代理人: | 程华 |
地址: | 519000 广东省珠*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 自动化 设备 控制 软件 开发 方法 系统 存储 介质 | ||
本发明公开了一种自动化设备控制软件开发方法、系统和存储介质,主要包括以下步骤:响应于用户的启动请求,在用户操作界面显示若干个函数模块;响应于用户的编辑请求,确定所述若干个函数模块之间的执行顺序和执行关系,得到任务串;所述执行关系包括串行执行和并发执行;将所述任务串进行格式转换和语法转换,得到配置文本;分析所述配置文本,生成中间表示;执行所述中间表示。本发明所公开的一种自动化设备控制软件开发方法,支持并发和同步功能,降低自动化控制类软件开发难度,同时加快开发工作。本发明广泛应用于自动化设备控制领域。
技术领域
本发明涉及自动化控制领域,尤其是一种自动化设备控制软件开发方法、系统和存储介质。
背景技术
自动化设备的控制系统一般由一台控制计算机、多个传感器模块和多个执行器模块(如运动控制卡、PLC等)组成。计算机系统执行软件,从传感器读取输入数据,向执行器输出控制信号。一个完整控制逻辑由大量处理任务组成,它们之间既可能是先后依序运行的串行执行关系,也可能是同时执行的并发执行关系;同时又存在条件依赖,例如任务A等待任务B完成某动作后才能继续运行;此外,还存在数据依赖关系,例如任务A需要任务B的处理结果。因此软件程序往往十分复杂,同时又常常需要根据实际使用场合进行定制。由此可见,快速开发出满足要求的软件系统是一项有难度的工作。
现有的自动化控制软件开发方法通常使用编程语言直接开发;开发周期长,定制修改难度大;基本不支持一些较为复杂的算术逻辑运算和对软件的正确性检查。另一方面,现有技术只支持模块的串行执行,不支持并发执行、并发同步和独立CPU核心执行。
发明内容
有鉴于此,本发明实施例提供一种自动化设备控制软件开发方法、系统和存储介质。
本发明的第一方面提供了一种自动化设备控制软件开发方法,包括以下步骤:
响应于用户的启动请求,在用户操作界面显示若干个函数模块;
响应于用户的编辑请求,确定所述若干个函数模块之间的执行顺序和执行关系,得到任务串;所述执行关系包括串行执行和并发执行;
将所述任务串进行格式转换和语法转换,得到配置文本;
分析所述配置文本,生成中间表示;
执行所述中间表示。
进一步地,所述函数模块包括算术逻辑运算模块;所述算术逻辑运算模块用于执行算术运算和/或逻辑运算;所述算术运算包括加运算、减运算、乘运算、除运算、模运算;所述逻辑运算包括与运算、或运算、非运算。
进一步地,在所述执行关系为并发执行时,确定并发执行的多个函数任务之间的同步信号;
所述同步信号包括等待信号和触发信号,所述等待信号用于令所述函数模块在接收到触发信号之前执行等待操作;所述触发信号用于触发正在执行等待操作的函数模块。
进一步地,在将所述任务串进行格式转换和语法转换,得到配置文本之前,还包括以下步骤:
响应于用户的延时请求,在任务串中所述延时请求所指向的目标函数模块之前添加延时操作;所述延时请求包括目标函数模块和延时时长。
进一步地,在分析所述配置文本之前,还包括以下步骤:
检查所述配置文本中的输入参数类型,在输入参数类型与函数模块的定义参数类型不一致时,在用户操作界面显示异常信息。
进一步地,所述中间表示包括语法树和符号表;
所述语法树中包括树状排列的若干个节点;节点分为若干类型,每一种类型的节点对应一种或多种处理该类型节点的函数模块;在执行所述中间表示时,通过节点类型索引到处理该类型节点的函数模块,调用这一部分函数模块以处理该节点;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于珠海市奥德维科技有限公司,未经珠海市奥德维科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210425055.1/2.html,转载请声明来源钻瓜专利网。