编程实例

合集下载

数控车床编程实例 100

数控车床编程实例 100

数控车床编程实例例1.G01直线插补指令编程如下图所示安装装仿形工件请设置安装装仿形工件,各点坐标参考如下(X向余量4mm)坐标点X(直径)Z圆弧半径圆弧顺逆A00B300C30-48D64-58E84-73F84-1500-150FUNAC数控车编程如下:O9001N10G50 X100 Z10 (设立坐标系,定义对刀点的位置)N20G00 X16 Z2 M03 (移到倒角延长线,Z 轴2mm 处)N30G01 U10 W-5 G98 F120 (倒3×45°角)N40Z-48 (加工Φ26 外圆)N50U34 W-10 (切第一段锥)N60U20 Z-73 (切第二段锥)N70X90 (退刀)N80G00 X100 Z10 (回对刀点)N90M05 (主轴停)N100M30 (主程序结束并复位)////////////////////////////////////////////////////////////////////////////////////////华中数控车床编程如下:%9001N10G92 X100 Z10 (设立坐标系,定义对刀点的位置)N20G00 X16 Z2 M03 (移到倒角延长线,Z 轴2mm 处)N30G01 U10 W-5 F300 (倒3×45°角)N40Z-48 (加工Φ26 外圆)N50U34 W-10 (切第一段锥)N60U20 Z-73 (切第二段锥)N70X90 (退刀)N80G00 X100 Z10 (回对刀点)N90M05 (主轴停)N100M30 (主程序结束并复位)===============================================================例2.G02/G03圆弧插补指令编程,如下图安装装仿形工件请设置安装装仿形工件,各点坐标参考如下(X向余量3mm)坐标点X(直径)Z圆弧半径圆弧顺逆A00B60C30-24183D32-3182E32-40F45-4045-1000-100FUNAC数控车编程如下:O9002N10 G50 X40 Z5(设立坐标系,定义对刀点的位置)N20 M03 S400 (主轴以400r/min旋转)N25 G50 S1000(主轴最大限速1000r/min旋转)N30 G96 S80 (恒线速度有效,线速度为80m/min)N40 G00 X0 (刀到中心,转速升高,直到主轴到最大限速)N50 G01 Z0 G98 F60 (工进接触工件)N60 G03 U24 W-24 R15 (加工R15 圆弧段)N70 G02 X26 Z-31 R5 (加工R5 圆弧段)N80 G01 Z-40 (加工Φ26 外圆)N90 X40 Z5 (回对刀点)N100 G97 S300 (取消恒线速度功能,设定主轴按300r/min 旋转)N110 M30 (主轴停、主程序结束并复位)///////////////////////////////////////////////////////////////////////////////////////////////////////// //////////////////华中数控车床编程如下:%9002N10 G92 X40 Z5(设立坐标系,定义对刀点的位置)N20 M03 S400 (主轴以400r/min旋转)N40 G00 X0 (刀到中心,转速升高,直到主轴到最大限速)N50 G01 Z0 F60 (工进接触工件)N60 G03 U24 W-24 R15 (加工R15 圆弧段)N70 G02 X26 Z-31 R5 (加工R5 圆弧段)N80 G01 Z-40 (加工Φ26 外圆)N90 X40 Z5 (回对刀点)N100 M30 (主轴停、主程序结束并复位)====================================================================例3G32螺纹切削指令编程如下图格式:G32 X(U)__Z(W)__F__说明:X、Z:为绝对编程时,有效螺纹终点在工件坐标系中的坐标;U、W:为增量编程时,有效螺纹终点相对于螺纹切削起点的位移量;F:螺纹导程,即主轴每转一圈,刀具相对于工件的进给值;使用G32指令能加工圆柱螺纹、锥螺纹和端面螺纹。

JAVA编程实例大全及详解答案(50例)

JAVA编程实例大全及详解答案(50例)

JA V A编程实例大全及详解答案(50例)【程序1】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?//这是一个菲波拉契数列问题public class lianxi01 {public static void main(String[] args) {System.out.println("第1个月的兔子对数: 1");System.out.println("第2个月的兔子对数: 1");int f1 = 1, f2 = 1, f, M=24;for(int i=3; i<=M; i++) {f = f2;f2 = f1 + f2;f1 = f;System.out.println("第" + i +"个月的兔子对数: "+f2);}}}【程序2】题目:判断101-200之间有多少个素数,并输出所有素数。

程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。

public class lianxi02 {public static void main(String[] args) {int count = 0;for(int i=101; i<200; i+=2) {boolean b = false;for(int j=2; j<=Math.sqrt(i); j++){if(i % j == 0) { b = false; break; }else { b = true; }}if(b == true) {count ++;System.out.println(i );}}System.out.println( "素数个数是: " + count);}}【程序3】题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。

matlab编程实例100例

matlab编程实例100例

