📄 05-对心直动凸轮机构压力角的计算.m
字号:
% 对心直动凸轮机构压力角的计算(调用TLYLJ.M)
disp ' '
disp ' ******** 对心直动凸轮机构压力角的计算 ********'
disp ' '
disp ' ======== 已 知 条 件 ========'
disp ' '
rb = input(' 基圆半径(mm) rb = ');
h = input(' 推程升程(mm) h = ');
k=h/rb;hd=pi/180;
fai = input(' 推程运动角(度) fai = ');
fprintf (1,' 运动结构系数 k = %3.4f \n',k)
YDGL = input(' 运动规律类型:等速-"ZX";等加减速-"PW";余弦加速-"JX";正弦加速-"BX" == ');
disp ' '
if YDGL=='ZX'
disp ' ======== 等速运动(直线)规律 ========'
fm=0;
alfm=atan(k/(fai*hd));
elseif YDGL=='PW'
disp ' ======== 等加减速运动(抛物线)规律 ========'
if k<=2
fm=fai*hd/2;
alfm=atan(4*k/(fai*hd*(2+k)));
elseif k>2
fm=fai*hd/sqrt(2*k);
alfm=atan(sqrt(2*k)/(fai*hd));
end
elseif YDGL=='JX'
disp ' ======== 余弦加速度运动(简谐曲线)规律 ========'
fm=fai*hd*acos(k/(2+k))/pi;
alfm=atan(k*pi/(2*fai*hd*sqrt(1+k)));
elseif YDGL=='BX'
disp ' ======== 正弦加速度运动(摆线)规律 ========'
x=fsolve(@TLYLJ,fai*hd/2); % 使用fsolve求解渐开线函数方程
fm=x/pi*(fai*hd);
alfm=atan(k*(1-cos(2*pi*fm/(fai*hd)))/(fai*hd+k*fm-k*fai*hd*sin(2*pi*fm/(fai*hd))/(2*pi)));
end
fprintf (1,' 最大压力角 alfm = %3.4f 度 \n',alfm/hd)
fprintf (1,' 最大压力角的位置角 fm = %3.4f 度 \n',fm/hd)
% 压力角渐开线函数
function f=TLYLJ(x)
global k % 定义全局变量
f=tan(x)-x-pi/k;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -