滚子摆动从动件凸轮设计matlab程序
基于MATLAB的凸轮设计
基于MATLAB的凸轮设计
凸轮是一种用于转动机件的机械元件,常用于驱动一些运动部件做往
复运动或者周期性运动。在机械设计中,通过凸轮的设计可以实现复杂的
运动路径,以及具有特定速度和加速度要求的运动。
MATLAB是一种强大的数学计算和编程环境,可以用于进行科学计算、数据分析和算法开发。在凸轮设计中,MATLAB可以用于凸轮曲线的生成、设计和优化。本文将介绍如何基于MATLAB进行凸轮设计。
在凸轮设计中,最重要的是凸轮曲线的生成。凸轮曲线是一个由数据
点组成的模板,通过插值或者数值逼近的方法可以生成一个光滑的凸轮曲线。在 MATLAB 中,可以使用插值函数 interp1 或者曲线拟合函数
polyfit 进行凸轮曲线的生成。具体步骤如下:
1.定义凸轮的设计参数,例如凸轮的半径、凸轮转动的角度范围等;
2.根据凸轮的设计参数,生成一些数据点,这些数据点可以通过数学
计算或者几何建模等方式得到;
3. 使用插值函数 interp1 或者曲线拟合函数 polyfit 对这些数据
点进行插值或者拟合,得到一个平滑的曲线;
4.根据凸轮转动的角度范围,生成一系列角度的数据点;
5. 使用插值函数 interp1 或者曲线拟合函数 polyval 对这些角度
的数据点进行插值或者拟合,得到一系列对应的曲线坐标点;
6.将这些坐标点绘制成凸轮曲线,并进行可视化。
除了凸轮曲线的生成,MATLAB 还可以用于凸轮的设计和优化。凸轮
设计包括凸轮的尺寸设计、运动路径设计等。在 MATLAB 中,可以使用优
化函数 fmincon 或者遗传算法函数 ga 进行凸轮设计的优化,以获得符
MATLAB在摆动滚子从动件盘形凸轮机构设计中的应用
J D
{ X . ' = : X  ̄ ± r r C 。 O i S ;
1 1 摆杆在推程阶段的运动方程 : 8 f 0 , 8 。 / 2 ] , 等加速运动阶段 :
q b=2 q 5
c s
2 . 2从动件运动规律 的确定 为给 定 的 运 动 规 律 中 的摆 角 推 杆 的 角 位 移 , 6 为 凸轮 的转 角 , 由于 摆 动从动件的升、 回程运动规律均为等加速等减速 运动 , 结合表1 , 得到从动件 的运 动 方 程 :
e q ui p me n t a nd a s s e mbl y p r o d u c t i o n l i ne . Th e a r t i c l e il w l i n t r o d uc e t he a p pl i c a t i o n o fM ATLAB i n t h e o s c i l l a t i n g r o l l e r f o l l o we r d i s c c a m me c h a n i s m d e s i g n f r o m
f
( 6 / 8 o ) : 8∈[ 8 0 / 2 , 8 , 等 减 速 运 动 阶段 :
,  ̄
‘
=
~
一
2 ( 8 。 一 8 y / 8 o 2
2 ) 摆 杆 在 回程 阶段 的 运 动方 程 :
基于matlab的凸轮设计实例
h=30;w=12;rb=50;e=12;rr=10;
s0=sqrt(rb*rb-e*e);
q=120*pi/180;
qs=(120+30)*pi/180;
q1=(120+30+150)*pi/180;
for i=1:1:120
qq(i)=i*pi/180.0;
s1=(h*qq(i)/q)-(h/(2*pi))*sin(2*pi*qq(i)/q);
v1=w*(h/q)-(w*h/q)*cos(2*pi*qq(i)/q);
x(i)=(s0+s1)*sin(qq(i))+e*cos(qq(i));
y(i)=(s0+s1)*cos(qq(i))-e*sin(qq(i));
a(i)=(s0+s1)*cos(qq(i))-e*sin(qq(i))+v1/w*sin(qq(i)); b(i)=-(s0+s1)*sin(qq(i))-e*cos(qq(i))+v1/w*cos(qq(i)); xx(i)=x(i)+rr*b(i)/sqrt(a(i)*a(i)+b(i)*b(i));
yy(i)=y(i)-rr*a(i)/sqrt(a(i)*a(i)+b(i)*b(i));
end
for i=121:1:150
qq(i)=i*pi/180;
s2=h;v2=0;
x(i)=(s0+s2)*sin(qq(i))+e*cos(qq(i));
y(i)=(s0+s2)*cos(qq(i))-e*sin(qq(i));
a(i)=(s0+s2)*cos(qq(i))-e*sin(qq(i))+v2/w*sin(qq(i)); b(i)=-(s0+s2)*sin(qq(i))-e*cos(qq(i))+v2/w*cos(qq(i)); xx(i)=x(i)+rr*b(i)/sqrt(a(i)*a(i)+b(i)*b(i));
滚子摆动从动件凸轮设计matlab程序
disp ' ******** 滚子摆动从动件凸轮设计 ********'
disp '已知条件:'
disp ' 凸轮作顺时针方向转动,从动件做摆动'
disp ' 从动件在推程作等加速/等减速运动,在回程作等加速等减速运动'
rb =52;rt = 10;qm=15;ft = 60;fs = 10;fh = 60;alp = 35;a=140;l=122;q0=asin(rb/a)*180/pi;
fprintf (1,' 基圆半径 rb = %3.4f mm \n',rb)
fprintf (1,' 滚子半径 rt = %3.4f mm \n',rt)
fprintf (1,' 起始角度 q0= %3.4f mm \n',q0)
fprintf (1,' 最大摆动角度 qm = %3.4f mm \n',qm)
fprintf (1,' 推程运动角 ft = %3.4f 度 \n',ft)
fprintf (1,' 远休止角 fs = %3.4f 度 \n',fs)
fprintf (1,' 回程运动角 fh = %3.4f 度 \n',fh)
fprintf (1,' 推程许用压力角 alp = %3.4f 度 \n',alp)
hd= pi / 180;du = 180 / pi; %角度弧度互换
d1 = ft + fs;d2 = ft + fs + fh;
disp ' '
disp '计算过程和输出结果:'
disp ' 1- 计算凸轮理论轮廓的压力角和曲率半径'
disp ' 1-1 推程(等加速/等减速运动)'
matlab凸轮轮廓设计及仿真说明书
形状。在某些机械中,位移曲线由工艺过程决定,但一般
情况下只有行程和对应的凸轮转角根据工作需要决定,而
曲线的形状则由设计者选定,可以有多种运动规律。传统的凸轮运动
规律有等速、等加速-等减速、余弦加速度和正弦 加速度等。等速运 动规律因有速度突变,会产生强烈的刚性 冲击,只适用于低速。等加 速-等减速和余弦加速度也有加速度突变,会引起柔性冲击,只适用
思路口。因此,基于MATLAB件进行凸轮机构的解析法设计,可以解
决设计工作量大的问题。
本此课程设计基于MATLAB软件进行凸轮轮廓曲线的 解析法 设计,并 对的运动规律凸轮进行仿真,其具体方法为首先精确地 计算出轮 廓线
上各点的坐标,然后运用MATLAB绘制比较精 确的凸轮轮廓曲线和推杆 的位移、速度及加速度曲线以及仿真。
1.2
滚子半径
=40
凸轮轮廓曲线,所以在应用时,只要根据从动件的运动规律来设计凸
轮的轮廓曲线就可以了。
由凸轮的回转运动或往复运动推动从动件作规定往复移 动或摆动 的机构。凸轮具有曲线轮廓或凹槽,有盘形凸轮、 圆柱凸轮和移动凸 轮等, 其中圆柱凸轮的凹槽曲线是空间曲 线,因而属于空间凸轮。 从动件与凸轮作点接触或线接触, 有滚子从动件、平底从动件和尖端 从动件等。尖端从动件能 与任意复杂的凸轮轮廓保持接触,可实现任 意运动,但尖端 容易磨损,适用于传力较小的低速机构中。 在带滚子的直动从动件盘形凸轮机构中, 凸轮回转一周从动 件依次作升-停-降-停4个动作。从动件位移s(或行程高度h)与凸 轮转角 ①(或时间t)的关系称为位移曲线。从动件的行程h有推
机械原理课程设计matlab程序 凸轮机构
clear
h=70;w=2*pi*300/60; %行程h(单位mm),凸轮角转速(rad/s)d1=pi/2; d2=10/180*pi; d3=pi/2; d4=170/180*pi;%算出凸轮的推程角,远休止角,回程角,近休止角(弧度)
d=1:1:360; d0=d/180*pi; %定义向量
%推程
for i=1:45 %等加速运动
s(i)=2*h*d0(i)^2/d1^2;
v(i)=4*h*w*d0(i)/d1^2;
a(i)=4*h*w^2/d1^2;
end
for i=46:90 %等减速运动
s(i)=h-2*h*(d1-d0(i))^2/d1^2;
v(i)=4*h*w*(d1-d0(i))/d1^2;
a(i)=-4*h*w^2/d1^2;
end
for i=91:101
s(i)=s(i-1);
v(i)=0;
a(i)=0;
end
%回程
for i=102:146 %等加速运动
s(i)=h-2*h*d0(i-100)^2/d3^2;
v(i)=-4*h*w*d0(i-100)/d3^2;
a(i)=-4*h*w^2/d3^2;
end
for i=147:192 %等减速运动
s(i)=2*h*(d3-d0(i-100))^2/d3^2;
v(i)=-4*h*w*(d3-d0(i-100))/d3^2;
a(i)=4*h*w^2/d3^2;
end
for i=193:360
s(i)=s(i-1);
v(i)=0;
a(i)=0;
end
r0=61;e0=39;
s0=sqrt(r0^2-e0^2);
for i=1:1:360
用matlab绘制凸轮教程(详细)
首先看一下理论轮廓线的方程式
X=(S0+S1)sinθ+ ecosθ
Y= (S0+S1) cosθ+ esinθ
式中,e为偏心距,S0=sqrt(r0^2-e^2),r0为偏心圆半径
%先设置凸轮的基本参数,偏心距离e,基圆半径rb,滚轮半径rr,角速度w,推杆上升的最大行程h。
h=30;w=12;rb=50;e=12;rr=10;s0=sqrt(rb*rb-e*e);% 偏心距e=12,基圆rb=50,滚轮半径rr=10,角速度w=12,最大上升h=30
q=120*pi/180;%这里我规定推程运动角为120度
qs=(120+30)*pi/180;%远休止角为150度
q1=(120+30+150)*pi/180;%回程运动角为300度
for i=1:1:120 %将120度按1度均分,从而得到各个度数上的轮廓坐标
qq(i)=i*pi/180.0;
s1=(h*qq(i)/q)-(h/(2*pi))*sin(2*pi*qq(i)/q);
v1=w*(h/q)-(w*h/q)*cos(2*pi*qq(i)/q);
x(i)=(s0+s1)*sin(qq(i))+e*cos(qq(i));y(i)=(s0+s1)*cos(qq(i))-e*sin(qq(i));%理论轮廓线的坐标
a(i)=(s0+s1)*cos(qq(i))-e*sin(qq(i)); %cos(i)
b(i)=(s0+s1)*sin(qq(i))-e*cos(qq(i)); %sin(i)
xx(i)=x(i)+rr*b(i)/sqrt(a(i)*a(i)+b(i)*b(i));yy(i)=y(i)+rr*a(i)/sqrt(a(i)*a(i)+b(i)*b(i));%实际工作轮廓线的坐标
matlab凸轮摇杆机构设计动画代码
matlab凸轮摇杆机构设计动画代码
一、引言
凸轮摇杆机构是机械工程中常见的一种机构,其运动特性决定了它在
很多领域都有广泛的应用,例如发动机、汽车、船舶等。而在设计凸
轮摇杆机构时,需要进行大量的计算和试验,这对于工程师来说是一
个非常繁琐的过程。但是,通过使用MATLAB软件可以大大简化这个过程,并且可以生成动画效果来更直观地展示凸轮摇杆机构的运动特性。
二、MATLAB凸轮摇杆机构设计代码
以下是MATLAB代码实现凸轮摇杆机构的动画效果:
1. 定义凸轮形状
首先需要定义凸轮的形状,可以采用圆弧、正弦曲线等方式进行定义。例如,在此我们采用正弦曲线进行定义:
```matlab
theta = linspace(0,2*pi,100);
r = 1+sin(theta);
```
2. 定义摇杆长度和连杆长度
根据具体情况定义摇杆长度和连杆长度:
```matlab
L1 = 3;
L2 = 6;
```
3. 计算连杆末端位置坐标
根据凸轮形状和连杆长度,可以计算出连杆末端的位置坐标:
```matlab
x1 = r.*cos(theta);
y1 = r.*sin(theta);
x2 = x1 + L1*cos(theta);
y2 = y1 + L1*sin(theta);
```
4. 计算摇杆末端位置坐标
根据连杆长度和摇杆长度,可以计算出摇杆末端的位置坐标:
```matlab
theta2 = asin((y2-L2)./L1);
x3 = x2 - L2*cos(theta-theta2);
y3 = y2 - L2*sin(theta-theta2);
凸轮机构matlab程序
凸轮轮廓程序:
>> e=20;
s0=77.46;
a1=0:pi/36:pi/3;
s1=50*[3*a1/pi-sin(6*a1)/(2*pi)];
x1=(s0+s1).*sin(a1)+e*cos(a1);
y1=(s0+s1).*cos(a1)-e*sin(a1);
k1=150/pi*[1-cos(6*a1)];
>> i1=[(k1-e).*sin(a1)+(s0+s1).*cos(a1)].*[(k1-e).*(k1-e)+(s0+s1).*(s0+s1)].^(-1/2);
>> j1=[-(k1-e).*cos(a1)+(s0+s1).*sin(a1)].*[(k1-e).*(k1-e)+(s0+s1).*(s0+s1)].^(-1/2);
>> x10=x1-10*j1;
>> y10=y1-10*i1;
a2=pi/3:pi/36:pi;
s2=50;
x2=(s0+s2).*sin(a2)+e*cos(a2);
y2=(s0+s2).*cos(a2)-e*sin(a2);
k2=0;
>> i2=[(k2-e).*sin(a2)+(s0+s2).*cos(a2)].*[(k2-e).*(k2-e)+(s0+s2).*(s0+s2)].^(-1/2);
j2=[-(k2-e).*cos(a2)+(s0+s2).*sin(a2)].*[(k2-e).*(k2-e)+(s0+s2).*(s0+s2)].^(-1/2);
x20=x2-10*j2;
基于MATLAB的凸轮机构运动分析与动画模拟
心处于 B 点 。 0 当凸轮转过 8角度时 , 推杆相应地
产 生位移 S 见 图 4 , ( )滚子 中心 的坐标 方程 为 :
x foS s g e og = S+ )i + cs n
收稿 日期 :0 7 0 — 8 20 — 8 2 作者筒介: 罗世 民(9 8 ) 男, 16 一 , 江西南昌人 , 剐教授 , 主要研究方向: 电工程教学与研究 机
图1 所示 为对 心滚 子从 动件盘 形 凸轮机 构 。
tn a
式 中 0可在 O 60之 问变化 , 值 可根 据 0 30 其 d x 算
,
B 点为凸轮轮廓线起始点。开始时推杆滚子中 0
其在 限根去 所 象 可据 与
的 ± 号判断。
2 MA L B参数化 绘图方 法与动 画的 实现 TA
MA L B是 数 值分 析 中较强 的应 用 软 件, TA 它
y (oS e s- s g = S+ )og ei n
的数值计算 、 数据可视化 和编程功能 , 得到广大
科 技工作 者 的认可 。它 被广 泛应用 于数 理统 计 、
式 中 e为 偏 距 ,s 从 动 件 的 位 移 , 凸 ,为 8为 轮所转过 的角度 。这 是凸 轮的理论 轮廓线 方 程。
Matlab凸轮位移分析设计
MATLAB机械工程
凸轮位移分析的实例
班级:
姓名:
学号:
指导教师:
一.实验目的
通过MATLAB上机编程,掌握MATLAB语言变量、函数、MATLAB常用程序结构和流程控制语句、交互控制语句、程序调试运行等。
二.实验内容
凸轮是把一种运动转化为另一种运动的装置,通常凸轮做旋转运动,并转化为从动件的振动、直线运动或者二者的结合。对基圆为
的凸轮,
为最小圆周半径,与凸轮表面相切,并和凸轮的转轴同心。则从动件的运动方程为:
+=
对于旋转运动,假定有:
其中,h为从动件的最大位移,
为凸轮转角,
为从动件摆角,并且
。如果凸轮的角速度
为常量,试求出当
时从动件的位移s、速度v、加速度a、瞬时加速度j的变化曲线。
三、建立M文件如下:
beat=60*pi/180;
phi=linspace(0,beat,40);
phi2=[beat+phi];
ph=[phi phi2]*180/pi;
arg=2*pi*phi/beat;
arg2=2*pi*(phi2-beat)/beat;
s=[phi/beat-sin(arg)/2/pil-(arg2-sin(arg2))/2/pi];
v=[1-cos(arg)/beat-(1-cos(arg2))/beat];
a=[2*pi/beat^2*sin(arg)2*pi/beat^2*sin(arg2)];
j=[4*pi^2/beat^3*cos(arg)4*pi^2/beat^3*cos(arg2)]; subplot(2,2,1);
plot(ph,s,´k´);
xlabel(´凸轮转角(度)´);
凸轮运动Matlab仿真-Matlab课程设计
Matlab 课程设计
李俊机自091
设计题目一:凸轮机构设计
已知轮廓为圆形的凸轮(圆的半径为100mm、偏心距为20mm),推杆与凸轮运动中心的距离20mm,滚子半径为10mm,请利用matlab仿真出凸轮推杆的运动轨迹和运动特性(速度,加速度),并利用动画演示出相关轨迹和运动特性。
%总程序代码
clc;
clf;
clear;
p=figure('position',[100 100 1200 600]);
for i=1:360
%画圆形凸轮
R=100; %圆形凸轮半径
A=0:0.006:2*pi;
B=i*pi/180;
e=20; %偏心距
a=e*cos(B);
b=e*sin(B);
x=R*cos(A)+a;
y=R*sin(A)+b;
subplot(1,2,1)
plot(x,y,'b','LineWidth',3);
%填充
fill(x,y,'y')
axis([-R-e,R+e,-R-e,R+e+100]);
set(gca,'Xlim',[-R-e,R+e])
set(gca,'Ylim',[-R-e,R+e+100])
axis equal;
axis manual;
axis off;
hold on;
plot(a,b,'og')
plot(e,0,'or')
plot(0,0,'or','LineWidth',3)
%画滚子
gcx=0; %滚子中心X坐标
r=10; %滚子半径
gcy=sqrt((R+r)^2-a^2)+b; %滚子中心Y坐标
gx=r*cos(A)+gcx; %滚子X坐标
gy=r*sin(A)+gcy; %滚子Y坐标
凸轮廓线设计MATLAB程序
凸轮轮廓及其综合
1. 凸轮机构从动件的位移
凸轮是把一种运动转化为另一种运动的装置。凸轮的廓线和从动件一起实现运动形式的转换。凸轮通常是为定轴转动,凸轮旋转运动可被转化成摆动、直线运动或是两者的结合。凸轮机构设计的内容之一是凸轮廓线的设计。
定义一个凸轮基圆r b 作为最小的圆周半径。从动件的运动方程如下:
L(ϕ)=r b +s(ϕ)
设凸轮的推程运动角和回程运动角均为β,从动件的运动规律均为正弦加速度运动规律,则有:
s(ϕ)=h(
βϕ-π
21
sin(2πϕ/β)) 0≤ϕ≤β
s(ϕ)=h -h(
ββϕ--π
21
sin(2π(ϕ-β/β)) β≤ϕ≤2β
s(ϕ)=0 2β≤ϕ≤2π
上式是从动件的位移,h 是从动件的最大位移,并且0≤β≤π。
如果假设凸轮的旋转速度ω=d ϕ/dt 是个常量,则速度υ、加速度a 和瞬时加速度j (加速度对时间求异)分别如下:
速度:
υ(ϕ)=
β
ωh
(1-cos(2πϕ/β)) 0≤ϕ≤β υ(ϕ)=-
β
ωh
(1-cos(2π(ϕ-β)/β) β≤ϕ≤2β υ(ϕ)=0 2β≤ϕ≤2π
加速度:
a(ϕ)=
2
22βπωh
sin(2πϕ/β)) 0≤ϕ≤β
a(ϕ)=-
2
22β
πωh
sin(2π(ϕ-β)/β) β≤ϕ≤2β
a(ϕ)=0 2β≤ϕ≤2π
瞬时加速度:
j(ϕ)=
3
324β
ωπh
cos(2πϕ/β)) 0≤ϕ≤β
j(ϕ)=-
3
324βωπh
cos(2π(ϕ-β)/β) β≤ϕ≤2β
j(ϕ)=0 2β≤ϕ≤2π
定义无量纲位移S=s/h 、无量纲速度V=υ/ωh 、无量纲加速度A=a/h ω3
matlab凸轮运动仿真课程设计
matlab凸轮运动仿真课程设计
一、课程目标
知识目标:
1. 学生能够理解凸轮运动的基本原理,掌握运用MATLAB进行凸轮运动仿真的方法。
2. 学生能够运用MATLAB软件构建凸轮运动模型,分析凸轮运动的特点及其在不同参数下的变化。
3. 学生能够掌握MATLAB中与凸轮运动相关的基本命令和函数,并运用这些工具进行数据分析和处理。
技能目标:
1. 学生能够运用MATLAB软件设计简单的凸轮运动仿真程序,具备实际操作能力。
2. 学生能够通过MATLAB仿真实验,分析凸轮运动中的关键参数,并对其进行优化。
3. 学生能够独立解决在凸轮运动仿真过程中遇到的技术问题,具备一定的故障排查和问题解决能力。
情感态度价值观目标:
1. 学生通过学习MATLAB凸轮运动仿真,培养对机械运动的兴趣和热情,增强对工程技术的认识。
2. 学生能够意识到理论知识与实际应用之间的联系,增强学以致用的意识。
3. 学生在团队协作中培养沟通与协作能力,学会尊重他人意见,共同解决问
题。
本课程针对高年级学生,在掌握一定MATLAB基础知识和凸轮运动原理的基础上,以提高学生的实际操作能力和创新能力为目标。课程注重理论与实践相结合,强调学生的主体地位,通过项目式教学,培养学生独立思考和解决问题的能力。通过本课程的学习,使学生能够更好地将所学知识应用于实际工程问题中,提高综合运用知识的能力。
二、教学内容
1. 凸轮运动原理回顾:简要复习凸轮机构的基本构成、运动特点及运动规律,重点回顾教材中关于凸轮运动分析的章节内容。
2. MATLAB软件基础:复习MATLAB的基本操作、编程语法和数据类型,为后续凸轮运动仿真打下基础。
基于MATLAB的凸轮设计
基于M A T L A B的凸轮设
计
Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998
中国地质大学(武汉)
1. 凸轮要求
设计一对心直动滚子推杆盘形凸轮机构,滚子半径r r =10mm ,凸轮以等角速度逆时针回转。凸轮转角δ=0~120 时,推杆等速上升20mm ;δ=120~180 时,推杆远休止;δ=180~270时,推杆等加速等减速下降20mm ;δ=270~360时,推杆近休止。要求推程的最大压力角α<=30,试选取合适的基圆半径,并绘制凸轮的廓线。问此凸轮是否有缺陷,应如何补救。
2.列出凸轮运动方程 {S =30
π
∗δ
V =30π
a =0
0
{S =20
V =0a =0
2/3π
S =−140+
320
π∗δ−
160π∗δ^2
V =
320π
−320π2
∗δ
a =−320/π^2
π
4π
{
S =360−480π∗δ+160π2
∗δ^2
V =−
480π
−
320
π2
∗δ
a =−320/π^2
5/4π
2π {S =0
V =0a =0
2/3π
3. 由方程写MATLAB 源程序
%1.已知参数 clear;
r0=50; %基圆半径 rr=10; %滚子半径 h=20; %行程
delta01=120;%推程运动角 delta02=60; % 远休角 delta03=90;%回程运动角 hd=pi/180; du=180/pi;
n1=delta01+delta02; n2=delta01+delta02+delta03;
%2凸轮曲线设计
n=360;
凸轮廓线设计MATLAB程序
凸轮轮廓及其综合1. 凸轮机构从动件的位移凸轮是把一种运动转化为另一种运动的装置。凸轮的廓线和从动件一起实现运动形式的转换。凸轮通常是为定轴转动,凸轮旋转运动可被转化成摆动、直线运动或是两者的结合。凸轮机构设计的内容之一是凸轮廓线的设计。定义一个凸轮基圆r b 作为最小的圆周半径。从动件的运动方程如下:L()=r b +s()ϕϕ设凸轮的推程运动角和回程运动角均为β,从动件的运动规律均为正弦加速度运动规律,则有:
s()=h(-sin(2π/β)) 0≤≤βϕβϕπ
21ϕϕs()=h -h(-sin(2π(-β/β)) β≤≤2βϕββϕ-π21ϕϕs()=0 2β≤≤2πϕϕ上式是从动件的位移,h 是从动件的最大位移,并且0≤β≤π。如果假设凸轮的旋转速度ω=d /dt 是个常量,则速度υ、加速度a 和瞬时加速度
ϕj (加速度对时间求异)分别如下:速度:
υ()=(1-cos(2π/β)) 0≤≤βϕβωh ϕϕυ()=-(1-cos(2π(-β)/β) β≤≤2βϕβωh ϕϕυ()=0 2β≤≤2πϕϕ加速度:a()=sin(2π/β)) 0≤≤βϕ222βπωh ϕϕa()=-sin(2π(-β)/β) β≤≤2β
ϕ222βπωh ϕϕ
a()=0 2β≤≤2πϕϕ瞬时加速度:
j()=
cos(2π/β)) 0≤≤βϕ3324βωπh ϕϕj()=-cos(2π(-β)/β) β≤≤2βϕ3324βωπh ϕϕj()=0 2β≤≤2πϕϕ定义无量纲位移S=s/h 、无量纲速度V=υ/ωh、无量纲加速度A=a/hω3和无量纲瞬时加速
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
disp ' ******** 滚子摆动从动件凸轮设计 ********'
disp '已知条件:'
disp ' 凸轮作顺时针方向转动,从动件做摆动'
disp ' 从动件在推程作等加速/等减速运动,在回程作等加速等减速运动'
rb =52;rt = 10;qm=15;ft = 60;fs = 10;fh = 60;alp = 35;a=140;l=122;q0=asin(rb/a)*180/pi;
fprintf (1,' 基圆半径 rb = %3.4f mm \n',rb)
fprintf (1,' 滚子半径 rt = %3.4f mm \n',rt)
fprintf (1,' 起始角度 q0= %3.4f mm \n',q0)
fprintf (1,' 最大摆动角度 qm = %3.4f mm \n',qm)
fprintf (1,' 推程运动角 ft = %3.4f 度 \n',ft)
fprintf (1,' 远休止角 fs = %3.4f 度 \n',fs)
fprintf (1,' 回程运动角 fh = %3.4f 度 \n',fh)
fprintf (1,' 推程许用压力角 alp = %3.4f 度 \n',alp)
hd= pi / 180;du = 180 / pi; %角度弧度互换
d1 = ft + fs;d2 = ft + fs + fh;
disp ' '
disp '计算过程和输出结果:'
disp ' 1- 计算凸轮理论轮廓的压力角和曲率半径'
disp ' 1-1 推程(等加速/等减速运动)'
s = zeros(ft);ds = zeros(ft);d2s = zeros(ft);vt=zeros(ft);st1=zeros(ft);at=zeros(ft);
at = zeros(ft);atd = zeros(ft);pt = zeros(ft);
for f = 1 : ft
if f <= ft / 2
s(f)=2*(qm/ft^2)*f^2;st1(f)=s(f);s = s(f); %推程加速方程式
ds(f)=(qm/ft^2)*f;vt(f)=ds(f);ds = ds(f);
d2s(f)=4*qm/ft;at(f)=d2s(f);d2s = d2s(f);
else
s(f)=qm-2*qm*(ft-f)^2/ft^2;st1(f)=s(f); s = s(f); %推程减速方程式
ds(f)=4*qm*(ft-f)/ft^2;vt(f)=ds(f);ds = ds(f);
d2s(f)=-4 *qm/ft^2;at(f)=d2s(f);d2s = d2s(f);
end
at(f)= atan((-l*(1-ds))/(a*sin((s+q0)*hd))-(-1)*cos((s+q0)*hd)/sin((s+q0)*hd));atd(f) = at(f) * du; %推程压力角的角度和弧度表达式
p1= -a*sin(f*hd)+l*sin((s+q0-f)*hd)*(ds-1);
p2= a*cos(f*hd)+l*cos((s+q0-f)*hd)*(ds-1);
p3=-a*cos(f*hd)+l*(ds-1)^2*cos((s+q0-f)*hd)+l*d2s*sin((s+q0-f)*hd);
p4=-a*sin(f*hd)-l*(ds-1)^2*sin((s+q0-f)*hd)+l*ds*cos((s+q0-f)*hd);
pt(f)= (p1^2+p2^2)^1.5/(p1*p4-p2*p3) ;p = pt(f);
end
atm = 0;
for f = 1 : ft
if atd(f) > atm
atm = atd(f);
end
end
fprintf (1,' 最大压力角 atm = %3.4f 度\n',atm)
for f = 1 : ft
if abs(atd(f) - atm) < 0.1
ftm = f;break
end
end
fprintf (1,' 对应的位置角 ftm = %3.4f 度\n',ftm)
if atm > alp
fprintf (1,' * 凸轮推程压力角超过许用值,需要增大基圆!\n')
end
ptn = rb ;ftn=0;
for f = 1 : ft
if pt(f) < ptn
ptn = pt(f);
end
end
fprintf (1,' 轮廓最小曲率半径 ptn = %3.4f mm\n',ptn)
for f = 1 : ft
if abs(pt(f) - ptn) < 0.1
ftn = f;break
end
end
fprintf (1,' 对应的位置角 ftn = %3.4f 度\n',ftn)
if ptn < rt + 5
fprintf (1,' * 凸轮推程轮廓曲率半径小于许用值,需要增大基圆或减小滚子!\n') end
disp ' 1-2 回程(等加速等减速运动)'
s = zeros(fh);ds = zeros(fh);d2s = zeros(fh);
ah = zeros(fh);ahd = zeros(fh);ph = zeros(fh);
for f = d1 : d2
k = f - d1;