《网络高级编程》实验报告要求

时间:2019-05-12 06:50:59下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《《网络高级编程》实验报告要求》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《《网络高级编程》实验报告要求》。

第一篇:《网络高级编程》实验报告要求

一、实验报告为纸质报告,手写,不少于8页纸。

二、报告首页为标准实验报告封面,有课程名称、实验名称、姓名、时间

三、报告内容为:1、2、3、4、实验目的 实验题目 实验过程步骤,详细说明实验编程的过程 实验程序的主要代码和注释说明(不需要完整的程

序!)。

5、6、实验中遇到的问题,怎么解决的。实验心得

四、报告的得分主要根据3、4、5五、三份实验报告装订在一起

六、班长将报告收齐,按照班级序号排好,交给实验老师。

第二篇:网络编程实验报告

实验一 TCP Socket API程序设计

一、预备知识

1.网络编程基本概念

网络上的计算机间的通讯,实质上是网络中不同主机上的程序之间的通讯。在互联网中使用IP地址来标识不同的主机,在网络协议中使用端口号来标识主机上不同进程,即使用(IP地址,端口号)二元组。

套接字(Socket)用于描述IP地址和端口,是一个通信链的句柄,通信时一个网络程序将要传输的一段信息写入它所在主机的Socket中,该Socket通过与网络接口卡相连的传输介质将这段信息发送到另一台主机的Socket中,以供其他程序使用。

图1-1 TCP通信流程 2.TCP通信流程

TCP程序是面向连接的,程序运行后,服务器一直处于监听状态,客户端与服务器通信之前必须首先发起连接请求,由服务器接收请求并在双方之间建立连接后才可以互相通信。

二、实验目的

1.了解Winsock API编程原理; 2.掌握TCP Socket程序的编写; 3.了解C/S模式的特点; 4.学会解决实验中遇到的问题。

三、实验任务

使用Winsock API相关类实现TCP Socket通信程序,并能成功运行。

四、实验环境及工具

1.Windows2000/XP/7 2.Visual C++开发平台 3.Visual Studio2010

五、实验内容和步骤

参照《Visual C++网络编程教程》书中81页,TCP Socket API程序设计。连接:

