大林算法实验报告

大林算法实验报告
大林算法实验报告

大林算法实验报告 一、实验目的

1、掌握大林控制算法的基本概念和实现方法;

2、进一步熟悉MATLAB 的使用方法;

3、掌握在MA TLAB 下大林算法控制器的调试方法;

4、观察振铃现象,并且尝试消除振铃现象

二、实验原理

1.大林算法的原理及推导

大林算法是IBM 公司的大林(Dahlin)在1968年提出了一种针对工业生产过程中含有纯滞后对象的控制算法。其目标就是使整个闭环系统的传递函数 相当于一个带有纯滞后的一阶惯性环节。该算法具有良好的控制效果。

大林控制算法的设计目标是使整个闭环系统所期望的传递函数φ(s ) 相当于一个延迟环节和一个惯性环节相串联,即:

整个闭环系统的纯滞后时间和被控对象G 0(s )的纯滞后时间τ相同。

闭环系统的时间常数为T τ ,纯滞后时间τ与采样周期T 有整数倍关系, τ=NT 。

其控制器形式的推导的思路是用近似方法得到系统的闭环脉冲传递函数,然后再由被控系统的脉冲传递函数,反推系统控制器的脉冲传递函数。

由大林控制算法的设计目标,可知整个闭环系统的脉冲传递函数应 当是零阶保持器与理想的φ(s )串联之后的Z 变换,即φ(z )如下:

对于被控对象为带有纯滞后的一阶惯性环节即:

其与零阶保持器相串联的的脉冲传递函数为:

1

()1

s

s e

T s ττ

φ-=+1/1

()

1(1)()=()11T s ττ

T/T s N

T T -Y z e e

e z z Z z R z s T s e

z ττ

φ------??--==?=?

?

?+-??

011()11s NTs Ke Ke

G s T s T s

τ--==

++11/1/1111()11T T Ts s

N T T e

Ke e

G z Z Kz s T s e

z

τ-------??--=?=?

?+-??

于是相应的控制器形式为:

11111

(1)(1)

()(1)1(1)T T T T T T T T N e e z D z K e e z e z τττ-----------=??----??

2.振铃现象及其消除

按大林算法设计的控制器可能会出现一种振铃现象,即数字控制器

的输出以二分之一的采样频率大幅度衰减振荡,会造成执行机构的磨损。 在有交互作用的多参数控制系统中,振铃现象还有可能影响到系统的稳 定性。

衡量振铃现象的强烈程度的量是振铃幅度RA (Ringing Amplitude)。 它的定义是:控制器在单位阶跃输入作用下,第零次输出幅度与第一次 输出幅度之差值。

当被控对象为纯滞后的一阶惯性环节时,数字控制器D (z )为:

11111

(1)(1)

()(1)1(1)T T T T T T T T N e e z D z K e e z e z τττ-----------=??----??

由此可以得到振铃幅度为:

于是,如果选择T τ≥T 1,则RA ≤0,无振铃现象;如果选择T τ≤T 1, 则有振铃现象。由此可见,当系统的时间常数T τ大于或者等于被控对象的 时间常数T 1时,即可消除振铃现象。

三、实验内容

已知某过程对象的传递函数为:

期望的闭环系统时间常数 ,采样周期 。 要求:

(1)适用大林算法设计数字控制器;

(2)判断有无振铃现象,若有则修改控制器消除之,仿真并分析系统在单位阶跃响应下的输出结果;

(3)利用PID 控制器控制该对象,使得系统在单位阶跃信号下的响应满足超调量不超过20%,衰减比为4:1,调节时间不超过4s ;

(4)分析以上两种方法的优缺点。

四、实验过程

11////()()T T T T T T T T RA e e e e ττ

