CN101488012A - 一种利用流程框图实现顺序控制的方法 - Google Patents
一种利用流程框图实现顺序控制的方法 Download PDFInfo
- Publication number
- CN101488012A CN101488012A CNA2009100250383A CN200910025038A CN101488012A CN 101488012 A CN101488012 A CN 101488012A CN A2009100250383 A CNA2009100250383 A CN A2009100250383A CN 200910025038 A CN200910025038 A CN 200910025038A CN 101488012 A CN101488012 A CN 101488012A
- Authority
- CN
- China
- Prior art keywords
- flow
- sequential control
- control
- flow diagram
- language
- 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
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种利用流程框图实现顺序控制的方法,包括以下步骤(1)根据顺序控制流程或设备操作闭锁条件,在流程组态界面中绘制出流程图。(2)将生成的流程图转换成顺序控制语言。(3)对生成的顺序控制语言进行词法分析和语法分析,排除语法上的错误后转换为我们自己定义的汇编代码。(4)将汇编代码下载到指定计算机上。(5)在计算机上执行汇编代码,通过访问数据库得到数据,描述一定的判断和闭锁条件,产生一定的动作,并将运算结果写至数据库中。同时,还将实时执行的各种信息回送到监视进程,以便监视流程执行情况。本发明具有操作使用方便、控制流程生成、快速编程质量提高的优点。
Description
技术领域
本发明涉及一种自动控制的方法,尤其是涉及一种利用流程框图实现顺序控制的方法。
背景技术
在工业控制领域中,大量使用的控制操作为顺序控制方式。目前国内设计院或用户提供的顺序控制流程或设备操作闭锁条件都是用流程图的形式来表示。在PLC中,实现顺序控制的方法很多,如梯形图(LD)、结构化文本(ST)、功能块组态(FBD)和顺序功能图(SFC),用这几种方式来实现顺序控制,首先要理解顺序控制全过程,再用各自的控制方式来实现。由此可见,以上这几种控制方式存在直观性差、不够自然、用户接受起来较为困难的缺点。最为直观、方便又易于被用户接受的方式为可视化流程框图(FlowChart)编程。可视化流程图(FlowChart)编程为计算机监控软件提供一种控制方法,用这种方法实现顺序控制在国内外监控系统中未见。一般的控制流程是在PLC中执行,这种在计算机监控软件中执行的方式在国内外监控系统中未见。
发明内容
1、发明目的
国内设计院或用户提供的顺序控制流程或设备操作闭锁条件都是用流程图的形式来表示。常规的5种编程语言来实现顺序控制,首先要理解顺序控制全过程,再用各自的控制方式来实现,这几种控制方式存在直观性差、不够自然、用户接受起来较为困难的缺点。最为直观、方便又易于被用户接受的方式为可视化流程框图(FlowChart)编程。另外,可视化流程框图编程作为计算机监控软件提供的一种控制办法,解决了LCU上控制流程相关测点不全的情况下无法执行的问题。
2、技术方案
流程图提供了一种简单的图形化过程描述,它们容易被理解,对顺序控制来说,它是一个最为自然的语言,只要用流程图组态出一个控制的全过程,那么相应的控制程序已完成。我们在Windows平台上,用Visual C++编程语言,采用面向对象的方法,开发了一套用流程框图进行编程的顺序控制系统。这套系统提供了直观的、交互的方法来生成顺序控制程序。实现过程如下:
(1)根据顺序控制流程或设备操作闭锁条件,在流程组态界面中绘制出流程图。
(2)将生成的流程图转换成顺序控制语言,这是一种具有与C语言相似的结构、书写风格以及语法规范的自定义语言,它除了一般的赋值、开关、循环语句外,还扩充了一些与监控系统接口的特殊功能语句。在转换过程中,对流程图进行合法性检查。
(3)对生成的顺序控制语言进行词法分析和语法分析,排除语法上的错误后转换为我们自己定义的汇编代码。
(4)将汇编代码下载到指定计算机上。
(5)在计算机上执行汇编代码,通过访问数据库得到数据,描述一定的判断和闭锁条件,产生一定的动作,并将运算结果写至数据库中。同时,还将实时执行的各种信息回送到监视进程,以便监视流程执行情况。
3、有益效果
操作使用方便
与其它5种语言相比,按照设计院设计流程框图组态,所见即所得;不需要任何培训,控制流程就能读懂。
控制流程生成快速
组态界面友好,操作方便,自动编译生成汇编代码来执行,不需要重新定义测点,每个框图直接通过索引,连接数据库测点,生成速度快。
编程质量提高
流程框图易于理解,不需要像其他5种语言详细分析控制过程,再制作控制编程语言,所见即所得,编程质量提高,控制可靠性也提高。
附图说明
图1是控制流程生成过程示意图
图2是一个流程图的例子示意图
具体实施方式
以下结合附图对本发明作进一步说明。实现本发明所述方法涉及的系统主要包括以下3个部分,顺控流程管理进程、面向工程师的顺控流程图组态及调试进程及面向操作员的监视顺控流程实时执行进程。下面分三部分详细说明。
控制流程管理进程
这个进程是一个在系统初始化时就必须运行的程序(并常驻),它的主要作用是管理系统中所有控制流程,处理来自执行流程的计算机的各种有关控制的信息,实时显示系统中各流程的状态,显示并保留各流程执行的各种信息,下载(或批量下载)生成好的控制流程程序,并能对任何一个流程进行控制(如启动执行、加锁、解锁)。当收到一个来自于某节点启动某个流程执行的信文时,管理程序自动为操作员启动一个反映流程实时执行情况的界面程序。
控制流程组态和调试进程
这个进程的主要功能为组态生成控制流程,并把生成的图形转换成顺控语言,并可编译成汇编代码,再下载到指定计算机中。然后可对流程进行调试,这样,就能排除流程中的错误和不合理处,调试执行时,指定计算机能把执行的实时信息回送给组态调试程序。具体过程如图1所示。
根据我们多年从事计算机监控系统的研制、开发和工程实施经验,首先定义了一个顺序控制语言,这个语言的语法规范类似于C语言,并扩充了实际工程中常用的而C语言中没有的功能,如报警显示和登录、启动另一顺控流程、读写数据库、语音报警、流程闭锁等。顺控语言的定义,为流程图中的图形语言的转换创造了条件,在转换过程中,自动判断出所生成的流程图在图形上的错误,消除错误并转换成功后,生成了用顺控语言描述的控制流程程序。通过对生成的顺控程序进行词法及语法分析,排除一些语法上的错误,编译成我们自己定义的汇编代码,然后可下载到LCU上,并可进行调试。图2是我们为某一工程生成的一个流程的一部分。
在流程组态时,我们预先定义了以下几个功能框,开始框、结束框、异常退出框、出错陷井框、执行框、调用子流程框、条件框、限时判断框、连接符、操作员确认框、大步标识框。生成一个流程,就是上面几个框的复杂组合。对编程组态和调试程序,主要特点如下:
①连前景时,测点名可以从监控软件数据库中寻找,找出后自动连入测点标签(tagname),不需要人工输入。
②“吸铁石”功能,两个功能框靠近到一定距离,自动建立连接关系,并添加带有箭头的连线表示两个功能框已经建立连接关系。当控制流程图一页画满时,可以使用连接符,转向另一页。
③图形转换成顺控语言,再编译成汇编时,自动判断出图形语言及语法中的错误并用红色标出,一目了然。
④流程中,各功能框可以编辑、增删、移动,两功能框输入输出之间的连接关系(即连线)的增加是依据两功能框的相对位置,自动算出连线的走向,当两功能框的相对位置发生变化时,连线自动改变走向,而两者已建立的连接关系不变。当然,两功能框之间的连接关系也可删除,删除后,两功能框之间的连线也自动消失。当一个功能框删除后,与之建立的连接关系和连线,全部自动删除。
⑤按设备,把整个工程中所有的流程以树形结构的方式,进行显示,所有流程一目了然。
⑥可以动态调试执行任意一个已组态好的流程,以三种颜色来区分各功能框的执行情况,未执行的为灰黑色,正在执行的为红色,已执行的为兰色,并可以做单步执行,设断点等调试。对于任一流程中使用的变量及I/O测点,在调试时都可以查看并设值,为了防止测点I/O标签(tagname)的错误,对流程中使用的I/O,可进行合法性检查,如不合法,则说明所连的tagname错误或系统中不存在这个测点。
⑦每个流程程序启动时,可以带启动源(当地、AGC/AVC、中调、用户自定义)和形参这两个全局变量,控制流程在实时运行时,可以使用这两个全局变量。
⑧当控制流程较为复杂时,可以使用大步标识框,正常执行时,仅显示流程的大步标识框,如发现问题,可通过切换按纽来显示流程的详细执行过程。
⑨流程可以支持回放,一个流程执行完成以后,可以进行回放,重现执行过程。
⑩支持所见即所得的打印方式,打印所有生成的流程,以便归档。
监视控制流程实时执行进程
这个进程主要是面向操作员的,它实时显示流程执行过程,实时反映流程执行过程中的各种信息,并在执行过程中可以实时显示I/O的值。在控制流程发生异常时,可以随时终止该流程的执行。当需要操作员确认时,自动推出一个对话框,操作员可输入命令。在一个流程执行完成以后,如该流程支持回放,该程序就会把流程的执行过程记录下来,如需要,可以重现该流程的执行过程,以便于分析问题。
Claims (1)
1、一种利用流程框图实现顺序控制的方法,其特征在于,包括以下步骤,
(1)根据顺序控制流程或设备操作闭锁条件,在流程组态界面中绘制出流程图;
(2)将生成的流程图转换成顺序控制语言,在转换过程中,对流程图进行合法性检查;
(3)对生成的顺序控制语言进行词法分析和语法分析,排除语法上的错误后转换为我们自己定义的汇编代码;
(4)将汇编代码下载到指定计算机上;
(5)在计算机上执行汇编代码,通过访问数据库得到数据,描述一定的判断和闭锁条件,产生一定的动作,并将运算结果写至数据库中;同时,还将实时执行的各种信息回送到监视进程,以便监视流程执行情况。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2009100250383A CN101488012A (zh) | 2009-02-13 | 2009-02-13 | 一种利用流程框图实现顺序控制的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2009100250383A CN101488012A (zh) | 2009-02-13 | 2009-02-13 | 一种利用流程框图实现顺序控制的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101488012A true CN101488012A (zh) | 2009-07-22 |
Family
ID=40890931
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2009100250383A Pending CN101488012A (zh) | 2009-02-13 | 2009-02-13 | 一种利用流程框图实现顺序控制的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101488012A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103235549A (zh) * | 2013-04-08 | 2013-08-07 | 北京信息科技大学 | 可编程序控制器应用程序的自动生成方法及装置 |
CN105446280A (zh) * | 2014-08-26 | 2016-03-30 | 唐志 | 工业过程控制快速生成系统及实现方法 |
CN105229542B (zh) * | 2013-04-18 | 2017-06-09 | 三菱电机株式会社 | 编程工具 |
CN107665219A (zh) * | 2016-07-28 | 2018-02-06 | 华为技术有限公司 | 一种日志管理方法及装置 |
CN107728561A (zh) * | 2016-08-11 | 2018-02-23 | 苏州汉扬精密电子有限公司 | Plc编程系统及方法 |
CN108027607A (zh) * | 2015-09-14 | 2018-05-11 | 三菱电机株式会社 | 控制程序自动生成系统 |
CN109634572A (zh) * | 2018-12-17 | 2019-04-16 | 王相军 | 一种流程图编程方法及系统 |
CN111352381A (zh) * | 2019-12-16 | 2020-06-30 | 常州汇邦电子有限公司 | 可编程逻辑控制器编程方法、可编程逻辑控制器及系统 |
CN111624933A (zh) * | 2019-02-28 | 2020-09-04 | 发那科株式会社 | 用于顺控程序的追踪的顺控程序处理装置 |
CN112181381A (zh) * | 2020-11-02 | 2021-01-05 | 苏州中科全象智能科技有限公司 | 一种基于分支循环的流程图构建方法 |
CN113485182A (zh) * | 2021-06-30 | 2021-10-08 | 中冶华天工程技术有限公司 | 自动生成料场皮带流程控制程序的方法 |
-
2009
- 2009-02-13 CN CNA2009100250383A patent/CN101488012A/zh active Pending
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103235549A (zh) * | 2013-04-08 | 2013-08-07 | 北京信息科技大学 | 可编程序控制器应用程序的自动生成方法及装置 |
CN103235549B (zh) * | 2013-04-08 | 2015-09-23 | 北京信息科技大学 | 可编程序控制器应用程序的自动生成方法及装置 |
CN105229542B (zh) * | 2013-04-18 | 2017-06-09 | 三菱电机株式会社 | 编程工具 |
CN105446280A (zh) * | 2014-08-26 | 2016-03-30 | 唐志 | 工业过程控制快速生成系统及实现方法 |
CN105446280B (zh) * | 2014-08-26 | 2018-09-25 | 四川科立科技发展有限公司 | 工业过程控制快速生成系统及实现方法 |
CN108027607A (zh) * | 2015-09-14 | 2018-05-11 | 三菱电机株式会社 | 控制程序自动生成系统 |
CN107665219A (zh) * | 2016-07-28 | 2018-02-06 | 华为技术有限公司 | 一种日志管理方法及装置 |
CN107728561A (zh) * | 2016-08-11 | 2018-02-23 | 苏州汉扬精密电子有限公司 | Plc编程系统及方法 |
CN109634572A (zh) * | 2018-12-17 | 2019-04-16 | 王相军 | 一种流程图编程方法及系统 |
CN111624933A (zh) * | 2019-02-28 | 2020-09-04 | 发那科株式会社 | 用于顺控程序的追踪的顺控程序处理装置 |
CN111624933B (zh) * | 2019-02-28 | 2024-02-20 | 发那科株式会社 | 用于顺控程序的追踪的顺控程序处理装置 |
CN111352381A (zh) * | 2019-12-16 | 2020-06-30 | 常州汇邦电子有限公司 | 可编程逻辑控制器编程方法、可编程逻辑控制器及系统 |
CN111352381B (zh) * | 2019-12-16 | 2024-03-26 | 常州汇邦电子有限公司 | 可编程逻辑控制器编程方法、可编程逻辑控制器及系统 |
CN112181381A (zh) * | 2020-11-02 | 2021-01-05 | 苏州中科全象智能科技有限公司 | 一种基于分支循环的流程图构建方法 |
CN112181381B (zh) * | 2020-11-02 | 2024-02-20 | 苏州中科全象智能科技有限公司 | 一种基于分支循环的流程图构建方法 |
CN113485182A (zh) * | 2021-06-30 | 2021-10-08 | 中冶华天工程技术有限公司 | 自动生成料场皮带流程控制程序的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101488012A (zh) | 一种利用流程框图实现顺序控制的方法 | |
KR101936027B1 (ko) | 엔지니어링 툴, 시스템 및 모듈 | |
US8181157B2 (en) | Custom language support for project documentation and editing | |
CN101110029B (zh) | 用于可扩充自动化系统工程平台的hmi框架 | |
US20100023141A1 (en) | Method And System For Creating HMI Applications For An Automation Process | |
CN102521120A (zh) | 一种软件自动化测试系统及方法 | |
Antoniol et al. | Program understanding and maintenance with the CANTO environment | |
US20140258989A1 (en) | Method and system for automating a scene-based test | |
CN104636139A (zh) | 一种可视化跨平台移动应用开发与生成系统 | |
JP4302146B2 (ja) | プログラム作成支援装置 | |
CN103197654A (zh) | 基于opc标准的半导体装备的监控系统 | |
CN104199647A (zh) | 一种基于ibm主机的可视化系统及实现方法 | |
JP2015005245A (ja) | 画像認識による自動操作装置、その方法及びプログラム | |
CN113010359B (zh) | 总线测试系统生成方法、系统、设备及存储介质 | |
CN106250134A (zh) | 单一性语言的代码自动生成方法 | |
CN111078217A (zh) | 脑图生成方法、装置和计算机可读存储介质 | |
CN103593188A (zh) | 一种用于仪器所见即所得菜单的管理系统及管理方法 | |
CN112949018B (zh) | 一种直流输电控保平台模型创建与测试验证的系统与方法 | |
CN106814696B (zh) | 一种数控系统人机界面二次开发平台系统及其实现方法 | |
CN111723417A (zh) | 基于Revit软件的创建BIM模型过滤器的方法 | |
CN117492753A (zh) | 一种实现数据可视化的前端开发方法及系统 | |
CN114895884B (zh) | 一种终端设备rpa脚本的编写及执行方法、系统 | |
CN117008962A (zh) | 一种基于物联网通信技术多平台插件开发框架的开发方法 | |
CN114398290B (zh) | 一种程序调试方法、装置、设备及介质 | |
CN117149170A (zh) | 一种基于微服务的快速开发方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20090722 |