第一篇:基于MATLAB的数字带通滤波器设计
目 录
第一章 绪论........................................................................................................................2 1.1 研究目的及意义....................................................................................................2 1.2 数字滤波器的优势................................................................................................2 1.3 本文主要工作内容................................................................................................3 第二章 数字滤波器基本原理............................................................................................3 2.1 数字滤波器的基本理论........................................................................................3 2.2 数字滤波器的结构及原理....................................................................................3 2.2.1 IIR滤波器的结构及原理...........................................................................3 2.2.2 FIR滤波器的结构及原理..........................................................................4 2.3 IIR数字滤波器的实现结构.................................................................................4 2.3.1 直接性结构..................................................................................................5 2.3.2 级联型结构..................................................................................................5 2.3.3 并联型结构..................................................................................................6 2.4 脉冲响应不变法的IIR滤波器设计....................................................................7 第三章
数字带通滤波器的MATLAB仿真...................................................................8 3.1 数字滤波器的MATLAB设计简介.....................................................................8 3.1.1 fdatool界面设计.........................................................................................8 3.1.2 程序设计法..................................................................................................8 3.2 设计及仿真............................................................................................................8 3.2.1 设计要求......................................................................................................8 3.2.2 设计程序......................................................................................................9 3.2.3 仿真结果及分析........................................................................................10 心得体会............................................................................................................................12
第一章 绪论
1.1 研究目的及意义
几乎在所有的工程技术领域中都会涉及到信号的处理问题,其信号表现形式有电、磁、机械以及热、光、声等。信号处理的目的一般是对信号进行分析、变换、综合、估值与识别等。在数字信号处理中,数字滤波占有极其重要的地位,与模拟滤波相比,具有精度和稳定性高、系统函数容易改变、灵活性高、不存在阻抗匹配问题、便于大规模集成、可实现多维滤波等优点。
目前对数字滤波器的设计有多种方法,如双线性Z变换法、脉冲响应不变法、巴特沃思设计法、切比沃思设计方法设计IIR滤波器,及利用各种窗函数法、频率采样法、等波纹最佳逼近法设计的FIR滤波器。其中Matlab软件已成为设计数字滤波器的强有力工具。该软件是1984年由美国MathWorks公司推出的一套用于数值计算及图形处理的高性能的可视化软件,它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一个方便友好的界面和用户环境,深受工程技术人员及科技专家的欢迎,并很快成为应用学科计算机辅助分析、设计、仿真、教学等领域不可或缺的基础软件。传统的数字滤波器设计过程复杂、计算工作量大、滤波特性调整困难,但利用Matlab信号处理工具箱(signalprocessing toolbox)可以快速有效地实现由软件组成的常规数字滤波器的设计、分析和仿真,极大地减轻了工作量,有利于滤波器设计的最优化。
1.2 数字滤波器的优势
数字滤波器(Digital Filter,DF)是用于提取有用信号或者改变信号某种特性的数所无法代替的新特性,数字滤波器在数字通信、语音与图像处理、自动控制等领域都有着广泛应用。与模拟滤波器相比,数字滤波器没有漂移,能够处理低频信号,其频响特性可做到非常接近于理想滤波器的特性,且精度可高达很高的水平,容易集成等,这些优势使得数字滤波器的应用更加广泛。相比于模拟滤波器,数字滤波器具有以下显著优点:
(1)精度高:模拟电路中元件精度很难达到103以上,而数字系统17位字长就可以达到105精度。因此在一些精度要求很高的滤波系统中,就必须采用数字滤波器来实现。
(2)灵活性大:数字滤波器的性能主要取决于乘法器的各系数,而这些系数是存放在系数存储器中的,只要改变存储器中存放的系数,就可以得到不同的系统,这些都比改变模拟滤波器系统的特性要容易和方便的多,因而具有很大的灵活性。
(3)可靠性高:因为数字系统只有两个电平信号:“1”和“0”,受噪声及环境的影响下,而模拟滤波器各个参数都有一定的温度系数,易受温度、振动、电磁感应等影响。并且数字滤波器多采用大规模集成电路,如用CPLD、单片机来实现,也可以用专用的DSP处理器来实现,这些大规模集成电路的故障率远比众多分立元件构成的模拟系统的故障率低。
(4)易于大规模集成:因为数字部件具有高度的规范性,便于大规模集成,大规模生产,且数字滤波电路主要工作在截止或饱和状态,对电路参数要求不严格。
因此产品的成品率高,价格也日趋降低。相对于模拟滤波器,数字滤波器在体积、重量和性能方面的优势己越来越明显。比如在用一些用模拟网络做的低频滤波器中,网络的电感和电容的数值会大到惊人的程度,甚至不能很好地实现,这时候若采用数字滤波器则方便的多。
(5)并行处理:数字滤波器的另外一个最大优点就是可以实现并行处理,比如数字滤波器可采用DSP处理器或者FPGA器件来实现并行处理。
1.3 本文主要工作内容
1.主要介绍数字滤波器的基本理论,从原理上理解、分析、研究数字滤波器,并通过数字滤波器的结构、表达方式、和实现方法的学习,为设计实现数字滤波器奠定理论基础。
2.研究MATLAB环境下数字滤波器的设计和实现方法,及如何用MATLAB的滤波器设计工具设计各种类型的数字滤波器。用MATLAB语言编写滤波程序,并进行仿真和分析。
第二章 数字滤波器基本原理
2.1 数字滤波器的基本理论
数字滤波器,是指输入、输出均为数字信号,通过一定运算关系改变输入信号所含频率成分的相对比例或者滤除某些频率成分的器件。因此,数字滤波的概念和模拟滤波相同,只是信号的形式和实现滤波方法不同。数字滤波器按功能分为低通、高通、带通、带阻、全通滤波器。数字波器从实现的网络结构或者从单位脉冲响应分类,可以分为无限脉冲响应(IIR)和有限脉冲响应(FIR)滤波器。
2.2 数字滤波器的结构及原理 2.2.1 IIR滤波器的结构及原理
IIR滤波器的系统函数:
H(z)brzrr0Nm1akzk
(2-1)
k1对应的的差分方程:
y
(2-2)()nbx(nr)ay(nk)rkr0k1MrN
其中y(n)由两部分构成第一部分
Nbx(nr)是一个对x(n)的字节延时链结构,r0M每节延时抽头滤波器的选择部分aky(nk)是一个对y(n)的延时抽头加权后相
k1加,因是一个反馈网络,这种结构成为直接性I,如下图
图2.2 直接型I的结构框图
2.2.2 FIR滤波器的结构及原理
有限单位脉冲响应的冲击响应函数为:
H(z)h(n)zn
(2-3)
n0N1其差分方程为:
y(n)hk()x(nk)
(2-4)
k0N1由上式可以得出下图所示的直接型结构,这种结构又可以称为卷积型结构。
图2.1 FIR滤波器直接型结构图
2.3 IIR数字滤波器的实现结构
研究IIR数字滤波器不仅仅在于理论研究,更重要的是寻求适合特定应用的实现结构。从理论上讲,IIR数字滤波器要达到同样的性能指标,其实现结构往往是多种多样的,具体采用何种实现结构完全取决于具体应用的条件。下面介绍几种IIR数字滤波器的基本实现结构。IIR数字滤波器的系统传递函数可表示为
1Nbbz…bzNH(z)01 1M
(2-5)
1az…az1M根据滤波器的传递函数H(z)的不同表达形式,可以得出不同的实现结构。
2.3.1 直接性结构
由上式可以得到两种IIR滤波器的直接型实现结构,如下图所示,其中,z1表示使信号延迟一个采样周期的单位延迟元件,x(t)是滤波器的输入,y(t)是滤波器的输出。
图2.3 IIR滤波器的直接型实现结构
在直接型实现结构中,因滤波器阶数的增高会造成系数的更大分散,因而图中所示的IIR实现结构通常并不会是直接使用。不过,当滤波器可以分解成几个低阶基本节时,各基本节的低阶滤波器常可使用这类直接型结构。
2.3.2 级联型结构
对IIR数字滤波器的传递函数H(z)的分母多项式及分子多项式进行因式分解,可分解为一次与二次多项式的乘积。对与上式,假设b0k0,则H(z)可表示为
i Hz()kM1(1z)(11i1j1M2iN1N21j12z2jz)
(2-6)
1j12z2jz)(1yz)(1i1j1MM式中,M12,NN1N2,全部系数均为实数。又当b00,b10时,除了z1项外,分子多项式仅为N1次,同样也可以分解为一次和二次多项式的乘积。其他情况下,分解方法也完全相同。
当利用硬件实现数字滤波器时,应尽可能公用存储器及单位延迟元件等,以利于减少所需元件数量,这对简化结构式很重要的。设k0,则
1N1bz…bzNH(z)k11N
(2-7)
1az…az1NL可将H(z)分解为
H(z)kHi(z)
(2-8)
i1
式中,L(式2.7)的H(z)={(N+2)2},{(N+1)2} 表示不超过(N+2)2的最大整数。
121zzi2iH()z1,i1,2,…,L
(2-9)i121zz1i2i可表示为下图,式2.8中的H(z)可表示为下图2.4。
图2.4 IIR滤波器的级联型实现结构
2.3.3 并联型结构
1MNM2B(1z)AiIiIH(z)Cz i
(2-10)1121z1zzi1i1i0i1i2iM1将式(式2.1)中的H(z)进行因式分解,并写成如下形式
式中,M(式2.8)中的最后一项为0,并设(式2.5)M2M12,当MN时,的H(z)的极点不重复。基于级联型结构同样的道理,当H(z)由(式2.7)给出,且H(z)的极点不重复时,则
KLH(z)Hi(z)
(2-11)
Li1,Hi(Z)为(式2.8)形式的滤波器。L{(N1)/2}图2.5 IIR滤波器的并联型实现结构
与级联型不同,并联型结构滤波器的极点与零点的组合及比例等不会有分配问题,而且由于它可以实现系数敏感度低的滤波器,因此当滤波器的极点不重复时,并联结构可以作为最有利的实现结构形式广泛使用。
2.4 脉冲响应不变法的IIR滤波器设计
脉冲响应不变法就是要求数字滤波器的脉冲响应序列h(n)与模拟滤波器的脉冲响应ha(t)的采样值相等,即
(2-12)h(n)h(t)|h(nT)atnTa式中,T为采样周期。根据模拟信号的拉普拉斯变换与离散序列的Z变换之间的关系,可以得到 H()z|Hs(jk)
(2-13)STaszeTk此式表明,ha(t)的拉普拉斯变换在s平面上沿虚轴,按照周期T延拓s2后
按式zeST,进行Z变换,就可以将Ha(s)映射为H(z)。事实上,用脉冲响应不变法设计IIR滤波器,只适合于Ha(s)有单阶极点,且分母多项式的阶次高于分子多项式阶次的情况。将Ha(s)用部分分式表示:
AiH(s)LTh()t
(2-14)aasi1siN式中,LT.代表拉普拉斯变换,为的单阶极点。将Ha(s)进行拉普拉斯反变换,即可得到
Sit
ha(t)Ae u(t)
(2-15)ii1N式中,u(t)是单位阶跃函数。则ha(t)的离散序列
SnTi h(n)h(nT)Aeu(nT)
(2-16)aii1N对h(n)进行Z变换之后,可以得到数字滤波器的系统函数H(z)
NAni
(2-17)H()zh()nzST111ezn0i1对比Ha(s)与H(z),我们会发现:s域中Ha(s)的极点是,映射到z平面之后,其极点变成了eST,而系数没有发生变化,仍为A。因此,在设计IIR滤波器时,我们只要找出模拟滤波器系统函数Ha(s)的极点和系数A,通过脉冲响应不变法,代入H(z)的表达式中,即可求出H(z),实现连续系统的离散化。
脉冲响应不变法适合于设计低通和带通滤波器.将模拟滤波器转化为数字滤波器,牵涉到一个关键的问题,即寻找一种转换关系,将s平面上的Ha(s)转换成z平面上的H(z)。这里Ha(s)是模拟滤波器的传输函数,H(z)是数字滤波器的系统函数。为了确保转换后的H(z)稳定且满足技术要求,转换关系要满足以下要求:
(1)因果稳定的模拟滤波器转换成数字滤波器,仍是因果稳定。模拟滤波器因果滤波器因果稳定要求其传输函数Ha(s)的极点全部位于S平面的左半平面;数字
滤波器因果稳定则要求H(z)的极点全部在单位圆内。因此,转换关系应是S平面的左半平面映射Z平面的单位圆内部。
(2)数字滤波器的频率响应模仿模拟滤波器的频响,S平面的虚轴映射Z平面的单位圆,相应的频率之间成线性关系。
在MATLAB中,脉冲响应不变法的调用函数是impinvar,其调用格式为 a.[bz,az]=impinvar(b,a,fs)b.[bz,az]=impinvar(b,a)c.[bz,az]=impinvar(b,a,fs,tol)该函数的功能是将分子向量为b、分母向量为a的模拟滤波器,转换为分子向量为bz、分母向量为az的数字滤波器。fs为采样频率,单位为Hz,默认值为1Hz。tol指误差容限,表示转换后的离散系统函数是否有重复的极点。
第三章
数字带通滤波器的MATLAB仿真
3.1 数字滤波器的MATLAB设计简介 3.1.1 fdatool界面设计
fdatool(filter design & analysis tool)是matlab信号处理工具箱里专用的滤波器设计分析工具,fdatool可以设计几乎所有的基本的常规滤波器,包括fir和iir的各种设计方法。它操作简单,方便灵活。
fdatool界面总共分两大部分,一部分是design filter,在界面的下半部,用来设置滤波器的设计参数,另一部分则是特性区,在界面的上半部分,用来显示滤波器的各种特性。
3.1.2 程序设计法
数字滤波器设计的一般方法是先设计低通模拟滤波器,进行频率变换,将其转换为相应的(高通,带通等)模拟滤波器,在转换为带通数字滤波器,由模拟滤波器设计数字滤波器的方法。这是因为模拟滤波器设计方法已经很成熟,它不仅有完整的设计公式,还有完善的图表供查阅,另外,还有一些典型的滤波器类型可供我们使用。对设计的全过程的各个步骤,MATLAB 都提供了了相应的工具箱函数,使数字滤波器设计变得非常简单。
3.2 设计及仿真 3.2.1 设计要求
.5,通带的截止
要求设计一个IIR带通滤波器,其中通带的中心频率为po0,p20.6,通带最大衰减p3dB;阻带最小衰减s15dB频率p10.4,.7。阻带截止频率s20 解:①根据要求,采用切比雪夫I型数字滤波器设计该滤波器;
②设采样频率Fs=2000Hz,则可计算出fpo=500Hz,fp1=400Hz, fp2=600Hz, fs1=300Hz, fs2=700Hz;
③给出一测试信号,测试该带通滤波器的功能。
3.2.2 设计程序
function y=bandp(x,fp1,fp2,fsl,fs2,rp,rs,Fs)%带通滤波
%使用注意事项:通带或阻带的截止频率与采样率的选取范围是不能超过采样率的一半 %即,fp1,fp2,fs1,fs2,的值小于Fs/2 %x:需要带通滤波的序列 % fp1:通带左边界 % fp2:通带右边界 % fs1:衰减截止左边界 % fs2:衰变截止右边界 %rp:边带区衰减DB数设置 %rs:截止区衰减DB数设置 %Fs:序列x的采样频率
fp1=400;fp2=600;%通带截止频率上下限 fsl=300;fsh=700;%阻带截止频率上下限
rp=3;rs=15;%通带边衰减DB值和阻带边衰减DB值 Fs=2000;%采样率 wp1=0.4*pi;Wp2=0.6*pi;wsl=0.3*pi;Ws2=0.7*pi;wp=[wp1 wp3];ws=[wsl ws2];% 设计切比雪夫滤波器;
[n,wn]=cheb1ord(ws/pi,wp/pi,rp,rs);[bz1,az1]=cheby1(n,rp,wp/pi);%查看设计滤波器的曲线
[h,w]=freqz(bz1,az1,256,Fs);h=20*log10(abs(h));figure;plot(w,h);title('所设计滤波器的通带曲线');grid on;y=filter(bz1,az1,x);end
%带通滤波器测试程序 Fs=2000;t=(1:Fs)/Fs;ff1=100;ff2=400;ff3=700;x=sin(2*pi*ff1*t)+sin(2*pi*ff2*t)+sin(2*pi*ff3*t);figure;subplot(211);plot(t,x);subplot(212);hua_fft(x,Fs,1);% y=filter(bz1,az1,x);
y=bandp(x,300,500,200,600,0.1,30,fs);
figure;subplot(211);plot(t,y);subplot(212);hua_fft(y,Fs,1);
function hua_fft(y,fs,style,varargin)%当style=1,画幅值谱;当style=2,画功率谱;当style=其他的,那么花幅值谱和功率谱 %当style=1时,还可以多输入2个可选参数 %可选输入参数是用来控制需要查看的频率段的 %第一个是需要查看的频率段起点 %第二个是需要查看的频率段的终点
%其他style不具备可选输入参数,如果输入发生位置错误
nfft= 2^nextpow2(length(y));%找出大于y的个数的最大的2的指数值(自动进算最佳FFT步长nfft)
%nfft=1024;%人为设置FFT的步长nfft y=y-mean(y);%去除直流分量
y_ft=fft(y,nfft);%对y信号进行DFT,得到频率的幅值分布
y_p=y_ft.*conj(y_ft)/nfft;%conj()函数是求y函数的共轭复数,实数的共轭复数是他本身。y_f=fs*(0:nfft/2-1)/nfft;% y_p=y_ft.*conj(y_ft)/nfft;%conj()函数是求y函数的共轭复数,实数的共轭复数是他本身。if style==1 if nargin==3 plot(y_f,2*abs(y_ft(1:nfft/2))/length(y));%matlab的帮助里画FFT的方法
%ylabel('幅值');xlabel('频率');title('信号幅值谱');
%plot(y_f,abs(y_ft(1:nfft/2)));%论坛上画FFT的方法
else
f1=varargin{1};fn=varargin{2};ni=round(f1 * nfft/fs+1);na=round(fn * nfft/fs+1);plot(y_f(ni:na),abs(y_ft(ni:na)*2/nfft));end
elseif style==2 plot(y_f,y_p(1:nfft/2));%ylabel('功率谱密度');xlabel'频率');title('信号功率谱');
else
subplot(211);plot(y_f,2*abs(y_ft(1:nfft/2))/length(y));ylabel('幅值');xlabel('频率');title('信号幅值谱');subplot(212);plot(y_f,y_p(1:nfft/2));ylabel('功率谱密度');xlabel('频率');title('信号功率谱');end End
3.2.3 仿真结果及分析
所设计滤波器的通带曲线0-20-40-60-80-100-******01000
图3.1 所设计的带通滤波器频谱图
420-2-400.10.20.30.40.50.60.70.80.911.510.******1000
图3.2 原始输入信号时域及频谱波形图
10.50-0.5-100.10.20.30.40.50.60.70.80.910.80.60.40.******1000
图3.3 经带通滤波后的的信号时域及频域波形图
结果分析:
经图示可看出该滤波器具有带通特性,它将通过它的信号在通带范围内的频率成分保留,阻带范围内的频率成分截止,从而达到滤波作用。
心得体会
为期两周的课程设计即将结束,在这期间我经历了从查资料、分析课题到学习软件、设计程序、调试、总结经验教训及书写毕业论文的过程。
本文主要介绍了基于MATLAB的IIR、FIR滤波器的设计和仿真首先分析了IIR、FIR数字滤波器的原理及设计方法,然后通过MATLAB的仿真平台,通过不同的方法,实现IIR、FIR数字滤波器的仿真,得到仿真波形。在仿真过程中,我们要求衰减的时候,曲线斜率越大越好,但是我们一般得不出这一的理想值。
通过这次课程设计,我一方面在数字信号处理方面学到更深的知识,在滤波器仿真及MATLAB软件应用方面也有了比较大的提高,培养了自己的自学能力,另一方面MATLAB技术得到了进一步的掌握,这些进步在以后的工作学习中起到跟好的帮助。
第二篇:基于Matlab的数字电子琴的设计与实现
工程数字信号处理算法与实践
之
基于Matlab的数字电子琴的设计与实现
学生: 吕柳燕 班级:机硕0701 学号:200770438
指导教师:何岭松
日期:2007-9-28
基于Matlab的数字电子琴的设计与实现
学生:吕柳燕
基于Matlab的数字电子琴的设计与实现
电子琴发展概况
电子琴是随着电子技术的广泛应用而产生。1959年,世界上第一台全晶体管双排键电子琴在日本诞生。从此,电子琴技术不断发展成熟,电子琴的普及也越来越广。
电子琴在中国的推广始于20世纪八十年代,至今在音色、音质、演奏的便利性等方面都达到了相当成熟的地步,而且随着集成电路技术的发展,其升级换代可以在保持原有结构不变的情况下,通过简单的芯片更换实现。但是,电子琴也有明显的不足之处:与非电子乐器,如钢琴、管弦乐器等的协奏问题,限制了电子琴在重要音乐场所的使用,这极大的影响了电子琴的应用和推广。协调电子琴与非电子乐器的协奏,是当前音乐界人士和电子琴开发商的当务之急。
电子琴发音原理
物体振动时会发出声音,振动的频率不同,声音的音调就不同。在电子琴里,虽然没有振动的弦、簧、管等物体,却有许多特殊的电装置,每个电装置一工作,就会使喇叭发出一定频率的声音。当按动某个琴键时,就会使与它对应的电装置工作,从而使喇叭发出某种音调的声音。
电子琴的音量控制器,实质上是一个可调电阻器。当转动音量控制器旋扭时,可调电阻器的电阻就随着变化。电阻大小的变化,又会引起喇叭声音强弱的变化。所以转动音量控制旋扭时,电子琴发声的响度就随之变化。
当乐器发声时,除了发出某一频率的声音──基音以外,还会发出响度较小、频率加倍的辅助音──谐音。我们听到的乐器的声音是它发出的基音和谐音混合而成的。不同的乐器发出同一基音时,不仅谐音的数目不同,而且各谐音的响度也不同。因而使不同的乐器具有不同的音品。在电子琴里,除了有与基音对应的电装置外,还有与许多谐音对应的电装置,适当地选择不同的谐音电装置,就可以模仿出不同乐器的声音来。
基于 Matlab的数字电子琴实现原理
振动频率不同,音调就不同。电子琴的每一按键对应一个频率不同的正弦波,按下按键,产生正弦波,播放波形即可听到对应按键的基音。
基于Matlab的数字电子琴的实现
在Matlab环境下,设置如图-1所示的数字电子琴界面,编程实现按键A
第 1 页
共3页 基于Matlab的数字电子琴的设计与实现
学生:吕柳燕
至O的消息映射即可。
实现要点
(1)按键A至O对应的正弦波频率(HZ)依次为:131、147、165、175、196、220、247、262、294、330、349、392、440、494、523(2)按键对应正弦波频率的数字显示
下面是按键A对应的消息映射:,其余按键代码相同,只是频率f值不同
图-1 数字电子琴交互界面
%映射函数
function pushbutton3_Callback(hObject, eventdata, handles)
%映射代码:由设计者编写 A=1;%正弦波幅度 f=131;%正弦波频率
Fs=11025;%PC声卡抽样频率 P=60;%正弦波初始相位
%数字正弦波产生代码 T=1.0/f;dt=T/Fs;N=T/dt;t=linspace(0,1,N);y=A*sin(2*pi*f*t+P);
Phandel=findobj('Tag','edit1');
第 2 页
共3页 基于Matlab的数字电子琴的设计与实现
学生:吕柳燕
set(Phandel,'String',f,'FontSize',15.0);%显示正弦波频率
plot(t,y,'r');%显示正弦波波形 grid;axis([0,0.1,-1.5,1.5]);wavplay(y,11025);%按键发音(基音)pause(1);cla;%波形显示1秒后消失
设计尚需完善之处
(1)实际上,当按下电子琴的某一键,电子琴除了发出某一频率的声音──基音以外,还会发出响度较小、频率加倍的辅助音──谐音。我们听到的乐器的声音是它发出的基音和谐音混合而成的。
需要对映射代码稍加修改,添加谐音成分,使发音更加逼近电子琴实体。
(2)设计的电子琴界面中,琴键由鼠标操控;若能实现PC键盘上的A至O键与电子琴琴键A至O的对应关系,即按下键盘A键与用鼠标按下琴键A等价,则电子琴交互界面更加友好。
(3)设计的电子琴无法实现音量控制。
参考文献:
伊泽明,丁春利,《精通Matlab 6》,清华大学出版社
http://www.xiexiebang.com/Article/ShowArticle.asp?ArticleID=181 http://www.qinweb.net/bbs/viewthread.php?tid=3017
第 3 页
共3页
第三篇:基于matlab的连杆机构设计
目 录
1平面连杆机构的运动分析…………………………………………………………………………1
1.2 机构的工作原理……………………………………………………………………………………1 1.3 机构的数学模型的建立……………………………………………………………………………1 1.3.1建立机构的闭环矢量位置方程...................................................1 1.3.2求解方法.....................................................................2 2 基于MATLAB程序设计………………………………………………………………………………4 2.1 程序流程图…………………………………………………………………………………………4
2.2 M文件编写…………………………………………………………………………………………6
2.3 程序运行结果输出…………………………………………………………………………………7 3 基于MATLAB图形界面设计…………………………………………………………………………11 3.1界面设计……………………………………………………………………………………………11
3.2代码设计……………………………………………………………………………………………12 4 小结…………………………………………………………………………………………………17
参考文献 ………………………………………………………………………………………………18
平面连杆机构的运动分析
1.1 机构运动分析的任务、目的和方法
曲柄摇杆机构是平面连杆机构中最基本的由转动副组成的四杆机构,它可以用来实现转动和摆动之间运动形式的转换或传递动力。
对四杆机构进行运动分析的意义是:在机构尺寸参数已知的情况下,假定主动件(曲柄)做匀速转动,撇开力的作用,仅从运动几何关系上分析从动件(连杆、摇杆)的角位移、角速度、角加速度等运动参数的变化情况。还可以根据机构闭环矢量方程计算从动件的位移偏差。上述这些内容,无论是设计新的机械,还是为了了解现有机械的运动性能,都是十分必要的,而且它还是研究机械运动性能和动力性能提供必要的依据。
机构运动分析的方法很多,主要有图解法和解析法。当需要简捷直观地了解机构的某个或某几个位置的运动特性时,采用图解法比较方便,而且精度也能满足实际问题的要求。而当需要精确地知道或要了解机构在整个运动循环过程中的运动特性时,采用解析法并借助计算机,不仅可获得很高的计算精度及一系列位置的分析结果,并能绘制机构相应的运动线图,同时还可以把机构分析和机构综合问题联系起来,以便于机构的优化设计。1.2 机构的工作原理
在平面四杆机构中,其具有曲柄的条件为: a.各杆的长度应满足杆长条件,即:
最短杆长度+最长杆长度≤其余两杆长度之和。
b.组成该周转副的两杆中必有一杆为最短杆,且其最短杆为连架杆或机架(当最短杆为连架杆时,四杆机构为曲柄摇杆机构;当最短杆为机架时,则为双曲柄机构)。
在如下图1所示的曲柄摇杆机构中,构件AB为曲柄,则B点应能通过曲柄与连杆两次共线的位置。
1.3 机构的数学模型的建立 1.3.1建立机构的闭环矢量位置方程
在用矢量法建立机构的位置方程时,需将构件用矢量来表示,并作出机构的封闭矢量多边形。如图1所示,先建立一直角坐标系。设各构件的长度分别为L1、L2、L3、L4,其方位角为、、、。以各杆矢量组成一个封闭矢量多边形,即ABCDA。其个矢量之和必等于零。即:
式1
式1为图1所示四杆机构的封闭矢量位置方程式。对于一个特定的四杆机构,其各构件的长度和原动件2的运动规律,即程可求得未知方位角、。
为已知,而
=0,故由此矢量方角位移方程的分量形式为:
式2
闭环矢量方程分量形式对时间求一阶导数(角速度方程)为:
式3 其矩阵形式为:
式4 联立式3两公式可求得:
式5
式6
闭环矢量方程分量形式对时间求二阶导数(角加速度方程)矩阵形式为:
式7 由式7可求得加速度:
式8
式9
注:式1~式9中,Li(i=1,2,3,4)分别表示机架
1、曲柄
2、连杆
3、摇杆4的长度;(i=1,2,3,4)是各杆与x轴的正向夹角,逆时针为正,顺时针为负,单位为 rad;是各杆的角速度。
,单位为 rad/s;为各杆的角加速度,单位为 1.3.2求解方法
(1)求导中应用了下列公式:
式10
(2)在角位移方程分量形式(式2)中,由于假定机架为参考系,矢量1与x轴重合,=0,则有非线性超越方程组:
式11
可以借助牛顿-辛普森数值解法或Matlab自带的fsolve函数求出连杆3的角位移和摇杆4的角位移。
(3)求解具有n个未知量(i=1,2,…,n)的线性方程组:
式12 式中,系列矩阵 是一个 阶方阵:
式13 的逆矩阵为;常数项b是一个n维矢量:
式14 因此,线性方程组解的矢量为:
式15
式11是求解连杆3和摇杆4角速度和角加速度的依据。
基于MATLAB程序设计
MATLAB 是Mathworks 公司推出的交互式计算分析软件,具有强大的运算分析功能,具有集科学计算、程序设计和可视化于一体的高度集成化软件环境,是目前国际上公认的最优秀的计算分析软件之一,被广泛应用于自动控制、信号处理、机械设计、流体力学和数理统计等工程领域。通过运算分析,MATLAB 可以从众多的设计方案中寻找最佳途径,获取最优结果,大大提高了设计水平和质量。四连杆机构的解析法同样可以用MATLAB 的计算工具来求值,并结合MATLAB 的可视化手段,把各点的计算值拟合成曲线,得到四连杆机构的运动仿真轨迹。
2.1 程序流程图
2.2 M文件编写
首先创建函数FoutBarPosition,函数fsolve通过他确定。function t=fourbarposition(th,th2,L2,L3,L4,L1)t=[L2*cos(th2)+L3*cos(th(1))-L4*cos(th(2))-L1;… L2*sin(th2)+L3*sin(th(1))-L4*sin(th(2))];主程序如下:
disp ' * * * * * *平面四杆机构的运动分析 * * * * * *' L1=304.8;L2=101.6;L3=254.0;L4=177.8;%给定已知量,各杆长L1,L2,L3,L4 th2=[0:1/6:2]*pi;%曲柄输入角度从0至360度,步长为pi/6 th34=zeros(length(th2),2);%建立一个N行2列的零矩阵,第一列存放options=optimset('display','off');%θ_3,第二列存放θ_3
for m=1:length(th2)%建立for循环,求解θ_3,θ_4
th34(m,:)=fsolve('fourbarposition',[1 1],…
%调用fsove函数求解关于θ_3,θ_4 options,th2(m),L2,L3,L4,L1);%的非线性超越方程,结果保存在th34中 end y=L2*sin(th2)+L3*sin(th34(:,1)');%连杆3的D端点Y坐标值 x=L2*cos(th2)+L3*cos(th34(:,1)');%连杆3的D端点X坐标值 xx=[L2*cos(th2)];%连杆3的C端点X坐标值 yy=[L2*sin(th2)];%连杆3的C端点Y坐标值 figure(1)plot([x;xx],[y;yy],'k',[0 L1],[0 0],… %绘制连杆3的几个位置点 'k--^',x,y,'ko',xx,yy,'ks')title('连杆3的几个位置点')xlabel('水平方向')ylabel('垂直方向')axis equal %XY坐标均衡
th2=[0:2/72:2]*pi;%重新细分曲柄输入角度θ_2,步长为5度 th34=zeros(length(th2),2);options=optimset('display','off');for m=1:length(th2)th34(m,:)=fsolve('fourbarposition',[1 1],… options,th2(m),L2,L3,L4,L1);end figure(2)plot(th2*180/pi,th34(:,1),th2*180/pi,th34(:,2))%绘制连杆3的角位移关于曲柄2的角位移图
plot(th2*180/pi,th34(:,1)*180/pi,…
th2*180/pi,th34(:,2)*180/pi)%绘制摇杆4的角位移关于曲柄2的角位移图 axis([0 360 0 170])%确定XY边界值 grid %图形加网格 xlabel('主动件转角theta_2(度)')ylabel('从动件角位移(度)')title('角位移线图')text(120,120,'摇杆4角位移')text(150,40,'连杆3角位移')w2=250;%设定曲柄角速度 for i=1:length(th2)A=[-L3*sin(th34(i,1))L4*sin(th34(i,2));… L3*cos(th34(i,1))-L4*cos(th34(i,2))];B=[w2*L2*sin(th2(i));-w2*L2*cos(th2(i))];w=inv(A)*B;w3(i)=w(1);w4(i)=w(2);end figure(3)plot(th2*180/pi,w3,th2*180/pi,w4);%绘制角速度线图 axis([0 360-175 200])text(50,160,'摇杆4角速度(omega_4)')text(220,130,'连杆3角速度(omega_3)')grid xlabel('主动件转角theta_2(度)')ylabel('从动件角速度(radcdot s^{-1})')title('角速度线图')for i=1:length(th2)C=[-L3*sin(th34(i,1))L4*sin(th34(i,2));… L3*cos(th34(i,1))-L4*cos(th34(i,2))];D=[w2^2*L2*cos(th2(i))+w3(i)^2*L3*cos(th34(i,1))-w4(i)^2*L4*cos(th34(i,2));...w2^2*L2*sin(th2(i))+w3(i)^2*L3*sin(th34(i,1))-w4(i)^2*L4*sin(th34(i,2))];a=inv(C)*D;a3(i)=a(1);a4(i)=a(2);end figure(4)plot(th2*180/pi,a3,th2*180/pi,a4);%绘制角加速度线图 axis([0 360-70000 65000])text(50,50000,'摇杆4角加速度(alpha_4)')text(220,12000,'连杆3角加速度(alpha_3)')grid xlabel('从动件角加速度')ylabel('从动件角加速度(radcdot s^{-2})')title('角加速度线图')disp '曲柄转角连杆转角-摇杆转角-连杆角速度-摇杆角速度-连杆加速度-摇杆加速度' ydcs=[th2'*180/pi,th34(:,1)*180/pi,th34(:,2)*180/pi,w3',w4',a3',a4'];disp(ydcs)
2.3 程序运行结果输出
>> * * * * * *平面四杆机构的运动分析 * * * * * * 曲柄转角 连杆转角-摇杆转角-连杆角速度-摇杆角速度-连杆加速度-摇杆加速度
1.0e+004 *
0 0.0044 0.0097-0.0125-0.0125-0.5478 4.8458 0.0005 0.0042 0.0094-0.0126-0.0107 0.2300 5.5630 0.0010 0.0039 0.0092-0.0124-0.0086 0.8946 6.0520 0.0015 0.0037 0.0091-0.0119-0.0065 1.4143 6.2982 0.0020 0.0034 0.0090-0.0114-0.0043 1.7801 6.3174 0.0025 0.0032 0.0089-0.0107-0.0021 2.0027 6.1467 0.0030 0.0030 0.0089-0.0100 0.0000 2.1046 5.8339 0.0035 0.0028 0.0089-0.0093 0.0020 2.1134 5.4272 0.0040 0.0026 0.0090-0.0085 0.0038 2.0566 4.9687 0.0045 0.0025 0.0091-0.0078 0.0054 1.9578 4.4918 0.0050 0.0023 0.0092-0.0072 0.0069 1.8356 4.0198 0.0055 0.0022 0.0093-0.0065 0.0082 1.7040 3.5680 0.0060 0.0021 0.0095-0.0060 0.0094 1.5725 3.1450 0.0065 0.0019 0.0097-0.0055 0.0104 1.4474 2.7545 0.0070 0.0018 0.0099-0.0050 0.0113 1.3328 2.3968 0.0075 0.0017 0.0102-0.0045 0.0121 1.2307 2.0702 0.0080 0.0017 0.0104-0.0041 0.0128 1.1425 1.7716 0.0085 0.0016 0.0107-0.0037 0.0134 1.0687 1.4971 0.0090 0.0015 0.0110-0.0034 0.0138 1.0095 1.2426 0.0095 0.0014 0.0112-0.0030 0.0142 0.9653 1.0035 0.0100 0.0014 0.0115-0.0027 0.0145 0.9364 0.7752 0.0105 0.0013 0.0118-0.0024 0.0148 0.9232 0.5530 0.0110 0.0013 0.0121-0.0020 0.0149 0.9269 0.3319 0.0115 0.0013 0.0120 0.0012 0.0125 0.0012 0.0130 0.0012 0.0135 0.0012 0.0140 0.0012 0.0145 0.0012 0.0150 0.0012 0.0155 0.0012 0.0160 0.0013 0.0165 0.0013 0.0170 0.0014 0.0175 0.0015 0.0180 0.0016 0.0185 0.0018 0.0190 0.0019 0.0195 0.0021 0.0200 0.0023 0.0205 0.0025 0.0210 0.0027 0.0215 0.0029 0.0220 0.0031 0.0225 0.0033 0.0230 0.0036 0.0235 0.0038 0.0240 0.0040 0.0245 0.0042 0.0250 0.0044 0.0255 0.0046 0.0260 0.0048 0.0265 0.0050 0.0270 0.0052 0.0275 0.0054 0.0280 0.0055 0.0285 0.0056 0.0124-0.0017 0.0150 0.9485 0.1069 0.0127-0.0014 0.0150 0.9899-0.1276 0.0130-0.0010 0.0149 1.0530-0.3773 0.0133-0.0006 0.0147 1.1404-0.6481-0.0002 0.0145 1.2544-0.9455 0.0139 0.0002 0.0141 1.3967-1.2743 0.0142 0.0008 0.0136 1.5677-1.6368 0.0144 0.0013 0.0129 1.7648-2.0314 0.0147 0.0020 0.0121 1.9807-2.4495 0.0149 0.0027 0.0112 2.2018-2.8735 0.0151 0.0035 0.0101 2.4071-3.2754 0.0153 0.0044 0.0089 2.5697-3.6186 0.0155 0.0053 0.0076 2.6616-3.8650 0.0156 0.0063 0.0063 2.6609-3.9849 0.0157 0.0072 0.0049 2.5591-3.9674 0.0158 0.0080 0.0035 2.3638-3.8244 0.0159 0.0088 0.0022 2.0959-3.5866 0.0159 0.0095 0.0010 1.7823-3.2931 0.0159 0.0100-0.0001 1.4487-2.9815 0.0159 0.0105-0.0011 1.1152-2.6809 0.0159 0.0108-0.0020 0.7942-2.4103 0.0158 0.0111-0.0028 0.4916-2.1794 0.0158 0.0112-0.0035 0.2086-1.9913 0.0157 0.0112-0.0042-0.0565-1.8450 0.0156 0.0111-0.0048-0.3071-1.7375 0.0155 0.0110-0.0054-0.5475-1.6650 0.0154 0.0108-0.0060-0.7817-1.6233 0.0153 0.0104-0.0065-1.0139-1.6089 0.0151 0.0100-0.0071-1.2479-1.6181 0.0150 0.0096-0.0077-1.4868-1.6480 0.0148 0.0090-0.0082-1.7336-1.6955 0.0146 0.0084-0.0088-1.9905-1.7574 0.0145 0.0076-0.0095-2.2588-1.8304 0.0143 0.0068-0.0101-2.5391-1.9100 0.0141 0.0058-0.0108-2.8305-1.9910 0.0136 0.0290 0.0057 0.0138 0.0048-0.0115-3.1300-2.0660 0.0295 0.0058 0.0136 0.0037-0.0122-3.4326-2.1255 0.0300 0.0059 0.0133 0.0024-0.0130-3.7297-2.1572 0.0305 0.0059 0.0131 0.0011-0.0137-4.0091-2.1451 0.0310 0.0059 0.0128-0.0004-0.0145-4.2538-2.0696 0.0315 0.0059 0.0125-0.0019-0.0152-4.4419-1.9079 0.0320 0.0058 0.0122-0.0035-0.0158-4.5473-1.6352 0.0325 0.0058 0.0119-0.0051-0.0163-4.5411-1.2273 0.0330 0.0056 0.0115-0.0066-0.0166-4.3954-0.6661 0.0335 0.0055 0.0112-0.0081-0.0167-4.0889 0.0551 0.0340 0.0053 0.0109-0.0095-0.0166-3.6129 0.9243 0.0345 0.0051 0.0105-0.0106-0.0161-2.9781 1.9058 0.0350 0.0049 0.0102-0.0115-0.0152-2.2178 2.9395 0.0355 0.0047 0.0099-0.0122-0.0140-1.3857 3.9473 0.0360 0.0044 0.0097-0.0125-0.0125-0.5478 4.8458
图形输出:
图2 连杆3的几个位置点
图3 角位移线图
图4 角加速度线图
图5 角加速度线图 基于MATLAB图形界面设计
所谓图形用户界面, 简称为GU I(Graphic User Interface), 是指包含了各种图形控制对象, 如图形窗口、菜单、对话框以及文本等内容的用户界面。利用这些用户界面, 用户可以和计算机之间进行信息交流。用户可以通过某种方式来选择或者激活这些图形对象, 来运行一些特性的M 文件。最常见的激活方式是利用鼠标或者其它设备来点击这些对象。对于一个用户来说, 图形用户界面就是他所面对的应用程序, 对图形界面的操作直接影响应用程序的应用前途。对于以往专门用于科学计算的语言, 如FORTRAN 语言等, 编写图形界面的功能较弱, 因而用其开发的程序, 其界面往往不够友好, 用户使用起来很不方便。而目前流行的可视化语言, 对科学计算的功能又相对弱一些。MATLAB提供了非常强大的编写图形用户界面的功能。用户只和前台界面下的控件发生交互,而所有运算、绘图等内部操作都封装在内部,终端用户不需要区追究这些复杂过程的代码。图形用户界面大大提高用户使用MATLAB程序的易用性。因此,学习MATLAB图形用户界面编程,即GUI程序的创建,是MATLAB编程用户应该掌握的重要一环。对于一个MATLAB 中的图形用户界面, 它的设计过程一般可以分为两个部分: ①用户界面的外观设计。在这里, 主要是通过不同的对话框、按钮、文本框等许多工具的使用, 设计出一个图形用户界面。同时也应搞清楚这个图形界面的功能是什么, 也即在图形界面上的操作会引发什么样的结果。②图形界面的完成。在这里, 用户将根据在外观设计阶段所确定的图形界面的功能, 针对各个不同的图形对象来编写出能够实现该功能的函数代码, 确保这个图形界面能够完成所预定的功能。3.1 界面设计
首先我们新建一个GUI文件,如下图所示:
图6 新建GUI文件 选择Blank GUI(Default)。
进入GUI开发环境以后添加5个编辑文本框,8个静态文本框,和1个下拉菜单。利用菜单编辑器,创建Open、Print、Close三个菜单。创建好GUI界面需要的各交互控件并调整好大概的位置后,设置这些控件的属性。最后的界面效果如下图示:
图7 界面效果 3.2 代码设计
(1)打开M文件编辑器(M-file Edit),点击
向下的三角图标,可以看到各个对象的回调函数(Callback),某些对象的创建函数或打开函数等。通过选中相应项就可以跳动对应函数位置进行程序编辑。
选中’edit_callback’选项,光标跳到’ function edit1_Callback(hObject, eventdata, handles)’下面空白处,添加以下代码: user_entry=str2double(get(hObject,'String'));if isnan(user_entry)errordlg('请输入数值!','Bad Input')end 该语句严格限制编辑框内必须输入数值,否则出现错误对话框(如下图所示)。同理在其他四个编辑框的回调函数下输入相同的代码。
图8 错误对话框(2)打开M文件编辑器(M-file Edit),点击
向下的三角图标,设置下拉菜单返回函数,光标跳到’ function popupmenu1_Callback(hObject, eventdata, handles)’下面空白处。由于下拉菜单是本界面设计关键控件,与本设计相关的程序都放在这个返回函数下。添加代码如下:L1=str2double(get(handles.edit1,'String'));L2=str2double(get(handles.edit2,'String'));L3=str2double(get(handles.edit3,'String'));L4=str2double(get(handles.edit4,'String'));w2=str2double(get(handles.edit5,'String'));th2=[0:2/72:2]*pi;th34=zeros(length(th2),2);options=optimset('display','off');for m=1:length(th2)th34(m,:)=fsolve('fourbarposition',[1 1],options,th2(m),L2,L3,L4,L1);end w2=250;for i=1:length(th2)A=[-L3*sin(th34(i,1))L4*sin(th34(i,2));L3*cos(th34(i,1))-L4*cos(th34(i,2))];B=[w2*L2*sin(th2(i));-w2*L2*cos(th2(i))];w=inv(A)*B;w3(i)=w(1);w4(i)=w(2);end for i=1:length(th2)C=[-L3*sin(th34(i,1))L4*sin(th34(i,2));L3*cos(th34(i,1))-L4*cos(th34(i,2))];D=[w2^2*L2*cos(th2(i))+w3(i)^2*L3*cos(th34(i,1))-w4(i)^2*L4*cos(th34(i,2));...w2^2*L2*sin(th2(i))+w3(i)^2*L3*sin(th34(i,1))-w4(i)^2*L4*sin(th34(i,2))];a=inv(C)*D;a3(i)=a(1);a4(i)=a(2);end val=get(hObject,'Value');str=get(hObject,'String');switch str{val} case '连杆3的几个位置点' th2=[0:1/6:2]*pi;th34=zeros(length(th2),2);options=optimset('display','off');for m=1:length(th2)th34(m,:)=fsolve('fourbarposition',[1 1],options,th2(m),L2,L3,L4,L1);end y=L2*sin(th2)+L3*sin(th34(:,1)');x=L2*cos(th2)+L3*cos(th34(:,1)');xx=[L2*cos(th2)];yy=[L2*sin(th2)];plot([x;xx],[y;yy],'k',[0 L1],[0 0],'k--^',x,y,'ko',xx,yy,'ks')title('连杆3的几个位置点')xlabel('水平方向')ylabel('垂直方向')axis equal grid on case '角位移线图' plot(th2*180/pi,th34(:,1)*180/pi,th2*180/pi,th34(:,2)*180/pi)axis([0 360 0 170])grid on xlabel('主动件转角theta_2(度)')ylabel('从动件角位移(度)')title('角位移线图')text(120,120,'摇杆4角位移')text(150,40,'连杆3角位移')case '角速度线图' plot(th2*180/pi,w3,th2*180/pi,w4);axis([0 360-175 200])text(50,160,'摇杆4角速度(omega_4)')text(220,130,'连杆3角速度(omega_3)')grid on xlabel('主动件转角theta_2(度)')ylabel('从动件角速度(radcdot s^{-1})')title('角速度线图')case '角加速度线图' plot(th2*180/pi,a3,th2*180/pi,a4);axis([0 360-50000 65000])text(50,50000,'摇杆4角加速度(alpha_4)')text(220,12000,'连杆3角加速度(alpha_3)')grid on xlabel('主动件转角theta_2(度)')ylabel('从动件角加速度(radcdot s^{-2})')title('角加速度线图')end guidata(hObject,handles)%
其中,guidata(hObject,handles)命令用于更新句柄,当输入不同参数是,程序能够做出相应的相应。
(3)打开M文件编辑器(M-file Edit),点击 回调函数下添加以下代码: file = uigetfile('*.fig');if ~isequal(file, 0)open(file);end 此菜单用以打开fig文件。其相应界面如图9所示:
向下的三角图标,在Open菜单
图9(4)打开M文件编辑器(M-file Edit),点击 回调函数下添加以下代码:
向下的三角图标,在Print菜单printdlg(handles.figure1)%用于图形输出。(5)打开M文件编辑器(M-file Edit),点击 回调函数下添加以下代码:
向下的三角图标,在Close菜单selection = questdlg(['Close ' get(handles.figure1,'Name')'?'],...['Close ' get(handles.figure1,'Name')'...'],'Yes','No','Yes');if strcmp(selection,'No')return;end delete(handles.figure1)此菜单用于关闭界面,其响应界面如图10所示:
图10
(6)完成M文件编写后,运行程序进行检验,单击 图标或M文件工具栏的
图标,在编辑栏输入个构件参数,运行结果如图11:
图11 界面运行效果图
分别点击下拉菜单
小结
在本次基于MATLAB平面四杆机构机构的运动分析课程设计中,不仅用到了MATLAB的m语言编程,还有GUI图形用户界面设计。对于课程的设计来说,m语言本身来说,功能相当强大,但是由于其复杂的编程方法,让大多数初学者望而却步;而GUI图形界面则正好弥补了它的不足,它采用的是所见即所得的编程方式,用它来做软件的界面就如图制作网页一样简单明了,用它制作出来的软件不需要太多的编程知识都可以轻松搞定;在此次课程设计中,本人尽量扬长避短,把这些工具的优点结合到一起,发挥其最大的作用。通过此次课程设计,不仅使我们对使我们对四杆机构有了进一步认识,并且使我们认识到计算机技术对工程应用的重要性。本此设计凝结了团队合作的结晶,是我们利用三周的时间努力学
下各选项,则在绘图区域分别显示图2~图5。习、设计的成果,同时,在设计过成中得到了郑XX老师的悉心指导,在此表示衷心的感谢!
参考文献
[1] 孙桓,陈作模.机械原理[M].7版.北京:高等教育出版社,2006.[2] 符炜.机构设计学.[M].1版.长沙:中南工业大学出版社,1995.[3] MATLAB原理与工程应用[M].1版.北京:电子工业出版社,2002.[4] http:///pro-t2-p137-dzd.html?dk=80288644
第四篇:基于matlab的连杆机构设计
基于matlab的连杆机构设计
班级:热动1001班 姓名:何志杰 学号:201004414 1.1 机构运动分析的任务、目的和方法
曲柄摇杆机构是平面连杆机构中最基本的由转动副组成的四杆机构,它可以用来实现转动和摆动之间运动形式的转换或传递动力。
对四杆机构进行运动分析的意义是:在机构尺寸参数已知的情况下,假定主动件(曲柄)做匀速转动,撇开力的作用,仅从运动几何关系上分析从动件(连杆、摇杆)的角位移、角速度、角加速度等运动参数的变化情况。还可以根据机构闭环矢量方程计算从动件的位移偏差。上述这些内容,无论是设计新的机械,还是为了了解现有机械的运动性能,都是十分必要的,而且它还是研究机械运动性能和动力性能提供必要的依据。
机构运动分析的方法很多,主要有图解法和解析法。当需要简捷直观地了解机构的某个或某几个位置的运动特性时,采用图解法比较方便,而且精度也能满足实际问题的要求。而当需要精确地知道或要了解机构在整个运动循环过程中的运动特性时,采用解析法并借助计算机,不仅可获得很高的计算精度及一系列位置的分析结果,并能绘制机构相应的运动线图,同时还可以把机构分析和机构综合问题联系起来,以便于机构的优化设计。1.2 机构的工作原理
在平面四杆机构中,其具有曲柄的条件为: a.各杆的长度应满足杆长条件,即:
最短杆长度+最长杆长度≤其余两杆长度之和。
b.组成该周转副的两杆中必有一杆为最短杆,且其最短杆为连架杆或机架(当最短杆为连架杆时,四杆机构为曲柄摇杆机构;当最短杆为机架时,则为双曲柄机构)。
因此,线性方程组解的矢量为:
式15 式11是求解连杆3和摇杆4角速度和角加速度的依据。
基于MATLAB程序设计
MATLAB 是Mathworks 公司推出的交互式计算分析软件,具有强大的运算分析功能,具有集科学计算、程序设计和可视化于一体的高度集成化软件环境,是目前国际上公认的最优秀的计算分析软件之一,被广泛应用于自动控制、信号处理、机械设计、流体力学和数理统计等工程领域。通过运算分析,MATLAB 可以从众多的设计方案中寻找最佳途径,获取最优结果,大大提高了设计水平和质量。四连杆机构的解析法同样可以用MATLAB 的计算工具来求值,并结合MATLAB 的可视化手段,把各点的计算值拟合成曲线,得到四连杆机构的运动仿真轨迹。
2.1 程序流程图
图3 角位移线图
图4 角加速度线图
图5 角加速度线图
基于MATLAB图形界面设计
所谓图形用户界面, 简称为GU I(Graphic User Interface), 是指包含了各种图形控制对象, 如图形窗口、菜单、对话框以及文本等内容的用户界面。利用这些用户界面, 用户可以和计算机之间进行信息交流。用户可以通过某种方式来选择或者激活这些图形对象, 来运行一些特性的M 文件。最常见的激活方式是利用鼠标或者其它设备来点击这些对象。对于一个用户来说, 图形用户界面就是他所面对的应用程序, 对图形界面的操作直接影响应用程序的应用前途。对于以往专门用于科学计算的语言, 如FORTRAN 语言等, 编写图形界面的功能较弱, 因而用其开发的程序, 其界面往往不够友好, 用户使用起来很不方便。而目前流行的可视化语言, 对科学计算的功能又相对弱一些。MATLAB提供了非常强大的编写图形用户界面的功能。用户只和前台界面下的控件发生交互,而所有运算、绘图等内部操作都封装在内部,终端用户不需要区追究这些复杂过程的代码。图形用户界面大大提高用户使用MATLAB程序的易用性。因此,学习MATLAB图形用户界面编程,即GUI程序的创建,是MATLAB编程用户应该掌握的重要一环。对于一个MATLAB 中的图形用户界面, 它的设计过程一般可以分为两个部分: ①用户界面的外观设计。在这里, 主要是通过不同的对话框、按钮、文本框等许多工具的使用, 设计出一个图形用户界面。同时也应搞清楚这个图形界面的功能是什么, 也即在图形界面上的操作会引发什么样的结果。
②图形界面的完成。在这里, 用户将根据在外观设计阶段所确定的图形界面的功能, 针对各个不同的图形对象来编写出能够实现该功能的函数代码, 确保这个图形界面能够完成所预定的功能。3.1 界面设计
首先我们新建一个GUI文件,如下图所示:
图6 新建GUI文件 选择Blank GUI(Default)。
进入GUI开发环境以后添加5个编辑文本框,8个静态文本框,和1个下拉菜单。利用菜单编辑器,创建Open、Print、Close三个菜单。创建好GUI界面需要的各交互控件并调整好大概的位置后,设置这些控件的属性。最后的界面效果如下图示
图7 界面效果 3.2 代码设计
(1)打开M文件编辑器(M-file Edit),点击
向下的三角图标,可以看到各个对象的回调函数(Callback),某些对象的创建函数或打开函数等。通过选中相应项就可以跳动对应函数位置进行程序编辑。
选中’edit_callback’选项,光标跳到’ function edit1_Callback(hObject, eventdata, handles)’下面空白处,添加以下代码: user_entry=str2double(get(hObject,'String'));if isnan(user_entry)errordlg('请输入数值!','Bad Input')end
(2)打开M文件编辑器(M-file Edit),点击
向下的三角图标,设置下拉菜单返回函数,光标跳到’ function popupmenu1_Callback(hObject, eventdata, handles)’下面空白处。由于下拉菜单是本界面设计关键控件,与本设计相关的程序都放在这个返回函数下。添加代码略。(3)打开M文件编辑器(M-file Edit),点击 回调函数下添加以下代码: file = uigetfile('*.fig');if ~isequal(file, 0)open(file);end 此菜单用以打开fig文件。其相应界面如图9所示:
向下的三角图标,在Open菜单
图9(4)打开M文件编辑器(M-file Edit),点击 回调函数下添加以下代码:
向下的三角图标,在Print菜单printdlg(handles.figure1)%用于图形输出。
(5)打开M文件编辑器(M-file Edit),点击 回调函数下添加以下代码:
selection = questdlg(['Close ' get(handles.figure1,'Name')'?'],...['Close ' get(handles.figure1,'Name')'...'],'Yes','No','Yes');if strcmp(selection,'No')return;end delete(handles.figure1)(6)完成M文件编写后,运行程序进行检验,单击
图标或M文件工具栏的向下的三角图标,在Close菜单图标,在编辑栏输入个构件参数,运行结果如图11:
01112-
第五篇:数字色彩设计
数字色彩设计 教师:魏星
所授课程:《数字色彩设计》、《媒介营销与管理》、《新媒体广告理论 与实务》、《互联网传播》(双语)、《传播与新媒体研究方法》
色彩设计是一项感性较强的创造性活动,它需要经过细心经营、灵感 启迪和热情创意,需要艺术情感和人文精神的关注。只有理性的色彩 与感性的色彩融为一体,色彩设计才具有灵魂。
概述: 课程目的:
学习色彩学和在计算机环境下色彩学的基本理论常识 培养对于色彩的感知能力
基于以上的理论和常识,学会用计算机作为工具来进行基本的色彩设计 认识色彩: 形形 色色
色彩的发展简介
东、西方人不同的色彩理念 色彩在视觉中的地位、作用 提高色彩鉴赏力的方法:
1、多看美好的事物
2、拍照片
3、自制剪贴册
4、亲近自然
5、自己尝试颜色再现
第一章:色彩的知识
1、色彩的本质
1.1 光与视觉
在人的视网膜上分布有两种细胞,一种是“杆体细胞”,它可以接受微弱光线的刺激,只能让 人们在月光甚至星光下极暗的环境里分辩出物体的形状和“黑”与“白”,不能分辨出颜色。视网膜上的另一种细胞叫“锥体细胞”,它只有当亮度达到一定水平时才能被激发,是人眼颜 色视觉的神经末梢,能分辨物体的细微结构和颜色。
人眼对色彩的分辨能力因光谱颜色的差异而有所不同,我们大概能区分 128 种不同的色相和
种不同的色饱和度等级。根据所选的颜色又可进一步区分若干个等级的明暗差别。对于 黄色,能分辨出 23 种明度;对于蓝色,能分辨出 16 种明度。因此,我们就能计算出人眼大
约能分辨出的颜色总数:128×130×23 = 282720,共二十八万二千七百二十种。
1.2 色与光
1.2.1 光源
对于地球来说,最大的光源就是太阳。太阳给地球带来生命,同时也赋予世界万紫千红 的色彩。我们习惯上认为太阳光是白色的,但实际上,它包含了彩虹的全部色彩 1.2.2 光的色散
我们习惯上认为太阳光是白色的,但实际上,它包含了彩虹的全部色彩-红、橙、黄、绿、青、蓝、紫,这就是光谱的颜色,是人类肉眼可感知的可见光颜色。我们可以让阳光或 灯泡发出的白光透过三棱镜,把它折射到白色的屏幕上,就可以看见它们的存在。
光谱颜色是一条从红色到紫色柔和过渡的彩色光带,并不是七种硬邦邦的颜色,我们平时所说的七色光,只是一种高度的感性概括。1.2.3 发射光
“发射光”就是光源发出的光,如阳光、灯光、计算机显示器、数码相机显示屏等,它是 数字色彩得以存在的前提条件。严格意义上的数字色彩的颜色,都是发射光形成的颜色。1.3 颜色的属性
1.3.1 色相
众多色彩种类里,为了易于辨识,人们对于每一种颜色都给予一种称呼,因而我们能称其名而知其色,这个名称的区分我们通常称之为色相 1.3.2 明度
明度是指色彩的明暗程度 1.3.3 饱和度
饱和度是指色彩鲜艳的程度。
通俗来说,是指色彩里所包含的颜色程度。色彩里无色的包含量越少且越接近纯色,饱和度 就越高。饱和度在单一波长的光线里是最高的,而各种颜色混合越多,饱和度就会越低 1.3.4 色调
色调(Tone)体系是把明度和饱和度的概念合并成一个,将颜色的明暗或强弱、浓淡等 表现出来的方法。人们普通都是以 【淡蓝色】、【鲜明的红色】等方式轻松地把颜色表现出 来,这种表现方式就是把颜色的色感和看到的感觉一次性传达出来。1.4 原色
在 RGB 色彩模型中,它分别是 R、G、B
(光线三原色); 在 CMYK 色彩模型中,它分别是 C、M、Y(颜料三原色)1.4.1 间色是由两种原色生成的颜色,它的成分比较单纯。
1.4.2 复色是由三种原色生成的颜色,或者是由两种原色加黑色生成的颜色,它的成分相对 比较复杂。
2、数字色彩的使用方法
2.1 色彩的数字化表达(在 CorelDRAW 软件里)
数字输入法、模型选取法、色板与色盘选取法、滑杆选取法 2.2 色彩的绘制方式
填充工具填色、各种类型的渐变填色、画笔等工具绘制的颜色
3、色彩的混合3.1 色彩的组成
3.1.1 光源色:例如从太阳光等光源传来的光,用肉眼看是感觉不到色彩的;然而,经由三 棱镜或自然的折射可以呈现出的色彩,被称作“光源色”。
3.1.2 透过色:在光源本身加上颜色而让人感觉到色彩的称为“透过色”,请想象舞台上的聚光灯,在聚光灯前放置彩色玻璃纸,灯光就变得有颜色了。
3.1.3
固有色/反射色:我们周遭几乎所有的东西都无法自行发光,而必须借由太阳或是室 内照明照射,让光接触到物体再反射之后才得以被看到。这种感知色彩的方法称为“固有色”,或是“反射色”
3.2 RGB 颜色和 CMYK 颜色
3.2.1 RGB 颜色——荧幕映像色的混合原理:从内部里散发光线的电视机、电脑等的荧幕 颜色属于光源色。在荧幕画面里均匀分布的红色 Red、绿色 Green、蓝色 Blue 的荧光物质 微粒,若按下荧幕的电源开关,荧幕就会散发光源并同时让我们看到色彩。加色法混合特征:(1)两种不同的彩色光混合生成另一种颜色,且色光混合的次数越多、强 度越大,得到的颜色越明亮;(2)如果两种色光混合成白色,它们就被称为互补色;(3)三 基色可以混合出其集合范围内的所以颜色;(4)红(R)、绿(G)、蓝(B)三色等量相加
生成中性灰色, 当 R、G、B 三色达到最高值时,它们相加后的结果生成白色;当 R、G、B 三色处于最低值时,它们相加后的结果生成黑色。
3.2.2 CMYK 颜色——印刷颜色的混合原理:荧幕里的彩色文件印刷在纸张上面时,其呈现 出就是荧幕里装好的三原色和黑色混合之后所表现出来的结果。印刷机墨水里所使用的三原 色是洋红色 Magenta、黄色 Yellow、青色 Cyan,这和光源色里的三原色不同。
如果要将印刷品里所呈现出来的多元颜色加以说明的话,只要知道 Magenta、黄色 Yellow、青色 Cyan 和黑色的混合比率就可以了。减色法混合的特征是:(1)两种不同的颜色混合生成另一种颜色,且颜色混合的次数越多,得到的颜色就越灰暗、越混浊;(2)青(C)、品红(M)、黄(Y)三色等量混合生成中性
灰色, 当 C、M、Y 三色达到最高值时,混合的结果生成黑色;(3)在实际应用中,由于颜
料的化学成分和介质吸收等原因,C、M、Y 三色混合后不会产生真正的黑色,因此在打印 时要多加一个黑色(Black, 记为 K)作为补充。“中性混合”有两种方式: 1)是色彩的旋转混合 2)是色彩的空间排列混合
放大的电视机屏幕上的色彩网点,是由红绿蓝三色小点通过空间排列混合构成的。
就是颜色在进入视觉之前没有混合,而是在一定位置、大小和视距等条件下,通过人眼的作 用在人的视觉里发生混合的感觉,这种发生在视觉内的色彩混合现象是生理混色。第二章:色彩的美学原理
1、色彩美学 1.1 美学原理
审美意象——艺术的本体是审美意象,即一个完整的、有意蕴的感性世界。艺术不是为人们 提供一件有使用价值的器具,也不是用命题陈述的形式向人们提供有关世界的一种真理,而 是向人们呈现一个意象世界,艺术创作了、呈现了一个完整的感性世界。1.2 色彩之美
色彩是人们生活之中不可缺少的重要组成部分,人们离不开色彩,没有色彩人们的生活难以 想象,是多么的枯燥无味,是多么地死气沉沉。缺少了色我们的生活便陷入一种没有生机、没有活力。色彩的范围向当地广泛,包括万事万物,小到一张纸,大到宇宙万物,无不有色 彩的存在。色彩是不能用其他色混合形成的颜色称为原色。色彩之美美在色彩的对比,色 彩的调和
1.2.1 色彩的调和
一般说来,色彩是不能单独存在的。当我们观察某一色彩时,必然受该色彩周围其它颜色的 影响,从而产生比较的关系,即当两种或两种以上的色彩,有秩序、和谐地组织在一起时,能使人产生愉快满足的色彩搭配,就叫做色彩调和。1.2.2 色彩的对比
将不同的色彩放置在一起,就会产生相互影响或冲突,这种影响或冲突就是色彩对比 1.2.3 色彩的对比与调和
(逆向关系)
对比:临近色
类似色
对比色
互补色 调和:临近色
类似色
对比色
互补色 1.2.4 隔离调和
e.g.中国传统壁画沥粉贴金,用石膏沥粉勾勒人物或山水的造型线条,起到调和色块的作用 e.g.隔离开鲜艳的颜色 1.2.5
互混调和:“你中有我,我中有你” 1.2.6
极色调和:黑色做背景 2.色彩的感觉与情感 2.1
色彩的温度感
具有温暖感的色彩是:红、橙、橘黄、黄、红紫色具有寒冷感的色彩是:蓝、蓝绿、紫蓝 中性色彩是:紫、绿、黑、白、灰 色彩的温度实验证明:
人们对于暖色和冷色的温度感相差摄氏 3 度以上。2.2
色彩的重量感 明度高— 感觉轻 明度低— 感觉重
色相— 暖色轻,冷色重 2.3
色彩的坚硬与柔和
色彩的软硬感与明度关系紧密,而色相几乎毫无影响。2.4
色彩的华丽与质朴感
色彩的华丽与质朴感,受彩度的影响最大,明度和色相的影响次之: 从饱和度方面看:饱和度高的纯色华丽,反之质朴。从明度方面看:明度高的明亮色华丽,反之质朴。
从色相方面看:对比色相的组合显得华丽,同一色相和邻近色相的组合显得质朴。2.5
色彩的前进与后退
色相方面: 波长长的色相(红、橙、黄)给人以前进膨胀感;波长短的色相(蓝、绿等)给人以 后退收缩感
明度方面: 明度高而亮的色彩有前进感;明度低而暗的色彩有后退感
饱和度方面: 高饱和度鲜艳色彩有前进与膨胀感;低饱和度灰浊色彩有后退与收缩感,3.色彩的心理
3.1
色彩的象征
3.1.1 性别、年龄对色彩心理的影响: 儿童、中老年人、女性&男性
3.1.2
民族、宗教对色彩心理的影响京
红脸:忠心耿直
黄脸:干练勇猛 蓝脸:妖邪盗寇
黑脸:刚正勇敢
白脸:阴险奸诈
绿脸;草莽好汉
粉脸;老臣宿将
金脸:超常神怪
紫脸:热情忠谨
丑脸:书童 3.1.3
其他人文因素对色彩心理的影响 色彩与五行联系 木、火、土、金、水 青、赤、黄、白、黑
五方正色,也奠定了中国传统色彩的哲学基础 3.1
色彩的象征(补充)
红色:刺激和兴奋神经系统,增加肾上腺素分泌和增进血液循环。橙色:诱发食欲,帮助恢复健康和吸收钙。黄色:可刺激神经和消化系统。
绿色:有益于消化和身体平衡,有镇静作用。蓝色:能降低脉搏、调整体内平狻.靛蓝:调和肌肉、止血、影响视听嗅觉。紫色:对运动神经和心脏系统有压抑作用。黑色:精神压抑。导致疾病发生。3.2
色彩的音乐感
音频与光波之间有可寻的联系与规律,最简单的是把音阶中七个音与七种颜色联系起来。强 烈的色彩,如亮黄色、鲜红色,带有尖锐、高亢的音乐感,而暗浊的色彩,如深蓝色、深灰 色等,便有低沉、浑厚的音乐感。色彩明度的高低和声音高低的关系,也容易被人们感受到。3.3
色彩的味觉&嗅觉感
鲜红色使人想起辣椒,有辣味感。
绿色、黄绿色是未成熟的果实色彩,有酸、涩的味感。
橙色、淡黄色、浅棕色、粉红色使人想到了成熟的瓜果色彩而产生甜甜的味感。3.4
色彩的联想第三章 :传统色彩系统与数字色彩系统 1.传统色彩系统
传统的艺术色彩学是一种以颜料色彩为载体的色彩理论体系。它的物理基础是一种是以颜 料、涂料、染料等色料为基础的显色系统,其本质是“反射光”的色彩系统。1.1
理想状态的色立体
色立体是一个假设的立体色彩模型,理想状态的色立体象一个地球仪。球的中心是一条自上 而下变化的灰度色彩中心轴,靠北极(上方)的一端是白色,靠南极(下方)的一端是黑色,用来表示色彩的明度变化。其他彩色的明度也跟中心轴的变化相一致,越往北极的颜色明度 越高,到达北极点就是纯白色;越往南极的颜色明度越低,到达南极点就是纯黑色。最纯的 颜色都附着在球的赤道表面,沿赤道作圆周运动,表示色彩的色相变化。从球的表面向中心 轴的水平方向延伸,表示色彩的饱和度(彩度)变化。1.2
孟塞尔色彩系统
孟塞尔显色系统是美国画家孟塞尔创立的,它是目前国际上作为分类和标定物体表面色最 广泛采用的方法。孟塞尔显色系统着重研究颜色的分类与标定、色彩的逻辑心理与视觉特征 等,为传统艺术色彩学奠定了基础,也是数字色彩理论参照的重要内容 孟塞尔色相环以红(R)、黄(Y)、绿(G)、蓝(B)、紫(P)5 色为基础色相,中间加入 黄红、黄绿、蓝绿、蓝紫、紫红 5 种过渡色相,构成了 10 种色的色相环。这 10 种色相每种
又细分为 10 个等级,共 100 个色相。这每 10 个等级中的第五级被定为这个色相的代表色样。
孟塞尔色相环以红(R)、黄(Y)、绿(G)、蓝(B)、紫(P)5 色为基础色相,中间加入 黄红、黄绿、蓝绿、蓝紫、紫红 5 种过渡色相,构成了 10 种色的色相环。这 10 种色相每种
又细分为 10 个等级,共 100 个色相。这每 10 个等级中的第五级被定为这个色相的代表色样。
1.3
奥斯特瓦德色彩系统
奥斯特瓦德色彩系统是由科学家奥斯特瓦德 1921 年创立的,它以物理科学为依据,而不是 象孟塞尔系统那样重视心理逻辑和视觉特征。它注重色彩的调和关系,主张调和就是秩序。奥斯特瓦德色相环以 24 个色组成。首先在一个圆形内以等间距安置了红、黄、绿、蓝 4 个
主色,在此基础上在每两个颜色之间分别安插 4 个间色,扩展为红、橙、黄、黄绿、绿、蓝、蓝绿、紫 8 个基本色相环,然后再将这 8 个基本色相每种色分为 3 个等级,共编组成 24 色 的色相环1.4
日本 PCCS 色彩系统
日本 PCCS 色彩系统的色立体模型、色彩明度及纯度的表示方法与孟塞尔色彩系相似;日本
PCCS 的色相环由 24 个色相组成。为了保持色相环上的色相差均匀,经过色相环直径两端 相隔 180 度的色相并非绝对补色。1.5
混色系统
混色系统是以光学色彩为基础的色彩系统,也是发射光色彩系统。它认为任何色彩都可以由 一些基色(原色)混合而成。人们通常把红(R)、绿(G)、蓝(B)三种颜色定为三基色(或称三原色)
1.5.1
混色系统 CIE CIE 是一个国际通用的色彩标准,是一个基于光学色彩的混色系统,它成熟的理论体系建立
于 20 世纪 30 年代。由 x,y,z 三基色作轴的 xyz 锥形空间是一个三维的颜色空间,它包含
了所有的可见光色。2.数字色彩系统
数字色彩系统由相关的计算机色彩模型构成。计算机色彩成像的原理和其内部色彩的物理性 质决定了它是一种光学色彩,但它又跟传统意义上的混色系统和显色系统存在明显的差别和 有着不同程度的联系,正因为它的这种特殊性,使数字色彩形成了自己的显著特点而自成体 系。
2.1
Lab 色彩
Lab 色彩是计算机内部使用的、最基本的色彩模型。Lab 是计算机色彩平台里,交换颜色的
基础。举个例子,我们在 ps 里面,将 RGB 颜色转换成 CMYK,计算机就会先转成 Lab 再
转成 CMYK。2.2
RGB 色彩
红色、绿色、蓝色三色分别是常用的光的三原色,计算机图形学中成为“三基色”。红(Red,记为 R)、绿(Green,记为 G)、蓝(Blue,记为 B),它们是计算机显示器及其它数字设备
显示颜色的基础。RGB 色彩模型是计算机色彩最典型、也是最常用的色彩模型
RGB 色彩模型用一个三维直角坐标系中的立方体来描述,RGB 色彩框架是一个加色模型,模型中的各种颜色都是由红、绿、蓝三基色以不同的比例相加混合而产生的。在这个立方体 中,坐标原点(0,0,0)代表黑色,坐标顶点(1,1,1)代表白色,坐标轴上的三个顶点分别代表红、绿、蓝三基色,而剩下的另外三个顶点分别代表每一个基色的补色:青、品红、黄。
2.3
CMY(CMYK)色彩 C、M、Y 三色分别是色料的三原色。青(记为 C)、品红(记为 M)、黄(记为 Y),它们
是打印机等硬拷贝设备使用的标准色彩,它们与红(R)、绿(R)、蓝(B)三基色形成色相 上的补色关系。
CMY 色彩模型也用一个三维直角坐标系中的立方体来描述,CMY 色彩框架是一个减色模 型,模型中的各种颜色都是由青、品红、黄三原色以不同的比例相加混合而产生的。在坐标 系中,CMY 色彩模型与 RGB 色彩模型外观相似,但原点和顶点刚好相反。因此,这个立 方体的坐标原点(0,0,0)代表白色,坐标顶点(1,1,1)代表黑色,坐标轴上的三个顶 点分别代表青、品红、黄三原色,而剩下的另外三个顶点分别代表每一个基色的补色:红、绿、蓝。
2.4
HSV(HSB)色彩
2.4.1 HSV 色彩六棱锥的外观HSV 是计算机颜色的模型之一,它在计算机实用软件里,常被称为 HSB 色彩模型。因为它
用色彩的直观属性来描述颜色,它的三个颜色参数正好对应色彩的主观三属性(三要素),跟我们传统的颜料色彩设计相类似,所以它称为用户(设计师)直观的色彩模型。2.4.2 HSV 色彩六棱锥的色彩描述
HSV 模型的色彩从 CIE 三维颜色空间转变而来,它跟孟塞尔显色系统的色立体较接近。色
相(H)处于六棱锥顶面的色平面上,它们围绕中心轴 V 旋转和变化。色彩明度(B)沿六
棱锥中心轴 V 从上至下变化。色彩饱和度(S)沿水平方向变化,越接近六棱锥中心轴的色
彩,其饱和度越低。
2.4.3 HSV 色彩六棱锥顶面及其色相
在 HSV 色彩模型中,六棱椎顶面的正六边形,是一个饱和度最高的有彩色系的六色色相环。
在这个六边形色相环中,色相是沿逆时针方向变化的,用 H(hue)来表示色相。每变换 1° 夹角,色相就有细微的变化。从 0°到 360°,色相变化的顺序按红—橙—黄—绿—蓝—品红,每个颜色相隔 60°,这 6 个颜色也构成了六边形的 6 个顶点。从 0°到 359°,色相按光谱色
带依次排列,当到达 360°时,色相又回到 0°时的色彩。
在六边形中,S(saturation)表示色彩饱和度变化的量。当颜色位于六边形中心时,颜色的 饱和度为 0(S = 0),呈纯白色。饱和度的变化由六边形中心向六边形外框逐渐增大,位于 六边形外框上的颜色的饱和度最高。
2.4.4
HSV 六棱锥立体模型纵截面分解 我们把 HSV 色彩六棱椎纵向剖开,取一个直角三角形,并分别把它两直角腰上的色彩分成 5 个等级。水平方向是有彩色系的颜色,它显示颜色的饱和度变化。等腰直角三角形最左边 的颜色饱和度为 0,它是 HSV 色彩六棱椎顶面色相环的中心,呈纯白色;每个等级之间颜
色的饱和度从左至右依次增大,每级的色彩值差为 25%;它们依次是 25%、50%、75%、100%;
最右边的颜色是最纯的颜色,饱和度也最高。2.4.5 我们把这个色相环内的色相进行大致的分区:
一、间隔 5°~20°的颜色为邻近色,它们在 色相环上的位置很接近,色相对比柔和;
二、间隔 20°~80°的颜色为类似色,它们在色 相环上的位置比较接近,色相对比较为柔和;
三、间隔 80°~160°的颜色为对比色,它们 在色相环上相隔很远,色相对比强烈,对比色一般在色相上具有的共同因素很少;
四、间隔 180°左右的颜色为互补色,互补色之间在色相环上相隔最远,是两个完全相反的颜色(就 像彩色照片何底片一样),它们的色相对比最强烈,互补色之间在色相上没有共同因素。2.5
色彩域
3. 色彩的名称 / 表示
为了把特定的颜色表述给对方,可让他看实物或通过颜料、画笔及印刷等做成的色样本。可 是,仅凭色名不可能准确表达色彩,只能表达大致的色彩状况,这时用的色名可粗略分为惯 用色名和系统色名。3.1
惯用色名
樱桃色、橙色、象牙色、土黄色等,只要知道这些东西就很容易联想到它的颜色,表达大致的颜色也很方便,这些就叫做固有色名。自然界中存在的颜色、动植物、矿物(颜料)、染色材料等,从这些事物名称而来的
为固有色名。这些色名中有很早以前用的,也有从过去沿用至今的,这些都是传统色名。像这样由固有色名、传统色名组成的各种颜色的名字就叫做惯用色名。决定产品、涂料的颜色以及调色时,需要周密考虑颜色的表达及管理。3.2
色名的发展 从“白”、“红”、“黑”、“蓝”这些状况的表现就可以产生色名。“东方发白,天就快亮了” 就像这句话所说的那样,“白”就是随着夜色褪去,天空明亮起来,所呈现的“白”,也可以 说物体看得很清楚时那种“鲜明”,这都是“ 白”的来由;“黑”指日落后的昏暗状态;红、蓝也各有出处。由此发展过来,“白”就是纯白,可产生明亮的颜色,“黑”就是玄青和稍带 有色成份的暗色,就像“红”表示赤系-黄系(暖色系);“蓝”表示绿系-青系(冷色系)一 样,“白”、“黑”是用来表示明暗的词,“红”、“蓝”则是成为表示色感的词。此后,随着染料、颜料所带动的一个个颜色的命名,又分化出各种各样的色名,专指各自所具有的特色。3.3
系统色名 “红”、“黄”、“蓝”等用的是表现颜色的名词化色彩专用词即基本色名;以基本色名中习惯上
常用的“明”、“暗”等,作为附加特定修饰语来表现颜色的色名就是系统色名。它的好处在 于如果有些惯用色名记不起来了,仍可以凭各种颜色状况表达出来。JIS 系统名就是将基本 色名作为特定修饰语,可以表达 350 种颜色:
1、基本色名„„白、黑、红、黄、绿、青、紫七种,加上表示其中间色的灰、黄红、黄绿、蓝绿、蓝紫、红紫这六种,共 13 种基本色名(有彩色 10 种、非彩色 3 种)
2、JIS 系统色名的色相关系„„紫调红、红、黄调红、黄红、红调黄、黄、绿调黄、黄绿、黄调绿、绿、蓝调绿、蓝绿、绿调蓝、蓝、紫调蓝、蓝紫、蓝调紫、紫、红调紫、红紫
3、JIS 系统色名的明度及纯度的相互关系 3.4
按表色系表示颜色 仅简单地称其为桃色,而实际上就有发红的桃红、发黄的桃色、淡桃色、深桃色等多种桃色。自己印象中的那个桃色,怎样表达才能让对方听明白呢?微妙的颜色区别很难通过惯用色名 和系统色名来表现。
为了分清这些微妙的区别,准确地表达出来,有多种标准化的表现方法,客观、系统地把颜 色归纳起来,这就是表色系。每个表色系都用特定的符号、数值来表达颜色,包括表色系及 其色样本手册,合称为配色系统。如使用“孟塞尔表色系”及使用孟塞尔值的色样本手册。另,PCCS 是以便于配色为主要目 的表色系。基于 PCCS 的配色卡等有很多教材,讲究配色、色彩形象的服装行业也在广泛使 用