计算机辅助设计与仿真实验报告_第1页
计算机辅助设计与仿真实验报告_第2页
计算机辅助设计与仿真实验报告_第3页
计算机辅助设计与仿真实验报告_第4页
计算机辅助设计与仿真实验报告_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验报告课程名称:计算机辅助设计与仿真实验题目:计算机辅助设计与仿真专业班级:学生姓名:学生学号:实验时间:指导教"帀:实验一 matlab基本操作一、实验目的1、熟悉matlab环境。2、掌握matlab矩阵输入、运算以及matlab的数值运算功能。3、掌握各种数据的创建,访问,扩建,缩减。创建一个2*2元宝叔祖,扩充和缩减二. 实验内容及结果1 > 利用help命令,查找plot、stem、clearclc who> whos0*> 等的帮助文件。同时练习helpdesk 命令。2、在命令窗口中运行demo命令,运行有关通信、信号处理的演示。3、输入x=1,2,

2、3,y=4,5,6,计算z=x.*y, z=x.y, z=x.ay, z=x.a2, 2 .ax yo 以及输入d二 l,4,7;&5,2;3,6,0,计算z二dt,d43, z=3.ad,掌握元素运算和矩阵运算的区别。解:>> x=l 2 3;» y二4 5 6;» z=x. *yz =41018» z=x. yz =4. 00002. 50002. 0000» z二x. "yz =132729» z二x. 2z =1 49» z=2. ' x yz =2 48163264» d二1,

3、4,7;& 5, 2;3, 6, 0d =1478l2360»z 二l3z 二627636510804957516486612441»z=d."3z 二1643435121258272160»z=3."dz =381218765612439277291pi*x, x*y yx,验证矩阵的左乘与右乘不相等,4、输入x二卜 1 0 1,计算y=x-1, l=length(x), 此外,试举例比较size和length的区别。解:» x=-l 0 1;» y=x-1y =-2 -1 0» l=length(x)1

4、 =3» pi*xans =-3 141603. 1416» x*y'ans =2» y' *xans=20-210-1000>> size(x)ans -135、输入a=l,2,3;4,5,6,b=2,4,0;l,3,5,d=l,4,7;8,5,2,;3,6,0,计算da;a/d,掌握矩阵的左除与右除 的含义。解:» a二1,2,3;4,5,6;» b二2, 4,0; 1,3, 5;» d二1,4, 7;& 5, 2, ;3, 6, 0;» da'ans=-0.03700. 51

5、85-0. 1481 » a/d01.00000ans=0. 40740. 74070. 07410. 00000. 40740. 0000y = x3 +(x-0.98)2 /(x +1.25)3 一 5(x + 丄),x = 2,x = 46、(1)计算x时值。(2)cos60°-79-v2解:(1) » y1=2a3+(2-0.98)a2/(2+1.25)a3-5*(2+1/2) yi =-4.4697 » y2=4a3+(4-0.98)a2/(4+1.25)a3-5*(2+1/4) y2 =52.8130 (2)» cos(pi/3)-

