久久午夜影院,91精品国产调教在线观看,日韩午夜免费,伊人久久大香线蕉av不卡

你的位置:首頁 > 電路保護(hù) > 正文

使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

發(fā)布時間:2024-05-14 來源:ADI公司 責(zé)任編輯:lina

【導(dǎo)讀】“實現(xiàn)機(jī)器人操作系統(tǒng)——電機(jī)控制器ROS1驅(qū)動程序簡介”一文中概述了新型ADI Trinamic?電機(jī)控制器(TMC)驅(qū)動程序,并討論了將電機(jī)控制器集成到機(jī)器人操作系統(tǒng)(ROS)生態(tài)系統(tǒng)中的方法。TMC ROS1驅(qū)動程序支持TMC驅(qū)動層和應(yīng)用層之間在ROS框架內(nèi)無縫通信,且適用于它支持的各種TMC板。本文將深入探討TMC ROS1驅(qū)動程序的功能,包括電機(jī)控制、信息檢索、命令執(zhí)行、參數(shù)獲取以及對多種設(shè)置的支持。文中還概述了如何將電機(jī)控制器集成到嵌入式系統(tǒng)和應(yīng)用中,從而利用ROS框架提供的優(yōu)勢。


摘要


“實現(xiàn)機(jī)器人操作系統(tǒng)——電機(jī)控制器ROS1驅(qū)動程序簡介”一文中概述了新型ADI Trinamic?電機(jī)控制器(TMC)驅(qū)動程序,并討論了將電機(jī)控制器集成到機(jī)器人操作系統(tǒng)(ROS)生態(tài)系統(tǒng)中的方法。TMC ROS1驅(qū)動程序支持TMC驅(qū)動層和應(yīng)用層之間在ROS框架內(nèi)無縫通信,且適用于它支持的各種TMC板。本文將深入探討TMC ROS1驅(qū)動程序的功能,包括電機(jī)控制、信息檢索、命令執(zhí)行、參數(shù)獲取以及對多種設(shè)置的支持。文中還概述了如何將電機(jī)控制器集成到嵌入式系統(tǒng)和應(yīng)用中,從而利用ROS框架提供的優(yōu)勢。


ADI Trinamic電機(jī)控制器ROS1驅(qū)動程序


ROS是一個機(jī)器人系統(tǒng)中間層,包含一組軟件庫和強(qiáng)大的開發(fā)工具,從驅(qū)動程序到最先進(jìn)的算法,可以在此基礎(chǔ)上開發(fā)機(jī)器人系統(tǒng)或應(yīng)用程序。ADI Trinamic電機(jī)控制器支持新型智能執(zhí)行器,并且隨著ROS變得越來越流行,尤其是在機(jī)器人領(lǐng)域,為了擴(kuò)展在制造和工業(yè)自動化應(yīng)用中的適用性,我們開發(fā)了ROS驅(qū)動程序等附加模塊支持。ADI公司的TMC ROS1驅(qū)動程序提供與Triaminic電機(jī)控制語言集成開發(fā)環(huán)境(TMCL-IDE)類似的功能,但有一個關(guān)鍵區(qū)別:它允許支持ROS的系統(tǒng)中的節(jié)點使用TMC,而無需額外安裝驅(qū)動程序。此外,adi_tmcl集成了自己的TMCL協(xié)議解釋器,因此能夠解釋符合TMCL標(biāo)準(zhǔn)的用戶請求的命令。最后一層是tmcl_ros_node,它建立了與ROS系統(tǒng)的直接接口,提供發(fā)布者、訂閱者和服務(wù)等功能。每一個功能都可以使用一組參數(shù)進(jìn)行自定義,以下部分將詳細(xì)討論這些功能。


功能


1.支持多種TMC模塊


TMC ROS驅(qū)動程序或adi_tmcl旨在支持所有遵守TMCL協(xié)議的商用TMC。截至本文發(fā)布,它目前支持CAN接口(特別是SocketCAN)。但開發(fā)工作還在進(jìn)行,不久的將來會支持其他接口。這些TMC包含ADI Trinamic PANdrive?智能電機(jī)和模塊,可以支持步進(jìn)電機(jī)和直流無刷伺服(BLDC)電機(jī)。由于使用ROS參數(shù),adi_tmcl能夠無縫支持不同的TMC模塊。只需配置tmcl_ros_node而無需重新構(gòu)建整個控制包。


