无码中文字幕色专区_91av俱乐部_无码人妻h动漫_26uuu成人_91九色丨porny丨国产jk_青青视频在线播放_国内自拍第二页_国产又粗又长又爽又黄的视频_色哟哟免费网站_久久出品必属精品_a级黄色一级片_99日在线视频

首頁 新聞 工控搜 論壇 廠商論壇 產品 方案 廠商 人才 文摘 下載 展覽
中華工控網首頁
  P L C | 變頻器與傳動 | 傳感器 | 現場檢測儀表 | 工控軟件 | 人機界面 | 運動控制
  D C S | 工業以太網 | 現場總線 | 顯示調節儀表 | 數據采集 | 數傳測控 | 工業安全
  電 源 | 嵌入式系統 | PC based | 機柜箱體殼體 | 低壓電器 | 機器視覺
EtherCAT運動控制器實時數據的Qt示波器
深圳市正運動技術有限公司
收藏本文     查看收藏

ZMC408CE 高性能總線型運動控制器

ZMC408CE是正運動推出的一款多軸高性能EtherCAT總線運動控制器,具有EtherCAT、EtherNET、RS232、CAN和U盤等通訊接口,ZMC系列運動控制器可應用于各種需要脫機或聯機運行的場合。

ZMC408CE.png

ZMC408CE支持PLC、Basic、HMI組態三種編程方式。PC上位機API編程支持C#、C++、LabVIEW、Matlab、Qt、Linux、VB.Net、Python等接口。

API.png

ZMC408CE硬件功能特性:

1.支持8軸運動控制(脈沖+EtherCAT總線),EtherCAT同步周期可快至125us;

2.24路通用輸入、16路通用輸出,模擬量AD/DA各兩路;

3.8路10MHz高速差分脈沖輸出,總線軸、脈沖軸可混合插補;

4.高性能處理器,提升運算速度、響應時間和掃描周期等;

5.一維/二維/三維、多通道視覺飛拍,高速高精;

6.位置同步輸出PSO,連續軌跡加工中對精密點膠膠量控制和激光能量控制等;

7.多軸同步控制,多坐標系獨立控制等;

8.直線插補、任意空間圓弧插補、螺旋插補、樣條插補等;

9.應用靈活,可PC上位機開發,也可脫機獨立運行;

ZMC408CE視頻介紹,點擊→“高性能EtherCAT總線運動控制器,帶你玩轉“8通道獨立PSO”應用場景”查看。

更多關于ZMC408CE的詳情介紹,點擊“推薦|8通道PSO的高性能EtherCAT總線運動控制器查看。

PCIE464M PCIe EtherCAT總線運動控制卡

PCIE464M是一款基于PCIe的PCI Express的EtherCAT總線運動控制卡,具有多項實時和高精度運動控制控制功能。

PCIE464M.png

PCIE464M運動控制卡上自帶16進16出,第三方圖像處理工控機或PC無需額外配置IO數據采集卡和PLC,即可實現IPC形態的機器視覺運動控制一體機,簡化硬件架構,節省成本,軟硬件一體化。

IPC.png

PCIE464M硬件功能特性:

1.可選6-64軸運動控制,支持EtherCAT總線/脈沖/步進伺服驅動器;

2.聯動軸數最高可達16軸,運動周期最小為100μs;

3.標配16進16出,其中4路高速鎖存輸入、4路高速PWM和12路高速硬件比較輸出PSO;

4.支持PWM輸出、1D/2D/3D PSO硬件位置比較輸出、視覺飛拍、連續軌跡插補等;

5.支持30+機械手模型正逆解模型算法,比如SCARA、Delta、UVW、4軸/5軸 RTCP...;

6.支持掉電存儲和掉電中斷,多重加密,提供程序更安全機制;

7.8路單端脈沖軸、4路單端編碼器軸;

8.具有一維、二維螺距補償控制,實現更高的加工精度;

PCIE464M視頻介紹,點擊→“超高速PCle EtherCAT控制卡PCIE464M,即刻提升高速高精智能裝備生產力!”查看。

更多關于PCIE464M的詳情介紹,點擊“PCIE464M-高速高精,超高速PCIe EthrtCAT實時運動控制卡”查看。

ECI2A18B 高性價比10軸運動控制卡

ECI2A18B是正運動推出的一款高性價比10軸脈沖型、模塊化的網絡型運動控制卡,采用優化的網絡通訊協議可以實現實時的運動控制,同時支持多種通信協議,方便與其他工業控制設備連接和集成。安裝配置相對便捷,適合于模塊化和靈活性要求較高的控制系統。

