CN101750992A - 一种应用于可编程序控制器的通用顺序控制算法 - Google Patents

一种应用于可编程序控制器的通用顺序控制算法 Download PDF

Info

Publication number
CN101750992A
CN101750992A CN200810232520A CN200810232520A CN101750992A CN 101750992 A CN101750992 A CN 101750992A CN 200810232520 A CN200810232520 A CN 200810232520A CN 200810232520 A CN200810232520 A CN 200810232520A CN 101750992 A CN101750992 A CN 101750992A
Authority
CN
China
Prior art keywords
data
output
control
input
controller
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.)
Granted
Application number
CN200810232520A
Other languages
English (en)
Other versions
CN101750992B (zh
Inventor
杨成
刘学民
王福朝
吴义权
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jiangsu Putai Automation Technology Co ltd
Original Assignee
Individual
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN200810232520XA priority Critical patent/CN101750992B/zh
Publication of CN101750992A publication Critical patent/CN101750992A/zh
Application granted granted Critical
Publication of CN101750992B publication Critical patent/CN101750992B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Programmable Controllers (AREA)

Abstract

本发明涉及可编程序控制器(PLC)的编程,特别是一种应用于可编程序控制器的通用顺序控制算法,其方法是:可编程控制器重复的将当前输入信号数字化,以数字化的数据作为间接寻址的输入参量,从一数据表中得到可编程控制器下一步操作和控制输出需要信息,依据信息作相应的操作。这种应用于可编程序控制器的通用顺序控制算法,以便不依赖于控制器宿主程序(即控制器主调度程序)和硬件限制,独立维护客户程序(即控制程序)进程、输入输出信号状态的客户程序算法、配套的数据存储结构定义和具体实施方法。

Description

一种应用于可编程序控制器的通用顺序控制算法
技术领域
本发明涉及可编程序控制器(PLC)的编程,特别是一种应用于可编程序控制器的通用顺序控制算法。
背景技术
当前可编程序控制器(PLC)的编程,基于IEC1131-3标准,即LD\IL\ST\SFC\FDB五种语言。具体的功能实现,主要有以下几种方式:
1、基于经验的方法:对于基本的控制对象,如:电动机、阀门、液压缸有固定的程序处理模式,而对于系统级的控制过程实现,完全靠手工经验编程实现,在实现过程中,将逻辑控制和时序控制一并手工编程实现。
2、基于逻辑代数的真值表求解方法:对于逻辑控制或顺序控制要求,将顺序控制要求转换为逻辑输入条件信号,列出输入、输出信号的逻辑表达式,根据布尔运算结果,求出针对每一输出信号的输入条件的逻辑表达式,逐一手工编程实现。
3、SFC方法:使用IEC1131-3中的SFC语言,建立条件判断及顺序判断流程,在每个具体流程节点中,用LD等语言手工编写具体的控制程序。
4、基于Petri网络:这是一种比较新的PLC编程方法,其过程是:首先建立控制系统状态转换-迁移模型,从逻辑和时序控制的角度出发,建立控制系统的Petri工作流程表达。再将Petri网络的图形表达方式,包括库所(place)、变迁(translation)和有向弧(arc)等转换为对应的可编程序控制器(PLC)语句。
上述4种编程实现方式,在实施过程中难易程度不同,各有特点,但是,均具有如下问题:
1、由于全部是基于指令语句编程实现控制功能,所以随着不同控制系统的之间变化和PLC配置的变化,程序代码的组织结构、地址配置不同,程序代码无法重用。
2、在控制功能的实现过程中,设计人员主观随意性大,无法控制实现过程的质量。
3、由于控制功能实现过程主要是以信号互锁、自锁等方式贯穿整个程序,所以现场调试、程序的每一个功能修改都牵扯到程序的多个部分,修改过程无规律,繁琐、困难。同时,程序容易存在寄生逻辑、死区逻辑和输出抖动等问题。
4、由于控制程序在设计过程中人为因素过多,所以实施周期变化大,最终程序质量、性能难以控制。
发明内容
本发明的目的是提供一种应用于可编程序控制器的通用顺序控制算法,以便不依赖于控制器宿主程序(即控制器主调度程序)和硬件限制,独立维护客户程序(即控制程序)进程、输入输出信号状态的客户程序算法、配套的数据存储结构定义和具体实施方法。
本发明的目的是这样实现的,设计一种应用于可编程序控制器的通用顺序控制方(算)法及步骤,其方法是:
可编程控制器重复的将当前输入信号数字化,以数字化的数据作为间接寻址计算的输入参量,从一数据表中得到可编程控制器下一步操作和控制输出需要信息,依据信息作相应的操作。
所述的数据表包括:
输入掩膜信息,输入掩膜字只定义进入控制器的输入量,为0不检查该位,为1检查该位;
输入检查信息,定义检查位是0状态或1状态或不检查状态;
流程控制信息,对通过输入检查字的输入信号位确定其流向;
延时信息,决定控制程序的判断等待时间和执行输出后延时时间;
输出掩膜信息,决定控制程序执行输出时,对输出状态字的哪些位进行控制;
输出控制信息,决定控制程序执行输出时,对输出状态字所要求的对应位的逻辑状态。
一种应用于可编程序控制器的通用顺序控制步骤,其步骤是:
1)将输入到可编程控制器的每一个开关量或模拟量输入信号转换为开关量信号,将开关量信号按位赋值到存寄存器中,赋值到存寄存器的开关量信号形成1个与输入信号位相关的输入状态字;
2)可编程控制器控制程序以输入状态字作为指针通过间接寻址方式从一数据表中读取当前程序流程位置编号对应输入状态字的掩膜数据、流程控制数据、延时数据、控制数据、输出控制数据和输出掩膜数据;掩膜数据与输入状态字进行运算,以确定输入信号是否检查;为0不检查该位,为1检查该位;
3)可编程控制器将读取的延时数据输入到定时器内,定时器以延时数据启动定时器工作,如在定时器工作时间内,掩膜数据与对应的输入状态字逻辑运算结果为逻辑真,则判定成功,控制器继续进行下面的步骤4);如定时器时间内,掩膜数据与对应的输入状态字逻辑运算结果为逻辑假,则判定失败,控制器转入步骤6);
4)可编程控制器控制程序根据逻辑运算结果为逻辑真的位依据控制数据进行操作,操作可以是输出延时或跳转程序或停机操作;
5)可编程控制器将流程控制数据、输出控制数据和输出掩膜数据进行运算,实现对输出状态字每一位的三种状态输出:即0输出、1输出和保持原状态。根据输出状态字的位定义,输出状态字经过输出映射转换,即逐位赋值语句,其每一位的状态分别形成不同设备的输出控制信号;
6)可编程控制器判断失败进行报警输出。
本发明的优点是:由客户程序独立创建、维护的程序指针,在PLC宿主程序循环调用客户程序的运行体制下,该程序数据指针可根据预先设定的数据条件,实现顺序步进、基于数据判断的指令跳转、自动归零、手动赋值、程序赋值、走飞保护等功能。该程序指针是通用顺序控制器的控制核心。
建立I/O信号的输入、输出映射转换体制。在现场信号的映射过程中,实现了3态输入状态检查:即0状态、1状态和不检查状态,满足了离散控制系统的I/O输入状态判断要求。同时,在控制信号的输出映射中,也实现了3态输出:即置0、置1和保持原状态。这种I/O信号的映射转换机制,有效解释了离散控制系统的I/O信号状态,是通用顺序控制器实现控制功能的基本条件。
建立通用顺序控制器的级联操作体制,该级联操作体制包括一整套的信号定义和数据定义,可以确保通用顺序控制器实现:自动状态和手动状态下,没有级数限制的主从控制、步序互锁自动控制、多对一和一对多控制。上述级联控制功能的实现,使通用顺序控制器程序可以满足复杂、多样化的离散系统控制要求。
可编程序控制器(PLC)程序设计与控制工艺要求分离。控制系统的程序设计与控制工艺无关,控制程序的组织仅反映控制系统图(PID图)上的工艺设备设置情况。控制系统程序只表现控制系统内的受控设备情况及相互关系;控制系统实现的控制功能及控制流程完全由独立的数据表决定,控制工艺、控制过程与控制程序完全无关。达到了程序可重复使用的目的。
完善的动作特性,本通用顺序控制器可实现全自动运行,在全自动运行过程中可人工控制步进、延时、暂停、终止;还可实现人工控制的部分步序自动运行;人工控制的任意单步运行。其动作特性可满足已知的大部分离散控制系统应用要求。
控制系统程序本身的安全特性。通用顺序控制器的所有控制输出状态都是经过预先数据设定的、稳定的常态过程,因此控制系统程序不存在寄生逻辑和输出暂态过程,没有误动作或动作抖动的危险,控制程序不会对数据预先定义以外的任何输入条件组合作出反应。
对所有被控对象使用同一种控制程序模块;同种设备,使用同一个控制数据表。因此,这项技术大大加快了整个控制系统程序调试的速度,保证了控制程序的一致性。即:同种设备的调试,只需进行一次,而控制流程变化,无需更改程序,仅变更数据即可,且同种设备只需更改一次,即可实现全部同类设备控制逻辑修改。
下面结合实施例附图对本发明进行具体说明:
附图说明
图1是本发明实施例流程图;
图2是图1的数据表结构示意图。
具体实施方式
如图1所示,来自于现场设备100的开关量或模拟量输入信号101与可编程控制器输入接口连接,可编程控制器将开关量或模拟量输入信号101转换为开关量信号,将开关量信号按位赋值到存寄存器中,赋值到存寄存器的开关量信号形成与输入信号位相关的输入状态字完成数据映射步骤102。也就是说控制器的状态字的每1个bit位,对应了一路现场信号,状态字的每1个bit位映射一路现场信号。数据映射步骤102实际上是在确定控制器的具体硬件I/O的输入、输出地址的条件下,建立I/O地址至控制器输入、输出接口之间的地址转换规则。在完成数据映射步骤102后,控制程序以输入状态字为指针通过间接寻址方式从一数据表113中读取当前寻址给出的掩膜数据、流程控制数据、延时数据、控制数据、输出控制数据和输出掩膜数据;通过掩膜数据与输入状态字进行掩膜过滤,完成掩膜过滤步骤103,掩膜数据中的0位代表不检查,1位代珍检查该位对应的输入信号位。掩膜过滤步骤103在实际控制中是根据工艺要求,明确在每个步序中,各个设备的动作状态,随即确定了在该工艺步序中,对应控制器的每个bit位所需要的状态。掩膜过滤步骤103完成后,可编程控制器将依据读取的流程控制数据和延时数据将读取的延时数据输入到定时器内进行延判断步骤104,定时器是以数据表中的延时数据启动定时器工作,如在定时器工作时间内,掩膜数据与对应的输入状态字逻辑运算结果随时都可能随输入的开关量或模拟量输入信号101变化而变化,当逻辑运算结果为逻辑真,则判定成功,可编程控制器继续进行下面的步骤控制数据105、掩膜过滤106、数据映射107;将流程控制数据、输出控制数据和输出掩膜数据进行运算,实现对输出状态字每一位的三种状态输出:即0输出、1输出和保持原状态。根据输出状态字的位定义,输出状态字经过输出映射转换,即逐位赋值语句,其每一位的状态分别形成不同设备的输出控制信号。如定时器时间内,掩膜数据与对应的输入状态字逻辑运算结果为逻辑假,则判定失败,控制器转入步骤109,步骤109根据数据控制程序流程指针得到间接寻址的操作指针110,然后由操作指针110对数据表113进行查表步骤117的操作,根据得到的返回数据116判断失败条件下的流程跳转或程序保护停机步骤112或执行自动将与输入状态判定数据不一致的信号位输出报警的步骤111。
这种通过可编程控制器重复的将当前输入信号数字化,以数字化的数据作为间接寻址的输入量从一数据表中得到可编程控制器下一步操作和控制输出需要信息,依据信息作相应的操作的方法不依赖于控制器宿主程序(即控制器主调度程序)和硬件限制。
如图2所示,数据表113是独立于控制程序的数据存储区域。数据表113每一个地址都有由6项内容组成:输入掩膜信息;输入检查信息;流程控制信息;延时信息;输出掩膜信息;输出控制信息。输入掩膜字,输入掩膜字只定义进入控制器的输入量,为0不检查该位,为1检查该位;输入检查字,定义检查位是0状态或1状态或不检查状态;流程控制字,对通过输入检查字的输入信号位确定其流向;延时字,决定控制程序的判断等待时间和执行输出后延时时间;输出掩膜字,该字决定控制程序执行输出时,对输出状态字的哪些位进行控制;输出控制字,该字决定:控制程序执行输出时,对输出状态字所要求的对应位的逻辑状态。数据表113的地址由输入状态字决定,输入状态字则由开关量或模拟量输入信号决定。输入信号开关量或模拟量量化后的数据作为数据表113的指针。数据表113中的内容可以按一个周期一次性全部读取,也可在一个周期的每一个步骤读取,然后根据读取的内容作相应的步骤操作。
本发明的特点是全部控制功能由完全独立的数据表11实现,与控制程序及硬件无关,同时控制程序部分具有良好的可移植性。此外,该控制器没有暂态过程,不对数据表设定状态以外的信号输入条件动作,是安全的控制器。应用该算法及其实施方法,可实现PLC控制系统快速编程、现场快速、安全调试,同时,控制程序保持了良好的可移植性,代码重用率高,可有效的继承设计人员的控制系统工程经验。