在adi_tmcl/config目錄中,每個ADI Trinamic電機(jī)控制器模塊(TMCM)都有兩個相關(guān)的YAML文件。這些文件以人類可讀的數(shù)據(jù)序列化語言編寫,包含ROS參數(shù),應(yīng)在執(zhí)行期間加載:

?adi_tmcl/config/autogenerated/TMCM-XXXX.yaml

此YAML文件是自動生成的,包含特定于模塊的參數(shù),不建議修改,以免導(dǎo)致節(jié)點行為異常。

?adi_tmcl/config/TMCM-XXXX_Ext.yaml

此YAML文件包含用戶可以修改的所有參數(shù),以便(1)與板通信(例如接口名稱),(2)實現(xiàn)電機(jī)控制,以及(3)更改ROS主題名稱。

例如,如果您想使用TMCM-1636(圖3),只需運行圖1所示的代碼。


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖1.啟動TMCM-1636。


其中,adi_tmcl/launch/tmcm_1636.launch加載TMCM-1636專用的YAML文件。


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖2.使用TMCM-1636運行TMC ROS驅(qū)動程序的代碼片段。


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖3.(上)TMCM-1636硬件連接圖;(下)實際設(shè)置的參考圖片。


要使用TMCM-1260(圖6),請運行以下命令:


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖4.使用TMCM-1260啟動TMC ROS驅(qū)動程序的命令。


其中,adi_tmcl/launch/tmcm_1260.launch加載TMCM-1260專用的YAML文件。


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖5.使用TMCM-1260運行TMC ROS驅(qū)動程序的代碼片段。


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖6.(上)TMCM-1260硬件連接圖;(下)實際設(shè)置的參考圖片。


啟動目錄包括所有支持的TMC模塊,可以點擊此處查看。


2.使用TMCL-IDE一次性配置TMC模塊


在通過ROS使用TMC模塊之前,需要根據(jù)所使用的電機(jī)完成配置。所有的配置使用TMCL-IDE完成,并應(yīng)存儲在EEPROM中(否則可能無法正確控制電機(jī))。


?BLDC電機(jī)模塊(如TMCM-1636)

有關(guān)如何在TMCL-IDE中通過Wizard Pool工具完成電機(jī)校準(zhǔn)的流程/教程,請查看此教程

有關(guān)如何在TMCL-IDE中完成比例積分(PI)調(diào)諧功能的流程/教程,請查看此教程

?步進(jìn)電機(jī)模塊(如TMCM-1260)

有關(guān)如何在TMCL-IDE中通過Wizard Pool功能完成初始化配置的流程/教程,請查看此教程


初始化和調(diào)諧后,務(wù)必將所有參數(shù)存儲在板的EEPROM中。這可以通過如下方法來完成:(1)store參數(shù),(2)STAP命令,以及/或者(3)創(chuàng)建和上傳TMCL程序并啟用自動啟動模式。有些板僅支持其中的少數(shù)選項。


TMC ROS驅(qū)動程序的設(shè)計得到了簡化,在完成TMC模塊和電機(jī)的初始化配置/調(diào)諧后,基于使用TMCL-IDE的一次性配置即可控制電機(jī)。


3.移動/停止電機(jī)


TMC ROS驅(qū)動程序通過在以下任一主題中發(fā)布命令來移動/停止電機(jī):

?/cmd_vel (geometry_msgs/Twist)—設(shè)置電機(jī)轉(zhuǎn)速

?/cmd_abspos (std_msgs/Int32)—設(shè)置電機(jī)的絕對位置

?/cmd_relpos (std_msgs/Int32)—設(shè)置電機(jī)的相對位置

?/cmd_trq (std_msgs/Int32)—設(shè)置電機(jī)扭矩

注:多軸TMC設(shè)置中的不同電機(jī)有不同的地址。


用戶可以連接ROS系統(tǒng)來發(fā)送至這些特定指令,從而控制電機(jī)的運動。指令的選擇取決于具體應(yīng)用、TMC設(shè)置以及所用電機(jī)的類型。例如,對于輪式機(jī)器人,用戶可以選擇設(shè)置速度;而對于夾具,設(shè)置位置會更合適。