1-32是:图形应用篇33-66是:界面设计篇67-84是:图形处理篇85-100是:数值分析篇实例1:三角函数曲线(1)function shili01h0=figure('toolbar','none',...'position',[198 56 350 300],...'name','实例01');h1=axes('parent',h0,...'visible','off');x=-pi:0.05:pi;y=sin(x);plot(x,y);xlabel('自变量X');ylabel('函数值Y');title('SIN( )函数曲线');grid on实例2:三角函数曲线(2)function shili02h0=figure('toolbar','none',...'position',[200 150 450 350],...'name','实例02');x=-pi:0.05:pi;y=sin(x)+cos(x);plot(x,y,'-*r','linewidth',1);grid onxlabel('自变量X');ylabel('函数值Y');title('三角函数');实例3:图形的叠加function shili03h0=figure('toolbar','none',...'position',[200 150 450 350],...'name','实例03');x=-pi:0.05:pi;y1=sin(x);y2=cos(x);plot(x,y1,...'-*r',...x,y2,...'--og');grid onxlabel('自变量X');ylabel('函数值Y');title('三角函数');实例4:双y轴图形的绘制function shili04h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例04');x=0:900;a=1000;b=0.005;y1=2*x;y2=cos(b*x);[haxes,hline1,hline2]=plotyy(x,y1,x,y2,'semilogy','plot'); axes(haxes(1))ylabel('semilog plot');axes(haxes(2))ylabel('linear plot');实例5:单个轴窗口显示多个图形function shili05h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例05');t=0:pi/10:2*pi;[x,y]=meshgrid(t);subplot(2,2,1)plot(sin(t),cos(t))axis equalsubplot(2,2,2)z=sin(x)-cos(y);plot(t,z)axis([0 2*pi -2 2])subplot(2,2,3)h=sin(x)+cos(y);plot(t,h)axis([0 2*pi -2 2])subplot(2,2,4)g=(sin(x).^2)-(cos(y).^2);plot(t,g)axis([0 2*pi -1 1])实例6:图形标注function shili06h0=figure('toolbar','none',...'position',[200 150 450 400],...'name','实例06');t=0:pi/10:2*pi;h=plot(t,sin(t));xlabel('t=0到2\pi','fontsize',16);ylabel('sin(t)','fontsize',16);title('\it{从0to2\pi 的正弦曲线}','fontsize',16) x=get(h,'xdata');y=get(h,'ydata');imin=find(min(y)==y);imax=find(max(y)==y);text(x(imin),y(imin),...['\leftarrow最小值=',num2str(y(imin))],...'fontsize',16)text(x(imax),y(imax),...['\leftarrow最大值=',num2str(y(imax))],...'fontsize',16)实例7:条形图形function shili07h0=figure('toolbar','none',...'position',[200 150 450 350],...'name','实例07');tiao1=[562 548 224 545 41 445 745 512];tiao2=[47 48 57 58 54 52 65 48];t=0:7;bar(t,tiao1)xlabel('X轴');ylabel('TIAO1值');h1=gca;h2=axes('position',get(h1,'position'));plot(t,tiao2,'linewidth',3)set(h2,'yaxislocation','right','color','none','xticklabel',[]) 实例8:区域图形function shili08h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例08');x=91:95;profits1=[88 75 84 93 77];profits2=[51 64 54 56 68];profits3=[42 54 34 25 24];profits4=[26 38 18 15 4];area(x,profits1,'facecolor',[0.5 0.9 0.6],...'edgecolor','b',...'linewidth',3)hold onarea(x,profits2,'facecolor',[0.9 0.85 0.7],...'edgecolor','y',...'linewidth',3)hold onarea(x,profits3,'facecolor',[0.3 0.6 0.7],...'edgecolor','r',...'linewidth',3)hold onarea(x,profits4,'facecolor',[0.6 0.5 0.9],...'edgecolor','m',...'linewidth',3)hold offset(gca,'xtick',[91:95])set(gca,'layer','top')gtext('\leftarrow第一季度销量')gtext('\leftarrow第二季度销量')gtext('\leftarrow第三季度销量')gtext('\leftarrow第四季度销量')xlabel('年','fontsize',16);ylabel('销售量','fontsize',16);实例9:饼图的绘制function shili09h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例09');t=[54 21 35;68 54 35;45 25 12;48 68 45;68 54 69];x=sum(t);h=pie(x);textobjs=findobj(h,'type','text');str1=get(textobjs,{'string'});val1=get(textobjs,{'extent'});oldext=cat(1,val1{:});names={'商品一:';'商品二:';'商品三:'};str2=strcat(names,str1);set(textobjs,{'string'},str2)val2=get(textobjs,{'extent'});newext=cat(1,val2{:});offset=sign(oldext(:,1)).*(newext(:,3)-oldext(:,3))/2; pos=get(textobjs,{'position'});textpos=cat(1,pos{:});textpos(:,1)=textpos(:,1)+offset;set(textobjs,{'position'},num2cell(textpos,[3,2]))实例10:阶梯图function shili10h0=figure('toolbar','none',...'position',[200 150 450 400],...'name','实例10');a=0.01;b=0.5;t=0:10;f=exp(-a*t).*sin(b*t);stairs(t,f)hold onplot(t,f,':*')hold offglabel='函数e^{-(\alpha*t)}sin\beta*t的阶梯图'; gtext(glabel,'fontsize',16)xlabel('t=0:10','fontsize',16)axis([0 10 -1.2 1.2])实例11:枝干图function shili11h0=figure('toolbar','none',...'position',[200 150 450 350],...'name','实例11');x=0:pi/20:2*pi;y1=sin(x);y2=cos(x);h1=stem(x,y1+y2);hold onh2=plot(x,y1,'^r',x,y2,'*g');hold offh3=[h1(1);h2];legend(h3,'y1+y2','y1=sin(x)','y2=cos(x)') xlabel('自变量X');ylabel('函数值Y');title('正弦函数与余弦函数的线性组合');实例12:罗盘图function shili12h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例12');winddirection=[54 24 65 84256 12 235 62125 324 34 254];windpower=[2 5 5 36 8 12 76 14 10 8];rdirection=winddirection*pi/180;[x,y]=pol2cart(rdirection,windpower); compass(x,y);desc={'风向和风力','气象台','10月1日0:00到','10月1日12:00'};gtext(desc)实例13:轮廓图function shili13h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例13');[th,r]=meshgrid((0:10:360)*pi/180,0:0.05:1); [x,y]=pol2cart(th,r);z=x+i*y;f=(z.^4-1).^(0.25);contour(x,y,abs(f),20)axis equalxlabel('实部','fontsize',16);ylabel('虚部','fontsize',16);h=polar([0 2*pi],[0 1]);delete(h)hold oncontour(x,y,abs(f),20)实例14:交互式图形function shili14h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例14');axis([0 10 0 10]);hold onx=[];y=[];n=0;disp('单击鼠标左键点取需要的点'); disp('单击鼠标右键点取最后一个点'); but=1;while but==1[xi,yi,but]=ginput(1);plot(xi,yi,'bo')n=n+1;disp('单击鼠标左键点取下一个点');x(n,1)=xi;y(n,1)=yi;endt=1:n;ts=1:0.1:n;xs=spline(t,x,ts);ys=spline(t,y,ts);plot(xs,ys,'r-');hold off实例14:交互式图形function shili14h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例14');axis([0 10 0 10]);hold onx=[];y=[];n=0;disp('单击鼠标左键点取需要的点'); disp('单击鼠标右键点取最后一个点'); but=1;while but==1[xi,yi,but]=ginput(1);plot(xi,yi,'bo')n=n+1;disp('单击鼠标左键点取下一个点');x(n,1)=xi;y(n,1)=yi;endt=1:n;ts=1:0.1:n;xs=spline(t,x,ts);ys=spline(t,y,ts);plot(xs,ys,'r-');hold off实例15:变换的傅立叶函数曲线function shili15h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例15');axis equalm=moviein(20,gcf);set(gca,'nextplot','replacechildren') h=uicontrol('style','slider','position',...[100 10 500 20],'min',1,'max',20) for j=1:20plot(fft(eye(j+16)))set(h,'value',j)m(:,j)=getframe(gcf);endclf;axes('position',[0 0 1 1]);movie(m,30)实例16:劳伦兹非线形方程的无序活动function shili15h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例15');axis equalm=moviein(20,gcf);set(gca,'nextplot','replacechildren') h=uicontrol('style','slider','position',...[100 10 500 20],'min',1,'max',20) for j=1:20plot(fft(eye(j+16)))set(h,'value',j)m(:,j)=getframe(gcf);endclf;axes('position',[0 0 1 1]);movie(m,30)实例17:填充图function shili17h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例17');t=(1:2:15)*pi/8;x=sin(t);y=cos(t);fill(x,y,'r')axis square offtext(0,0,'STOP',...'color',[1 1 1],...'fontsize',50,...'horizontalalignment','center') 例18:条形图和阶梯形图function shili18h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例18');subplot(2,2,1)x=-3:0.2:3;y=exp(-x.*x);bar(x,y)title('2-D Bar Chart')subplot(2,2,2)x=-3:0.2:3;y=exp(-x.*x);bar3(x,y,'r')title('3-D Bar Chart')subplot(2,2,3)x=-3:0.2:3;y=exp(-x.*x);stairs(x,y)title('Stair Chart')subplot(2,2,4)x=-3:0.2:3;y=exp(-x.*x);barh(x,y)title('Horizontal Bar Chart')实例19:三维曲线图function shili19h0=figure('toolbar','none',...'position',[200 150 450 400],...'name','实例19');subplot(2,1,1)x=linspace(0,2*pi);y1=sin(x);y2=cos(x);y3=sin(x)+cos(x);z1=zeros(size(x));z2=0.5*z1;z3=z1;plot3(x,y1,z1,x,y2,z2,x,y3,z3)grid onxlabel('X轴');ylabel('Y轴');zlabel('Z轴');title('Figure1:3-D Plot')subplot(2,1,2)x=linspace(0,2*pi);y1=sin(x);y2=cos(x);y3=sin(x)+cos(x);z1=zeros(size(x));z2=0.5*z1;z3=z1;plot3(x,z1,y1,x,z2,y2,x,z3,y3)grid onxlabel('X轴');ylabel('Y轴');zlabel('Z轴');title('Figure2:3-D Plot')实例20:图形的隐藏属性function shili20h0=figure('toolbar','none',...'position',[200 150 450 300],...'name','实例20');subplot(1,2,1)[x,y,z]=sphere(10);mesh(x,y,z)axis offtitle('Figure1:Opaque')hidden onsubplot(1,2,2)[x,y,z]=sphere(10);mesh(x,y,z)axis offtitle('Figure2:Transparent') hidden off实例21PEAKS函数曲线function shili21h0=figure('toolbar','none',...'position',[200 100 450 450],...'name','实例21');[x,y,z]=peaks(30);subplot(2,1,1)x=x(1,:);y=y(:,1);i=find(y>0.8&y<1.2);j=find(x>-0.6&x<0.5);z(i,j)=nan*z(i,j);surfc(x,y,z)xlabel('X轴');ylabel('Y轴');zlabel('Z轴');title('Figure1:surfc函数形成的曲面') subplot(2,1,2)x=x(1,:);y=y(:,1);i=find(y>0.8&y<1.2);j=find(x>-0.6&x<0.5);z(i,j)=nan*z(i,j);surfl(x,y,z)xlabel('X轴');ylabel('Y轴');zlabel('Z轴');title('Figure2:surfl函数形成的曲面')实例22:片状图function shili22h0=figure('toolbar','none',...'position',[200 150 550 350],...'name','实例22');subplot(1,2,1)x=rand(1,20);y=rand(1,20);z=peaks(x,y*pi);t=delaunay(x,y);trimesh(t,x,y,z)hidden offtitle('Figure1:Triangular Surface Plot'); subplot(1,2,2)x=rand(1,20);y=rand(1,20);z=peaks(x,y*pi);t=delaunay(x,y);trisurf(t,x,y,z)title('Figure1:Triangular Surface Plot'); 实例23:视角的调整function shili23h0=figure('toolbar','none',...'position',[200 150 450 350],...'name','实例23');x=-5:0.5:5;[x,y]=meshgrid(x);r=sqrt(x.^2+y.^2)+eps;z=sin(r)./r;subplot(2,2,1)surf(x,y,z)xlabel('X-axis')ylabel('Y-axis')zlabel('Z-axis')title('Figure1')view(-37.5,30)subplot(2,2,2)surf(x,y,z)xlabel('X-axis')ylabel('Y-axis')zlabel('Z-axis')title('Figure2')view(-37.5+90,30)subplot(2,2,3)surf(x,y,z)xlabel('X-axis')ylabel('Y-axis')zlabel('Z-axis')title('Figure3')view(-37.5,60)subplot(2,2,4)surf(x,y,z)xlabel('X-axis')ylabel('Y-axis')zlabel('Z-axis')title('Figure4')view(180,0)实例24:向量场的绘制function shili24h0=figure('toolbar','none',...'position',[200 150 450 350],...'name','实例24');subplot(2,2,1)z=peaks;ribbon(z)title('Figure1')subplot(2,2,2)[x,y,z]=peaks(15);[dx,dy]=gradient(z,0.5,0.5); contour(x,y,z,10)hold onquiver(x,y,dx,dy)hold offtitle('Figure2')subplot(2,2,3)[x,y,z]=peaks(15);[nx,ny,nz]=surfnorm(x,y,z);surf(x,y,z)hold onquiver3(x,y,z,nx,ny,nz)hold offtitle('Figure3')subplot(2,2,4)x=rand(3,5);y=rand(3,5);z=rand(3,5);c=rand(3,5);fill3(x,y,z,c)grid ontitle('Figure4')实例25:灯光定位function shili25h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例25');vert=[1 1 1;1 2 1;2 2 1;2 1 1;1 1 2;12 2;2 2 2;2 1 2];fac=[1 2 3 4;2 6 7 3;4 3 7 8;15 8 4;1 2 6 5;5 6 7 8];grid offsphere(36)h=findobj('type','surface');set(h,'facelighting','phong',...'facecolor',...'interp',...'edgecolor',[0.4 0.4 0.4],...'backfacelighting',...'lit')hold onpatch('faces',fac,'vertices',vert,...'facecolor','y');light('position',[1 3 2]);light('position',[-3 -1 3]); material shinyaxis vis3d offhold off实例26:柱状图function shili26h0=figure('toolbar','none',...'position',[200 50 450 450],...'name','实例26');subplot(2,1,1)x=[5 2 18 7 39 8 65 5 54 3 2];bar(x)xlabel('X轴');ylabel('Y轴');title('第一子图');subplot(2,1,2)y=[5 2 18 7 39 8 65 5 54 3 2];barh(y)xlabel('X轴');ylabel('Y轴');title('第二子图');实例27:设置照明方式function shili27h0=figure('toolbar','none',...'position',[200 150 450 350],...'name','实例27');subplot(2,2,1)sphereshading flatcamlight leftcamlight rightlighting flatcolorbaraxis offtitle('Figure1')subplot(2,2,2)sphereshading flatcamlight leftcamlight rightlighting gouraudcolorbaraxis offtitle('Figure2')subplot(2,2,3)sphereshading interpcamlight rightcamlight leftlighting phongcolorbaraxis offtitle('Figure3')subplot(2,2,4)sphereshading flatcamlight leftcamlight rightlighting nonecolorbaraxis offtitle('Figure4')实例28:羽状图function shili28h0=figure('toolbar','none',...'position',[200 150 450 350],...'name','实例28');subplot(2,1,1)alpha=90:-10:0;r=ones(size(alpha));m=alpha*pi/180;n=r*10;[u,v]=pol2cart(m,n);feather(u,v)title('羽状图')axis([0 20 0 10])subplot(2,1,2)t=0:0.5:10;x=0.05+i;y=exp(-x*t);feather(y)title('复数矩阵的羽状图')实例29:立体透视(1)function shili29h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例29');[x,y,z]=meshgrid(-2:0.1:2,...-2:0.1:2,...-2:0.1:2);v=x.*exp(-x.^2-y.^2-z.^2);grid onfor i=-2:0.5:2;h1=surf(linspace(-2,2,20),...linspace(-2,2,20),...zeros(20)+i);rotate(h1,[1 -1 1],30)dx=get(h1,'xdata');dy=get(h1,'ydata');dz=get(h1,'zdata');delete(h1)slice(x,y,z,v,[-2 2],2,-2)hold onslice(x,y,z,v,dx,dy,dz)hold offaxis tightview(-5,10)drawnowend实例30:立体透视(2)function shili30h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例30');[x,y,z]=meshgrid(-2:0.1:2,...-2:0.1:2,...-2:0.1:2);v=x.*exp(-x.^2-y.^2-z.^2); [dx,dy,dz]=cylinder;slice(x,y,z,v,[-2 2],2,-2)for i=-2:0.2:2h=surface(dx+i,dy,dz);rotate(h,[1 0 0],90)xp=get(h,'xdata');yp=get(h,'ydata');zp=get(h,'zdata');delete(h)hold onhs=slice(x,y,z,v,xp,yp,zp);axis tightxlim([-3 3])view(-10,35)drawnowdelete(hs)hold offend实例31:表面图形function shili31h0=figure('toolbar','none',...'position',[200 150 550 250],...'name','实例31');subplot(1,2,1)x=rand(100,1)*16-8;y=rand(100,1)*16-8;r=sqrt(x.^2+y.^2)+eps;z=sin(r)./r;xlin=linspace(min(x),max(x),33); ylin=linspace(min(y),max(y),33); [X,Y]=meshgrid(xlin,ylin);Z=griddata(x,y,z,X,Y,'cubic'); mesh(X,Y,Z)axis tighthold onplot3(x,y,z,'.','Markersize',20)subplot(1,2,2)k=5;n=2^k-1;theta=pi*(-n:2:n)/n;phi=(pi/2)*(-n:2:n)'/n;X=cos(phi)*cos(theta);Y=cos(phi)*sin(theta);Z=sin(phi)*ones(size(theta));colormap([0 0 0;1 1 1])C=hadamard(2^k);surf(X,Y,Z,C)axis square实例32:沿曲线移动的小球h0=figure('toolbar','none',...'position',[198 56 408 468],...'name','实例32');h1=axes('parent',h0,...'position',[0.15 0.45 0.7 0.5],...'visible','on');t=0:pi/24:4*pi;y=sin(t);plot(t,y,'b')n=length(t);h=line('color',[0 0.5 0.5],...'linestyle','.',...'markersize',25,...'erasemode','xor');k1=uicontrol('parent',h0,...'style','pushbutton',...'position',[80 100 50 30],...'string','开始',...'callback',[...'i=1;',...'k=1;,',...'m=0;,',...'while 1,',...'if k==0,',...'break,',...'end,',...'if k~=0,',...'set(h,''xdata'',t(i),''ydata'',y(i)),',...'drawnow;,',...'i=i+1;,',...'if i>n,',...'m=m+1;,',...'i=1;,',...'end,',...'end,',...'end']);k2=uicontrol('parent',h0,...'style','pushbutton',...'position',[180 100 50 30],...'string','停止',...'callback',[...'k=0;,',...'set(e1,''string'',m),',...'p=get(h,''xdata'');,',...'q=get(h,''ydata'');,',...'set(e2,''string'',p);,',...'set(e3,''string'',q)']); k3=uicontrol('parent',h0,...'style','pushbutton',...'position',[280 100 50 30],...'string','关闭',...'callback','close');e1=uicontrol('parent',h0,...'style','edit',...'position',[60 30 60 20]);t1=uicontrol('parent',h0,...'style','text',...'string','循环次数',...'position',[60 50 60 20]);e2=uicontrol('parent',h0,...'style','edit',...'position',[180 30 50 20]); t2=uicontrol('parent',h0,...'style','text',...'string','终点的X坐标值',...'position',[155 50 100 20]); e3=uicontrol('parent',h0,...'style','edit',...'position',[300 30 50 20]); t3=uicontrol('parent',h0,...'style','text',...'string','终点的Y坐标值',...'position',[275 50 100 20]);实例33:曲线转换按钮h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例33');x=0:0.5:2*pi;y=sin(x);h=plot(x,y);grid onhuidiao=[...'if i==1,',...'i=0;,',...'y=cos(x);,',...'delete(h),',...'set(hm,''string'',''正弦函数''),',...'h=plot(x,y);,',...'grid on,',...'else if i==0,',...'i=1;,',...'y=sin(x);,',...'set(hm,''string'',''余弦函数''),',...'delete(h),',...'h=plot(x,y);,',...'grid on,',...'end,',...'end'];hm=uicontrol(gcf,'style','pushbutton',...'string','余弦函数',...'callback',huidiao);i=1;set(hm,'position',[250 20 60 20]);set(gca,'position',[0.2 0.2 0.6 0.6])title('按钮的使用')hold on实例34:栅格控制按钮h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例34');x=0:0.5:2*pi;y=sin(x);plot(x,y)huidiao1=[...'set(h_toggle2,''value'',0),',...'grid on,',...];huidiao2=[...'set(h_toggle1,''value'',0),',...'grid off,',...];h_toggle1=uicontrol(gcf,'style','togglebutton',...'string','grid on',...'value',0,...'position',[20 45 50 20],...'callback',huidiao1);h_toggle2=uicontrol(gcf,'style','togglebutton',...'string','grid off',...'value',0,...'position',[20 20 50 20],...'callback',huidiao2);set(gca,'position',[0.2 0.2 0.6 0.6])title('开关按钮的使用')实例35:编辑框的使用h0=figure('toolbar','none',...'position',[200 150 350 250],...'name','实例35');f='Please input the letter';huidiao1=[...'g=upper(f);,',...'set(h2_edit,''string'',g),',...];huidiao2=[...'g=lower(f);,',...'set(h2_edit,''string'',g),',...];h1_edit=uicontrol(gcf,'style','edit',...'position',[100 200 100 50],...'HorizontalAlignment','left',...'string','Please input the letter',...'callback','f=get(h1_edit,''string'');',...'background','w',...'max',5,...'min',1);h2_edit=uicontrol(gcf,'style','edit',...'HorizontalAlignment','left',...'position',[100 100 100 50],...'max',5,...'min',1);h1_button=uicontrol(gcf,'style','pushbutton',...'string','小写变大写',...'position',[100 45 100 20],...'callback',huidiao1);h2_button=uicontrol(gcf,'style','pushbutton',...'string','大写变小写',...'position',[100 20 100 20],...'callback',huidiao2);实例36:弹出式菜单h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例36');x=0:0.5:2*pi;y=sin(x);h=plot(x,y);grid onhm=uicontrol(gcf,'style','popupmenu',...'string',...'sin(x)|cos(x)|sin(x)+cos(x)|exp(-sin(x))',...'position',[250 20 50 20]);set(hm,'value',1)huidiao=[...'v=get(hm,''value'');,',...'switch v,',...'case 1,',...'delete(h),',...'y=sin(x);,',...'h=plot(x,y);,',...'grid on,',...'case 2,',...'delete(h),',...'y=cos(x);,',...'h=plot(x,y);,',...'grid on,',...'case 3,',...'delete(h),',...'y=sin(x)+cos(x);,',...'h=plot(x,y);,',...'grid on,',...'case 4,',...'y=exp(-sin(x));,',...'h=plot(x,y);,',...'grid on,',...'end'];set(hm,'callback',huidiao)set(gca,'position',[0.2 0.2 0.6 0.6])title('弹出式菜单的使用')实例37:滑标的使用h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例37');[x,y]=meshgrid(-8:0.5:8);r=sqrt(x.^2+y.^2)+eps;z=sin(r)./r;h0=mesh(x,y,z);h1=axes('position',...[0.2 0.2 0.5 0.5],...'visible','off');htext=uicontrol(gcf,...'units','points',...'position',[20 30 45 15],...'string','brightness',...'style','text');hslider=uicontrol(gcf,...'units','points',...'position',[10 10 300 15],...'min',-1,...'max',1,...'style','slider',...'callback',...'brighten(get(hslider,''value''))');实例38:多选菜单h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例38');[x,y]=meshgrid(-8:0.5:8);r=sqrt(x.^2+y.^2)+eps;z=sin(r)./r;h0=mesh(x,y,z);hlist=uicontrol(gcf,'style','listbox',...'string','default|spring|summer|autumn|winter',...'max',5,...'min',1,...'position',[20 20 80 100],...'callback',[...'k=get(hlist,''value'');,',...'switch k,',...'case 1,',...'colormap default,',...'case 2,',...'colormap spring,',...'case 3,',...'colormap summer,',...'case 4,',...'colormap autumn,',...'case 5,',...'colormap winter,',...'end']);实例39:菜单控制的使用h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例39');x=0:0.5:2*pi;y=cos(x);h=plot(x,y);grid onset(gcf,'toolbar','none')hm=uimenu('label','example');huidiao1=[...'set(hm_gridon,''checked'',''on''),',...'set(hm_gridoff,''checked'',''off''),',...'grid on'];huidiao2=[...'set(hm_gridoff,''checked'',''on''),',...'set(hm_gridon,''checked'',''off''),',...'grid off'];hm_gridon=uimenu(hm,'label','grid on',...'checked','on',...'callback',huidiao1);hm_gridoff=uimenu(hm,'label','grid off',...'checked','off',...'callback',huidiao2);实例40:UIMENU菜单的应用。

