搜档网
当前位置:搜档网 › LS-DYNA

LS-DYNA

LS-DYNA
LS-DYNA

LS-DYNA在1976年由美国劳伦斯?利沃莫尔国家实验室(Lawrence Livermore National Laboratory)

J.O.Hallquist博士主持开发,时间积分采用中心差分格式,当时主要用于求解三维非弹性结构在高速碰撞、爆炸

冲击下的大变形动力响应,是北约组织武器结构设计的分析工具。LS-DYNA的源程序曾在北约的局域网Pubic

Domain公开发行,因此在广泛传播到世界各地的研究机构和大学。从理论和算法而言,LS-DYNA是目前所有的显式

求解程序的鼻祖和理论基础。

1988年,J.O.Hallquist创建利沃莫尔软件技术公司(Livermore Software Technology Corporation),LS-DYNA

开始商业化进程,总体来看,到目前为止在单元技术、材料模式、接触算法以及多场耦合方面获得非常大的进步

以下为LS-DYNA初学者常见的问题:

一、LS-DYNA与市面上其它的前处理软件兼容性如何?

解答:由于LS-DYNA是全球使用率最高的结构分析软件,因此其它的前处理软件与LS-DYNA是完全兼容的。在此

要强调的是:LS-DYNA的官方前处理程序为FEMB,因为FEMB是专门为LS-DYNA量身订作的前处理程序,有许多设定

条件及架构逻辑是其它前处理软件所难望其项背的,为了避免在学习LS-DYNA的过程及操作上产生困扰,强烈建议

使用者采用原厂出品的FEMB来做为LS-DYNA的前处理工具,使用者必定更能体会LS-DYNA直觉式的设定与强大的分

析能力。.

二、LS-DYNA似乎很重视「Contact Algorithm」,这是为什么?

解答:是的,LS-DYNA很早以前就已经发展「接触算法」,这是因为基础力学所分析的对像均只考虑「力的受体

」,故输入条件皆为外力量值。然而在真实情况下,物体受力通常是因为与其它的物体发生

「接触」(Contact)

才受力,此时外力量值是无法预期的,应该输入的条件往往都是几何上的接触条件。因为有完备的接触力学演算

方式,LS-DYNA才得以忠实的仿真现实环境的复杂结构行为。

三、如果要利用LS-DYNA进行MPP(平行运算)的计算,硬件配备及操作系统有无特殊需求?解答:不论是PC cluster、工作站及一般的PC环境,都适合执行LS-DYNA的MPP平行运算功能,一般我们还是会

建议要用来执行平行运算的计算机群组,彼此的等级宜尽量一致;操作系统方面并无特别需求,以一般的windows

2000、LINUX或是UNIX皆可执行。国外已有很多厂商利用非办公时间,将办公室内的计算机串连在一起,配合

LS-DYNA来分析问题,宛如一部超级计算机,不仅可以有效提升研发的竞争力,同时亦可弹性地运用计算机资源,

一举数得。

四、FEMB能够自动产生有限元素网格吗?

解答:FEMB当然可以自动产生有限元素网格,使用者再也不必费心在每个几何边界上指定结点数量,仅需要输

入元素尺寸的参考值,FEMB便会依此产生网格。当然,如果能够先在CAD进行合理的简化,auto-mesh得到的元素

品质会更好。在国外CAE领域有两句名言:「Well Done is Quickly Done」、「Quality Mesh leads to

Quality Analysis」,因此势流科技建议使用者应该多花点心思在前处理上,这对后续的分析工作有着莫大的帮

助。

五、实际的产品CAD图文件,有许多复杂的几何造型,这些feature是否都该纳入分析考量?解答:这样的问题事实上是属于「Engineer Judgement」的层次,而非软件层次的问题。使用者当然可以将

完全按照CAD几何来建立有限元素的模型,然而任何一位有经验的工程师一定会先将不必要的几何造型予以忽略,

以提升分析效益,并将分析课题明确化。以右图的Block为例,有些工程师会以Solid element 来建构完整的模

型,有些则采用Shell element,甚至有些人会采用1D element...,这些方式都无伤大雅,重点是工程师如何从

分析结果获得充份的信息。势流科技除了提供软件分析技术之外,同时更致力于协助业界将CAE导入于生产流

程的正确位阶,培养正确的CAE分析观念,以提升产品研发品质,缩短生产流程。

六、LS-DYNA是否只能进行壳元素的分析?

解答:LS-DYNA不只能分析实体元素(Tetra、Hexa)、薄/厚壳元素(Quad.、Tri),同时还有梁元素、质点、

Spring/Damper、spotweld等元素型态,另外还有SPH element。之所以建议台湾电子产业尽量以壳元素来仿真

壳件产品,是由于电子产品的组件当中,板壳类占了90%以上,基于结构行为、准确性及分析效能的考量。除非使

用者有特殊的分析需求,否则并不建议采用实体元素来仿真板壳类型的产品组件。我们藉由右边的简单案例,

以了解不同元素型态在仿真壳件产品的结果表现:(1) 实体元素在板壳厚度方向上至少需要分割三层以上,其

