导航:首页 > 编程语言 > gm代码编程案例

gm代码编程案例

发布时间:2024-08-16 05:53:38

⑴ 请问,操作加工中心必须要学习手编程和GM代码吗

那要看具体的情况了,如果只是做一个普工的话,大可以不必学,别人给了程式调试好你只要装夹工件按启动就可以了,如果是做技术性强的工作如制作样品或要独立操作的话,那就必须要知道手编程,熟悉各个G、M令并能应用!

⑵ 如何用C语言编程 扫雷!~

俄罗斯方快http://topic.csdn.net/t/20051201/01/4429905.html
扫雷
#include<stdio.h>
#include<graphics.h>
#include<stdlib.h>
struct list
{
int x;
int y;
int num;
int bomb;
int wa;
};
struct list di[10][10];
int currentx=210;
int currenty=130;
void initxy(void)
{
int i,j;
for(i=0;i<=9;i++)
for(j=0;j<=9;j++)
{
di[j].x=i*20+200;
di[j].y=j*20+120;
di[j].wa=0;
di[j].bomb=0;
}
}

void initmu(void)
{
int i,j;
setcolor(2);
rectangle(200,120,400,320);
rectangle(190,110,410,330);
setfillstyle(8,14);
floodfill(191,111,2);
for(i=0;i<=9;i++)
for(j=0;j<=9;j++)
rectangle(di[j].x,di[j].y,di[j].x+19,di[j].y+19);
outtextxy(450,200,"press 'enter' to kick");
outtextxy(450,250,"press '\' to mark");
}

void randbomb(void)
{
int k;
int i,j;
randomize();
for(i=0;i<=9;i++)
for(j=0;j<=9;j++)
{
k=random(5);
if(k==2)
di[j].bomb=1;

}
}

void jisuan(void)
{
int k=0;
int i,j;
for(i=0;i<=9;i++)
for(j=0;j<=9;j++)
{
if(i&&j&&di[i-1][j-1].bomb)
k=k+1;
if(i&&di[i-1][j].bomb)
k=k+1;
if(j&&di[j-1].bomb)
k=k+1;
if(i<=8&&di[i+1][j].bomb)
k=k+1;
if(j<=8&&di[j+1].bomb)
k=k+1;
if(i<=8&&j<=8&&di[i+1][j+1].bomb)
k=k+1;
if(i&&j<=8&&di[i-1][j+1].bomb)
k=k+1;
if(i<=8&&j&&di[i+1][j-1].bomb)
k=k+1;
di[j].num=k;
k=0;
}
}

void xianbomb(void)
{
int i,j;
char biaoji[2];
char znum[2];
biaoji[0]=1;
biaoji[1]=NULL;
for(i=0;i<=9;i++)
for(j=0;j<=9;j++)
{
if(di[j].bomb==1)
outtextxy(di[j].x+2,di[j].y+2,biaoji);
else
{
itoa(di[j].num,znum,10);
setfillstyle(1,0);
bar(i*20+202,j*20+122,i*20+218,j*20+138);
outtextxy(i*20+202,j*20+122,znum);
}
}
}
void move(void)
{
int key;
key=bioskey(1);
if(key)
key=bioskey(0);

if(key==0x4800)
{
if(currenty>130)
{
setcolor(0);
circle(currentx,currenty,5);
currenty-=20;
setcolor(4);
circle(currentx,currenty,5);
}
else
{
setcolor(0);
circle(currentx,currenty,5);
currenty=310;
setcolor(4);
circle(currentx,currenty,5);
}
}
if(key==0x4b00)
{
if(currentx>210)
{
setcolor(0);
circle(currentx,currenty,5);
currentx-=20;
setcolor(4);
circle(currentx,currenty,5);
}
else
{
setcolor(0);
circle(currentx,currenty,5);
currentx=390;
setcolor(4);
circle(currentx,currenty,5);
}
}
if(key==0x4d00)
{
if(currentx<390)
{
setcolor(0);
circle(currentx,currenty,5);
currentx+=20;
setcolor(4);
circle(currentx,currenty,5);
}
else
{
setcolor(0);
circle(currentx,currenty,5);
currentx=210;
setcolor(4);
circle(currentx,currenty,5);
}
}
if(key==0x5000)
{
if(currenty<310)
{
setcolor(0);
circle(currentx,currenty,5);
currenty+=20;
setcolor(4);
circle(currentx,currenty,5);
}
else
{
setcolor(0);
circle(currentx,currenty,5);
currenty=130;
setcolor(4);
circle(currentx,currenty,5);
}
}
if(key==0x1c0d)
{
int i,j;
char snum[2];
snum[0]=NULL;
snum[1]=NULL;
i=(currentx-210)/20;
j=(currenty-130)/20;
if(di[j].bomb==1)
{
outtextxy(100,100,"game over");
xianbomb();
sleep(2);
exit(0);
}
if(di[j].bomb==0)
{
di[j].wa=1;
setfillstyle(1,0);
bar(currentx-8,currenty-8,currentx+8,currenty+8);
setcolor(15);
itoa(di[j].num,snum,10);
outtextxy(currentx-8,currenty-8,snum);
setcolor(4);
circle(currentx,currenty,5);
}
}
if(key==0x2b5c)
{
char biaoji[2];
biaoji[0]=1;
biaoji[1]=NULL;
setcolor(0);
bar(currentx-8,currenty-8,currentx+8,currenty+8);
setcolor(4);
outtextxy(currentx-8,currenty-8,biaoji);
circle(currentx,currenty,5);
}
}