数控车床编程实例大全

数控车床编程实例大全

数控车床编程实例大全数控车床编程是数控加工中至关重要的环节,通过合理的编程,可以实现各种复杂形状零件的高精度加工。

以下为您呈现一些常见的数控车床编程实例,帮助您更好地理解和掌握这一技术。

一、简单轴类零件加工编程假设我们要加工一根直径为 50mm,长度为 100mm 的圆柱形轴,材料为 45 号钢。

程序如下:```O0001 (程序名)N10 G50 X150、 Z150、(设定坐标系)N20 G99 (每转进给)N30 M03 S800 (主轴正转,转速 800r/min)N40 T0101 (选择 1 号刀具,1 号刀补)N50 G00 X52、 Z2、(快速定位到加工起点)N60 G01 Z-100、 F02 (直线切削到轴的长度方向)N70 G00 X55、(快速退刀)N80 Z2、(快速退回到起点)N90 M05 (主轴停止)N100 M30 (程序结束)```在这个程序中,G50 用于设定坐标系,G99 表示每转进给,M03 启动主轴正转,S800 设定转速,T0101 选择刀具和刀补,G00 是快速定位指令,G01 为直线插补指令,F02 是进给速度。

二、阶梯轴加工编程现在要加工一个阶梯轴,大端直径 60mm,小端直径 40mm,长度分别为 80mm 和 50mm。

程序如下:```O0002N10 G50 X150、 Z150、N20 G99N30 M03 S1000N40 T0101N50 G00 X62、 Z2、N60 G01 Z-80、 F02N80 Z-130、N90 G00 X100、N100 Z100、N110 M05N120 M30```此程序中,通过逐步改变刀具的 X 坐标值,实现了阶梯轴的加工。

三、螺纹轴加工编程以加工一个 M30×2 的螺纹轴为例,长度为 100mm。

```O0003N10 G50 X150、 Z150、N20 G99N30 M03 S600N40 T0101N50 G00 X32、 Z2、N60 G92 X29、 Z-100、 F2、(螺纹切削循环)N80 X282N90 X2805N100 G00 X100、N110 Z100、N120 M05N130 M30```在这个程序中,G92 是螺纹切削循环指令,通过多次改变 X 坐标值来逐步切削螺纹。

数控车床编程实例详解(30个例子)

数控车床编程实例详解(30个例子)

