CN105549981A - 一种流程控制程序的编写方法 - Google Patents
一种流程控制程序的编写方法 Download PDFInfo
- Publication number
- CN105549981A CN105549981A CN201511026361.4A CN201511026361A CN105549981A CN 105549981 A CN105549981 A CN 105549981A CN 201511026361 A CN201511026361 A CN 201511026361A CN 105549981 A CN105549981 A CN 105549981A
- Authority
- CN
- China
- Prior art keywords
- back test
- program
- configuration information
- control program
- row 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
- G06F8/22—Procedural
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Programmable Controllers (AREA)
Abstract
本发明涉及一种编程方法,特别涉及一种流程控制程序编写方法。本流程控制程序编写方法包括以下步骤:a.主程序启动;b.启动数据设置模块,人工选取编程模块中的一个或多个执行功能,通过对选取的执行功能按操作需要的工序排列组合,来设置工作流程的配置信息;c.数据处理模块检测配置信息,对符合流程设置的配置信息输出到程序识别模块执行操作,对不符合流程设置的配置信息返回步骤a进行重新设置;d.程序识别模块扫描工序对应的执行功能,判断该执行功能是否为结束信息,如果是结束信息,输出结束程序;如果不是结束信息,输出该执行功能相对应的动作,并扫描下一工序,重复本步骤。本方法降低整个程序的容量,提高了程序的运行速度和准确度。
Description
技术领域
本发明涉及一种编程方法,特别涉及一种流程控制程序的编写方法。
背景技术
传统编程在面向客户操作时,只能固定某些功能和流程,如果要改变面向客户的操作流程和功能时,需要由专业的编程工程师修改底层程序,修改程序后,还将需要进行调试、测试等等工作,以免出现功能不可靠和误动作等未考虑到的各种因素,调试周期长,程序容量大,编程工作量大。
现已有的编程方式是基于PLC控制系统来进行的,实现了小程序容量的控制、基本的步进阶梯、各种运算等等。但如果要实现上千、上万种排列组合,在不改变编程方式的情况下,将非常困难甚至根本无法实现。
传统的编程方式流程为:(1)主程序开始执行;(2)判断客户设置程序和功能;(3)调用相关排列组合的程序和功能动作;(4)执行与本设置相关排列组合的程序和功能动作。这样的编程方式,就会要求预先将各种功能按照排列组合逻辑事先写好,再做出相应标志位,等待操作客户设置数据调用。
如果按照传统编程方式,要实现上千种排列组合,将需要非常大的程序容量和非常大的编程工作量:
1.这样将造成PLC自身扫描时间长,严重影响PLC运行时对各种输入输出信号的检测和数据处理的实时性。
2.编程工作量过大,将增加程序调试难度和程序的不可靠性。
3.程序编写困难,容易导致控制流程和逻辑思维混乱。
4.PLC自身程序存储容量不够,将增加成本或根本无法实现庞大的程序容量装载,导致PLC控制系统根本达不到客户控制要求。
发明内容
本发明提供一种流程控制程序的编写方法,旨在解决先用的编程方式因排列组合的逻辑和条件众多,导致程序容量大,编程工作量大的问题,从而大大缩减程序容量和测试难度,提升了设备的可靠行和程序的可阅读性。
本发明的一种流程控制程序的编写方法,包括以下步骤:
a.主程序启动;
b.启动数据设置模块,人工选取编程模块中的一个或多个执行功能,通过对选取的执行功能按操作需要的工序排列组合,来设置工作流程的配置信息;
c.数据处理模块检测配置信息,对符合流程设置的配置信息输出到程序识别模块执行操作,对不符合流程设置的配置信息返回步骤a进行重新设置;
d.程序识别模块扫描工序对应的执行功能,判断该执行功能是否为结束信息,如果是结束信息,输出结束程序;如果不是结束信息,输出该执行功能相对应的动作,并扫描下一工序,重复本步骤。
作为本发明的进一步改进,该流程控制程序的编写方法的步骤b包括:执行功能择一地配置在排列好工序的执行功能存储器中。
作为本发明的进一步改进,该流程控制程序的编写方法的步骤b包括:从编程模块中选取需要执行的执行功能,配置到排列好工序的执行功能存储器中,每个工序的执行功能存储器中存放一个执行功能,组成工作流程的配置信息。
作为本发明的进一步改进,该流程控制程序的编写方法的步骤b包括:依次从每个排列好工序的执行功能存储器中,选择已设置有的多个执行功能中的一个,组成工作流程的配置信息。
作为本发明的进一步改进,该流程控制程序的编写方法的步骤b包括:在工作流程的最后一个工序中设置结束信息。
作为本发明的进一步改进,该流程控制程序的编写方法的步骤d中,在判断执行功能不是结束信息之后并在输出动作之前,还包括:
d1.程序识别模块扫描工序,判断工序是否达到最大工序数,如果达到最大工序,输出结束程序;如果没达到最大工序,输出该执行功能相对应的动作,并扫描下一工序,重复步骤d。
作为本发明的进一步改进,该流程控制程序的编写方法中的程序识别模块输出结束程序后,返回步骤a。
作为本发明的进一步改进,该流程控制程序的编写方法中的程序识别模块输出结束程序后,返回步骤a。
作为本发明的进一步改进,该流程控制程序的编写方法的步骤c还包括:
c1.流程处理模块对不符合流程设置的配置信息输出报警信号和提示信息,并返回步骤a。
本发明的有益效果:在对工作流程进行操作编程时,不需要修改底层程序和界面,只需调用各个执行功能,任意排列,设置相关参数,即可实现不同工序不同功能和流程的应用,方便用户操作。各排列组合的逻辑程序无需事先写好,降低整个程序的容量,提高了程序的运行速度和准确度。
附图说明
图1为本发明一种流程控制程序的编写方法的流程图;
图2为本发明应用于印刷机上的工作流程图。
具体实施方式
下面结合附图对本发明做进一步描述。
实施例一:
本发明的一种流程控制程序的编写方法,包括:
a.主程序启动;
b.启动数据设置模块,人工选取编程模块中的一个或多个执行功能,通过对选取的执行功能按操作需要的工序排列组合,来设置工作流程的配置信息;
c.数据处理模块检测配置信息,对符合流程设置的配置信息输出到程序识别模块执行操作,对不符合流程设置的配置信息返回步骤a进行重新设置;
d.程序识别模块扫描工序对应的执行功能,判断该执行功能是否为结束信息,如果是结束信息,输出结束程序;如果不是结束信息,输出该执行功能相对应的动作,并扫描下一工序,重复本步骤。
进一步的,步骤d中,在判断执行功能不是结束信息之后并在输出动作之前,还包括:
d1.程序识别模块扫描工序,判断工序是否达到最大工序数,如果达到最大工序,输出结束程序;如果没达到最大工序,输出该执行功能相对应的动作,并扫描下一工序的执行功能,重复步骤d。
运行本程序时,在程序对流程的最大工序量无要求的情况下,只需执行到步骤d,判断程序是否为结束信息,如果不是结束信息则直接输出动作,并扫描下一工序,重复d步骤;在程序对流程的最大工序量有要求的情况下,需要加入步骤d1,在对程序判断执行信息后,再对程序的工序数进行判断,如果没达到最大工序数才能输出执行功能相对应的动作,并重复步骤d,如果达到了最大工序数则会直接输出结束程序。这样的设置起到了限制工序量的作用,防止实际工作中工序数超过程序可承载的数量导致的程序运行错乱。
进一步的,在程序执行完步骤d并输出结束程序后,返回到步骤a等待下一次启动指令的状态。
进一步的,在程序执行完步骤d并输出结束程序后,返回到步骤a等待下一次启动指令的状态。
程序执行完结束程序后回到待启动指令的状态,方便在执行下一次编写程序开始时能快速反应,减少了重新启动程序的步骤,提高了操作者的操作体验。
进一步的,在程序执行步骤c中,包括c1.数据处理模块对不符合流程设置的配置信息输出报警信号和提示信息,并返回步骤a。对不符合流程设置的人工设置的配置信息输出报警信号和提示信息,可以及时提醒操作者所设置的配置信息有错误,并输出提示信息让操作者有针对性地进行修改;同时对不符合流程的配置信息及时报警,有效地阻止了不合法的操作流程进入后续的执行步骤,造成执行操作程序的错乱,保证了程序的正常运行。
进一步的,步骤b还包括:执行功能择一地配置在排列好工序的执行功能存储器中。一个工序里有且仅设置有一个执行功能,一个工序里可以设置不同的执行功能,一个执行功能也可以设置在不同的工序里,这样一对一的关系保证的程序运行的稳定,也保证了程序有较快的运行速度。
操作者在进行工程流程编程设置时,选择需要的执行功能,按工序的顺序依次设置到需要的工序里。每个执行功能均以数据寄存器的方式保存,并作为工作流程的标志,不需要修改底层控制程序,只需要判断或识别当前每个工序的数据寄存器的内容即可选择与之相关的功能来执行相关的功能动作,达到方便操作者设置的要求。
程序提供给操作者编程设置工作流程的方式有以下两种:
第一种:步骤b包括:从编程模块中选取需要执行的执行功能,配置到排列好工序的执行功能存储器中,每个工序的执行功能存储器中存放一个执行功能,组成工作流程的配置信息。执行功能以数据寄存器的方式存储在编程模块中,操作者根据所需的工序顺序,依次从编程模块中选取执行功能填充在工序的执行功能存储器中,每个工序对应一个执行功能,并在最后一个工序中设置结束信息,构成一条完整的工作流程配置信息。
第二种:步骤b包括:依次从每个排列好工序的执行功能存储器中,选择已设置有的多个执行功能中的一个,组成工作流程的配置信息。每个工序中已经存储有所有的执行功能,操作者在进行工作流程配置时,只需在每个工序中选择一个该工序需要执行的执行功能即可,并按流程需求依次在每个工序中选择一个对应的执行功能,并在最后一个工序中设置结束信息,构成一条完整的工作流程配置信息。
实施例二:
本流程控制程序的编写方法,应用在一款真空印刷机上,操作客户需要在触摸屏上自行调整当前的操作流程,而操作流程是非规律的编程流程排列,流程工序最多为18个,每个工序执行一种操作者设置的功能,总共有8种执行功能。这8种执行功能包括:消泡功能、调压功能、上升功能、右印刷功能、左印刷功能、下降功能、泄压功能、完成功能。其中完成功能为结束信息。
操作者根据自身生产工艺要求设定各个工序中的执行功能,且工序一到工序十八之间任意搭配8中执行功能中的一种来执行,执行功能由数据寄存器作为标识,在程序运行时,只需对各个数据寄存器做标识判断即可执行所对应的相关功能。
真空印刷机的工作流程包括有以下几种情况:
流程1:工序1,调压;工序2,消泡;工序3,上升;工序4,左印刷;工序5,右印刷;工序6,下降;工序7,完成。
流程2:工序1,消泡;工序2,调压;工序3,上升;工序4,右印刷;工序5,左印刷;工序6,下降;工序7,消泡;工序8,调压;工序9,上升;工序10,下降;工序11,完成。
流程3:工序1,调压;工序2,调压;工序3,上升;工序4,右印刷;工序5,调压;工序6,左印刷;工序7,消泡;工序8,调压;工序9,上升;工序10,下降;工序11,消泡;工序12,下降;工序13,调压;工序14,消泡;工序15,调压;工序16,左印刷;工序17,左印刷;工序18,完成。
在程序启动前,先由主程序启动控制模块检测是否满足启动条件,如果条件满足则经过主流程控制模块控制整体流程,再经过数据处理和运算模块做整机程序需要的一些数据计算,并传输到程序调用模块,程序调用模块调用操作者预先设置的各个执行功能并加以判断是否合法,如果合法则进入程序识别模块识别和执行设置的功能。
在工序一执行操作者设置的当前功能过程中,如果操作者设置为本程序结束,即刻进入结束程序并回到主程序启动控制模块等待再次启动。
在执行工序二到工序十七过程中,如果程序识别模块识别到结束信息,则即刻进入结束程序并回到主程序启动控制模块等待再次启动。
一直执行到工序十八,在执行操作者设置的当前功能后达到了最大工序,直接进入结束程序回到主程序启动控制模块等待再次启动。
按照该真空印刷机8种执行功能和18个工序随意进行混合编程,会有6700万种组合,如果每种组合都写入固定程序,这是一个非常庞大的工作量和编程容量,现有的PLC编程容量是不允许的。改流程控制程序的编写方法将每个执行功能以数据寄存器的方式存储,并通过用户自己进行编辑来完成工作流程的设置,大大缩小了固定程序的写入量,也缩减程序容量和调试难度,提升了设备的可靠性和程序的可阅读性。
以上内容是结合具体的优选实施方式对本发明所做的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (9)
1.一种流程控制程序的编写方法,其特征在于:包括以下步骤:
a.主程序启动;
b.启动数据设置模块,人工选取编程模块中的一个或多个执行功能,通过对选取的执行功能按操作需要的工序排列组合,来设置工作流程的配置信息;
c.数据处理模块检测配置信息,对符合流程设置的配置信息输出到程序识别模块执行操作,对不符合流程设置的配置信息返回步骤a进行重新设置;
d.程序识别模块扫描工序对应的执行功能,判断该执行功能是否为结束信息,如果是结束信息,输出结束程序;如果不是结束信息,输出该执行功能相对应的动作,并扫描下一工序,重复本步骤。
2.根据权利要求1所述的流程控制程序的编写方法,其特征在于,所述步骤b包括:执行功能择一地配置在排列好工序的执行功能存储器中。
3.根据权利要求2所述的流程控制程序的编写方法,其特征在于,所述步骤b包括:从编程模块中选取需要执行的执行功能,配置到排列好工序的执行功能存储器中,每个工序的执行功能存储器中存放一个执行功能,组成工作流程的配置信息。
4.根据权利要求2所述的流程控制程序的编写方法,其特征在于,所述步骤b包括:依次从每个排列好工序的执行功能存储器中,选择已设置有的多个执行功能中的一个,组成工作流程的配置信息。
5.根据权利要求3或4所述的流程控制程序的编写方法,其特征在于,所述步骤b包括:在工作流程的最后一个工序中设置结束信息。
6.根据权利要求1至4任一项所述的流程控制程序的编写方法,其特征在于,所述步骤d中,在判断执行功能不是结束信息之后并在输出动作之前,还包括:
d1.程序识别模块扫描工序,判断工序是否达到最大工序数,如果达到最大工序,输出结束程序;如果没达到最大工序,输出该执行功能相对应的动作,并扫描下一工序,重复步骤d。
7.根据权利要求1所述的流程控制程序的编写方法,其特征在于,所述程序识别模块输出结束程序后,返回步骤a。
8.根据权利要求6所述的流程控制程序的编写方法,其特征在于,所述程序识别模块输出结束程序后,返回步骤a。
9.根据权利要求1所述的流程控制程序的编写方法,其特征在于,步骤c还包括:
c1.数据处理模块对不符合流程设置的配置信息输出报警信号和提示信息,并返回步骤a。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511026361.4A CN105549981A (zh) | 2015-12-30 | 2015-12-30 | 一种流程控制程序的编写方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511026361.4A CN105549981A (zh) | 2015-12-30 | 2015-12-30 | 一种流程控制程序的编写方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105549981A true CN105549981A (zh) | 2016-05-04 |
Family
ID=55829179
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201511026361.4A Pending CN105549981A (zh) | 2015-12-30 | 2015-12-30 | 一种流程控制程序的编写方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105549981A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107015491A (zh) * | 2017-04-13 | 2017-08-04 | 北京机械设备研究所 | 一种顺序控制方法 |
CN113359617A (zh) * | 2021-06-11 | 2021-09-07 | 中山凯旋真空科技股份有限公司 | 一种工艺流程控制方法及控制系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030083769A1 (en) * | 2001-10-30 | 2003-05-01 | Semiconductor Energy Laboratory Co., Ltd. | Management system for production line and management method for production line |
CN101750992A (zh) * | 2008-12-02 | 2010-06-23 | 杨成 | 一种应用于可编程序控制器的通用顺序控制算法 |
CN201867622U (zh) * | 2010-12-02 | 2011-06-15 | 无锡信捷电气有限公司 | 一种plc顺序功能模块 |
CN102981481A (zh) * | 2012-11-29 | 2013-03-20 | 成都硅宝科技股份有限公司 | 生产线设备自动模组控制系统及其控制方法 |
CN103165207A (zh) * | 2011-12-13 | 2013-06-19 | 中广核工程有限公司 | 适用于核电站的顺序控制方法及系统 |
CN103529749A (zh) * | 2013-10-29 | 2014-01-22 | 威海麦科电气技术有限公司 | 一种plc可编程控制器的梯形图程序开发系统及方法 |
-
2015
- 2015-12-30 CN CN201511026361.4A patent/CN105549981A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030083769A1 (en) * | 2001-10-30 | 2003-05-01 | Semiconductor Energy Laboratory Co., Ltd. | Management system for production line and management method for production line |
CN101750992A (zh) * | 2008-12-02 | 2010-06-23 | 杨成 | 一种应用于可编程序控制器的通用顺序控制算法 |
CN201867622U (zh) * | 2010-12-02 | 2011-06-15 | 无锡信捷电气有限公司 | 一种plc顺序功能模块 |
CN103165207A (zh) * | 2011-12-13 | 2013-06-19 | 中广核工程有限公司 | 适用于核电站的顺序控制方法及系统 |
CN102981481A (zh) * | 2012-11-29 | 2013-03-20 | 成都硅宝科技股份有限公司 | 生产线设备自动模组控制系统及其控制方法 |
CN103529749A (zh) * | 2013-10-29 | 2014-01-22 | 威海麦科电气技术有限公司 | 一种plc可编程控制器的梯形图程序开发系统及方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107015491A (zh) * | 2017-04-13 | 2017-08-04 | 北京机械设备研究所 | 一种顺序控制方法 |
CN113359617A (zh) * | 2021-06-11 | 2021-09-07 | 中山凯旋真空科技股份有限公司 | 一种工艺流程控制方法及控制系统 |
CN113359617B (zh) * | 2021-06-11 | 2022-10-04 | 中山凯旋真空科技股份有限公司 | 一种工艺流程控制方法及控制系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110109897A (zh) | 数据库脚本生成方法、装置、计算机设备和存储介质 | |
CN109840205A (zh) | 应用程序测试方法、装置、可读存储介质及终端设备 | |
CN110162453B (zh) | 测试方法、装置、计算机可读存储介质和计算机设备 | |
CN105279092A (zh) | 一种软件测试的方法及装置 | |
CN107515716B (zh) | 看板卡片管理方法、装置、计算机设备和存储介质 | |
CN104021072A (zh) | 用于评估失效的软件程序的机器和方法 | |
CN107783829A (zh) | 任务处理方法、装置、存储介质和计算机设备 | |
CN109614325B (zh) | 一种确定控件属性的方法及装置、电子设备和存储介质 | |
CN103995778A (zh) | 一种基于事件和动作的脚本文件生成方法及其装置 | |
CN103309801A (zh) | 一种确定回归测试范围的方法和装置 | |
CN111177009A (zh) | 一种脚本生成方法、装置、电子设备及存储介质 | |
CN103391224B (zh) | 基于并行扩展有限状态机的协议层次化测试生成方法 | |
CN104331315A (zh) | 一种任意层次json对象的解析与生成方法及系统 | |
CN104156305A (zh) | 一种应用程序测试方法及装置 | |
CN104978272A (zh) | 一种用于数据竞争检测的程序调度方法 | |
CN105549981A (zh) | 一种流程控制程序的编写方法 | |
CN109918338B (zh) | 安全芯片操作系统测试装置 | |
CN102110012B (zh) | 用于使用虚拟任务对多核处理器进行性能分析的关系建模 | |
CN106779582B (zh) | 一种tws流程配置方法及装置 | |
US20150355616A1 (en) | Programmable controller, programmable controller system, and method of creating execution error information | |
WO2019019955A1 (zh) | 手势测试方法、装置、计算机设备和存储介质 | |
CN105446752B (zh) | 应用程序中控件的触发方法、装置及移动终端 | |
CN105893233A (zh) | 用于自动测试固件的方法和系统 | |
CN109542782B (zh) | 基于机器学习的nfc测试方法、装置和计算机设备 | |
CN110515834A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160504 |
|
RJ01 | Rejection of invention patent application after publication |