位移变形量才能收敛至一定值;而壳元素及厚壳元素仅需一层,在位移量上即可达到理想精度。(2) 若是发生

降伏产生大变形,在厚度方向上即使分割8层以上的实体元素,其掌握材料塑性应变的收敛速度仍然相当缓慢,而

付出的时间代价为shell element的25倍以上。厚壳元素的运算速度及精度与三层实体元素相当,然而就塑性应变

的精度而言,厚壳元素的表现比实体元素要好太多。

七、在LS-DYNA里该如何强制刚体运动?

解答:CAE分析常需要藉由刚体运动,以简化复杂物理行为。应用技巧有二:给定初始速度或是强制运动轨迹

(prescribed motion)。在LS-DYNA中,预设的刚体旋转轴位置为刚体的质心,若要强制刚体绕特定轴旋转,只

要利用FEMB在PART选单里设定INERTIA相关的数值即可。其中的XC、YC、ZC为旋转中心所在位置,即旋转轴通过

的地方(内定值为刚体质心)。TM为Translational Mass,一般状况输入质量即可。IXX~IZZ 为此刚体质心位置相

对于旋转中心的惯性矩,一般CAD软件应已具备此项计算功能,因此使用者无须再额外进行人工运算。以Pro/E

的操作为例:1. 确认图文件的单位(公制、英制)。2. 于旋转中心建立坐标系。3. 选择「

Analysis」à「Model Analysis」à「Model Mass Properties」。4. 选择步骤2.产生之坐标系。Pro/E 计算

结果会有二组Inertia Tensor,其中「Inertia at Center of Gravity with respect to XXX coordinate Frame

」才是我们要的,再将相对应的数值填入IXX~IZZ即可。

八、在LS-POST如何显示应变分布图?

解答:LS-DYNA内定的输出控制并不包含应变值。如果您希望能有应变值的输出的话,请在FEMB里依照下列步骤完

成设定即可。步骤1:点选「DynaMisc」,进入「DATABASE」选项。步骤2:请在「Extent」选项中新增一个「

Binary」的输出控制。步骤3:设定STRFLG=1即可。步骤4:分析完成后,使用者可直接在LS-Pre/Post中,点选

「Fcomp」à「Strain」观察计算后的应变分布图。LS-Pre/Post还有其它关于应变的显示按键,如:「Infin」、

「Green」及「Almans」等,基本上这些应变量是根据d3plot档案中所记录的位置资料,经过微分计算而得到。如

果点位取得够密的话,理论上会与板壳中性平面的应变值相当接近。

九、强制结构体绕着特定轴旋转的时候,为何会出现奇怪的变形?

解答:在定义物体旋转自由度的时候,常会以*Initial_velocity_generation来设定角速度,然而这样的方式

会将离心的效果纳入考量,特别是当角速度值很大的时候,,旋转物体会由旋转中心沿半径方向膨胀变形。因此

,如果不希望有离心膨胀的效果的话,可以利用*Load_body_rz(or rx、ry),并配合*Define_curve给定角速度对

应时间的关系曲线。几个要注意的地方如下:步骤1:起始速度的设定选项,请设定Phase=1,以进行dynamic

relaxation。步骤2:定义角速度的曲线中,必须开启stress initialization的功能(SIDR=1)。步骤3:在

control card的部份须开启accuracy及dynamic relaxation的功能。步骤4:参考范例请至下载区download。

十、LS-DYNA该如何进行振动模态的分析设定?

解答:模态分析即为特征值分析,须采取Implicit的方式求解,您只需要在前处理程序FEMB 里依照下列方骤进

行设定即可。步骤1:点选「DynaMisc」,进入「Control」选项。步骤2:将一般Implicit 功能选项开启,其中

一项即为「IMP.EIGENV ALUE」。步骤3:最基本的设定,您只需要设定模态个数(NEIG)的值即可。步骤4:LS-DYNA

针对特征值,还有许多非常实用的输出控制,详细用法请参考LS-DYNA Keyword User’s Manual V ol. I,或是直

接与势流科技的工程师联络。

十一、究竟采用Implicit及Explicit的分析方式会有多大的差异性?

解答:右图为材料试片拉伸试验的仿真,分别采用Implicit及Explicit的分析方式。依照静力的观念,其破坏

点必发生于试片中点;然而若是以瞬间拉扯试片的话,因为应力传递速度与路径的关系,其破坏点未必会发生在

中点,一般的静力软件必定不能满足真实的结构行为。事实上,ASTM对于材料性质试验,都有相关的规范以定

义外力加载的速率,也就是因为这个原因。参考结构动力学及数值分析相关参考书,对于Explicit /

Implicit将有更详细的说明。

十二、要如何设定才能让LS-DYNA自动进行Implicit / Explicit的切换?

解答:在LS-DYNA 960的版本即有Implicit / Explicit切换的功能,使用者可在FEMBàDynaMiscàIMP.General的

第一个字段输入「-100」,表示Implicit / Explicit的切换时间是依据#100的load curve来定义的。而在