void CChatClientDlg::OnConnect(){

WSADATA wsd;

//WSADATA结构

WSAStartup(MAKEWORD(2,2),&wsd);

//加载协议,使用Winsock 2.2版

m_client = socket(AF_INET,SOCK_STREAM,0);//创建流式套接字

//服务器地址

sockaddr_in serveraddr;

UpdateData();

if(ServerIP.IsBlank())

{

AfxMessageBox(“请指定服务器IP!”);

return;

}

if(sPort.IsEmpty())

{

AfxMessageBox(“请指定端口!”);

return;

}

//获取服务器进程的IP和端口

BYTE nFild[4];

CString sIP;

ServerIP.GetAddress(nFild[0],nFild[1],nFild[2],nFild[3]);

sIP.Format(“%d.%d.%d.%d”,nFild[0],nFild[1],nFild[2],nFild[3]);

//设置服务器地址结构的内容

serveraddr.sin_family = AF_INET;

serveraddr.sin_addr.S_un.S_addr = inet_addr(sIP);

serveraddr.sin_port = htons(atoi(sPort));

//发起连接须指明要访问的服务器进程地址,这个地址存储在serveraddr中

if(connect(m_client,(sockaddr*)&serveraddr,sizeof(serveraddr))!= 0)

{

MessageBox(“连接失败”);

return;

}

else

{

m_ListWords.AddString(“连接服务器成功!”);

m_ListWords.SetTopIndex(m_ListWords.GetCount()1);

ServerIP.EnableWindow();

ServerPort.EnableWindow();

m_ButtonConnect.EnableWindow();

m_ButtonDisconnect.EnableWindow(false);

m_EditWords.EnableWindow(false);

m_ButtonSend.EnableWindow(false);

m_ButtonExit.EnableWindow();}

“发送”按钮事件过程代码如下:

void CChatClientDlg::OnSend(){

//向服务器发送信息

UpdateData();

if(m_sWords.IsEmpty())

{

AfxMessageBox(“发送的消息不能为空!”);

return;

}

//开始发送数据

int i = send(m_client,m_sWords.GetBuffer(0),m_sWords.GetLength(),0);

m_ListWords.AddString(“发送:” + m_sWords);

m_ListWords.SetTopIndex(m_ListWords.GetCount()1);

closesocket(m_client);

ServerIP.EnableWindow();

ServerPort.EnableWindow();

m_ButtonConnect.EnableWindow();

m_ButtonDisconnect.EnableWindow(false);

m_EditWords.EnableWindow(false);

m_ButtonSend.EnableWindow(false);

m_ButtonExit.EnableWindow();} “清空”按钮的事件过程: m_ListWords.ResetContent();“关于”按钮的事件过程: CAboutDlg dlgAbout;dlgAbout.DoModal();

服务器端: 开始监听代码:

void CChatServerDlg::OnListen(){

WSADATA wsd;

//WSADATA结构

WSAStartup(MAKEWORD(2,2),&wsd);

//加载协议栈,使用Winsock 2.2版

m_server = socket(AF_INET,SOCK_STREAM,0);//创建流式套接字

//将网络中的事件关联到窗口的消息函数中,定义消息号为20000,侦测客户端的连接请求

WSAAsyncSelect(m_server,m_hWnd,20000,FD_ACCEPT);

m_client = 0;

BYTE nFild[4];

CString sIP;

UpdateData();

if(ServerIP.IsBlank())

{

AfxMessageBox(“请设置IP地址!”);

return;

}

if(sPort.IsEmpty())

{

AfxMessageBox(“请设置监听端口!”);

return;

}

ServerIP.GetAddress(nFild[0],nFild[1],nFild[2],nFild[3]);

sIP.Format(“%d.%d.%d.%d”,nFild[0],nFild[1],nFild[2],nFild[3]);

//服务器地址

sockaddr_in serveraddr;

serveraddr.sin_family = AF_INET;

serveraddr.sin_addr.S_un.S_addr = inet_addr(sIP);

serveraddr.sin_port = htons(atoi(sPort));

//绑定地址

if(bind(m_server,(sockaddr*)&serveraddr,sizeof(serveraddr)))

{

MessageBox(“绑定地址失败.”);

return;

}

//监听开始,服务器等待连接请求的到来

listen(m_server,5);

m_ListWords.AddString(“监听开始:”);

m_ListWords.AddString(“地址” + sIP + “ 端口” + sPort);

m_ListWords.AddString(“等待客户端连接„„”);

//界面完善

m_ListWords.SetTopIndex(m_ListWords.GetCount()-1);

ServerIP.EnableWindow(false);

ServerPort.EnableWindow(false);

m_ButtonListen.EnableWindow(false);

m_ButtonStopListen.EnableWindow();

m_ButtonClear.EnableWindow();

m_ButtonExit.EnableWindow(false);} “停止监听”按钮事件过程代码如下: void CChatServerDlg::OnStopListen(){

//停止监听

closesocket(m_server);

m_ListWords.AddString(“停止监听”);

m_ListWords.SetTopIndex(m_ListWords.GetCount()1);} “断开”按钮事件过程代码如下: void CChatServerDlg::OnDisconnect(){

closesocket(m_client);

m_ListWords.AddString(“与客户端断开”);

m_ListWords.SetTopIndex(m_ListWords.GetCount()1);

//界面完善

m_ButtonDisconnect.EnableWindow();

m_EditWords.EnableWindow();

m_ButtonSend.EnableWindow();} ReceiveData()函数代码如下:

void CChatServerDlg::ReceiveData(){

//接收客户端的数据

char buffer[1024];

int num = recv(m_client,buffer,1024,0);

buffer[num] = 0;

CString sTemp;

sTemp.Format(“收到:%s”,buffer);

m_ListWords.AddString(sTemp);//显示信息

m_ListWords.SetTopIndex(m_ListWords.GetCount()1);

closesocket(m_client);//关闭与客户端通信的Socket

WSAAsyncSelect(m_server,m_hWnd,20000,FD_ACCEPT);//准备接收新的客户端连接

//界面完善

m_ButtonDisconnect.EnableWindow(false);

m_EditWords.EnableWindow(false);

m_ButtonSend.EnableWindow(false);} 服务器的初始化代码如下: //界面初始化

m_ButtonStopListen.EnableWindow(false);m_ButtonDisconnect.EnableWindow(false);m_ButtonClear.EnableWindow(false);m_EditWords.EnableWindow(false);m_ButtonSend.EnableWindow(false);

运行结果:

六、思考题

1.用Winsock API编程时,主要进行哪些通行的操作步骤? 2.阐述C/S模式的通信过程。答:

1.通行的操作

1.Winsock的打开(WSAStartup())。2.建立套接字(socket()或WSASocket())。3.地址绑定(bind())。

4.服务器监听连接(listen())。

5.客户端提出连接申请(connect()或WSAConnect())。6.服务器接收客户端的连接请求(accept()或WSAAccept())。7.数据的发送(send()或WSASend(),sendto()或WSASendTo())。8.数据的接收(recv()或WSARecv(),recvfrom()或WSARecvfrom())。9.关闭套接字(closesocket())。10.关闭Winsock(WSACleanup())。

2通信过程

第三篇:嵌入式串口和网络编程实验报告

嵌入式实验报告

题目:linux

串口和网络编程

一、实验目的:

1、强化本学期所学的相关的内容。

2、掌握串口相关设置。

3、强化基于TCP网络传输的三次握手。

4、自学Linux线程的使用。

二、实验内容:

本试验基于server和client的透明传输来实现类似于QQ的聊天功能。

三、实验过程:

1、linux开发环境的建立

2、嵌入式linux系统的搭建

1>BootLoader的移植

2>linux系统的裁剪与移植 Linux内核裁剪

./make_image生成自己的uImage2638

上电验证:

3>根文件系统的移植 修改hostname为:whmtt

./mkcramfsdisk_new 生成rootfs_new.cramfs

大小从老师给的40000到37b00(因为有的没有用到,大小变小了):

上电验证:

3、客服端编程client.c 相关代码: #include #include #include #include #include #include #include #include

#define SERVER_PORT 20000 //设置服务端口

#define CLIENT_PORT((20001+rand())%65536)//设置客户端端口(随机)#define BUFFER_SIZE 256 #define LENGTH_OF_LISTEN_QUEUE 10 //可窃听队列长为10 #define WELCOME_MESSAGE “welcome to connect the server.”

void usage(char* name){ printf(“usage: %s IpAddrn ” ,name);}

struct sockaddr_in servaddr,cliaddr;int servfd,clifd,length=0;struct sockaddr_in servaddr,cliaddr;socklen_t socklen=sizeof(servaddr);char buf[BUFFER_SIZE],buf2[BUFFER_SIZE];pthread_t tidp,tidp2;int pth;int runflag=0;

void *Thread1(void *arg)/*等待runflag为1,当为1时清空buf,同时接收来自server的数据并输出。

但当没有清空,则break.*/ { while(runflag){

memset(buf,0,BUFFER_SIZE);

length=recv(clifd,buf,BUFFER_SIZE,0);

if(strstr(buf,“$”)>0){runflag=0;printf(“stop!n”);break;}

if(length>0)printf(“from server:%s”,buf);

} }

void *Thread2(void *arg)/*等待发送数据给Server*/ { printf(“Please input your words to Server:--$ to stopn”);while(runflag){

memset(buf2,0,BUFFER_SIZE);

scanf(“%s”,buf2);

send(clifd,buf2,strlen(buf2),0);

if(strstr(buf2,“$”)>0){runflag=0;printf(“stop!n”);break;}

} }

int main(int argc, char** argv){ if(argc < 2){

usage(argv[0]);

exit(1);} if((clifd = socket(AF_INET,SOCK_STREAM,0))< 0)//用tcp定义socket {

printf(“ create socket error!n ”);

exit(1);}

srand(time(NULL));// initialize random generator

bzero(& cliaddr, sizeof(cliaddr));cliaddr.sin_family = AF_INET;cliaddr.sin_port = htons(CLIENT_PORT);cliaddr.sin_addr.s_addr = htons(INADDR_ANY);

if(bind(clifd,(struct sockaddr*)&cliaddr,sizeof(cliaddr))< 0){

printf(“bind to port %d failure!n ” ,CLIENT_PORT);

exit(1);}//绑定的目的是让其端口是随机的,否则端口是自增1 //一般情况下client端不用绑定

bzero(&servaddr, sizeof(servaddr));

servaddr.sin_family = AF_INET;inet_aton(argv[1], &servaddr.sin_addr);servaddr.sin_port = htons(SERVER_PORT);

if(connect(clifd,(struct sockaddr *)&servaddr, socklen)< 0){

printf(“can't connect to %s!n”, argv[1]);

exit(1);}

runflag=1;

pth=pthread_create(&tidp,NULL,Thread1,NULL);

if(pth!=0){printf(“error!”);return-1;}

pth=pthread_create(&tidp2,NULL,Thread2,NULL);

if(pth!=0){printf(“error!”);return-1;}

pthread_detach(tidp);

pthread_detach(tidp2);

while(runflag){;}

close(clifd);

return 0;}

4、服务端server.c编写

相关代码: #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include

#define COM0 0 #define BLOCK_MODE 1 #define NONBLK_MODE 0 #define SERVER_PORT 20000 #define LENGTH_OF_LISTEN_QUEUE 10 #define QUEUE 20 #define BUFFER_SIZE 256 #define WELCOME_MESSAGE “welcome to connect the server.”

static struct termios g_newtio,g_oldtio;

static int speed_arr[] = { B115200, B57600, B38400, B19200, B9600, B4800, B2400, B1200, B300, B115200, B57600, B38400, B19200, B9600, B4800, B2400, B1200, B300, };

static int name_arr[] = { 115200, 57600, 38400, 19200, 9600, 4800, 2400, 1200, 300, 115200, 57600, 38400, 19200, 9600, 4800, 2400, 1200, 300, };

int Init_COM(int Comm,int Baudrate,int Parity,int Stopbit,int Flagblock){ int ret,i;char dev_buf[16];

if(Comm > 3){

printf(“Com%d not existn”,Comm);

return-1;}

memset(dev_buf,0x00,sizeof(dev_buf));sprintf(dev_buf,“/dev/ttyS%d”,Comm);

if(Flagblock){

ret = open(dev_buf, O_RDWR | O_NOCTTY);//以默认阻塞方式打开

} else {

ret = open(dev_buf, O_RDWR | O_NOCTTY | O_NONBLOCK);//以非阻塞方式打开

}

if(ret < 0){

printf(“Open ttyS%d failedn”,Comm);

return-1;

}

if(tcgetattr(ret, &g_oldtio)< 0)//保存原先的端口

{

printf(“Get Com Parameter Error.n”);

return-1;}

for(i= 0;i < sizeof(speed_arr)/ sizeof(int);i++){

if(Baudrate == name_arr[i])

{

cfsetispeed(&g_newtio,speed_arr[i]);/*设置输入输出波特率*/

cfsetospeed(&g_newtio,speed_arr[i]);

break;

} }

if(i>=sizeof(speed_arr)/ sizeof(int)){

printf(“Unsupported Speed!n”);

return-1;}

switch(Parity){

case 'n':

case 'N':

g_newtio.c_cflag &= ~PARODD;

g_newtio.c_cflag &= ~PARENB;

break;

case 'o':

case 'O':

g_newtio.c_cflag |= PARENB;

g_newtio.c_cflag |= PARODD;//奇校验

break;

case 'e':

case 'E':

g_newtio.c_cflag |= PARENB;//偶校验

g_newtio.c_cflag &= ~PARODD;

break;

default:

printf(“Unsupported Parityn”);

return-1;}

switch(Stopbit)//设置停止校验位是为2,否为1.{

case 1:

g_newtio.c_cflag &= ~CSTOPB;

break;

case 2:

g_newtio.c_cflag |= CSTOPB;

break;

default:

printf(“Unsupported Stopbit!n”);

return-1;} g_newtio.c_iflag = 0;g_newtio.c_oflag = 0;g_newtio.c_lflag = 0;

g_newtio.c_cc[VTIME] = 1;//最大等待时间为1*100ms g_newtio.c_cc[VMIN] = 1;//最小读数为1

g_newtio.c_iflag &= ~INPCK;g_newtio.c_cflag &= ~CRTSCTS;g_newtio.c_cflag &= ~CSIZE;//设置数据位

g_newtio.c_cflag |= CS8;// g_newtio.c_cflag |= CLOCAL;g_newtio.c_cflag |= CREAD;

if(tcsetattr(ret, TCSANOW, &g_newtio)!= 0)//激活设置

{

printf(“Set Com Parameter Error!n”);

return-1;}

tcflush(ret, TCIOFLUSH);//刷新输入输出缓存

return ret;}