6、sqrt(9-sqrt(2)ans =-2.25427、请建立一个等比数列,然后由它产生一个对角阵,并储存这个矩阵。调出上面储存的矩阵,并由它产生一个列向量。解:» a=l 2 48 16a =1 24816» b=diag(a)b =1 00000 20000 04000 00800 00016» b(:,3)ans =004008、向量的产生,直接输入利用1 inspace logspace及t=m:s:n方式产生,并对所产生的向量进行加减乘除操作,区分向量操作与矩 阵的区别。解:直接输入:» a=l 234567a =1234. 33335. 50

7、006. 66677. 83339. 0000>> b=1 inspace (2, 9, 7) b =2. 00003. 1667» c二logspace (1, 2, 7) c 二10.000014.678021.544331.622846.41596& 1292100.0000» b+cans =12. 000017. 844725. 877737. 122853. 082675. 9625109. 0000» b-cans =-8. 0000-11.5113-17.2110-26.1228-39.7492-60.2959-91.0000&

8、#187;b. *cans =20. 000046. 480393. 3588173. 9253309. 4393533.6788900. 0000»b. cans =5-00004. 63524. 97185. 74966. 96248. 6973ii. mi三、总结(1) 思考题1、matlab中元素运算和矩阵运算的区别是什么?答:元素运算用:.+、.、.*、./ ,即点加、点乘等等,是对元素的运算操作;矩阵用汁、仁/ ,可能 会改变矩阵的维数。2、矩阵的左除与右除的含义是什么?答:xa=b 即:x=b/a,右除;ax=b 即:x=ab ,左除。(2) 实验体会:对于这次实验,由

9、于已经学过matlab这门课,所以觉得比较基础,没有什么困难,只不 过要清楚元素运算和矩阵运算的区别。通过这次实验,我更加熟悉了 matlab的环境。实验二、m文件的编写及调试、实验目的1、熟悉matlab屮m文件的编辑环境;2、掌握matlab中m文件的编写与调试;3、熟悉matlab中基本程序语句的使用;实验内容及结果1、在命令窗口屮输入edit命令,观察m文件编辑器的组成及各部分功能。2、在命令窗口屮输入help function,观察function函数的功能,并编写排序函数对输入元素进行排序: 格式:paixu(a,b),其中a为一矩阵或向量,函数实现对a中元素进行排序,b为0表示升

10、序,为1表示降序; 当a为矩阵时实现对矩阵a的各行进行排序。(要求,循环结构分别利用for、while语句实现;升降序选择用 switch语句实现)。解:m文件(for):funct1 on a=paixu(a, b);c=length(a);switch bcase 0for i=l:ct;for j二i+l:c;if (a(i)>a(j)k=a(i);a(i)=a(j);a(j)=k; a=a;endendendcase 1for i=l:ct; for j=i+l:c; if (a(i)<a(j) k=a(i);a(i)=a(j);a(j)=k; a二 a;endendend

11、end调试:» a=2 5 1 6 9 3;» paixu (a, 0)ans =123569» paixu (a, 1)ans =965321m文件(while):function a=pai xu(a, b)c=length(a);switch bcase 0i=l; while(i<=c-l) if (a(i)>a(i+l) k二a(i);a(i)=a(i+l);a(i+l)=k; i=i+l;enda二 a;endcase 1i=l;while (i<=c-l) if (a(i)<a(i+l) k 二 a(i);a(i)=a(i+l

12、);a(i+1)二 k;i二i+l;enda=a;endend» a=2 5 1 6 9 3;» paixu (a, 0)ans =123569>> paixu(a, 1)ans =9653213、根据2中观察所得的function帮助内容,在paixu函数小加入提示别人调用该函数的帮助内容。 m: function a=paixu(a, b);c=length(a);switch bcase 0for i=l:ct;for j二i+l:c;if (a(i)>a(j)k=a(i);a(i)=a(j);a(j)=k;a=a;endendendcase 1fo

13、r i=l:ct;for j二i+1:c;if (a(i)<a(j)k=a(i);a(i)=a(j);a(j)=k;a=a;endendendendhelp paixu4、自行编写函数,定义全局变量及局部变量,并进行访问,观察全局变量与局部变量的区别。 解:局部变量:function localx = rand (2, 2);y = 6 7 8;3 9 4;z ='函数中的变量; u = x, y, z);disp(z)whoslocal函数中的变量namesi zebytesclassu1x3272cellx2x232doubley2x348doublez1x612charat

14、tributes全局变量: global xyz » xyz=43 xyz =43whosattributes globalnamesizebytes classxyzlxl8 double>> xyz=54xyz =54» clear xyz» whoshave been changed to match the>> whos globalnamesi zebytesclassxyzlxl8double» xyz二78xyz =78>> whosnamesizebytesclassxyzlxl8double»

15、; globalxyzattributes globalattributeswarning: the value of localvariables mayglobals future versions of matlab will require that you declare a variable to be global before you use that variable.» xyz xyz =545、编写一个函数,输入参数个数为25,输出参数个数为13,利用函数nargin> nargout及nargchk完成 判断输入参数个数功能,输入、输出参数个数不同,函数

16、返回结果不同。当输入或者输出参数个数不在此 范闱内时,返回错误或警告提示。(error»£warning) 解:unct i on c = testarg (a, b) %testarg检测输入输出参数个数%该函数根据不同的输入输出参数个%数进行相应的操作if (nargout '二 1)dispf使用该函数必须指定一个输出参数!);returnendswi tch nargincase 0dispc使用该函数至少需要一个输入参数!');c =;returncase 1c = a. 2;case 2c = a+b;end6、编写m文件试用input函数的功能

17、:解:function lqma二input ('输入(1, 5, 10);»lqm输入(1,5,10):117、提示,请输入分别实现输入数字和字符串解:function lqminput ('请输入数字:n');input ('请输入字符串:'s')» lqm请输入数字:24678请输入字符串:longqianmeians =iongqianmei8、请编写一个判断数据(整数)奇偶性的函数。两种方法(1、('用if-elseif-end语句判断奇偶数'),2、 用switch-case语句判断奇偶数)解:第一

18、种方法: function y二f(x) if (mod (x, 2)dispc 奇数');elsedisp('偶数');end» f(89)奇数» f(36)偶数第二种方法:function y二y(x)y二mod(x,2);switch ycase 0y=0;case 1y二 1;end» y(36)ans =0» y(57)ans =1三、总结1、matlab中m文件的编写与调试的过程是什么?答:在file-new- m file*里面编写m文件,看右边的调试框,当呈现红色时说明有语法错误等,直到是绿 色为止,程序已然无任何

19、语法错误,然后保存在mat lab的根目录work里面。2、matlab中基本程序语句的如何使用?答:调用m文件可直接调用文件名,注意文件名不能用ma t 1 a b自带的函数命名,否则就不能正常调 用m文件。因为一同会优先考虑那是系统函数,而不是文件名。3、实验体会:此次实验,根据实验题目和老师的课件,基本上没什么问题,最大的问题是在编写m文 件排序上,由于要用到c语言的知识,所以有很多不熟,不过在同学和老师的帮助下,最终还是成功了。实验三、matlab绘图及信号产生一、实验目的1、掌握matlab的二维、三维绘图方法;2、掌握matlab产生基本的信号。二、实验内容及结果1 绘制如下图所示

20、的图形(使用plot ezplot meshgrid surf mesh)。解:(1) » t=0:pi/25:2*pi;x二sin (t);y二cos(t);plot (x, y), grid on»(2) » t=0:pi/50:2*pi;yl二sin(t);y2二cos (t);plot(t,yl,'r',t,y2,' :b'),title('正弦曲线和余弦曲线'),xlabel('弧度值'),ylabel('函数值'),gridon»(3)其中f(x,y)=3*(1

21、-x).a2.*exp(-(x.a2)-(y+ 1).a2)-10*(x/5-x.a3-y.a5).*exp(-x.a2-y.a2)-l/3*exp(-(x4-1 ).a2-y.a2) » x,y=meshgrid(-4:0.125:4);z=3*(l -x).a2.*exp(-(x.a2)-(y+ l).a2)-10*(x/5-x.a3-y.a5).*exp(-x.a2-y.a2)-l/3*exp(-(x+1 ).a2-y.a2);» subplot(2,1,1 );mesh(x,y,z) ;grid on» subplot(2丄2);surf(x,y,z);g

22、rid on» shading interp»41on2、利用sin、cos、sawtooth> square分别生成一连续和离散时间周期信号,要充分利用其中每个函数的 参数。解:»n=0:pi/20:2*pi;» yl=sin(n);» subplot (2, 1, 1), plot (n, yl), grid on>> subplot(2, 1,2), stem(n, yl), grid on>> y2=cos(n);» subplot (2, 1, 1), plot (n, y2), grid on

23、» subplot (2, 1, 2), stem(n, y2), grid on»» t=0:pi/10:10*pi;y3=sawtooth(t, 1);subplot (2, 1, 1), plot (y3), grid on subplot (2, 1, 2), stem(y3), grid on »»t=0:0. 001:15*pi; y二square (t, 20); plot(t, y);axis(0 25 -1. 5 1. 5)»»n=-10:10; y=square (n,20); stem(y)»

24、3、分别生成离散吋间的单位冲击信号和单位阶跃信号。 解:冲击函数» n二1:1o;n二5;» seg二n-n=o;>> stem(n, scg)»0.90.80.70.60.50.40.30.21111 1 11 1 11 1 11 1 17 1 1 1 1illi ilia lilt ilia1 1 11 1 11 1 11 1 11 1 1lilt illi illi illi ill1 1 11 1 11 1 11 1 11 1 17171ilia lilt lilt illi 丄.丄一一1 1 11 1 11 1 11 1 11 1 1illi

25、 illi lilt iliailli1 1 11 1 11 1 11 1 11 1 1illi illi illi illiilli r r 111111111111tttt"illiilli1111 illi1 丄1一丄-一 llll1l111iiiiii11111111illiilli illi111lllllll1l111illi111111111111illirrr111111111111.- .ttttilliilliilli 1111丄.丄丄1 111111111111?6illiilliilli illi 6110阶跃函数» n二l:10;n=5;»

26、; seg=n-n>=oj;» stem(n, seg);grid on»oo4、编写程序产生如图1所示的信号向量,并绘制图形。解:>> t=-6:0. 01:6;»y= (2). *(t>=-6&t<-4) + (2*(t+3)2). *(t>=-4&t<-2) + (2). *(t>=-2&t<0) + (t+2). *(t>=0&t<3) + (-0 .5*t+3). * (t>=3&t<=6);» plot (t, y) ;gri

27、cl on»三、总结对于mat lab绘图和信号产生实验,前面基本上没什么难度,最大的难度是最后一个分段函数,本以 为还要编写m文件程序来绘图,结果老师讲解了更简单的方法,对于此次实验,我受益匪浅。实验四、基本simulink仿真系统设计一、实验目的1、熟悉matlab中基本simulink仿真环境;2、掌握simulink进行系统仿真设计的基木步骤;3、了解simulink中各模块库;4、掌握仿真系统参数设置及子系统封装技术;实验内容及结果1、在命令窗口屮输入simulink命令,观察其模块库的构成;2 了解专业模块库中的communication及dsp,熟悉其中的demo。3、

28、新建一个模型文件,搭建一个简单的simulink信源系统信宿仿真模型,并进行系统仿真。改变系统 仿真环境参数,观察其变化。解:改变参数后4、在3步基础上,构建子系统,并设置封装参数,至少2个,以变量方式传递。 解:疔注姿1封装:subsystemii0 -1 ii+ +illiilli illi illi illi> in1illi + + +out2示波蹇方波ff亏示茨总1<«rr2age messurement5 i11i丄i02468105、完成一正弦稳态电路的simulink模型仿真及m文件方式仿真实现,并比较两种方式各自的优缺点。 解:10m文件:w二1,2;u

29、s二10, 0;is二0, 5;z1 二l./(0. 5*v*j);z4=l*w*j;z2=2, 2;z3=2, 2;uoc= (z2. / (z1+z2) -z4. / (z3+z4). *uszcq二z3. *z4. /(z3+z4)+z1. *z2. /(z1+z2)u=is. *zeq+uocdisp(' wum phi,)disp(w,, abs (u,), angle (u,)*180/pi)» u= 3.1623*cos(t-18. 4349)+7. 0711*cos(2*t-8. 1301)» explot (u, 0, 20)»三、总结1

30、、simulink的基本功能是什么?答:交互式、图形化建模环境;交互式仿真环境;专用模块库(blocksets)2、simulink进行系统仿真设计的基本步骤是什么? 答:选择模块;模块连接;信号组合与分支;运行仿真。3、如何封装一个子系统?答:点击要封装的部分后,再单击右键,点封装。4、实验体会:这次实验是将我们的理论知识化为操作能力的开端,让我们更加的理解的理论知识, 也提高了我们学习知识的兴趣。在实验操作中,有些问题,对于我來说,在simulink仿真时,寻找模块是 我最大的问题,时常找很久都没有找到,不过现在知道怎么寻找了,以后我应该多多练习。实验五、基于simulink数字逻辑电路仿

31、真一、实验目的1、进一步熟悉matlab屮基本simulink仿真环境及子系统封装技术;2、掌握simulink数字逻辑电路仿真系统的设计方法;3、熟悉基本触发器模块的使用;4、体会simulink系统仿真与m文件系统仿真的差别;二、实验内容及结果1、设计一83线二进制编码器仿真系统,观察其仿真结果;将其封装为一个子系统模块,并设置传递参 数。解:参数设置:pulse generator模块:pulse type选择sample based;period设置为8;pulse width设置为 1;phase delay: x0x7依次设置为07;logical operator模块:opera

32、tor 选择为 ornumber of in put ports 设置为4scope模块:设定坐标轴个数为8 (输入)和3 (输出),tick label选择allx7scope:1 11iiii1 11li i i i i024681012141611i111ii1111 1 1i i1024681012141611it nii1li i il 1i02z16810121416ziii丨1iii1i i1 1 1 1 1 1 102468101214161 1 11i i i1 1i0246810121416!11i1 1 1 1 1i 1 111 1 1 102468101214161 1

33、1i 1 111i i i1 1i02468101214161 111 1iiii1 1)i1 0 11 0 11011 0 11 0 11 0 11 0 11 0 110121416scopel:50024681012141b0268101216414封装:x7子系统:ins2、设计一38线二进制译码器仿真系统,观察其仿真结果;将其封装为一个子系统模块,并设置传递参 数。利用编码器和译码器子模块搭建系统,观察输入与输出是否相同。解:operator输入:封装:sccpx子系统:ci>nin1-> notlogicaloperatorcz>qin2notlogicaloper

34、stoclcemsoope ;in3logicaloc<rat<x2三、总结1、simulink数字逻辑电路仿真系统的设计方法是什么?答:先根据要求设计电路,再根据电路图选择合适的模块进行模块连接,最后进行仿真。2、实验体会:这次实验主要是进一步熟悉matlab中基本simulink仿真环境及子系统封装技术; 掌握simulink数字逻辑电路仿真系统的设计方法;熟悉基本触发器模块的使用;体会simulink系统 仿真与m文件系统仿真的差别。通过实验我已经十分熟悉了数字逻辑电路仿真的设计方法。实验六、proteldxp中电路原理图设计、实验目的1、熟悉proteldxp屮原理图设计环

35、境;2、学握基本的电路原理图设计方法;3、熟悉原理图元件库的添加过程;4、熟悉原理图元件库中的基本元器件符号;5、掌握层次原理图设计的基本方法。二、实验内容及结果1、打开proteldxp软件,观察界血构成;创建一个工程,在工程中添加一个原理图文件,观察原理图文件编辑器的界面环境构成。 解:vcc£tr£f-vddao"vkidyalwa:空modeax】灯i51ivccjvccvcct血 tnkei::a1kplot: fhtiex p1.2xxi:1p13txl1p14d£t2 pldctipm z 二p5oxxd5 pmtxd3 p3:iyfq p

36、52int: f34t0 p3jt1 二:匹rst alzflexvccp2oa5p: 1a9 f22a1:- p2 a1)a13 p: 6a14 f:mo add ku ad】 p0:ad: kl3ad2 k»4.d4 眈ad, p0.6.o5 mwc22、在design下打开browse library窗口,观察分立元器件库元件符号及基本接插件库中元件符号;(举例:电感/电阻/电容,数字74系列,与非门等)3、对第二步中所绘制的电路原理图进行保存、编译、查错处理,直至完整无误后生成元器件报表。并 自行保存以备下次实验调用。4、对1步屮所绘制的电路原理图以自下而上的方式实现。三、总

37、结1、proteldxp中电路原理图设计基本步骤。 答:(1)、原理图设计;(2) 、生成网络表;(3) 、印制电路板设计;(4) 、生成印制电路板报表并打印印制电路板图。2、实验体会:本次实验主要是熟悉proteldxp的界面,为下次的实验做准备,对下一次实验的顺利进 行起着至关重要的作用。实验七、proteldxp中印制电路板设计、实验目的1、进一步熟悉proteldxp屮绘制原理图的方法;2、熟悉pcb编辑器环境;3、掌握proteldxp中pcb的基本设计方法;4、熟悉pcb元件库的添加过程及基本库元件的封装形式;5、熟悉proteldxp中各类报表;二、实验内容及结果1、打开prot

38、eldxp创建一个工程,新建一个原理图文件,绘制实验六的原理图。绘制过程中注意观察所调用元件的封装形式。 解:vccj1c6tc与 fo1472;r£f-vddao"wkidyalga:d?tmodeax】灯ivcc|vccplot: fht2ex pl2rxi:1 p13txd1 p14d<t2 pl-jdcrjvccfoo ado po.l .adi f : : ad2pcl3 ad3pmint丄p04.w4pl /intifot ad,p5oxxd5po-5ad6 wad,p: 1txd3p; 2ixt0p2oa5p53ixt:p2.4t0p2* a10p3jt1p:: allp; &quo

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论