LS-DYNA 970最新版本更提供了自动切换的功能,做法如下:

步骤1:进入FEMB--DynaMisc--CONTROL

步骤2:进入IMP.AUTO选项,给定DTEXP的值,此值即为explicit分析所需的计算步长。步骤3:进入IMP.General选项,设定IMFLAG=4 or 5即可。

十三、评估了很多结构软件,发现LS-DYNA是唯一能够将Implicit与Explicit code整合在一起的软件,这对实际

的分析工作有何帮助?

解答:LS-DYNA将Implicit及Explicit两种不同的求解方式整合在一起,对于初学者而言可以降低学习的困扰

、缩短软件学习的时程、省去面临不同软件的适应问题;对进阶的使用者而言,可以从事更详实的力学分析。最

实际的效益在于:

(1) 预变形及预应力的仿真:真实的结构行为通常都是以连续作动的方式在进行,因为第一阶段的力学行为而

衍生出后续阶段的变形。传统的作法,使用者必须凭借个人经验或是以简化的方式在结构体上施予一假设的预应

力(预变形)量,然而所施加的量值却未必能符合真实的数值。LS-DYNA整合Implicit及Explicit解法,可以忠实的

仿真各种结构反应。以卡勾卡合的动作机制而言,在第一阶段可利用Implicit解法指定卡勾运动方向,接着可马

上切换至Explicit解法,仿真卡合瞬间的反应。

(2) 相信以往从事Implicit分析的工程师都有调整收敛参数的不愉快经验,而LS-DYNA 970可以视运算过程收敛

性的难易程度,自动将solver由Implicit切换到Explicit,以克服收敛性的问题,这个功能绝对是非常吸引人的.

十四、请问以Explicit方式进行分析,影响运算时间的因素有哪些?

解答:采用Explicit方式最直接影响运算时间的因素是「计算步长」(time step)的大小,LS-DYNA决定计算步

长的方式为:另外还有许多因素会影响运算的时间:(1) 分析历时(Termination Time),分析历时较短者

,可缩减运算时间。(2) 接触算法:LS-DYNA采用最有效率的接触演算理论。(3) 机器等级:计算机等级高者

,运算时间较短。(4) 元素理论:采用较多高斯积分点的元素,其运算时间会增加。(5) 材料模式之复简:

材料性质直接影响计算步长。(6) 模型的复简:适当的简化CAD model可大幅提升运算品质。所以当您在评估

软件时,若有任何关于LS-DYNA计算速度的疑问,都欢迎与势流科技联络,我们将提供最正确的CAE信息与您分享

十五、请问弹簧/阻尼系统该采用什么元素来仿真比较恰当?

解答:若是早版本(LS-DYNA 940)的使用者,可以直接选用discrete element来仿真弹簧或是阻尼元素。不