//以上为套接字的相关定义

//一下类似与client一样设置数据接收和发送。

void RestoreComConfiguration(int fd,struct termios *ptios){ if(tcsetattr(fd, TCSANOW, ptios)!= 0){

printf(“Restore Com Parameter Error!n”);} }

int fd;char buf[1024],buf2[1024];int servfd,clifd;

struct sockaddr_in servaddr,cliaddr;int runflag=0;

void *Thread1(void *arg){ printf(“Please input your words to Server:--$ to stopn”);while(runflag){

memset(buf,0,BUFFER_SIZE);

read(fd,buf,1024);

send(clifd,buf,strlen(buf),0);

if(strstr(buf,“$”)>0){runflag=0;printf(“stop!n”);break;}

} }

void *Thread2(void *arg){ int length=0;while(runflag){char stdstr[1024]=“from client:”;

memset(buf2,0,BUFFER_SIZE);

length=recv(clifd,buf2,1024,0);if(length>0){

strcat(stdstr,buf2);strcat(stdstr,“n”);

if(strstr(buf2,“$”)>0)

{runflag=0;printf(“stop!n”);break;}

write(fd,stdstr,strlen(stdstr));

}

}

} void socket_init(void){ if((servfd=socket(AF_INET,SOCK_STREAM,0))<0){printf(“create socket error!n”);exit(1);} bzero(&servaddr,sizeof(servaddr));servaddr.sin_family=AF_INET;servaddr.sin_port=htons(SERVER_PORT);servaddr.sin_addr.s_addr=htons(INADDR_ANY);if(bind(servfd,(struct sockaddr*)&servaddr,sizeof(servaddr))<0){printf(“bind to port %d failure!n”,SERVER_PORT);exit(1);} if(listen(servfd,QUEUE)<0){printf(“call listen failure!n”);exit(1);} socklen_t length=sizeof(cliaddr);clifd=accept(servfd,(struct sockaddr*)&cliaddr,&length);if(clifd<0){ printf(“error comes when call accept!n”);exit(1);} } int main(int argc,char *argv[]){ fd = Init_COM(COM0,115200,'N',1,BLOCK_MODE);socket_init();pthread_t tidp,tidp2;int pth;if(fd >= 0)RestoreComConfiguration(fd,&g_oldtio);

runflag=1;

pth=pthread_create(&tidp,NULL,Thread1,NULL);

if(pth!=0){printf(“error!”);return-1;}

pth=pthread_create(&tidp2,NULL,Thread2,NULL);

if(pth!=0){printf(“error!”);return-1;}

pthread_detach(tidp);

pthread_detach(tidp2);

while(runflag){;}

close(clifd);close(fd);close(servfd);//全部关闭

return 0;} 编译结果:

