simulink蹦极仿真报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电子信息系统仿真与设计
课程设计报告
设计课题: 蹦极跳系统的动态仿真
姓名: 李亚真
学院: 机电与信息工程学院
专业: 通信工程
班级: 09级
学号: 200900800093 日期 2010-2011第三学期
指导教师: 李光明张军蕊
山东大学威海分校机电与信息工程学院
蹦极跳系统的动态仿真
一、问题描述:
蹦极跳是一种挑战身体极限的运动,蹦极者系着一根弹性绳从高处的桥梁(或山崖等)向下跳。在下落的过程中,蹦极者几乎处于失重状态。应用Simulink 对蹦极跳系统进行仿真研究。
二、系统模型及建模分析:
按照牛顿运动规律,自由下落的物体由下式确定:
其中,m 为人体的质量,g 为重力加速度,x 为物体的位置,第二项和第三项表示空气的阻力。其中位置 x 的基准为蹦极者开始跳下的位置(即选择桥梁作为位置的起点 x =0),低于桥梁的位置为正值,高于桥梁的位置为负值。如果人体系在一个弹性常数为 k 的弹性绳索上,定义绳索下端的初始位置为 0,则其对落体位置的影响为:
因此整个蹦极系统的数学模型为:
从蹦极跳系统的数学描述中可得知,此系统为一典型的具有连续状态的非线性系统。
设桥梁距离地面为 50 m ,即 h2=50;
蹦极者的起始位置-30 m ,即 h1=x(0)=-30;
蹦极者起始速度为 0,即
;
其余参数k =20,a2=a1=1;m =70 kg ,g =10 m/s2。
下面将建立蹦极跳系统的仿真模型,并在如上的参数下对系统进行仿真,分⎩⎨⎧≤>-=0 ,
00,)(x x kx x b 地面
x 桥梁基准面 0 梯子 h2 h1
析此蹦极跳系统对体重为 70 kg 的蹦极者而言是否安全。
三、建立蹦极跳系统的Simulink仿真模型
在蹦极跳系统模型中,主要使用的系统模块有:
Continuous 模块库中的 Integrator 模块:用来实现系统中的微分运算。
Functions&Tables 模块库中的Fcn模块:用来实现系统中空气阻力的函数关系。
Nonlinear模块库中的Switch模块:用来实现系统中弹力绳索的函数关系。蹦极跳系统的模型框图如图 1 所示。
图 1
在蹦极跳系统模型中使用了两个Scope输出模块,上面的Scope模块用来显示蹦极者的相对位置,即相对于桥梁的位置;而下面的Scope1模块用来显示蹦极者的绝对位置,即相对于地面的位置。
系统模块参数设置:
(1)设置Integrator的初始条件为0;Integrator1的初始条件为-30;
(2)设置仿真时间 0~100s。为了使曲线光滑,可设置最大仿真步长为0.1。其它仿真参数采用系统默认取值( 变步长求解器、求解算法ode45、自动选择最大仿真步长、相对误差为l e-3)。
(3)在 MATLAB 环境下输入赋值语言:m=70; g=10; k=20; a1=1; a2=1; (4)运行仿真模型,Scope、Scope1分别显示仿真结果如下:
图(a)图(b)
四、实验过程中遇到的问题:
1.模型建立好后,进行仿真时,参数设置出了些问题;
2.仿真出波形后,观察到仿真曲线的波峰与波谷处曲线很不光滑,因此进行了仿真精度控制;
3.分析仿真结果时发现:蹦极者与地面之间的最小距离小于0,也就是说蹦极者在此过程中会触地。所以对此系统在不同的弹性常数下进行了仿真分析,求出符合安全要求的弹性绳索的最小弹性常数。
五、仿真结果分析:
上图(b)为蹦极者与地面之间的距离。从结果可看出,对于体重为 70 kg 的蹦极者,此系统是不安全的,因为蹦极者与地面之间的距离出现了负值(即蹦极者在下落的过程中会触地,而安全的蹦极跳系统要求二者之间的距离应该大于0)。因此,必须使用弹性系数较大的弹性绳索,才能保证蹦极者的安全。当然,在蹦极者触地的情况下,系统的动态方程会发生改变,系统输出结果也将发生变化。上图的仿真结果并没有考虑到这一点(假定蹦极者距离地面足够大,不会触地)。
六、总结:
本次仿真设计用到了很多数学建模和物理方面的知识,在自学了simulink的基本知识后,选择了一个课题开始进行建模。在实际实现的过程中,发现问题、分析问题、解决问题,培养了自己的学习能力和实验能力,也对MATLAB里面的simulink功能有个进一步的认识和掌握。
附加:
1、仿真精度控制
根据对图b所示蹦极跳系统的仿真结果观察,仿真曲线的波峰与波谷处曲线很不光滑。而从蹦极跳系统的数学方程分析可知,系统的输出曲线应该是光滑曲线。造成这一结果的主要原因是:对此系统仿真来说,连续求解器的默认积分误差取值偏大。因此,只有设置合适的积分误差限,才能获得更好的仿真结果。对蹦极跳系统的积分误差、最大仿真步长与起始仿真步长进行合适的设置,如图2所示。
图 2
然后对蹦极跳系统进行仿真,其仿真结果如图3所示。从图中可以明显看出,减小系统仿真积分误差可以有效地提高系统的仿真性能,使仿真输出波峰与波谷处的曲线变得比较光滑。
图 3
2、蹦极跳系统的安全性分析
在上面系统模型中,蹦极者的质量 m= 70kg,重力加速度 g=10m/s 2 ,蹦极者的初始位置x(0) = -30,初始速度为,桥梁距离地面为50m,弹性绳索的弹性常数k=20;其它的参数a2=a1=1;按照如上的参数对此系统进行仿真的结果表明:对于体重为70kg的蹦极者,蹦极跳系统的弹力绳索不安全。因为在仿真过程中,蹦极者与地面之间的最小距离小于0,也就是说蹦极者在此过程中会触地。很显然,如果弹性绳索的弹性常数大于某个值。此蹦极跳系统对于体重为70kg的蹦极者来说才可能是安全的。
下面使用命令行的方式对此系统在不同的弹性常数下进行仿真分析,以求出符合安全要求的弹性绳索的最小弹性常数。为了使用命令行方式对此系统进行分析,首先利用Outl模块将此蹦极者的位置输出到MATLA工作空间之中,如图4所示。