作為說明性示例,可以看看腳本adi_tmcl/scripts/fake_cmd_vel.sh。這個簡單的腳本可以控制電機(jī)以順時針和逆時針兩個方向旋轉(zhuǎn),并且逐漸提高轉(zhuǎn)速。要執(zhí)行此腳本,請按照圖7所示的命令進(jìn)行操作。


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖7.用于測試TMC ROS驅(qū)動程序轉(zhuǎn)速控制的命令。


注意:

?2號終端窗口和3號終端窗口最好并排顯示。

?可以按Ctrl-C復(fù)制1號終端窗口中的命令,完成后粘貼到2號終端窗口中。

?3號終端窗口中的命令會自行停止。


為了驗證電機(jī)是否已移動,圖8顯示了來自TMC (/tmc_info_0)的實際轉(zhuǎn)速反饋圖。


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖8.使用RQT繪制的電機(jī)實際轉(zhuǎn)速圖(以m/s為單位)。


4.TMC/電機(jī)信息檢索

系統(tǒng)可以通過訂閱以下主題,從TMC ROS驅(qū)動程序檢索信息:

?/tmc_info (adi_tmcl/TmcInfo) - 提供電壓、TMC狀態(tài)、實際轉(zhuǎn)速、實際位置和實際扭矩信息

注:多軸TMC設(shè)置中的不同電機(jī)有不同的主題。


用戶可以鏈接ROS系統(tǒng)來訂閱這些指定的主題。這樣,用戶就可以監(jiān)視參數(shù)值,并根據(jù)參數(shù)值采取行動。例如,在特定于應(yīng)用的場景中,當(dāng)檢測到TMC狀態(tài)出錯時,操作員可能會選擇停止系統(tǒng),或者在電機(jī)到達(dá)特定位置時執(zhí)行預(yù)編程的動作。


作為例子,adi_tmcl/scripts/fake_cmd_pos.sh是一個簡單的腳本,它讓電機(jī)先順時針旋轉(zhuǎn),再逆時針旋轉(zhuǎn),并且不斷提高位置幅度。請執(zhí)行圖9所示的命令。


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖9.用于測試TMC ROS驅(qū)動程序位置控制的命令。


為了驗證電機(jī)是否已移動,圖10顯示了來自TMC (/tmc_info_0)的實際位置回讀圖。


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖10.使用RQT繪制的電機(jī)實際位置圖(以度為單位)。


5.執(zhí)行自定義TMC命令


系統(tǒng)可以通過執(zhí)行以下功能來訪問和調(diào)整TMC參數(shù):

?tmcl_custom_cmd (adi_tmcl/TmcCustomCmd) - 獲取/設(shè)置TMC的軸參數(shù)AP和全局參數(shù)(GP)的值


用戶可以選擇將此服務(wù)集成到ROS系統(tǒng)中,以滿足特定應(yīng)用需求。此功能使用戶能夠直接從ROS驅(qū)動程序配置TMC板。例如,用戶可以選擇設(shè)置軸參數(shù)(SAP)以獲得最大電流,從而調(diào)整允許的絕對電流水平。但是,用戶必須透徹了解他們要通過此功能修改的參數(shù),不正確的設(shè)置可能會導(dǎo)致TMC ROS驅(qū)動程序故障。因此,強(qiáng)烈建議任何配置都通過TMCL-IDE執(zhí)行。圖11提供了調(diào)用此服務(wù)的示例,展示了使用指令類型208對DrvStatusFlags進(jìn)行獲取軸參數(shù)(GAP)操作。


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖11.通過RQT觸發(fā)的tmcl_custom_cmd服務(wù)。


6.訪問所有軸參數(shù)值


系統(tǒng)可以通過以下方式訪問TMC軸參數(shù)值:

?tmcl_gap (adi_tmcl/TmcGapGgpAll) - 獲取指定電機(jī)/軸的所有TMC軸參數(shù)(AP)的值


用戶可以將ROS系統(tǒng)與此功能集成,以滿足特定應(yīng)用的需求。例如,此服務(wù)可以捕獲TMC板的當(dāng)前設(shè)置和狀態(tài),包括AP(例如編碼器步長、PI調(diào)諧、換向模式等)。

圖12顯示了部分輸出示例。通過分析該結(jié)果,用戶可以確認(rèn)一次性配置是否正確保存在板的EEPROM中。


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖12.通過RQT觸發(fā)的tmcl_gap_all服務(wù)。


7.訪問所有全局參數(shù)值