ECI2A18B.png

ECI2A18B控制卡最大可擴展至12脈沖軸,支持8路高速輸入和4路高速輸出,集成豐富的運動控制功能,包含多軸點位運動、電子凸輪,直線插補,圓弧插補,連續插補運動等,滿足多樣化的工業應用需求。

接線圖.png

ECI2A18B硬件功能特性:

1.支持6路差分脈沖軸+4路單端脈沖軸運動控制;

2.支持1路專用的手輪輸入接口;

3.差分脈沖軸最大輸出脈沖頻率10MHz;

4.標配24+12進16+6出,其中支持4路高速鎖存,4路高速PWM,2路高速硬件比較輸出PSO(可選支持HW2功能);

5.可支持RTSys+其他高級上位機編程語言的混合編程支持;

6.支持RTBasic多任務編程;

ECI2A18B視頻介紹,點擊→“【加量不加價】高性價比十軸脈沖運動控制卡ECI2A18B 讓您的設備在自動化行業內卷中脫穎而出!”查看。

更多關于ECI2A18B的詳情介紹,點擊“【加量不加價】正運動網絡型運動控制卡ECI2618B/ECI2A18B查看。
 

一、RTSys示波器介紹

正運動RTSys軟件提供了示波器采集與分析工具,通過該工具可以把系統內部的系統變量與數據轉換成圖形顯示,便于研究各種信號的變化趨勢與數據測量的過程。

示波器利用控制器內部處理的數據,把數據顯示成波形,利用示波器可以顯示各種不同的信號。

一.RTSys示波器介紹.png

詳情點擊→運動控制看的更清楚細致!RTSys示波器功能簡介

二、QT程序開發流程

1.在Qt Creator菜單選擇“文件”→“新建文件或項目”,打開創建項目向導。選擇Application項目集,創建Qt Widgets Application項目,設置項目名稱和保存位置。

1.png

2.導入廠家提供的相關函數庫及頭文件。

(1)將zmotion.h和zauxdll2.h頭文件、zauxdll.dll和zmotion.dll以及zmotion.lib和zauxdll.lib庫復制到新建的項目文件夾中。

2.png

(2)在Qt Creator選擇新建的Qt項目右擊選擇“添加庫...”→“外部庫”點擊下一步,將剛才復制到項目文件夾上的zmotion.lib和zauxdll.lib庫文件導入到項目中。

3.png

3.在Qt Creator下右擊新建的Qt項目,選擇“添加現有文件...”,將之前復制到項目文件下的頭文件zmotion.h和zauxdll2.h添加到項目中。

4.png

三、相關指令介紹

1.相關BASIC指令介紹

(1)SCOPE -- 數據采樣

指令1.png

(2)SCOPE_POS -- 采樣點數

指令2.png

(3)TRIGGER -- 觸發示波器

指令3.png

使用說明:

先使用SCOPE指令確定需要采集的數據、采集周期、數據存放位置及使能。(例如:SCOPE(ON,1,0,8000,MPOS(0),MSPEED(0),MPOS(1),MSPEED(1)),表示每間隔1個系統周期采集一次MPOS(0)、MSPEED(0)、MPOS(1)、MSPEED(1)的數據分別存儲至被平均分割的TABLE(0)至TABLE(7999)中,如MPOS(0) → TABLE(0-1999)、MSPEED(0) → TABLE(2000-3999)、MPOS(1) → TABLE(4000-5999)、MSPEED(1) → TABLE(6000-7999)中),后續需要使用TRIGGER開始數據的抓取(如果需要使用連續采集需要帶參數1如TRIGGER(1));

根據SCOPE_POS返回的值確定當前最新的數據保存至TABLE的何處(如SCOPE_POS的值為500表示最新的數據存放至TABLE(499)、TABLE(2499)、TABLE(4499)、TABLE(6499)中),根據上次與此次的最新數據存放位置即可確定此次需要加入至波形曲線中的內容,最后使用SCOPE(OFF)關閉數據采集。

RTSys示波器波形展示:

波形1.png

QT例程示波器波形展示:

波形2.png

2.上位機在線命令接口的使用

由于我們的函數庫中暫時沒有對上述的BASIC指令進行封裝,所以需要通過在線命令這個萬能的API接口進行上述BASIC指令的下發,下面給大家介紹一下ZAux_DirectCommand和ZAux_Execute這兩個在線命令的API接口的使用。