----=---=-16.03)(5.0+=

-s e s G s

s T 25.00=s T 5.0=

(1)大林算法设计数字控制器 已知:

K=3 T1=0.6 N=1 将其带入:

1

1

1

11(1)(1)()(1)1(1)T T T T T T T T N e e z D z K e e z e z τττ-----------=??----??

可以得到D (z )的相关表达式。并用MATLAB 模拟如下:

得到图像如下

(2)无振铃现象

(3)PID 算法设计如下:

s T 25.00=s T 5.0=

得取PID值分别为:

P=0.3 I=0.1 D=0.086

得图像:

(4)第一种方法在设计过程中需要进行一定量的计算,设计的过程较复杂,但是能更快的达到控制所需的条件。第二种方法设计简单,但是实验过程较复杂,需多次尝试。

算法设计与分析实验报告贪心算法

算法设计与分析实验报告 贪心算法 班级:2013156 学号:201315614 姓名:张春阳哈夫曼编码 代码 #include float small1,small2; int flag1,flag2,count; typedefstructHuffmanTree { float weight; intlchild,rchild,parent; }huffman; huffmanhuffmantree[100]; void CreatHuffmanTree(intn,int m) { inti; void select(); printf("请输入%d个节点的权值:",n); for(i=0;i

printf("\n"); for(i=0;i

现代设计黄金分割法复合形法实验报告word文档良心出品

《现代设计理论与方法》实验报告 、实验目的 机械优化设计是一门实践性较强的课程,学生通过实际上机计算可以达到以 下目的: 1. 加深对机械优化设计方法的基本理论和算法步骤的理解; 2. 培养学生独立编制或调试计算机程序的能力; 3. 掌握常用优化方法程序的使用方法; 4 .培养学生灵活运用优化设计方法解决工程实际问题的能力。 、实验项目、学时分配及对每个实验项目的要求 1.明确黄金分割法基本原理、计算步骤及程序框图; 吐 入「土 2?编制或调试黄金分割法应用程序; 1 黄金分割法 2 八' " 3 ?用测试题对所编程序进行测试; 4?撰写实验报告。 1.明确复合形法基本原理、计算步骤及程序框图 等; 2 复合形法 4 2?编制或调试复合形法应用程序; 3 ?用测试题对所编程序进行测试; 4?撰写实验报告。 二、测试题 1. 黄金分割法程序测试题 1 )rn"何二?-10r+36,取坷=0 ,卜皿1, 沪 程序如下: #in clude #in clude #in clude #defi ne e 0.00001 序实验项目 学时 号 实验要求

#define tt 0.01 float function(float x) float y=pow(x,2)-10*x+36;// return(y); void finding(float a[3],float f[3]) float t=tt,a1,f1,ia; int i; f[0]=function(a[0]); for(i=0;;i++) a[1]=a[0]+t;f[1]=function(a[1]); if(f[1]=e) t=-t;a[0]=a[1];f[0]=f[1]; else{ if(ia==1) return; t=t/2;ia=1; for(i=0;;i++) a[2]=a[1]+t;f[2]=function(a[2]); if(f[2]>f[1]) break; t=2*t; a[0]=0;/ / 初始区间的下界值 求解的一维函数

大林算法课程设计

摘要 在控制系统应用中,纯滞后环节往往是影响系统动态特性的不利因素。工业过程中如钢铁,热工和化工过程中往往会有纯滞后环节。对这类系统,控制器如果设计不当,常常会引起系统的超调和持续振荡。由于纯延迟的存在,使被控量对干扰、控制信号不能即时的反映。即使调节机构接受控制信号后立即动作,也要经过纯延时间t后才到达被控量,使得系统产生较大的超调量和较长的调节时间。当t>=0.5T(T为对象的时间常数)时,实践证明用PID控制很难获得良好的控制品质。对这类具有纯滞后环节系统的控制要求,快速性往往是次要的,通常要求系统稳定,要求系统的超调量要小,而调整时间允许在较多的采样周期内结束。 这样的一种大时间滞后系统采用PID控制或采用最少拍控制,控制效果往往不好。本课程设计介绍能满足上述要求的一种直接数字控制器设计方法——大林(Dahlin)算法。 关键字:纯滞后、大林(Dahlin)算法

目录 0引言 (1) 1被控对象模拟与计算机闭环控制系统的构成 (2) 1.1被控对象 (2) 2大林算法 (3) 2.1一阶被控对象的达林算法 (3) 3振铃现象和消除方法 (4) 3.1振铃现象的产生 (4) 3.1.1振铃现象的分析 (4) 3.2振铃幅度RA (6) 3.3振铃现象的消除 (6) 3.4Simulink 仿真 (7) 4一种改进的消除振铃现象的方法 (9) 5总结 (10) 参考文献 (11)

0引言 大林算法是由美国IBM公司的大林(Dahllin)于1968年针对工业生产过程中含纯滞后的控制对象的控制算法。该算法的设计目标是设计一个合适的数字控制器,使整个系统的闭环传递函数为带有原纯滞后时间的一阶惯性环节。大林算法是运用于自动控制领域中的一种算法,是一种先设计好闭环系统的响应再反过来综合调节器的方法。设计的数字控制器(算法)使闭环系统的特性为具有时间滞后的一阶惯性环节,且滞后时间与被控对象的滞后时间相同。此算法具有消除余差、对纯滞后有补偿作用等特点。

北京理工大学《数据结构与算法设计》实验报告实验一

《数据结构与算法设计》 实验报告 ——实验一 学院: 班级: 学号: 姓名:

一、实验目的 1.通过实验实践、巩固线性表的相关操作; 2.熟悉VC环境,加强编程、调试的练习; 3.用C语言编写函数,实现循环链表的建立、插入、删除、取数据等基本操作; 4.理论知识与实际问题相结合,利用上述基本操作实现约瑟夫环。 二、实验内容 1、采用单向环表实现约瑟夫环。 请按以下要求编程实现: ①从键盘输入整数m,通过create函数生成一个具有m个结点的单向环表。环表中的 结点编号依次为1,2,……,m。 ②从键盘输入整数s(1<=s<=m)和n,从环表的第s个结点开始计数为1,当计数到 第n个结点时,输出该第n结点对应的编号,将该结点从环表中消除,从输出结点 的下一个结点开始重新计数到n,这样,不断进行计数,不断进行输出,直到输出 了这个环表的全部结点为止。 三、程序设计 1、概要设计 为实现上述程序功能,应用单向环表寄存编号,为此需要建立一个抽象数据类型:单向环表。 (1)、单向环表的抽象数据类型定义为: ADT Joseph{ 数据对象:D={ai|ai∈ElemSet,i=1,2,3……,n,n≥0} 数据关系:R1={ |ai∈D,i=1,2,……,n} 基本操作: create(&L,n) 操作结果:构造一个有n个结点的单向环表L。 show(L) 初始条件:单向环表L已存在。 操作结果:按顺序在屏幕上输出L的数据元素。 Josephf( L,m,s,n) 初始条件:单向环表L已存在, s>0,n>0,s

机电产品设计实验报告

课程名称:机电产品现代设计方法上课时间:2015年春季 机电产品现代设计方法实验报告 姓名: 学号: 班级: 所在学院:机电工程学院 任课教师:张旭堂

一、实验项目与实验目的 实验项目: 典型机电产品多学科协同优化设计。 试验目的: (1) 掌握典型机电产品多学科协同优化设计软件环境组成,包括建模软件、分析软件、协同平台。 (2)自主设计产品模型、分析过程、优化目标。 (3) 对得到的优化结果进行定性分析,解释结果的合理性,编写上机实验报告。 二、实验环境 网络协同设计环境,如下图所示:包括产品CAD建模、有限元分析FEM、动力学仿真ADAMS和控制仿真MATLAB。计算机网络硬件环境和相应软件环境。图形工作站和路由器,安装协同设计仿真软件。

型 协同设计仿真平台组成 三、实验原理 典型机电产品协同设计仿真工作流程如下图所示。 1)利用CAD建模工具,建立产品模型; 2)利用ADAMS建立产品运动学模型; 3)根据CAD和ADAMS传过来的结构模型和边界条件分析零件应力场和应变场; 4)用ADAMS分析得到的运动参数(位移、速度)。

协同设计仿真平台组成 四、实验内容与步骤 (1)总体方案设计 SysML语言是UML语言(Unified Modeling Language,统一建模语言,一种面向对象的标准建模语言,用于软件系统的可视化建模)在系统工程应用领域的延续和扩展,是近年提出的用于系统体系结构设计的多用途建模语言,用于对由软硬件、数据和人综合而成的复杂系统的集成体系结构进行可视化的说明、分析、设计及校验。 在这里我们绘制参数图如下。在下面的参数图中,我们确定了系统中各部件的相互约束情况。

算法分析_实验报告3

兰州交通大学 《算法设计与分析》 实验报告3 题目03-动态规划 专业计算机科学与技术 班级计算机科学与技术2016-02班学号201610333 姓名石博洋

第3章动态规划 1. 实验题目与环境 1.1实验题目及要求 (1) 用代码实现矩阵连乘问题。 给定n个矩阵{A1,A2,…,A n},其中A i与A i+1是可乘的,i=1,2,…,n-1。考察这n 个矩阵的连乘积A1A2…A n。由于矩阵乘法满足结合律,故计算矩阵的连乘积可以有许多不同的计算次序,这种计算次序可以用加括号的方式来确定。若一个矩阵连乘积的计算次序完全确定,则可以依此次序反复调用2个矩阵相乘的标准算法(有改进的方法,这里不考虑)计算出矩阵连乘积。 确定一个计算顺序,使得需要的乘的次数最少。 (2) 用代码实现最长公共子序列问题。 一个给定序列的子序列是在该序列中删去若干元素后得到的序列。确切地说,若给定序列X= < x1, x2,…, xm>,则另一序列Z= < z1, z2,…, zk>是X的子序列是指存在一个严格递增的下标序列< i1, i2,…, ik>,使得对于所有j=1,2,…,k有Xij=Zj 。例如,序列Z=是序列X=的子序列,相应的递增下标序列为<2,3,5,7>。给定两个序列X和Y,当另一序列Z既是X的子序列又是Y的子序列时,称Z是序列X和Y的公共子序列。例如,若X= < A, B, C, B, D, A, B>和Y= < B, D, C, A, B, A>,则序列是X和Y的一个公共子序列,序列也是X和Y的一个公共子序列。而且,后者是X和Y的一个最长公共子序列,因为X和Y没有长度大于4的公共子序列。 (3) 0-1背包问题。 现有n种物品,对1<=i<=n,已知第i种物品的重量为正整数W i,价值为正整数V i,背包能承受的最大载重量为正整数W,现要求找出这n种物品的一个子集,使得子集中物品的总重量不超过W且总价值尽量大。(注意:这里对每种物品或者全取或者一点都不取,不允许只取一部分) 使用动态规划使得装入背包的物品价值之和最大。 1.2实验环境: CPU:Intel(R) Core(TM) i3-2120 3.3GHZ 内存:12GB 操作系统:Windows 7.1 X64 编译环境:Mircosoft Visual C++ 6 2. 问题分析 (1) 分析。

大林算法课程设计报告

微型计算机控制技术课程设计报告 班级:自动化901 A B C

一、课题名称 大林算法控制系统设计 二、课程设计目的 课程设计是课程教学中的一项重要内容,是达到教学目标的重要环节,是综合性较强的实践教学环节,它对帮助学生全面牢固地掌握课堂教学内容、培养学生的实践和实际动手能力、提高学生全面素质具有很重要的意义。 《计算机控制技术》是一门理论性、实用性和实践性都很强的课程,课程设计环节应占有更加重要的地位。计算机控制技术的课程设计是一个综合运用知识的过程,它需要控制理论、程序设计、硬件电路设计等方面的知识融合。通过课程设计,加深对学生控制算法设计的认识,学会控制算法的实际应用,使学生从整体上了解计算机控制系统的实际组成,掌握计算机控制系统的整体设计方法和设计步骤,编程调试,为从事计算机控制系统的理论设计和系统的调试工作打下基础。 三、课程设计内容 已知被控对象的传递函数为: 采样周期为T=0.5s ,用大林算法设计数字控制器D(z),并分析是否会产生振铃现象。 四、课程设计要求 1、用大林算法设计数字控制器D(z) ; 2、在 Simulink 仿真环境画出仿真框图及得出仿真结果,画出数字控制; 3、绘制并分析数字控制器的振铃现象; 4、对振铃现象进行消除; 5、得出仿真结果并进行仿真分析; 6、程序清单及简要说明; 7、成设计说明书(列出参考文献,以及仿真结果及分析)。 五、大林算法控制系统方案设计 在控制系统应用中,纯滞后环节往往是影响系统动态特性的不利因素。工业过程中如钢铁,热工和化工过程中往往会有纯滞后环节。对这类系统,控制器如果设计不当,常常会引起系统的超调和持续振荡。 由于纯延迟的存在,使被控量对干扰、控制信号不能即时的反映。即使调节机构接受控制信号后立即动作,也要经过纯延时间t 后才到达被控量,使得系统产生较大的超调量和较长的调节时间。当t >=0.5T (T 为对象的时间常数)时,实践证明用PID 控制很难获得良好的控制品质。 对这类具有纯滞后环节系统的控制要求,快速性往往是次要的,通常要求系统稳定,要求系统的超调量要小,而调整时间允许在较多的采样周期内结束。 这样的一种大时间滞后系统采用PID 控制或采用最少拍控制,控制效果往往不好。本节介绍能满足上述要求的一种直接数字控制器设计方法 ——达林(Dahlin)算法 ()1s e G s s -=+

算法设计与实验报告讲解

算法设计与分析实验报告 学院:信息学院 专业:物联网1101 姓名:黄振亮 学号:20113379 2013年11月