车床编程实例一半径编程图3.1.1 半径编程%3110 (主程序程序名)N1 G92 X16 Z1 (设立坐标系,定义对刀点的位置)N2 G37 G00 Z0 M03 (移到子程序起点处、主轴正转)N3 M98 P0003 L6 (调用子程序,并循环6 次)N4 G00 X16 Z1 (返回对刀点)N5 G36 (取消半径编程)N6 M05 (主轴停)N7 M30 (主程序结束并复位)%0003 (子程序名)N1 G01 U-12 F100 (进刀到切削起点处,注意留下后面切削的余量)N2 G03 U7.385 W-4.923 R8(加工R8 园弧段)N3U3.215 W-39.877 R60 (加工R60 园弧段)N4 G02 U1.4 W-28.636 R40(加工切R40 园弧段)N5 G00 U4 (离开已加工表面)N6 W73.436 (回到循环起点Z 轴处)N7 G01 U-4.8 F100 (调整每次循环的切削量)N8 M99 (子程序结束,并回到主程序)1直线插补指令编程%3305车床编程实例二图3.3.5 G01 编程实例N1 G92 X100 Z10 (设立坐标系,定义对刀点的位置)N2 G00 X16 Z2 M03 (移到倒角延长线,Z 轴2mm 处)N3 G01 U10 W-5 F300 (倒3×45°角)N4 Z-48 (加工Φ26 外圆)N5 U34 W-10 (切第一段锥)N6 U20 Z-73 (切第二段锥)N7 X90 (退刀)N8 G00 X100 Z10 (回对刀点)N9 M05 (主轴停)N10 M30 (主程序结束并复位)圆弧插补指令编程车床编程实例三%3308N1 G92 X40 Z5 (设立坐标系,定义对刀点的位置)N2 M03 S400 (主轴以400r/min 旋转)N3 G00 X0 (到达工件中心)N4 G01 Z0 F60 (工进接触工件毛坯)N5 G03 U24 W-24 R15 (加工R15 圆弧段)N6 G02 X26 Z-31 R5 (加工R5 圆弧段)N7 G01 Z-40 (加工Φ26 外圆)N8 X40 Z5 (回对刀点)N9 M30 (主轴停、主程序结束并复位图3.3.8 G02/G03 编程实例2倒角指令编程%3310车床编程实例四图3.3.10.1 倒角编程实例N10 G92 X70 Z10 (设立坐标系,定义对刀点的位置)N20 G00 U-70 W-10 (从编程规划起点,移到工件前端面中心处)N30 G01 U26 C3 F100 (倒3×45°直角)N40 W-22 R3 (倒R3 圆角)N50 U39 W-14 C3 (倒边长为3 等腰直角)N60 W-34 (加工Φ65 外圆)N70 G00 U5 W80 (回到编程规划起点)N80 M30 (主轴停、主程序结束并复位)倒角指令编程%3310车床编程实例五N10 G92 X70 Z10 (设立坐标系,定义对刀点的位置)N20 G00 X0 Z4 (到工件中心)N30 G01 W-4 F100 (工进接触工件)N40 X26 C3 (倒3×45°的直角)N50 Z-21 (加工Φ26 外圆)N60 G02 U30 W-15 R15 RL=3(加工R15 圆弧,并倒边长为4 的直角)N70 G01 Z-70 (加工Φ56 外圆)N80 G00 U10 (退刀,离开工件)N90 X70 Z10 (返回程序起点位置)M30 (主轴停、主程序结束并复位)图3.3.10.2 倒角编程实例3车床编程实例六圆柱螺纹编程螺纹导程为1.5mm,δ=1.5mm,δ'=1mm ,每次吃刀量(直径值)分别为0.8mm、0.6 mm 、0.4mm、0.16mm图3.3.12 螺纹编程实例%3312N1 G92 X50 Z120 (设立坐标系,定义对刀点的位置)N2 M03 S300 (主轴以300r/min 旋转)N3 G00 X29.2 Z101.5 (到螺纹起点,升速段1.5mm,吃刀深0.8mm)N4 G32 Z19 F1.5 (切削螺纹到螺纹切削终点,降速段1mm)N5 G00 X40 (X 轴方向快退)N6 Z101.5 (Z 轴方向快退到螺纹起点处)N7 X28.6 (X 轴方向快进到螺纹起点处,吃刀深0.6mm)N8 G32 Z19 F1.5 (切削螺纹到螺纹切削终点)N9 G00 X40 (X 轴方向快退)N10 Z101.5 (Z 轴方向快退到螺纹起点处)N11 X28.2 (X 轴方向快进到螺纹起点处,吃刀深0.4mm)N12 G32 Z19 F1.5 (切削螺纹到螺纹切削终点)N13 G00 X40 (X 轴方向快退)N14 Z101.5 (Z 轴方向快退到螺纹起点处)N15 U-11.96 (X 轴方向快进到螺纹起点处,吃刀深0.16mm)N16 G32 W-82.5 F1.5 (切削螺纹到螺纹切削终点)N17 G00 X40 (X 轴方向快退)N18 X50 Z120 (回对刀点)N19 M05 (主轴停)N20 M30 (主程序结束并复位)4恒线速度功能编程%3314车床编程实例七图3.3.14 恒线速度编程实例N1 G92 X40 Z5 (设立坐标系,定义对刀点的位置)N2 M03 S400 (主轴以400r/min 旋转)N3 G96 S80 (恒线速度有效,线速度为80m/min)N4 G00 X0 (刀到中心,转速升高,直到主轴到最大限速)N5 G01 Z0 F60 (工进接触工件)N6 G03 U24 W-24 R15 (加工R15 圆弧段)N7 G02 X26 Z-31 R5 (加工R5 圆弧段)N8 G01 Z-40 (加工Φ26 外圆)N9 X40 Z5 (回对刀点)N10 G97 S300 (取消恒线速度功能,设定主轴按300r/min 旋转)N11 M30 (主轴停、主程序结束并复位)车床编程实例八%3317M03 S400 (主轴以400r/min 旋转)G91 G80 X-10 Z-33 I-5.5 F100(加工第一次循环,吃刀深3mm)X-13 Z-33 I-5.5(加工第二次循环,吃刀深3mm)X-16 Z-33 I-5.5(加工第三次循环,吃刀深3mm)M30 (主轴停、主程序结束并复位)图3.3.17 G80 切削循环编程实例5车床编程实例九G81 指令编程(点画线代表毛坯)图3.3.20 G81 切削循环编程实例%3320N1 G54 G90 G00 X60 Z45 M03 (选定坐标系,主轴正转,到循环起点)N2 G81 X25 Z31.5 K-3.5 F100 (加工第一次循环,吃刀深2mm)N3 X25 Z29.5 K-3.5 (每次吃刀均为2mm,)N4 X25 Z27.5 K-3.5 (每次切削起点位,距工件外圆面5mm,故K 值为-3.5)N5 X25 Z25.5 K-3.5 (加工第四次循环,吃刀深2mm)N6 M05 (主轴停)N7 M30 (主程序结束并复位车床编程实例十G82 指令编程(毛坯外形已加工完成)%3323N1 G55 G00 X35 Z104(选定坐标系G55,到循环起点)N2 M03 S300 (主轴以300r/min 正转)N3 G82 X29.2 Z18.5 C2 P180 F3(第一次循环切螺纹,切深0.8mm)N4 X28.6 Z18.5 C2 P180 F3(第二次循环切螺纹,切深0.4mm)N5 X28.2 Z18.5 C2 P180 F3(第三次循环切螺纹,切深0.4mm)N6 X28.04 Z18.5 C2 P180 F3(第四次循环切螺纹,切深0.16mm)N7 M30 (主轴停、主程序结束并复位)图3.3.23 G82 切削循环编程实例6车床编程实例十一外径粗加工复合循环编制图3.3.27 所示零件的加工程序:要求循环起始点在A(46,3),切削深度为1.5mm(半径量)。

数控车床编程实例100

数控车床编程实例100

数控车床编程实例例1.G01直线插补指令编程如下图所示安装装仿形工件请设置安装装仿形工件,各点坐标参考如下(X向余量4mm)坐标点X(直径)Z圆弧半径圆弧顺逆A00B300C30-48D64-58E84-73F84-1500-150FUNAC数控车编程如下:O9001N10G50 X100 Z10 (设立坐标系,定义对刀点的位置)N20G00 X16 Z2 M03 (移到倒角延长线,Z 轴2mm 处)N30G01 U10 W-5 G98 F120 (倒3×45°角)N40Z-48 (加工Φ26 外圆)N50U34 W-10 (切第一段锥)N60U20 Z-73 (切第二段锥)N70X90 (退刀)N80G00 X100 Z10 (回对刀点)N90M05 (主轴停)N100M30 (主程序结束并复位)////////////////////////////////////////////////////////////////////////////////////////华中数控车床编程如下:%9001N10G92 X100 Z10 (设立坐标系,定义对刀点的位置)N20G00 X16 Z2 M03 (移到倒角延长线,Z 轴2mm 处)N30G01 U10 W-5 F300 (倒3×45°角)N40Z-48 (加工Φ26 外圆)N50U34 W-10 (切第一段锥)N60U20 Z-73 (切第二段锥)N70X90 (退刀)N80G00 X100 Z10 (回对刀点)N90M05 (主轴停)N100M30 (主程序结束并复位)===============================================================例2.G02/G03圆弧插补指令编程,如下图安装装仿形工件请设置安装装仿形工件,各点坐标参考如下(X向余量3mm)坐标点X(直径)Z圆弧半径圆弧顺逆A00B60C30-24183D32-3182E32-40F45-4045-1000-100FUNAC数控车编程如下:O9002N10 G50 X40 Z5(设立坐标系,定义对刀点的位置)N20 M03 S400 (主轴以400r/min旋转)N25 G50 S1000(主轴最大限速1000r/min旋转)N30 G96 S80 (恒线速度有效,线速度为80m/min)N40 G00 X0 (刀到中心,转速升高,直到主轴到最大限速)N50 G01 Z0 G98 F60 (工进接触工件)N60 G03 U24 W-24 R15 (加工R15 圆弧段)N70 G02 X26 Z-31 R5 (加工R5 圆弧段)N80 G01 Z-40 (加工Φ26 外圆)N90 X40 Z5 (回对刀点)N100 G97 S300 (取消恒线速度功能,设定主轴按300r/min 旋转)N110 M30 (主轴停、主程序结束并复位)///////////////////////////////////////////////////////////////////////////////////////////////////////////// //////////////华中数控车床编程如下:%9002N10 G92 X40 Z5(设立坐标系,定义对刀点的位置)N20 M03 S400 (主轴以400r/min旋转)N40 G00 X0 (刀到中心,转速升高,直到主轴到最大限速)N50 G01 Z0 F60 (工进接触工件)N60 G03 U24 W-24 R15 (加工R15 圆弧段)N70 G02 X26 Z-31 R5 (加工R5 圆弧段)N80 G01 Z-40 (加工Φ26 外圆)N90 X40 Z5 (回对刀点)N100 M30 (主轴停、主程序结束并复位)================================================================= ===例3G32螺纹切削指令编程如下图格式:G32 X(U)__Z(W)__F__说明:X、Z:为绝对编程时,有效螺纹终点在工件坐标系中的坐标;U、W:为增量编程时,有效螺纹终点相对于螺纹切削起点的位移量;F:螺纹导程,即主轴每转一圈,刀具相对于工件的进给值;使用G32指令能加工圆柱螺纹、锥螺纹和端面螺纹。

matlab编程实例100例

matlab编程实例100例

1-32是:图形应用篇33-66是:界面设计篇67-84是:图形处理篇85-100是:数值分析篇实例1:三角函数曲线(1)function shili01h0=figure('toolbar','none',...'position',[198 56 350 300],...'name','实例01');h1=axes('parent',h0,...'visible','off');x=-pi:0.05:pi;y=sin(x);plot(x,y);xlabel('自变量X');ylabel('函数值Y');title('SIN( )函数曲线');grid on实例2:三角函数曲线(2)function shili02h0=figure('toolbar','none',...'position',[200 150 450 350],...'name','实例02');x=-pi:0.05:pi;y=sin(x)+cos(x);plot(x,y,'-*r','linewidth',1);grid onxlabel('自变量X');ylabel('函数值Y');title('三角函数');实例3:图形的叠加function shili03h0=figure('toolbar','none',...'position',[200 150 450 350],...'name','实例03');x=-pi:0.05:pi;y1=sin(x);y2=cos(x);plot(x,y1,...'-*r',...x,y2,...'--og');grid onxlabel('自变量X');ylabel('函数值Y');title('三角函数');实例4:双y轴图形的绘制function shili04h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例04');x=0:900;a=1000;b=0.005;y1=2*x;y2=cos(b*x);[haxes,hline1,hline2]=plotyy(x,y1,x,y2,'semilogy','plot'); axes(haxes(1))ylabel('semilog plot');axes(haxes(2))ylabel('linear plot');实例5:单个轴窗口显示多个图形function shili05h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例05');t=0:pi/10:2*pi;[x,y]=meshgrid(t);subplot(2,2,1)plot(sin(t),cos(t))axis equalsubplot(2,2,2)z=sin(x)-cos(y);plot(t,z)axis([0 2*pi -2 2])subplot(2,2,3)h=sin(x)+cos(y);plot(t,h)axis([0 2*pi -2 2])subplot(2,2,4)g=(sin(x).^2)-(cos(y).^2);plot(t,g)axis([0 2*pi -1 1])实例6:图形标注function shili06h0=figure('toolbar','none',...'position',[200 150 450 400],...'name','实例06');t=0:pi/10:2*pi;h=plot(t,sin(t));xlabel('t=0到2\pi','fontsize',16);ylabel('sin(t)','fontsize',16);title('\it{从0to2\pi 的正弦曲线}','fontsize',16) x=get(h,'xdata');y=get(h,'ydata');imin=find(min(y)==y);imax=find(max(y)==y);text(x(imin),y(imin),...['\leftarrow最小值=',num2str(y(imin))],...'fontsize',16)text(x(imax),y(imax),...['\leftarrow最大值=',num2str(y(imax))],...'fontsize',16)实例7:条形图形function shili07h0=figure('toolbar','none',...'position',[200 150 450 350],...'name','实例07');tiao1=[562 548 224 545 41 445 745 512];tiao2=[47 48 57 58 54 52 65 48];t=0:7;bar(t,tiao1)xlabel('X轴');ylabel('TIAO1值');h1=gca;h2=axes('position',get(h1,'position'));plot(t,tiao2,'linewidth',3)set(h2,'yaxislocation','right','color','none','xticklabel',[]) 实例8:区域图形function shili08h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例08');x=91:95;profits1=[88 75 84 93 77];profits2=[51 64 54 56 68];profits3=[42 54 34 25 24];profits4=[26 38 18 15 4];area(x,profits1,'facecolor',[0.5 0.9 0.6],...'edgecolor','b',...'linewidth',3)hold onarea(x,profits2,'facecolor',[0.9 0.85 0.7],...'edgecolor','y',...'linewidth',3)hold onarea(x,profits3,'facecolor',[0.3 0.6 0.7],...'edgecolor','r',...'linewidth',3)hold onarea(x,profits4,'facecolor',[0.6 0.5 0.9],...'edgecolor','m',...'linewidth',3)hold offset(gca,'xtick',[91:95])set(gca,'layer','top')gtext('\leftarrow第一季度销量')gtext('\leftarrow第二季度销量')gtext('\leftarrow第三季度销量')gtext('\leftarrow第四季度销量')xlabel('年','fontsize',16);ylabel('销售量','fontsize',16);实例9:饼图的绘制function shili09h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例09');t=[54 21 35;68 54 35;45 25 12;48 68 45;68 54 69];x=sum(t);h=pie(x);textobjs=findobj(h,'type','text');str1=get(textobjs,{'string'});val1=get(textobjs,{'extent'});oldext=cat(1,val1{:});names={'商品一:';'商品二:';'商品三:'};str2=strcat(names,str1);set(textobjs,{'string'},str2)val2=get(textobjs,{'extent'});newext=cat(1,val2{:});offset=sign(oldext(:,1)).*(newext(:,3)-oldext(:,3))/2; pos=get(textobjs,{'position'});textpos=cat(1,pos{:});textpos(:,1)=textpos(:,1)+offset;set(textobjs,{'position'},num2cell(textpos,[3,2]))实例10:阶梯图function shili10h0=figure('toolbar','none',...'position',[200 150 450 400],...'name','实例10');a=0.01;b=0.5;t=0:10;f=exp(-a*t).*sin(b*t);stairs(t,f)hold onplot(t,f,':*')hold offglabel='函数e^{-(\alpha*t)}sin\beta*t的阶梯图'; gtext(glabel,'fontsize',16)xlabel('t=0:10','fontsize',16)axis([0 10 -1.2 1.2])实例11:枝干图function shili11h0=figure('toolbar','none',...'position',[200 150 450 350],...'name','实例11');x=0:pi/20:2*pi;y1=sin(x);y2=cos(x);h1=stem(x,y1+y2);hold onh2=plot(x,y1,'^r',x,y2,'*g');hold offh3=[h1(1);h2];legend(h3,'y1+y2','y1=sin(x)','y2=cos(x)') xlabel('自变量X');ylabel('函数值Y');title('正弦函数与余弦函数的线性组合');实例12:罗盘图function shili12h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例12');winddirection=[54 24 65 84256 12 235 62125 324 34 254];windpower=[2 5 5 36 8 12 76 14 10 8];rdirection=winddirection*pi/180;[x,y]=pol2cart(rdirection,windpower); compass(x,y);desc={'风向和风力','气象台','10月1日0:00到','10月1日12:00'};gtext(desc)实例13:轮廓图function shili13h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例13');[th,r]=meshgrid((0:10:360)*pi/180,0:0.05:1); [x,y]=pol2cart(th,r);z=x+i*y;f=(z.^4-1).^(0.25);contour(x,y,abs(f),20)axis equalxlabel('实部','fontsize',16);ylabel('虚部','fontsize',16);h=polar([0 2*pi],[0 1]);delete(h)hold oncontour(x,y,abs(f),20)实例14:交互式图形function shili14h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例14');axis([0 10 0 10]);hold onx=[];y=[];n=0;disp('单击鼠标左键点取需要的点'); disp('单击鼠标右键点取最后一个点'); but=1;while but==1[xi,yi,but]=ginput(1);plot(xi,yi,'bo')n=n+1;disp('单击鼠标左键点取下一个点');x(n,1)=xi;y(n,1)=yi;endt=1:n;ts=1:0.1:n;xs=spline(t,x,ts);ys=spline(t,y,ts);plot(xs,ys,'r-');hold off实例14:交互式图形function shili14h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例14');axis([0 10 0 10]);hold onx=[];y=[];n=0;disp('单击鼠标左键点取需要的点'); disp('单击鼠标右键点取最后一个点'); but=1;while but==1[xi,yi,but]=ginput(1);plot(xi,yi,'bo')n=n+1;disp('单击鼠标左键点取下一个点');x(n,1)=xi;y(n,1)=yi;endt=1:n;ts=1:0.1:n;xs=spline(t,x,ts);ys=spline(t,y,ts);plot(xs,ys,'r-');hold off实例15:变换的傅立叶函数曲线function shili15h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例15');axis equalm=moviein(20,gcf);set(gca,'nextplot','replacechildren') h=uicontrol('style','slider','position',...[100 10 500 20],'min',1,'max',20) for j=1:20plot(fft(eye(j+16)))set(h,'value',j)m(:,j)=getframe(gcf);endclf;axes('position',[0 0 1 1]);movie(m,30)实例16:劳伦兹非线形方程的无序活动function shili15h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例15');axis equalm=moviein(20,gcf);set(gca,'nextplot','replacechildren') h=uicontrol('style','slider','position',...[100 10 500 20],'min',1,'max',20) for j=1:20plot(fft(eye(j+16)))set(h,'value',j)m(:,j)=getframe(gcf);endclf;axes('position',[0 0 1 1]);movie(m,30)实例17:填充图function shili17h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例17');t=(1:2:15)*pi/8;x=sin(t);y=cos(t);fill(x,y,'r')axis square offtext(0,0,'STOP',...'color',[1 1 1],...'fontsize',50,...'horizontalalignment','center') 例18:条形图和阶梯形图function shili18h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例18');subplot(2,2,1)x=-3:0.2:3;y=exp(-x.*x);bar(x,y)title('2-D Bar Chart')subplot(2,2,2)x=-3:0.2:3;y=exp(-x.*x);bar3(x,y,'r')title('3-D Bar Chart')subplot(2,2,3)x=-3:0.2:3;y=exp(-x.*x);stairs(x,y)title('Stair Chart')subplot(2,2,4)x=-3:0.2:3;y=exp(-x.*x);barh(x,y)title('Horizontal Bar Chart')实例19:三维曲线图function shili19h0=figure('toolbar','none',...'position',[200 150 450 400],...'name','实例19');subplot(2,1,1)x=linspace(0,2*pi);y1=sin(x);y2=cos(x);y3=sin(x)+cos(x);z1=zeros(size(x));z2=0.5*z1;z3=z1;plot3(x,y1,z1,x,y2,z2,x,y3,z3)grid onxlabel('X轴');ylabel('Y轴');zlabel('Z轴');title('Figure1:3-D Plot')subplot(2,1,2)x=linspace(0,2*pi);y1=sin(x);y2=cos(x);y3=sin(x)+cos(x);z1=zeros(size(x));z2=0.5*z1;z3=z1;plot3(x,z1,y1,x,z2,y2,x,z3,y3)grid onxlabel('X轴');ylabel('Y轴');zlabel('Z轴');title('Figure2:3-D Plot')实例20:图形的隐藏属性function shili20h0=figure('toolbar','none',...'position',[200 150 450 300],...'name','实例20');subplot(1,2,1)[x,y,z]=sphere(10);mesh(x,y,z)axis offtitle('Figure1:Opaque')hidden onsubplot(1,2,2)[x,y,z]=sphere(10);mesh(x,y,z)axis offtitle('Figure2:Transparent') hidden off实例21PEAKS函数曲线function shili21h0=figure('toolbar','none',...'position',[200 100 450 450],...'name','实例21');[x,y,z]=peaks(30);subplot(2,1,1)x=x(1,:);y=y(:,1);i=find(y>0.8&y<1.2);j=find(x>-0.6&x<0.5);z(i,j)=nan*z(i,j);surfc(x,y,z)xlabel('X轴');ylabel('Y轴');zlabel('Z轴');title('Figure1:surfc函数形成的曲面') subplot(2,1,2)x=x(1,:);y=y(:,1);i=find(y>0.8&y<1.2);j=find(x>-0.6&x<0.5);z(i,j)=nan*z(i,j);surfl(x,y,z)xlabel('X轴');ylabel('Y轴');zlabel('Z轴');title('Figure2:surfl函数形成的曲面')实例22:片状图function shili22h0=figure('toolbar','none',...'position',[200 150 550 350],...'name','实例22');subplot(1,2,1)x=rand(1,20);y=rand(1,20);z=peaks(x,y*pi);t=delaunay(x,y);trimesh(t,x,y,z)hidden offtitle('Figure1:Triangular Surface Plot'); subplot(1,2,2)x=rand(1,20);y=rand(1,20);z=peaks(x,y*pi);t=delaunay(x,y);trisurf(t,x,y,z)title('Figure1:Triangular Surface Plot'); 实例23:视角的调整function shili23h0=figure('toolbar','none',...'position',[200 150 450 350],...'name','实例23');x=-5:0.5:5;[x,y]=meshgrid(x);r=sqrt(x.^2+y.^2)+eps;z=sin(r)./r;subplot(2,2,1)surf(x,y,z)xlabel('X-axis')ylabel('Y-axis')zlabel('Z-axis')title('Figure1')view(-37.5,30)subplot(2,2,2)surf(x,y,z)xlabel('X-axis')ylabel('Y-axis')zlabel('Z-axis')title('Figure2')view(-37.5+90,30)subplot(2,2,3)surf(x,y,z)xlabel('X-axis')ylabel('Y-axis')zlabel('Z-axis')title('Figure3')view(-37.5,60)subplot(2,2,4)surf(x,y,z)xlabel('X-axis')ylabel('Y-axis')zlabel('Z-axis')title('Figure4')view(180,0)实例24:向量场的绘制function shili24h0=figure('toolbar','none',...'position',[200 150 450 350],...'name','实例24');subplot(2,2,1)z=peaks;ribbon(z)title('Figure1')subplot(2,2,2)[x,y,z]=peaks(15);[dx,dy]=gradient(z,0.5,0.5); contour(x,y,z,10)hold onquiver(x,y,dx,dy)hold offtitle('Figure2')subplot(2,2,3)[x,y,z]=peaks(15);[nx,ny,nz]=surfnorm(x,y,z);surf(x,y,z)hold onquiver3(x,y,z,nx,ny,nz)hold offtitle('Figure3')subplot(2,2,4)x=rand(3,5);y=rand(3,5);z=rand(3,5);c=rand(3,5);fill3(x,y,z,c)grid ontitle('Figure4')实例25:灯光定位function shili25h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例25');vert=[1 1 1;1 2 1;2 2 1;2 1 1;1 1 2;12 2;2 2 2;2 1 2];fac=[1 2 3 4;2 6 7 3;4 3 7 8;15 8 4;1 2 6 5;5 6 7 8];grid offsphere(36)h=findobj('type','surface');set(h,'facelighting','phong',...'facecolor',...'interp',...'edgecolor',[0.4 0.4 0.4],...'backfacelighting',...'lit')hold onpatch('faces',fac,'vertices',vert,...'facecolor','y');light('position',[1 3 2]);light('position',[-3 -1 3]); material shinyaxis vis3d offhold off实例26:柱状图function shili26h0=figure('toolbar','none',...'position',[200 50 450 450],...'name','实例26');subplot(2,1,1)x=[5 2 18 7 39 8 65 5 54 3 2];bar(x)xlabel('X轴');ylabel('Y轴');title('第一子图');subplot(2,1,2)y=[5 2 18 7 39 8 65 5 54 3 2];barh(y)xlabel('X轴');ylabel('Y轴');title('第二子图');实例27:设置照明方式function shili27h0=figure('toolbar','none',...'position',[200 150 450 350],...'name','实例27');subplot(2,2,1)sphereshading flatcamlight leftcamlight rightlighting flatcolorbaraxis offtitle('Figure1')subplot(2,2,2)sphereshading flatcamlight leftcamlight rightlighting gouraudcolorbaraxis offtitle('Figure2')subplot(2,2,3)sphereshading interpcamlight rightcamlight leftlighting phongcolorbaraxis offtitle('Figure3')subplot(2,2,4)sphereshading flatcamlight leftcamlight rightlighting nonecolorbaraxis offtitle('Figure4')实例28:羽状图function shili28h0=figure('toolbar','none',...'position',[200 150 450 350],...'name','实例28');subplot(2,1,1)alpha=90:-10:0;r=ones(size(alpha));m=alpha*pi/180;n=r*10;[u,v]=pol2cart(m,n);feather(u,v)title('羽状图')axis([0 20 0 10])subplot(2,1,2)t=0:0.5:10;x=0.05+i;y=exp(-x*t);feather(y)title('复数矩阵的羽状图')实例29:立体透视(1)function shili29h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例29');[x,y,z]=meshgrid(-2:0.1:2,...-2:0.1:2,...-2:0.1:2);v=x.*exp(-x.^2-y.^2-z.^2);grid onfor i=-2:0.5:2;h1=surf(linspace(-2,2,20),...linspace(-2,2,20),...zeros(20)+i);rotate(h1,[1 -1 1],30)dx=get(h1,'xdata');dy=get(h1,'ydata');dz=get(h1,'zdata');delete(h1)slice(x,y,z,v,[-2 2],2,-2)hold onslice(x,y,z,v,dx,dy,dz)hold offaxis tightview(-5,10)drawnowend实例30:立体透视(2)function shili30h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例30');[x,y,z]=meshgrid(-2:0.1:2,...-2:0.1:2,...-2:0.1:2);v=x.*exp(-x.^2-y.^2-z.^2); [dx,dy,dz]=cylinder;slice(x,y,z,v,[-2 2],2,-2)for i=-2:0.2:2h=surface(dx+i,dy,dz);rotate(h,[1 0 0],90)xp=get(h,'xdata');yp=get(h,'ydata');zp=get(h,'zdata');delete(h)hold onhs=slice(x,y,z,v,xp,yp,zp);axis tightxlim([-3 3])view(-10,35)drawnowdelete(hs)hold offend实例31:表面图形function shili31h0=figure('toolbar','none',...'position',[200 150 550 250],...'name','实例31');subplot(1,2,1)x=rand(100,1)*16-8;y=rand(100,1)*16-8;r=sqrt(x.^2+y.^2)+eps;z=sin(r)./r;xlin=linspace(min(x),max(x),33); ylin=linspace(min(y),max(y),33); [X,Y]=meshgrid(xlin,ylin);Z=griddata(x,y,z,X,Y,'cubic'); mesh(X,Y,Z)axis tighthold onplot3(x,y,z,'.','Markersize',20)subplot(1,2,2)k=5;n=2^k-1;theta=pi*(-n:2:n)/n;phi=(pi/2)*(-n:2:n)'/n;X=cos(phi)*cos(theta);Y=cos(phi)*sin(theta);Z=sin(phi)*ones(size(theta));colormap([0 0 0;1 1 1])C=hadamard(2^k);surf(X,Y,Z,C)axis square实例32:沿曲线移动的小球h0=figure('toolbar','none',...'position',[198 56 408 468],...'name','实例32');h1=axes('parent',h0,...'position',[0.15 0.45 0.7 0.5],...'visible','on');t=0:pi/24:4*pi;y=sin(t);plot(t,y,'b')n=length(t);h=line('color',[0 0.5 0.5],...'linestyle','.',...'markersize',25,...'erasemode','xor');k1=uicontrol('parent',h0,...'style','pushbutton',...'position',[80 100 50 30],...'string','开始',...'callback',[...'i=1;',...'k=1;,',...'m=0;,',...'while 1,',...'if k==0,',...'break,',...'end,',...'if k~=0,',...'set(h,''xdata'',t(i),''ydata'',y(i)),',...'drawnow;,',...'i=i+1;,',...'if i>n,',...'m=m+1;,',...'i=1;,',...'end,',...'end,',...'end']);k2=uicontrol('parent',h0,...'style','pushbutton',...'position',[180 100 50 30],...'string','停止',...'callback',[...'k=0;,',...'set(e1,''string'',m),',...'p=get(h,''xdata'');,',...'q=get(h,''ydata'');,',...'set(e2,''string'',p);,',...'set(e3,''string'',q)']); k3=uicontrol('parent',h0,...'style','pushbutton',...'position',[280 100 50 30],...'string','关闭',...'callback','close');e1=uicontrol('parent',h0,...'style','edit',...'position',[60 30 60 20]);t1=uicontrol('parent',h0,...'style','text',...'string','循环次数',...'position',[60 50 60 20]);e2=uicontrol('parent',h0,...'style','edit',...'position',[180 30 50 20]); t2=uicontrol('parent',h0,...'style','text',...'string','终点的X坐标值',...'position',[155 50 100 20]); e3=uicontrol('parent',h0,...'style','edit',...'position',[300 30 50 20]); t3=uicontrol('parent',h0,...'style','text',...'string','终点的Y坐标值',...'position',[275 50 100 20]);实例33:曲线转换按钮h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例33');x=0:0.5:2*pi;y=sin(x);h=plot(x,y);grid onhuidiao=[...'if i==1,',...'i=0;,',...'y=cos(x);,',...'delete(h),',...'set(hm,''string'',''正弦函数''),',...'h=plot(x,y);,',...'grid on,',...'else if i==0,',...'i=1;,',...'y=sin(x);,',...'set(hm,''string'',''余弦函数''),',...'delete(h),',...'h=plot(x,y);,',...'grid on,',...'end,',...'end'];hm=uicontrol(gcf,'style','pushbutton',...'string','余弦函数',...'callback',huidiao);i=1;set(hm,'position',[250 20 60 20]);set(gca,'position',[0.2 0.2 0.6 0.6])title('按钮的使用')hold on实例34:栅格控制按钮h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例34');x=0:0.5:2*pi;y=sin(x);plot(x,y)huidiao1=[...'set(h_toggle2,''value'',0),',...'grid on,',...];huidiao2=[...'set(h_toggle1,''value'',0),',...'grid off,',...];h_toggle1=uicontrol(gcf,'style','togglebutton',...'string','grid on',...'value',0,...'position',[20 45 50 20],...'callback',huidiao1);h_toggle2=uicontrol(gcf,'style','togglebutton',...'string','grid off',...'value',0,...'position',[20 20 50 20],...'callback',huidiao2);set(gca,'position',[0.2 0.2 0.6 0.6])title('开关按钮的使用')实例35:编辑框的使用h0=figure('toolbar','none',...'position',[200 150 350 250],...'name','实例35');f='Please input the letter';huidiao1=[...'g=upper(f);,',...'set(h2_edit,''string'',g),',...];huidiao2=[...'g=lower(f);,',...'set(h2_edit,''string'',g),',...];h1_edit=uicontrol(gcf,'style','edit',...'position',[100 200 100 50],...'HorizontalAlignment','left',...'string','Please input the letter',...'callback','f=get(h1_edit,''string'');',...'background','w',...'max',5,...'min',1);h2_edit=uicontrol(gcf,'style','edit',...'HorizontalAlignment','left',...'position',[100 100 100 50],...'max',5,...'min',1);h1_button=uicontrol(gcf,'style','pushbutton',...'string','小写变大写',...'position',[100 45 100 20],...'callback',huidiao1);h2_button=uicontrol(gcf,'style','pushbutton',...'string','大写变小写',...'position',[100 20 100 20],...'callback',huidiao2);实例36:弹出式菜单h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例36');x=0:0.5:2*pi;y=sin(x);h=plot(x,y);grid onhm=uicontrol(gcf,'style','popupmenu',...'string',...'sin(x)|cos(x)|sin(x)+cos(x)|exp(-sin(x))',...'position',[250 20 50 20]);set(hm,'value',1)huidiao=[...'v=get(hm,''value'');,',...'switch v,',...'case 1,',...'delete(h),',...'y=sin(x);,',...'h=plot(x,y);,',...'grid on,',...'case 2,',...'delete(h),',...'y=cos(x);,',...'h=plot(x,y);,',...'grid on,',...'case 3,',...'delete(h),',...'y=sin(x)+cos(x);,',...'h=plot(x,y);,',...'grid on,',...'case 4,',...'y=exp(-sin(x));,',...'h=plot(x,y);,',...'grid on,',...'end'];set(hm,'callback',huidiao)set(gca,'position',[0.2 0.2 0.6 0.6])title('弹出式菜单的使用')实例37:滑标的使用h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例37');[x,y]=meshgrid(-8:0.5:8);r=sqrt(x.^2+y.^2)+eps;z=sin(r)./r;h0=mesh(x,y,z);h1=axes('position',...[0.2 0.2 0.5 0.5],...'visible','off');htext=uicontrol(gcf,...'units','points',...'position',[20 30 45 15],...'string','brightness',...'style','text');hslider=uicontrol(gcf,...'units','points',...'position',[10 10 300 15],...'min',-1,...'max',1,...'style','slider',...'callback',...'brighten(get(hslider,''value''))');实例38:多选菜单h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例38');[x,y]=meshgrid(-8:0.5:8);r=sqrt(x.^2+y.^2)+eps;z=sin(r)./r;h0=mesh(x,y,z);hlist=uicontrol(gcf,'style','listbox',...'string','default|spring|summer|autumn|winter',...'max',5,...'min',1,...'position',[20 20 80 100],...'callback',[...'k=get(hlist,''value'');,',...'switch k,',...'case 1,',...'colormap default,',...'case 2,',...'colormap spring,',...'case 3,',...'colormap summer,',...'case 4,',...'colormap autumn,',...'case 5,',...'colormap winter,',...'end']);实例39:菜单控制的使用h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例39');x=0:0.5:2*pi;y=cos(x);h=plot(x,y);grid onset(gcf,'toolbar','none')hm=uimenu('label','example');huidiao1=[...'set(hm_gridon,''checked'',''on''),',...'set(hm_gridoff,''checked'',''off''),',...'grid on'];huidiao2=[...'set(hm_gridoff,''checked'',''on''),',...'set(hm_gridon,''checked'',''off''),',...'grid off'];hm_gridon=uimenu(hm,'label','grid on',...'checked','on',...'callback',huidiao1);hm_gridoff=uimenu(hm,'label','grid off',...'checked','off',...'callback',huidiao2);实例40:UIMENU菜单的应用。

