CN107861716B - 软件定义型控制系统及控制方法 - Google Patents
软件定义型控制系统及控制方法 Download PDFInfo
- Publication number
- CN107861716B CN107861716B CN201711098557.3A CN201711098557A CN107861716B CN 107861716 B CN107861716 B CN 107861716B CN 201711098557 A CN201711098557 A CN 201711098557A CN 107861716 B CN107861716 B CN 107861716B
- Authority
- CN
- China
- Prior art keywords
- plc
- port
- configuration
- software
- hardware
- 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.)
- Active
Links
Images
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
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- G05B19/056—Programming the PLC
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/76—Adapting program code to run in a different environment; Porting
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Programmable Controllers (AREA)
Abstract
一种软件定义型控制系统,包括平台层和终端层;所述平台层包括PLC程序编辑模块、变量管理模块、硬件配置模块和界面组态模块;所述终端层为PLC系列硬件,所述平台层包括核心处理单元、与核心处理单元连接的输入输出模块、通信模块、人机交互模块和电源管理模块;在所述核心处理单元中,利用可重组移植的PLC操作系统核心软件形成不同类型CPU的PLC操作系统。本发明将“硬件资源快速构建”技术、“界面组态”技术和物联网技术整合,其中对“硬件资源快速构建”根据需求快速软件定义构建符合接口要求的控制器;对“界面组态”根据实际的应用要求快速软件定制专用监控人机界面,并定义界面控件与硬件接口的连接关系。
Description
技术领域
本发明涉及一种软件定义型控制系统及控制方法,属于软件定义互联的技术领域。
背景技术
PLC控制系统及相关控制技术经过多年的业内发展已经发展的相对成熟,然而针对PLC系统的软件却种类繁多,如果采用单一软件进行控制,所述PLC系统很难根据应用需求进行灵活的软件定义,以适应不同型号硬件环境,例如:不同型号间端口数量和种类等。现有方式下,需要不断开发差异性的软件来实现上述方案,但其大大增加了开发的难度,且开发周期长、软件稳定性与一致性变差。
因此,本技术领域中,特别需要一款软件定义型的控制系统来解决上述技术问题。
发明内容
针对现有技术的不足,本发明提供一种软件定义型控制系统。
本发明还提供上述软件定义型控制系统的控制方法。
本发明的技术方案如下:
一种软件定义型控制系统,包括平台层和终端层;
所述平台层包括PLC程序编辑模块、变量管理模块、硬件配置模块和界面组态模块;
所述终端层为PLC系列硬件,用于:数据处理及展示、实时控制、故障诊断及报警、PLC语句表解析、硬件配置解析和通信协议解析;
所述平台层包括核心处理单元、与核心处理单元连接的输入输出模块、通信模块、人机交互模块和电源管理模块;
在所述核心处理单元中,利用可重组移植的PLC操作系统核心软件形成不同类型CPU的PLC操作系统。
在所述PLC操作系统中运行PLC核心软件,该软件包括上位机软件和底层驱动程序;所述上位机软件主要包括配置软件;所述底层驱动软件主要是PLC终端监控程序;所述PLC操作系统中加载的编译软件采用模块化设计思想,支持梯形图、语句表和顺序功能图的编辑、编译和下载。配置软件包括硬件资源配置,实现PLC的快速重组。PLC终端监控程序支持PLC解析、配置参数解析、过程控制、运动控制、标准Modbus通讯等。通过重组移植,可形成不同类型CPU的PLC操作系统。
采用模块化、可配置、可重组的设计思想,实现PLC操作系统软件的快速移植开发,通过重组移植,可形成不同类型CPU的PLC操作系统。
本发明还可结合PLC操作系统核心软件,构建可配置PLC快速定制硬件平台,实现支持不同I/O点数、通信模式的多PLC硬件构建,快速形成系列化PLC产品。
所述核心处理单元采用基于ARM的微控制器LPC2368;功能接口丰富,性能稳定可靠;
所述输入输出模块用于:开关量输入输出、模拟量输入输出、高速脉冲输入输出;
所述通信模块用于:实现平台层和终端层之间的通信;
所述人机交互模块用于:界面显示从PLC读取的数据、数据分析结果、报警信号,并通过所述界面实现参数设置、触摸屏手动控制。
所述电源管理模块用于:分别给平台层和终端层供电。
根据本发明优选的,所述输入输出模块包括:开关量输入、开关量输出、模拟量输入、模拟量输出、高速脉冲输入和高速脉冲输出。
根据本发明优选的,所述通信模块包括I2C、CAN总线、NET、RS232、RS485和USB。
根据本发明优选的,所述人机交互模块7寸液晶组态屏。具体硬件架构如图2所示。
上述软件定义型控制系统的控制方法,其特征在于,包括:
PLC程序编辑、变量管理、硬件配置和HMI组态;
所述PLC程序编辑用于:实现PLC软件的在线编辑、编译功能;PLC软件编辑界面分为梯形图编辑器、语句表编辑器及顺序功能图编辑器三部分,可实现梯形图/顺序功能图绘制、语句表编辑以及三者之间的转换功能,同时也可实现在线调试、串口设置、串口编译下载功能。PLC软件编辑界面如图4所示:
所述变量管理用于:对PLC变量、内存变量和系统变量查看和编辑;具体为可编辑PLC变量的名称、内存变量增加和自定义,系统变量可根据用户权限对变量进行增删改查。如图5所示;
所述硬件配置是指:根据用户需求在硬件接口功能支持的条件下自定义配置硬件接口的输入输出类型,例如数字量输入输出类型、模拟量输入输出类型、高速脉冲输入输出类型;用户选择PLC具体型号后,系统自动获取该型号PLC所对应的硬件资源,通过可配置一体化PLC控制系统硬件配置界面构建PLC端口访问名与硬件资源的对应关系;
如图6所示是硬件配置界面,用户选择I/O端口类型后,系统会将类型相匹配的I/O端口号进行罗列,用户可自主选择具体的端口;选中端口的名称即I/O端口访问名可根据编程需求自定义,并且该自定义端口访问名可在管理模块进行修改;
所述HMI组态用于:实现人机交互界面的编辑、协议变量定义、在线仿真功能。为了能够提供不同需求定制不同的人机交互界面功能,可配置一体化PLC控制系统提供了HMI组态功能。HMI组态主要实现人机交互界面的编辑,协议变量定义,在线仿真功能。界面编辑采用组态方式,可对按钮、文本、仪表盘、进度条、动画、历史曲线等组态元任意组合,构建个性化的交互界面。协议变量定义是指关联显示部件与PLC变量,如可定义开关量I0000.00,并且通过逻辑关联或者属性配置将其与按钮1相关联,这样系统运行时,显示界面上按钮1的状态(弹起或按下)即是PLC的I0000.00变量对应的实际端口的开关输入状态。在线仿真功能是可在线仿真编辑的界面运行效果,同时可仿真通信请求与接收,确保设计的正确性,提高HMI设计效率。如图7所示是HMI组态首页。
根据本发明优选的,所述PLC变量为硬件配置时定义的变量,包括开关量输入变量、开关量输出变量、模拟量输入变量、模拟量输出变量、高速脉冲输入变量和高速脉冲输出变量。
根据本发明优选的,所述内存变量是指全局变量,包括:状态标志、串口发送接收标志。
根据本发明优选的,所述系统变量是指用户、系统版本、硬件版本。
根据本发明优选的,利用可重组移植的PLC操作系统核心软件形成不同类型CPU的PLC操作系统的方法包括:
(1)生成硬件资源配置参数表;
根据PLC产品的定制要求,PLC硬件根据控制要求及PLC的功能确定I/O点数及类型,在CPU硬件I/O资源允许的范围内,实现不同型号PLC构建;
所述硬件资源配置参数的确定方法包括:
(1.1)PLC的I/O点数选择,首先要考虑控制要求,兼顾备用余量;通常I/O点数是根据受控对象的输入、输出信号的实际需要,再加上10%--30%的备用量来确定的;
(1.2)依据I/O资源要求,开发PCB电路板PLC-PCB;
(1.3)应用硬件可配置软件生成硬件资源配置参数表PLC-CS,实现PLC硬件资源的自主配置;所述硬件可配置软件是本领域技术人员所常用的软件,其作用就是实现硬件资源配置参数表PLC-CS;
为了更好的解释硬件可配置软件,其操作界面如图8,在图8中,I/O端口类型列L1是可选得PLC常用类型列表;选择L1后I/O端口访问名列L3自动生成,I/O端口访问是PLC用户程序编程需要用到的PLC变量;再选择I/O端口序号列L2,此列罗列L1类型下的所有可选CPU对应引脚;然后逐行增加生成“硬件资源配置参数表PLC-CS”;
(2)将所述硬件资源配置参数表PLC-CS下载到PLC-PCB参数配置存储区FLASH中,将PLC监控程序下载到PLC-PCB程序存储区FLASH中,完成PLC的构建;
所述PLC监控程序是本领域技术人员所熟知的技术,是硬件平台端的底层驱动程序,包括硬件解析、语句表解析、通讯接口驱动等等,该监控程序包括不同PLC的融合技术,该程序是针对可配置PLC专门研发的监控程序,但针对不同的PLC来说这个程序是唯一的;
(3)构建的PLC运行实现过程,在PLC运行时:
(3.1)读取硬件资源配置参数表PLC-CS完成I/O驱动解析,完成硬件资源的自主配置;
(3.2)运行PLC监控程序;至此,PLC运行完全具备了PLC功能,具备梯形图、语句表编程,实现逻辑控制、算术运算、计时、计数、数据处理、PID运算和通信功能。
根据本发明优选的,在所述步骤(1)中,PLC配置参数建立通过QT软件实现,根据参数表数据结构形成PLC-CS参数文件,通过串口下载到PLC硬件电路中,供运行PLC时调用配置参数PLC-CS,完成I/O驱动配置;参数表数据结构如下:
PLC-CS参数表结构:
① | ② | ④ |
PLC I/O端口类型 | PLC I/O端口位置 | CPU I/O端口Pi.j |
①PLC I/O端口类型:根据PLC型号要求,配置成开关量输入(DI)、开关量输出(DO)、模拟量输入(AI)和模拟量输出(AO);
②PLC I/O端口位置:根据PLC型号要求,配置所选类型的路数位置;
④CPU I/O端口Pi.j:根据CPU类型不同,分多个I/O端口P0.0,P0.1,...Pi.j,....;本字段设置PLC I/O端口位置所对应的CPU I/O端口Pi.j。
根据本发明优选的,所述PLC-CS参数表结构还包括PLC I/O端口参数:根据PLC型号要求,对配置的I/O端口设置参数;无类型参数时为空;
根据本发明优选的,所述步骤(3)中运行PLC时调用配置参数PLC-CS,完成I/O驱动配置解析的实现方法包括:
① | ② | ③ | ④ |
PLC I/O端口类型 | PLC I/O端口位置 | PLC I/O端口参数 | CPU I/O端口Pi.j |
运行PLC时,PLC操作系统软件先调用配置参数PLC-CS,根据参数表记录依次根据PLCI/O端口类型开关量输入(DI)、开关量输出(DO)、模拟量输入(AI)、模拟量输出(AO)几种类型将CPU对应的I/O端口完成I/O驱动配置,实现方法如下:
①PLC I/O端口类型:读取LC I/O端口类型,根据PLC端口开关量输入(DI)、开关量输出(DO)、模拟量输入(AI)和模拟量输出(AO)多种类型不同调用不同的配置程序;
②PLC I/O端口位置:根据PLC I/O端口位置,依次完成配置程序;
③PLC I/O端口参数:根据PPLC I/O端口参数,对对应的I/O端口依据配置参数进行配置处理;
④CPU I/O端口Pi.j:选取当前配置的PLC I/O端口所对应的CPU I/O端口Pi.j,进行I/O驱动配置。
本发明的技术优势在于:
1、本发明所述软件定义系统由人机界面、终端两部分组成,功能上除了实现硬件的语句表解析、实时控制、故障诊断与报警外,增加了界面组态和硬件配置解析功能。一体化控制系统可根据不同型号PLC的不同I/O输入输出类型、路数、通信模式进行差异定制开发。通过一体化PLC控制系统可实现一体化PLC中逻辑程序编辑、变量管理、硬件配置、HMI组态等功能。
2、本发明基于可配置的PLC平台构建双PLC系统,结合所述软件定义,融合多系统自诊断技术形成多通道系统安全PLC。本发明可供第三方根据不同的应用需求,快速定制支持不同I/O点及通信方式的安全PLC系统和软件环境。
3、本发明所述软件定义型控制系统将“硬件资源快速构建”技术、“界面组态”技术和物联网技术整合,其中对“硬件资源快速构建”根据需求快速软件定义构建符合接口要求的控制器;对“界面组态”根据实际的应用要求快速软件定制专用监控人机界面,并定义界面控件与硬件接口的连接关系。本发明可应用于物联网技术领域,即将各种传感器、控制器之间软件定义进行相互互联,快速形成一个控制系统的稳定物联网络。
4、本发明与现有技术中所述控制器功能相对固定的技术特征相比,其能够实现控制器功能的软件定义,快速构建控制系统。
5、本发明不但可以人机界面可组态,还可软件定义连接的控制器接口,使所述控制系统监控更灵活。
6、本发明的通讯方式可软件定义切换通信方式,定义通讯接口。
7、本发明可稳定的应用于物联网领域中,将所述物联网中连接的传感器或控制器通过控制系统软件定义连接,实现种类、连接数量等参数的具体设定和转换。
附图说明
图1是本发明所述系统的架构图;
图2本发明所述系统中硬件结构图;
图3本发明所述控制系统的软件架构图;
图4本发明所述系统中PLC编辑软件界面;
图5是本发明所述的变量管理示意图;
图6是本发明所述系统的硬件配置界面;
图7是本发明所述HMI组态首页图;
图8是本发明所述硬件可配置软件的界面操作示意图;
图9是本发明所述I/O表决输出的流程图;
图10是本发所述构建I/O点的安全双系统PLC的示意图;其中所述双系统自诊断技术包括多系统同步运行交叉检测技术和I/O表决输出技术,所述双通道就是指双PLC系统通道;
图11是本发明中,构建不同I/O点的PLC的示意图;其中,不同的PLC的CPU的类型是不同的,如PLC1采用Arm系列的LPC2368,PLC2采用的是STM32系列或者MSP430系列等等。这样可以尽最大可能避免系统死在同一处。
具体实施方式
下面结合实施例和说明书附图做详细的说明,但不限于此。
如图1—11所示。
实施例1、
一种软件定义型控制系统,包括平台层和终端层;
所述平台层包括PLC程序编辑模块、变量管理模块、硬件配置模块和界面组态模块;
所述终端层为PLC系列硬件,用于:数据处理及展示、实时控制、故障诊断及报警、PLC语句表解析、硬件配置解析和通信协议解析。
例如,所述终端层为山科PLC系列硬件。所述山科PLC系列硬件(简称SKPLC)是山东省计算中心隶属山东科学院,研发出的具备自主知识产权的山科品牌PLC产品。
所述平台层包括核心处理单元、与核心处理单元连接的输入输出模块、通信模块、人机交互模块和电源管理模块。
在所述核心处理单元中,利用可重组移植的PLC操作系统核心软件形成不同类型CPU的PLC操作系统。
实施例2、
如实施例1所述的一种软件定义型控制系统,其区别在于,所述核心处理单元采用基于ARM的微控制器LPC2368;功能接口丰富,性能稳定可靠;
所述输入输出模块用于:开关量输入输出、模拟量输入输出、高速脉冲输入输出;
所述通信模块用于:实现平台层和终端层之间的通信;
所述人机交互模块用于:界面显示从PLC读取的数据、数据分析结果、报警信号,并通过所述界面实现参数设置、触摸屏手动控制。
所述电源管理模块用于:分别给平台层和终端层供电。
所述输入输出模块包括:开关量输入、开关量输出、模拟量输入、模拟量输出、高速脉冲输入和高速脉冲输出。
所述通信模块包括I2C、CAN总线、NET、RS232、RS485和USB。
所述人机交互模块7寸液晶组态屏。具体硬件架构如图2所示。
实施例3、
如实施例1、2所述的一种软件定义型控制系统,其特征在于,包括:
PLC程序编辑、变量管理、硬件配置和HMI组态;
所述PLC程序编辑用于:实现PLC软件的在线编辑、编译功能;PLC软件编辑界面分为梯形图编辑器、语句表编辑器及顺序功能图编辑器三部分,可实现梯形图/顺序功能图绘制、语句表编辑以及三者之间的转换功能,同时也可实现在线调试、串口设置、串口编译下载功能。PLC软件编辑界面如图4所示:
所述变量管理用于:对PLC变量、内存变量和系统变量查看和编辑;具体为可编辑PLC变量的名称、内存变量增加和自定义,系统变量可根据用户权限对变量进行增删改查。如图5所示;
所述PLC变量为硬件配置时定义的变量,包括开关量输入变量、开关量输出变量、模拟量输入变量、模拟量输出变量、高速脉冲输入变量和高速脉冲输出变量。
所述内存变量是指全局变量,包括:状态标志、串口发送接收标志。
所述系统变量是指用户、系统版本、硬件版本。
所述硬件配置是指:根据用户需求在硬件接口功能支持的条件下自定义配置硬件接口的输入输出类型,例如数字量输入输出类型、模拟量输入输出类型、高速脉冲输入输出类型;用户选择PLC具体型号后,系统自动获取该型号PLC所对应的硬件资源,通过可配置一体化PLC控制系统硬件配置界面构建PLC端口访问名与硬件资源的对应关系;
如图6所示是硬件配置界面,用户选择I/O端口类型后,系统会将类型相匹配的I/O端口号进行罗列,用户可自主选择具体的端口;选中端口的名称即I/O端口访问名可根据编程需求自定义,并且该自定义端口访问名可在管理模块进行修改;
所述HMI组态用于:实现人机交互界面的编辑、协议变量定义、在线仿真功能。为了能够提供不同需求定制不同的人机交互界面功能,可配置一体化PLC控制系统提供了HMI组态功能。HMI组态主要实现人机交互界面的编辑,协议变量定义,在线仿真功能。界面编辑采用组态方式,可对按钮、文本、仪表盘、进度条、动画、历史曲线等组态元任意组合,构建个性化的交互界面。协议变量定义是指关联显示部件与PLC变量,如可定义开关量I0000.00,并且通过逻辑关联或者属性配置将其与按钮1相关联,这样系统运行时,显示界面上按钮1的状态(弹起或按下)即是PLC的I0000.00变量对应的实际端口的开关输入状态。在线仿真功能是可在线仿真编辑的界面运行效果,同时可仿真通信请求与接收,确保设计的正确性,提高HMI设计效率。如图7所示是HMI组态首页。
实施例4、
如实施例1所述的一种软件定义型控制系统,其区别在于,利用可重组移植的PLC操作系统核心软件形成不同类型CPU的PLC操作系统的方法包括:
(1)生成硬件资源配置参数表;
根据PLC产品的定制要求,PLC硬件根据控制要求及PLC的功能确定I/O点数及类型,在CPU硬件I/O资源允许的范围内,实现不同型号PLC构建;
所述硬件资源配置参数的确定方法包括:
(1.1)PLC的I/O点数选择,首先要考虑控制要求,兼顾备用余量;通常I/O点数是根据受控对象的输入、输出信号的实际需要,再加上10%--30%的备用量来确定的;
(1.2)依据I/O资源要求,开发PCB电路板PLC-PCB;
(1.3)应用硬件可配置软件生成硬件资源配置参数表PLC-CS,实现PLC硬件资源的自主配置;所述硬件可配置软件是本领域技术人员所常用的软件,其作用就是实现硬件资源配置参数表PLC-CS;
为了更好的解释硬件可配置软件,其操作界面如图8,在图8中,I/O端口类型列L1是可选得PLC常用类型列表;选择L1后I/O端口访问名列L3自动生成,I/O端口访问是PLC用户程序编程需要用到的PLC变量;再选择I/O端口序号列L2,此列罗列L1类型下的所有可选CPU对应引脚;然后逐行增加生成“硬件资源配置参数表PLC-CS”;
(2)将所述硬件资源配置参数表PLC-CS下载到PLC-PCB参数配置存储区FLASH中,将PLC监控程序下载到PLC-PCB程序存储区FLASH中,完成PLC的构建;
所述PLC监控程序是本领域技术人员所熟知的技术,是硬件平台端的底层驱动程序,包括硬件解析、语句表解析、通讯接口驱动等等,该监控程序包括不同PLC的融合技术,该程序是针对可配置PLC专门研发的监控程序,但针对不同的PLC来说这个程序是唯一的;
(3)构建的PLC运行实现过程,在PLC运行时:
(3.1)读取硬件资源配置参数表PLC-CS完成I/O驱动解析,完成硬件资源的自主配置;
(3.2)运行PLC监控程序;至此,PLC运行完全具备了PLC功能,具备梯形图、语句表编程,实现逻辑控制、算术运算、计时、计数、数据处理、PID运算和通信功能。
实施例5、
如实施例4所述的一种软件定义型控制系统,其区别在于,
在所述步骤(1)中,PLC配置参数建立通过QT软件实现,根据参数表数据结构形成PLC-CS参数文件,通过串口下载到PLC硬件电路中,供运行PLC时调用配置参数PLC-CS,完成I/O驱动配置;参数表数据结构如下:
PLC-CS参数表结构:
① | ② | ④ |
PLC I/O端口类型 | PLC I/O端口位置 | CPU I/O端口Pi.j |
①PLC I/O端口类型:根据PLC型号要求,配置成开关量输入(DI)、开关量输出(DO)、模拟量输入(AI)和模拟量输出(AO);
②PLC I/O端口位置:根据PLC型号要求,配置所选类型的路数位置;
④CPU I/O端口Pi.j:根据CPU类型不同,分多个I/O端口P0.0,P0.1,...Pi,j,....;本字段设置PLC I/O端口位置所对应的CPU I/O端口Pi.j。
实施例6、
如实施例5所述的一种软件定义型控制系统,其区别在于,所述PLC-CS参数表结构还包括PLC I/O端口参数:根据PLC型号要求,对配置的I/O端口设置参数;无类型参数时为空;
所述步骤(3)中运行PLC时调用配置参数PLC-CS,完成I/O驱动配置解析的实现方法包括:
① | ② | ③ | ④ |
PLC I/O端口类型 | PLC I/O端口位置 | PLC I/O端口参数 | CPU I/O端口Pi.j |
运行PLC时,PLC操作系统软件先调用配置参数PLC-CS,根据参数表记录依次根据PLC I/O端口类型开关量输入(DI)、开关量输出(DO)、模拟量输入(AI)、模拟量输出(AO)几种类型将CPU对应的I/O端口完成I/O驱动配置,实现方法如下:
①PLC I/O端口类型:读取LC I/O端口类型,根据PLC端口开关量输入(DI)、开关量输出(DO)、模拟量输入(AI)和模拟量输出(AO)多种类型不同调用不同的配置程序;
②PLC I/O端口位置:根据PLC I/O端口位置,依次完成配置程序;
③PLC I/O端口参数:根据PPLC I/O端口参数,对对应的I/O端口依据配置参数进行配置处理;
④CPU I/O端口Pi.j:选取当前配置的PLC I/O端口所对应的CPU I/O端口Pi.j,进行I/O驱动配置。
应用例、
参见附图8-11。
如实施例1所述的一种软件定义型控制系统,所述软件定义控制系统在至少两套不同类型CPU同时各自运行不同的PLC操作系统时,包括具体步骤如下:
1)多系统同步运行交叉检测;所述多系统包括主PLC操作系统和从PLC操作系统;
2)I/O表决输出,并将最终结果交给执行机构;
3)依据安全系统认证的要求形成安全PLC产品。所述安全系统认证的要求是指国际电工委员会在2000年正式发布的IEC61508标准,名为《电气/电子/可编程电子安全相关系统的功能安全》。
所述步骤1)中,所述多系统同步运行交叉检测包括:
1.1)主PLC操作系统和从PLC操作系统同步运行;
1.2)步骤1.1)所有所述主PLC操作系统和从PLC操作系统按同一格式存储运行结果;
1.3)所述主PLC操作系统通过串口读取所述从PLC操作系统的结果。
本发明通过配置实现CPU硬件资源范围内任意I/O点数定制、通信模式的选择,快速形成I/O点数和通信模式,为PLC应用研发提供安全保障。
所述步骤2)中,所述I/O表决输出包括:
2.1)若I/O表决输出是开关量,则主PLC操作系统和从PLC操作系统的表决输出结果都为1或0时,则,判决运行结果正确;否则,判决运行结果错误;
2.2)若I/O表决输出是高速脉冲计数量,则主PLC操作系统和从PLC操作系统的表决输出结果相差不超过1时,则,判决运行结果正确;否则,判决运行结果错误;
2.3)若I/O表决输出是模拟量,则主PLC操作系统和从PLC操作系统的表决输出结果相差在千分位时,则,判决运行结果正确;否则,判决运行结果错误;
将正确的所述判决运行结果下发给对应发出正确表决输出结果的PLC操作系统;对发出错误表决输出结果的PLC操作系统进行检修,检修完成后下达多PLC操作系统判决执行任务。
如上述2.1)、2.2)、2.3),若所述决运行结果错误,则触发报警,同时将对应的错误信息上传到上位机:人为判决哪个表决输出结果是正确的。
Claims (12)
1.一种软件定义型控制系统,其特征在于,该控制系统包括平台层和终端层;
所述平台层包括PLC程序编辑模块、变量管理模块、硬件配置模块和界面组态模块;
所述终端层为PLC系列硬件,用于:数据处理及展示、实时控制、故障诊断及报警、PLC语句表解析、硬件配置解析和通信协议解析;
所述平台层包括核心处理单元、与核心处理单元连接的输入输出模块、通信模块、人机交互模块和电源管理模块;
在所述核心处理单元中,利用可重组移植的PLC操作系统核心软件形成不同类型CPU的PLC操作系统;
利用可重组移植的PLC操作系统核心软件形成不同类型CPU的PLC操作系统的方法包括:
(1)生成硬件资源配置参数表PLC-CS;
(2)将所述硬件资源配置参数表PLC-CS下载到PLC-PCB参数配置存储区FLASH中,将PLC监控程序下载到PLC-PCB程序存储区FLASH中,完成PLC的构建;
(3)构建的PLC运行实现过程,在PLC运行时:
(3.1)读取硬件资源配置参数表PLC-CS完成I/O驱动解析,完成硬件资源的自主配置;
(3.2)运行PLC监控程序。
2.根据权利要求1所述的一种软件定义型控制系统,其特征在于,所述核心处理单元采用基于ARM的微控制器LPC2368;
所述输入输出模块用于:开关量输入输出、模拟量输入输出、高速脉冲输入输出;
所述通信模块用于:实现平台层和终端层之间的通信;
所述人机交互模块用于:界面显示从PLC读取的数据、数据分析结果、报警信号,并通过所述界面实现参数设置、触摸屏手动控制。
3.根据权利要求2所述的一种软件定义型控制系统,其特征在于,所述输入输出模块包括:开关量输入、开关量输出、模拟量输入、模拟量输出、高速脉冲输入和高速脉冲输出。
4.根据权利要求3所述的一种软件定义型控制系统,其特征在于,所述通信模块包括I2C、CAN总线、NET、RS232、RS485和USB。
5.根据权利要求3所述的一种软件定义型控制系统,其特征在于,所述人机交互模块7寸液晶组态屏。
6.如权利要求1所述的软件定义型控制系统,其特征在于,在所述步骤(1)中,PLC配置参数建立通过QT软件实现,根据参数表数据结构形成PLC-CS参数文件,通过串口下载到PLC硬件电路中,供运行PLC时调用配置参数表PLC-CS,完成I/O驱动配置;参数表数据结构如下:
PLC-CS参数表结构:
①PLC I/O端口类型:根据PLC型号要求,配置成开关量输入(DI)、开关量输出(DO)、模拟量输入(AI)和模拟量输出(AO);
②PLC I/O端口位置:根据PLC型号要求,配置所选类型的路数位置;
④CPU I/O端口Pi.j:根据CPU类型不同,分多个I/O端口P0.0,P0.1,...Pi.j,....;本字段设置PLC I/O端口位置所对应的CPU I/O端口Pi.j。
7.根据权利要求6所述的一种软件定义型控制系统,其特征在于,所述PLC-CS参数表结构还包括PLC I/O端口参数:根据PLC型号要求,对配置的I/O端口设置参数;无类型参数时为空;
。
8.根据权利要求6所述的一种软件定义型控制系统,其特征在于,所述步骤(3)中读取硬件资源配置参数表PLC-CS完成I/O驱动解析,完成硬件资源的自主配置的实现方法包括:
运行PLC时,PLC操作系统软件先调用配置参数表PLC-CS,根据参数表记录依次根据PLCI/O端口类型开关量输入(DI)、开关量输出(DO)、模拟量输入(AI)、模拟量输出(AO)几种类型将CPU对应的I/O端口完成I/O驱动配置,实现方法如下:
①PLC I/O端口类型:读取PLC I/O端口类型,根据PLC端口开关量输入(DI)、开关量输出(DO)、模拟量输入(AI)和模拟量输出(AO)多种类型不同调用不同的配置程序;
②PLC I/O端口位置:根据PLC I/O端口位置,依次完成配置程序;
③PLC I/O端口参数:根据PLC I/O端口参数,对对应的I/O端口依据配置参数进行配置处理;
④CPU I/O端口Pi.j:选取当前配置的PLC I/O端口所对应的CPU I/O端口Pi.j,进行I/O驱动配置。
9.如权利要求1-8任意一项所述软件定义型控制系统的控制方法,其特征在于,包括:
PLC程序编辑、变量管理、硬件配置和界面组态;
所述PLC程序编辑用于:实现PLC软件的在线编辑、编译功能;
所述变量管理用于:对PLC变量、内存变量和系统变量查看和编辑;
所述硬件配置是指:根据用户需求在硬件接口功能支持的条件下自定义配置硬件接口的输入输出类型,
所述界面组态用于:实现人机交互界面的编辑、协议变量定义、在线仿真功能。
10.如权利要求9所述的软件定义型控制系统的控制方法,其特征在于,所述PLC变量为硬件配置时定义的变量,包括开关量输入变量、开关量输出变量、模拟量输入变量、模拟量输出变量、高速脉冲输入变量和高速脉冲输出变量。
11.如权利要求10所述的软件定义型控制系统的控制方法,其特征在于,所述内存变量是指全局变量,包括:状态标志、串口发送接收标志。
12.如权利要求10所述的软件定义型控制系统的控制方法,其特征在于,所述系统变量是指用户、系统版本、硬件版本。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711098557.3A CN107861716B (zh) | 2017-11-09 | 2017-11-09 | 软件定义型控制系统及控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711098557.3A CN107861716B (zh) | 2017-11-09 | 2017-11-09 | 软件定义型控制系统及控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107861716A CN107861716A (zh) | 2018-03-30 |
CN107861716B true CN107861716B (zh) | 2021-03-02 |
Family
ID=61700032
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711098557.3A Active CN107861716B (zh) | 2017-11-09 | 2017-11-09 | 软件定义型控制系统及控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107861716B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108829394A (zh) * | 2018-08-20 | 2018-11-16 | 珠海格力电器股份有限公司 | 一种hmi组态软件脚本编辑方法 |
CN110849410A (zh) * | 2018-08-20 | 2020-02-28 | 合肥暖流信息科技有限公司 | 一种具有多参数采集输入端口结构的传感器及其应用 |
CN109612290B (zh) * | 2018-12-12 | 2021-06-04 | 湖北科技学院 | 一种基于组态屏的加热炉控制系统 |
CN109697065A (zh) * | 2018-12-17 | 2019-04-30 | 蜂巢(武汉)微系统技术有限公司 | 一种嵌入式车载系统的可视化开发方法 |
CN110231931A (zh) * | 2019-05-08 | 2019-09-13 | 华中科技大学 | 一种电源实时控制模块和系统 |
CN111880793A (zh) * | 2020-07-21 | 2020-11-03 | 上海繁易信息科技股份有限公司 | 一种基于二进制文件的hmi组态配置系统和方法 |
CN112214005A (zh) * | 2020-10-12 | 2021-01-12 | 深圳市矩形科技有限公司 | 一种控制平台的测试系统 |
CN112241141B (zh) * | 2020-11-12 | 2022-08-09 | 上海电气风电集团股份有限公司 | Plc控制系统的硬件配置方法、系统、设备及介质 |
CN114090126A (zh) * | 2021-11-23 | 2022-02-25 | 浩云科技股份有限公司 | 一种自定义系统变量方法、装置、终端设备及存储介质 |
CN114326576A (zh) * | 2021-12-31 | 2022-04-12 | 中国电信股份有限公司 | 运行控制方法及装置、电子设备和计算机可读存储介质 |
CN114741073B (zh) * | 2022-04-27 | 2023-10-17 | 傲拓科技股份有限公司 | 一种plc组态系统及顺序控制图形生成方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101303580A (zh) * | 2008-06-24 | 2008-11-12 | 杭州义益自动化有限公司 | 支持多种cpu构造plc控制器的实现方法 |
CN201237732Y (zh) * | 2008-07-07 | 2009-05-13 | 山东省计算中心 | 一种通用plc主控制器模块 |
CN102811232A (zh) * | 2011-05-31 | 2012-12-05 | 德尔福电子(苏州)有限公司 | 一种实现汽车通讯网关软件重配置的数据处理方法及装置 |
CN105094021A (zh) * | 2015-09-11 | 2015-11-25 | 浙江中烟工业有限责任公司 | 一种基于arm嵌入式技术的plc协同控制装置 |
CN105137903A (zh) * | 2015-06-29 | 2015-12-09 | 山东超越数控电子有限公司 | 一种在SocFPGA上实现PLC运行环境的方法 |
CN105323313A (zh) * | 2015-10-14 | 2016-02-10 | 青岛中科软件股份有限公司 | 一种整合工业监控移动物联网平台 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160205430A1 (en) * | 2015-01-08 | 2016-07-14 | Intel Corporation | Method and system for fast channel scan for docsis cable modem |
-
2017
- 2017-11-09 CN CN201711098557.3A patent/CN107861716B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101303580A (zh) * | 2008-06-24 | 2008-11-12 | 杭州义益自动化有限公司 | 支持多种cpu构造plc控制器的实现方法 |
CN201237732Y (zh) * | 2008-07-07 | 2009-05-13 | 山东省计算中心 | 一种通用plc主控制器模块 |
CN102811232A (zh) * | 2011-05-31 | 2012-12-05 | 德尔福电子(苏州)有限公司 | 一种实现汽车通讯网关软件重配置的数据处理方法及装置 |
CN105137903A (zh) * | 2015-06-29 | 2015-12-09 | 山东超越数控电子有限公司 | 一种在SocFPGA上实现PLC运行环境的方法 |
CN105094021A (zh) * | 2015-09-11 | 2015-11-25 | 浙江中烟工业有限责任公司 | 一种基于arm嵌入式技术的plc协同控制装置 |
CN105323313A (zh) * | 2015-10-14 | 2016-02-10 | 青岛中科软件股份有限公司 | 一种整合工业监控移动物联网平台 |
Non-Patent Citations (2)
Title |
---|
PLC程序通用开发平台的社交与实现;夏端峰 等;《福建电脑》;20140131;第172-191页 * |
可编程逻辑控制器通用开发平台的设计与实现;吴宁 等;《仪器仪表学报》;20070831;第28卷(第8期);第1486-1491页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107861716A (zh) | 2018-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107861716B (zh) | 软件定义型控制系统及控制方法 | |
CN110271009B (zh) | 基于plc仿机器人指令实现机械手示教功能方法 | |
US9235381B2 (en) | Method and device for the programming and configuration of a programmable logic controller | |
EP2804058B1 (en) | System and method for emulation of an automation control system | |
CN101937232B (zh) | 基于多路数据总线的嵌入式实时仿真与故障模拟系统 | |
CN107861459A (zh) | 一种可配置显控一体化的plc控制系统及其控制方法 | |
CN107861458B (zh) | 一种可自主配置硬件资源的plc快速构建方法 | |
CN103019104B (zh) | 一种可视化过程控制系统组态仿真方法 | |
CN103941650B (zh) | 逻辑与运动集成控制器 | |
CN101833892A (zh) | 用于焊接机器人的嵌入式示教编程装置及方法 | |
CN104317236A (zh) | 基于软plc技术的无线传感器网络控制终端 | |
US20110320017A1 (en) | Integrated drive management and configuration using instantiated objects | |
US9176734B2 (en) | Ladder program creation apparatus | |
US6883161B1 (en) | Universal graph compilation tool | |
KR101635397B1 (ko) | 재구성 가능한 프로세서 코어를 사용하는 멀티코어 시스템의 시뮬레이터 및 시뮬레이션 방법 | |
CN101206468B (zh) | 一种计算机数控领域的建模方法 | |
CN111880793A (zh) | 一种基于二进制文件的hmi组态配置系统和方法 | |
CN115657564A (zh) | 一种免编程现场控制装置及方法 | |
US6941261B1 (en) | Cause and effect logic application implementation | |
Thieme et al. | Model-based generation of modular PLC code using IEC61131 function blocks | |
CN114594937A (zh) | 一种程序组态方法和系统 | |
CN106814696B (zh) | 一种数控系统人机界面二次开发平台系统及其实现方法 | |
CN107894742B (zh) | 一种快速配置硬件资源的安全plc实现方法 | |
CN103499931A (zh) | 一种控制器设计方法及装置 | |
CN114189534A (zh) | 一种物联网系统中设备交互软件仿真程序的设计方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |