1、液压元件与系统设计 液压系统设计(第五讲)电液速度控制系统实例速度控制系统给定设计参数为:负载转动惯量 J 0.43kgm2最大负载转矩 T 49Nm转速范围 n=34195 r/min供油压力 ps 7.84MPa速度传感器增益 Kfv 0.19Vs/rad性能指标为:跟踪精度 l r/min完成准确跟踪的时间 0.9s(1)决定系统控制方案采用伺服阀控制液压马达的阀控系统。(2)确定马达排量取则马达排量为或选取 BMl10 摆线液压马达,其排量为 Dm=10210-6m3/r或 Dm=16310-7m3/rad(3)选择伺服阀规格伺服阀流量为:此时阀的压降为:查伺服阀样本,选用 QDYC6
2、3 型,额定电流为 30mA,供油压力为 7.84MPa时的额定空载流量为 1.0510-3m3 s。(4)确定传递函数(A)电液伺服阀的传递函数伺服阀的增益由样本得:于是电液伺服阀的传递函数为(B) 液压马达的传递函数马达油腔容腔与伺服阀到马达间容积之和为又取则:取:于是液压马达的传递函数为速度传感器的传递函数积分放大器的传递函数(5)绘制系统开环频率特性由图可见,为了满足系统稳定性的条件,取开环频率特性的相位滞后 180点上的幅值裕量为 6分贝,此时的角稳定裕量为 87 ,由于幅值稳定裕量不能减小,所以穿越频率不能再增加。(6)确定系统开环增益及积分放大器增益开环增益:由系统波德图知,在区
3、间 c内, L()是一条斜率为 -20dB/dec的直线,所以:求得积分放大器的增益为(7)速度控制系统的开环传递函数系统的开环传递函数为(8)计算系统的稳态误差因为系统是 I型系统,对速度指令信号误差为零,满足了跟踪精度为 l r/min的要求。(9)系统的仿真实验由试验结果可见,现有系统是稳定的,没有超调,但上升过程有几次小的振荡。过渡过程在 0.1秒以内结束,完全满足在 0.9秒内完成准确跟踪的任务。 力控制系统设计实例现要求设计一个如图的力控制系统。其设计参数及性能指标为:液压缸最大速度: 1cm/s(1)液压缸的确定根据力控制系统的控制特性,系统要在供油压力的 95状态下工作取负载压
4、力pL 0.95ps 16.625MPa,则液压缸有效工作面积 A Fm pL 54.2cm2,令 d D 0.5,则 D 9.59cm,取 D 10cm, d 5.5cm,校核得 A 54.78cm2。最大流量(2)选择电液伺服阀选定压力降为 7MPa,输出流量为 3.8 1/min的伺服阀。设阀的流量增益 Kq,压力一流量增益Kc分别为压力增益阀的额定电流 IR 150mA,输出位移 xv 0.038cm,增益为(3)力反馈传感器输入力为 Ff 113000N,输出电压为 Vf 0.01V,其增益为(4)静态特性为得到 5静态控制精度,开环增益取 K0 25,电放大器增益(5)动态特性为了
5、确定 l、 2,要计算油的压缩性,设油路的阻尼系数其中 V是液压缸的总油腔容积,为确保行程充裕,选择工作行程大于 10cm行程的液压缸,取行程为 x 15cm的液压缸,计算液压缸容腔 V Ax =8.2210-4m3,假设 4 14108Pa,则此时油路阻尼系数 C 0.14610-12m3 (N m2)。根据油的压缩性,计算弹性系数把这个值与 k比较,可知控制系统在 的情况下工作,负载弹簧 k 180000N cm时负载弹簧 k 9000N cm时取开环增益为 25,根据开环放大特性求出穿越频率:负载弹簧 k 180000N cm时负载弹簧 k 9000N cm时对应于 3的阻尼比3的共振峰
6、值超过了零分贝轴,这是造成系统不稳定的原因。频率 2、 3与负载质量有关,由负载弹簧刚度的最大值决定。k 180000N cm时,弹簧的计算频率为,使得系统的超调量减少。为此在 2前的一个频率处加入一个校正环节MATLAB介绍1 MATLAB基本使用 界面简介; 简单的数学运算 ; MATLAB变量 ; 脚本和帮助;脚本文件 、 在线帮助 。2 MATLAB的基本矩阵运算 简单矩阵输入键盘输入 、 语句生成 矩阵运算矩阵的转置(复数 conj) 、 矩阵的四则运算、矩阵的乘方 、 矩阵的超越函数 、关系和逻辑运算 矩阵操作矩阵下标、矩阵大小、矩阵操作函数、逻辑矩阵、矩阵查找和排序结束The E
7、nd MATLAB可以象计算器一样进行一些简单的数学运算。 MATLAB通常不考虑空格,并且计算结果赋给了变量 ans(answer的缩写 )。 MATLAB中的变量是区分大小写的 。 Aa; aa。 变量可以参与运算之中 。 Bb=aa*10。 MATLAB命令窗中存储着输入的命令和创建的所有变量值,可以在任何需要的时刻被调用。 多条命令可以放在一行中,之间可用逗号或者分号隔开。逗号告诉 MATLAB显示结果,分号表示禁止。如果在一行中无法写下一个完整的命令,可以在行尾加入三个连续的点,表示命令余下的部分在下一行出现。百分号之后的所有文字为注释,注释为单行型。 MATLAB遵守一般的计算优先
8、规则:表达式从左向右执行,指数运算具有最高优先级,乘除法次之,加法和减法优先级最低。括号可以改变通用的优先级,由最内层括号向外执行。 MATLAB可以使用光标键 来调用前面的命令。在提示符后按一次 键调出上一次命令;在提示符后键入命令的一部分,按 键,可以遍历代有相应字头的最近的命令。 MATLAB的命令行具有一般的编辑功能。返回 变量区分字母的大小写;名字不能超过 19个字符,第 19个字符后的字符被忽略;变量必须以字母开头,之后可以是任意字母、数字或者下滑线;变量中不能含有标点符号。 如果忘记了变量名,可以使用 who命令查询。 变量可以保存为数据文件,也可以从数据文件中读入。 Save,
9、 load。 将变量 aa和 bb保存在二进制数据文件中。如果希望保存为一般的文本文件,可以在 save命令之后使用-ascii选项。 将数据文件 datas.mat中的输入读入命令窗口,如果不存在 datas.mat则读 datas文件,如果还是不存在,则报出错。如果是 .mat 文件,文件中包含变量名和值,并且可以是多个变量,如果是非 .mat文件,即为文本文件,读入的变量名为文件的名字。 load datas 使用 clear命令,可以清除工作空间的变量。 Clear aa bb。如果 clear后为空,则将清除工作空间的所有变量,并且系统不会要求你确认这个命名,也不可能恢复,使用这个命
10、令一定要注意。在 clear变量后,使用 pack命令可以优化内存空间。 MATLAB中的一个强大功能为对复数不需要特殊的处理。 tt=10-9i。复数运算不需要特殊处理,可以直接进行。MATLAB计算中所有的量为双字长浮点数,显示中为了方便,并不按照双字长浮点数进行显示。MATLAB显示数据时,遵循一定的规则。在缺省情况下,当结果为整数, MATLAB将它作为整数显示;当结果为实数, MATLAB以小数后 4位的精度近似显示。如果结果中的有效数字超出了这一范围,MATLAB以科学计数法显示结果。可以使用 format命令来改变显示格式,常用的的格式有: long (16位 )、 bank(2
11、个十进制位 )、 short(缺省 )、 short e(5位加指数 )、 long e(16位加指数 )。返回 对于简单问题,使用直接输入命令简单有效;对稍复杂和多次重复的应用,直接输入命令比较麻烦。 MATLAB提供了逻辑解决方案,它允许用户把多个命令放在一个简单的文本文件中,如同在 MATLAB中键入命令一般,这种文件称为脚本文件,由于脚本文件以 m为扩展名,它常称为 M文件。脚本文件为文本形式的,对跨平台处理十分有利。 MATLAB 5.0之后提供了内置的文件编辑器,用户也可以使用自己喜欢的文件编辑器生成脚本文件。 将文件以 m扩展名保存为 exp1.m后,在 MATLAB中简单的键入
12、 exp1就可以执行 exp1.m中的命令。 使用脚本文件,可以把命令保存在磁盘上,便于以后的访问;同时对使用大的数组也带来的方便;增加注释可以为脚本中的命令作文挡以免以后忘记。返回 MATLAB的命令很多,很难全部记住。为了便于查找命令和用法, MATLAB提供了三种在线帮助形式: help、 lookfor以及超文本帮助。 如果已经知道命令或者标题名字,希望查找它的使用方法, help命令是最简单的方式。 help abs 虽然帮助文本中的命令为大写,这只是为了阅读方便,运算中不能使用大写。MATLAB中的命令都为小写,并且命令区分大小写。 不带标题的 help命令将列出所有的 MATLA
13、B可以获得帮助的目录。通过一级一级的标题查找可能找到自己要找的命令,但这样的查找比较麻烦。当还不能确定主题的拼写或者是否存在,可以使用另外两种方式获得帮助。 lookfor 命令通过搜索所有的 MATLAB help,返回包含指定关键词的那些项。例如,希望得到各种有关的 FFT运算方法, lookfor FFT。可以进一步使用 help命令察看所找到的命令。 使用 lookfor命令最重要的是关键词不必为 MATLAB命令,它提供了一中通过一般关键词找到命令和帮助标题的方式。在 MATLAB5.0以前,提供了 winhelp类型的帮助文件,可以顺序查找所需的主题。5.0版之后,提供的帮助为 H
14、tml文件形式。这种形式搜索命令简单,使用比较方便。 返回对于比较小的简单矩阵,可以使用键盘直接输入 。矩阵生成不但可以使用纯数字,也可以使用变量。矩阵的元素直接排列在方括号内,每行内的元素使用空格或者逗号分开,行与行之间使用分号隔开。大的矩阵可以分行输入,用回车键代替分号,这和我们平时使用的矩阵形式很相近。 大部分的试验数据是用上面的形式给出的,在处理试验数据中,可以简单的将数据前后加入左右括号,就可以得到矩阵的表示。这种处理可以在脚本文件中进行 。 返回如果是线性等间距格式生成矩阵,可以使用 from:step:to方式。 from、 step、 to分别表示开始值、步长和结束值。 aa=
15、1:2:10 。用 linspace命令, aa=linspace(1,10,5) 。 linespace的三个参数表示开始值、结束值和数据个数。数据个数可以省略,确省值为 100。在画 Bode图等应用中,需要使用对数等间隔的数据,可以使用 logspace命令生成。Logspace和 linspace的参数相同,只是结果不同。返回矩阵的加减法使用 “+”、 “-”运算符。两个矩阵只有同阶方可进行加键运算。如果运算的对象之一是标量,则对矩阵的每个元素施加运算。矩阵的乘法使用 “*”表示,与数学上的形式一致。矩阵的除法有两种符号: “”和 “/”,分别表示左除和右除。一般的讲, X=AB是A*
16、X=B的解, X=A/B是 X*A=B的解;通常 ABA/B。另外, MATLAB定义了点乘和点除运算。使用 “.*”、 “./”、 “.”表示。运算符号前面带有的小点告诉 MATLAB执行元素对元素的运算,即为数组员算,不带点号的为矩阵运算。矩阵的乘方也有几种定义形式。 “”为矩阵乘方, “.”为元素对元素的乘方。 MATLAB中 exp、 sprt、 sin、 cos等命令可以直接使用在矩阵上,这种运算只是定义在矩阵的单个元素上,即分别对矩阵的每个元素进行运算。 MATLAB中也提供了基本的三角函数。 返回返回MATLAB常用的关系操作符有: (大于 )、 =(大于或等于 )、 = =(等于 )、 !=(不等于 )。MATLAB的关系操作符可以用来比较两个大小相同的数组,或者比较一个数组和一个标量。在与标量比较时,结果和数组大小一样。 a=1:9, b=a4, c=a(a4)。逻辑操作符定义了一种与或非的关系表达式。 MATLAB的逻辑操作符有 a(a3)子矩阵的查找使用 find命令完成,它返回关系表达式为真的下标。 a=10:20;find(a15)矩阵的排序使用 sort函数,它将矩阵按照升序排列。返回