数控车床编程实例详解(30个例子)

数控车床编程实例详解(30个例子)

车床编程实例一半径编程图3.1.1 半径编程%3110 (主程序程序名)N1 G92 X16 Z1 (设立坐标系,定义对刀点的位置)N2 G37 G00 Z0 M03 (移到子程序起点处、主轴正转)N3 M98 P0003 L6 (调用子程序,并循环6 次)N4 G00 X16 Z1 (返回对刀点)N5 G36 (取消半径编程)N6 M05 (主轴停)N7 M30 (主程序结束并复位)%0003 (子程序名)N1 G01 U-12 F100 (进刀到切削起点处,注意留下后面切削的余量)N2 G03 U7.385 W-4.923 R8(加工R8 园弧段)N3 U3.215 W-39.877 R60 (加工R60 园弧段)N4 G02 U1.4 W-28.636 R40(加工切R40 园弧段) N5 G00 U4 (离开已加工表面)N6 W73.436 (回到循环起点Z 轴处)N7 G01 U-4.8 F100 (调整每次循环的切削量)N8 M99 (子程序结束,并回到主程序)1直线插补指令编程%3305车床编程实例二图3.3.5 G01 编程实例N1 G92 X100 Z10 (设立坐标系,定义对刀点的位置)N2 G00 X16 Z2 M03 (移到倒角延长线,Z 轴2mm 处)N3 G01 U10 W-5 F300 (倒 3×45°角)N4 Z-48 (加工Φ26 外圆)N5 U34 W-10 (切第一段锥)N6 U20 Z-73 (切第二段锥)N7 X90 (退刀)N8 G00 X100 Z10 (回对刀点)N9 M05 (主轴停)N10 M30 (主程序结束并复位)圆弧插补指令编程车床编程实例三%3308N1 G92 X40 Z5 (设立坐标系,定义对刀点的位置)N2 M03 S400 (主轴以400r/min 旋转)N3 G00 X0 (到达工件中心)N4 G01 Z0 F60 (工进接触工件毛坯)N5 G03 U24 W-24 R15 (加工R15 圆弧段)N6 G02 X26 Z-31 R5 (加工R5 圆弧段)N7 G01 Z-40 (加工Φ26 外圆)N8 X40 Z5 (回对刀点)N9 M30 (主轴停、主程序结束并复位图3.3.8 G02/G03 编程实例2倒角指令编程%3310车床编程实例四图3.3.10.1 倒角编程实例N10 G92 X70 Z10 (设立坐标系,定义对刀点的位置)N20 G00 U-70 W-10 (从编程规划起点,移到工件前端面中心处)N30 G01 U26 C3 F100 (倒3×45°直角)N40 W-22 R3 (倒R3 圆角)N50 U39 W-14 C3 (倒边长为3 等腰直角)N60 W-34 (加工Φ65 外圆)N70 G00 U5 W80 (回到编程规划起点)N80 M30 (主轴停、主程序结束并复位)倒角指令编程%3310车床编程实例五N10 G92 X70 Z10 (设立坐标系,定义对刀点的位置)N20 G00 X0 Z4 (到工件中心)N30 G01 W-4 F100 (工进接触工件)N40 X26 C3 (倒3×45°的直角)N50 Z-21 (加工Φ26 外圆)N60 G02 U30 W-15 R15 RL=3(加工R15 圆弧,并倒边长为4 的直角)N70 G01 Z-70 (加工Φ56 外圆)N80 G00 U10 (退刀,离开工件)N90 X70 Z10 (返回程序起点位置)M30 (主轴停、主程序结束并复位)图3.3.10.2 倒角编程实例3车床编程实例六圆柱螺纹编程螺纹导程为1.5mm,δ=1.5mm,δ '=1mm ,每次吃刀量(直径值)分别为0.8mm、0.6 mm 、0.4mm、0.16mm图3.3.12 螺纹编程实例%3312N1 G92 X50 Z120 (设立坐标系,定义对刀点的位置)N2 M03 S300 (主轴以300r/min 旋转)N3 G00 X29.2 Z101.5 (到螺纹起点,升速段1.5mm,吃刀深0.8mm)N4 G32 Z19 F1.5 (切削螺纹到螺纹切削终点,降速段1mm)N5 G00 X40 (X 轴方向快退)N6 Z101.5 (Z 轴方向快退到螺纹起点处)N7 X28.6 (X 轴方向快进到螺纹起点处,吃刀深0.6mm)N8 G32 Z19 F1.5 (切削螺纹到螺纹切削终点)N9 G00 X40 (X 轴方向快退)N10 Z101.5 (Z 轴方向快退到螺纹起点处)N11 X28.2 (X 轴方向快进到螺纹起点处,吃刀深0.4mm)N12 G32 Z19 F1.5 (切削螺纹到螺纹切削终点)N13 G00 X40 (X 轴方向快退)N14 Z101.5 (Z 轴方向快退到螺纹起点处)N15 U-11.96 (X 轴方向快进到螺纹起点处,吃刀深0.16mm)N16 G32 W-82.5 F1.5 (切削螺纹到螺纹切削终点)N17 G00 X40 (X 轴方向快退)N18 X50 Z120 (回对刀点)N19 M05 (主轴停)N20 M30 (主程序结束并复位)4恒线速度功能编程%3314车床编程实例七图3.3.14 恒线速度编程实例N1 G92 X40 Z5 (设立坐标系,定义对刀点的位置)N2 M03 S400 (主轴以400r/min 旋转)N3 G96 S80 (恒线速度有效,线速度为80m/min)N4 G00 X0 (刀到中心,转速升高,直到主轴到最大限速)N5 G01 Z0 F60 (工进接触工件)N6 G03 U24 W-24 R15 (加工R15 圆弧段)N7 G02 X26 Z-31 R5 (加工R5 圆弧段)N8 G01 Z-40 (加工Φ26 外圆)N9 X40 Z5 (回对刀点)N10 G97 S300 (取消恒线速度功能,设定主轴按300r/min 旋转)N11 M30 (主轴停、主程序结束并复位)车床编程实例八%3317M03 S400 (主轴以400r/min 旋转)G91 G80 X-10 Z-33 I-5.5 F100(加工第一次循环,吃刀深3mm)X-13 Z-33 I-5.5(加工第二次循环,吃刀深3mm)X-16 Z-33 I-5.5(加工第三次循环,吃刀深3mm)M30 (主轴停、主程序结束并复位)图3.3.17 G80 切削循环编程实例5车床编程实例九G81 指令编程(点画线代表毛坯)图3.3.20 G81 切削循环编程实例%3320N1 G54 G90 G00 X60 Z45 M03 (选定坐标系,主轴正转,到循环起点)N2 G81 X25 Z31.5 K-3.5 F100 (加工第一次循环,吃刀深2mm)N3 X25 Z29.5 K-3.5 (每次吃刀均为2mm,)N4 X25 Z27.5 K-3.5 (每次切削起点位,距工件外圆面5mm,故K 值为-3.5)N5 X25 Z25.5 K-3.5 (加工第四次循环,吃刀深2mm)N6 M05 (主轴停)N7 M30 (主程序结束并复位车床编程实例十G82 指令编程(毛坯外形已加工完成)%3323N1 G55 G00 X35 Z104(选定坐标系G55,到循环起点)N2 M03 S300 (主轴以300r/min 正转)N3 G82 X29.2 Z18.5 C2 P180 F3(第一次循环切螺纹,切深0.8mm)N4 X28.6 Z18.5 C2 P180 F3(第二次循环切螺纹,切深0.4mm)N5 X28.2 Z18.5 C2 P180 F3(第三次循环切螺纹,切深0.4mm)N6 X28.04 Z18.5 C2 P180 F3(第四次循环切螺纹,切深0.16mm)N7 M30 (主轴停、主程序结束并复位)图3.3.23 G82 切削循环编程实例6车床编程实例十一外径粗加工复合循环编制图3.3.27 所示零件的加工程序:要求循环起始点在A(46,3),切削深度为 1.5mm(半径量)。

数控车床编程实例详解(30个例子)

数控车床编程实例详解(30个例子)

数控车床编程实例详解(30个例子)1. 基础G00轨迹移动G00指令可以用于快速移动机床上的工具,不做切削。

例如,要将铣刀从(0,0,0)点移动到(100,100,0)可以使用下面的编程:G00 X100 Y100 Z02. 简单的G01直线插补3. 向X正方向设定工件原点在某些情况下,需要在工件上设计的特定原点作为整个程序的起点。

在下面的例子中,我们将工件原点移到X轴上的10毫米位置:G92 X104. G02 G03 模拟圆弧G02和G03指令可以用于沿着一条圆弧轨迹移动工具。

例如,以下代码将插入一个逆时针圆弧:G03 X50 Y50 I25 J05. 床上对刀长度测量刀具长度对刀是数控车床操作的重要步骤。

在这个例子中,我们使用手动设定对刀。

首先,我们将铣刀移动到Z轴处的一个位置,然后将刀具轻轻放置在工件上以测量其长度。

最后,我们将刀具测量值输入机床,以便于适当地调整刀具长度。

6. 坐标旋转在某些情况下,需要在XY平面上绕特定角度旋转工件,以便于确保最佳切削角度。

在这个例子中,我们将工件绕着Z轴旋转45度:G68 X0 Y0 R457. 使用M code 启动或停止旋转工件M03用于启动旋转工作台的主轴,M05用于关闭它。

例如,以下代码段启动了工作台的主轴,并等待它旋转到合适速度,以便于切削。

8. 镜像轨迹在制造工具或零件时,可能需要将一个轮廓沿着特定轴镜像。

例如,以下代码镜像X 轴上的轮廓:G01 X50 Y0G01 X0 Y50G01 X-50 Y0G01 X0 Y-50MHE29. 使用G04指令延迟程序G04指令用于程序内部的延迟。

例如,以下代码让机床停顿1秒钟:G04 P100010. 利用G10指令改变工作坐标系G10指令可以用于更改工作坐标系。

例如,下面的代码段将当前坐标系设定为{X50 Y50 Z0}:11. 使用G17, G18和G19指令绘制园形、X-Y平面和Z-X平面G17G02 X50 Y50 I25 J0G02 X0 Y0 I-25 J0G02 X-50 Y50 I0 J25G02 X0 Y100 I25 J0G02 X50 Y50 I0 J-25G02 X0 Y0 I-25 J0MHE2M30指令可以用于彻底结束程序。

数控车床编程实例详解(30个例子)

数控车床编程实例详解(30个例子)

车床编程实例一半径编程图3.1.1 半径编程%3110 (主程序程序名)N1 G92 X16 Z1 (设立坐标系,定义对刀点的位置)N2 G37 G00 Z0 M03 (移到子程序起点处、主轴正转)N3 M98 P0003 L6 (调用子程序,并循环6 次)N4 G00 X16 Z1 (返回对刀点)N5 G36 (取消半径编程)N6 M05 (主轴停)N7 M30 (主程序结束并复位)%0003 (子程序名)N1 G01 U-12 F100 (进刀到切削起点处,注意留下后面切削的余量)N2 G03 U7.385 W-4.923 R8(加工R8 园弧段)N3 U3.215 W-39.877 R60 (加工R60 园弧段)N4 G02 U1.4 W-28.636 R40(加工切R40 园弧段) N5 G00 U4 (离开已加工表面)N6 W73.436 (回到循环起点Z 轴处)N7 G01 U-4.8 F100 (调整每次循环的切削量)N8 M99 (子程序结束,并回到主程序)1直线插补指令编程%3305车床编程实例二图3.3.5 G01 编程实例N1 G92 X100 Z10 (设立坐标系,定义对刀点的位置)N2 G00 X16 Z2 M03 (移到倒角延长线,Z 轴2mm 处)N3 G01 U10 W-5 F300 (倒 3×45°角)N4 Z-48 (加工Φ26 外圆)N5 U34 W-10 (切第一段锥)N6 U20 Z-73 (切第二段锥)N7 X90 (退刀)N8 G00 X100 Z10 (回对刀点)N9 M05 (主轴停)N10 M30 (主程序结束并复位)圆弧插补指令编程车床编程实例三%3308N1 G92 X40 Z5 (设立坐标系,定义对刀点的位置)N2 M03 S400 (主轴以400r/min 旋转)N3 G00 X0 (到达工件中心)N4 G01 Z0 F60 (工进接触工件毛坯)N5 G03 U24 W-24 R15 (加工R15 圆弧段)N6 G02 X26 Z-31 R5 (加工R5 圆弧段)N7 G01 Z-40 (加工Φ26 外圆)N8 X40 Z5 (回对刀点)N9 M30 (主轴停、主程序结束并复位图3.3.8 G02/G03 编程实例2倒角指令编程%3310车床编程实例四图3.3.10.1 倒角编程实例N10 G92 X70 Z10 (设立坐标系,定义对刀点的位置)N20 G00 U-70 W-10 (从编程规划起点,移到工件前端面中心处)N30 G01 U26 C3 F100 (倒3×45°直角)N40 W-22 R3 (倒R3 圆角)N50 U39 W-14 C3 (倒边长为3 等腰直角)N60 W-34 (加工Φ65 外圆)N70 G00 U5 W80 (回到编程规划起点)N80 M30 (主轴停、主程序结束并复位)倒角指令编程%3310车床编程实例五N10 G92 X70 Z10 (设立坐标系,定义对刀点的位置)N20 G00 X0 Z4 (到工件中心)N30 G01 W-4 F100 (工进接触工件)N40 X26 C3 (倒3×45°的直角)N50 Z-21 (加工Φ26 外圆)N60 G02 U30 W-15 R15 RL=3(加工R15 圆弧,并倒边长为4 的直角)N70 G01 Z-70 (加工Φ56 外圆)N80 G00 U10 (退刀,离开工件)N90 X70 Z10 (返回程序起点位置)M30 (主轴停、主程序结束并复位)图3.3.10.2 倒角编程实例3车床编程实例六圆柱螺纹编程螺纹导程为1.5mm,δ=1.5mm,δ '=1mm ,每次吃刀量(直径值)分别为0.8mm、0.6 mm 、0.4mm、0.16mm图3.3.12 螺纹编程实例%3312N1 G92 X50 Z120 (设立坐标系,定义对刀点的位置)N2 M03 S300 (主轴以300r/min 旋转)N3 G00 X29.2 Z101.5 (到螺纹起点,升速段1.5mm,吃刀深0.8mm)N4 G32 Z19 F1.5 (切削螺纹到螺纹切削终点,降速段1mm)N5 G00 X40 (X 轴方向快退)N6 Z101.5 (Z 轴方向快退到螺纹起点处)N7 X28.6 (X 轴方向快进到螺纹起点处,吃刀深0.6mm)N8 G32 Z19 F1.5 (切削螺纹到螺纹切削终点)N9 G00 X40 (X 轴方向快退)N10 Z101.5 (Z 轴方向快退到螺纹起点处)N11 X28.2 (X 轴方向快进到螺纹起点处,吃刀深0.4mm)N12 G32 Z19 F1.5 (切削螺纹到螺纹切削终点)N13 G00 X40 (X 轴方向快退)N14 Z101.5 (Z 轴方向快退到螺纹起点处)N15 U-11.96 (X 轴方向快进到螺纹起点处,吃刀深0.16mm)N16 G32 W-82.5 F1.5 (切削螺纹到螺纹切削终点)N17 G00 X40 (X 轴方向快退)N18 X50 Z120 (回对刀点)N19 M05 (主轴停)N20 M30 (主程序结束并复位)4恒线速度功能编程%3314车床编程实例七图3.3.14 恒线速度编程实例N1 G92 X40 Z5 (设立坐标系,定义对刀点的位置)N2 M03 S400 (主轴以400r/min 旋转)N3 G96 S80 (恒线速度有效,线速度为80m/min)N4 G00 X0 (刀到中心,转速升高,直到主轴到最大限速)N5 G01 Z0 F60 (工进接触工件)N6 G03 U24 W-24 R15 (加工R15 圆弧段)N7 G02 X26 Z-31 R5 (加工R5 圆弧段)N8 G01 Z-40 (加工Φ26 外圆)N9 X40 Z5 (回对刀点)N10 G97 S300 (取消恒线速度功能,设定主轴按300r/min 旋转)N11 M30 (主轴停、主程序结束并复位)车床编程实例八%3317M03 S400 (主轴以400r/min 旋转)G91 G80 X-10 Z-33 I-5.5 F100(加工第一次循环,吃刀深3mm)X-13 Z-33 I-5.5(加工第二次循环,吃刀深3mm)X-16 Z-33 I-5.5(加工第三次循环,吃刀深3mm)M30 (主轴停、主程序结束并复位)图3.3.17 G80 切削循环编程实例5车床编程实例九G81 指令编程(点画线代表毛坯)图3.3.20 G81 切削循环编程实例%3320N1 G54 G90 G00 X60 Z45 M03 (选定坐标系,主轴正转,到循环起点)N2 G81 X25 Z31.5 K-3.5 F100 (加工第一次循环,吃刀深2mm)N3 X25 Z29.5 K-3.5 (每次吃刀均为2mm,)N4 X25 Z27.5 K-3.5 (每次切削起点位,距工件外圆面5mm,故K 值为-3.5)N5 X25 Z25.5 K-3.5 (加工第四次循环,吃刀深2mm)N6 M05 (主轴停)N7 M30 (主程序结束并复位车床编程实例十G82 指令编程(毛坯外形已加工完成)%3323N1 G55 G00 X35 Z104(选定坐标系G55,到循环起点)N2 M03 S300 (主轴以300r/min 正转)N3 G82 X29.2 Z18.5 C2 P180 F3(第一次循环切螺纹,切深0.8mm)N4 X28.6 Z18.5 C2 P180 F3(第二次循环切螺纹,切深0.4mm)N5 X28.2 Z18.5 C2 P180 F3(第三次循环切螺纹,切深0.4mm)N6 X28.04 Z18.5 C2 P180 F3(第四次循环切螺纹,切深0.16mm)N7 M30 (主轴停、主程序结束并复位)图3.3.23 G82 切削循环编程实例6车床编程实例十一外径粗加工复合循环编制图3.3.27 所示零件的加工程序:要求循环起始点在A(46,3),切削深度为 1.5mm(半径量)。

数控车床编程实例大全

数控车床编程实例大全

数控车床编程实例二:直线插补指令G01数控编程直线插补指令G01数控编程零件图样%3305N1 G92 X100 Z10 M03 S500 T010(设立加工工件坐标系,定义对刀点的位置)N2 G00 X16 Z2 (移到倒角延长线,Z轴2mm处)N3 G01 U10 W-5 F300 (倒3×45°角)N4 Z-48 (加工Φ26外圆)N5 U34 W-10(切第一段锥)N6 U20 Z-73 (切第二段锥)N7 X90 (退刀)N8 G00 X100 Z10 (回对刀点)N9 M05 (主轴停)N10 M30(主程序结束并复位)数控车床编程实例三:圆弧插补G02/G03指令数控编程圆弧插补指令编程零件图样%3308N1 G92 X40 Z5(设立工件坐标系,定义对刀点的位置)N2 M03 S400 (主轴以400r/min旋转)N3 G00 X0(到达工件中心)N4 G01 Z0 F60(工进接触工件毛坯)N5 G03 U24 W-24 R15 (加工R15圆弧段)N6 G02 X26 Z-31 R5 (加工R5圆弧段)N7 G01 Z-40 (加工Φ26外圆)N8 X40 Z5 (回对刀点)N9 M30(主轴停、主程序结束并复位)数控车床编程实例四:倒角指令数控编程%3310N10 G92 X70 Z10(设立坐标系,定义对刀点的位置)N20 G00 U-70 W-10(从编程规划起点,移到工件前端面中心处)N30 G01 U26 C3 F100(倒3×45°直角)N40 W-22 R3(倒R3圆角)N50 U39 W-14 C3(倒边长为3等腰直角)N60 W-34(加工Φ65外圆)N70 G00 U5 W80(回到编程规划起点)N80 M30(主轴停、主程序结束并复位)数控车床数控编程实例五:倒角指令数控编程二%3310N10 G92 X70 Z10(设立坐标系,定义对刀点的位置)N20 G00 X0 Z4(到工件中心)N30 G01 W-4 F100(工进接触工件)N40 X26 C3 (倒3×45°的直角)N50 Z-21 (加工Φ26外圆)N60 G02 U30 W-15 R15 RL=3 (加工R15圆弧,并倒边长为4的直角)N70 G01 Z-70 (加工Φ56外圆)N80 G00 U10(退刀,离开工件)N90 X70 Z10(返回程序起点位置)M30(主轴停、主程序结束并复位)数控车床编程实例六:圆柱数控螺纹编程圆柱数控螺纹编程零件图样%3312N1 G92 X50 Z120(设立坐标系,定义对刀点的位置)N2 M03 S300(主轴以300r/min旋转)N3 G00 X29.2 Z101.5 (到螺纹起点,升速段1.5mm,吃刀深0.8mm)N4 G32 Z19 F1.5 (切削螺纹到螺纹切削终点,降速段1mm)N5 G00 X40 (X轴方向快退)N6 Z101.5(Z轴方向快退到螺纹起点处)N7 X28.6 (X轴方向快进到螺纹起点处,吃刀深0.6mm)N8 G32 Z19 F1.5 (切削螺纹到螺纹切削终点)N9 G00 X40 (X轴方向快退)N10 Z101.5(Z轴方向快退到螺纹起点处)N11 X28.2 (X轴方向快进到螺纹起点处,吃刀深0.4mm)N12 G32 Z19 F1.5(切削螺纹到螺纹切削终点)N13 G00 X40(X轴方向快退)N14 Z101.5 (Z轴方向快退到螺纹起点处)N15 U-11.96 (X轴方向快进到螺纹起点处,吃刀深0.16mm)N16 G32 W-82.5 F1.5 (切削螺纹到螺纹切削终点)N17 G00 X40(X轴方向快退)N18 X50 Z120 (回对刀点)N19 M05(主轴停)N20 M30 (主程序结束并复位)数控车床编程实例七:恒线速度功能数控编程恒线速度功能编程零件图样%3314N1 G92 X40 Z5(设立坐标系,定义对刀点的位置)N2 M03 S400(主轴以400r/min旋转)N3 G96 S80 (恒线速度有效,线速度为80m/min)N4 G00 X0(刀到中心,转速升高,直到主轴到最大限速)N5 G01 Z0 F60 (工进接触工件)N6 G03 U24 W-24 R15 (加工R15圆弧段)N7 G02 X26 Z-31 R5 (加工R5圆弧段)N8 G01 Z-40 (加工Φ26外圆)N9 X40 Z5 (回对刀点)N10 G97 S300(取消恒线速度功能,设定主轴按300r/min旋转)N11 M30(主轴停、主程序结束并复位)数控车床编程实例八:G80指令数控编程G80指令数控编程零件图样%3317M03 S400(主轴以400r/min旋转)G91 G80 X-10 Z-33 I-5.5 F100 (加工第一次循环,吃刀深3mm)X-13 Z-33 I-5.5(加工第二次循环,吃刀深3mm)X-16 Z-33 I-5.5(加工第三次循环,吃刀深3mm)M30(主轴停、主程序结束并复位)数控车床编程实例九:G81指令编程,点画线代表毛坯。

数控车床编程实例大全

数控车床编程实例大全
N5 U34W—10(切第一段锥)
N6U20Z-73 (切第二段锥)
N7 X90 (退刀)
N8 G00X100Z10 (回对刀点)
N9M05 (主轴停)
N10M30(主程序结束并复位)
数控车床编程实例三:圆弧插补G02/G03指令数控编程
圆弧插补指令编程零件图样
%3308
N1 G92X40 Z5(设立工件坐标系,定义对刀点得位置)
N9M30(主轴停、主程序结束并复位)
数控车床编程实例四:倒角指令数控编程
%3310
N10 G92 X70 Z10(设立坐标系,定义对刀点得位置)
N20G00 U-70W-10(从编程规划起点,移到工件前端面中心处)
N30G01 U26C3F100(倒3×45°直角)
N40W-22 R3(倒R3圆角)
N11M30(主轴停、主程序结束并复位)
数控车床编程实例八:G80指令数控编程
G80指令数控编程零件图样
%3317
M03S400(主轴以400r/min旋转)
G91G80X-10 Z-33I—5.5F100(加工第一次循环,吃刀深3mm)
X-13Z-33I-5、5(加工第二次循环,吃刀深3mm)
X—16Z—33I-5、5(加工第三次循环,吃刀深3mm)
N18X50Z120(回对刀点)
N19M05(主轴停)
N20M30(主程序结束并复位)
数控车床编程实例七:恒线速度功能数控编程
恒线速度功能编程零件图样
%3314
N1 G92X40 Z5(设立坐标系,定义对刀点得位置)
N2 M03 S400(主轴以400r/min旋转)
N3 G96S80 (恒线速度有效,线速度为80m/min)

plc必背50编程实例

plc必背50编程实例

PLC必背50编程实例介绍PLC(可编程逻辑控制器)是一种用于控制工业自动化过程的电子设备。

它使用编程语言来控制机器、设备和生产线的运行。

PLC编程实例是为了帮助工程师更好地理解和掌握PLC编程技术而设计的一系列实际案例。

本文将介绍50个必背的PLC 编程实例,涵盖了各种常见的控制任务和应用场景。

1. 点亮LED灯1.1 需求描述在PLC上控制一个LED灯,使其点亮。

1.2 实现步骤1.连接PLC输出口和LED灯。

2.使用PLC编程软件创建一个输出位。

3.将输出位与PLC输出口绑定。

4.编写PLC程序,将输出位设置为高电平。

1.3 代码示例-- 定义输出位Output_LED: BOOL;-- 主程序Main:-- 将输出位设置为高电平Output_LED := TRUE;2. 控制电机转动2.1 需求描述使用PLC控制一个电机按照设定的方向和速度转动。

2.2 实现步骤1.连接PLC输出口和电机控制器。

2.使用PLC编程软件创建两个输出位,一个控制电机的正转,一个控制电机的反转。

3.将输出位与PLC输出口绑定。

4.编写PLC程序,根据需要设置正转或反转输出位。

2.3 代码示例-- 定义输出位Output_Forward: BOOL;Output_Reverse: BOOL;-- 主程序Main:-- 将正转输出位设置为高电平,反转输出位设置为低电平Output_Forward := TRUE;Output_Reverse := FALSE;3. 按钮控制输出3.1 需求描述使用PLC控制一个输出位,通过按下按钮进行开关控制。

3.2 实现步骤1.连接PLC输入口和按钮。

2.连接PLC输出口和负载(如灯、电机等)。

3.使用PLC编程软件创建一个输入位和一个输出位。

4.将输入位与PLC输入口绑定,将输出位与PLC输出口绑定。

5.编写PLC程序,根据输入位的状态来控制输出位。

3.3 代码示例-- 定义输入位Input_Button: BOOL;-- 定义输出位Output_Load: BOOL;-- 主程序Main:-- 当按钮被按下时,将输出位设置为高电平;否则,将输出位设置为低电平IF Input_Button THENOutput_Load := TRUE;ELSEOutput_Load := FALSE;END_IF;结论本文介绍了PLC必背的50个编程实例,涵盖了点亮LED灯、控制电机转动、按钮控制输出等常见的PLC控制任务。

40个Visual Basic 编程简单实例

40个Visual Basic 编程简单实例

目录实验题目1:设计窗体。

参考界面如下: (2)实验题目2: 设计一个计算器。

参考界面如下: (3)实验题目3:设计一个能够统计某学生三门课程成绩总分和平均分的程序。

参考界面如下: (4)实验题目4:设计界面,编写程序计算圆的周长和面积。

参考界面如下: (4)实验题目5:设计界面,编写程序验证算术运算符的功能。

参考界面如下: (5)实验题目6:设计界面,编写程序分离出一个三位数的个位、十位、百位上的数字。

参考界面如下: (6)实验题目7:输入一个三位数,将它按逆序输出。

参考界面如下: (7)实验题目8:输入两个数,将这两个数交换。

(8)实验题目9:设计文本编辑窗体。

(8)实验题目10:编写程序计算某个学生三门课程的平均成绩。

(10)实验题目12:编写程序计算长方体的体积。

(10)实验题目13:编写程序求出四个数中的最小数。

(11)实验题目14:编写程序判断某个数是否是水仙花数。

(11)实验题目15:编写程序,实现数字和英文单词的对应。

(12)实验题目16:设计程序,判断从键盘上输入的某个字符为哪类字符。

(大写字母、小写字母、数字字符或其他字符) (12)实验题目17:设计一个简单的文本编辑器,可以实现文本的简单格式化操作。

(13)实验题目18:编写程序输出图形,运行界面如下: (15)实验题目19:编写程序求n!。

(15)实验题目20:编写程序,求出某班所有同学某门课程的平均成绩。

(16)实验题目21:编写程序输出1-100之间所有能被3整除的整数,要求每行输出5个。

并输出这些整数的和。

(用for语句实现) (16)实验题目21:编写程序,统计输入的一个字符串中各类字符的个数。

(用for语句实现).17 实验题目22:编写程序,定义包含10个数组元素的一维数组,给该数组中的数组元素赋值为3,6,9,12......数字,并以顺序和逆序两种方式输出各元素值。

. (17)实验题目23:随机生成20个100以内的正整数,将其中的奇数和偶数分两行显示在窗体上,并分别统计奇数和偶数的个数。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

编程实例练习1、文本控制-新年快乐-1)导入图片,将图片拖曳到分镜表通道1占1~10帧。

2)创建文本演员“新年快乐”,将其拖曳到分镜表通道2占1~10帧。