系統(tǒng)可以通過以下方式訪問TMC全局參數(shù)值:

?tmcl_ggp (adi_tmcl/TmcGapGgpAll) - 獲取所有TMC全局參數(shù)(GP)的值


此功能可以檢索TMC板的當(dāng)前配置和狀態(tài)。可訪問的一些GP包括:CAN比特率、串行波特率、自動啟動模式等。


圖13顯示了執(zhí)行此服務(wù)后獲得的部分輸出。此結(jié)果使用戶能夠確認(rèn)一次性配置是否已正確存儲在板的EEPROM中。


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖13.通過RQT觸發(fā)的tmcl_ggp_all。


8.多個TMC板設(shè)置


對于可能需要多個TMC模塊的較大系統(tǒng)(如機(jī)械臂),TMC ROS驅(qū)動程序支持多個器件設(shè)置。


a.多個CAN通道中的多個TMC板


如圖14所示,當(dāng)用戶的每個TMC板都有一個CAN-USB時,系統(tǒng)將添加命名空間以區(qū)分每個節(jié)點的實例。在此特定用例中,需要相應(yīng)更新comm_interface_name參數(shù),以確保與板正確通信。


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖14.多個CAN通道中的多個TMC板的示例圖。


圖15中的代碼是用于設(shè)置此用例的示例啟動文件。在此示例中,電機(jī)A可以通過發(fā)布到/tmcm1/cmd_abspos來控制,電機(jī)B可以通過發(fā)布到/tmcm2/cmd_abspos來控制,電機(jī)C可以通過發(fā)布到/tmcm3/cmd_abspos來控制。


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖15.使用多個CAN通道運行多個TMC ROS驅(qū)動程序的代碼片段。


b.單個CAN通道中的多個TMC板


TMC ROS驅(qū)動程序支持的另一種設(shè)置是單個CAN通道中有多個TMC板,如圖16所示。與上文所述的對多個TMC板的支持非常相似,系統(tǒng)引入命名空間來區(qū)分每個節(jié)點實例。所有板的comm_interface_name保持一致。調(diào)整comm_tx_id和comm_rx_id以確保與各板正確通信。


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖16.單CAN通道中的多個TMC板的示例圖。


圖17顯示了用于設(shè)置此用例的示例啟動文件。在此示例中,電機(jī)A可以通過發(fā)布到/tmcm1/cmd_abspos來控制,電機(jī)B可以通過發(fā)布到/tmcm2/cmd_abspos來控制,電機(jī)C可以通過發(fā)布到/tmcm3/cmd_abspos來控制。


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖17.使用單個CAN通道運行多個TMC ROS驅(qū)動程序的代碼片段。


9.輕松集成到ROS系統(tǒng)/應(yīng)用中


借助ROS提供的消息傳遞系統(tǒng),即便是較大的系統(tǒng)也可以輕松地交換節(jié)點(例如驅(qū)動程序、算法等)。TMC ROS驅(qū)動程序?qū)⑦@一優(yōu)勢擴(kuò)展到了TMC板,允許它無縫集成到ROS系統(tǒng)/應(yīng)用中。


a.集成到AGV/AMR中


圖18說明了navigation_node如何通過發(fā)送geometry_msg/Twist格式的/cmd_vel來控制移動機(jī)器人。然后,motor_controller通過Geometry_msg/ Twist格式的/wheel_velocity發(fā)送反饋,使得navigation_node可以相應(yīng)地重新校準(zhǔn)。


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖18.AGV/AMR的簡化架構(gòu)。


通過了解navigation_node發(fā)布和訂閱的位置,tmcl_ros_node可以輕松更改motor_controller(圖19)。與TMC信息檢索功能類似,adi_tmcl會發(fā)布關(guān)于車輪轉(zhuǎn)速的實時信息,wheel_velocity_node會將車輪轉(zhuǎn)速信息從adi_tmcl/TmcInfo轉(zhuǎn)換為geometry_msg/Twist。由于新架構(gòu)及其集成的TMC板符合正確的數(shù)據(jù)格式,因此移動機(jī)器人預(yù)計以相同方式工作。


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖19.帶有TMC ROS驅(qū)動程序的AGV/AMR簡化架構(gòu)。


b.集成到機(jī)械臂中