目录 作业1 0-1背包问题的动态规划算法 (7) 1.1算法应用背景 (3) 1.2算法原理 (3) 1.3算法描述 (4) 1.4程序实现及程序截图 (4) 1.4.1程序源码 (4) 1.4.2程序截图 (5) 1.5学习或程序调试心得 (6) 作业2 0-1背包问题的回溯算法 (7) 2.1算法应用背景 (3) 2.2算法原理 (3) 2.3算法描述 (4) 2.4程序实现及程序截图 (4) 2.4.1程序源码 (4) 2.4.2程序截图 (5) 2.5学习或程序调试心得 (6) 作业3循环赛日程表的分治算法 (7) 3.1算法应用背景 (3) 3.2算法原理 (3) 3.3算法描述 (4) 3.4程序实现及程序截图 (4)

3.4.1程序源码 (4) 3.4.2程序截图 (5) 3.5学习或程序调试心得 (6) 作业4活动安排的贪心算法 (7) 4.1算法应用背景 (3) 4.2算法原理 (3) 4.3算法描述 (4) 4.4程序实现及程序截图 (4) 4.4.1程序源码 (4) 4.4.2程序截图 (5) 4.5学习或程序调试心得 (6)

作业1 0-1背包问题的动态规划算法 1.1算法应用背景 从计算复杂性来看,背包问题是一个NP难解问题。半个世纪以来,该问题一直是算法与复杂性研究的热点之一。另外,背包问题在信息加密、预算控制、项目选择、材料切割、货物装载、网络信息安全等应用中具有重要的价值。如果能够解决这个问题那么则具有很高的经济价值和决策价值,在上述领域可以获得最大的价值。本文从动态规划角度给出一种解决背包问题的算法。 1.2算法原理 1.2.1、问题描述: 给定n种物品和一背包。物品i的重量是wi,其价值为vi,背包的容量为C。问:应如何选择装入背包的物品,使得装入背包中物品的总价值最大? 形式化描述:给定c >0, wi >0, vi >0 , 1≤i≤n.要求找一n元向量(x1,x2,…,xn,), xi ∈{0,1}, ?∑ wi xi≤c,且∑ vi xi达最大.即一个特殊的整数规划问题。 1.2.2、最优性原理: 设(y1,y2,…,yn)是 (3.4.1)的一个最优解.则(y2,…,yn)是下面相应子问题的一个最优解: 证明:使用反证法。若不然,设(z2,z3,…,zn)是上述子问题的一个最优解,而(y2,y3,…,yn)不是它的最优解。显然有 ∑vizi > ∑viyi (i=2,…,n) 且 w1y1+ ∑wizi<= c 因此 v1y1+ ∑vizi (i=2,…,n) > ∑ viyi, (i=1,…,n) 说明(y1,z2, z3,…,zn)是(3.4.1)0-1背包问题的一个更优解,导出(y1,y2,…,yn)不是背包问题的最优解,矛盾。 1.2.3、递推关系:

机电产品现代设计方法实验报告

课程名称:机电产品现代设计方法 上课时间:2014年春季 机电产品现代设计方法实验报告 姓名: 学号: 班级: 所在学院:机电工程学院 任课教师:金天国张旭堂

实验名称机电产品现代设计方法 姓名学号班级 实验地点实验日期评分 指导教师张旭堂同组成员其他 1 静态存储器扩展实验 1.1 实验目的 (1)掌握典型机电产品多学科协同优化设计软件环境组成,包括建模软件、分析软件、协同平台; (2)自主设计产品模型、分析过程、优化目标; (3)对得到的优化结果进行定性分析,解释结果的合理性,编写上机实验报告。 1.2 实验内容 (1) 轴的有限元分析 (2) 基于Adams的运动学分析与仿真 1.3实验相关情况介绍(包含使用软件或实验设备等情况) 1.3.1使用软件 本实验使用软件为Adams及abaqus,利用Adams进行运动学仿真分析,利用abaqus进行有限元分析。 1.3.2实验设备 计算机。 1.4实验结果 1.4.1基于ADAMS 的运动学仿真 (1)构造ADAMS样机机械模型 根据指导书建立铲车的三维模型。三维模型可以通过专门三维建模软件进行建模,然后导入ADAMS,也可以直接用ADAMS建模。利用ADAMS建模过程在《adams 运动仿真例子》中有详述,直接给出建模后的模型,如图1所示:

图1 铲车模型 (2)构建约束 根据要求构造四个约束:基座和座架之间的创建转动副,轴肩与座架间构建转动副,铲斗与悬臂间构建转动副,悬臂与轴肩之间构建平动副。构建后的模型如图2所示: 图2 添加约束铲车模型 (3)添加运动 根据题意分别对四个运动副添加运动函数: (a)基座和座架之间的创建转动副:360d*time;

算法分析实验报告--分治策略

《算法设计与分析》实验报告 分治策略 姓名:XXX 专业班级:XXX 学号:XXX 指导教师:XXX 完成日期:XXX

一、试验名称:分治策略 (1)写出源程序,并编译运行 (2)详细记录程序调试及运行结果 二、实验目的 (1)了解分治策略算法思想 (2)掌握快速排序、归并排序算法 (3)了解其他分治问题典型算法 三、实验内容 (1)编写一个简单的程序,实现归并排序。 (2)编写一段程序,实现快速排序。 (3)编写程序实现循环赛日程表。设有n=2k个运动员要进行网球循环赛。现 要设计一个满足以下要求的比赛日程表:(1)每个选手必须与其它n-1个选手各赛一次(2)每个选手一天只能赛一场(3)循环赛进行n-1天 四、算法思想分析 (1)编写一个简单的程序,实现归并排序。 将待排序元素分成大小大致相同的2个子集合,分别对2个子集合进行 排序,最终将排好序的子集合合并成为所要求的排好序的集合。 (2)编写一段程序,实现快速排序。 通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有 数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数 据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据 变成有序序列。 (3)编写程序实现循环日赛表。 按分治策略,将所有的选手分为两组,n个选手的比赛日程表就可以通