3)在舞台上右击文字演员,选脚本on mouseenterset the font of member 2 to "黑体"set the fontsize of member 2 to 40on mouseleaveset the font of member 2 to "宋体"set the fontsize of member 2 to 56end2、文本控制—圣诞快乐1)导入图片,将图片拖曳到分镜表通道1占1~10帧。

2)创建文本演员“圣诞快乐”,将其拖曳到分镜表通道2占1~10帧。

3)在舞台上右击文字演员,选脚本on mouseenter meset the fontstyle of member 2 to [#bold]endon mouseleave meset the fontstyle of member 2 to [#plain]end3、图片动画--1)导入4张图片。

2)将图片1拖曳到风镜表通道1,占13~25帧3)将图片2拖曳到风镜表通道2,占12~29帧4)将图片3拖曳到风镜表通道3,占10~40帧5)将图片4拖曳到风镜表通道4,占13~39帧。

图片4拖曳到风镜表通道4的40帧,占1帧。

6)在第40帧加帧脚本:on exitFrame mego to the frameend7)电影脚本on keyDownbeepend keyDown8)对通道4画面40的图片加精灵脚本on mouseUp mego to frame 1end4、图片镜像试验:单击右边图片,右侧图片到原左侧图片的左面1)导入图片1和图片22)图片1到通道1,占1~10帧,图片2到通道2,占1~10帧。