过LSTC原厂建议采用最新版本LS-DYNA 970所提供的Beam Element(#6)来仿真Spring / Damper,配合*MAT(#66、

#67)可一次定义多轴的劲度与阻尼值,并且不用额外定义Lump Mass。例如右图即是采用单一Beam

Element(#6)来仿真单自由度(SDOF)系统在No Damped、Under Damped、Criticle Damped及Over Damped状况下的

振动行为。

十六、请问安装LS-DYNA(MPP)版本时,操作系统需有哪些额外的设定?

解答:若所采用的操作系统是Window2000,可以请贵单位的网管人员协助下列设定:

(1) 确定参与平行运算的各机器皆处于同一网域内。

(2) 各机器须提供公用帐号及密码给予MPP的使用者登入。

(3) 于每一台机器上安装最新版本的MPICH程序(Mpich-1.2.5),利用所附的mpiregister程序设定MPP的使用者

帐号及密码。

若您所用的系统是UNIX / Linux,亦请贵单位的网管人员协助以下的设定:

(1) 确定所有参与MPP计算的机器皆位于同一网域内。

(2) 建立NFS server让cluster内的所有机器将LS-DYNA的所在目录挂载进来。

(3) 进行相关安全设定(/etc/hosts、/etc/hosts.equiv、.rhosts....etc),让MPP的使用帐号可以利用rsh或

是ssh的方式在Cluster的机器间互相登入而无须输入密码。

(4) 安装MPICH或是LAM最新版本(LAM-6.5.6)

十七、在Linux系统下如何指定MPP的computing node?

解答:若是采用MPICH的话,请修改/usr/local/mpich/share/machines.LINUX的档案即可,参考格式如下:

node1 :2 node2 :2 若你是采用LAM的话,请先编辑hostfile,参考格式如下:node1 cpu=2 node2 cpu=2 執

行運算前請别忘了要先激活LAM,请执行lamboot –v hostfile;若是激活成功,屏幕上会显示参与MPP计算的

Node number。

十八、请问在执行MPP运算时,有没有类似PC版本Ctrl+C的功能以进行不同的switch?解答:当然是有的。你可以利用另一个terminal窗口在工作目录产生名为「d3kil」的档案,将正确的switch(

如sw2)填写在第一行,LS-DYNA程序会周期性的读取d3kil档案,并进行相关的switch report。若是Linux /

UNIX系统的话,还可以有另一种方式:请另外开启新的terminal,执行source bg_switch,此时正在运算的程序

会先暂停,并且等待你的switch讯号。

十九、如果想要了解特定截面的力量分布情形,该设定哪些项目呢?

解答:所想获得的信息应该是属于Section force的输出结果。其做法如下:

(1) 进入Set选单,将特定截面上的所有结点设成同一个群组(Node Set)。

(2) 将这些结点所在的元素(在截面的同一侧)也设成同一个群组(Element Set)。

(3) 进入DynaMisc选单à点选DatabaseàCross sectionà建立Cross section set,将步骤(1)(2)所设定的结点及

元素群组点选进来即可。

(4) 最后再到ACSII选单定义secforc的记录输出时距即可至于资料的读取方式与一般利用LS-Pre/Post读取

ACSII data的作法一样。一般常见的应用在于获得支承的扭转性质(如LCD、铰接托架等结构)。

二十、请问LS-DYNA在进行Implicit分析时,有没有什么该注意的地方?

解答:这个问题好象有点「蛮广泛」... 在这边先跟您说明一下大原则:Implicit method分析主要就是在

求解矩阵式,给定的力学条件不外乎是「Force Prescribed」与「Displacement Prescribed」,一般最常犯的毛

病就是边界条件给定不足,造成model发生「刚体运动」的情形,您可以将这种情形想象成物体浮在空中一样,宜

尽量避免这种情形产生。在此提供您一个判断的方式:您可以先利用LS-DYNA eigenvalue analysis的功能先进

行模态分析,藉后处理程序检查有无刚体模态,以判断Implicit model的束制条件是否充足。

二十一、LS-DYNA有没有什么功能可以让上/下表面的网格移到中性平面来?

解答:有的,请依照下列步骤进行:

(1) 利用Check的功能,将元素法向量调整一致。

(2) 进入Element选单,点选transform。

(3) 接着会出现向右图一样的窗口,请选择NORMAL OFFSET。

(4) 输入半个壳厚即可。Normal offset与直接平移的不同是在于Normal offset会依照壳厚修正曲率,能够

让网格正确的移至中性平面的位置。所以你大可放心在CAD的外表面产生iges surface,再利用Normal offset

的功能让网格产生在中性平面上,以加快建构网格的时间。

二十二、请问如何在后处理程序LS-Pre/Post里头看到壳元素的厚度?

解答:请依照下列步骤进行:

(1) 进入Appear选单。

(2) 勾选Thickness的方框。

(3) 选择Allvis (All visible)或是直接于画面上点取你要显示壳厚的Part亦可。

二十三、在LS-Pre/Post里面该如何操作才能看到各相材料的变形及相关的力学资料?

解答:(1) 进入Fcomp选单。

(2) 将下方的Fringe钮切换成Ffds。

(3) 于CFD选项内选择欲观测的物理量。

(4) 进入Selpar选单后,您会发现多了一些F1,F2之类的part,此即为参与ALE分析的各相材料您可以直接点选

欲观察的part。

二十四、LS-Pre/Post有没有办法改变SPH颗粒的大小?

解答:在Setting的选项里面有提供SPH颗粒大小的控制方式,请依照下列步骤进行:

(1) 点选SPH nodes。

(2) 下方字段即可选择SPH的半径比例及显示方式。

二十五、LS-DYNA有没有办法仿真出「破裂」或「碎裂」的状况?

解答:可以参考LS-DYNA User's Manual Vol. II选择具备failure criterion的材料模式。以最简单的

*MAT_KINEMATIC_PLASTIC模式而言,您只要给定PS(plastic strain)的值,当结构体变形达到此值即会进行

element elimination的的动作,若mesh够密即可看到「破裂」的样子。话说回来,「破裂」现像还有许多判别

的方式,利用小技巧来产生碎裂的行为给大家看,通常是「作秀」的成分居多,对于电子产品结构系统的改善并

无直接的帮助。要进行真正的大变形仿真,其实可以考虑采用EFG或是ALE的方式来进行。此例即是利用ALE的方

式仿真金属切削的行为,突破一般FEM Lagrange mesh的变形限制及建构网格的困扰。

二十六、请问究竟是采用Automatic contact好还是一一指定接触界面的方式比较好?

解答:基本上这个问题也是属于工程师判断的问题。早期的接触算法是需要一一指定接触界面,甚至工程师得

非常小心各个接触界面的法向量必须要两两相对。这样的方式可想而知,很容易发生人为的疏忽,进而产生结构

体发生穿透的情形,面对复杂的结构系统而言几乎是不太可行的方式。个人的建议是除非有特殊理由,必须明

显区分不同的接触界面,如打印机进纸机构等产品,否则可先以*contact_automatic_single_surface的方式来进

行分析。

二十七、在完成前处理的设定后,有没有办法知道每一个part的重量?

解答:你可以在FEMB的Part选项里找到Mass Calculation的功能。程序允许你将各个part 的质量信息存成文字文

件,同时也会立即将这些信息显示在屏幕上。除了FEMB自动计算质量信息的功能外,当LS-DYNA开始进行分析的时

候,会自动产生d3hsp的档案,里头也会记录质量、质心位置等相关信息。

二十八、请问如果我自己有写程序产生出曲线资料,或是已将data point存成Excel档案,能不能直接读入FEMB?

解答:FEMB建立数值曲线的方式有两种,一种是在FEMB里用key-in的方式来输入点位,另一种方式就是读入Excel

的格式,其方式如下:

(1) 请先将Excel档另外储存成附档名为*.csv的格式,再将附档名改成「*.cvr」。

(2) 进入FEMB 「DynaMisc」的功能选项,选择「Load Curve」--Create--OK--File--Import 即可。

二十九、请问贵公司所代理的LS-DYNA软件,其采用的单位制为何?

解答:事实上LS-DYNA并不强制你采用何种单位制,只要model的尺度及相关力学常数能彼此搭配一致即可。在此

提供单位换算的简表,方便您进行查核。个人的习惯是采用Ton-mm-sec制,因为这样所得到力量、应力及能量

单位皆是一般惯用的单位制。

三十、请问在load curve的输入方式除了一点一点慢慢key-in之外,有没有其它更快的方式?

解答:如果线型很单纯,用key-in的方式会比较快速;如果你的曲线是属于函数图形之类的话,可依下列方式,

直接将Excel资料读入FEMB当中:

(1) 利用Excel产生两栏(x,y)的数值,将其存成*.csv的格式。

(2) 利用档案总管将*.csv的扩展名改成*.cvr

(3) 在FEMB的DynaMisc--Load curve--Create一直按OK进入直角坐标图--FILE--Import--将*.cvr的曲线点位謮

入即可。

现代信号处理Matlab仿真——例611

例6.11 利用卡尔曼滤波估计一个未知常数 题目: 设已知一个未知常数x 的噪声观测集合,已知噪声v(n)的均值为零, 方差为 ,v(n)与x 不相关,试用卡尔曼滤波估计该常数 题目分析: 回忆Kalman 递推估计公式 由于已知x 为一常数,即不随时间n 变化,因此可以得到: 状态方程: x(n)=x(n-1) 观测方程: y(n)=x(n)+v(n) 得到A(n)=1,C(n)=1, , 将A(n)=1,代入迭代公式 得到:P(n|n-1)=P(n-1|n-1) 用P(n-1)来表示P(n|n-1)和P(n-1|n-1),这是卡尔曼增益表达式变为 从而 2v σ1??(|1)(1)(1|1)(|1)(1)(1|1)(1)()()(|1)()[()(|1)()()]???(|)(|1)()[()()(|1)](|)[()()](|1)H w H H v x n n A n x n n P n n A n P n n A n Q n K n P n n C n C n P n n C n Q n x n n x n n K n y n C n x n n P n n I K n C n P n n --=----=----+=--+=-+--=--2()v v Q n σ=()0w Q n =(|1)(1)(1|1)(1)()H w P n n A n P n n A n Q n -=----+21 ()(|1)[(|1)]v K n P n n P n n σ-=--+22(1)()[1()](1)(1)v v P n P n K n P n P n σσ-=--=-+

Matlab仿真实例-卫星轨迹

卫星轨迹 一.问题提出 设卫星在空中运行的运动方程为: 其中是k 重力系数(k=401408km3/s)。卫星轨道采用极坐标表示,通过仿真,研究发射速度对卫星轨道的影响。实验将作出卫星在地球表面(r=6400KM ,θ=0)分别以v=8KM/s,v=10KM/s,v=12KM/s 发射时,卫星绕地球运行的轨迹。 二.问题分析 1.卫星运动方程一个二阶微分方程组,应用Matlab 的常微分方程求解命令ode45求解时,首先需要将二阶微分方程组转换成一阶微分方程组。若设,则有: 2.建立极坐标如上图所示,初值分别为:卫星径向初始位置,即地球半径:y(1,1)=6400;卫星初始角度位置:y(2,1)=0;卫星初始径向线速度:y(3,1)=0;卫星初始周向角速度:y(4,1)=v/6400。 3.将上述一阶微分方程及其初值带入常微分方程求解命令ode45求解,可得到一定时间间隔的卫星的径向坐标值y(1)向量;周向角度坐标值y(2)向量;径向线速度y(3)向量;周向角速度y(4)向量。 4.通过以上步骤所求得的是极坐标下的解,若需要在直角坐标系下绘制卫星的运动轨迹,还需要进行坐标变换,将径向坐标值y(1)向量;周向角度坐标值y(2)向量通过以下方程转换为直角坐标下的横纵坐标值X,Y 。 5.卫星发射速度速度的不同将导致卫星的运动轨迹不同,实验将绘制卫星分别以v=8KM/s ,v=10KM/s ,v=12KM/s 的初速度发射的运动轨迹。 三.Matlab 程序及注释 1.主程序 v=input('请输入卫星发射速度单位Km/s :\nv=');%卫星发射速度输入。 axis([-264007000-1000042400]);%定制图形输出坐标范围。 %为了直观表达卫星轨迹,以下语句将绘制三维地球。 [x1,y1,z1]=sphere(15);%绘制单位球。 x1=x1*6400;y1=y1*6400;???????-=+-=dt d dt dr r dt d dt d r r k dt r d θ θθ2)(2 22222θ==)2(,)1(y r y ?????????????**-=**+*-===)1(/)4()3(2)4()4()4()1()1()1()3()4()2() 3()1(y y y dt dy y y y y y k dt dy y dt dy y dt dy ???*=*=)] 2(sin[)1(Y )]2(cos[)1(X y y y y

MATLAB实现通信系统仿真实例

补充内容:模拟调制系统的MATLAB 仿真 1.抽样定理 为了用实验的手段对连续信号分析,需要先对信号进行抽样(时间上的离散化),把连续数据转变为离散数据分析。抽样(时间离散化)是模拟信号数字化的第一步。 Nyquist 抽样定律:要无失真地恢复出抽样前的信号,要求抽样频率要大于等于两倍基带信号带宽。 抽样定理建立了模拟信号和离散信号之间的关系,在Matlab 中对模拟信号的实验仿真都是通过先抽样,转变成离散信号,然后用该离散信号近似替代原来的模拟信号进行分析的。 【例1】用图形表示DSB 调制波形)4cos()2cos(t t y ππ= 及其包络线。 clf %%计算抽样时间间隔 fh=1;%%调制信号带宽(Hz) fs=100*fh;%%一般选取的抽样频率要远大于基带信号频率,即抽样时间间隔要尽可能短。 ts=1/fs; %%根据抽样时间间隔进行抽样,并计算出信号和包络 t=(0:ts:pi/2)';%抽样时间间隔要足够小,要满足抽样定理。 envelop=cos(2*pi*t);%%DSB 信号包络 y=cos(2*pi*t).*cos(4*pi*t);%已调信号 %画出已调信号包络线 plot(t,envelop,'r:','LineWidth',3); hold on plot(t,-envelop,'r:','LineWidth',3); %画出已调信号波形 plot(t,y,'b','LineWidth',3); axis([0,pi/2,-1,1])% hold off% xlabel('t'); %写出图例 【例2】用图形表示DSB 调制波形)6cos()2cos(t t y ππ= 及其包络线。 clf %%计算抽样时间间隔 fh=1;%%调制信号带宽(Hz) fs=100*fh;%抽样时间间隔要足够小,要满足抽样定理。 ts=1/fs; %%根据抽样时间间隔进行抽样

MATLAB电路仿真实例

题14.14 图(a)所示电路,已知 V )2cos(15S t u =二端口网络阻抗参数矩阵 Ω?? ????=46j 6j 10Z 求ab 端戴维南等效电路并计算电压o u 。 u -+o u 图题14.14 (一)手动求解: 将网络N 用T 型电路等效,如图(b)所示 S U +-o U 等效阻抗 Ω=-+-?+ -=4.6j615j6j6)15(6j 6j 4i Z 开路电压 V 2j302 15j6j6105j6OC =?∠?+-+=U V 1482 18.3j46.42j3j4j4Z j4OC o ?∠=+?=?+=U U i

所以 )1482cos(18.3o ?+=t u V (二)Matlab 仿真: ⒈分析:本次仿真需输入各阻抗Zl 、Z1、Z2、Z3、Z4以及激励源Us 的参数值,仿真结果需输出开路电压Uoc 、等效阻抗Zi 以及电感两端电压U0的幅值和相位信息,并绘制Uoc ,U0的值随时间变化的波形曲线。其中各元件与原图的对应关系如下图所示: ⒉编辑M 文件的源程序如下: clear %清空自定义变量 z1=4-6j;z2=6j;z3=10-6j;z4=5;us=15*exp(j*0);zl=4j;%输入各元件参数 zi=z1+(z2*(z3+z4)/(z2+z3+z4));%等效阻抗zi 的计算表达式uoc=us*z2/(z2+z3+z4);%开路电压uoc 的计算表达式u0=zl/(zi+zl)*uoc;%电感两端电压uo 的计算表达式disp('The magnitude of zi is'); %在屏幕上显示“The magnitude of zi is ”disp(abs(zi)) %显示等效阻抗zi 的模disp('The phase of zi is'); %在屏幕上显示“The phase of zi is ”disp(angle(zi)*180/pi)%显示等效阻抗zi 的辐角 disp('The magnitude of uoc is'); %在屏幕上显示“The magnitude of uoc is ” disp(abs(uoc))%显示开路电压uoc 的模

matlab-SIMULINK仿真实例资料

二并联杆数控螺旋面钻头尖刃磨机的机构仿真 一、仿真原理一、实训题目:全自动洗衣机控制系统 实训目的及要求: 1、掌握欧姆龙PLC的指令,具有独立分析和设计程序的能力 2、掌握PLC梯形图的基本设计方法 3、培养分析和解决实际工程问题的能力 4、培养程序设计及调试的能力 5、熟悉传输带控制系统的原理及要求 实训设备:: 1、OMRON PLC及模拟实验装置1台 2、安装CX-P编程软件的PC机1台 3、PC机PLC通讯的RS232电缆线1根 实训内容: 1、分析工艺过程,明确控制要求 (1)按下启动按扭及水位选择开关,相应的显示灯亮,开始进水直到高(中、低)水位,关水。 (2)2秒后开始洗涤。 (3)洗涤时,正转30秒停2秒;然后反转30秒停2秒。 (4)循环5次,总共320秒,然后开始排水。排水后脱水30秒。 图1 全自动洗衣机控制 2、统计I/O点数并选择PLC型号 输入:系统启动按钮一个,系统停止按钮一个,高、中、低水位控制开关三个,高、中、低液位传感器三个,以及排水液位传感器一个。

输出:进出水显示灯一盏,高、中、低水位显示灯各一盏,电机正、反转显示灯各一盏,排水、脱水显示灯灯各一盏。 PLC的型号:输入一共有9个,考虑到留有15%~20%的余量即9×(1+15%)=10.35,取整数10,所以共需10个输入点。输出共有8个,8×(1+15%)=9.2,取整数9,所以共需9个输出点。可以选OMRON公司的CPM1A/CPM2A 型PLC就能满足此例的要求。 3、I/O分配 表1 全自动洗衣机控制I/O分配表 输入输出 地址名称地址名称 00000 启动系统按钮01000 排水显示灯 00001 高水位选择按钮01001 脱水显示灯 00002 中水位选择按钮01002 进、出水显示灯 00003 低水位选择按钮01003 高水位显示灯 00004 排水液位传感器01004 中水位显示灯 00005 停止系统按钮01005 低水位显示灯 00006 高水位液位传感器01006 电机正转显示灯 00007 中水位液位传感器01007 电机反转显示灯 00008 低水位液位传感器 4、PLC控制程序设计及分析 实现功能:当按下按钮00000,中间继电器20000得电并自锁,按下停止按钮00005,中间继电器20000掉电。中间继电器20000为系统总启动。 实现功能:当按下按钮00001,中间继电器20001得电并自锁;当中间继电器20002、20003、20004、20007任意一个为ON,或按下停止按钮00005,或01000、01001为ON时,中间继电器20001掉电。

MATLAB电路仿真实例

题14.14 图(a)所示电路,已知 二端口网络阻抗参数矩阵 求ab 端戴维南等效电路并计算电压。 (一) 手动求解: 将网络N 用T 型电路等效,如图(b)所示 等效阻抗 开路电压 V )2cos(15S t u =Ω??????=46j 6j 10Z o u u -+o u (a)图题14.14 S U +-o U Ω=-+-?+-=4.6j615j6j6)15(6j 6j 4i Z V 2j30215j6j6105j6OC =?∠?+-+=U V 148218.3j46.42j3j4j4Z j4OC o ?∠=+?=?+=U U i

所以 V (二) Matlab 仿真: ⒈分析:本次仿真需输入各阻抗Zl 、Z1、Z2、Z3、Z4以及激励源Us 的参数值,仿真结果需输出开路电压Uoc 、等效阻抗Zi 以及电感两端电压U0的幅值和相位信息,并绘制Uoc ,U0的值随时间变化的波形曲线。 其中各元件与原图的对应关系如下图所示: ⒉编辑M 文件的源程序如下: clear %清空自定义变量 z1=4-6j;z2=6j;z3=10-6j;z4=5;us=15*exp(j*0);zl=4j; %输入各元件参数 zi=z1+(z2*(z3+z4)/(z2+z3+z4)); %等效阻抗zi 的计算表达式 uoc=us*z2/(z2+z3+z4); %开路电压uoc 的计算表达式 u0=zl/(zi+zl)*uoc; %电感两端电压uo 的计算表达式 disp('The magnitude of zi is'); %在屏幕上显示“The magnitude of zi is ” disp(abs(zi)) %显示等效阻抗zi 的模 disp('The phase of zi is'); %在屏幕上显示“The phase of zi is ” disp(angle(zi)*180/pi) %显示等效阻抗zi 的辐角 disp('The magnitude of uoc is'); %在屏幕上显示“The magnitude of uoc is ” disp(abs(uoc)) %显示开路电压uoc 的模 disp('The phase of uoc is'); %在屏幕上显示“The magnitude of uoc is ” ) 1482cos(18.3o ?+=t u

MATLAB仿真实例

一、实验目的 (1) 二、实验题目 (1) 三、实验内容 (1) 3.1傅里叶变换与傅里叶反变换 (1) 3.2题目一:正弦信号波形及频谱 (2) 3.2.1仿真原理及思路 (2) 3.2.2程序流程图 (3) 3.2.3仿真程序及运行结果 (3) 3.2.4实验结果分析 (5) 3.3题目二:单极性归零(RZ)波形及其功率谱 (5) 3.3.1仿真原理及思路 (5) 3.3.2程序流程图 (6) 3.3.3仿真程序及运行结果 (6) 3.3.4实验结果分析 (8) 3.4题目三:升余弦滚降波形的眼图及其功率谱 (8) 3.4.1仿真原理及思路 (8) 3.4.2程序流程图 (8) 3.4.3仿真程序及运行结果 (8) 3.4.4实验结果分析: (10) 3.5题目四:完成PCM编码及解码的仿真 (11) 3.5.1仿真原理及思路 (11) 3.5.2程序流程图 (12) 3.5.3仿真程序及运行结果 (12) 3.5.4实验结果分析 (15) 3.6附加题一:最佳基带系统的Pe~Eb\No曲线,升余弦滚降系数a=0.5,取 样值的偏差是Ts/4 (16) 3.6.1仿真原理及思路 (16) 3.6.2程序流程图 (16) 3.6.3仿真程序及运行结果 (16) 3.6.4实验结果分析 (18) 3.7附加题二:试作出Pe~Eb/No曲线。升余弦滚降系数a=0.5,取样时间无 偏差,但信道是多径信道,C(f)=|1-0.5-j2 ft|,t=T s/2 (18) 3.7.1仿真原理及思路 (18) 3.7.2程序流程图 (19) 3.7.3仿真程序及运行结果 (19) 3.7.4实验结果分析 (21) 四、实验心得 (21)

matlab仿真实例

matlab仿真实例 实验五 MATLAB及仿真实验一、控制系统的时域分析 (一) 稳定性 1、系统传递函数为 G(s),试判断其稳定性。 程序: >> num=[3,2,5,4,6]; >> den=[1,3,4,2,7,2]; >> sys=tf(num,den); >> figure(1); >> pzmap(sys); >> title('零极点图') 由图可知:在S右半平面有极点,因此可知系统是不稳定的。 2、用MATLAB求出G(s)=(s^2+2*s+2)/(s^4+7*s^3+5*s+2)的极点。程序及结果: >> sys=tf([1,2,2],[1,7,3,5,2]); >> p=pole(sys)

p = -6.6553 0.0327 + 0.8555i 0.0327 - 0.8555i -0.4100 (二)阶跃响应 1、二阶系统G(s)=10/s^2+2*s+10 1)键入程序,观察并记录单位阶跃响应曲线: 程序: >> sys=tf(10,[1,2,10]); >> step(sys); >> title('G(s)=10/s^2+2*s+10单位阶跃响应曲线') 2)计算系统闭环跟、阻尼比、无阻尼振荡频率,并记录: 程序及结果: >> sys=tf(10,[1,2,10]); >> p=pole(sys)