通過在線命令下發BASIC指令的API接口有ZAux_DirectCommand(直接方式)和ZAux_Execute(緩沖方式)這兩種。

緩沖.png

①直接方式:該方式由PC直接下發BASIC指令至控制器,下發即執行,響應速度塊,雖有部分BASIC指令不支持但仍然推薦使用。

②緩沖方式:該方式需要將BASIC指令放入緩沖列中等待執行,響應速度較慢但可以執行所有命令,只推薦在BASIC指令無法通過直接方式下發時使用。

例如:設置軸速度函數ZAux_Direct_SetSpeed(ZMC_HANDLE handle, int iaxis, float fValue)的源碼如下:

/*************************************************************
Description:    //設置軸速度,單位為units/s,當多軸運動時,作為插補運動的速度
Input:          //卡鏈接handle  
Output:         //
Return:         //錯誤碼
*************************************************************/
int32 __stdcall ZAux_Direct_SetSpeed(ZMC_HANDLE handle, int iaxis, float fValue)
{
    int i;
    int32 iresult;
    char  cmdbuff[2048];
    char  cmdbuffAck[2048];
    if( iaxis > MAX_AXIS_AUX)
    {
        return  ERR_AUX_PARAERR;
    }
    //生成命令
    sprintf(cmdbuff, "SPEED(%d)=%f", iaxis, fValue);
    //調用命令執行函數
    return ZAux_DirectCommand(handle, cmdbuff, cmdbuffAck, 2048);
}

四、例程原理及實現過程

1.連接控制器

代碼說明:讀取用戶設置的IP地址并通過函數接口ZAux_OpenEth來連接控制器。

void MainWindow::on_ip_link_btn_clicked()
{
    int ret;
    char * tmp_buff = new char[20];
    QString str;
    QString str_title;
    //獲取輸入的控制器IP地址
    str = ui->ip_list->currentText();
    QByteArray ba = str.toLatin1();
    tmp_buff = ba.data();
    //判斷控制器句柄是否為空,不為空則斷開連接并置句柄為空
    if(nullptr != g_handle)
    {
        //斷開控制器的連接
        ZAux_Close(g_handle);
        g_handle = nullptr;
        setWindowTitle(QString::fromLocal8Bit("示波器"));
    }
    //連接控制器
    ret = ZAux_OpenEth(tmp_buff,&g_handle);
    if( 0 != ret)
    {
        QMessageBox::warning(this,QString::fromLocal8Bit("提示"),QString::fromLocal8Bit("連接失敗"));
    }
    else
    {
        QMessageBox::warning(this,QString::fromLocal8Bit("提示"),QString::fromLocal8Bit("連接成功"));
        str_title = windowTitle() + tmp_buff;
        setWindowTitle(str_title);
    }
}

2.開啟示波器

代碼說明:讀取用戶設置的示波器參數,通過字符串拼接的方式設置scope指令的參數,trigger(1)指令開啟連續采集,由于ZAux_DirectCommand暫時不支持這兩個指令的下發,所以通過ZAux_Execute下發拼接好的basic指令。