Claims (5)

1.一种应用于可编程序控制器的通用顺序控制方法,其方法是:
可编程控制器重复的将当前输入信号数字化,以数字化的数据作为间接寻址的输入参量,从一数据表中得到可编程控制器下一步操作和控制输出需要信息,依据信息作相应的操作。
2.根据权利要求1所述的一种应用于可编程序控制器的通用顺序控制方,其方法是:所述的数据表包括:
输入掩膜信息,输入掩膜字只定义进入控制器的输入量,为0不检查该位,为1检查该位;
输入检查信息,定义检查位是0状态或1状态或不检查状态;
流程控制信息,对通过输入检查字的输入信号位确定其流向;
延时信息,决定控制程序的判断等待时间和执行输出后延时时间;
输出掩膜信息,决定控制程序执行输出时,对输出状态字的哪些位进行控制;
输出控制信息,决定控制程序执行输出时,对输出状态字所要求的对应位的逻辑状态。
3.根据权利要求1所述的一种应用于可编程序控制器的通用顺序控制方,其方法是:数据表113是独立于控制程序的数据存储区域。
4.一种应用于可编程序控制器的通用顺序控制步骤,其步骤是:
1)将输入到可编程控制器的每一个开关量或模拟量输入信号转换为开关量信号,将开关量信号按位赋值到存寄存器中,赋值到存寄存器的开关量信号形成1个与输入信号位相关的输入状态字;
2)可编程控制器控制程序以输入状态字作为指针通过间接寻址计算输入条件,从一数据表中读取当前程序流程位置编号对应输入状态字的信息;读取信息中的掩膜数据与输入状态字进行运算,以确定输入信号是否检查;为0不检查该位,为1检查该位;
3)可编程控制器将读取的延时数据输入到定时器内,定时器以延时数据启动定时器工作,如在定时器工作时间内,掩膜数据与对应的输入状态字逻辑运算结果为逻辑真,则判定成功,控制器继续进行下面的步骤4);如定时器时间内,掩膜数据与对应的输入状态字逻辑运算结果为逻辑假,则判定失败,控制器转入步骤6);
4)可编程控制器控制程序根据逻辑运算结果为逻辑真的位依据控制数据进行操作,操作可以是输出延时或跳转程序或停机操作;
5)可编程控制器将流程控制数据、输出控制数据和输出掩膜数据进行运算,实现对输出状态字每一位的三种状态输出:即0输出、1输出和保持原状态。根据输出状态字的位定义,输出状态字经过输出映射转换,即逐位赋值语句,其每一位的状态分别形成不同设备的输出控制信号;
6)可编程控制器判断失败进行报警输出。
5.根据权利要求4所述的一种应用于可编程序控制器的通用顺序控制步骤,其特征是:步骤2)中从数据表113读取的信息可以是一个指针对应的全部信息,如掩膜数据、流程控制数据、延时数据、控制数据、输出控制数据和输出掩膜数据;也可以按一个周期一次性全部读取,也可在一个周期的每一个步骤读取,然后根据读取的内容作相应的步骤操作。
CN200810232520XA 2008-12-02 2008-12-02 一种应用于可编程序控制器的通用顺序控制算法 Active CN101750992B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200810232520XA CN101750992B (zh) 2008-12-02 2008-12-02 一种应用于可编程序控制器的通用顺序控制算法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200810232520XA CN101750992B (zh) 2008-12-02 2008-12-02 一种应用于可编程序控制器的通用顺序控制算法