p = -1.0000 + 3.0000i -1.0000 - 3.0000i >> [wn,z]=damp(sys) wn = 3.1623 3.1623 z = 0.3162 0.3162 3)记录实际测取的峰值大小,峰值时间和过渡过程时间,并填表: 实际值理论值 峰值Cmax 1.35s 峰值时间tp 1.05s 过渡时间 +5% 3.54s ts +2% 3.18s 程序: >> sys=tf(10,[1,2,10]); >> step(sys); >> title('G(s)=10/s^2+2*s+10单位阶跃响应曲线')

matlab仿真实例

实验五MATLAB及仿真实验 一、控制系统的时域分析 (一)稳定性 1、系统传递函数为G(s),试判断其稳定性。 程序: >> num=[3,2,5,4,6]; >> den=[1,3,4,2,7,2]; >> sys=tf(num,den); >> figure(1); >> pzmap(sys); >> title('零极点图') 由图可知:在S右半平面有极点,因此可知系统是不稳定的。 2、用MATLAB求出G(s)=(s^2+2*s+2)/(s^4+7*s^3+5*s+2)的极点。程序及结果: >> sys=tf([1,2,2],[1,7,3,5,2]); >> p=pole(sys) p = -6.6553 0.0327 + 0.8555i

0.0327 - 0.8555i -0.4100 (二)阶跃响应 1、二阶系统G(s)=10/s^2+2*s+10 1)键入程序,观察并记录单位阶跃响应曲线: 程序: >> sys=tf(10,[1,2,10]); >> step(sys); >> title('G(s)=10/s^2+2*s+10单位阶跃响应曲线') 2)计算系统闭环跟、阻尼比、无阻尼振荡频率,并记录:程序及结果: >> sys=tf(10,[1,2,10]); >> p=pole(sys) p = -1.0000 + 3.0000i -1.0000 - 3.0000i >> [wn,z]=damp(sys) wn = 3.1623 3.1623 z = 0.3162

0.3162 3)记录实际测取的峰值大小,峰值时间和过渡过程时间,并填表: >> sys=tf(10,[1,2,10]); >> step(sys); >> title('G(s)=10/s^2+2*s+10单位阶跃响应曲线') 4)修改参数,分别实现ξ=1和ξ=2的响应曲线,并记录: ξ=1: 程序:>> zeta=1; >> wn=sqrtm(10) wn = 3.1623 >> sys=tf(10,[1,2*wn*zeta,10]); >> step(sys) >> title('ξ=1响应曲线' ) (图见下页)

相关主题