3)选中通道2的所有帧加,对图片2加精灵脚本。

on mouseUp mesprite(2).fliph=1end5、矢量形状控制1)用文本窗口输入创建文本演员,内容“矢量形状控制演示”2)用矢量绘图窗口创建二个矢量演员,圆和矩形。

将圆命名为circle,将矩形命名为rect 3)将文本演员拖曳到通道1,占1~30帧,将circle拖曳到通道2,占1~30帧,将rect拖曳到通道3,占1~30帧,4)右击舞台上的圆,选脚本,输入以下程序,用- -开头的为程序的注释。

Property frameCount--定义一个局部变量,方便对程序的编写与修改on beginSpriteframeCount=0end--程序的初始化,并把frameCounter的变量赋值为0on exitFrameframeCount=frameCount+1member("circle").fillColor=rgb(random(255),random(255),random(255)) member("circle").endColor=rgb(random(255),random(255),random(255)) --改变“circle”剧组成员的随机颜色member("rect").fillcolor=rgb(random(255),random(255),random(255)) member("rect").endcolor=rgb(random(255),random(255),random(255))--改变“rect”剧组成员的随机颜色sprite(3).scale=10*(frameCount mod 10)--改变精灵3的形状大小sprite(2).scale=10*(frameCount mod 10)--改变精灵2的形状大小end6、位图移动—移动的蜗牛1)导入图片:蜗牛,在演员表中编号为12)用绘图窗口绘制位图:尺,在演员表中编号为23)将位图“尺“拖曳到通道1,将位图“蜗牛”拖曳到通道2。