过为n/2个选手设计的比赛日程表来决定。递归地用对选手进行分割, 直到只剩下2个选手时,比赛日程表的制定就变得很简单。这时只要让 这2个选手进行比赛就可以了。 五、算法源代码及用户程序 (1)编写一个简单的程序,实现归并排序。 #include #include #define MAX 10 using namespace std; void merge(int array[],int p,int q,int r) { int i,k; int begin1,end1,begin2,end2; int* temp = new int[r-p+1]; begin1 = p; end1 = q; begin2 = q+1; end2 = r; k = 0; while((begin1 <= end1)&&(begin2 <= end2)) { if(array[begin1] < array[begin2]) { temp[k] = array[begin1]; begin1++; } else { temp[k] = array[begin2]; begin2++; } k++; } while(begin1 <= end1) {

实验 大林算法(1)

实验 大林算法 一、实验目的 1.进一步掌握大林算法 2.熟悉大林算法硬件电路结构 二、实验器材 https://www.360docs.net/doc/936319269.html,KL —4型实验箱 2.虚拟示波器(软件) 3.计算机 三、实验线路原理 (1)纯滞后环节是通过控制采样保持器,使采样保持器的输出滞后D/A 输出一拍来模拟实现的。 采样周期T=0.2S ,大林设计目标定为:W b (S)=1 S e rs +τ- 式中τ=0.1S (2)D(Z)算法 计算机输入为E(Z),输出为U(Z),有: D(Z)=3 322113 322110Z P Z P Z P 1Z K Z K Z K K )Z (E )Z (U ------++++++= 将D(Z)式写成差分方程,则有: U K =K 0E K +K 1E K-1+K 2E K-2+K 3E K-3-P 1U K-1-P 2U K-2-P 3U K-3 (3)采样周期T 计算机用8253产生定时信号,定时10ms ,采样周期T 为:T=T K ×10ms T K 需事先送入2F60H 单元。范围:01H ~FFH ,对应T 的范围:10ms ~2550ms ,实验取T=0.2S=200ms ,T K =20=14H 。 (4)接线:

四、实验内容及步骤 (1)根据设计要求,确定计算机的D(Z)各个系数。 D(Z)=(0.48-0.3936Z-1)/(1-0.1350Z-1-0.8650Z-2) K0=0.4800, K1=-0.3936, K2=0, K3=0, P1=-0.1350, P2=0.8650, P3=0 (2)S11置方波档,S12置T3档,调W12使U1单元的OUT端的输出波形为2.5V方波,实验过程中调节W11改变波形的周期。S与ST短接。 (3)装入程序(TH6-1.EXE),使用默认的段地址和偏移量,由于程序前256T数据为存储缓冲,T K值(14H)存入2F60H单元,。 (4)在调试窗口内运行程序G=0000:2000,对照输入R观察输出C点的波形。 图6.1-4

银行家算法设计实验报告

银行家算法设计实验报告

银行家算法设计实验报告 一.题目分析 1.银行家算法: 我们可以把操作系统看做是银行家,操作系统管理的资源相当于银行家管理的资金,进程向操作系统请求资源相当于客户向银行家贷款。操作系统按银行家制定的规则为进程分配资源,当进程首次申请资源时,要测试该进程尚需求的资源量,若是系统现存的资源可以满足它尚需求的资源量,则按当前的申请量来分配资源,否则就推迟分配。 当进程在执行中继续申请资源时,先测试该进程申请的资源量是否超过了它尚需的资源量。若超过则拒绝分配,若没有超过则再测试系统尚存的资源是否满足该进程尚需的资源量,若满足即可按当前的申请量来分配,若不满足亦推迟分配。 2.基本要求: (1)可以输入某系统的资源以及T0时刻进程对资源的占用及需求情况的表项,以及T0时刻系统的可利用资源数。 (2)对T0时刻的进行安全性检测,即检测在T0时刻该状态是否安全。

(3)进程申请资源,用银行家算法对其进行检测,分为以下三种情况: A. 所申请的资源大于其所需资源,提示分配不合理不予分配并返回 B. 所申请的资源未大于其所需资源, 但大于系统此时的可利用资源,提 示分配不合理不予分配并返回。 C. 所申请的资源未大于其所需资源, 亦未大于系统此时的可利用资源,预 分配并进行安全性检查: a. 预分配后系统是安全的,将该进 程所申请的资源予以实际分配并 打印后返回。 b. 与分配后系统进入不安全状态,提示系统不安全并返回。 (4)对输入进行检查,即若输入不符合条件,应当报错并返回重新输入。 3.目的: 根据设计题目的要求,充分地分析和理解题 目,叙述系统的要求,明确程序要求实现的功能以及限制条件。 明白自己需要用代码实现的功能,清楚编写每部分代码的目的,做到有的放矢,有条理不遗漏的用代码实现银行家算法。

现代设计方法实验报告

《现代机械设计方法学》实验报告 班级: 学号: 姓名: 成绩:

实验一、有限元分析 (一)目的: 1、初步掌握有限元软件分析力学问题的过程,包括几何建模、网格划分等前处理功能,掌握各种计算结果的阅读。 2、掌握材料数据、载荷、约束的添加方法。 (二)要求:学生独立完成一个算例的有限元分析,并阅读其计算结果,提交一个算例的分析报告。 (三)计算实例 1、问题的描述 为了考察铆钉在冲压时,发生多大的变形,对铆钉进行分析。 铆钉圆柱高:10mm 铆钉圆柱外径:6mm 铆钉下端球径:15mm 弹性模量:2.06E11 泊松比:0.3 铆钉材料的应力应变关系如下: 应变0.003 0.005 0.007 0.009 0.011 0.02 0.2 618 1128 1317 1466 1510 1600 1610 应力 /Mpa

