CN103530447B - 一种基于Simulink的模型自动生成方法 - Google Patents

一种基于Simulink的模型自动生成方法 Download PDF

Info

Publication number
CN103530447B
CN103530447B CN201310446441.XA CN201310446441A CN103530447B CN 103530447 B CN103530447 B CN 103530447B CN 201310446441 A CN201310446441 A CN 201310446441A CN 103530447 B CN103530447 B CN 103530447B
Authority
CN
China
Prior art keywords
variable
model
basic module
simulink
equation
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
Application number
CN201310446441.XA
Other languages
English (en)
Other versions
CN103530447A (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.)
Beijing Runke General Technology Co Ltd
Original Assignee
Beijing Jingwei Hirain Tech Co Ltd
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 Beijing Jingwei Hirain Tech Co Ltd filed Critical Beijing Jingwei Hirain Tech Co Ltd
Priority to CN201310446441.XA priority Critical patent/CN103530447B/zh
Publication of CN103530447A publication Critical patent/CN103530447A/zh
Application granted granted Critical
Publication of CN103530447B publication Critical patent/CN103530447B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Telephonic Communication Services (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种基于Simulink的模型自动生成方法,包括:制定系统变量的命名规范;根据制定的系统变量的命名规范建立系统方程;根据建立的系统方程调用Simulink模型库中相应的基础模块;根据经过命名规范后的变量对相应的基础模块自动进行规范的命名;根据经过规范命名后的基础模块搭建模型框架,每一个系统方程形成系统的一个子系统;根据系统方程的运算规则调用Simulink模型库中相应的基础模块,生成各个子系统模型框架中的子模块。本发明通过对变量和基础模块进行命名规范,根据规范后的系统方程和基础模块对模型进行搭建,能够实现模型的自动生成,且模型风格统一,可读性高。

Description

一种基于Simulink的模型自动生成方法
技术领域
本发明涉及仿真建模技术领域,更具体地说,涉及一种基于Simulink的模型自动生成方法。
背景技术
Simulink建模工具是一种用途很广泛的工具,可以搭建线性、非线性、实时、离散系统的数学模型,通过该工具搭建的模型可以用于数学仿真,也可以编译成C代码后下载到实时仿真机进行实时仿真,因此,Simulink模型在各个领域,如:控制系统、动力系统、通讯领域等,应用非常广泛。
目前,在利用Simulink建模工具对复杂系统进行建模的过程中,一般都是设计人员根据自身对系统物理特性及描述方程的理解,利用Simulink模型提供的基础模块,如加法、积分、微分模块等,手动搭建出系统方程对应的模型。
但是,上述的手动搭建模型的过程中,存在以下问题:1、建模的工作量将会随着系统方程的复杂程度而急速增大,在模型的搭建过程中容易出现错误。2、Simulink模块的布局和位置安排将随设计人员不同而发生变化,风格不统一,可读性差。3、对于较复杂的系统,一般会将其分解为功能较独立几个子系统,通过子系统之间的配合完成工作,降低整个系统的复杂度。但是这种子系统模块划分的工作由设计人员决定,缺乏规范,且后期要替换模块时,修改工作量会很大。例如,对于导弹模型,有的设计人员将其划分为质量模块、推力模块等等,有的设计人员又划分为力与力矩模块、动力学模块等等。因此,若后期导弹模型有变动,就需要对相关的所有模块进行修改检查,以便适应新模型。
发明内容
有鉴于此,本发明提供一种基于Simulink的模型自动生成方法,通过对变量和基础模块进行命名规范,根据规范后的系统方程和基础模块自动对模型进行搭建,能够实现模型风格的统一,且提高模型的可读性。
为解决上述技术问题,本发明采用的技术方案为:一种基于Simulink的模型自动生成方法,包括:
制定系统变量的命名规范;
根据制定的系统变量的命名规范建立系统方程;
根据建立的系统方程调用Simulink模型库中相应的基础模块;
根据经过命名规范后的变量对相应的基础模块自动进行规范的命名;
根据经过规范命名后的基础模块搭建模型框架,每一个系统方程形成系统的一个子系统;
根据系统方程的运算规则调用Simulink模型库中相应的基础模块,生成各个子系统模型框架中的子模块。
优选地,所述变量的命名规范包括:变量的英文名称和变量的物理含义。
优选地,所述制定系统变量的命名规范具体为:
将系统中相同含义的变量定义为相同的英文名称和相同的物理含义。
优选地,所述根据制定的系统变量的命名规范建立系统方程具体为:
将系统方程中含义相同的变量用规范的相同的英文名称代替。
从上述的技术方案可以看出,本发明公开的一种基于Simulink的模型自动生成方法,首先对系统的变量进行命名规范,其次根据制定的系统变量命名规范建立系统方程,其次,根据建立的系统方程调用Simulink模型库中相应的基础模块,根据经过命名规范后的变量对相应的基础模块自动进行规范的命名,其次根据经过规范命名后的基础模块搭建系统的模型框架,形成系统的子系统,最后根据系统方程的运算规则调用Simulink模型库中相应的基础模块,生成各个子系统模型框架中的子模块,最终完成系统模型的搭建。本发明中通过对系统的变量制定命名规范,能够使得建立的系统方程的表现方式唯一,且在系统方程的建立过程中不容易出错。通过根据经过命名规范后的变量对相应的基础模块进行命名规范,能够使得基础模块的名称统一与相对应的变量相对应,使得根据命名规范后的基础模块搭建的模型具有统一的风格。通过将系统的每一个系统方程划分为一个子系统,在后期需要对模型更改时,只需对相应的子系统进行更改,大大减小了修改工作量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明公开的一种基于Simulink的模型自动生成方法;
图2为实施例公开的模型框架示意图;
图3为实施例公开的子模块的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种基于Simulink的模型自动生成方法,通过对变量和基础模块进行命名规范,根据规范后的系统方程和基础模块自动对模型进行搭建,能够实现模型风格的统一,且提高模型的可读性。
如图1所示,为本发明公开的一种基于Simulink的模型自动生成方法,包括:
S101、制定系统变量的命名规范;
S102、根据制定的系统变量的命名规范建立系统方程;
S103、根据建立的系统方程调用Simulink模型库中相应的基础模块;
S104、根据经过命名规范后的变量对相应的基础模块自动进行命名规范;
S105、根据经过命名规范后的基础模块搭建模型框架,每一个系统方程形成系统的一个子系统;
S106、根据系统方程的运算规则调用Simulink模型库中相应的基础模块,生成各个子系统模型框架中的子模块。
上述方法的原理为:首先,设计人员根据系统的特点和领域习惯,对系统中的所有变量进行统一的命名规范,将系统中表示相同含义的变量定义为相同的英文名称和相同的物理含义。例如:统一将系统中的变量电流i用英文字母A表示,A的物理含义为电流。若后续需要对变量进行增加、删减或修改,设计人员可以根据相同的方法对变量重新进行统一的命名规范。
其次,对系统所包含的所有方程,根据制定的系统变量的命名规范进行建立。这样即便是由不同的设计人员进行建模,形成的系统方程也是相同的。同时,如果后期需要对系统中的某个变量进行更改,只需更改该变量所在的系统方程即可,无需对整个系统进行修改。
其次,根据建立的系统方程,调用Simulink模型库中与各个变量相对应的基础模块,同时将调用出的基础模块根据经过命名规范后的变量自动进行重新命名,使基础模块的名称与相应的变量相对应。例如:原有的基础模块的名称为From1、From2、From3,经过命名规范后形成的基础模块的名称为From_v1,From_v2,From_v3,其中v1、v2、v3为变量。
其次,根据经过规范命名后的基础模块对系统模型框架进行搭建,每一个系统方程构成系统模型的一个子系统,使得每一个方程都由经过命名规范后的基础模块构成。同样,采用此种方式,即便是由不同设计人员进行建模,形成的模型框架也是相同的。
最后,根据系统方程的运算规则,调用Simulink模型库中相应的基础模块,生成各个子系统模型框架中的子模块,最终完成系统模型的搭建。
为了更好的对本发明进行说明,下面进行举例说明。
假设需要进行建模的系统包含以下方程:
首先将系统中的变量v1统一命名规范为v1,v1的物理含义为变量一,将系统中的变量v2统一命名规范为v2,v2的物理含义为变量二,将系统中的v3统一命名规范为v3,v3的物理含义为变量三。
其次,根据制定的系统变量的命名规范建立系统方程,建立的系统方程如下:
其次,根据建立的系统方程自动调用Simulink模型库中相应的基础模块,并对调用的基础模块进行规范的命名,然后根据经过规范命名后的基础模块搭建模型框架,每一个系统方程构成一个子系统,形成的模型框架如图2所示。图2中,左侧的v1、v2和v3是系统模型变量,与方程(2)左侧的变量对应。图2的中间部分Subs_v1、Subs_v2和Subs_v3为方程式对应的计算子模块,这些子模块的输入是方程中的所有变量,在子模块内部实现时,再对所需要的变量进行挑选。图2中,右侧是Subs_v1、Subs_v2和Subs_v3子模块的输出。
模型框架中使用到Simulink模型库中的From、Goto、Subsystem和BusCreator四种基本模块,可以通过调用Simulink模块的API函数(如add_block)添加子模块,并对新添加模块名称及位置进行设置,同时完成模块之间的连线。
最后,根据每个变量方程的表达式,自动生成图2中Subs_v1、Subs_v2和Subs_v3中对应的各子模块。以方程(2)中的第一个方程为例,如图3所示,首先解析方程右侧需要哪些变量作为输入,然后添加Bus Selector模块,设置其参数,使其自动从输入的所有变量中挑选需要的输入变量,例如,方程(2)中的第一个方程需要的输入变量为v2和v3,BusSelector模块就从所有的输入变量v1、v2和v3中将输入变量v2和v3挑选出,然后添加Mux模块将输入变量v2和v3组合,作为子模块的输入,然后将状态方程表达式写入子模块,如图3所示的f(u)子模块,最后根据方程类型,若需要添加积分环节,则在表达式模块输出后,自动添加积分环节,如图3所示的1/s积分模块。方程(2)中的第一个方程自动生成的子模块形式如图3所示。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (4)

1.一种基于Simulink的模型自动生成方法,其特征在于,包括:
制定所有系统变量的统一的命名规范;
根据制定的系统变量的命名规范建立所有的系统方程;
根据建立的系统方程调用Simulink模型库中相应的基础模块;
根据经过命名规范后的变量对相应的基础模块自动进行规范的命名;
根据经过规范命名后的基础模块搭建模型框架,每一个系统方程形成系统的一个子系统;
根据系统方程的运算规则调用Simulink模型库中相应的基础模块,自动生成各个子系统模型框架中的子模块。
2.根据权利要求1所述的方法,其特征在于,所述变量的命名规范包括:变量的英文名称和变量的物理含义。
3.根据权利要求2所述的方法,其特征在于,所述制定系统变量的命名规范具体为:
将系统中相同含义的变量定义为相同的英文名称和相同的物理含义。
4.根据权利要求3所述的方法,其特征在于,所述根据制定的系统变量的命名规范建立系统方程具体为:
将系统方程中含义相同的变量用规范的相同的英文名称代替。
CN201310446441.XA 2013-09-26 2013-09-26 一种基于Simulink的模型自动生成方法 Active CN103530447B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310446441.XA CN103530447B (zh) 2013-09-26 2013-09-26 一种基于Simulink的模型自动生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310446441.XA CN103530447B (zh) 2013-09-26 2013-09-26 一种基于Simulink的模型自动生成方法

Publications (2)

Publication Number Publication Date
CN103530447A CN103530447A (zh) 2014-01-22
CN103530447B true CN103530447B (zh) 2017-04-12

Family

ID=49932454

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310446441.XA Active CN103530447B (zh) 2013-09-26 2013-09-26 一种基于Simulink的模型自动生成方法

Country Status (1)

Country Link
CN (1) CN103530447B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106775757A (zh) * 2016-12-31 2017-05-31 惠州市蓝微新源技术有限公司 一种bms的matlab建模集成方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102622470A (zh) * 2012-02-21 2012-08-01 重庆邮电大学 一种通用汽车代码转换方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7593944B2 (en) * 2004-08-17 2009-09-22 National Instruments Corporation Variable abstraction

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102622470A (zh) * 2012-02-21 2012-08-01 重庆邮电大学 一种通用汽车代码转换方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
倒立摆一级控制算法设计和半实物仿真验证;罗喜霜等;《系统仿真学报》;20051231;第17卷;全文 *
基于Simulink/Stateflow模型的代码自动生成及其软件质量评估;冯香枝等;《2006年恒润科技用户大会论文集》;20061025;全文 *
支持Simulink/Stateflow的自动代码生成器研究与实现;周建华;《中国优秀硕士学位论文全文数据库 信息科技辑》;20110715(第7期);第61页 *
第七章Simulink 基础;google;《URL:jpk.hrbust.edu.cn/cscad/dzja/d7.pdf》;20091115;第107-108页 *

Also Published As

Publication number Publication date
CN103530447A (zh) 2014-01-22

Similar Documents

Publication Publication Date Title
Neema et al. Model-based integration platform for FMI co-simulation and heterogeneous simulations of cyber-physical systems
CN109815560A (zh) 一种基于bim的设计算量施工全生命周期应用的方法
CN102609596A (zh) 生成发电厂继电保护整定计算报告的系统及方法
CN107908830A (zh) 基于fmi标准的模型转换方法和模型转换系统
CN106970999B (zh) 一种bpa数据库建模与维护方法
Bromberg et al. An equivalent circuit formulation of the power flow problem with current and voltage state variables
CN109858161A (zh) 一种基于Midas建模和Matlab转换的Abaqus网格划分方法
CN102841953A (zh) 一种基于宏设计集成电路版图的方法
CN108920752A (zh) 一种行波管结构尺寸同步更新与迭代设计方法
CN108959671B (zh) 半桥和全桥型模块化多电平换流器的实时仿真建模方法
CN103530447B (zh) 一种基于Simulink的模型自动生成方法
CN111581700A (zh) 基于catia模型添加bim属性并输出bim属性表的方法
CN105373008A (zh) 一种电力系统用全物理模型仿真方法
CN114818286A (zh) 一种工程机械整机仿真模型构建系统及方法
CN106951593A (zh) 一种生成保护测控装置的配置文件的方法和装置
Hou et al. Development and application of an extensible engineering simulator for NPP DCS closed-loop test
CN106126871A (zh) 一种pscad电磁暂态仿真用的调速器模型建模方法
CN103745067A (zh) 发电机定子端部参数化自动建模系统及方法
CN107272446A (zh) 一种面向控制算法的仿真平台及仿真方法
CN105046002B (zh) 光电复合海缆材料物性参数自动修正方法
CN105653825A (zh) 一种基于Groningen模型的建筑设计构件生成系统及方法
CN115329582A (zh) 一种有源配电网多实时仿真机互联同步系统及方法
CN108736508B (zh) 一种电压穿越控制仿真方法及系统
CN108694300A (zh) 一种有限元子模型自动生成的方法
CN107391815A (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
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 4 / F, building 1, No.14 Jiuxianqiao Road, Chaoyang District, Beijing 100020

Patentee after: Beijing Jingwei Hirain Technologies Co.,Inc.

Address before: 8 / F, block B, No. 11, Anxiang Beili, Chaoyang District, Beijing 100101

Patentee before: Beijing Jingwei HiRain Technologies Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230531

Address after: 100192 5th floor, Zhizhen building, 7 Zhichun Road, Haidian District, Beijing

Patentee after: BEIJING RUNKE GENERAL TECHNOLOGY Co.,Ltd.

Address before: 4 / F, building 1, No.14 Jiuxianqiao Road, Chaoyang District, Beijing 100020

Patentee before: Beijing Jingwei Hirain Technologies Co.,Inc.