5、nfs挂载

四、实验结果:

五、心得体会:

第四篇:数控编程仿真实验报告

目录

一、实验目的-----------3

二、实验要求-----------3

三、数控车床实验一-----3(1)、实验内容(2)、实验零件图样(3)、车削加工程序

(4)、FANUC 0i系统仿真软件面板操作过程

四、数控车床实验二-----6(1)、实验内容(2)、实验零件图样(3)、车削加工程序

(4)、FANUC 0i系统仿真软件面板操作过程

五、数控铣床实验一-----10(1)、实验内容(2)、实验零件图样(3)、铣削加工程序

(4)、FANUC 0i系统仿真软件面板操作过程

六、数控铣床实验二-----14(1)、实验内容(2)、实验零件图样(3)、铣削加工程序

(4)、FANUC 0i系统仿真软件面板操作过程

一、实验目的

“数控机床加工程序编制”(简称数控编程)课程,是机械和机电等各类专业本、专科教学计划中开设的一门应用性和实践性很强的专业课程。学好本课程,不仅要掌握数控编程的基本理论知识和编程方法,更重要的是要通过一定的实践教学,在实践教学中运用所掌握的机械加工工艺知识、数控编程的理论知识、数控编程的方法编制零件加工程序,并完成对零件的数控加工。采用仿真软件在计算机上进行模拟加工,是完成这一实践教学的有效手段。因此,在各专业本、专科“数控编程”课程的教学计划中均设有“仿真实验”这一实践教学环节。其实验的目的是:

1.熟悉并学会运用计算机仿真技术,模拟数控车床、数控铣床完成零件加工的全过程;

2.为后续的“数控编程实训”,实地操作数控机床进行数控加工,积累和打下操作技能训练的基础。

二、实验要求

1.熟悉并掌握FANUC 0i系统仿真软件面板操作过程;

2.按给定车削零件图样,编制加工程序,在计算机上运用仿真软件,进行模拟加工;

3.按给定铣削零件图样,编制加工程序,在计算机上运用仿真软件,进行模拟加工;

4.按实验内容,编写实验报告。

三、数控车床实验一(1)、实验内容

如图A所示,毛坯直径为φ45mm,起刀点在图示编程坐标系的P点,试运用G71,G70指令编制图示轴类零件车削加工程序。

给定切削条件是:粗车时切深为2mm,退刀量为1mm,精车余量X方向为0.6mm(直径值),Z方向为0.3mm,主轴转速为S 600 r /min,进给速度为F 0.15 mm/ r;

精车时主轴转速为S800 r /min ,进给速度为F 0.1 mm / r。[注:φ45外圆不加工](2)、实验零件图样

图A

(3)、车削加工程序 O1;N10 G50 X100.Z100.T0101;

N20 G90 G97 S600 M03;N30 G00 X51.Z3.M08;N40 G71 U2.R1.;N50 G71 P60 Q120 U0.6 W0.3 F0.15;N60 G00 X22.;N70 G01 Z-12.F0.1 S800;N80 G02 X38.Z-20.I8.;

N90 G01 Z-30.;N100 X44.Z-40.;N110 Z-55.;N120 X51.;N130 G70 P60 Q120;N140 G00 X100.Z100.T0100 M09;N150 M05;

N160 M30;

(4)、FANUC 0i系统仿真软件面板操作过程 1.进入宇龙数控加工仿真系统3.7版,首先启动加密锁管理程序,然后启动数控加工仿真系统。

2.打开菜单“机床/选择机床„”,或单击选择机床图标,系统弹出“选择机床”对话框。选择数控系统FANUC0i的车床,选择标准(平床身前置刀架),按“确定”按钮,系统即可切换到车床仿真加工界面。

3.打开菜单“零件/定义毛坯”,或单击定义毛坯图标,系统弹出“定义毛坯”对话框,点击尺寸输入框,改变毛坯尺寸为φ45×150 mm,按“确定”按钮,保存定义的毛坯并且退出本操作。4.打开菜单“零件/放置零件”,或单击放置零件图标,系统弹出“选择零件”对话框,在列表中点击所需的零件,选中的零件信息加亮显示,按下“安装零件”按钮,系统自动关闭对话框,零件将被放到机床上。

5.毛坯在放置到工作台(三爪卡盘)后,系统将自动弹出一个小键盘,通过按动小键盘上的方向按钮,实现零件的平移和旋转或车床零件调头。再按小键盘上的“退出”按钮,关闭小键盘。6.打开菜单“机床/选择刀具”,或单击选择刀具图标,系统弹出“车刀选择”对话框。选择外圆加工,刀片D55°,刀柄93°,修改刀尖半径为0,按“确认退出”按钮,完成选刀。7.点击机床操作面板中“紧急停止”,“启动”操作按钮,加载驱动,当“机床电机”和“伺服控制”指示灯亮,表示机床已被激活。在回零指示状态下(回零模式),选择机床操作面板上的“X轴”、“Z轴”,点击“+”按钮,此时X轴、Z轴将回零,当回到机床参考点时,相应操作面板上“X原点灯”、“Z原点灯”的指示灯亮。

8.点击机床操作面板中“手动”操作按钮,将机床切换到JOG状态,进入“手动”方式,点击MDI键盘的“POS”按钮,LCD显示刀架在机床坐标系中的坐标值,将刀具移近零件毛坯,准备对刀。(1).点击“主轴正转”按钮,使主轴转动,点击“Z轴”,“-”负向移动按钮,用刀具试切工件外圆。然后,点击“+”正向移动按钮,Z向退刀,将刀具退离零件毛坯。记下LCD界面上显示的X绝对坐标 为X1=255.733mm。点击“主轴停止”按钮,使主轴停止转动,点击菜单“测量/剖面图测量„”,点击试切外圆时所切线段,记下测量对话框中对应线段的X值(试切外圆的直径)为X2=44.367mm。此时,工件中心轴线X的坐标值即为X1-X2,记为X=211.366mm。