Publications (2)

Publication Number Publication Date
CN101750992A true CN101750992A (zh) 2010-06-23
CN101750992B CN101750992B (zh) 2012-06-06

Family

ID=42478063

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810232520XA Active CN101750992B (zh) 2008-12-02 2008-12-02 一种应用于可编程序控制器的通用顺序控制算法

Country Status (1)

Country Link
CN (1) CN101750992B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105549981A (zh) * 2015-12-30 2016-05-04 深圳连硕自动化科技有限公司 一种流程控制程序的编写方法
CN107615189A (zh) * 2015-05-19 2018-01-19 三菱电机株式会社 可编程逻辑控制器、工程设计工具及工程设计工具程序
CN112526921A (zh) * 2020-12-15 2021-03-19 湖南戈人自动化科技有限公司 一种功能顺序图表达式编译方法
CN113544601A (zh) * 2019-03-15 2021-10-22 欧姆龙株式会社 控制系统、设定装置以及设定程序
CN116700134A (zh) * 2023-08-08 2023-09-05 华软盛科技有限公司 一种可以简化代码的工业数控方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN85101287A (zh) * 1985-04-01 1987-01-17 株式会社日立制作所 可编程序控制器
US7835806B2 (en) * 2007-01-29 2010-11-16 Rockwell Automation Technologies, Inc. Method for indirect access to controller data using name stored in string tag

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107615189A (zh) * 2015-05-19 2018-01-19 三菱电机株式会社 可编程逻辑控制器、工程设计工具及工程设计工具程序
CN107615189B (zh) * 2015-05-19 2019-04-12 三菱电机株式会社 可编程逻辑控制器、工程设计工具及存储有工程设计工具程序的存储装置
CN105549981A (zh) * 2015-12-30 2016-05-04 深圳连硕自动化科技有限公司 一种流程控制程序的编写方法
CN113544601A (zh) * 2019-03-15 2021-10-22 欧姆龙株式会社 控制系统、设定装置以及设定程序
CN113544601B (zh) * 2019-03-15 2024-06-04 欧姆龙株式会社 控制系统、设定装置以及记录介质
CN112526921A (zh) * 2020-12-15 2021-03-19 湖南戈人自动化科技有限公司 一种功能顺序图表达式编译方法
CN116700134A (zh) * 2023-08-08 2023-09-05 华软盛科技有限公司 一种可以简化代码的工业数控方法
CN116700134B (zh) * 2023-08-08 2023-10-27 华软盛科技有限公司 一种可以简化代码的工业数控方法