1、有限元模型。

3、应力云图,可选主应力或σx、σy、τxy、V on Mises应力、Tresca应力之一输出结果图片,指明你所选的应力的最大值及其位置。 (三)思考题: 1、如果要提高边界处计算精度,一般应如何处理? 答:在边界处划分网格 2、有限元网格划分时应注意哪些问题? 答:选取的时候要将编号显示出来,这样就可以更好的选择,网格尽可能的小,这样结果就越准确。

实验二、优化实验 (一)目的: 初步掌握利用ANSYS软件或MATLAB软件对问题进行分析。 (二)要求: 学生独立完成一个算例的分析,并给出算例的计算结果。。 (三)算例 1.实际问题 梁的形状优化,优化目的是使梁的体积最小,同时要求梁上的最大应力不 超过30000psi,梁的最大挠度不大于0.5in,沿长度方向梁的厚度可以变化,但梁端头的厚度为定值t,采用对称建模。 使用两种方法进行优化,两种方法优化结果。 子问题近视法目标ANSYS 百分比(TVOL)体积in3 3.60 3.62 1.004 (DEFL)挠度max in 0.500 0.499 0.998 (STRS)应力max,psi 30000 29740 0.991 第一阶法目标ANSYS 百分比(TVOL)体积in3 3.6 3.61 1.003 (DEFL)挠度max in 0.5 0.5 1.001 STRS)应力max,psi 30000 29768 0.992

大林算法实验报告(20200623034811)

大林算法实验报告 一、实验目的 1、 掌握大林控制算法的基本概念和实现方法; 2、 进一步熟悉MATLAB 的使用方法; 3、 掌握在MATLAB 下大林算法控制器的调试方法; 4、 观察振铃现象,并且尝试消除振铃现象 二、实验原理 1■大林算法的原理及推导 大林算法是IBM 公司的大林(Dahlin)在1968年提出了一种针对工业生产过程中含有纯 滞后对象的控制算法。其目标就是使整个闭环系统的传递函数 相当于一个带有纯滞后的一 阶惯性环节。该算法具有良好的控制效果。 大林控制算法的设计目标是使整个闭环系统所期望的传递函数 0 (s) 相当于一个延迟环节和一个惯性环节相串联,即 : 整个闭环系统的纯滞后时间和被控对象 G0(s)的纯滞后时间T 相同。 闭环系统的时间常数为 T T ,纯滞后时间T 与采样周期T 有整数倍关系, T =NT 。 其控制器形式的推导的思路是用近似方法得到系统的闭环脉冲传递函数,然后再由被 控系统的脉冲传递函数,反推系统控制器的脉冲传递函数。 由大林控制算法的设计目标,可知整个闭环系统的脉冲传递函数应 当是零阶保持器与理想的 0 (s)串联之后的Z 变换,即0 (z)如下: R(z) _ s Ts 1 1- e T z 对于被控对象为带有纯滞后的一阶惯性环节即: s NTs Ke G o (s)- 1 Tp Ke 1 「s 其与零阶保持器相串联的的脉冲传递函数为: (s)二 1 Ts 1 G (z)=z3 心 .s 1 + T 1S 」 K Z — NT T/T 1 1 _ e ; 1 ■ e z