都占1~10帧。

4)选中通道1中的精灵,右击选脚本on exitFrameset the loch of sprite 2 to constrainh (1,the mouseh)go to the frameend7、flash控制--1)导入flash播放动画放置于通道1第1帧,占1~28帧。

2)制作6个按钮演员3)右击舞台上Play演员的脚本on mouseUp meplay sprite 1endon mouseUp mestop sprite 1end4)右击舞台上的stop演员选脚本on mouseUp mestop sprite 1end5)右击big演员选脚本global aon mouseUp merepeat with a=1 to 5sprite(1).scale=40*a updatestageend repeatend6)右击舞台上的small演员选脚本global bon mouseUp merepeat with b=1 to 5sprite(1).scale=200/b updatestageend repeatend7)右击舞台上的rotate演员选脚本global con mouseUp mec=c+20sprite(1).rotation=cupdatestageend8)右击舞台上的back演员选脚本on mouseUp mesprite(1).rotation=0sprite(1).scale=100end8、动物世界实验,1)导入6张动物图片。

导入一张风景图作为舞台背景。

2)创建4个文本演员:动物世界、一、二、三。

3)将背景图片和4个文字演员分别放在通道1~通道4,每个占1帧。

4)将图片“熊猫”放到通道2的第2帧起,到52帧止5)将图片“梅花鹿”放到通道1的第2帧起,到52帧止6)动物图片依次放置演员表1~到6的位置提示:4)在第1帧的脚本为on exitFrame mego to the frameend5)文本演员“一”的演员脚本为:on mouseUpgo to frame 2end6)文本演员“二”的演员脚本为:将演员表中位于3的交换到通道1,将演员表中的位于4位置的演员与通道2种图片交换on mouseUpgo to frame 2sprite(1).member=member 3sprite(2).member=member 4end7)文本演员“三”的演员脚本为:将演员表中位于5的交换到通道1,将演员表中的位于6位置的演员与通道2种图片交换on mouseUpgo to frame 2sprite(1).member=member 5sprite(2).member=member 6end8)创建电影脚本:on exitframe meset fm = the frameset the blend of sprite 1 to (52-fm)*2 ‘改变对象的不透明度set the blend of sprite 2 to (fm-2)*2end9)在结束帧的脚本程序为on exitFrame mego to frame 1end9、非洲风情—转场效果1)图片在“非洲风情.cst”中2)效果见非洲风情.exe10、彩色文本1)界面:2)创建域演员:为彩色的文本。

拖曳到通道1的第1帧,占1~20帧3)创建内容为空的域文本,拖曳到通道2的第1帧,占1~20帧4)创建3个按钮演员:“添加”、“变色”、“清除”。

5)将3个按钮拖曳到通道3到通道5,占1~20帧。

6)导入一个位图作为背景。

7)右击舞台上的“添加”按钮,选脚本on mouseUp memember(1).text=member(1).text&&member(2).text ‘通道1的文本和通道2的文本连接member(2).text="" ‘清空域演员end8)右击舞台上的按钮“变色”选脚本:on mouseUp meset textlength=length(member(1).text)repeat with n=1 to textlengthset colornb = random(255)set the forecolor of char n of member 1 to colornbend repeatend9)右击舞台上的“清除”按钮,选脚本on mouseUp memember(1).text="" ‘将通道1的文本清空end11、转场效果—老蒋作品1)新建影片。

导入图片1~9。

按老蒋作品.exe设置不同的转场效果和等待时间。

2)12、按钮效果要求:当鼠标移到按钮上,按钮改变颜色,并显示文字提示。

单击按钮,播放动画。

1)新建影片。

演员表如下2)用绘图工具绘制3个按钮,命名为anniu1、anniu2、anniu3,每个按钮有不同的颜色。

将anniu1拖曳到第1通道第1帧。

3)绘制一个域,命名为notice,拖曳到第2通道第1帧。

4)在第5帧放一个动画。

演员名:061 5)右击舞台上按钮选脚本on mouseenter ‘当鼠标进入时cursor 280 ‘改变鼠标形状sprite(1).member=member("anniu2") ‘用anniu2替代anniu1member("notice").text="按我@!!!!"‘设置域文本的内容endon mouseleave ‘当鼠标离开时sprite(1).member=member("anniu1")‘用anniu1替代anniu2member("notice").text="" ‘清空文本域cursor -1 ‘恢复鼠标为箭头endon mousedown ‘当鼠标按下时sprite(1).member=member("anniu3") ‘将anniu3替换到通道1member("notice").text="" ‘清空文本域go to frame 5 ‘转到第5帧cursor -1end6)在第1和第5帧各放一个帧脚本,内容为on exitFrame mego to the frameend13、菜单效果实验要求:单击fruit按钮,显示子菜单。

单击apple,显示一个苹果,单击orange显示一个橘子,单击banana显示一只香蕉。

相关文档
最新文档