Also Published As

Publication number Publication date
CN101750992B (zh) 2012-06-06

Similar Documents

Publication Publication Date Title
AU2016209597B2 (en) Method and apparatus for advanced control using function blocks in industrial process control and automation systems
CN101395577B (zh) 用于评估的方法、自动化系统和控制器
CN104898546B (zh) 一种基于soc的plc在线调试系统和方法
CN101750992B (zh) 一种应用于可编程序控制器的通用顺序控制算法
US6539268B1 (en) Universal motion control
US20120253479A1 (en) System and Method for Creating a Graphical Control Programming Environment
CN107861458B (zh) 一种可自主配置硬件资源的plc快速构建方法
CN105137817B (zh) 控制程序处理器的片上系统的控制程序执行方法
CN111552172B (zh) 一种数据处理方法、装置、存储介质及电子设备
Thieme et al. Model-based generation of modular PLC code using IEC61131 function blocks
CN102566512A (zh) 基于图编程的轴承切削自动生产线专用控制电路及系统
KR101566355B1 (ko) 자동화 공정의 정상 운영 판단을 위한 마스터 패턴 생성방법 및 장치
CN112005176A (zh) 用于计算机支持地模拟以自动化方式工作的机器的运行方法
CN115453967A (zh) 一种PLCopen单轴运动控制功能块的调度执行方法
Sünder et al. Towards reconfiguration applications as basis for control system evolution in zero-downtime automation systems
Ivanova et al. Combining IEC 61499 and ISA S88 for batch control
Andrzejewski et al. Modelling of Parameterized Discrete Control Algorithms With Use of Finite State Machinesin TIA Portal Environment
Wang et al. Reconfigurable software for open architecture controllers
CN108027602B (zh) 模拟工业过程、设施或机器的真实控制器的模拟方法和执行该模拟方法的模拟系统
CN116700135B (zh) 可编程逻辑控制器任务调度方式的测试方法及装置
Marcos et al. Design and validation of industrial distributed control systems
CN103376798A (zh) 可编程轴承自动生产线专用系统
Cavadini et al. Integrated software platform for advanced design and optimization of industrial manufacturing control system
Wu et al. Windows XP embedded based open architecture computer numerical control system
Hummer et al. Downtimeless system evolution: Current state and future trends

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20100623

Assignee: Xi'an Universal Automation Control Co., Ltd.

Assignor: Yang Cheng

Contract record no.: 2014610000083

Denomination of invention: General sequence control algorithm used in programmable logic controller

Granted publication date: 20120606

License type: Exclusive License

Record date: 20140430

LICC Enforcement, change and cancellation of record of contracts on the licence for exploitation of a patent or utility model
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180515

Address after: 710065 room 10903, block B, Oak Street, 36 Fenghui Road, Xi'an, Shaanxi.

Patentee after: Xi'an Universal Automation Control Co., Ltd.

Address before: 710075 No. 1 Building 1, 69 Jin Ye Road, hi-tech West District, Xi'an, Shaanxi.

Patentee before: Yang Cheng

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210521

Address after: 225300 west side of the third floor of No.5 standard workshop of small and medium-sized enterprise Pioneer Park, west side of Wuling South Road, north side of Zhenxing Road, Sixiang sub district office, Taizhou City, Jiangsu Province

Patentee after: Jiangsu Putai Automation Technology Co.,Ltd.

Address before: 710065 room 10903, block B, Oak Street, 36 Fenghui Road, Xi'an, Shaanxi.

Patentee before: Xi'an Universal Automation Control Co.,Ltd.