<nobr id="zkazv"></nobr>

      午夜精品一区二区三区成人,中文字幕av一区二区,亚洲AVAV天堂AV在线网阿V,肥臀浪妇太爽了快点再快点,国产网友愉拍精品视频手机,国产精品无码a∨麻豆,久久中文字幕一区二区,a级国产乱理伦片在线观看al
      首頁 新聞 工控搜 論壇 廠商論壇 產品 方案 廠商 人才 文摘 下載 展覽
      中華工控網首頁
        P L C | 變頻器與傳動 | 傳感器 | 現場檢測儀表 | 工控軟件 | 人機界面 | 運動控制
        D C S | 工業以太網 | 現場總線 | 顯示調節儀表 | 數據采集 | 數傳測控 | 工業安全
        電 源 | 嵌入式系統 | PC based | 機柜箱體殼體 | 低壓電器 | 機器視覺
      單片機與mpc006運動控制模塊組成的三軸運動控制系統
      y6yy44y
      收藏本文     查看收藏

       

       

      單片機與mpc006運動控制模塊組成的三軸運動控制系統

       

      摘要:采用單片機stc89C2051和mpc006微型運動控制模塊作為控制系統的核心,控制三路步進電機做運動實驗。單片機發送指令給mpc006微型運動控制模塊,模塊信號輸出給步進驅動器作高速度運動。可以定點運動,直線插補和圓弧插補。

       

       

       1.引言

      運動控制的應用在國內已有十幾年的歷史,技術也相當成熟。通常運動控制都需要用到運動控制卡,運動控制器等產品,但這些產品價格高昂,使用復雜,也不適合由單片機構成的控制系統。而如果直接采用單片機來做運動控制,由于運動控制對系統性能要求非常高,單片機速度資源有限,難以設計出性能優良的運動控制模型。因此,本文采用單片機和專業的mpc006微型運動控制模塊構成運動控制系統。

      MPC006微型運動控制模塊采用新型FPGA設計,集成實用運動控制功能,可與普通單片機通過串口通訊對步進電機和伺服電機控制。具有如下特點:

      ◆   串口通訊,僅需使用幾條指令,簡單可靠。

      ◆   單模塊最高六軸輸出,多個模塊組網工作可達120軸。

      ◆   最大脈沖輸出頻率為2MHz,脈沖輸出使用脈沖+方向方式。

      ◆   最高六軸獨立運動控制,任意兩軸直線插補,任意兩軸圓弧插補。

      ◆   每軸一路硬件回原點。

      ◆   模塊帶1000級指令緩存深度,指令先進先出。

      ◆  模塊體積小巧,僅3.5*2.5*1.5cm,雙排直插30腳。

       

       

      2,系統硬件設計

      硬件系統由四部分構成:

      1. 單片機部分

      單片機與模塊只需三根線連接,用作串口通訊的RXD和TXD,用作模塊緩存滿輸出的BUSY信號。P3.7引出一按鍵作為測試使用。

       

       

       

      1. mpc006微型運動控制模塊部分

      mpc006微型運動控制模塊采用5V電源供電,RXD,TXD,BUSY與單片機連接。X0,X1,X2可作為三路電機的原點信號,P1,D1為1軸的脈沖和方向信號。P2,D2為2軸的脈沖和方向信號。P3,D3為3軸的脈沖和方向信號。

       

       

       

       

      (3)原點信號輸入部分

      原點采用光藕隔離輸入,輸入端可接NPN型光電開關來作為原點信號。

       

       

       

       

       

      1. 信號輸出部分

      輸出采用NPN晶體管極電極開路輸出,分別接到電機驅動器脈沖和方向信號輸入端。

       

       

       

      3,系統軟件設計

       

      MPC006微型運動控制模塊與單片機串口通訊速率為115200bps,數據位為8位,停止位0位,無校驗。使用函數前先設置好單片機的串口功能,并將需要用到的函數的原型拷貝到當前程序內。

      試驗程序如下:

       

      #include <reg52.h>

       

      //-----STC89C2051-------

      sfr IPH           =0XB7;        

      sfr   CCON     =0XD8;

      sfr   CMOD    =0XD9;

      sfr   CL          =0XE9;

      sfr   CH          =0XF9;

      sfr   CCAP0L  =0XEA;

      sfr   CCAP0H =0XFA;

      sfr   CCAPM0 =0XDA;

      sfr   CCAPM1 =0XDB;

      sfr P3M1= 0XB1;

      sfr P3M0= 0XB2;

      sfr P1M1= 0X91;

      sfr P1M0= 0X92;

      sfr WAKE_CLKO= 0X8f;

      sfr BRT     =0x9c;

      sfr AUXR     =0x8E;

      sfr AUXR1   = 0xA2;   

      sfr WDT_CONTR = 0xc1;         

      sfr T2MOD  = 0xC9;           

      //////////////////

       

       

      sbit busy = P3^2;

      sbit s1     =     P3^7;

       

       void initial()

      {

             P3M1 = 0x00;

             P3M0 = 0x80;

             P1M1 = 0x00;

             P1M0 = 0xf9;                                  

      }

       void init_uart()

      {

        PCON &= 0x7f;  //波特率不倍速

         SCON = 0x50;  //8位數據,可變波特率

         BRT = 0xFD;      //設定獨立波特率發生器重裝值 波特率115200bps

         AUXR |= 0x04;  //獨立波特率發生器時鐘為Fosc,即1T

         AUXR |= 0x01;  //串口1選擇獨立波特率發生器為波特率發生器

         AUXR |= 0x10;  //啟動獨立波特率發生器

      }

       

       

       

       

       

       

      /*

      串口發送一個字節,需根據所使用的單片機作適當更改。

      */

       void USART_Txbyte(unsigned char i)

      {

          SBUF   =   i;

          while(TI ==0); //等待發送完成

          TI     =   0;  //清零串口發送完成中斷請求標志

      }

       

      /*

      串口接收模塊返回的10個字節數據,需根據所使用的單片機作適當更改。

      */

       void receive(unsigned char *buf)

      {

      unsigned char i;

      for(i=0;i<10;i++)

         {

         while(RI==0);

           RI=0;

         buf[i]=SBUF;

         }

      }

       

      /*

      串口發送一串數據。

      */

      void USRAT_transmit(unsigned char *fdata,unsigned char len)

      {

         unsigned char i;                                                                           

                   

         for(i=0;i<len;i++)

         {

            USART_Txbyte(fdata[i]);       

         }

       

      }   

       

       

       

      /*

      函數名:   inp_move

      功能:二軸直線插補

      參數:

      cardno    卡號

      no1   X軸軸號

      no2   Y軸軸號

      pulse1,pulse2                       X-Y軸移動的距離,范圍(-8388608~+8388607)

      mode  0:相對坐標  1:絕對坐標

      返回值:

      0 失敗           1  成功

      */

      unsigned char inp_move(unsigned char cardno,unsigned char no1 ,unsigned char no2 , long pulse1  ,long pulse2 ,unsigned char mode )

      {

      unsigned char OutByte[25];

      unsigned char inbuf[12];

      OutByte[0] = 0x68;

      OutByte[1] = 0x0F;

      OutByte[2] = cardno;

      OutByte[3] = 0x7;

      OutByte[4] = no1;

      OutByte[5] = no2;

      OutByte[6] = pulse1>>24;

      OutByte[7] = pulse1 >>16;

      OutByte[8] = pulse1>> 8;

      OutByte[9] = pulse1;

      OutByte[10] = pulse2 >>24;

      OutByte[11] = pulse2 >>16;

      OutByte[12] = pulse2 >>8;

      OutByte[13] = pulse2 ;

      OutByte[14] = mode;

      OutByte[15] =OutByte[1] +OutByte[2] +OutByte[3] +OutByte[4]+OutByte[5] +OutByte[6] +OutByte[7] +OutByte[8] +OutByte[9] +OutByte[10] +OutByte[11] + \

      OutByte[12] +OutByte[13] +OutByte[14];

      USRAT_transmit(OutByte,16);

      receive(inbuf);

      return 1;

      }

       

       

       

      /*

      函數名: inp_arc

      功能:二軸圓弧插補

      參數:

      cardno    卡號

      no1         參與插補X軸的軸號

      no2         參與插補Y軸的軸號

      x,y          圓弧插補的終點位置(相對于起點),范圍(-8388608~+8388607)                     

      i,j            圓弧插補的圓心點位置(相對于起點),范圍(-8388608~+8388607)

      mode      0:順時針插補   1:逆時針插補

      返回值:

      0 失敗           1  成功

      */

      unsigned char inp_arc(unsigned char cardno ,unsigned char no1,unsigned char no2, long X , long y, long i, long j,unsigned char mode )

      {

      unsigned char OutByte[25];

      unsigned char inbuf[12];

      OutByte[0] = 0x68;

      OutByte[1] = 0x17;

      OutByte[2] = cardno;

      OutByte[3] = 0x7;

      OutByte[4] = no1;

      OutByte[5] = no2;

      OutByte[6] = X >>24;

      OutByte[7] = X >>16;

      OutByte[8] = X >>8;

      OutByte[9] = X ;

      OutByte[10] = y >>24;

      OutByte[11] = y >>16;

      OutByte[12] = y >>8;

      OutByte[13] = y ;

      OutByte[14] = i >>24;

      OutByte[15] = i >>16;

      OutByte[16] = i >>8;

      OutByte[17] = i ;

      OutByte[18] = j >>24;

      OutByte[19] = j >>16;

      OutByte[20] = j >>8;

      OutByte[21] = j ;

      OutByte[22] = mode;

      OutByte[23] =OutByte[1] +OutByte[2] +OutByte[3] +OutByte[4] +OutByte[5] +OutByte[6] +OutByte[7] +OutByte[8] +OutByte[9] +OutByte[10] +OutByte[11] + \

      OutByte[12] +OutByte[13] +OutByte[14] +OutByte[15] +OutByte[16] +OutByte[17] +OutByte[18] +OutByte[19] +OutByte[20] +OutByte[21] +OutByte[22] ;

      USRAT_transmit(OutByte,24);   

      receive(inbuf);

      return 1;

      }

       

      /*

      函數名:  set_speed

      功能:設置軸速度

      參數:

      cardno    卡號

      axis  軸號(1-6)

      acc     加速時間(ms)

      dec     減速時間(ms)

      startv     啟動頻率(*100Hz)

      speed      運行頻率(*100Hz)

      返回值:

      0 失敗           1  成功

      */

      unsigned char set_speed(unsigned char cardno ,unsigned char axis ,unsigned int acc  ,unsigned int dec  ,unsigned int startv ,unsigned int speed )

      {

      unsigned char OutByte[25];

      unsigned char inbuf[12];

      OutByte[0] = 0x68;

      OutByte[1] = 0xD;

      OutByte[2] = cardno;

      OutByte[3] = 1;

      OutByte[4] = axis;

      OutByte[5] = acc >>8;

      OutByte[6] = acc ;

      OutByte[7] = dec >>8;

      OutByte[8] = dec ;

      OutByte[9] = startv >>8;

      OutByte[10] = startv ;

      OutByte[11] = speed >>8;

      OutByte[12] = speed ;

      OutByte[13] =OutByte[1] +OutByte[2] +OutByte[3] +OutByte[4] +OutByte[5] +OutByte[6] +OutByte[7] +OutByte[8] +OutByte[9] +OutByte[10] +OutByte[11] +

      OutByte[12] ;

      USRAT_transmit(OutByte,14);

      receive(inbuf);

      return 1;

      }

       

      /*

      函數名: set_soft_limit

      功能:設置軸軟件限位

      參數:

      cardno    卡號

      axis         軸號(1-6)

      pulse1            負方向限位脈沖值,范圍(-8388608~0)                          

      pulse2            正方向限位脈沖值,范圍(0~+8388607)

      返回值:

      0 失敗           1  成功

      */

      unsigned char set_soft_limit(unsigned char cardno ,unsigned char axis ,unsigned char mode, long pulse1 , long pulse2 )

      {

      unsigned char OutByte[25];

      unsigned char inbuf[12];

      OutByte[0] = 0x68;

      OutByte[1] = 0xE;

      OutByte[2] = cardno ;

      OutByte[3] = 0x13;

      OutByte[4] = axis;

      OutByte[5] = mode;

      OutByte[6] = pulse1 >>24;

      OutByte[7] = pulse1 >>16;

      OutByte[8] = pulse1 >>8;

      OutByte[9] = pulse1 ;

      OutByte[10] = pulse2 >>24;

      OutByte[11] = pulse2 >>16;

      OutByte[12] = pulse2 >>8;

      OutByte[13] = pulse2 ;

      OutByte[14] =OutByte[1] +OutByte[2] +OutByte[3] +OutByte[4] +OutByte[5] +OutByte[6] +OutByte[7] +OutByte[8] +OutByte[9] +OutByte[10] +OutByte[11] +

      OutByte[12] +OutByte[13] ;

      USRAT_transmit(OutByte,15);

      receive(inbuf);

      return 1;

      }

       

       

       

      /*

      函數名: pmove

      功能:單軸運行

      參數:

      cardno    卡號

      axis         軸號(1-6)

      pulse      輸出的脈沖數 >0:正方向移動       <0:負方向移動   范圍(-268435455~+268435455)

      mode      0:相對位置   1:絕對位置

      返回值:

      0 失敗           1  成功

      */

      unsigned char pmove(unsigned char cardno ,unsigned char axis,long pulse , unsigned char mode)

      {

      unsigned char OutByte[25];

      unsigned char inbuf[12];

      OutByte[0] = 0x68;

      OutByte[1] = 0xA ;

      OutByte[2] = cardno;

      OutByte[3] = 2       ;

      OutByte[4] = axis;

      OutByte[5] = pulse >>24;

      OutByte[6] = pulse >>16;

      OutByte[7] = pulse >>8;

      OutByte[8] = pulse ;

      OutByte[9] = mode ;

      OutByte[10] =OutByte[1] +OutByte[2] +OutByte[3] +OutByte[4] +OutByte[5] +OutByte[6] +OutByte[7] +OutByte[8] +OutByte[9] ;

      USRAT_transmit(OutByte,11);

      receive(inbuf);

      return 1;

      }

       

       

       

      /*

      函數名: wait_delay

      功能:等待延時數

      參數:

      cardno    卡號

      value     延時量(1-10000)MS

      返回值:

      0 失敗           1  成功

      */

      unsigned char wait_delay(unsigned char cardno ,unsigned int value)

      {

      unsigned char OutByte[25];

      unsigned char inbuf[12];

      OutByte[0] = 0x68 ;

      OutByte[1] = 0x6 ;

      OutByte[2] = cardno ;

      OutByte[3] = 0xE ;

      OutByte[4] = value >>8;

      OutByte[5] = value ;

      OutByte[6] =OutByte[1] +OutByte[2] +OutByte[3] +OutByte[4] +OutByte[5];

      USRAT_transmit(OutByte,7);

      receive(inbuf);

      return 1;

      }

       

      /*

      函數名:   set_command_pos

      功能: 設置軸邏輯位置

      參數:

      cardno    卡號

      axis  軸號(1-6)

      pulse      位置脈沖數,范圍(-268435455~+268435455)

      返回值:

      0 失敗           1  成功

      */

      unsigned char set_command_pos(unsigned char cardno ,unsigned char axis, long value )

      {

      unsigned char OutByte[25];

      unsigned char inbuf[12];

      OutByte[0] = 0x68 ;

      OutByte[1] = 0x9 ;

      OutByte[2] = cardno ;

      OutByte[3] = 0x12 ;

      OutByte[4] = axis ;

      OutByte[5] = value >>24;

      OutByte[6] = value >>16;

      OutByte[7] = value >>8;

      OutByte[8] = value ;

      OutByte[9] =OutByte[1] +OutByte[2] +OutByte[3] +OutByte[4] +OutByte[5] +OutByte[6] +OutByte[7] +OutByte[8] ;

      USRAT_transmit(OutByte,10);

      receive(inbuf);

      return 1;

      }

       

       

       /*

      函數名: wait_pulse

      功能:等待軸脈沖數

      參數:

      cardno    卡號

      axis  軸號(1-6)

      pulse      位置脈沖數,范圍(-268435455~+268435455)

      返回值:

      0 失敗           1  成功

      */

      unsigned char wait_pulse(unsigned char cardno ,unsigned char axis, long value )

      {

      unsigned char OutByte[25];

      unsigned char inbuf[12];

      OutByte[0] = 0x68;

      OutByte[1] = 0x9 ;

      OutByte[2] = cardno ;

      OutByte[3] = 0x19;

      OutByte[4] = axis ;

      OutByte[5] = value >>24;

      OutByte[6] = value >>16;

      OutByte[7] = value >>8;

      OutByte[8] = value ;

      OutByte[9] =OutByte[1] +OutByte[2] +OutByte[3] +OutByte[4] +OutByte[5] +OutByte[6] +OutByte[7] +OutByte[8] ;

      USRAT_transmit(OutByte,10);

      receive(inbuf);

      return 1;

      }

       

       

       

      /*

      函數名: write_bit

      功能:寫輸出口狀態

      參數:

      cardno    卡號

      number  端口號(0-8)  Y0-Y8

      value   狀態(0,1) 0 輸出低電平   1 輸出高電平

      返回值:

      0 失敗           1  成功

      */

      unsigned char write_bit(unsigned char cardno , unsigned char number, unsigned char value)

      {

      unsigned char OutByte[25];

      unsigned char inbuf[12];

      OutByte[0] = 0x68 ;

      OutByte[1] = 0x6  ;

      OutByte[2] = cardno ;

      OutByte[3] = 3       ;

      OutByte[4] = number;

      OutByte[5] = value;

      OutByte[6] =OutByte[1] +OutByte[2] +OutByte[3] +OutByte[4] +OutByte[5] ;

      USRAT_transmit(OutByte,7);

      receive(inbuf);

      return 1;

      }

       

       

       

       

      /*

      函數名: sudden_stop

      功能: 軸停止

      參數:

      cardno    卡號

      axis  停止的軸號(1-6)

      返回值:

      0 失敗           1  成功

      */

      unsigned char sudden_stop(unsigned char cardno ,unsigned char axis)

      {

      unsigned char OutByte[25];

      unsigned char inbuf[12];

      OutByte[0] = 0x68;

      OutByte[1] = 0x5;

      OutByte[2] = cardno ;

      OutByte[3] = 0x17 ;

      OutByte[4] = axis ;

      OutByte[5] =OutByte[1] +OutByte[2] +OutByte[3] +OutByte[4] ;

      USRAT_transmit(OutByte,6);

      receive(inbuf);

      return 1;

      }

       

       

      /*

      函數名: wait_in

      功能: 等待輸入口狀態

      參數:

      cardno    卡號

      number  端口號(0-6)  X0-X6

      value   狀態(0,1) 0 輸入低電平   1 輸入高電平

      返回值:

      0 失敗           1  成功

      */

      unsigned char wait_in( unsigned char cardno, unsigned char number, unsigned char value)

      {

      unsigned char OutByte[25];

      unsigned char inbuf[12];

      OutByte[0] = 0x68 ;

      OutByte[1] = 0x6  ;

      OutByte[2] = cardno;

      OutByte[3] = 0xF  ;

      OutByte[4] = number ;

      OutByte[5] = value ;

      OutByte[6] =OutByte[1] +OutByte[2] +OutByte[3] +OutByte[4] +OutByte[5];

      USRAT_transmit(OutByte,7);

      receive(inbuf);

      return 1;

      }

       

       

      /*

      函數名: wait_stop

      功能:等待軸停止

      參數:

      cardno    卡號

      axis  需要停止的軸號

      返回值:

      0 失敗           1  成功

      */

      unsigned char wait_stop(unsigned char cardno ,unsigned char axis)

      {

      unsigned char OutByte[25];

      unsigned char inbuf[12];

      OutByte[0] = 0x68  ;

      OutByte[1] = 0x5 ;

      OutByte[2] = cardno ;

      OutByte[3] = 9       ;

      OutByte[4] = axis ;

      OutByte[5] =OutByte[1] +OutByte[2] +OutByte[3] +OutByte[4];

      USRAT_transmit(OutByte,6);

      receive(inbuf);

      return 1;

      }

       

       

       

      /*

      函數名:  get_number

      功能:獲取唯一序列號

      參數:

      cardno    卡號

      返回值: 32位序列號

       

      */

      unsigned long get_number(unsigned char cardno )

      {

      unsigned char OutByte[25];

      unsigned char inbuf[12];

      OutByte[0] = 0x68 ;

      OutByte[1] = 0x4 ;

      OutByte[2] = cardno;

      OutByte[3] = 0xC ;

      OutByte[4] =OutByte[1] +OutByte[2] +OutByte[3] ;

      USRAT_transmit(OutByte,5);

      receive(inbuf);

      return (unsigned long)inbuf[4]<<24+(unsigned long)inbuf[5]<<16+(unsigned long)inbuf[6]<<8+(unsigned long)inbuf[7];

      }

       

       

       

      /*

      函數名: get_status

      功能:獲取各軸工作狀態

      參數:

      cardno    卡號

      返回值: 8位二進制,1-6位分別代表1-6軸狀態,0表示停止中,1表示運行中。

      */

      unsigned char get_status( unsigned char cardno)

      {

      unsigned char OutByte[25];

      unsigned char inbuf[12];

      OutByte[0] = 0x68  ;

      OutByte[1] = 0x4  ;

      OutByte[2] = cardno ;

      OutByte[3] = 5 ;

      OutByte[4] =OutByte[1] +OutByte[2] +OutByte[3] ;

      USRAT_transmit(OutByte,5);

      receive(inbuf);

      return inbuf[4];

      }

       

       

      /*

      函數名: get_command_pos

      功能: 獲取軸邏輯位置

      參數:

      cardno    卡號

      axis  軸號

      返回值:      位置脈沖數,范圍(-268435455~+268435455)

      */

      unsigned long  get_command_pos( unsigned char cardno, unsigned char axis)

      {

      unsigned char OutByte[25];

      unsigned char inbuf[12];

      OutByte[0] = 0x68  ;

      OutByte[1] = 0x5  ;

      OutByte[2] = cardno  ;

      OutByte[3] = 6       ;

      OutByte[4] = axis ;

      OutByte[5] =OutByte[1] +OutByte[2] +OutByte[3] +OutByte[4] ;

      USRAT_transmit(OutByte,6);

      receive(inbuf);

      return (unsigned long)inbuf[5]<<24+(unsigned long)inbuf[6]<<16+(unsigned long)inbuf[7]<<8+(unsigned long)inbuf[8];

      }

       

       

       

      /*

      函數名: set_cardno

      功能:設置卡號

      參數:

      cardno    卡號(1-255)

      返回值:

      0 失敗           1  成功

      */

      unsigned char set_cardno(unsigned char cardno)

      {

      unsigned char OutByte[25];

      unsigned char inbuf[12];

      OutByte[0] = 0x68  ;

      OutByte[1] = 5       ;

      OutByte[2] = 0         ;

      OutByte[3] = 0xFA ;

      OutByte[4] = cardno ;

      OutByte[5] =OutByte[1] +OutByte[2] +OutByte[3] +OutByte[4] ;

      USRAT_transmit(OutByte,6);

      receive(inbuf);

      return 1;

      }

       

       

       

       

       

       

      void main(void)

      {

         initial();

         init_uart();

       

       

       

         set_cardno(1);                //設卡號為1

         while(1)

              {

                  

              if(!s1)//按鍵按下

                {

                 set_speed(1 ,1,1000,1000,10,200);         // 設1軸速度

              set_speed(1 ,2,1000,1000,10,200);         // 設2軸速度

              set_speed(1 ,3,1000,1000,10,200);         // 設3軸速度

       

               /*1軸回原點*/

               pmove(1,1,-1000000,0);               //  1軸運動

               wait_in(1,0,1);                            //   等待X0為高

               sudden_stop(1,1);                      //      1軸停止

              set_command_pos(1,1,0);            //        設1軸此時坐標為0

                    pmove(1,2,3200,0);                //  2軸運動

                    pmove(1,3,-3200,0);               //  3軸運動   

                  while(!s1);

                }

            

            

              }

           

      }

       

       

       

       

      4結束語

      單片機和mpc006運動控制模塊構成的系統,使單片機徹底地從復雜的運動控制算法中解放出來,單片機只需簡單地使用幾條指令來控制模塊便可完成運動控制,從而能將更多的資源用來參與其它方面的控制,對構建一個穩定的控制系統具有重大意義。     

       

       

      本文來自泰安迪科技:www.mpc000.com   轉載請注明出處。

       

       

       

       


       

      狀 態: 離線

      會員簡介

      會員代號: w75815895
      聯 系 人: tytt66
      電  話: 0755-25653265
      傳  真:
      地  址: rryyy44y
      郵  編: 165468
      主  頁:
       
       
       
      立即發送詢問信息在線聯系該技術文摘廠商:
      用戶名: 密碼: 免費注冊為中華工控網會員
      請留下您的有效聯系方式,以方便我們及時與您聯絡

      關于我們 | 聯系我們 | 廣告服務 | 本站動態 | 友情鏈接 | 法律聲明 | 不良信息舉報
      工控網客服熱線:0755-86369299
      版權所有 中華工控網 Copyright©2022 Gkong.com, All Rights Reserved

      主站蜘蛛池模板: 精品国产一区二区亚洲人| 国产精品人成在线观看免费| 亚洲高清免费在线观看| 国产精品无码一区二区三区电影| 国产中文字幕在线精品| 国产av一区二区不卡| 亚洲精品一区二区三区蜜| 国产91麻豆精品成人区| 亚洲自在精品网久久一区| 国产免费午夜福利蜜芽无码| 国产AV无码专区亚洲AWWW| 国产亚洲精品在av| 91人妻无码成人精品一区91| 久9视频这里只有精品试看| 免费VA国产高清大片在线| 日本高清一区免费中文视频| 国产成人毛片无码视频软件| 国产精品大全中文字幕| 中文字幕国产精品自拍| 97成人碰碰久久人人超级碰oo| 成人精品老熟妇一区二区| 国产九九视频一区二区三区| 一区二区亚洲人妻av| 视频一区二区三区刚刚碰| 精品国产一区二区三区大| 久久综合精品成人一本| 久久a级片| 他掀开裙子把舌头伸进去添视频| 成在线人永久免费视频播放| 久久精品无码鲁网中文电影 | 亚洲va久久久噜噜噜久久狠狠| 色猫咪av在线网址| 日韩精品亚洲专在线电影| 国产情侣激情在线对白| 日本高清中文字幕免费一区二区 | 中文字幕日韩有码第一页| 亚洲综合精品香蕉久久网| 亚洲国产精品综合色在线| 九色综合国产一区二区三区| 精品一区二区三区四区激情| 久久精品99国产精品亚洲|