CN108614516A - 一种虚拟plc仿真系统及方法 - Google Patents
一种虚拟plc仿真系统及方法 Download PDFInfo
- Publication number
- CN108614516A CN108614516A CN201810639738.0A CN201810639738A CN108614516A CN 108614516 A CN108614516 A CN 108614516A CN 201810639738 A CN201810639738 A CN 201810639738A CN 108614516 A CN108614516 A CN 108614516A
- Authority
- CN
- China
- Prior art keywords
- plc
- virtual
- module
- configuration file
- virtual plc
- 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
- 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
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/13—Plc programming
- G05B2219/13004—Programming the plc
Abstract
本发明公开了一种虚拟PLC仿真系统,其包括有安装于计算机的:一导入模块,用于导入PLC程序,对PLC程序进行逻辑分析,将分析结果保存为配置文件;一解析模块,用于读取配置文件;一虚拟PLC运行模块,用于根据PLC运行原理对已读取的配置文件进行数据处理;多个虚拟执行设备,用于根据虚拟PLC运行模块的数据处理结果而仿真执行相应动作。本发明了通过软件学习编写并测试各种品牌PLC控制程序,学习过程简单有效,特别是在学习研究过程中,可结合演练过程解决真实PLC项目中会遇到的问题,大大增加了设计项目的可性行,同时减少了调试环节所占用的时间,使得设计项目更容易满足控制要求,进而保证整个系统安全可靠的运行。
Description
技术领域
本发明涉及PLC程序测试和仿真技术领域,尤其涉及一种虚拟PLC仿真系统及方法。
背景技术
现有技术中,请参照图1,学习PLC编程时需要通过计算机编程软件10编写PLC控制程序,然后连接PLC控制器11,把程序写入PLC控制器11的程序存储器,最后通过连接执行设备12反复测试调试。这种系统结构存在如下缺陷:
首先,学习成本高。学习编程时需要PC和PLC,在没有开展实际PLC项目之前,无法确定购买哪种PLC进入学习,如果学习不同品牌又需要购买多个PLC控制器。
其次,测试成本高。编写好的PLC控制程序需要连接执行设备12来进行测试,稍有不当,则有可能造成设备的损坏,若缺乏调试设备,甚至无法进行测试,因而不便于用户学习研究。
发明内容
本发明要解决的技术问题在于,针对现有技术的不足,提供一种能够利用计算机进行编程、解析、处理、仿真运行,从而降低学习与测试成本、提高学习与研究效率的虚拟PLC仿真系统及方法。
为解决上述技术问题,本发明采用如下技术方案。
一种虚拟PLC仿真系统,其包括有安装于计算机的:一导入模块,用于导入PLC程序,对PLC程序进行逻辑分析,将分析结果保存为配置文件;一解析模块,用于读取配置文件;一虚拟PLC运行模块,用于根据PLC运行原理对已读取的配置文件进行数据处理;多个虚拟执行设备,用于根据虚拟PLC运行模块的数据处理结果而仿真执行相应动作。
优选地,所述虚拟PLC运行模块对配置文件进行数据处理后生成或者更新内存数据模型。
优选地,所述虚拟PLC运行模块还用于循环监视多个虚拟执行设备的执行状态。
一种虚拟PLC仿真方法,该方法基于一系统实现,所述系统包括有安装于计算机的一导入模块、一解析模块、一虚拟PLC运行模块和多个虚拟执行设备,所述方法包括如下步骤:步骤S1,利用PLC控制器所对应的编程软件编写PLC程序;步骤S2,利用所述导入模块导入PLC程序;步骤S3,所述导入模块对PLC程序进行逻辑分析,将分析结果保存为配置文件;步骤S4,所述虚拟PLC运行模块调用解析模块,所述解析模块读取配置文件;步骤S5,所述虚拟PLC运行模块根据PLC运行原理对已读取的配置文件进行数据处理;步骤S6,所述虚拟PLC运行模块将数据处理结果加载于相应的虚拟执行设备,以令所述虚拟执行设备仿真执行相应动作。
优选地,所述步骤S5中,所述虚拟PLC运行模块对配置文件进行数据处理后生成或者更新内存数据模型。
优选地,所述步骤S6中,所述虚拟执行设备先获取内存数据模型,之后仿真执行相应动作。
优选地,还包括设备监视步骤:所述虚拟执行设备执行相应动作的过程中,所述虚拟PLC运行模块循环监视多个虚拟执行设备的执行状态。
本发明公开的虚拟PLC仿真系统,其应用过程中,首先利用编程软件编写PLC程序,再将PLC程序加载于导入模块,利用导入模块对PLC程序进行逻辑分析后保存为配置文件,当虚拟PLC运行模块调用解析模块时,由解析模块读取配置文件,之后虚拟PLC运行模块根据PLC运行原理对已读取的配置文件进行数据处理,最后虚拟执行设备根据数据处理结果仿真执行相应动作。基于上述原理,本发明了通过软件学习编写并测试各种品牌PLC控制程序,不仅学习过程简单有效,而且经济实用,特别是在学习研究过程中,可结合演练过程解决真实PLC项目中会遇到的问题,大大增加了设计项目的可性行,同时减少了调试环节所占用的时间,使得设计项目更容易满足控制要求,进而保证整个系统安全可靠的运行。
附图说明
图1为现有PLC学习测试系统的组成框图。
图2为本发明虚拟PLC仿真系统的组成框图。
具体实施方式
下面结合附图和实施例对本发明作更加详细的描述。
本发明公开了一种虚拟PLC仿真系统,请参照图2,其包括有安装于计算机的:
一导入模块2,用于导入PLC程序,对PLC程序进行逻辑分析,将分析结果保存为配置文件;
一解析模块3,用于读取配置文件;
一虚拟PLC运行模块4,用于根据PLC运行原理对已读取的配置文件进行数据处理;
多个虚拟执行设备5,用于根据虚拟PLC运行模块4的数据处理结果而仿真执行相应动作。
上述虚拟PLC仿真系统在应用过程中,首先利用编程软件1编写PLC程序,再将PLC程序加载于导入模块2,利用导入模块2对PLC程序进行逻辑分析后保存为配置文件,当虚拟PLC运行模块4调用解析模块3时,由解析模块3读取配置文件,之后虚拟PLC运行模块4根据PLC运行原理对已读取的配置文件进行数据处理,最后虚拟执行设备5根据数据处理结果仿真执行相应动作。基于上述原理,本发明了通过软件学习编写并测试各种品牌PLC控制程序,不仅学习过程简单有效,而且经济实用,特别是在学习研究过程中,可结合演练过程解决真实PLC项目中会遇到的问题,大大增加了设计项目的可性行,同时减少了调试环节所占用的时间,使得设计项目更容易满足控制要求,进而保证整个系统安全可靠的运行。
本实施例中,所述虚拟PLC运行模块4对配置文件进行数据处理后生成或者更新内存数据模型。进一步地,所述虚拟PLC运行模块4还用于循环监视多个虚拟执行设备5的执行状态。
为了更好地描述本发明的技术方案,本发明还公开了一种虚拟PLC仿真方法,请参照图2,该方法基于一系统实现,所述系统包括有安装于计算机的一导入模块2、一解析模块3、一虚拟PLC运行模块4和多个虚拟执行设备5,所述方法包括如下步骤:
步骤S1,利用PLC控制器所对应的编程软件1编写PLC程序;
步骤S2,利用所述导入模块2导入PLC程序;
步骤S3,所述导入模块2对PLC程序进行逻辑分析,将分析结果保存为配置文件;
步骤S4,所述虚拟PLC运行模块4调用解析模块3,所述解析模块3读取配置文件;
步骤S5,所述虚拟PLC运行模块4根据PLC运行原理对已读取的配置文件进行数据处理;
步骤S6,所述虚拟PLC运行模块4将数据处理结果加载于相应的虚拟执行设备5,以令所述虚拟执行设备5仿真执行相应动作。
上述方法的所述步骤S5中,所述虚拟PLC运行模块4对配置文件进行数据处理后生成或者更新内存数据模型。
作为一种优选方式,所述步骤S6中,所述虚拟执行设备5先获取内存数据模型,之后仿真执行相应动作。
为了实现闭环控制,本实施例还包括设备监视步骤:所述虚拟执行设备5执行相应动作的过程中,所述虚拟PLC运行模块4循环监视多个虚拟执行设备5的执行状态。
本发明公开的虚拟PLC仿真系统及方法,其实际应用过程中,可参考如下实施例:
本发明系统可用于学习PLC编程、测试过程中,相比之下,传统的学习过程是把编程完成的程序直接写入PLC,而本发明中利用导入模块分析PLC程序逻辑,然后转化导入到系统中成为配置文件,导入过程具体包括如下步骤:
首先,导入模块读取PLC程序;
其次,导入模块分析PLC程序;
之后,导入模块将分析结果存为本地配置文件。
在仿真运行环节,虚拟PLC运行模块调用解析模块,并使用PLC的运行原理读取配置文件,解析并运行此配置,以达到仿真PLC的目的,具体涉及如下步骤:
a、虚拟PLC运行模块循环监视虚拟执行设备的运行状态;
b、保存虚拟执行设备的数据模型至内存;
c、调用解析模块,请求解析配置文件;
d、解析模块逐条读取配置文件;
e、虚拟PLC运行模块逐条执行导入的配置文件,使用所需的数据进入运算处理;
f、执行完后,改变内存数据模型;
g、虚拟执行设备获取内存数据模型进行变化。
本发明公开的虚拟PLC仿真系统及方法,其相比现有技术而言的有益效果在于,本发明只需要一台计算机,可以在已经学会编程的情况下开展PLC的实际项目,同时,本发明模拟了硬件PLC的真实工作流程,把PLC控制程序直接导入成配置文件,立刻能够在软件中测试PLC控制程序运行是否正确,进而提高了学习、研究、测试效率,进而满足用户需求。
以上所述只是本发明较佳的实施例,并不用于限制本发明,凡在本发明的技术范围内所做的修改、等同替换或者改进等,均应包含在本发明所保护的范围内。
Claims (7)
1.一种虚拟PLC仿真系统,其特征在于,包括有安装于计算机的:
一导入模块(2),用于导入PLC程序,对PLC程序进行逻辑分析,将分析结果保存为配置文件;
一解析模块(3),用于读取配置文件;
一虚拟PLC运行模块(4),用于根据PLC运行原理对已读取的配置文件进行数据处理;
多个虚拟执行设备(5),用于根据虚拟PLC运行模块(4)的数据处理结果而仿真执行相应动作。
2.如权利要求1所述的虚拟PLC仿真系统,其特征在于,所述虚拟PLC运行模块(4)对配置文件进行数据处理后生成或者更新内存数据模型。
3.如权利要求1所述的虚拟PLC仿真系统,其特征在于,所述虚拟PLC运行模块(4)还用于循环监视多个虚拟执行设备(5)的执行状态。
4.一种虚拟PLC仿真方法,其特征在于,该方法基于一系统实现,所述系统包括有安装于计算机的一导入模块(2)、一解析模块(3)、一虚拟PLC运行模块(4)和多个虚拟执行设备(5),所述方法包括如下步骤:
步骤S1,利用PLC控制器所对应的编程软件(1)编写PLC程序;
步骤S2,利用所述导入模块(2)导入PLC程序;
步骤S3,所述导入模块(2)对PLC程序进行逻辑分析,将分析结果保存为配置文件;
步骤S4,所述虚拟PLC运行模块(4)调用解析模块(3),所述解析模块(3)读取配置文件;
步骤S5,所述虚拟PLC运行模块(4)根据PLC运行原理对已读取的配置文件进行数据处理;
步骤S6,所述虚拟PLC运行模块(4)将数据处理结果加载于相应的虚拟执行设备(5),以令所述虚拟执行设备(5)仿真执行相应动作。
5.如权利要求4所述的虚拟PLC仿真方法,其特征在于,所述步骤S5中,所述虚拟PLC运行模块(4)对配置文件进行数据处理后生成或者更新内存数据模型。
6.如权利要求5所述的虚拟PLC仿真方法,其特征在于,所述步骤S6中,所述虚拟执行设备(5)先获取内存数据模型,之后仿真执行相应动作。
7.如权利要求4所述的虚拟PLC仿真方法,其特征在于,还包括设备监视步骤:所述虚拟执行设备(5)执行相应动作的过程中,所述虚拟PLC运行模块(4)循环监视多个虚拟执行设备(5)的执行状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810639738.0A CN108614516A (zh) | 2018-06-20 | 2018-06-20 | 一种虚拟plc仿真系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810639738.0A CN108614516A (zh) | 2018-06-20 | 2018-06-20 | 一种虚拟plc仿真系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108614516A true CN108614516A (zh) | 2018-10-02 |
Family
ID=63665508
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810639738.0A Pending CN108614516A (zh) | 2018-06-20 | 2018-06-20 | 一种虚拟plc仿真系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108614516A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111025933A (zh) * | 2019-11-12 | 2020-04-17 | 哈尔滨安天科技集团股份有限公司 | 工控系统中的plc仿真装置、方法、电子设备及存储介质 |
WO2020237665A1 (zh) * | 2019-05-31 | 2020-12-03 | 西门子股份公司 | 协助用户使用自动化系统的设备、方法和计算机可读介质 |
CN115576265A (zh) * | 2022-11-21 | 2023-01-06 | 博智安全科技股份有限公司 | Plc设备模拟方法、装置、设备以及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1299093A (zh) * | 2000-12-29 | 2001-06-13 | 崔世钢 | Plc虚拟数字实验室系统 |
CN201069618Y (zh) * | 2007-07-04 | 2008-06-04 | 常熟理工学院 | Plc仿真教学装置 |
JP2009037329A (ja) * | 2007-07-31 | 2009-02-19 | Mitsubishi Electric Corp | Plcシステム模擬装置 |
CN201421670Y (zh) * | 2009-04-01 | 2010-03-10 | 苏州市职业大学 | 一种软可编程序控制器 |
CN103019104A (zh) * | 2012-12-27 | 2013-04-03 | 中南大学 | 一种可视化过程控制系统组态仿真方法 |
CN107367956A (zh) * | 2017-07-31 | 2017-11-21 | 北京金恒博远科技股份有限公司 | 一种自动化仿真系统和方法 |
-
2018
- 2018-06-20 CN CN201810639738.0A patent/CN108614516A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1299093A (zh) * | 2000-12-29 | 2001-06-13 | 崔世钢 | Plc虚拟数字实验室系统 |
CN201069618Y (zh) * | 2007-07-04 | 2008-06-04 | 常熟理工学院 | Plc仿真教学装置 |
JP2009037329A (ja) * | 2007-07-31 | 2009-02-19 | Mitsubishi Electric Corp | Plcシステム模擬装置 |
CN201421670Y (zh) * | 2009-04-01 | 2010-03-10 | 苏州市职业大学 | 一种软可编程序控制器 |
CN103019104A (zh) * | 2012-12-27 | 2013-04-03 | 中南大学 | 一种可视化过程控制系统组态仿真方法 |
CN107367956A (zh) * | 2017-07-31 | 2017-11-21 | 北京金恒博远科技股份有限公司 | 一种自动化仿真系统和方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020237665A1 (zh) * | 2019-05-31 | 2020-12-03 | 西门子股份公司 | 协助用户使用自动化系统的设备、方法和计算机可读介质 |
CN111025933A (zh) * | 2019-11-12 | 2020-04-17 | 哈尔滨安天科技集团股份有限公司 | 工控系统中的plc仿真装置、方法、电子设备及存储介质 |
CN115576265A (zh) * | 2022-11-21 | 2023-01-06 | 博智安全科技股份有限公司 | Plc设备模拟方法、装置、设备以及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Bringmann et al. | Model-based testing of automotive systems | |
CN102650966B (zh) | 一种面向复用的嵌入式软件测试方法及其测试系统 | |
JP6514465B2 (ja) | 制御システムシミュレーションシステムおよび方法 | |
CN109472061B (zh) | 一种可重用的仿真验证平台及仿真验证方法 | |
CN109406916B (zh) | 一种用于半导体存储器老化测试装置的测试平台 | |
CN108614516A (zh) | 一种虚拟plc仿真系统及方法 | |
US20100049486A1 (en) | Systems and Methods for Simulating Plant Operations | |
KR20080065936A (ko) | 동적 피드백 제어 시스템 시뮬레이팅 방법, 시뮬레이션동적 피드백 제어 시스템 준비 방법 및 동적 피드백 제어시스템 시뮬레이팅 시스템 | |
CN104598373B (zh) | 一种多技术融合的嵌入式软件测试方法 | |
CN110442043B (zh) | 卫星gnc系统实时-半物理柔性化仿真测试系统 | |
CN107886821B (zh) | 面向plc教学实验室的仿真试验台及其数据通信方法 | |
CN104898647A (zh) | 一种ecu台架自动标定仿真测试系统 | |
CN108345265A (zh) | 硬件设备的编程方法、可视化编程平台、存储器和处理器 | |
CN115563019A (zh) | 一种uvm与c联合验证方法和系统 | |
CN114385480A (zh) | 一种用于车辆fota功能自动验证的硬件在环测试系统 | |
CN111400997B (zh) | 一种基于同步执行的处理器核验证方法、系统及介质 | |
Breivold et al. | Virtualize for test environment in industrial automation | |
CN106288152B (zh) | 设备监控方法和装置 | |
CN101526805A (zh) | Plc模拟控制系统及其模拟控制方法 | |
CN103440133A (zh) | 一种芯片测试软件的开发方法和系统 | |
JPH0854907A (ja) | 検証支援システム | |
CN108228965B (zh) | 一种存储单元的仿真验证方法、装置和设备 | |
CN103678075A (zh) | 基于自动矢量生成技术的复杂微处理器测试方法 | |
CN102135762B (zh) | 时间触发型实时仿真控制系统 | |
Feng et al. | Design and application of reusable SoC verification platform |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181002 |
|
RJ01 | Rejection of invention patent application after publication |