void MainWindow::on_start_scope_btn_clicked()
{
    int ret;
    QString cmd;
    QString temp;
    char tmp_commandback_buff[20480] = {0};
    if(nullptr == g_handle)
    {
        QMessageBox::warning(this,QString::fromLocal8Bit("提示"),QString::fromLocal8Bit("請先連接控制器"));
        qDebug() << QString::fromLocal8Bit("請先連接控制器!!!");
        return ;
    }
    //獲取設置的通道數、采集周期數和采集間隔周期
    channel_num = ui->channel_num->currentText().toUInt();
    current_acqu_cycle = ui->acquisition_cycle->text().toUInt();
    current_time_period = ui->time_period->currentText().toUInt();
    /*拼接示波器所需的參數SCOPE(enable, period, table_start, table_stop, p0 [,p1 [,p2 [,p3 [,p4 [,p5 [,p6 [,p7]]]]]]])
    enable:使能與否
    period:采集周期間隔
    table_start:采樣數據存儲在TABLE的起始位置
    table_stop:TABLE結束位置,減去起始位置為采樣個數
    p0~p7:采樣數據類型,等分存儲在TABLE范圍
    拼接采集周期間隔及采樣的起始終止TABLE地址*/
    cmd = QString("scope(1,%1,0,%2,").arg(current_time_period).arg(current_acqu_cycle * channel_num - 1);
    //拼接需采集的數據類型
    for(int i = 0; i < channel_num; i++)
    {
        QWidget *widgetSex=ui->tableWidget->cellWidget(i,2);
        QComboBox *sex=(QComboBox*)widgetSex;
        cmd.append(sex->currentText());
        cmd.append("(");
        cmd.append(ui->tableWidget->item(i,1)->text());
        cmd.append(")");
        cmd.append(",");
    }
    cmd.chop(1);
    cmd.append(") ");
    cmd.append("trigger(1)");
    //清除波形圖中的數據
    for(int i = 0; i < 4; i++)
    {
        ui->customPlot->graph(i)->data().data()->clear();
        ui->customPlot->xAxis->setRange(0, 5 * customplot_x_scale);
    }
    //重繪波形圖
    ui->customPlot->replot();
    //通過ZAux_Execute函數接口下發上面拼接的BASIC指令
    ret = ZAux_Execute(g_handle, QByteArray(cmd.toLatin1()).data(), tmp_commandback_buff, 20480);
    if(ret == 0)
    {
        //把波形圖參數信息傳遞給獲取table數據至波形圖的子線程中
        emit emit_para_int(current_acqu_cycle, current_time_period, channel_num, customplot_x_scale);
        //如果示波器已開啟則先停止獲取table數據至波形圖的子線程再開啟線程
        if(scope_status == 1)
        {
            emit GetDataStop();
            GetDataThread.wait();
            GetDataThread.start();
        }
        else
        {
            //開啟獲取table數據至波形圖的子線程
            GetDataThread.start();
            scope_status = 1;
        }
    }
    else
    {
        qDebug() << QString::fromLocal8Bit("示波器開啟失敗,錯誤代碼為 ") << ret;
    }
}

3.讀取對應table中的數據并顯示

代碼說明:根據上次的TABLE數據更新位置與此次使用SCOPE_POS返回的最新數據存放的TABLE位置確定此次使用ZAux_Direct_GetTable獲取控制器中TABLE寄存器中的數據位置,將從TABLE寄存器中獲取到的數據加載進顯示的曲線,最后重新繪制圖形。

void GetData::SetData(int Type, int Num)
{
    int ret;
    //Type為0則表示當前采樣至的table位置比上次的要大,只需采集兩者之間的table數據即可
    if(Type == 0)
    {
        //獲取table中的數據
        ret = ZAux_Direct_GetTable(g_handle, start_pos + current_acqu_cycle * Num, total_pos, NewData);
        if(ret == 0)
        {
            //向波形曲線中寫入從table中獲取的數據
            for(int i = 0;i < total_pos; i++)
            {
                CustomPlot->graph(Num)->addData(CustomPlot->graph(Num)->dataCount() * (current_time_period / 1000.0), NewData[i]);
            }
        }
        else{
            qDebug() << "get table fail, error code is " << ret;
        }
    }
    //Type為1則表示當前采樣至的table位置比上次的要小,需采集上次采樣至的table位置至table結束位置,還需采集table開始位置至當前采樣至的位置
    else if(Type == 1)
    {
        //獲取table中的數據
        ret = ZAux_Direct_GetTable(g_handle, start_pos + current_acqu_cycle * Num, current_acqu_cycle - start_pos, NewData);
        if(ret == 0)
        {
            //向波形曲線中寫入從table中獲取的數據
            for(int i = 0;i < current_acqu_cycle - start_pos; i++)
            {
                CustomPlot->graph(Num)->addData(CustomPlot->graph(Num)->dataCount() * (current_time_period / 1000.0), NewData[i]);
            }
        }
        else{
            qDebug() << "get table fail, error code is " << ret;
        }
        if(current_pos != 0)
        {
            //獲取table中的數據
            ret = ZAux_Direct_GetTable(g_handle, current_acqu_cycle * Num, current_pos, NewData);
            if(ret == 0)
            {
                //向波形曲線中寫入從table中獲取的數據
                for(int i = 0;i < current_pos; i++)
                {
                    CustomPlot->graph(Num)->addData(CustomPlot->graph(Num)->dataCount() * (current_time_period / 1000.0), NewData[i]);
                }
            }
            else{
                qDebug() << "get table fail, error code is " << ret;
            }
        }
    }
}

4.例程使用與效果展示

(1)連接控制器,先通過下拉框選擇控制器IP地址或直接輸入IP地址,之后連接即可。

5.png

(2)設置參數開啟示波器,先設置示波器參數再開啟示波器。

6.png

(3)停止示波器,可通過滾動條調整顯示位置,先停止示波器再通過滾動條調整顯示位置,可修改波形參數使波形顯示效果更好。