圖20說明了為將TMC板集成到采用機(jī)械臂的貼片應(yīng)用中,控制機(jī)械臂需要使用多個電機(jī)。與之前的用例類似,用戶需要確保pick_and_place_node會訂閱/發(fā)布所預(yù)期的數(shù)據(jù)格式。


使用ROS1驅(qū)動程序來操控ADI Trinamic電機(jī)控制器

圖20.(上)帶有通用電機(jī)控制器的機(jī)械臂;(下)帶有TMC板的機(jī)械臂。


有關(guān)將TMC板集成到ROS系統(tǒng)的分步指南以及如何利用所述的功能,請點擊此處


結(jié)論


ADI公司的TMC ROS1驅(qū)動程序支持TMC基礎(chǔ)驅(qū)動層和應(yīng)用層之間在ROS管理的系統(tǒng)內(nèi)無縫通信,且適用于它支持的各種TMC模塊。


本文深入探討了ADI Trinamic電機(jī)控制器ROS1驅(qū)動程序提供的功能,包括:

?電機(jī)運動控制

?檢索電機(jī)和控制器信息

?執(zhí)行TMC命令

?獲取軸和全局參數(shù)值

?支持多個TMC模塊控制設(shè)置

所有這些功能都是利用ROS的消息傳遞系統(tǒng)實現(xiàn)的,使得電機(jī)控制器可以輕松集成到基于ROS的系統(tǒng)和應(yīng)用中。


如需了解更多信息,請訪問ADI機(jī)器人頁面。

探索永不停息

?查看文章“實現(xiàn)機(jī)器人操作系統(tǒng)——ADI Trinamic電機(jī)控制器ROS1驅(qū)動程序簡介

?敬請關(guān)注未來發(fā)表的有關(guān)用于ADI Trinamic電機(jī)控制器的ROS2的文章!

?下載Trinamic電機(jī)控制器ROS1驅(qū)動程序

?下載Trinamic電機(jī)控制器ROS2驅(qū)動程序

?點擊此處購買ADI Trinamic電機(jī)控制器評估板

?點擊此處購買ADI Trinamic電機(jī)

(來源:ADI公司,作者:Krizelle Paulene Apostol,軟件系統(tǒng)工程師;Jamila Macagba,高級軟件系統(tǒng)工程師;Maggie Maralit,軟件系統(tǒng)設(shè)計工程經(jīng)理)


免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請聯(lián)系小編進(jìn)行處理。


推薦閱讀:

干貨!UWB新國標(biāo)深度解讀 | 大帶寬模式是國產(chǎn)化突圍的關(guān)鍵

使用4、5和6系列混合信號示波器排除電磁干擾故障

面向未來的電源開關(guān)解決方案

如何利用精密部件經(jīng)濟(jì)高效地實現(xiàn)可靠的飛機(jī)導(dǎo)航系統(tǒng)

車用TVS、電阻和溫度傳感器選型:三款位居C位的元件,推薦給你


特別推薦
技術(shù)文章更多>>
技術(shù)白皮書下載更多>>
熱門搜索

關(guān)閉

?

關(guān)閉