于是相应的控制器形式为: (仁「厲)(仁/仁一1 ) K (I e TTl )1 - ―1 -(1 e TT )^N_1 2■振铃现象及其消除 按大林算法设计的控制器可能会出现一种振铃现象,即数字控制器 的输出以二分之一的采样频率大幅度衰减振荡,会造成执行机构的磨损。 在有交互作用的多参数控制系统中,振铃现象还有可能影响到系统的稳 定性。 衡量振铃现象的强烈程度的量是振铃幅度 RA (Ringing Amplitude)。 它的定义是:控制器在单位阶跃输入作用下,第零次输出幅度与第一次 输出幅度之差值。 当被控对象为纯滞后的一阶惯性环节时,数字控制器 D(z)为: D 注 ⑴e TT )(i -宀\ D(Z) T T 1 T T -1 T T N -1 K(1- e J 1- e "z - (1- e f)z ] 由此可以得到振铃幅度为: T/T T/T 1 T/T 1 -T/T RA= ( e ) -( e 1 p e - e 于是,如果选择 T T >T1,则RA W 0,无振铃现象;如果选择 T T < T1, 则有振铃现象。由此可见,当系统的时间常数 T T 大于或者等于被控对象的 时间常数T1时,即可消除振铃现象。 三、实验内容 已知某过程对象的传递函数为: 期望的闭环系统时间常数 T 0 = 0.25s ,采样周期 T =0.5s 。 要求: (1) 适用大林算法设计数字控制器; (2) 判断有无振铃现象,若有则修改控制器消除之,仿真并分析系统在单位阶跃响应下 的输出结果; (3) 利用PID 控制器控制该对象,使得系统在单位阶跃信号下的响应满足超调量不超过 20%,衰减比为4:1,调节时间不超过 4s ; ⑷分析以上两种方法的优缺点。 四、实验过程 G (s )二 3e -0.5s 0.6s 1

南京邮电大学算法设计实验报告——动态规划法

实验报告 (2009/2010学年第一学期) 课程名称算法分析与设计A 实验名称动态规划法 实验时间2009 年11 月20 日指导单位计算机学院软件工程系 指导教师张怡婷 学生姓名丁力琪班级学号B07030907 学院(系) 计算机学院专业软件工程

实验报告 实验名称动态规划法指导教师张怡婷实验类型验证实验学时2×2实验时间2009-11-20一、实验目的和任务 目的:加深对动态规划法的算法原理及实现过程的理解,学习用动态规划法解决实际应用中的最长公共子序列问题。 任务:用动态规划法实现求两序列的最长公共子序列,其比较结果可用于基因比较、文章比较等多个领域。 要求:掌握动态规划法的思想,及动态规划法在实际中的应用;分析最长公共子序列的问题特征,选择算法策略并设计具体算法,编程实现两输入序列的比较,并输出它们的最长公共子序列。 二、实验环境(实验设备) 硬件:计算机 软件:Visual C++

三、实验原理及内容(包括操作过程、结果分析等) 1、最长公共子序列(LCS)问题是:给定两个字符序列X={x1,x2,……,x m}和Y={y1,y2,……,y n},要求找出X和Y的一个最长公共子序列。 例如:X={a,b,c,b,d,a,b},Y={b,d,c,a,b,a}。它们的最长公共子序列LSC={b,c,d,a}。 通过“穷举法”列出所有X的所有子序列,检查其是否为Y的子序列并记录最长公共子序列并记录最长公共子序列的长度这种方法,求解时间为指数级别的,因此不可取。 2、分析LCS问题特征可知,如果Z={z1,z2,……,z k}为它们的最长公共子序列,则它们一定具有以下性质: (1)若x m=y n,则z k=x m=y n,且Z k-1是X m-1和Y n-1的最长公共子序列; (2)若x m≠y n且x m≠z k,则Z是X m-1和Y的最长公共子序列; (3)若x m≠y n且z k≠y n,则Z是X和Y的最长公共子序列。 这样就将求X和Y的最长公共子序列问题,分解为求解较小规模的问题: 若x m=y m,则进一步分解为求解两个(前缀)子字符序列X m-1和Y n-1的最长公共子序列问题; 如果x m≠y n,则原问题转化为求解两个子问题,即找出X m-1和Y的最长公共子序列与找出X 和Y n-1的最长公共子序列,取两者中较长者作为X和Y的最长公共子序列。 由此可见,两个序列的最长公共子序列包含了这两个序列的前缀的最长公共子序列,具有最优子结构性质。 3、令c[i][j]保存字符序列X i={x1,x2,……,x i}和Y j={y1,y2,……,y j}的最长公共子序列的长度,由上述分析可得如下递推式: 0 i=0或j=0 c[i][j]= c[i-1][j-1]+1 i,j>0且x i=y j max{c[i][j-1],c[i-1][j]} i,j>0且x i≠y j 由此可见,最长公共子序列的求解具有重叠子问题性质,如果采用递归算法实现,会得到一个指数时间算法,因此需要采用动态规划法自底向上求解,并保存子问题的解,这样可以避免重复计算子问题,在多项式时间内完成计算。 4、为了能由最优解值进一步得到最优解(即最长公共子序列),还需要一个二维数组s[][],数组中的元素s[i][j]记录c[i][j]的值是由三个子问题c[i-1][j-1]+1,c[i][j-1]和c[i-1][j]中的哪一个计算得到,从而可以得到最优解的当前解分量(即最长公共子序列中的当前字符),最终构造出最长公共子序列自身。

物体运动的方式实验报告

物体运动的方式实验报告 (文章一):实验报告四年级4课.小吊车活动1:做小吊车(分组实验)制作目的:做小吊车并研究小吊车原理制作材料及工具:小纸盒吊车臂吊臂支架线绳两个铁丝钩一个剪刀锥子胶水钩码制作过程: 1.小组分工合作 2.观察小吊车模型组装各部分①四个点要对称,固定牢固;②绳子要从前往后穿,不要穿反了; 3.调试小吊车分别拉动两根线,看看小吊车的臂能否灵活运动. 实验现象:小吊车能提起或放下钩码实验结论:放松上牵引绳,拉紧下牵引绳,吊臂向下运动;拉紧上牵引绳,放松下牵引绳,吊臂向上运动。活动2:收与放实验目的:推断动物与人的肢体运动原理(分组实验) 实验过程: 1. 弯曲手臂,感受上臂上下肌肉的长短松紧变化。 2.伸直手臂,感受上臂上下肌肉的长短松紧变化。 3.反复几次体会与小吊车的原理的联系。实验现象:手臂骨骼就像小吊车的吊臂,肌肉就像绳子,手臂运动时,当肱二头肌收缩,肱三头肌舒张时,肱二头肌牵动前臂向内收缩;当肱三头肌收缩,肱二头肌舒张时,肱三头肌牵动前臂向外伸展. 实验结论:前臂收缩类似小吊车抬起重物。前臂伸展类似小吊车放下重物。6课.做沙盘(分组实验)制作目的:通过制作校园沙盘模型培养学生的设计制作能力。制作材

料:硬纸板学校平面图橡皮泥潮湿的沙土废旧泡沫包装纸小木棍颜料盒剪刀制作步骤:对校园建筑的布局进行观测2.用大的硬纸板做底座。在纸板上画好学校平面图。(明确建筑物.树木等的位置) 3.用橡皮泥旧泡沫等材料做出立体的楼房等校园建筑物,根据平面图摆放好位置。(可以用长方体或正方体的泡沫做楼房,硬纸板做围墙,小木棍做旗杆等)。4.要注意建筑物的比例。(四年级的学生还不能很精确地计算出比例尺,教师适当指导。)8课.快与慢实验目的:研究小车运动的快慢(分组实验) 实验材料:秒表(或电子手表)、长尺、玩具车(学生自带),橡皮泥,马达、电池等(学生自带)实验过程: 1.小组做好分工:赛车手、计时员、测量员、记录员。 2.找好起点(必要时确定好终点); 3.秒表做好归零; 4.在相同时间内必须进行多次测量(不少于3次),并做好记录 5. .在相同距离内必须进行多次测量(不少于3次),并做好记录实验结论:1:相同时间内经过的距离越长,物体运动的速度越快2:相同距离下所用的时间越短,物体运动的速度越快活动2:玩小车实验目的:研究小车运动的快慢与载重物及路面光滑程度是否有关?(对比试验) 实验材料:秒表(或电子手表), 木板, 玩具车(学生自带),钩码, 毛巾. 实验方法:1做好小组分工:赛车手、计时员、记录员; 2先测量空车时小车在木板上运动时间; 3别的条件不变,向小车上加钩

武汉理工大学算法分析实验报告

学生实验报告书 实验课程名称算法设计与分析开课学院计算机科学与技术学院 指导教师姓名李晓红 学生姓名 学生专业班级软件工程zy1302班2015-- 2016学年第一学期

实验课程名称:算法设计与分析 同组者实验日期2015年10月20日第一部分:实验分析与设计 一.实验内容描述(问题域描述) 1、利用分治法,写一个快速排序的递归算法,并利用任何一种语言,在计算机上实现,同时 进行时间复杂性分析; 2、要求用递归的方法实现。 二.实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或者算法描述) 本次的解法使用的是“三向切分的快速排序”,它是快速排序的一种优化版本。不仅利用了分治法和递归实现,而且对于存在大量重复元素的数组,它的效率比快速排序基本版高得多。 它从左到右遍历数组一次,维护一个指针lt使得a[lo..lt-1]中的元素都小于v,一个指针gt 使得a[gt+1..hi]中的元素都大于v,一个指针i使得a[lt..i-1]中的元素都等于v,a[i..gt]中的元素都还未确定,如下图所示: public class Quick3way { public static void sort(Comparable[] a, int lo, int hi) { if (lo >= hi) return; int lt = lo, i = lo + 1, gt = hi; Comparable pivot = a[lo];

第二部分:实验调试与结果分析 一、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等) 1、调试方法描述: 对程序入口进行断点,随着程序的运行,一步一步的调试,得到运行轨迹; 2、实验数据: "R", "B", "W", "W", "R", "W", "B", "R", "R", "W", "B", "R"; 3、实验现象: 4、实验过程中发现的问题: (1)边界问题: 在设计快速排序的代码时要非常小心,因为其中包含非常关键的边界问题,例如: 什么时候跳出while循环,递归什么时候结束,是对指针的左半部分还是右半部分 排序等等; (2)程序的调试跳转: 在调试过程中要时刻记住程序是对那一部分进行排序,当完成了这部分的排序后, 会跳到哪里又去对另外的那一部分进行排序,这些都是要了然于心的,这样才能准 确的定位程序。 二、实验结果分析(包括结果描述、实验现象分析、影响因素讨论、综合分析和结论等) 1、实验结果:

算法与设计实验报告

算法与分析实验报告软件工程专业 安徽工业大学 指导老师:许精明

实验内容 1:杨辉三角 2:背包问题 3:汉诺塔问题 一:实验目的 1:掌握动态规划算法的基本思想,学会用其解决实际问题。 2:通过几个基本的实验,提高算法分析与设计能力,提高动手操作能力和培养良好的编程习惯。 二:实验内容 1:杨辉三角 2:背包问题 3:汉诺塔问题 实验一:杨辉三角

问题分析: ①每行数字左右对称,由1开始逐渐变大,然后变小,回到1。 ②第n行数之和为2^n。 ③下一行每个数字等于上一行的左右两个数字之和。 算法设计及相关源代码: public void yanghui(int n) { int[] a = new int[n]; if(n==1){ System.out.println(1); }else if(n==2) { System.out.print(1 + " " +1); }else{ a[1]=1; System.out.println(a[1]); a[2]=1;

System.out.println(a[1]+" "+a[2]); for(int i=3;i<=n;i++){ a[1]=a[i]=1; for(int j=i-1;j>1;j--){ a[j]=a[j]+a[j-1]; } for(int j=1;j<=i;j++){ System.out.print(a[j]+" "); } System.out.println(); } } } 实验结果:n=10 实验二:0-1背包问题 问题分析::令V(i,j)表示在前i(1<=i<=n)个物品中能够装入容量为就 j(1<=j<=C)的背包中的物品的最大价值,则可以得到如下的动态规划函数: (1) V(i,0)=V(0,j)=0 (2) V(i,j)=V(i-1,j) j

哈工大机电产品现代设计方法实验报告

1 实验目的 (1)掌握典型机电产品多学科协同优化设计软件环境组成,包括建模软件、分析软件、协同平台; (2)自主设计产品模型、分析过程、优化目标; (3) 对得到的优化结果进行定性分析,解释结果的合理性,编写上机实验报告。 2 实验内容 (1) 轴或负载台的有限元分析 (2) 基于Adams的运动学分析与仿真 3实验相关情况介绍(包含使用软件或实验设备等情况) 网络协同设计环境,如图1所示:包括产品CAD建模、有限元分析FEM、动力学仿真ADAMS和控制仿真MATLAB。计算机网络硬件环境和相应软件环境。图形工作站和路由器,安装协同设计仿真软件。 型 图1 协同设计仿真平台组成

典型机电产品协同设计仿真工作流程如下图2所示。 1)利用CAD建模工具,建立产品模型; 2)利用ADAMS建立产品运动学模型; 3)根据CAD和ADAMS传过来的结构模型和边界条件分析零件应力场和应变场;4)用ADAMS分析得到的运动参数(位移、速度)。 CAD模型 (STEP / IGES格式) 1.产品CAD建模 (CATIA) 3.CAE有限元分 析 (CATIA) FEM 分析结果 (应力、应变、模态) 2.动力学分析 (ADAMS) 驱动力、反应 时间 有限元输入载荷 4.控制仿真 (MATLAB) 运动参数:位 移、速度 动力参数:惯 量、载荷 图2 协同设计仿真平台组成 SysML语言是UML语言(Unified Modeling Language,统一建模语言,一种面向对象的标准建模语言,用于软件系统的可视化建模)在系统工程应用领域的延续和扩展,是近年提出的用于系统体系结构设计的多用途建模语言,用于对由软硬件、数据和人综合而成的复杂系统的集成体系结构进行可视化的说明、分析、设计及校验。 在这里我们绘制参数图如下。在下面的参数图中,我们确定了系统中各部件的相互约束情况。

相关文档
最新文档