(2).同理,刀具移动在切右端面的位置,试切端面,切完后,Z向不动,沿X退刀,同时记下此时的Z坐标值,记为Z=147.483mm。(3).点击MDI键盘的“OFFSET SETING”按钮,进入参数设置画面,点击“坐标系”软键,进入坐标系设定画面,将通过对刀得到的坐标值(X、Z)输入G54坐标系。

9.点击机床操作面板中“编辑”操作按钮,再点击MDI键盘的“PROG”按钮,输入O2;G01 X100.Z100.;再点击机床操作面板中“自动运行”,“循环启动”操作按钮,将刀具移动到刀具起点。

10.点击机床操作面板中“编辑”操作按钮,再点击MDI键盘的“PROG”按钮。打开菜单“机床/DNC传送„”,在打开文件对话框中选取文件。在文件名列表框中选中文件O1,按“打开”确认。按LCD画面软键“[(操作)]”,再点击画面软键向右,再按画面“[READ]”对应软键。在MDI键盘在输入文件名O1。点击画面“[EXEC]”对应软键,即输入预先编辑好的车削加工程序,并在LCD显示。

11.点击机床操作面板中“自动运行” 操作按钮,点击MDI键盘的“CUSFOM GRAPH”按钮,程序执行转入检查运行轨迹模式;再点击机床操作面板中“循环启动”操作按钮,即可观察数控程序的运行轨迹。

12.点击MDI键盘的“CUSFOM GRAPH”按钮,再点击机床操作面板中“循环启动”操作按钮,即可加工零件。13.打开菜单“文件/另存项目”,系统弹出“选择保存类型”对话框,按“确定”按钮。系统弹出“另存为”对话框,输入O1.mac文件名,保存在桌面,按“保存”按钮。

四、数控车床实验二(1)、实验内容

如图B所示,毛坯直径为φ45mm,起刀点在图示编程坐标系的P点,试运用G71,G70指令编制图示轴类零件车削加工程序。

给定切削条件是:粗车时切深为2mm,退刀量为1mm,精车余量X 方向为0.6mm(直径值),Z方向为0.3mm,主轴转速为S 600 r /min,进给速度为F 0.15 mm/ r;

精车时主轴转速为S800 r /min ,进给速度为F 0.1 mm / r。[注:φ45外圆不加工]

(2)、实验零件图样

图B

(3)、车削加工程序 O2;N10 G50 X100.Z100.T0101;N20 G90 G97 S600 M03;N30 G00 X51.Z3.M08;N40 G71 U2.R1.;N50 G71 P60 Q140 U0.6 W0.3 F0.15;N60 G00 X20.;N70 G01 Z-15.F0.1 S800;N80 G03 X30.Z-20.k-5.;N90 G01 Z-35.;N100 X34.Z-47.;N110 Z-57.;N120 G02 X44.Z-62.I5.;N130 G01 Z-78.;N140 X51.;N150 G70 P60 Q140;N160 G00 X100.Z100.T0100 M09;N170 M05;N180 M30;

(4)、FANUC 0i系统仿真软件面板操作过程 1.进入宇龙数控加工仿真系统3.7版,首先启动加密锁管理程序,然后启动数控加工仿真系统。

2.打开菜单“机床/选择机床„”,或单击选择机床图标,系统弹出“选择机床”对话框。选择数控系统FANUC0i的车床,选择标准(平床身前置刀架),按“确定”按钮,系统即可切换到车床仿真加工界面。

3.打开菜单“零件/定义毛坯”,或单击定义毛坯图标,系统弹出“定义毛坯”对话框,点击尺寸输入框,改变毛坯尺寸为φ45×150 mm,按“确定”按钮,保存定义的毛坯并且退出本操作。4.打开菜单“零件/放置零件”,或单击放置零件图标,系统弹出“选择零件”对话框,在列表中点击所需的零件,选中的零件信息加亮显示,按下“安装零件”按钮,系统自动关闭对话框,零件将被放到机床上。

5.毛坯在放置到工作台(三爪卡盘)后,系统将自动弹出一个小键盘,通过按动小键盘上的方向按钮,实现零件的平移和旋转或车床零件调头。再按小键盘上的“退出”按钮,关闭小键盘。6.打开菜单“机床/选择刀具”,或单击选择刀具图标,系统弹出“车刀选择”对话框。选择外圆加工,刀片D55°,刀柄93°,修改刀尖半径为0,按“确认退出”按钮,完成选刀。7.点击机床操作面板中“紧急停止”,“启动”操作按钮,加载驱动,当“机床电机”和“伺服控制”指示灯亮,表示机床已被激活。在回零指示状态下(回零模式),选择机床操作面板上的“X轴”、“Z轴”,点击“+”按钮,此时X轴、Z轴将回零,当回到机床参考点时,相应操作面板上“X原点灯”、“Z原点灯”的指示灯亮。

8.点击机床操作面板中“手动”操作按钮,将机床切换到JOG状态,进入“手动”方式,点击MDI键盘的“POS”按钮,LCD显示刀架在机床坐标系中的坐标值,将刀具移近零件毛坯,准备对刀。(1).点击“主轴正转”按钮,使主轴转动,点击“Z轴”,“-”负向移动按钮,用刀具试切工件外圆。然后,点击“+”正向移动按钮,Z向退刀,将刀具退离零件毛坯。记下LCD界面上显示的X绝对坐标为X1=256.333mm。点击“主轴停止”按钮,使主轴停止转动,点击菜单“测量/剖面图测量„”,点击试切外圆时所切线段,记下测量对话框中对应线段的X值(试切外圆的直径)为X2=44.967mm。此时,工件中心轴线X的坐标值即为X1-X2,记为X=211.366mm。

(2).同理,刀具移动在切右端面的位置,试切端面,切完后,Z向不动,沿X退刀,同时记下此时的Z坐标值,记为Z=147.500mm。(3).点击MDI键盘的“OFFSET SETING”按钮,进入参数设置画面,点击“坐标系”软键,进入坐标系设定画面,将通过对刀得到的坐标值(X、Z)输入G54坐标系。