7.png

5.教學視頻講解請點擊→“EtherCAT運動控制器實時數據的Qt示波器”查看。

完整代碼獲取地址

二維碼.png

本次,正運動技術EtherCAT運動控制器實時數據的Qt示波器,就分享到這里。

更多精彩內容請關注“正運動小助手”公眾號,需要相關開發環境與例程代碼,請咨詢正運動技術銷售工程師:400-089-8936。

本文由正運動技術原創,歡迎大家轉載,共同學習,一起提高中國智能制造水平。文章版權歸正運動技術所有,如有轉載請注明文章來源。

二維碼.png

正運動技術專注于運動控制技術研究和通用運動控制軟硬件產品的研發,是國家級高新技術企業。正運動技術匯集了來自華為、中興等公司的優秀人才,在堅持自主創新的同時,積極聯合各大高校協同運動控制基礎技術的研究,是國內工控領域發展最快的企業之一,也是國內少有、完整掌握運動控制核心技術和實時工控軟件平臺技術的企業。主要業務有:運動控制卡_運動控制器_EtherCAT運動控制卡_EtherCAT控制器_運動控制系統_視覺控制器__運動控制PLC_運動控制_機器人控制器_視覺定位_XPCIe/XPCI系列運動控制卡等。


 

狀 態: 離線

公司簡介
產品目錄

公司名稱: 深圳市正運動技術有限公司
聯 系 人: 戴德弟
電  話: 0755-32976042
傳  真: 0755-2606 6955
地  址: 深圳市寶安區西鄉洲石路陽光工業園A1棟5樓
郵  編: 518100
主  頁:
 
該廠商相關技術文摘:
運動控制器PSO位置同步輸出(一):硬件平臺與PSO指令簡介
EtherCAT與RTEX驅動器軸回零的配置與實現
運動控制器位置鎖存功能的應用
開放式激光振鏡運動控制器:C++快速開發
機器視覺運動控制一體機應用例程|供料單元物料在線有無檢測
EtherCAT總線運動控制器中簡單易用的直線插補
EtherCAT運動控制卡的自定義運動曲線
機器視覺運動控制一體機應用例程|端子裁切檢測
機器視覺運動控制一體機應用例程|柔性電路板自動上料解決方案
開放式激光振鏡運動控制器(四):ZMC408SCAN振鏡控制光纖激光器加工
開放式激光振鏡運動控制器(五):ZMC408SCAN光纖激光器的能量控制
EtherCAT軸擴展模塊EIO16084在運動控制系統中的應用
更多文摘...
立即發送詢問信息在線聯系該技術文摘廠商:
用戶名: 密碼: 免費注冊為中華工控網會員
請留下您的有效聯系方式,以方便我們及時與您聯絡

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

