CN110059380A - 一种基于Simulink的电气教育三维虚拟仿真方法 - Google Patents
一种基于Simulink的电气教育三维虚拟仿真方法 Download PDFInfo
- Publication number
- CN110059380A CN110059380A CN201910266062.XA CN201910266062A CN110059380A CN 110059380 A CN110059380 A CN 110059380A CN 201910266062 A CN201910266062 A CN 201910266062A CN 110059380 A CN110059380 A CN 110059380A
- Authority
- CN
- China
- Prior art keywords
- simulink
- unity
- simulation
- file
- parameter
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
Abstract
本发明提供了一种基于Simulink的电气教育三维虚拟仿真方法,包括:将Unity仿真软件中的建模数据通过TCP通道,传输至MATLAB中的Simulink中进行仿真计算,并将仿真计算结果通过TCP通道实时返回至Unity仿真软件,以达到实时动态仿真的目的。本发明的有益效果是:本发明所提出的技术方案借助MATLAB与Unity仿真软件间的TCP通道,实时传递实验中的建模数据,Simulink计算后立即返回仿真结果,全程无需人工干预,可实现实时动态仿真。
Description
技术领域
本发明涉及电气教育三维虚拟仿真领域,尤其涉及一种基于Simulink的电气教育三维虚拟仿真方法。
背景技术
电气教学用三维虚拟仿真软件一般基于Unity等三维引擎建立,其本身不具备仿真计算能力。通常解决该问题的方法是通过MATLAB,人工在Simulink中完成仿真建模,导出为可执行的库(如DLL),将该库嵌入到虚拟仿真软件中进行调用。
这种技术的局限性在于,Simulink进行仿真建模时,需设定好固定的模型连接关系和参数。若三维虚拟仿真中的模型连接关系和参数变动的话,需人工重新在Simulink中进行仿真建模并导出,不具备实时动态仿真的能力。因此,本发明提出一种可以实时动态仿真的掉漆教育三维虚拟仿真方法。
发明内容
为了解决上述问题,本发明提供了一种基于Simulink的电气教育三维虚拟仿真方法。
一种基于Simulink的电气教育三维虚拟仿真方法,主要包括以下步骤:
S101:当进行虚拟仿真实验时,学生根据待仿真的电路,在Unity仿真软件中完成对应的电气元件模型连接拓扑和参数设置,得到待仿真电路的电气元件模型连接拓扑和参数;
S102:Unity仿真软件根据得到的待仿真电路的电气元件模型连接拓扑和参数生成待仿真电路的建模数据;所述建模数据包括:Simulink模型描述、模型连接拓扑描述和模型参数数据;
S103:通过TCP通道将所述建模数据传输至MATLAB中预先建立的m文件;并判断Simulink是否为开启状态?若是,则重启Simulink,转到步骤S104;否则,启动Simulink,并转到步骤S104;
S104:MATLAB通过所述m文件将所述建模数据传入Simulink;
S105:Unity仿真软件通过TCP通道向MATLAB发出开始计算指令,以通过m文件调用Simulink进行仿真计算,并在仿真计算完成后将对应的仿真计算结果通过TCP通道返回至Unity仿真软件;
S106:Unity仿真软件根据接收到的所述仿真计算结果在界面上显示所述待仿真电路的三维虚拟仿真数据;
S107:Unity仿真软件界面上的关闭实验按钮是否被触发?若是,则Unity仿真软件通过MATLAB关闭Simulink;否则,到步骤S108;
S108:Unity仿真软件判断所述待仿真电路的电气元件模型连接拓扑或者参数是否被修改?若是,则到步骤S109;否则,保持现有仿真计算结果不变,并返回步骤S106;
S109:所述待仿真电路的电气元件模型连接拓扑和参数均被修改?若是,则返回步骤S102;否则,到步骤S110;
S110:所述待仿真电路的电气元件模型连接拓扑未被修改,但参数被修改?若是,则到步骤S111;否则,保持现有仿真计算结果不变,并返回步骤S106;
S111:Unity仿真软件根据修改后的参数,生成新的模型参数数据,并通过TCP通道将所述新的模型参数数据传输至MATLAB中运行的所述m文件,以更新m文件中原有的模型参数数据,进而通过m文件将所述新的模型参数数据传入Simulink,并返回步骤S105。
进一步地,步骤S103中,所述m文件为根据待仿真电路的功能需求,预先在MATLAB中建立好的m文件。
进一步地,所述m文件的功能包括:1)、启动和重启Simulink以及向Simulink中传入建模数据;2)、修改模型参数数据;3)、调用Simulink进行仿真计算并通过TCP通道返回计算结果至Unity仿真软件。
进一步地,步骤S103中,所述TCP通道为MATLAB通过m文件与Unity仿真软件建立的TCP服务端预先建立好的数据传输通道。
本发明提供的技术方案带来的有益效果是:本发明所提出的技术方案借助MATLAB与Unity仿真软件间的TCP通道,实时传递实验中的建模数据,Simulink计算后立即返回仿真结果,全程无需人工干预,可实现实时动态仿真。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明实施例中一种基于Simulink的电气教育三维虚拟仿真方法的流程图;
图2是本发明实施例中一种基于Simulink的电气教育三维虚拟仿真方法的详细流程图。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图详细说明本发明的具体实施方式。
本发明的实施例提供了一种基于Simulink的电气教育三维虚拟仿真方法。
请参考图1,图1是本发明实施例中一种基于Simulink的电气教育三维虚拟仿真方法的流程图,具体包括如下步骤:
S101:当进行虚拟仿真实验时,学生根据待仿真的电路,在Unity仿真软件中完成对应的电气元件模型连接拓扑和参数设置,得到待仿真电路的电气元件模型连接拓扑和参数;
S102:Unity仿真软件根据得到的待仿真电路的电气元件模型连接拓扑和参数生成待仿真电路的建模数据;所述建模数据包括:Simulink模型描述、模型连接拓扑描述和模型参数数据;
S103:通过TCP通道将所述建模数据传输至MATLAB中预先建立的m文件;并判断Simulink是否为开启状态?若是,则重启Simulink,转到步骤S104;否则,启动Simulink,并转到步骤S104;
S104:MATLAB通过所述m文件将所述建模数据传入Simulink;
S105:Unity仿真软件通过TCP通道向MATLAB发出开始计算指令,以通过m文件调用Simulink进行仿真计算,并在仿真计算完成后将对应的仿真计算结果通过TCP通道返回至Unity仿真软件;
S106:Unity仿真软件根据接收到的所述仿真计算结果在界面上显示所述待仿真电路的三维虚拟仿真数据;
S107:Unity仿真软件界面上的关闭实验按钮是否被触发?若是,则Unity仿真软件通过MATLAB关闭Simulink;否则,到步骤S108;
S108:Unity仿真软件判断所述待仿真电路的电气元件模型连接拓扑或者参数是否被修改?若是,则到步骤S109;否则,保持现有仿真计算结果不变,并返回步骤S106;
S109:所述待仿真电路的电气元件模型连接拓扑和参数均被修改?若是,则返回步骤S102;否则,到步骤S110;
S110:所述待仿真电路的电气元件模型连接拓扑未被修改,但参数被修改?若是,则到步骤S111;否则,保持现有仿真计算结果不变,并返回步骤S106;
S111:Unity仿真软件根据修改后的参数,生成新的模型参数数据,并通过TCP通道将所述新的模型参数数据传输至MATLAB中运行的所述m文件,以更新m文件中原有的模型参数数据,进而通过m文件将所述新的模型参数数据传入Simulink,并返回步骤S105。
详细流程图如图2所示。
步骤S103中,所述m文件为根据待仿真电路的功能需求,预先在MATLAB中建立好的m文件;
所述m文件的功能包括:1)、启动和重启Simulink以及向Simulink中传入建模数据;2)、修改模型参数数据;3)、调用Simulink进行仿真计算并通过TCP通道返回计算结果至Unity仿真软件。
步骤S103中,所述TCP通道为MATLAB通过m文件与Unity仿真软件建立的TCP服务端预先建立好的数据传输通道,建立方法包括:
S201:启动Unity仿真软件,并建立TCP服务器连接;
S202:在TCP服务器中输入调用命令,以调用CMD.exe;
S203:启动MATLAB,并在MATLAB中运行m文件,进而通过m文件与Unity仿真软件建立的TCP服务端进行连接。
所述调用命令为:
Matlab.exe-nojvm-nosplash-nodesktop-nodisplay-noFigureWindows-automation-rconnect_server;
本发明的有益效果是:本发明所提出的技术方案借助MATLAB与Unity仿真软件间的TCP通道,实时传递实验中的建模数据,Simulink计算后立即返回仿真结果,全程无需人工干预,可实现实时动态仿真。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (4)
1.一种基于Simulink的电气教育三维虚拟仿真方法,其特征在于:包括以下步骤:
S101:当进行虚拟仿真实验时,学生根据待仿真的电路,在Unity仿真软件中完成对应的电气元件模型连接拓扑和参数设置,得到待仿真电路的电气元件模型连接拓扑和参数;
S102:Unity仿真软件根据得到的待仿真电路的电气元件模型连接拓扑和参数生成待仿真电路的建模数据;所述建模数据包括:Simulink模型描述、模型连接拓扑描述和模型参数数据;
S103:通过TCP通道将所述建模数据传输至MATLAB中预先建立的m文件;并判断Simulink是否为开启状态?若是,则重启Simulink,转到步骤S104;否则,启动Simulink,并转到步骤S104;
S104:MATLAB通过所述m文件将所述建模数据传入Simulink;
S105:Unity仿真软件通过TCP通道向MATLAB发出开始计算指令,以通过m文件调用Simulink进行仿真计算,并在仿真计算完成后将对应的仿真计算结果通过TCP通道返回至Unity仿真软件;
S106:Unity仿真软件根据接收到的所述仿真计算结果在界面上显示所述待仿真电路的三维虚拟仿真数据;
S107:Unity仿真软件界面上的关闭实验按钮是否被触发?若是,则Unity仿真软件通过MATLAB关闭Simulink;否则,到步骤S108;
S108:Unity仿真软件判断所述待仿真电路的电气元件模型连接拓扑或者参数是否被修改?若是,则到步骤S109;否则,保持现有仿真计算结果不变,并返回步骤S106;
S109:所述待仿真电路的电气元件模型连接拓扑和参数均被修改?若是,则返回步骤S102;否则,到步骤S110;
S110:所述待仿真电路的电气元件模型连接拓扑未被修改,但参数被修改?若是,则到步骤S111;否则,保持现有仿真计算结果不变,并返回步骤S106;
S111:Unity仿真软件根据修改后的参数,生成新的模型参数数据,并通过TCP通道将所述新的模型参数数据传输至MATLAB中运行的所述m文件,以更新m文件中原有的模型参数数据,进而通过m文件将所述新的模型参数数据传入Simulink,并返回步骤S105。
2.如权利要求1所述的一种基于Simulink的电气教育三维虚拟仿真方法,其特征在于:步骤S103中,所述m文件为根据待仿真电路的功能需求,预先在MATLAB中建立好的m文件。
3.如权利要求2所述的一种基于Simulink的电气教育三维虚拟仿真方法,其特征在于:所述m文件的功能包括:1)、启动和重启Simulink以及向Simulink中传入建模数据;2)、修改模型参数数据;3)、调用Simulink进行仿真计算并通过TCP通道返回计算结果至Unity仿真软件。
4.如权利要求1所述的一种基于Simulink的电气教育三维虚拟仿真方法,其特征在于:步骤S103中,所述TCP通道为MATLAB通过m文件与Unity仿真软件建立的TCP服务端预先建立好的数据传输通道。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910266062.XA CN110059380B (zh) | 2019-04-03 | 2019-04-03 | 一种基于Simulink的电气教育三维虚拟仿真方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910266062.XA CN110059380B (zh) | 2019-04-03 | 2019-04-03 | 一种基于Simulink的电气教育三维虚拟仿真方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110059380A true CN110059380A (zh) | 2019-07-26 |
CN110059380B CN110059380B (zh) | 2022-09-13 |
Family
ID=67318229
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910266062.XA Active CN110059380B (zh) | 2019-04-03 | 2019-04-03 | 一种基于Simulink的电气教育三维虚拟仿真方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110059380B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111723473A (zh) * | 2020-05-30 | 2020-09-29 | 同济大学 | 一种三维可视化协同仿真系统 |
CN111880436A (zh) * | 2020-07-30 | 2020-11-03 | 河南工业职业技术学院 | 一种电气控制电路仿真系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8744829B1 (en) * | 2007-07-19 | 2014-06-03 | The Mathworks, Inc. | Computer aided design environment with electrical and electronic features |
US20140180644A1 (en) * | 2012-12-21 | 2014-06-26 | Rockwell Automation Technologies, Inc. | Integration of simulation of a machine for industrial automation |
CN106407515A (zh) * | 2016-08-31 | 2017-02-15 | 哈尔滨工程大学 | 一种基于pc机平台的电气类虚拟实验的方法 |
-
2019
- 2019-04-03 CN CN201910266062.XA patent/CN110059380B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8744829B1 (en) * | 2007-07-19 | 2014-06-03 | The Mathworks, Inc. | Computer aided design environment with electrical and electronic features |
US20140180644A1 (en) * | 2012-12-21 | 2014-06-26 | Rockwell Automation Technologies, Inc. | Integration of simulation of a machine for industrial automation |
CN106407515A (zh) * | 2016-08-31 | 2017-02-15 | 哈尔滨工程大学 | 一种基于pc机平台的电气类虚拟实验的方法 |
Non-Patent Citations (3)
Title |
---|
何慧等: "基于LabVIEW和Matlab的电力电子技术虚拟实验平台的设计开发", 《沈阳工程学院学报(自然科学版)》 * |
张敬南等: "实验教学中虚拟仿真技术应用的研究", 《实验技术与管理》 * |
张福鼎等: "Matlab可视化虚拟仿真在通信原理教学实践中的应用研究", 《湖北师范大学学报(自然科学版)》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111723473A (zh) * | 2020-05-30 | 2020-09-29 | 同济大学 | 一种三维可视化协同仿真系统 |
CN111880436A (zh) * | 2020-07-30 | 2020-11-03 | 河南工业职业技术学院 | 一种电气控制电路仿真系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110059380B (zh) | 2022-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108845802A (zh) | 无人机集群编队交互式仿真验证系统及实现方法 | |
CN110059380A (zh) | 一种基于Simulink的电气教育三维虚拟仿真方法 | |
CN110457747A (zh) | 一种基于ns3和matlab的网络化控制系统协同仿真方法 | |
CN103942385B (zh) | 一种基于人体动作捕捉系统的飞机管路装配仿真方法 | |
CN109814990A (zh) | 一种分布式并行协同仿真架构 | |
Sung et al. | Framework for simulation of hybrid systems: Interoperation of discrete event and continuous simulators using HLA/RTI | |
CN102622262B (zh) | 基于modelica建模语言的分布式实时交互仿真系统 | |
EP0777180A3 (en) | System and method for simulation of computer systems combining hardware and software interaction | |
CN105468817B (zh) | 一种多模型实时仿真系统 | |
CN108427776A (zh) | 分布式全数字联合仿真系统与方法 | |
CN104573287B (zh) | 基于界面绑定统一模型的数字仿真框架设计方法 | |
CN105915304A (zh) | 一种面向卫星移动通信的系统级仿真演示验证方法 | |
CN104714823B (zh) | 基于OpenStack的新建主机配置方法 | |
CN104933638A (zh) | 一种省地县多级调控联合仿真方法 | |
CN109379233A (zh) | 一种云仿真平台模型安全保障系统、方法、服务器及终端 | |
WO2022000972A1 (zh) | 任务的处理方法和装置、存储介质、电子装置 | |
CN112947125B (zh) | 一种基于高速串行总线的嵌入式无人机集群仿真系统 | |
CN107566204A (zh) | 激励报文产生控制方法、装置及逻辑检测设备 | |
CN106200448A (zh) | 一种工业接口实施远程映射系统 | |
CN104749966B (zh) | 一种全数字仿真与半实物仿真动态切换的方法与系统 | |
CN105893680B (zh) | 数据处理的方法和装置 | |
CN110675509A (zh) | 一种基于三维建模的可编辑综合仿真方法及其系统 | |
Schiller et al. | Emulating vehicular ad hoc networks for evaluation and testing of automotive embedded systems | |
CN112973130B (zh) | 虚拟场景的回放模型构建方法、装置、设备及存储介质 | |
CN115797517A (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 |