9.点击机床操作面板中“编辑”操作按钮,再点击MDI键盘的“PROG”按钮,输入O3;G01 X100.Z100.;再点击机床操作面板中“自动运行”,“循环启动”操作按钮,将刀具移动到刀具起点。

10.点击机床操作面板中“编辑”操作按钮,再点击MDI键盘的“PROG”按钮。打开菜单“机床/DNC传送„”,在打开文件对话框中选取文件。在文件名列表框中选中文件O2,按“打开”确认。按LCD画面软键“[(操作)]”,再点击画面软键向右,再按画面“[READ]”对应软键。在MDI键盘在输入文件名O2。点击画面“[EXEC]”对应软键,即输入预先编辑好的车削加工程序,并在LCD显示。

11.点击机床操作面板中“自动运行” 操作按钮,点击MDI键盘的“CUSFOM GRAPH”按钮,程序执行转入检查运行轨迹模式;再点击机床操作面板中“循环启动”操作按钮,即可观察数控程序的运行轨迹。

12.点击MDI键盘的“CUSFOM GRAPH”按钮,再点击机床操作面板中“循环启动”操作按钮,即可加工零件。13.打开菜单“文件/另存项目”,系统弹出“选择保存类型”对话 框,按“确定”按钮。系统弹出“另存为”对话框,输入O2.mac文件名,保存在桌面,按“保存”按钮。

五、数控铣床实验一(1)、实验内容

如图A所示,毛坯尺寸为140×100×50,起刀点位置在编程坐标系的(0,0,20)处,按图示的走刀路线ABCDEFGA编制铣削加工程序。选用φ20 mm的键槽铣刀,F 60mm/min, S 750r/min。

(2)、实验零件图样

图A

(3)、铣削加工程序 O3;N10 G92 X0 Y0 Z20.;N20 M03 S750;N30 G90 G00 X-50.Y-50.Z0 M08;N40 G41 G01 X0 Y0 Z-3.F60 D01;N50 G01 X20.Y10.;N60 Y62.;

N70 G02 X44.Y86.I24.;N80 G01 X96.;N90 G03 X120.Y62.I24.;N100 G01 Y40.;N110 X100.Y14.;N120 X16.;N130 X0 Y0;N140 G40 Z20.M09;N150 M05;N160 M30;

D01=10.(4)、FANUC 0i系统仿真软件面板操作过程 1.进入宇龙数控加工仿真系统3.7版,首先启动加密锁管理程序,然后启动数控加工仿真系统。

2.打开菜单“机床/选择机床„”,或单击选择机床图标,系统弹出“选择机床”对话框。选择数控系统FANUC0i的铣床,选择标准,按“确定”按钮,系统即可切换到铣床仿真加工界面。3.打开菜单“零件/定义毛坯”,或单击定义毛坯图标,系统弹出“定义毛坯”对话框,点击尺寸输入框,改变毛坯尺寸为140×100×100 mm,按“确定”按钮,保存定义的毛坯并且退出本操作。

打开菜单“零件/安装夹具”,或单击夹具图标,系统弹出“选择夹具”对话框。在“选择零件”列表框中选择已定义毛坯。在“选择夹具”列表框中选择平口钳,按“确定”按钮。4.打开菜单“零件/放置零件”,或单击放置零件图标,系统弹出“选择零件”对话框,在列表中点击所需的零件,选中的零件信息加亮显示,按下“安装零件”按钮,系统自动关闭对话框,零件将被放到机床上。5.毛坯在放置到工作台(三爪卡盘)后,系统将自动弹出一个小键盘,通过按动小键盘上的方向按钮,实现零件的平移和旋转。再按小键盘上的“退出”按钮,关闭小键盘。6.打开菜单“机床/基准工具„”,或单击基准工具图标,系统弹出“基准工具”对话框。选择φ14×75 mm的刚性芯棒基准工具,按“确定”按钮,刚性芯棒基准工具被放到机床上。7.点击机床操作面板中“紧急停止”,“启动”操作按钮,加载驱动,当“机床电机”和“伺服控制”指示灯亮,表示机床已被激活。在回零指示状态下(回零模式),选择机床操作面板上的“X轴”、“Y轴”、“Z轴”,点击“+”按钮,此时X轴、Y轴、Z轴将回零,当回到机床参考点时,相应操作面板上“X原点灯”、“Y原点灯”、“Z原点灯”的指示灯亮。

8.点击机床操作面板中“手动”操作按钮,将机床切换到JOG状态,进入“手动”方式,点击MDI键盘的“POS”按钮,LCD显示刀架在机床坐标系中的坐标值,将零件毛坯移近基准工具,准备刚性芯棒采用检查塞尺松紧的方式对刀。

(1).利用机床操作面板上的选择轴按钮,单击选择“X轴”,再通过轴移动键“+”,“-”,采用点动方式移动机床,将装有基准工具的机床主轴在X方向上移动到工件左侧,借助“视图”菜单中的动态旋转、动态放缩、动态平移等工具,调整工作区大小到工件左侧的大致位置。取正向视图,点击菜单“塞尺检查/1mm”,安装塞尺。

(2).点击机床操作面板上“手动脉冲”按钮,切换到手轮方式,点击操作面板右下角的“H”拉出手轮,选中X轴,调整手轮倍率。按鼠标右键为主轴向X轴“-”方向运动,按鼠标左键为主轴向X轴“+”方向运动,如此移动芯棒,使得提示信息对话框显示“塞尺检查的结果:合适”。

(3).记下塞尺检查结果为“合适”时LCD界面中显示的X坐标值,此为基准工具中心的X坐标,记为X1=-578.000 mm;将基准工件直径记为X2=14.000 mm,将塞尺厚度记为X3=1.000 mm,则:工件上表面左下角的X向坐标为:基准工具中心的X坐标+基准工具半径+塞尺厚度,即:X=X1+X2/2+X3=-578+7+1=-570 mm。

(4).在不改变Z向坐标的情况下,将刚性芯棒在JOG手动方式下移动到零件的前侧,同理可得到工件上表面左下角的Y坐标:Y=Y1+Y2/2+Y3=-473+7+1=-465 mm。9.打开菜单“机床/选择刀具”,或单击选择刀具图标,选择φ20 mm的键槽铣刀,按“确定”按钮。点击机床操作面板中“手动”操作按钮,将机床切换到JOG状态,进入“手动”方式,为主轴装上实际加工刀具,点击MDI键盘的“POS”按钮,LCD显示刀架在机床坐标系中的坐标值。

利用机床操作面板上的选择轴按钮,单击选择“Z轴”,再通过轴移动键“+”,“-”,采用点动方式移动机床,将装有刀具的机床主轴在Z方向上移动到工件上表面的大致位置。类似在X,Y方向对刀的方法进行塞尺检查,得到“塞尺检查:合适”时Z的坐标值,记为Z1=-247.000 mm。则相应刀具在工件上表面中心的Z坐标值为:Z=Z1-塞尺厚度=-247-1=-248 mm。

点击MDI键盘的“OFFSET SETING”按钮,进入参数设置画面,输入刀具半径补偿D01=10.000 mm ,再点击“坐标系”软键,进入坐标系设定画面,将通过对刀得到的坐标值(X、Y、Z)输入G54坐标系。10.点击机床操作面板中“编辑”操作按钮,再点击MDI键盘的“PROG”按钮,输入O4;G01 X0 Y0 Z20.;再点击机床操作面板中“自动运行”,“循环启动”操作按钮,将刀具移动到刀具起点。

11.点击机床操作面板中“编辑”操作按钮,再点击MDI键盘的“PROG”按钮。打开菜单“机床/DNC传送„”,在打开文件对话框中选取文件。在文件名列表框中选中文件O3,按“打开”确认。按LCD画面软键“[(操作)]”,再点击画面软键向右,再按画面“[READ]”对应软键。在MDI键盘在输入文件名O3。点击画面“[EXEC]”对应软键,即输入预先编辑好的铣削加工程序,并在LCD显示。

12.点击机床操作面板中“自动运行” 操作按钮,点击MDI键盘的“CUSFOM GRAPH”按钮,程序执行转入检查运行轨迹模式;再点击机床操作面板中“循环启动”操作按钮,即可观察数控程序的运行轨迹。

13.点击MDI键盘的“CUSFOM GRAPH”按钮,再点击机床操作面板中“循环启动”操作按钮,即可加工零件。14.打开菜单“文件/另存项目”,系统弹出“选择保存类型”对话框,按“确定”按钮。系统弹出“另存为”对话框,输入O3.mac文件名,保存在桌面,按“保存”按钮。

六、数控铣床实验二(1)、实验内容

如图B所示,毛坯尺寸为150×80×30,起刀点位置在编程坐标系的(0,0,20)处,按图示的工件尺寸编制铣削加工程序并仿真。突台高5 mm,孔深10 mm,选用φ8 mm的键槽铣刀,φ20mm钻头,F 60 mm/min, S 750r/min。

(2)、实验零件图样

图B

(3)、铣削加工程序 O4;N10 G92 X0 Y0 Z20.;N20 M03 S750 T0101;N30 G90 G00 X-50.Y-50.Z0 M08;N40 G41 G01 X0 Y-10.Z-5.F60 D01;N50 G01 Y20.;N60 X27.017 Y64.988;N70 G02 X35.521 Y70.R10.;N80 G01 X80.;N90 G02 X90.Y60.J-10.;N100 G03 X120.I15.;N110 G01 Y75.;N120 X130.;N130 G02 X140.Y65.J-10.;N140 G01 Y0;N150 X-10.;N160 G00 G40 X-50.Y-50.Z200.T0100 M09;N170 M05;N180 M00;N190 M06 T0202;N200 M03 S750;N210 G43 G00 Z5.H02;N220 G99 G81 X50.Y28.Z-10.R2.F60;N230 G98 X100.Y20.;N240 G80;

N250 G00 X-50.Y-50.;N260 G49 Z200.T0200;N270 M05;N280 M30;

D01=4.;H02=100.;

(4)、FANUC 0i系统仿真软件面板操作过程 1.进入宇龙数控加工仿真系统3.7版,首先启动加密锁管理程序,然后启动数控加工仿真系统。

2.打开菜单“机床/选择机床„”,或单击选择机床图标,系统弹出“选择机床”对话框。选择数控系统FANUC0i的铣床,选择标准,按“确定”按钮,系统即可切换到铣床仿真加工界面。3.打开菜单“零件/定义毛坯”,或单击定义毛坯图标,系统弹出 “定义毛坯”对话框,点击尺寸输入框,改变毛坯尺寸为150×80×100 mm,按“确定”按钮,保存定义的毛坯并且退出本操作。

打开菜单“零件/安装夹具”,或单击夹具图标,系统弹出“选择夹具”对话框。在“选择零件”列表框中选择已定义毛坯。在“选择夹具”列表框中选择平口钳,按“确定”按钮。4.打开菜单“零件/放置零件”,或单击放置零件图标,系统弹出“选择零件”对话框,在列表中点击所需的零件,选中的零件信息加亮显示,按下“安装零件”按钮,系统自动关闭对话框,零件将被放到机床上。

5.毛坯在放置到工作台(三爪卡盘)后,系统将自动弹出一个小键盘,通过按动小键盘上的方向按钮,实现零件的平移和旋转。再按小键盘上的“退出”按钮,关闭小键盘。6.打开菜单“机床/基准工具„”,或单击基准工具图标,系统弹出“基准工具”对话框。选择φ14×75 mm的刚性芯棒基准工具,按“确定”按钮,刚性芯棒基准工具被放到机床上。7.点击机床操作面板中“紧急停止”,“启动”操作按钮,加载驱动,当“机床电机”和“伺服控制”指示灯亮,表示机床已被激活。在回零指示状态下(回零模式),选择机床操作面板上的“X轴”、“Y轴”、“Z轴”,点击“+”按钮,此时X轴、Y轴、Z轴将回零,当回到机床参考点时,相应操作面板上“X原点灯”、“Y原点灯”、“Z原点灯”的指示灯亮。

8.点击机床操作面板中“手动”操作按钮,将机床切换到JOG状态,进入“手动”方式,点击MDI键盘的“POS”按钮,LCD显示刀架在机床坐标系中的坐标值,将零件毛坯移近基准工具,准备刚性芯棒采用检查塞尺松紧的方式对刀。

(1).利用机床操作面板上的选择轴按钮,单击选择“X轴”,再通过轴移动键“+”,“-”,采用点动方式移动机床,将装有基准工具的机床主轴在X方向上移动到工件左侧,借助“视图”菜单中的动态旋转、动态放缩、动态平移等工具,调整工作区大小到工件左侧的大致位置。取正向视图,点击菜单“塞尺检查/1mm”,安装塞尺。