无码中文字幕色专区_91av俱乐部_无码人妻h动漫_26uuu成人_91九色丨porny丨国产jk_青青视频在线播放_国内自拍第二页_国产又粗又长又爽又黄的视频_色哟哟免费网站_久久出品必属精品_a级黄色一级片_99日在线视频
91久久黄色| 丁香婷婷久久| 亚洲黄色免费看| 国产96在线亚洲| 久久久久美女| 久久性天堂网| 高清精品久久| 国产精品亚洲综合色区韩国| 亚洲一区资源| 丝袜av一区| 久久只有精品| 国产精品红桃| 精品99久久| 久久中文亚洲字幕| 国产精品最新自拍| 中文字幕一区二区三区在线视频| 国产日产精品_国产精品毛片| 日韩不卡一二三区| 亚洲综合日韩| 日韩国产欧美一区二区三区| 国产精品毛片久久| 精精国产xxxx视频在线野外| 久久精品国内一区二区三区| 欧美极品中文字幕| 免费视频一区二区| 日本不卡视频在线观看| 色综合视频一区二区三区日韩| 日韩中文在线电影| 99久久激情| 亚洲第一区色| 亚洲一区二区三区四区五区午夜| 在线亚洲人成| 中文字幕在线官网| 日韩高清国产一区在线| 欧美日韩国产综合网| 宅男在线一区| 欧美 日韩 国产一区二区在线视频 | 美腿丝袜在线亚洲一区| 在线视频亚洲欧美中文| 欧美1区2区3| 久久国产精品99国产| 久久精品国语| 亚洲日本国产| 久久精品av| 国产欧美日韩在线一区二区 | 麻豆成全视频免费观看在线看| 日韩欧美一区免费| 国产精品www.| 91精品国产自产在线观看永久∴| 国产va免费精品观看精品视频| 爽好久久久欧美精品| 日本成人在线不卡视频| 97精品视频在线看| 日本精品国产| 在线一区欧美| 国产精品流白浆在线观看| 蜜芽一区二区三区| 911亚洲精品| 久久久久久久久久久9不雅视频| 特黄特色欧美大片| 中文在线一区| 亚洲欧洲日韩精品在线| 高清日韩欧美| 日韩精品一级| 国产精品白丝一区二区三区| 日韩欧美高清一区二区三区| 99久久久久国产精品| 美女精品一区二区| 欧美日韩中文| 亚洲va在线| 三上悠亚国产精品一区二区三区 | 精品久久美女| 日韩欧美一区二区三区免费观看| 综合亚洲视频| 国产麻豆久久| 国产精品91一区二区三区| 亚洲精品88| 久久中文字幕av一区二区不卡| 色婷婷亚洲mv天堂mv在影片| 欧美偷窥清纯综合图区| www在线观看黄色| 日韩和欧美一区二区三区| 成人亚洲精品| 精品三级av| 日韩综合一区| 999久久久亚洲| 国产综合欧美| 亚洲精品护士| 国产亚洲一区在线| 中文一区二区| 国产精品视频一区视频二区| 久久免费精品| 99久久激情| 日韩在线一区二区| 欧美在线91| 青草国产精品久久久久久| 国产成人精品福利| 婷婷久久一区| 国产欧美精品| 国内激情久久| 久久大逼视频| 97精品一区二区| 六月天综合网| 欧美1区2区3| 日韩专区一卡二卡| 在线精品视频一区| 日韩午夜免费| 日韩精品三级| 中文字幕成在线观看| 国产一区二区三区四区大秀| 神马午夜在线视频| 国产精品综合| 欧美日韩国产传媒| 日本一区二区中文字幕| 婷婷综合亚洲| 欧美日韩视频一区二区三区| 亚洲二区在线| 国产精品一区二区美女视频免费看| 国产精品入口久久| 国产不卡精品在线| 亚洲欧美日韩高清在线| 精品99在线| 亚洲专区视频| 性欧美长视频| 日本精品一区二区三区在线观看视频| 免费观看久久av| 国产不卡人人| 免费在线亚洲欧美| 日韩精品免费一区二区在线观看 | 亚洲不卡系列| 日韩高清欧美激情| 欧美午夜网站| 欧美日韩视频网站| 欧美日韩调教| 99久久九九| 欧美a在线观看| 国产农村妇女精品一区二区| 亚洲一区二区三区高清不卡| 亚洲一区国产一区| 美女精品一区二区| 91亚洲无吗| 午夜一级在线看亚洲| 国产精品色在线网站| 日韩88av| 国产精品最新自拍| 国产福利一区二区三区在线播放| 亚洲成人不卡| 久久久久美女| 欧美黄页在线免费观看| 国产精品主播| 日韩一级精品| 综合激情在线| 麻豆国产精品一区二区三区| 丝袜av一区| 日韩免费一区| 日韩精品a在线观看91| 免费污视频在线一区| 国产精品成人自拍| 亚洲精品女人| 国产在线不卡| 理论片午夜视频在线观看| 日本一区二区免费高清| 日韩高清国产一区在线| 国产精品麻豆久久| 亚洲免费毛片| 久久亚洲风情| 欧美日韩视频免费观看| 久久精品播放| 婷婷中文字幕一区| 91精品丝袜国产高跟在线| 国产精品宾馆| 91精品蜜臀一区二区三区在线| 午夜国产精品视频| 免费国产亚洲视频| 影音先锋国产精品| 视频在线观看一区二区三区| 国产精品亚洲人成在99www| 国产成人77亚洲精品www| 日韩黄色大片| 欧美日韩精品在线一区| 国产精品欧美在线观看| 亚洲高清毛片| 日韩高清在线不卡| 国产一区二区三区久久久久久久久| 国产一区2区| 尤物在线精品| 久久精品毛片| 免费观看日韩电影| 久久香蕉国产| 777久久精品| 香蕉久久久久久久av网站| 另类综合日韩欧美亚洲| 老司机免费视频一区二区| 亚洲欧美日韩精品一区二区| 鲁大师成人一区二区三区| 成人日韩av| 蜜桃久久久久久| 欧美中文字幕| 亚洲精品午夜av福利久久蜜桃| 日本在线不卡视频|