void success(void)
{
int k=1;
int i,j;
for(i=0;i<=9;i++)
for(j=0;j<=9;j++)
if(di[j].bomb==0&&di[j].wa==0)
k=0;
if(k==1)
{
outtextxy(100,100,"success good");
xianbomb();
sleep(2);
exit(0);

}
}

void main(void)
{
int gd=DETECT,gm;
initgraph(&gd,&gm,"");
initxy();
initmu();
randbomb();
jisuan();
setcolor(4);
circle(210,130,5);
while(1)
{
move();
success();
}
}

⑶ 用matlab编程灰色预测模型(1,1)

定义函数:
function pre = GM11(x)
%x,建模数据序列x = [x(1),x(2),...,x(n)]
% pre,由GM11模型得到的预测值,即由x估计出的x(n+1)
n = length(x);
x1 = cumsum(x);
z1 = (x1(1:n-1)+x1(2:n))/2;
Y = x(2:length(x))';
B = [-z1',ones(n-1,1)];
A = (B'*B)\B'*Y;%GM(1,1)模型的a,b参数组成的向量.
beta = A(2)/(1+.5*A(1));
alpha = A(1)/(1+.5*A(1));
%初始序列x0(k)模拟后的随时间t变化的序列
f = @(t)(beta-(alpha)*x(1))*exp(-(A(1)*(t-2)));
pre = f(n+1);

调用
x=[1879 2208 2948 2852 2774 2926 4680 3691];
GM11(x)

⑷ 数控编程代码

CNC编程代码很多 说些实用常见的吧 如G00快速定位

G01直线切削

G02顺时针方向圆弧切削

G03逆时针方向圆弧切削

G04暂停指令 (有的系统为延时)

G09正确停止检测

G10补正设定

G12顺时针方向圆周切削

G13逆时针方向圆周切削

G15极座标系统取消

G16极座标系统设定

G17XY平面设定

G18XZ平面设定

G19YZ平面设定

G20英制单位设定

G21公制单位设定

G22软体极限设定

G23软体极限设定取消

G27机械原点复归检测

G28自动经中间点复归机械原点

G29自动从参考点复归

G30自动复归到第二原点

G40刀具半径补正取消

G41刀具半径偏左补正

G42刀具半径偏右补正

G43刀具长度沿正向补正

G44刀具长度沿负向补正

G49刀具长度补正取消

G45刀具位置补正增加

G46刀具位置补正减少

G47刀具位置补正两倍增加

G48刀具位置补正两倍减少

G50比例功能取消OFF

G51比例功能设定ON

G52回复到基本座标系统

G53回复到机械座标系统

G54第一工件座标系统

G55第二工件座标系统

G56第三工件座标系统

G57第四工件座标系统

G58第五工件座标系统

G59第六工件座标系统

G60 外部补正

G70圆周等分段 循环

G71圆周分段 循环

G72直线分段 循环

G73高速喙钻循环

G74左旋牙切削循环G76精搪孔循环

G77反面搪孔循环

G80固定循环取消

G81钻孔循环

G82沉头孔加工循环

G83啄钻循环

G84右旋牙切削循环

G85搪孔循环

G86搪孔循环

G87搪孔循环

G88搪孔循环

G89搪孔循环

G90绝对指令座标值设定

G91增量指令座标值设定

G92绝对程式零点设定

G94每分钟进给量设定mm/min

G95每转进给给设定mm/rev

G98固定循环,刀具复归到起始点

G99固定循环,刀具复归到R点 M03主轴正转

M04主轴逆时针旋转 (通常不会用到反转)

M05主轴停止

M06刀具交换

M07雾化冷却液开启

M08冷却液开启

M09冷却液关启

M10工作台(B轴)锁住

M11工作台(B轴)松开

M13主轴顺时针转动及加切削液

M14主轴逆时针转动及加切削液

M15正方向运动

M16负方向运动

M19主轴定位

M30程式结束记忆体回归 M98子程序调用m99子程序取消 如上面的你都看懂了 那就真正起到作用了 望能帮到您!

阅读全文

与gm代码编程案例相关的资料

热点内容
做程序员好难 浏览:240
晚年程序员的生活 浏览:411
安卓什么型号可以用两年不卡 浏览:188
安卓怎么一边玩游戏一边打电话 浏览:282
体育综合分的算法 浏览:599
用友客户端连服务器P地址 浏览:525
程序员小工具有哪些 浏览:850
android难用 浏览:253
2021金砖论坛数据算法盛宴 浏览:744
职校学计算机出来可以当程序员吗 浏览:478
androidxml命名 浏览:85
批命令if 浏览:101
手机桌面出现安卓图标怎么办 浏览:965
php网站生成app 浏览:731
食色app怎么没法下载了 浏览:324
苹果12跟安卓如何隔空投送 浏览:593
如何在济南人社app上看到账号 浏览:180
服务器ps灯亮是什么原因 浏览:593
安卓上的导航如何操作 浏览:437
程序员如何成长 浏览:497