久久午夜影院,91精品国产调教在线观看,日韩午夜免费,伊人久久大香线蕉av不卡
国产精品一线| 在线看片一区| 日本黄色精品| 伊人影院久久| 国产精品115| 久久九九精品| 国产欧美日韩| 亚洲黄色在线| 国产精品夜夜夜| 国产中文字幕一区二区三区| 久久麻豆视频| av亚洲免费| 欧美日本不卡高清| 色婷婷色综合| 亚洲一区导航| 国产视频一区三区| 亚洲福利精品| 激情欧美丁香| 日韩在线综合| 91日韩免费| 7777精品| 日韩欧美国产精品综合嫩v| 国产成人精品一区二区三区在线| 视频一区二区欧美| 国产精品一区三区在线观看| 久久高清免费| 日韩精品第一区| 国产理论在线| 免费一区二区三区在线视频| 亚洲美女久久| 亚洲精品综合| 亚洲韩日在线| 欧美国产小视频| 国产精品丝袜在线播放| 亚洲综合中文| 一区二区电影在线观看| 欧美在线综合| 国产欧美一区二区三区国产幕精品| 国产乱子精品一区二区在线观看 | 自拍自偷一区二区三区| 免费人成黄页网站在线一区二区| 亚洲人成高清| 五月天久久网站| 日韩欧美另类中文字幕| 国产不卡一区| 视频一区欧美精品| 麻豆传媒一区二区三区| 视频一区欧美日韩| 国产成人免费视频网站视频社区| 久久久久午夜电影| 日韩一区二区三区免费视频| 老鸭窝一区二区久久精品| 免费观看不卡av| 1000部精品久久久久久久久| 日韩高清电影一区| 久久久久.com| 国产精品99精品一区二区三区∴| 久久国产小视频| 麻豆国产精品一区二区三区| 国产美女精品| 四虎884aa成人精品最新| 日本精品一区二区三区在线观看视频| 国产成人精选| 国产精品色在线网站| 蜜桃免费网站一区二区三区| 伊人久久在线| 久久精品国产99国产| 日本亚洲不卡| 高清日韩欧美| 日韩高清在线不卡| 蜜臀va亚洲va欧美va天堂| 久久美女精品| 久久人人88| 亚洲性图久久| 激情欧美一区| 五月精品视频| 日韩精品午夜视频| 日韩成人三级| 日韩在线观看中文字幕| 日韩一级精品| 野花国产精品入口| 午夜精品影院| 爽好多水快深点欧美视频| 欧洲亚洲一区二区三区| 中文在线а√在线8| 久久精品在线| 亚洲网址在线观看| 国产亚洲观看| 久久精品国产在热久久| 久久精品网址| 久久久久一区| 久久福利精品| 欧美日韩一视频区二区| 美女尤物国产一区| 亚洲深夜视频| 一区在线视频观看| 亚洲欧洲免费| 精品一区视频| 久久精品二区亚洲w码 | 蜜臀av免费一区二区三区| 久久久久国产精品一区二区| 宅男在线一区| 国产精品一二| 野花国产精品入口| 狂野欧美性猛交xxxx| 好看的av在线不卡观看| 日韩欧美激情电影| 亚洲精品电影| 久久爱www成人| 99日韩精品| 美女高潮久久久| 国产自产自拍视频在线观看| 亚洲一区二区三区四区五区午夜| 日韩精品视频网| 欧美日韩精品在线一区| 国产精品一站二站| 国产精品呻吟| 久久国产亚洲| 麻豆成人综合网| 亚洲精选久久| 欧美特黄一区| 久久九九精品| 国产福利电影在线播放| 日日摸夜夜添夜夜添国产精品| 精品免费av| 国产调教精品| 亚洲调教视频在线观看| 精品国产欧美日韩| 国产日韩亚洲欧美精品| 蜜桃久久久久久| 免费观看在线色综合| 五月婷婷亚洲| 欧美日一区二区| 欧美肉体xxxx裸体137大胆| 精品三级在线| av资源新版天堂在线| 亚洲黄色中文字幕| 成人福利视频| 婷婷激情久久| 日韩中文字幕一区二区三区| 日本久久综合| 欧美日韩国产综合网| 女人av一区| 蜜桃伊人久久| 日韩精品三区四区| 国产精品久久久亚洲一区| 国产私拍福利精品视频二区| 青青在线精品| 高清在线一区| 在线亚洲欧美| 国产精品分类| 久久男人天堂| 午夜欧美精品| 日韩国产欧美视频| 福利一区二区三区视频在线观看| 日韩在线综合| 久久精品二区三区| 视频一区中文| 久久精品99国产精品| 久久一区精品| 男女精品网站| 国产精品s色| 亚洲大全视频| 国产精品jk白丝蜜臀av小说| 91成人网在线观看| 久久99影视| 亚洲综合福利| 久久久久99| 日韩av一区二区在线影视| 国产成人调教视频在线观看| 亚洲电影在线一区二区三区| 亚洲一区日韩在线| 成人午夜在线| 国产欧美日韩在线一区二区 | 亚洲日本免费电影| 97精品久久| 久草免费在线视频| 三级在线观看一区二区| 亚洲五月综合| 色婷婷精品视频| 国产亚洲久久| 久久久精品国产**网站| 亚洲免费在线| www.com.cn成人| 国产精品久av福利在线观看| 国产亚洲激情| 久久精品不卡| 激情综合五月| 国产欧美日韩一级| 久久亚洲不卡| 亚洲激情五月| 激情综合网站| 久久国产生活片100| 日本一区二区三区视频在线看| 色婷婷色综合| 日韩88av| 国产亚洲一区二区三区不卡| 日韩精品一级二级 | 另类av一区二区| 国产视频欧美|