2023年哈工大机械原理大作业凸轮机构第四题.doc
《2023年哈工大机械原理大作业凸轮机构第四题.doc》由会员分享,可在线阅读,更多相关《2023年哈工大机械原理大作业凸轮机构第四题.doc(27页珍藏版)》请在咨信网上搜索。
Harbin Institute of Technology 机械原理大作业二 课程名称: 机械原理 设计题目: 凸轮机构设计 姓 名: 李清蔚 学 号: 班 级: 1408103 指导教师: 林 琳 一.设计题目 设计直动从动件盘形凸轮机构,其原始参数见表1 表一: 凸轮机构原始参数 升程(mm) 升程运动角(º) 升程运动规律 升程许用压力角(º) 回程运动角(º) 回程运动规律 回程许用压力角(º) 远休止角 (º) 近休止角 (º) 40 90 等加等减速 30 50 4-5-6-7多项式 60 100 120 二.凸轮推杆运动规律 (1) 推程运动规律(等加速等减速运动) 推程 F0=90° ① 位移方程如下: ② 速度方程如下: ③ 加速度方程如下: (2) 回程运动规律(4-5-6-7多项式) 回程 ,F0=90°,Fs=100°,F0’=50° 其中回程过程旳位移方程,速度方程,加速度方程如下: 三.运动线图及凸轮线图 本题目采用Matlab编程,写出凸轮每一段旳运动方程,运用Matlab模拟将凸轮旳运动曲线以及凸轮形状体现出来。代码见汇报旳结尾。 1、程序流程框图 开始 输入凸轮推程回程旳运动方程 输入凸轮基圆偏距等基本参数 输出压力角、曲率半径图像 输出ds,dv,da图像 结束 输出凸轮旳构件形状 2、运动规律ds图像如下: 速度规律dv图像如下: 加速度da规律如下图: 3.凸轮旳基圆半径和偏距 以ds/dfψ-s图为基础,可分别作出三条限制线(推程许用压力角旳切界线Dtdt,回程许用压力角旳限制线Dt'dt',起始点压力角许用线B0d''),以这三条线可确定最小基圆半径及所对应旳偏距e,在其下方选择一合适点,即可满足压力角旳限制条件。 得图如下:得最小基圆对应旳坐标位置O点坐标大概为(13,-50) 经计算取偏距e=13mm,r0=51.67mm. 2.绘制理论轮廓线上旳压力角曲线和曲率半径曲线 针对凸轮转向及推杆偏置,令N1=1凸轮逆时针转;N2=1偏距为正。 压力角数学模型: 曲率半径数学模型: 其中: 曲率半径以及压力角旳图像如下图: 压力角图像: 曲率半径图像: 3.凸轮理论廓线和实际廓线 理论廓线数学模型: 凸轮实际廓线坐标方程式: 其中R0为确定旳滚子半径,令R0=15mm 运用Matlab程序写出凸轮旳理论廓线和实际廓线以及基圆、偏距圆旳曲线方程,并且进行模拟 ,可以得出如下凸轮图像: *附页 有关程序代码: ① 位移曲线 phi1=linspace(0,90/2/180*pi); %ÍÆ³Ì phi2=linspace(90/2/180*pi,90/180*pi); phi0=90/180*pi; h=40; s1=2*h*(phi1/phi0).^2; s2=h-2*h*(phi0-phi2).^2/(phi0).^2; plot(phi1,s1) hold on plot(phi2,s2) hold on phi3=linspace(deg2rad(90),deg2rad(190),1000); %Ô¶ÐÝ³Ì s3=h; plot(phi3,s3,'-b') hold on phi4=linspace(deg2rad(190),deg2rad(240)); %»Ø³Ì s4=h*(1-35*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^4+84*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^5-70*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^6+20*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^7); plot(phi4,s4) hold on phi5=linspace(deg2rad(240),deg2rad(360),1000); %½üÐÝ³Ì s5=0; plot(phi5,s5,'-b') axis([0,0+11/10*deg2rad(360),0,0+11/10*h]); grid on ylabel('位移/mm'); xlabel('凸轮转角 /rad'); ②速度曲线 phi0=deg2rad(90); phi1=linspace(0,deg2rad(90/2)); h=40;n=1; w=2*pi*n/60; v1=4*h*w/(deg2rad(90)).^2*phi1; phi2=linspace(deg2rad(90/2),deg2rad(90)); v2=4*h*w*(phi0-phi2)/(deg2rad(90)).^2; phi3=linspace(deg2rad(90),deg2rad(190),1000); v3=0; phi4=linspace(deg2rad(190),deg2rad(240)); v4=-h*w/deg2rad(50)*[140*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^3-420*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^4+420*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^5-140*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^6]; phi5=linspace(deg2rad(240),deg2rad(360),1000); v5=0; plot(phi1,v1) hold on plot(phi2,v2) hold on plot(phi3,v3,'-b') hold on plot(phi4,v4) hold on plot(phi5,v5,'-b') grid on ylabel('速度 /mm'); xlabel('凸轮转角/rad') ③加速度曲线 phi0=deg2rad(90); %ÍÆ³Ì phi1=linspace(0,deg2rad(90/2),10.^3); h=40; n=1;w=2*pi*n/60; a1=4*h*w.^2/(phi0).^2; phi2=linspace(deg2rad(90/2),deg2rad(90),10.^3); a2=-4*h*w.^2/(phi0).^2; phi3=linspace(deg2rad(90),deg2rad(190),1000); %Ô¶ÐÝ³Ì a3=0; phi4=linspace(deg2rad(190),deg2rad(240)); %»Ø³Ì a4=-(h*w.^2/(deg2rad(50)).^2)*[420*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^2-1680*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^3+2100*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^4-840*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^5]; phi5=linspace(deg2rad(240),deg2rad(360),1000); %½üÐÝ³Ì a5=0; phi6=[deg2rad(45),deg2rad(45)]; a6=[4*h*w.^2/(phi0).^2,-4*h*w.^2/(phi0).^2]; plot(phi1,a1,'-b') hold on plot(phi2,a2,'-b') hold on plot(phi3,a3,'-b') hold on plot(phi4,a4) hold on plot(phi5,a5) hold on plot(phi6,a6) grid on ylabel('加速度/mm'); xlabel('凸轮转角/rad'); 3、 曲线 %ds/f-s phi1=linspace(0,90/2/180*pi,1000); phi2=linspace(90/2/180*pi,90/180*pi,1000); phi0=90/180*pi; h=40; s01=2*h*(phi1/phi0).^2; s02=h-2*h*(phi0-phi2).^2/(phi0).^2; phi3=linspace(deg2rad(90),deg2rad(190),1000); s03=h; phi4=linspace(deg2rad(190),deg2rad(240)); s04=h*(1-35*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^4+84*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^5-70*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^6+20*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^7); phi5=linspace(deg2rad(240),deg2rad(360),1000) s05=0; %ds/f s1=4*h/(deg2rad(90))^2*phi1; s2=4*h*(phi0-phi2)/(deg2rad(90))^2; s3=0; s4=-h/deg2rad(50)*[140*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^3-420*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^4+420*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^5-140*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^6]; s5=0; x=[s1,s2,s3,s4,s5]; y=[s01,s02,s03,s04,s05]; plot(x,y) hold on %确定凸轮半径和偏距 k1=tan(pi/2-30/180*pi);k2=-tan(pi/2-60/180*pi); y1=-k1*x+y; y2=-k2*x+y; y11=min(y1); y22=min(y2); x1=linspace(-5,50,10000); x2=linspace(-95,55,10000); d1=k1*x1+y11; d2=k2*x2+y22; x3=linspace(0,45,500); x3=12; y3=-48; plot(line([0,x3],[0,y3])) plot(line([x3,x3],[0,y3])) plot(line([0,x3],[y3,y3])) plot(x1,d1) hold on plot(x2,d2) hold on grid on axis([-110,60,-100,50]) %选用O点 x4=13;y4=-50; plot(line([0,x4],[0,y4])) plot(line([x4,x4],[0,y4]),'k') plot(line([0,x4],[y4,y4]),'k') ⑤压力角曲线,曲率半径曲线 xo=13;yo=50;%题目2铰链O点取值 e=xo;r0=sqrt(xo^2+yo^2);%基圆半径与偏距取值 N1=1;N2=2; R0=15;%小滚子半径 n=2; omiga=2*pi*n/60; w=omiga; phi1=linspace(0,90/2/180*pi,1000); phi2=linspace(90/2/180*pi,90/180*pi,1000); phi3=linspace(deg2rad(90),deg2rad(190),1000); phi4=linspace(deg2rad(190),deg2rad(240),1000); phi5=linspace(deg2rad(240),deg2rad(360),1000); phi0=90/180*pi; h=40; %推程 s1=2*h*(phi1/phi0).^2+0*phi1; v1=4*h*w/(deg2rad(90)).^2*phi1+0*phi1; a1=4*h*w.^2/(phi0).^2+0*phi1; s2=h-2*h*(phi0-phi2).^2/(phi0).^2+phi2*0; v2=4*h*w*(phi0-phi2)/(deg2rad(90)).^2+phi2*0; a2=-4*h*w.^2/(phi0).^2+phi2*0; %远休程 s3=h+phi3*0; v3=0+phi3*0; a3=0+phi3*0; %回程 s4=h*(1-35*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^4+84*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^5-70*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^6+20*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^7)+phi4*0; v4=-h*w/deg2rad(50)*[140*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^3-420*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^4+420*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^5-140*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^6]+phi4*0; a4=-(h*w.^2/(deg2rad(50)).^2)*[420*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^2-1680*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^3+2100*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^4-840*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^5]+phi4*0; %近休程 s5=0+phi5*0; v5=0+phi5*0; a5=0+phi5*0; %所有运动过程 s=[s1,s2,s3,s4,s5]; v=[v1,v2,v3,v4,v5]; a=[a1,a2,a3,a4,a5]; phi=[phi1,phi2,phi3,phi4,phi5]; %初始推程s0,起点坐标x0,y0 %理论廓线 s0=sqrt(r0^2-e^2); x0=(s0+s).*sin(N1*phi)+N2*e.*cos(N1*phi); y0=(s0+s).*cos(N1*phi)-N2*e.*sin(N1*phi); LXphi=(v./omiga-N1*N2*e).*sin(N1*phi.*pi/180)+N1*(s0+s).*cos(N1*phi.*pi/180); LYphi=(v./omiga-N1*N2*e).*cos(N1*phi.*pi/180)-N1*(s0+s).*sin(N1*phi.*pi/180); %计算压力角 %推程压力角 r1=s0+s1; ang1=abs(atan((v1/omiga-N1*N2*e)./r1))*180/pi; r2=s0+s2; ang2=abs(atan((v2/omiga-N1*N2*e)./r2))*180/pi; %回程压力角 r4=s0+s4; ang4=abs(atan((v4/omiga-N1*N2*e)./r4))*180/pi; %远休程压力角 r3=(s0+h)*ones(1,size(s3,5)); ang3=abs(atan((-N1*N2*e)./r3))*180/pi+0*phi3; %近休程压力角 r5=s0*ones(1,size(s5,5)); ang5=abs(atan((-N1*N2*e)./r5))*180/pi+0*phi5; %凸轮旳曲率半径 LLXphi=(a./omiga^2.-s0-s).*sin(N1*phi.*pi/180)+(2*v./omiga-N1*N2*e).*N1.*cos(N1*phi.*pi/180); LLYphi=(a./omiga^2.-s0-s).*cos(N1*phi.*pi/180)-(2*v./omiga-N1*N2*e).*N1.*sin(N1*phi.*pi/180); A=(LXphi.^2+LYphi.^2).^1.5; B=-LXphi.*LLYphi+LYphi.*LLXphi; rou=A./B; M=-1; rou0=abs(rou+M*R0); plot(phi,rou0) axis([0,6,10,100]) xlabel('凸轮转角/rad') ylabel('长度/mm') hold on angle=[ang1,ang2,ang3,ang4,ang5]; plot(phi,angle) axis([0,6,0,100]) 4、 理论轮廓线和实际轮廓线 xo=13;yo=-50; %题目2铰链O点取值 e=xo;r0=sqrt(xo^2+yo^2); %基圆半径与偏距取值 N1=1;N2=1; R0=15; %小滚子半径 n=2; omiga=2*pi*n/60; w=omiga; phi1=linspace(0,90/2/180*pi,1000); phi2=linspace(90/2/180*pi,90/180*pi,1000); phi3=linspace(deg2rad(90),deg2rad(190),1000); phi4=linspace(deg2rad(190),deg2rad(240),1000); phi5=linspace(deg2rad(240),deg2rad(360),1000); phi0=90/180*pi; h=40; %推程 s1=2*h*(phi1/phi0).^2+0*phi1; v1=4*h*w/(deg2rad(90)).^2*phi1+0*phi1; a1=4*h*w.^2/(phi0).^2+0*phi1; s2=h-2*h*(phi0-phi2).^2/(phi0).^2+phi2*0; v2=4*h*w*(phi0-phi2)/(deg2rad(90)).^2+phi2*0; a2=-4*h*w.^2/(phi0).^2+phi2*0; %远休程 s3=h+phi3*0; v3=0+phi3*0; a3=0+phi3*0; %回程s4=h*(1-35*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^4+84*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^5-70*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^6+20*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^7)+phi4*0; v4=-h*w/deg2rad(50)*[140*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^3-420*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^4+420*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^5-140*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^6]+phi4*0; a4=-(h*w.^2/(deg2rad(50)).^2)*[420*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^2-1680*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^3+2100*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^4-840*((phi4-deg2rad(90)-deg2rad(100))/deg2rad(50)).^5]+phi4*0; %近休程 s5=0+phi5*0; v5=0+phi5*0; a5=0+phi5*0; %所有运动过程 s=[s1,s2,s3,s4,s5]; v=[v1,v2,v3,v4,v5]; a=[a1,a2,a3,a4,a5]; phi=[phi1,phi2,phi3,phi4,phi5]; %初始推程s0,起点坐标x0,y0 %理论廓线 s0=sqrt(r0^2-e^2); x0=(s0+s).*sin(N1*phi)+N2*e.*cos(N1*phi); y0=(s0+s).*cos(N1*phi)-N2*e.*sin(N1*phi); LX=(v./omiga-N1*N2*e).*sin(N1*phi)+N1*(s0+s).*cos(N1*phi); LY=(v./omiga-N1*N2*e).*cos(N1*phi)-N1*(s0+s).*sin(N1*phi); plot(x0,y0,'R','linewidth',2) axis equal hold on %实际廓线M=-1; if R0==0 Sx=x0;Sy=y0; else H=sqrt(LX.^2+LY.^2); Sx=x0-N1*M*R0*LY./H; Sy=y0+N1*M*R0*LX./H; end plot(Sx,Sy) hold on axis equal %画出基圆 r1=r0; k=0:0.005:2*pi; x2=r1*sin(k); y2=r1*cos(k); plot(x2,y2,'-.') axis equal xlabel('凸轮转角/rad') ylabel('长度/mm') %画出偏距圆 r2=e; k1=0:0.001:2*pi; x3=r2*sin(k1); y3=r2*cos(k1); plot(x3,y3,'k') r3=R0; k2=0:0.001:2*pi; x4=40.85+r3*sin(k2); y4=44.7+r3*cos(k2); plot(x4,y4,'k') r4=R0/5; k3=0:0.001:2*pi; x5=40.85+r4*sin(k3); y5=44.7+r4*cos(k3); plot(x5,y5,'k') hold on y6=44.7+50; plot(line([40.85,40.85],[44.7,y6]),'k') axis equal grid on legend('理论廓线','实际廓线','基圆','偏距圆');- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 哈工大 机械 原理 作业 凸轮 机构 第四
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【人****来】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【人****来】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【人****来】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【人****来】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文