欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      網(wǎng)絡(luò)編程實(shí)驗(yàn)報(bào)告

      時(shí)間:2019-05-14 07:42:24下載本文作者:會(huì)員上傳
      簡(jiǎn)介:寫寫幫文庫小編為你整理了多篇相關(guān)的《網(wǎng)絡(luò)編程實(shí)驗(yàn)報(bào)告》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《網(wǎng)絡(luò)編程實(shí)驗(yàn)報(bào)告》。

      第一篇:網(wǎng)絡(luò)編程實(shí)驗(yàn)報(bào)告

      實(shí)驗(yàn)一 TCP Socket API程序設(shè)計(jì)

      一、預(yù)備知識(shí)

      1.網(wǎng)絡(luò)編程基本概念

      網(wǎng)絡(luò)上的計(jì)算機(jī)間的通訊,實(shí)質(zhì)上是網(wǎng)絡(luò)中不同主機(jī)上的程序之間的通訊。在互聯(lián)網(wǎng)中使用IP地址來標(biāo)識(shí)不同的主機(jī),在網(wǎng)絡(luò)協(xié)議中使用端口號(hào)來標(biāo)識(shí)主機(jī)上不同進(jìn)程,即使用(IP地址,端口號(hào))二元組。

      套接字(Socket)用于描述IP地址和端口,是一個(gè)通信鏈的句柄,通信時(shí)一個(gè)網(wǎng)絡(luò)程序?qū)⒁獋鬏數(shù)囊欢涡畔懭胨谥鳈C(jī)的Socket中,該Socket通過與網(wǎng)絡(luò)接口卡相連的傳輸介質(zhì)將這段信息發(fā)送到另一臺(tái)主機(jī)的Socket中,以供其他程序使用。

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

      TCP程序是面向連接的,程序運(yùn)行后,服務(wù)器一直處于監(jiān)聽狀態(tài),客戶端與服務(wù)器通信之前必須首先發(fā)起連接請(qǐng)求,由服務(wù)器接收請(qǐng)求并在雙方之間建立連接后才可以互相通信。

      二、實(shí)驗(yàn)?zāi)康?/p>

      1.了解Winsock API編程原理; 2.掌握TCP Socket程序的編寫; 3.了解C/S模式的特點(diǎn); 4.學(xué)會(huì)解決實(shí)驗(yàn)中遇到的問題。

      三、實(shí)驗(yàn)任務(wù)

      使用Winsock API相關(guān)類實(shí)現(xiàn)TCP Socket通信程序,并能成功運(yùn)行。

      四、實(shí)驗(yàn)環(huán)境及工具

      1.Windows2000/XP/7 2.Visual C++開發(fā)平臺(tái) 3.Visual Studio2010

      五、實(shí)驗(yàn)內(nèi)容和步驟

      參照《Visual C++網(wǎng)絡(luò)編程教程》書中81頁,TCP Socket API程序設(shè)計(jì)。連接:

      void CChatClientDlg::OnConnect(){

      WSADATA wsd;

      //WSADATA結(jié)構(gòu)

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

      //加載協(xié)議,使用Winsock 2.2版

      m_client = socket(AF_INET,SOCK_STREAM,0);//創(chuàng)建流式套接字

      //服務(wù)器地址

      sockaddr_in serveraddr;

      UpdateData();

      if(ServerIP.IsBlank())

      {

      AfxMessageBox(“請(qǐng)指定服務(wù)器IP!”);

      return;

      }

      if(sPort.IsEmpty())

      {

      AfxMessageBox(“請(qǐng)指定端口!”);

      return;

      }

      //獲取服務(wù)器進(jìn)程的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]);

      //設(shè)置服務(wù)器地址結(jié)構(gòu)的內(nèi)容

      serveraddr.sin_family = AF_INET;

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

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

      //發(fā)起連接須指明要訪問的服務(wù)器進(jìn)程地址,這個(gè)地址存儲(chǔ)在serveraddr中

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

      {

      MessageBox(“連接失敗”);

      return;

      }

      else

      {

      m_ListWords.AddString(“連接服務(wù)器成功!”);

      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();}

      “發(fā)送”按鈕事件過程代碼如下:

      void CChatClientDlg::OnSend(){

      //向服務(wù)器發(fā)送信息

      UpdateData();

      if(m_sWords.IsEmpty())

      {

      AfxMessageBox(“發(fā)送的消息不能為空!”);

      return;

      }

      //開始發(fā)送數(shù)據(jù)

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

      m_ListWords.AddString(“發(fā)送:” + 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();“關(guān)于”按鈕的事件過程: CAboutDlg dlgAbout;dlgAbout.DoModal();

      服務(wù)器端: 開始監(jiān)聽代碼:

      void CChatServerDlg::OnListen(){

      WSADATA wsd;

      //WSADATA結(jié)構(gòu)

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

      //加載協(xié)議棧,使用Winsock 2.2版

      m_server = socket(AF_INET,SOCK_STREAM,0);//創(chuàng)建流式套接字

      //將網(wǎng)絡(luò)中的事件關(guān)聯(lián)到窗口的消息函數(shù)中,定義消息號(hào)為20000,偵測(cè)客戶端的連接請(qǐng)求

      WSAAsyncSelect(m_server,m_hWnd,20000,FD_ACCEPT);

      m_client = 0;

      BYTE nFild[4];

      CString sIP;

      UpdateData();

      if(ServerIP.IsBlank())

      {

      AfxMessageBox(“請(qǐng)?jiān)O(shè)置IP地址!”);

      return;

      }

      if(sPort.IsEmpty())

      {

      AfxMessageBox(“請(qǐng)?jiān)O(shè)置監(jiān)聽端口!”);

      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]);

      //服務(wù)器地址

      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;

      }

      //監(jiān)聽開始,服務(wù)器等待連接請(qǐng)求的到來

      listen(m_server,5);

      m_ListWords.AddString(“監(jiān)聽開始:”);

      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);} “停止監(jiān)聽”按鈕事件過程代碼如下: void CChatServerDlg::OnStopListen(){

      //停止監(jiān)聽

      closesocket(m_server);

      m_ListWords.AddString(“停止監(jiān)聽”);

      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()函數(shù)代碼如下:

      void CChatServerDlg::ReceiveData(){

      //接收客戶端的數(shù)據(jù)

      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);//關(guān)閉與客戶端通信的Socket

      WSAAsyncSelect(m_server,m_hWnd,20000,FD_ACCEPT);//準(zhǔn)備接收新的客戶端連接

      //界面完善

      m_ButtonDisconnect.EnableWindow(false);

      m_EditWords.EnableWindow(false);

      m_ButtonSend.EnableWindow(false);} 服務(wù)器的初始化代碼如下: //界面初始化

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

      運(yùn)行結(jié)果:

      六、思考題

      1.用Winsock API編程時(shí),主要進(jìn)行哪些通行的操作步驟? 2.闡述C/S模式的通信過程。答:

      1.通行的操作

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

      4.服務(wù)器監(jiān)聽連接(listen())。

      5.客戶端提出連接申請(qǐng)(connect()或WSAConnect())。6.服務(wù)器接收客戶端的連接請(qǐng)求(accept()或WSAAccept())。7.數(shù)據(jù)的發(fā)送(send()或WSASend(),sendto()或WSASendTo())。8.數(shù)據(jù)的接收(recv()或WSARecv(),recvfrom()或WSARecvfrom())。9.關(guān)閉套接字(closesocket())。10.關(guān)閉Winsock(WSACleanup())。

      2通信過程

      第二篇:嵌入式串口和網(wǎng)絡(luò)編程實(shí)驗(yàn)報(bào)告

      嵌入式實(shí)驗(yàn)報(bào)告

      題目:linux

      串口和網(wǎng)絡(luò)編程

      一、實(shí)驗(yàn)?zāi)康模?/p>

      1、強(qiáng)化本學(xué)期所學(xué)的相關(guān)的內(nèi)容。

      2、掌握串口相關(guān)設(shè)置。

      3、強(qiáng)化基于TCP網(wǎng)絡(luò)傳輸?shù)娜挝帐帧?/p>

      4、自學(xué)Linux線程的使用。

      二、實(shí)驗(yàn)內(nèi)容:

      本試驗(yàn)基于server和client的透明傳輸來實(shí)現(xiàn)類似于QQ的聊天功能。

      三、實(shí)驗(yàn)過程:

      1、linux開發(fā)環(huán)境的建立

      2、嵌入式linux系統(tǒng)的搭建

      1>BootLoader的移植

      2>linux系統(tǒng)的裁剪與移植 Linux內(nèi)核裁剪

      ./make_image生成自己的uImage2638

      上電驗(yàn)證:

      3>根文件系統(tǒng)的移植 修改hostname為:whmtt

      ./mkcramfsdisk_new 生成rootfs_new.cramfs

      大小從老師給的40000到37b00(因?yàn)橛械臎]有用到,大小變小了):

      上電驗(yàn)證:

      3、客服端編程client.c 相關(guān)代碼: #include #include #include #include #include #include #include #include

      #define SERVER_PORT 20000 //設(shè)置服務(wù)端口

      #define CLIENT_PORT((20001+rand())%65536)//設(shè)置客戶端端口(隨機(jī))#define BUFFER_SIZE 256 #define LENGTH_OF_LISTEN_QUEUE 10 //可竊聽隊(duì)列長(zhǎng)為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,當(dāng)為1時(shí)清空buf,同時(shí)接收來自server的數(shù)據(jù)并輸出。

      但當(dāng)沒有清空,則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)/*等待發(fā)送數(shù)據(jù)給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);}//綁定的目的是讓其端口是隨機(jī)的,否則端口是自增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、服務(wù)端server.c編寫

      相關(guān)代碼: #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);//以默認(rèn)阻塞方式打開

      } 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]);/*設(shè)置輸入輸出波特率*/

      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;//奇校驗(yàn)

      break;

      case 'e':

      case 'E':

      g_newtio.c_cflag |= PARENB;//偶校驗(yàn)

      g_newtio.c_cflag &= ~PARODD;

      break;

      default:

      printf(“Unsupported Parityn”);

      return-1;}

      switch(Stopbit)//設(shè)置停止校驗(yàn)位是為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;//最大等待時(shí)間為1*100ms g_newtio.c_cc[VMIN] = 1;//最小讀數(shù)為1

      g_newtio.c_iflag &= ~INPCK;g_newtio.c_cflag &= ~CRTSCTS;g_newtio.c_cflag &= ~CSIZE;//設(shè)置數(shù)據(jù)位

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

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

      {

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

      return-1;}

      tcflush(ret, TCIOFLUSH);//刷新輸入輸出緩存

      return ret;}

      //以上為套接字的相關(guān)定義

      //一下類似與client一樣設(shè)置數(shù)據(jù)接收和發(fā)送。

      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);//全部關(guān)閉

      return 0;} 編譯結(jié)果:

      5、nfs掛載

      四、實(shí)驗(yàn)結(jié)果:

      五、心得體會(huì):

      第三篇:《網(wǎng)絡(luò)高級(jí)編程》實(shí)驗(yàn)報(bào)告要求

      一、實(shí)驗(yàn)報(bào)告為紙質(zhì)報(bào)告,手寫,不少于8頁紙。

      二、報(bào)告首頁為標(biāo)準(zhǔn)實(shí)驗(yàn)報(bào)告封面,有課程名稱、實(shí)驗(yàn)名稱、姓名、時(shí)間

      三、報(bào)告內(nèi)容為:1、2、3、4、實(shí)驗(yàn)?zāi)康?實(shí)驗(yàn)題目 實(shí)驗(yàn)過程步驟,詳細(xì)說明實(shí)驗(yàn)編程的過程 實(shí)驗(yàn)程序的主要代碼和注釋說明(不需要完整的程

      序?。?。

      5、6、實(shí)驗(yàn)中遇到的問題,怎么解決的。實(shí)驗(yàn)心得

      四、報(bào)告的得分主要根據(jù)3、4、5五、三份實(shí)驗(yàn)報(bào)告裝訂在一起

      六、班長(zhǎng)將報(bào)告收齊,按照班級(jí)序號(hào)排好,交給實(shí)驗(yàn)老師。

      第四篇:數(shù)控編程仿真實(shí)驗(yàn)報(bào)告

      目錄

      一、實(shí)驗(yàn)?zāi)康?----------3

      二、實(shí)驗(yàn)要求-----------3

      三、數(shù)控車床實(shí)驗(yàn)一-----3(1)、實(shí)驗(yàn)內(nèi)容(2)、實(shí)驗(yàn)零件圖樣(3)、車削加工程序

      (4)、FANUC 0i系統(tǒng)仿真軟件面板操作過程

      四、數(shù)控車床實(shí)驗(yàn)二-----6(1)、實(shí)驗(yàn)內(nèi)容(2)、實(shí)驗(yàn)零件圖樣(3)、車削加工程序

      (4)、FANUC 0i系統(tǒng)仿真軟件面板操作過程

      五、數(shù)控銑床實(shí)驗(yàn)一-----10(1)、實(shí)驗(yàn)內(nèi)容(2)、實(shí)驗(yàn)零件圖樣(3)、銑削加工程序

      (4)、FANUC 0i系統(tǒng)仿真軟件面板操作過程

      六、數(shù)控銑床實(shí)驗(yàn)二-----14(1)、實(shí)驗(yàn)內(nèi)容(2)、實(shí)驗(yàn)零件圖樣(3)、銑削加工程序

      (4)、FANUC 0i系統(tǒng)仿真軟件面板操作過程

      一、實(shí)驗(yàn)?zāi)康?/p>

      “數(shù)控機(jī)床加工程序編制”(簡(jiǎn)稱數(shù)控編程)課程,是機(jī)械和機(jī)電等各類專業(yè)本、??平虒W(xué)計(jì)劃中開設(shè)的一門應(yīng)用性和實(shí)踐性很強(qiáng)的專業(yè)課程。學(xué)好本課程,不僅要掌握數(shù)控編程的基本理論知識(shí)和編程方法,更重要的是要通過一定的實(shí)踐教學(xué),在實(shí)踐教學(xué)中運(yùn)用所掌握的機(jī)械加工工藝知識(shí)、數(shù)控編程的理論知識(shí)、數(shù)控編程的方法編制零件加工程序,并完成對(duì)零件的數(shù)控加工。采用仿真軟件在計(jì)算機(jī)上進(jìn)行模擬加工,是完成這一實(shí)踐教學(xué)的有效手段。因此,在各專業(yè)本、專科“數(shù)控編程”課程的教學(xué)計(jì)劃中均設(shè)有“仿真實(shí)驗(yàn)”這一實(shí)踐教學(xué)環(huán)節(jié)。其實(shí)驗(yàn)的目的是:

      1.熟悉并學(xué)會(huì)運(yùn)用計(jì)算機(jī)仿真技術(shù),模擬數(shù)控車床、數(shù)控銑床完成零件加工的全過程;

      2.為后續(xù)的“數(shù)控編程實(shí)訓(xùn)”,實(shí)地操作數(shù)控機(jī)床進(jìn)行數(shù)控加工,積累和打下操作技能訓(xùn)練的基礎(chǔ)。

      二、實(shí)驗(yàn)要求

      1.熟悉并掌握FANUC 0i系統(tǒng)仿真軟件面板操作過程;

      2.按給定車削零件圖樣,編制加工程序,在計(jì)算機(jī)上運(yùn)用仿真軟件,進(jìn)行模擬加工;

      3.按給定銑削零件圖樣,編制加工程序,在計(jì)算機(jī)上運(yùn)用仿真軟件,進(jìn)行模擬加工;

      4.按實(shí)驗(yàn)內(nèi)容,編寫實(shí)驗(yàn)報(bào)告。

      三、數(shù)控車床實(shí)驗(yàn)一(1)、實(shí)驗(yàn)內(nèi)容

      如圖A所示,毛坯直徑為φ45mm,起刀點(diǎn)在圖示編程坐標(biāo)系的P點(diǎn),試運(yùn)用G71,G70指令編制圖示軸類零件車削加工程序。

      給定切削條件是:粗車時(shí)切深為2mm,退刀量為1mm,精車余量X方向?yàn)?.6mm(直徑值),Z方向?yàn)?.3mm,主軸轉(zhuǎn)速為S 600 r /min,進(jìn)給速度為F 0.15 mm/ r;

      精車時(shí)主軸轉(zhuǎn)速為S800 r /min ,進(jìn)給速度為F 0.1 mm / r。[注:φ45外圓不加工](2)、實(shí)驗(yàn)零件圖樣

      圖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系統(tǒng)仿真軟件面板操作過程 1.進(jìn)入宇龍數(shù)控加工仿真系統(tǒng)3.7版,首先啟動(dòng)加密鎖管理程序,然后啟動(dòng)數(shù)控加工仿真系統(tǒng)。

      2.打開菜單“機(jī)床/選擇機(jī)床?”,或單擊選擇機(jī)床圖標(biāo),系統(tǒng)彈出“選擇機(jī)床”對(duì)話框。選擇數(shù)控系統(tǒng)FANUC0i的車床,選擇標(biāo)準(zhǔn)(平床身前置刀架),按“確定”按鈕,系統(tǒng)即可切換到車床仿真加工界面。

      3.打開菜單“零件/定義毛坯”,或單擊定義毛坯圖標(biāo),系統(tǒng)彈出“定義毛坯”對(duì)話框,點(diǎn)擊尺寸輸入框,改變毛坯尺寸為φ45×150 mm,按“確定”按鈕,保存定義的毛坯并且退出本操作。4.打開菜單“零件/放置零件”,或單擊放置零件圖標(biāo),系統(tǒng)彈出“選擇零件”對(duì)話框,在列表中點(diǎn)擊所需的零件,選中的零件信息加亮顯示,按下“安裝零件”按鈕,系統(tǒng)自動(dòng)關(guān)閉對(duì)話框,零件將被放到機(jī)床上。

      5.毛坯在放置到工作臺(tái)(三爪卡盤)后,系統(tǒng)將自動(dòng)彈出一個(gè)小鍵盤,通過按動(dòng)小鍵盤上的方向按鈕,實(shí)現(xiàn)零件的平移和旋轉(zhuǎn)或車床零件調(diào)頭。再按小鍵盤上的“退出”按鈕,關(guān)閉小鍵盤。6.打開菜單“機(jī)床/選擇刀具”,或單擊選擇刀具圖標(biāo),系統(tǒng)彈出“車刀選擇”對(duì)話框。選擇外圓加工,刀片D55°,刀柄93°,修改刀尖半徑為0,按“確認(rèn)退出”按鈕,完成選刀。7.點(diǎn)擊機(jī)床操作面板中“緊急停止”,“啟動(dòng)”操作按鈕,加載驅(qū)動(dòng),當(dāng)“機(jī)床電機(jī)”和“伺服控制”指示燈亮,表示機(jī)床已被激活。在回零指示狀態(tài)下(回零模式),選擇機(jī)床操作面板上的“X軸”、“Z軸”,點(diǎn)擊“+”按鈕,此時(shí)X軸、Z軸將回零,當(dāng)回到機(jī)床參考點(diǎn)時(shí),相應(yīng)操作面板上“X原點(diǎn)燈”、“Z原點(diǎn)燈”的指示燈亮。

      8.點(diǎn)擊機(jī)床操作面板中“手動(dòng)”操作按鈕,將機(jī)床切換到JOG狀態(tài),進(jìn)入“手動(dòng)”方式,點(diǎn)擊MDI鍵盤的“POS”按鈕,LCD顯示刀架在機(jī)床坐標(biāo)系中的坐標(biāo)值,將刀具移近零件毛坯,準(zhǔn)備對(duì)刀。(1).點(diǎn)擊“主軸正轉(zhuǎn)”按鈕,使主軸轉(zhuǎn)動(dòng),點(diǎn)擊“Z軸”,“-”負(fù)向移動(dòng)按鈕,用刀具試切工件外圓。然后,點(diǎn)擊“+”正向移動(dòng)按鈕,Z向退刀,將刀具退離零件毛坯。記下LCD界面上顯示的X絕對(duì)坐標(biāo) 為X1=255.733mm。點(diǎn)擊“主軸停止”按鈕,使主軸停止轉(zhuǎn)動(dòng),點(diǎn)擊菜單“測(cè)量/剖面圖測(cè)量?”,點(diǎn)擊試切外圓時(shí)所切線段,記下測(cè)量對(duì)話框中對(duì)應(yīng)線段的X值(試切外圓的直徑)為X2=44.367mm。此時(shí),工件中心軸線X的坐標(biāo)值即為X1-X2,記為X=211.366mm。

      (2).同理,刀具移動(dòng)在切右端面的位置,試切端面,切完后,Z向不動(dòng),沿X退刀,同時(shí)記下此時(shí)的Z坐標(biāo)值,記為Z=147.483mm。(3).點(diǎn)擊MDI鍵盤的“OFFSET SETING”按鈕,進(jìn)入?yún)?shù)設(shè)置畫面,點(diǎn)擊“坐標(biāo)系”軟鍵,進(jìn)入坐標(biāo)系設(shè)定畫面,將通過對(duì)刀得到的坐標(biāo)值(X、Z)輸入G54坐標(biāo)系。

      9.點(diǎn)擊機(jī)床操作面板中“編輯”操作按鈕,再點(diǎn)擊MDI鍵盤的“PROG”按鈕,輸入O2;G01 X100.Z100.;再點(diǎn)擊機(jī)床操作面板中“自動(dòng)運(yùn)行”,“循環(huán)啟動(dòng)”操作按鈕,將刀具移動(dòng)到刀具起點(diǎn)。

      10.點(diǎn)擊機(jī)床操作面板中“編輯”操作按鈕,再點(diǎn)擊MDI鍵盤的“PROG”按鈕。打開菜單“機(jī)床/DNC傳送?”,在打開文件對(duì)話框中選取文件。在文件名列表框中選中文件O1,按“打開”確認(rèn)。按LCD畫面軟鍵“[(操作)]”,再點(diǎn)擊畫面軟鍵向右,再按畫面“[READ]”對(duì)應(yīng)軟鍵。在MDI鍵盤在輸入文件名O1。點(diǎn)擊畫面“[EXEC]”對(duì)應(yīng)軟鍵,即輸入預(yù)先編輯好的車削加工程序,并在LCD顯示。

      11.點(diǎn)擊機(jī)床操作面板中“自動(dòng)運(yùn)行” 操作按鈕,點(diǎn)擊MDI鍵盤的“CUSFOM GRAPH”按鈕,程序執(zhí)行轉(zhuǎn)入檢查運(yùn)行軌跡模式;再點(diǎn)擊機(jī)床操作面板中“循環(huán)啟動(dòng)”操作按鈕,即可觀察數(shù)控程序的運(yùn)行軌跡。

      12.點(diǎn)擊MDI鍵盤的“CUSFOM GRAPH”按鈕,再點(diǎn)擊機(jī)床操作面板中“循環(huán)啟動(dòng)”操作按鈕,即可加工零件。13.打開菜單“文件/另存項(xiàng)目”,系統(tǒng)彈出“選擇保存類型”對(duì)話框,按“確定”按鈕。系統(tǒng)彈出“另存為”對(duì)話框,輸入O1.mac文件名,保存在桌面,按“保存”按鈕。

      四、數(shù)控車床實(shí)驗(yàn)二(1)、實(shí)驗(yàn)內(nèi)容

      如圖B所示,毛坯直徑為φ45mm,起刀點(diǎn)在圖示編程坐標(biāo)系的P點(diǎn),試運(yùn)用G71,G70指令編制圖示軸類零件車削加工程序。

      給定切削條件是:粗車時(shí)切深為2mm,退刀量為1mm,精車余量X 方向?yàn)?.6mm(直徑值),Z方向?yàn)?.3mm,主軸轉(zhuǎn)速為S 600 r /min,進(jìn)給速度為F 0.15 mm/ r;

      精車時(shí)主軸轉(zhuǎn)速為S800 r /min ,進(jìn)給速度為F 0.1 mm / r。[注:φ45外圓不加工]

      (2)、實(shí)驗(yàn)零件圖樣

      圖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系統(tǒng)仿真軟件面板操作過程 1.進(jìn)入宇龍數(shù)控加工仿真系統(tǒng)3.7版,首先啟動(dòng)加密鎖管理程序,然后啟動(dòng)數(shù)控加工仿真系統(tǒng)。

      2.打開菜單“機(jī)床/選擇機(jī)床?”,或單擊選擇機(jī)床圖標(biāo),系統(tǒng)彈出“選擇機(jī)床”對(duì)話框。選擇數(shù)控系統(tǒng)FANUC0i的車床,選擇標(biāo)準(zhǔn)(平床身前置刀架),按“確定”按鈕,系統(tǒng)即可切換到車床仿真加工界面。

      3.打開菜單“零件/定義毛坯”,或單擊定義毛坯圖標(biāo),系統(tǒng)彈出“定義毛坯”對(duì)話框,點(diǎn)擊尺寸輸入框,改變毛坯尺寸為φ45×150 mm,按“確定”按鈕,保存定義的毛坯并且退出本操作。4.打開菜單“零件/放置零件”,或單擊放置零件圖標(biāo),系統(tǒng)彈出“選擇零件”對(duì)話框,在列表中點(diǎn)擊所需的零件,選中的零件信息加亮顯示,按下“安裝零件”按鈕,系統(tǒng)自動(dòng)關(guān)閉對(duì)話框,零件將被放到機(jī)床上。

      5.毛坯在放置到工作臺(tái)(三爪卡盤)后,系統(tǒng)將自動(dòng)彈出一個(gè)小鍵盤,通過按動(dòng)小鍵盤上的方向按鈕,實(shí)現(xiàn)零件的平移和旋轉(zhuǎn)或車床零件調(diào)頭。再按小鍵盤上的“退出”按鈕,關(guān)閉小鍵盤。6.打開菜單“機(jī)床/選擇刀具”,或單擊選擇刀具圖標(biāo),系統(tǒng)彈出“車刀選擇”對(duì)話框。選擇外圓加工,刀片D55°,刀柄93°,修改刀尖半徑為0,按“確認(rèn)退出”按鈕,完成選刀。7.點(diǎn)擊機(jī)床操作面板中“緊急停止”,“啟動(dòng)”操作按鈕,加載驅(qū)動(dòng),當(dāng)“機(jī)床電機(jī)”和“伺服控制”指示燈亮,表示機(jī)床已被激活。在回零指示狀態(tài)下(回零模式),選擇機(jī)床操作面板上的“X軸”、“Z軸”,點(diǎn)擊“+”按鈕,此時(shí)X軸、Z軸將回零,當(dāng)回到機(jī)床參考點(diǎn)時(shí),相應(yīng)操作面板上“X原點(diǎn)燈”、“Z原點(diǎn)燈”的指示燈亮。

      8.點(diǎn)擊機(jī)床操作面板中“手動(dòng)”操作按鈕,將機(jī)床切換到JOG狀態(tài),進(jìn)入“手動(dòng)”方式,點(diǎn)擊MDI鍵盤的“POS”按鈕,LCD顯示刀架在機(jī)床坐標(biāo)系中的坐標(biāo)值,將刀具移近零件毛坯,準(zhǔn)備對(duì)刀。(1).點(diǎn)擊“主軸正轉(zhuǎn)”按鈕,使主軸轉(zhuǎn)動(dòng),點(diǎn)擊“Z軸”,“-”負(fù)向移動(dòng)按鈕,用刀具試切工件外圓。然后,點(diǎn)擊“+”正向移動(dòng)按鈕,Z向退刀,將刀具退離零件毛坯。記下LCD界面上顯示的X絕對(duì)坐標(biāo)為X1=256.333mm。點(diǎn)擊“主軸停止”按鈕,使主軸停止轉(zhuǎn)動(dòng),點(diǎn)擊菜單“測(cè)量/剖面圖測(cè)量?”,點(diǎn)擊試切外圓時(shí)所切線段,記下測(cè)量對(duì)話框中對(duì)應(yīng)線段的X值(試切外圓的直徑)為X2=44.967mm。此時(shí),工件中心軸線X的坐標(biāo)值即為X1-X2,記為X=211.366mm。

      (2).同理,刀具移動(dòng)在切右端面的位置,試切端面,切完后,Z向不動(dòng),沿X退刀,同時(shí)記下此時(shí)的Z坐標(biāo)值,記為Z=147.500mm。(3).點(diǎn)擊MDI鍵盤的“OFFSET SETING”按鈕,進(jìn)入?yún)?shù)設(shè)置畫面,點(diǎn)擊“坐標(biāo)系”軟鍵,進(jìn)入坐標(biāo)系設(shè)定畫面,將通過對(duì)刀得到的坐標(biāo)值(X、Z)輸入G54坐標(biāo)系。

      9.點(diǎn)擊機(jī)床操作面板中“編輯”操作按鈕,再點(diǎn)擊MDI鍵盤的“PROG”按鈕,輸入O3;G01 X100.Z100.;再點(diǎn)擊機(jī)床操作面板中“自動(dòng)運(yùn)行”,“循環(huán)啟動(dòng)”操作按鈕,將刀具移動(dòng)到刀具起點(diǎn)。

      10.點(diǎn)擊機(jī)床操作面板中“編輯”操作按鈕,再點(diǎn)擊MDI鍵盤的“PROG”按鈕。打開菜單“機(jī)床/DNC傳送?”,在打開文件對(duì)話框中選取文件。在文件名列表框中選中文件O2,按“打開”確認(rèn)。按LCD畫面軟鍵“[(操作)]”,再點(diǎn)擊畫面軟鍵向右,再按畫面“[READ]”對(duì)應(yīng)軟鍵。在MDI鍵盤在輸入文件名O2。點(diǎn)擊畫面“[EXEC]”對(duì)應(yīng)軟鍵,即輸入預(yù)先編輯好的車削加工程序,并在LCD顯示。

      11.點(diǎn)擊機(jī)床操作面板中“自動(dòng)運(yùn)行” 操作按鈕,點(diǎn)擊MDI鍵盤的“CUSFOM GRAPH”按鈕,程序執(zhí)行轉(zhuǎn)入檢查運(yùn)行軌跡模式;再點(diǎn)擊機(jī)床操作面板中“循環(huán)啟動(dòng)”操作按鈕,即可觀察數(shù)控程序的運(yùn)行軌跡。

      12.點(diǎn)擊MDI鍵盤的“CUSFOM GRAPH”按鈕,再點(diǎn)擊機(jī)床操作面板中“循環(huán)啟動(dòng)”操作按鈕,即可加工零件。13.打開菜單“文件/另存項(xiàng)目”,系統(tǒng)彈出“選擇保存類型”對(duì)話 框,按“確定”按鈕。系統(tǒng)彈出“另存為”對(duì)話框,輸入O2.mac文件名,保存在桌面,按“保存”按鈕。

      五、數(shù)控銑床實(shí)驗(yàn)一(1)、實(shí)驗(yàn)內(nèi)容

      如圖A所示,毛坯尺寸為140×100×50,起刀點(diǎn)位置在編程坐標(biāo)系的(0,0,20)處,按圖示的走刀路線ABCDEFGA編制銑削加工程序。選用φ20 mm的鍵槽銑刀,F(xiàn) 60mm/min, S 750r/min。

      (2)、實(shí)驗(yàn)零件圖樣

      圖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系統(tǒng)仿真軟件面板操作過程 1.進(jìn)入宇龍數(shù)控加工仿真系統(tǒng)3.7版,首先啟動(dòng)加密鎖管理程序,然后啟動(dòng)數(shù)控加工仿真系統(tǒng)。

      2.打開菜單“機(jī)床/選擇機(jī)床?”,或單擊選擇機(jī)床圖標(biāo),系統(tǒng)彈出“選擇機(jī)床”對(duì)話框。選擇數(shù)控系統(tǒng)FANUC0i的銑床,選擇標(biāo)準(zhǔn),按“確定”按鈕,系統(tǒng)即可切換到銑床仿真加工界面。3.打開菜單“零件/定義毛坯”,或單擊定義毛坯圖標(biāo),系統(tǒng)彈出“定義毛坯”對(duì)話框,點(diǎn)擊尺寸輸入框,改變毛坯尺寸為140×100×100 mm,按“確定”按鈕,保存定義的毛坯并且退出本操作。

      打開菜單“零件/安裝夾具”,或單擊夾具圖標(biāo),系統(tǒng)彈出“選擇夾具”對(duì)話框。在“選擇零件”列表框中選擇已定義毛坯。在“選擇夾具”列表框中選擇平口鉗,按“確定”按鈕。4.打開菜單“零件/放置零件”,或單擊放置零件圖標(biāo),系統(tǒng)彈出“選擇零件”對(duì)話框,在列表中點(diǎn)擊所需的零件,選中的零件信息加亮顯示,按下“安裝零件”按鈕,系統(tǒng)自動(dòng)關(guān)閉對(duì)話框,零件將被放到機(jī)床上。5.毛坯在放置到工作臺(tái)(三爪卡盤)后,系統(tǒng)將自動(dòng)彈出一個(gè)小鍵盤,通過按動(dòng)小鍵盤上的方向按鈕,實(shí)現(xiàn)零件的平移和旋轉(zhuǎn)。再按小鍵盤上的“退出”按鈕,關(guān)閉小鍵盤。6.打開菜單“機(jī)床/基準(zhǔn)工具?”,或單擊基準(zhǔn)工具圖標(biāo),系統(tǒng)彈出“基準(zhǔn)工具”對(duì)話框。選擇φ14×75 mm的剛性芯棒基準(zhǔn)工具,按“確定”按鈕,剛性芯棒基準(zhǔn)工具被放到機(jī)床上。7.點(diǎn)擊機(jī)床操作面板中“緊急停止”,“啟動(dòng)”操作按鈕,加載驅(qū)動(dòng),當(dāng)“機(jī)床電機(jī)”和“伺服控制”指示燈亮,表示機(jī)床已被激活。在回零指示狀態(tài)下(回零模式),選擇機(jī)床操作面板上的“X軸”、“Y軸”、“Z軸”,點(diǎn)擊“+”按鈕,此時(shí)X軸、Y軸、Z軸將回零,當(dāng)回到機(jī)床參考點(diǎn)時(shí),相應(yīng)操作面板上“X原點(diǎn)燈”、“Y原點(diǎn)燈”、“Z原點(diǎn)燈”的指示燈亮。

      8.點(diǎn)擊機(jī)床操作面板中“手動(dòng)”操作按鈕,將機(jī)床切換到JOG狀態(tài),進(jìn)入“手動(dòng)”方式,點(diǎn)擊MDI鍵盤的“POS”按鈕,LCD顯示刀架在機(jī)床坐標(biāo)系中的坐標(biāo)值,將零件毛坯移近基準(zhǔn)工具,準(zhǔn)備剛性芯棒采用檢查塞尺松緊的方式對(duì)刀。

      (1).利用機(jī)床操作面板上的選擇軸按鈕,單擊選擇“X軸”,再通過軸移動(dòng)鍵“+”,“-”,采用點(diǎn)動(dòng)方式移動(dòng)機(jī)床,將裝有基準(zhǔn)工具的機(jī)床主軸在X方向上移動(dòng)到工件左側(cè),借助“視圖”菜單中的動(dòng)態(tài)旋轉(zhuǎn)、動(dòng)態(tài)放縮、動(dòng)態(tài)平移等工具,調(diào)整工作區(qū)大小到工件左側(cè)的大致位置。取正向視圖,點(diǎn)擊菜單“塞尺檢查/1mm”,安裝塞尺。

      (2).點(diǎn)擊機(jī)床操作面板上“手動(dòng)脈沖”按鈕,切換到手輪方式,點(diǎn)擊操作面板右下角的“H”拉出手輪,選中X軸,調(diào)整手輪倍率。按鼠標(biāo)右鍵為主軸向X軸“-”方向運(yùn)動(dòng),按鼠標(biāo)左鍵為主軸向X軸“+”方向運(yùn)動(dòng),如此移動(dòng)芯棒,使得提示信息對(duì)話框顯示“塞尺檢查的結(jié)果:合適”。

      (3).記下塞尺檢查結(jié)果為“合適”時(shí)LCD界面中顯示的X坐標(biāo)值,此為基準(zhǔn)工具中心的X坐標(biāo),記為X1=-578.000 mm;將基準(zhǔn)工件直徑記為X2=14.000 mm,將塞尺厚度記為X3=1.000 mm,則:工件上表面左下角的X向坐標(biāo)為:基準(zhǔn)工具中心的X坐標(biāo)+基準(zhǔn)工具半徑+塞尺厚度,即:X=X1+X2/2+X3=-578+7+1=-570 mm。

      (4).在不改變Z向坐標(biāo)的情況下,將剛性芯棒在JOG手動(dòng)方式下移動(dòng)到零件的前側(cè),同理可得到工件上表面左下角的Y坐標(biāo):Y=Y1+Y2/2+Y3=-473+7+1=-465 mm。9.打開菜單“機(jī)床/選擇刀具”,或單擊選擇刀具圖標(biāo),選擇φ20 mm的鍵槽銑刀,按“確定”按鈕。點(diǎn)擊機(jī)床操作面板中“手動(dòng)”操作按鈕,將機(jī)床切換到JOG狀態(tài),進(jìn)入“手動(dòng)”方式,為主軸裝上實(shí)際加工刀具,點(diǎn)擊MDI鍵盤的“POS”按鈕,LCD顯示刀架在機(jī)床坐標(biāo)系中的坐標(biāo)值。

      利用機(jī)床操作面板上的選擇軸按鈕,單擊選擇“Z軸”,再通過軸移動(dòng)鍵“+”,“-”,采用點(diǎn)動(dòng)方式移動(dòng)機(jī)床,將裝有刀具的機(jī)床主軸在Z方向上移動(dòng)到工件上表面的大致位置。類似在X,Y方向?qū)Φ兜姆椒ㄟM(jìn)行塞尺檢查,得到“塞尺檢查:合適”時(shí)Z的坐標(biāo)值,記為Z1=-247.000 mm。則相應(yīng)刀具在工件上表面中心的Z坐標(biāo)值為:Z=Z1-塞尺厚度=-247-1=-248 mm。

      點(diǎn)擊MDI鍵盤的“OFFSET SETING”按鈕,進(jìn)入?yún)?shù)設(shè)置畫面,輸入刀具半徑補(bǔ)償D01=10.000 mm ,再點(diǎn)擊“坐標(biāo)系”軟鍵,進(jìn)入坐標(biāo)系設(shè)定畫面,將通過對(duì)刀得到的坐標(biāo)值(X、Y、Z)輸入G54坐標(biāo)系。10.點(diǎn)擊機(jī)床操作面板中“編輯”操作按鈕,再點(diǎn)擊MDI鍵盤的“PROG”按鈕,輸入O4;G01 X0 Y0 Z20.;再點(diǎn)擊機(jī)床操作面板中“自動(dòng)運(yùn)行”,“循環(huán)啟動(dòng)”操作按鈕,將刀具移動(dòng)到刀具起點(diǎn)。

      11.點(diǎn)擊機(jī)床操作面板中“編輯”操作按鈕,再點(diǎn)擊MDI鍵盤的“PROG”按鈕。打開菜單“機(jī)床/DNC傳送?”,在打開文件對(duì)話框中選取文件。在文件名列表框中選中文件O3,按“打開”確認(rèn)。按LCD畫面軟鍵“[(操作)]”,再點(diǎn)擊畫面軟鍵向右,再按畫面“[READ]”對(duì)應(yīng)軟鍵。在MDI鍵盤在輸入文件名O3。點(diǎn)擊畫面“[EXEC]”對(duì)應(yīng)軟鍵,即輸入預(yù)先編輯好的銑削加工程序,并在LCD顯示。

      12.點(diǎn)擊機(jī)床操作面板中“自動(dòng)運(yùn)行” 操作按鈕,點(diǎn)擊MDI鍵盤的“CUSFOM GRAPH”按鈕,程序執(zhí)行轉(zhuǎn)入檢查運(yùn)行軌跡模式;再點(diǎn)擊機(jī)床操作面板中“循環(huán)啟動(dòng)”操作按鈕,即可觀察數(shù)控程序的運(yùn)行軌跡。

      13.點(diǎn)擊MDI鍵盤的“CUSFOM GRAPH”按鈕,再點(diǎn)擊機(jī)床操作面板中“循環(huán)啟動(dòng)”操作按鈕,即可加工零件。14.打開菜單“文件/另存項(xiàng)目”,系統(tǒng)彈出“選擇保存類型”對(duì)話框,按“確定”按鈕。系統(tǒng)彈出“另存為”對(duì)話框,輸入O3.mac文件名,保存在桌面,按“保存”按鈕。

      六、數(shù)控銑床實(shí)驗(yàn)二(1)、實(shí)驗(yàn)內(nèi)容

      如圖B所示,毛坯尺寸為150×80×30,起刀點(diǎn)位置在編程坐標(biāo)系的(0,0,20)處,按圖示的工件尺寸編制銑削加工程序并仿真。突臺(tái)高5 mm,孔深10 mm,選用φ8 mm的鍵槽銑刀,φ20mm鉆頭,F(xiàn) 60 mm/min, S 750r/min。

      (2)、實(shí)驗(yàn)零件圖樣

      圖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系統(tǒng)仿真軟件面板操作過程 1.進(jìn)入宇龍數(shù)控加工仿真系統(tǒng)3.7版,首先啟動(dòng)加密鎖管理程序,然后啟動(dòng)數(shù)控加工仿真系統(tǒng)。

      2.打開菜單“機(jī)床/選擇機(jī)床?”,或單擊選擇機(jī)床圖標(biāo),系統(tǒng)彈出“選擇機(jī)床”對(duì)話框。選擇數(shù)控系統(tǒng)FANUC0i的銑床,選擇標(biāo)準(zhǔn),按“確定”按鈕,系統(tǒng)即可切換到銑床仿真加工界面。3.打開菜單“零件/定義毛坯”,或單擊定義毛坯圖標(biāo),系統(tǒng)彈出 “定義毛坯”對(duì)話框,點(diǎn)擊尺寸輸入框,改變毛坯尺寸為150×80×100 mm,按“確定”按鈕,保存定義的毛坯并且退出本操作。

      打開菜單“零件/安裝夾具”,或單擊夾具圖標(biāo),系統(tǒng)彈出“選擇夾具”對(duì)話框。在“選擇零件”列表框中選擇已定義毛坯。在“選擇夾具”列表框中選擇平口鉗,按“確定”按鈕。4.打開菜單“零件/放置零件”,或單擊放置零件圖標(biāo),系統(tǒng)彈出“選擇零件”對(duì)話框,在列表中點(diǎn)擊所需的零件,選中的零件信息加亮顯示,按下“安裝零件”按鈕,系統(tǒng)自動(dòng)關(guān)閉對(duì)話框,零件將被放到機(jī)床上。

      5.毛坯在放置到工作臺(tái)(三爪卡盤)后,系統(tǒng)將自動(dòng)彈出一個(gè)小鍵盤,通過按動(dòng)小鍵盤上的方向按鈕,實(shí)現(xiàn)零件的平移和旋轉(zhuǎn)。再按小鍵盤上的“退出”按鈕,關(guān)閉小鍵盤。6.打開菜單“機(jī)床/基準(zhǔn)工具?”,或單擊基準(zhǔn)工具圖標(biāo),系統(tǒng)彈出“基準(zhǔn)工具”對(duì)話框。選擇φ14×75 mm的剛性芯棒基準(zhǔn)工具,按“確定”按鈕,剛性芯棒基準(zhǔn)工具被放到機(jī)床上。7.點(diǎn)擊機(jī)床操作面板中“緊急停止”,“啟動(dòng)”操作按鈕,加載驅(qū)動(dòng),當(dāng)“機(jī)床電機(jī)”和“伺服控制”指示燈亮,表示機(jī)床已被激活。在回零指示狀態(tài)下(回零模式),選擇機(jī)床操作面板上的“X軸”、“Y軸”、“Z軸”,點(diǎn)擊“+”按鈕,此時(shí)X軸、Y軸、Z軸將回零,當(dāng)回到機(jī)床參考點(diǎn)時(shí),相應(yīng)操作面板上“X原點(diǎn)燈”、“Y原點(diǎn)燈”、“Z原點(diǎn)燈”的指示燈亮。

      8.點(diǎn)擊機(jī)床操作面板中“手動(dòng)”操作按鈕,將機(jī)床切換到JOG狀態(tài),進(jìn)入“手動(dòng)”方式,點(diǎn)擊MDI鍵盤的“POS”按鈕,LCD顯示刀架在機(jī)床坐標(biāo)系中的坐標(biāo)值,將零件毛坯移近基準(zhǔn)工具,準(zhǔn)備剛性芯棒采用檢查塞尺松緊的方式對(duì)刀。

      (1).利用機(jī)床操作面板上的選擇軸按鈕,單擊選擇“X軸”,再通過軸移動(dòng)鍵“+”,“-”,采用點(diǎn)動(dòng)方式移動(dòng)機(jī)床,將裝有基準(zhǔn)工具的機(jī)床主軸在X方向上移動(dòng)到工件左側(cè),借助“視圖”菜單中的動(dòng)態(tài)旋轉(zhuǎn)、動(dòng)態(tài)放縮、動(dòng)態(tài)平移等工具,調(diào)整工作區(qū)大小到工件左側(cè)的大致位置。取正向視圖,點(diǎn)擊菜單“塞尺檢查/1mm”,安裝塞尺。

      (2).點(diǎn)擊機(jī)床操作面板上“手動(dòng)脈沖”按鈕,切換到手輪方式,點(diǎn)擊操作面板右下角的“H”拉出手輪,選中X軸,調(diào)整手輪倍率。按鼠標(biāo)右鍵為主軸向X軸“-”方向運(yùn)動(dòng),按鼠標(biāo)左鍵為主軸向X軸“+”方向運(yùn)動(dòng),如此移動(dòng)芯棒,使得提示信息對(duì)話框顯示“塞尺檢 查的結(jié)果:合適”。

      (3).記下塞尺檢查結(jié)果為“合適”時(shí)LCD界面中顯示的X坐標(biāo)值,此為基準(zhǔn)工具中心的X坐標(biāo),記為X1=-583.000 mm;將基準(zhǔn)工件直徑記為X2=14.000 mm,將塞尺厚度記為X3=1.000 mm,則:工件上表面左下角的X向坐標(biāo)為:基準(zhǔn)工具中心的X坐標(biāo)+基準(zhǔn)工具半徑+塞尺厚度,即:X=X1+X2/2+X3=-583+7+1=-575 mm。

      (4).在不改變Z向坐標(biāo)的情況下,將剛性芯棒在JOG手動(dòng)方式下移動(dòng)到零件的前側(cè),同理可得到工件上表面左下角的Y坐標(biāo):Y=Y1+Y2/2+Y3=-463+7+1=-455 mm。9.打開菜單“機(jī)床/選擇刀具”,或單擊選擇刀具圖標(biāo),選擇φ8 mm的鍵槽銑刀,按“確定”按鈕。點(diǎn)擊機(jī)床操作面板中“手動(dòng)”操作按鈕,將機(jī)床切換到JOG狀態(tài),進(jìn)入“手動(dòng)”方式,為主軸裝上實(shí)際加工刀具,點(diǎn)擊MDI鍵盤的“POS”按鈕,LCD顯示刀架在機(jī)床坐標(biāo)系中的坐標(biāo)值。

      利用機(jī)床操作面板上的選擇軸按鈕,單擊選擇“Z軸”,再通過軸移動(dòng)鍵“+”,“-”,采用點(diǎn)動(dòng)方式移動(dòng)機(jī)床,將裝有刀具的機(jī)床主軸在Z方向上移動(dòng)到工件上表面的大致位置。類似在X,Y方向?qū)Φ兜姆椒ㄟM(jìn)行塞尺檢查,得到“塞尺檢查:合適”時(shí)Z的坐標(biāo)值,記為Z1=-317.000 mm。則相應(yīng)刀具在工件上表面中心的Z坐標(biāo)值為:Z=Z1-塞尺厚度=-317-1=-318 mm。

      點(diǎn)擊MDI鍵盤的“OFFSET SETING”按鈕,進(jìn)入?yún)?shù)設(shè)置畫面,輸入刀具半徑補(bǔ)償D01=4.000 mm ,刀具長(zhǎng)度補(bǔ)償H02=100.000 mm,再點(diǎn)擊“坐標(biāo)系”軟鍵,進(jìn)入坐標(biāo)系設(shè)定畫面,將通過對(duì)刀得到的坐標(biāo)值(X、Y、Z)輸入G54坐標(biāo)系。

      10.點(diǎn)擊機(jī)床操作面板中“編輯”操作按鈕,再點(diǎn)擊MDI鍵盤的“PROG”按鈕,輸入O5;G01 X0 Y0 Z20.;再點(diǎn)擊機(jī)床操作面板中“自動(dòng)運(yùn)行”,“循環(huán)啟動(dòng)”操作按鈕,將刀具移動(dòng)到刀具起點(diǎn)。

      11.點(diǎn)擊機(jī)床操作面板中“編輯”操作按鈕,再點(diǎn)擊MDI鍵盤的“PROG”按鈕。打開菜單“機(jī)床/DNC傳送?”,在打開文件對(duì)話框中選取文件。在文件名列表框中選中文件O4,按“打開”確認(rèn)。按LCD畫面軟鍵“[(操作)]”,再點(diǎn)擊畫面軟鍵向右,再按畫面“[READ]”對(duì)應(yīng)軟鍵。在MDI鍵盤在輸入文件名O4。點(diǎn)擊畫面“[EXEC]”對(duì)應(yīng)軟鍵,即輸入預(yù)先編輯好的銑削加工程序,并在LCD顯示。

      12.點(diǎn)擊機(jī)床操作面板中“自動(dòng)運(yùn)行” 操作按鈕,點(diǎn)擊MDI鍵盤 的“CUSFOM GRAPH”按鈕,程序執(zhí)行轉(zhuǎn)入檢查運(yùn)行軌跡模式;再點(diǎn)擊機(jī)床操作面板中“循環(huán)啟動(dòng)”操作按鈕,即可觀察數(shù)控程序的運(yùn)行軌跡。

      13.點(diǎn)擊MDI鍵盤的“CUSFOM GRAPH”按鈕,再點(diǎn)擊機(jī)床操作面板中“循環(huán)啟動(dòng)”操作按鈕,即可加工零件。再打開菜單“機(jī)床/選擇刀具”,或單擊選擇刀具圖標(biāo),選擇φ20 mm的鉆頭,按“確定”按鈕。點(diǎn)擊機(jī)床操作面板中“自動(dòng)運(yùn)行”、“循環(huán)啟動(dòng)” 操作按鈕,繼續(xù)加工零件。

      14.打開菜單“文件/另存項(xiàng)目”,系統(tǒng)彈出“選擇保存類型”對(duì)話框,按“確定”按鈕。系統(tǒng)彈出“另存為”對(duì)話框,輸入O4.mac文件名,保存在桌面,按“保存”按鈕。

      第五篇:JSP編程實(shí)驗(yàn)報(bào)告

      JSP編程實(shí)驗(yàn)報(bào)告

      學(xué)生姓名:學(xué)生班級(jí):學(xué)生學(xué)號(hào):指導(dǎo)教師:實(shí)驗(yàn)n(n-實(shí)驗(yàn)順序號(hào)):實(shí)驗(yàn)名稱

      一、實(shí)驗(yàn)?zāi)康亩?、?shí)驗(yàn)內(nèi)容及步驟

      三、源代碼

      四、運(yùn)行界面

      五、收獲和體會(huì)

      下載網(wǎng)絡(luò)編程實(shí)驗(yàn)報(bào)告word格式文檔
      下載網(wǎng)絡(luò)編程實(shí)驗(yàn)報(bào)告.doc
      將本文檔下載到自己電腦,方便修改和收藏,請(qǐng)勿使用迅雷等下載。
      點(diǎn)此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會(huì)在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦

        數(shù)控加工與編程實(shí)驗(yàn)報(bào)告

        數(shù)控加工與編程實(shí)訓(xùn)報(bào)告 學(xué)院: 專業(yè): 班級(jí): 學(xué)號(hào): 姓名: 指導(dǎo)老師: 一、 課程的任務(wù)和基本要求 《數(shù)控加工與變成實(shí)習(xí)》是機(jī)械設(shè)計(jì)組織及其自動(dòng)化專業(yè)在專業(yè)學(xué)習(xí)過程中一次重要的......

        網(wǎng)絡(luò)編程實(shí)習(xí)作業(yè)

        網(wǎng)絡(luò)編程實(shí)習(xí)作業(yè)一. 實(shí)習(xí)內(nèi)容: ? 了解插口(socket)實(shí)現(xiàn)原理。 ? 在某一種平臺(tái)(Linux,Unix系列或Windows系列)下進(jìn)行網(wǎng)絡(luò)客戶機(jī)-服務(wù)器編程。 二. 主要參考書目: ? W. Richard Steve......

        網(wǎng)絡(luò)編程常見問題總結(jié)

        網(wǎng)絡(luò)編程常見問題總結(jié) 網(wǎng)絡(luò)編程常見問題總結(jié) 串講(一) 網(wǎng)絡(luò)編程常見問題總結(jié) 在網(wǎng)絡(luò)程序中遇到的一些問題進(jìn)行了總結(jié), 這里主要針對(duì)的是我們常用的TCP socket相關(guān)的總結(jié),......

        網(wǎng)絡(luò)編程實(shí)習(xí)報(bào)告

        [實(shí)習(xí)目的] 通過理論聯(lián)系實(shí)際,鞏固所學(xué)的知識(shí),提高處理實(shí)際問題的能力,并為自己能順利與社會(huì)環(huán)境接軌做準(zhǔn)備。[實(shí)習(xí)任務(wù)]Linux下網(wǎng)絡(luò)服務(wù)器開發(fā)(基于C語言);本文總結(jié)了我對(duì)Linux......

        網(wǎng)絡(luò)編程實(shí)習(xí)報(bào)告

        廣東應(yīng)屆生實(shí)習(xí)報(bào)告網(wǎng)在線編輯整理本文。[實(shí)習(xí)目的] 通過理論聯(lián)系實(shí)際,鞏固所學(xué)的知識(shí),提高處理實(shí)際問題的能力,并為自己能順利與社會(huì)環(huán)境接軌做準(zhǔn)備。[實(shí)習(xí)任務(wù)]Linux下網(wǎng)絡(luò)服......

        網(wǎng)絡(luò)互聯(lián)實(shí)驗(yàn)報(bào)告

        網(wǎng)絡(luò)互聯(lián)實(shí)驗(yàn)報(bào)告書 課程:網(wǎng)絡(luò)互聯(lián)技術(shù) 任課老師:程克非 學(xué)院:計(jì)算機(jī)班級(jí):0430801 學(xué)號(hào):08490121 姓名:姚樹秘 日期:2010年12月13日 實(shí)驗(yàn)1 路由器的啟動(dòng)及CLI的編輯命令 一、實(shí)驗(yàn)......

        網(wǎng)絡(luò)實(shí)驗(yàn)報(bào)告(五篇模版)

        實(shí)驗(yàn)2-練習(xí)1 各主機(jī)打開協(xié)議分析器,進(jìn)入相應(yīng)的網(wǎng)絡(luò)結(jié)構(gòu)并驗(yàn)證網(wǎng)絡(luò)拓?fù)涞恼_性,如果通過拓?fù)潋?yàn)證,關(guān)閉協(xié)議分析器繼續(xù)進(jìn)行實(shí)驗(yàn),如果沒有通過拓?fù)潋?yàn)證,請(qǐng)檢查網(wǎng)絡(luò)連接。本練習(xí)將......

        網(wǎng)絡(luò)經(jīng)濟(jì)學(xué)實(shí)驗(yàn)報(bào)告

        山東建筑大學(xué) 商學(xué)院·實(shí)驗(yàn)報(bào)告 課程名稱: 網(wǎng)絡(luò)經(jīng)濟(jì)學(xué) 班 級(jí): 電商121 學(xué)生姓名: 王旺 學(xué) 號(hào): 20120914038 成 績(jī): 指導(dǎo)教師: 吳 學(xué) 霞 所屬學(xué)期: 2014 - 2015 學(xué)年第 2 學(xué)期 實(shí)驗(yàn)......