(2).点击机床操作面板上“手动脉冲”按钮,切换到手轮方式,点击操作面板右下角的“H”拉出手轮,选中X轴,调整手轮倍率。按鼠标右键为主轴向X轴“-”方向运动,按鼠标左键为主轴向X轴“+”方向运动,如此移动芯棒,使得提示信息对话框显示“塞尺检 查的结果:合适”。

(3).记下塞尺检查结果为“合适”时LCD界面中显示的X坐标值,此为基准工具中心的X坐标,记为X1=-583.000 mm;将基准工件直径记为X2=14.000 mm,将塞尺厚度记为X3=1.000 mm,则:工件上表面左下角的X向坐标为:基准工具中心的X坐标+基准工具半径+塞尺厚度,即:X=X1+X2/2+X3=-583+7+1=-575 mm。

(4).在不改变Z向坐标的情况下,将刚性芯棒在JOG手动方式下移动到零件的前侧,同理可得到工件上表面左下角的Y坐标:Y=Y1+Y2/2+Y3=-463+7+1=-455 mm。9.打开菜单“机床/选择刀具”,或单击选择刀具图标,选择φ8 mm的键槽铣刀,按“确定”按钮。点击机床操作面板中“手动”操作按钮,将机床切换到JOG状态,进入“手动”方式,为主轴装上实际加工刀具,点击MDI键盘的“POS”按钮,LCD显示刀架在机床坐标系中的坐标值。

利用机床操作面板上的选择轴按钮,单击选择“Z轴”,再通过轴移动键“+”,“-”,采用点动方式移动机床,将装有刀具的机床主轴在Z方向上移动到工件上表面的大致位置。类似在X,Y方向对刀的方法进行塞尺检查,得到“塞尺检查:合适”时Z的坐标值,记为Z1=-317.000 mm。则相应刀具在工件上表面中心的Z坐标值为:Z=Z1-塞尺厚度=-317-1=-318 mm。

点击MDI键盘的“OFFSET SETING”按钮,进入参数设置画面,输入刀具半径补偿D01=4.000 mm ,刀具长度补偿H02=100.000 mm,再点击“坐标系”软键,进入坐标系设定画面,将通过对刀得到的坐标值(X、Y、Z)输入G54坐标系。

10.点击机床操作面板中“编辑”操作按钮,再点击MDI键盘的“PROG”按钮,输入O5;G01 X0 Y0 Z20.;再点击机床操作面板中“自动运行”,“循环启动”操作按钮,将刀具移动到刀具起点。

11.点击机床操作面板中“编辑”操作按钮,再点击MDI键盘的“PROG”按钮。打开菜单“机床/DNC传送„”,在打开文件对话框中选取文件。在文件名列表框中选中文件O4,按“打开”确认。按LCD画面软键“[(操作)]”,再点击画面软键向右,再按画面“[READ]”对应软键。在MDI键盘在输入文件名O4。点击画面“[EXEC]”对应软键,即输入预先编辑好的铣削加工程序,并在LCD显示。

12.点击机床操作面板中“自动运行” 操作按钮,点击MDI键盘 的“CUSFOM GRAPH”按钮,程序执行转入检查运行轨迹模式;再点击机床操作面板中“循环启动”操作按钮,即可观察数控程序的运行轨迹。

13.点击MDI键盘的“CUSFOM GRAPH”按钮,再点击机床操作面板中“循环启动”操作按钮,即可加工零件。再打开菜单“机床/选择刀具”,或单击选择刀具图标,选择φ20 mm的钻头,按“确定”按钮。点击机床操作面板中“自动运行”、“循环启动” 操作按钮,继续加工零件。

14.打开菜单“文件/另存项目”,系统弹出“选择保存类型”对话框,按“确定”按钮。系统弹出“另存为”对话框,输入O4.mac文件名,保存在桌面,按“保存”按钮。

第五篇:JSP编程实验报告

JSP编程实验报告

学生姓名:学生班级:学生学号:指导教师:实验n(n-实验顺序号):实验名称

一、实验目的二、实验内容及步骤

三、源代码

四、运行界面

五、收获和体会

下载《网络高级编程》实验报告要求word格式文档
下载《网络高级编程》实验报告要求.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    java高级编程教学大纲

    《Java高级编程》教学大纲 郑州大学软件技术学院 一、 课程的性质与任务 本课程是软件开发专业开设的程序设计类高级课程,学生在学习了《程序设计导论》,初步具备了一定的程......

    网络互联技术2实验报告要求

    要求每个实验写实验名称、实验目的(实验背景、实验拓扑图)、实验步骤和配置、实验总结。实验一telnet配置(交换机和路由器分别配置)实验二 vlan划分(一台2层交换机,一台三层交换机......

    实验报告要求

    实验课程教学目的及要求 生物环境测试实验是农业生物环境工程专业的一门必修的实践性课程,是学生学会解决工程问题的一个重要手段和方法。通过实验,使学生加深对所学基本理论......

    实验报告要求

    按下列要求完成WORD操作并将操作过程描述出来。(将操作过程记录在”实验报告”单上,实验报告封面到”开放教育学院”首页左上方”教学辅导公告”栏下载) 1、 用“查找和替换......

    实验报告格式要求

    附录1实验报告格式要求 《微机实验》报告实验名称指导教师 专业班级姓名学号序号联系方式一、任务要求 二、设计思路 三、资源分配 四、流程图 五、源代码 (含文件头说明、资......

    实验报告要求

    一. 实验器材 包括详细数据 如:电阻(大小,材料,功率) 电容(型号或材料,大小,极性,数目) 二. 实验电路图 电路图与所做的实验板上电路要完全一样 三. 实验原理 四. 实验过程及注意事项 五.......

    数控加工与编程实验报告

    数控加工与编程实训报告 学院: 专业: 班级: 学号: 姓名: 指导老师: 一、 课程的任务和基本要求 《数控加工与变成实习》是机械设计组织及其自动化专业在专业学习过程中一次重要的......

    网络编程实习作业

    网络编程实习作业一. 实习内容:  了解插口(socket)实现原理。  在某一种平台(Linux,Unix系列或Windows系列)下进行网络客户机-服务器编程。 二. 主要参考书目:  W. Richard Steve......