亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于MFC的AUV多傳感器數(shù)據(jù)采集系統(tǒng)設(shè)計及測試

        2014-12-18 11:53:51高菲張東昆侯建釗
        現(xiàn)代電子技術(shù) 2014年24期
        關(guān)鍵詞:多傳感器串口通信

        高菲+張東昆+侯建釗

        摘 ?要: 由于海底環(huán)境的復雜性與任務(wù)的多樣性,這就對AUV航向位姿環(huán)境等信息的實時性和可靠性提出很高的要求。為了降低海試成本和風險,以智能小車為硬件平臺,裝載AHRS、GPS、激光測距儀(LMS)等多個傳感器,組成數(shù)據(jù)采集系統(tǒng),采用模塊化分布,使用多線程編程技術(shù)和串口通信技術(shù),創(chuàng)建基于對話框的MFC應用程序,實現(xiàn)人機交互。

        關(guān)鍵詞: AUV; 多傳感器; 串口通信; 多線程編程; MFC

        中圖分類號: TN964?34 ? ? ? ? ? ? ? ? ? 文獻標識碼: A ? ? ? ? ? ? ? ? ? ? ? ? ? ?文章編號: 1004?373X(2014)24?0130?03

        Design and test for AUV multi?sensor data acquisition system ?based on MFC

        GAO Fei, ZHANG Dong?kun, HOU Jian?zhao

        (College of Information Science and Engineering, Ocean University of China, Qingdao 266100, China)

        Abstract: In the 21st century, the ocean resources have been attracting more and more attentions from human, and AUV research has gradually become the mainstream trend. A higher requirement for the real?time performance and reliability of the heading, altitudes and location information of AUV is proposed Due to the complexity of underwater environment and varieties of task. In order to reduce the test cost and risk on sea, an intelligent vehicle is taken as a platform with AHRS, GPS, laser range finder and several sensors to constitute a data acquisition system, and modular distribution, multi?thread programming technology and serial port communication technology are adopted to establish a MFC application program based on dialog box, so as to realize the human?computer interaction.

        Keywords: AUV; multi?sensor; serial communication; multithread programming; MFC

        眾所周知,海洋底部蘊藏著非常豐富的生物及礦產(chǎn)資源,自主式水下機器人(AUV)作為一種高技術(shù)手段,在海洋開發(fā)和利用中扮演重要的角色,受到各國特別是發(fā)達國家的高度重視。除了軍事海洋方面,學術(shù)界也對AUV進行了大量的研究工作[1]。2002年,Oxford的Paul Newman提出MOOS系統(tǒng),每個傳感器作為獨立進程,通過數(shù)據(jù)庫MOOSDB按照UDP協(xié)議進行通信[2]。MIT的Benjamin在MOOS中加入IvP算法,實現(xiàn)AUV的自主決策[3]。

        MIT的Albert S.Huang提出了LCM系統(tǒng),利用模塊化分布,基于TCP/IP協(xié)議實現(xiàn)數(shù)據(jù)可靠傳輸[4]。該系統(tǒng)也采用模塊化分布模塊,但是采用多線程體系,通過RS 232串口通信協(xié)議傳輸數(shù)據(jù)。

        1 ?數(shù)據(jù)采集系統(tǒng)簡介

        數(shù)據(jù)采集系統(tǒng)主要包括4個模塊:控制界面、數(shù)據(jù)保存模塊、傳感器處理模塊、上層控制指令響應模塊。其中,主控界面是整個軟件系統(tǒng)的總控,為軟件的各個模塊提供接口,實現(xiàn)人機交互;保存模塊主要是將傳感器數(shù)據(jù)處理后保存到磁盤文件中;傳感器處理模塊又包括AHRS、HGPS、編碼器等子傳感器處理模塊,主要負責數(shù)據(jù)的接收處理;上層控制指令響應模塊用來解析控制指令控制傳感器的工作。

        2 ?系統(tǒng)設(shè)計原理

        (1) 基于對話框的MFC應用程序

        微軟基礎(chǔ)類庫(Microsoft Foundation Class,MFC)是微軟為了簡化程序員的開發(fā)工作所開發(fā)的一套面向?qū)ο蟮暮瘮?shù)庫,以類的形式提供給開發(fā)人員使用[5]。Windows系統(tǒng)的操作都是以消息形式存在的,MFC利用消息映射機制,在某特定類定義該消息響應函數(shù),對消息進行處理。該系統(tǒng)中自定義WM_DIS***消息,在主線程中定義消息響應函數(shù),處理和顯示傳感器數(shù)據(jù)。

        (2) 多線程體系

        采用多線程體系,一是因為多個線程占用同一進程的地址空間,占有的資源比較少,二是多個線程可以并發(fā)地同時運行,效率比較高[5?6]。在數(shù)據(jù)采集系統(tǒng)設(shè)計過程中,主線程負責主控界面的創(chuàng)建,在主線程中創(chuàng)建傳感器子線程和保存子線程,利用事件對象實現(xiàn)多線程同步,通過調(diào)用接口WaitSingleObject()等待事件對象變?yōu)橛行盘枲顟B(tài)[7]。

        (3) RS 232串口通信

        通信通過RS 232串口實現(xiàn)短距離數(shù)據(jù)傳輸,通信協(xié)議簡單易操作,串口通信主要分為4步:

        ① 打開串口;

        ② 配置串口;

        ③ 讀寫串口;

        ④ 關(guān)閉串口。

        串口數(shù)據(jù)均是以字節(jié)為單位,可以直接調(diào)用Win32提供的API函數(shù)進行串口編程[8?9]。

        3 ?軟件實現(xiàn)

        創(chuàng)建基于對話框的MFC程序,在對話框資源控添加控件,用于控制傳感器串口和顯示傳感器數(shù)據(jù),系統(tǒng)對應的主控界面如圖2所示。

        在主線程中初始化對話框界面,創(chuàng)建保存文件目錄,添加控件和消息響應函數(shù),創(chuàng)建各傳感器和保存子線程,等待WM_DIS**消息到來,調(diào)用OnHandleMsg消息響應函數(shù),處理數(shù)據(jù)并顯示在對話框中。主流程圖如圖3所示。

        以AHRS為例,點擊AHRS的Open按鈕,創(chuàng)建AHRS傳感器子線程,代碼為:

        //獲取AHRS串口號

        m_nPortAHRS=((CComboBox*)GetDlgIte m(IDC_COM_Portnum))?>GetCurSel()+1;

        //創(chuàng)建子線程

        pThreadProc_AHRS=AfxBeginThread((AFX_THREADPROC)Threadproc_AHRS,

        LPVOID(&m_nPortAHRS));

        每個傳感器子線程實現(xiàn)步驟相似,其流程圖如圖4所示。

        AHRS傳感器子線程設(shè)置事件掩碼,分配內(nèi)存pstrMsgEnd_AHRS[]暫存從串口讀取的數(shù)據(jù),當讀取數(shù)據(jù)檢驗有效,將保存事件hSave置為有信號狀態(tài),代碼如下:

        UNIT Threadproc_AHRS(LPVOID pParam)

        {

        hCommPort_AHRS=CreateFile(pstrCommPort,GENERIC_READ|GENERIC_WRITE,0,NULL,OPEN_EXISTING,F(xiàn)ILE_FLAG_OVERLAPPED,0); ? ? ? ? ? ? ? ? ? ? //異步打開串口

        //配置串口

        SetCommState(hCommPort_AHRS,&dcb);

        SetCommTimeouts(hCommPort_AHRS,&CommTimeouts);

        SetCommMask(hCommPort_AHRS,EV_R

        XCHAR);

        WaitCommEvent(hCommPort_AHRS,&Event,&ovEol_AHRS); ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//等待事件掩碼

        ReadFile(hCommPort_AHRS,pstrMsgEnd_AHRS,dwReadThreshold_AHRS,&BytesRead,&ovEol_AHRS);

        //讀串口數(shù)據(jù)

        CheckAHRSMsg(); ? ? ? ? ? ? ? ? ? ? ? ? //檢驗數(shù)據(jù)是否有效

        //如果數(shù)據(jù)有效

        SetEvent(hSave);

        ::PostMessage(hWnd,WM_DISAHRS,(WPARAM)pstrMsgCopy_AHRS,(LPARAM)nMsgLength);//將消息傳遞主線程處理

        }

        點擊Save按鈕后,創(chuàng)建保存子線程,申請中轉(zhuǎn)區(qū),將pDataBuffer中的數(shù)據(jù)暫存到中轉(zhuǎn)區(qū),從中轉(zhuǎn)區(qū)讀取數(shù)據(jù)計算變量值,添加時標和系統(tǒng)時間,通過寫文件fwrite()函數(shù)將數(shù)據(jù)保存到磁盤中,通過時標和系統(tǒng)時間將各傳感器數(shù)據(jù)同步起來,實時監(jiān)測機器人航姿和路徑。

        4 ?結(jié) ?語

        經(jīng)過反復測試,通過串口采集的數(shù)據(jù)很少出現(xiàn)丟失,實時性好,運行效率高,雖然發(fā)現(xiàn)程序中還是存在一定問題,但不影響該系統(tǒng)的運行,為了更好地適用于AUV,將對系統(tǒng)繼續(xù)擴展,加入聲吶,高度計,DVL,攝像頭等傳感器,對于同樣要考慮的怎么將水下數(shù)據(jù)送達岸基平臺,擬采用以太網(wǎng)Socket實現(xiàn)遠距離數(shù)據(jù)傳輸,對于傳感器的啟動和關(guān)閉也將以控制指令的形式通過寫串口加以實現(xiàn)[10]。

        參考文獻

        [1] 徐玉如,李彭超.水下機器人發(fā)展趨勢[J].自然雜志,2011(3):5?12.

        [2] NEWMAN P M. MOOS: a mission oriented operating suite [R]. USA: Department of Ocean Engineering, MIT, 2008.

        [3] BENJAMIN M R, NEWMAN P M, SCHMIDT H, et al. A tour of MOOS?IvP autonomy software modules, MIT?CSAIL?TR?2009?006 [R]. USA: MIT Computer Science and Artificial Intelligence Lab, 2009.

        [4] HUANG A S, OLSON E, MOORE D C. Lightweight communications and marshalling for low latency inter?process communication, ? MIT?CSAIL?TR?2009?041 [R]. USA: MIT, 2009.

        [5] 孫鑫,余安萍.VC++深入詳解[M].北京:電子工業(yè)出版社,2007.

        [6] 侯俊杰.深入淺出MFC[M].武漢:華中科技大學出版社,2001.

        [7] 齊林慶.自主式水下機器人測控系統(tǒng)軟件設(shè)計與實現(xiàn)[D].青島:中國海洋大學,2011.

        [8] 龔建偉,熊光明.Visual C++/Turbo C串口通信編程實踐[M].北京:電子工業(yè)出版社,2007.

        [9] 李日云,王來祿,劉匯江.利用Win32API通信函數(shù)實現(xiàn)串口通信[J].地球科學與環(huán)境學報,2004,26(3):61?63.

        [10] 張鵬,張水平,安紅征.基于UDP與串口通信的訓練臺監(jiān)控系統(tǒng)[J].通信技術(shù),2008,41(1):159?161.

        (3) RS 232串口通信

        通信通過RS 232串口實現(xiàn)短距離數(shù)據(jù)傳輸,通信協(xié)議簡單易操作,串口通信主要分為4步:

        ① 打開串口;

        ② 配置串口;

        ③ 讀寫串口;

        ④ 關(guān)閉串口。

        串口數(shù)據(jù)均是以字節(jié)為單位,可以直接調(diào)用Win32提供的API函數(shù)進行串口編程[8?9]。

        3 ?軟件實現(xiàn)

        創(chuàng)建基于對話框的MFC程序,在對話框資源控添加控件,用于控制傳感器串口和顯示傳感器數(shù)據(jù),系統(tǒng)對應的主控界面如圖2所示。

        在主線程中初始化對話框界面,創(chuàng)建保存文件目錄,添加控件和消息響應函數(shù),創(chuàng)建各傳感器和保存子線程,等待WM_DIS**消息到來,調(diào)用OnHandleMsg消息響應函數(shù),處理數(shù)據(jù)并顯示在對話框中。主流程圖如圖3所示。

        以AHRS為例,點擊AHRS的Open按鈕,創(chuàng)建AHRS傳感器子線程,代碼為:

        //獲取AHRS串口號

        m_nPortAHRS=((CComboBox*)GetDlgIte m(IDC_COM_Portnum))?>GetCurSel()+1;

        //創(chuàng)建子線程

        pThreadProc_AHRS=AfxBeginThread((AFX_THREADPROC)Threadproc_AHRS,

        LPVOID(&m_nPortAHRS));

        每個傳感器子線程實現(xiàn)步驟相似,其流程圖如圖4所示。

        AHRS傳感器子線程設(shè)置事件掩碼,分配內(nèi)存pstrMsgEnd_AHRS[]暫存從串口讀取的數(shù)據(jù),當讀取數(shù)據(jù)檢驗有效,將保存事件hSave置為有信號狀態(tài),代碼如下:

        UNIT Threadproc_AHRS(LPVOID pParam)

        {

        hCommPort_AHRS=CreateFile(pstrCommPort,GENERIC_READ|GENERIC_WRITE,0,NULL,OPEN_EXISTING,F(xiàn)ILE_FLAG_OVERLAPPED,0); ? ? ? ? ? ? ? ? ? ? //異步打開串口

        //配置串口

        SetCommState(hCommPort_AHRS,&dcb);

        SetCommTimeouts(hCommPort_AHRS,&CommTimeouts);

        SetCommMask(hCommPort_AHRS,EV_R

        XCHAR);

        WaitCommEvent(hCommPort_AHRS,&Event,&ovEol_AHRS); ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//等待事件掩碼

        ReadFile(hCommPort_AHRS,pstrMsgEnd_AHRS,dwReadThreshold_AHRS,&BytesRead,&ovEol_AHRS);

        //讀串口數(shù)據(jù)

        CheckAHRSMsg(); ? ? ? ? ? ? ? ? ? ? ? ? //檢驗數(shù)據(jù)是否有效

        //如果數(shù)據(jù)有效

        SetEvent(hSave);

        ::PostMessage(hWnd,WM_DISAHRS,(WPARAM)pstrMsgCopy_AHRS,(LPARAM)nMsgLength);//將消息傳遞主線程處理

        }

        點擊Save按鈕后,創(chuàng)建保存子線程,申請中轉(zhuǎn)區(qū),將pDataBuffer中的數(shù)據(jù)暫存到中轉(zhuǎn)區(qū),從中轉(zhuǎn)區(qū)讀取數(shù)據(jù)計算變量值,添加時標和系統(tǒng)時間,通過寫文件fwrite()函數(shù)將數(shù)據(jù)保存到磁盤中,通過時標和系統(tǒng)時間將各傳感器數(shù)據(jù)同步起來,實時監(jiān)測機器人航姿和路徑。

        4 ?結(jié) ?語

        經(jīng)過反復測試,通過串口采集的數(shù)據(jù)很少出現(xiàn)丟失,實時性好,運行效率高,雖然發(fā)現(xiàn)程序中還是存在一定問題,但不影響該系統(tǒng)的運行,為了更好地適用于AUV,將對系統(tǒng)繼續(xù)擴展,加入聲吶,高度計,DVL,攝像頭等傳感器,對于同樣要考慮的怎么將水下數(shù)據(jù)送達岸基平臺,擬采用以太網(wǎng)Socket實現(xiàn)遠距離數(shù)據(jù)傳輸,對于傳感器的啟動和關(guān)閉也將以控制指令的形式通過寫串口加以實現(xiàn)[10]。

        參考文獻

        [1] 徐玉如,李彭超.水下機器人發(fā)展趨勢[J].自然雜志,2011(3):5?12.

        [2] NEWMAN P M. MOOS: a mission oriented operating suite [R]. USA: Department of Ocean Engineering, MIT, 2008.

        [3] BENJAMIN M R, NEWMAN P M, SCHMIDT H, et al. A tour of MOOS?IvP autonomy software modules, MIT?CSAIL?TR?2009?006 [R]. USA: MIT Computer Science and Artificial Intelligence Lab, 2009.

        [4] HUANG A S, OLSON E, MOORE D C. Lightweight communications and marshalling for low latency inter?process communication, ? MIT?CSAIL?TR?2009?041 [R]. USA: MIT, 2009.

        [5] 孫鑫,余安萍.VC++深入詳解[M].北京:電子工業(yè)出版社,2007.

        [6] 侯俊杰.深入淺出MFC[M].武漢:華中科技大學出版社,2001.

        [7] 齊林慶.自主式水下機器人測控系統(tǒng)軟件設(shè)計與實現(xiàn)[D].青島:中國海洋大學,2011.

        [8] 龔建偉,熊光明.Visual C++/Turbo C串口通信編程實踐[M].北京:電子工業(yè)出版社,2007.

        [9] 李日云,王來祿,劉匯江.利用Win32API通信函數(shù)實現(xiàn)串口通信[J].地球科學與環(huán)境學報,2004,26(3):61?63.

        [10] 張鵬,張水平,安紅征.基于UDP與串口通信的訓練臺監(jiān)控系統(tǒng)[J].通信技術(shù),2008,41(1):159?161.

        (3) RS 232串口通信

        通信通過RS 232串口實現(xiàn)短距離數(shù)據(jù)傳輸,通信協(xié)議簡單易操作,串口通信主要分為4步:

        ① 打開串口;

        ② 配置串口;

        ③ 讀寫串口;

        ④ 關(guān)閉串口。

        串口數(shù)據(jù)均是以字節(jié)為單位,可以直接調(diào)用Win32提供的API函數(shù)進行串口編程[8?9]。

        3 ?軟件實現(xiàn)

        創(chuàng)建基于對話框的MFC程序,在對話框資源控添加控件,用于控制傳感器串口和顯示傳感器數(shù)據(jù),系統(tǒng)對應的主控界面如圖2所示。

        在主線程中初始化對話框界面,創(chuàng)建保存文件目錄,添加控件和消息響應函數(shù),創(chuàng)建各傳感器和保存子線程,等待WM_DIS**消息到來,調(diào)用OnHandleMsg消息響應函數(shù),處理數(shù)據(jù)并顯示在對話框中。主流程圖如圖3所示。

        以AHRS為例,點擊AHRS的Open按鈕,創(chuàng)建AHRS傳感器子線程,代碼為:

        //獲取AHRS串口號

        m_nPortAHRS=((CComboBox*)GetDlgIte m(IDC_COM_Portnum))?>GetCurSel()+1;

        //創(chuàng)建子線程

        pThreadProc_AHRS=AfxBeginThread((AFX_THREADPROC)Threadproc_AHRS,

        LPVOID(&m_nPortAHRS));

        每個傳感器子線程實現(xiàn)步驟相似,其流程圖如圖4所示。

        AHRS傳感器子線程設(shè)置事件掩碼,分配內(nèi)存pstrMsgEnd_AHRS[]暫存從串口讀取的數(shù)據(jù),當讀取數(shù)據(jù)檢驗有效,將保存事件hSave置為有信號狀態(tài),代碼如下:

        UNIT Threadproc_AHRS(LPVOID pParam)

        {

        hCommPort_AHRS=CreateFile(pstrCommPort,GENERIC_READ|GENERIC_WRITE,0,NULL,OPEN_EXISTING,F(xiàn)ILE_FLAG_OVERLAPPED,0); ? ? ? ? ? ? ? ? ? ? //異步打開串口

        //配置串口

        SetCommState(hCommPort_AHRS,&dcb);

        SetCommTimeouts(hCommPort_AHRS,&CommTimeouts);

        SetCommMask(hCommPort_AHRS,EV_R

        XCHAR);

        WaitCommEvent(hCommPort_AHRS,&Event,&ovEol_AHRS); ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//等待事件掩碼

        ReadFile(hCommPort_AHRS,pstrMsgEnd_AHRS,dwReadThreshold_AHRS,&BytesRead,&ovEol_AHRS);

        //讀串口數(shù)據(jù)

        CheckAHRSMsg(); ? ? ? ? ? ? ? ? ? ? ? ? //檢驗數(shù)據(jù)是否有效

        //如果數(shù)據(jù)有效

        SetEvent(hSave);

        ::PostMessage(hWnd,WM_DISAHRS,(WPARAM)pstrMsgCopy_AHRS,(LPARAM)nMsgLength);//將消息傳遞主線程處理

        }

        點擊Save按鈕后,創(chuàng)建保存子線程,申請中轉(zhuǎn)區(qū),將pDataBuffer中的數(shù)據(jù)暫存到中轉(zhuǎn)區(qū),從中轉(zhuǎn)區(qū)讀取數(shù)據(jù)計算變量值,添加時標和系統(tǒng)時間,通過寫文件fwrite()函數(shù)將數(shù)據(jù)保存到磁盤中,通過時標和系統(tǒng)時間將各傳感器數(shù)據(jù)同步起來,實時監(jiān)測機器人航姿和路徑。

        4 ?結(jié) ?語

        經(jīng)過反復測試,通過串口采集的數(shù)據(jù)很少出現(xiàn)丟失,實時性好,運行效率高,雖然發(fā)現(xiàn)程序中還是存在一定問題,但不影響該系統(tǒng)的運行,為了更好地適用于AUV,將對系統(tǒng)繼續(xù)擴展,加入聲吶,高度計,DVL,攝像頭等傳感器,對于同樣要考慮的怎么將水下數(shù)據(jù)送達岸基平臺,擬采用以太網(wǎng)Socket實現(xiàn)遠距離數(shù)據(jù)傳輸,對于傳感器的啟動和關(guān)閉也將以控制指令的形式通過寫串口加以實現(xiàn)[10]。

        參考文獻

        [1] 徐玉如,李彭超.水下機器人發(fā)展趨勢[J].自然雜志,2011(3):5?12.

        [2] NEWMAN P M. MOOS: a mission oriented operating suite [R]. USA: Department of Ocean Engineering, MIT, 2008.

        [3] BENJAMIN M R, NEWMAN P M, SCHMIDT H, et al. A tour of MOOS?IvP autonomy software modules, MIT?CSAIL?TR?2009?006 [R]. USA: MIT Computer Science and Artificial Intelligence Lab, 2009.

        [4] HUANG A S, OLSON E, MOORE D C. Lightweight communications and marshalling for low latency inter?process communication, ? MIT?CSAIL?TR?2009?041 [R]. USA: MIT, 2009.

        [5] 孫鑫,余安萍.VC++深入詳解[M].北京:電子工業(yè)出版社,2007.

        [6] 侯俊杰.深入淺出MFC[M].武漢:華中科技大學出版社,2001.

        [7] 齊林慶.自主式水下機器人測控系統(tǒng)軟件設(shè)計與實現(xiàn)[D].青島:中國海洋大學,2011.

        [8] 龔建偉,熊光明.Visual C++/Turbo C串口通信編程實踐[M].北京:電子工業(yè)出版社,2007.

        [9] 李日云,王來祿,劉匯江.利用Win32API通信函數(shù)實現(xiàn)串口通信[J].地球科學與環(huán)境學報,2004,26(3):61?63.

        [10] 張鵬,張水平,安紅征.基于UDP與串口通信的訓練臺監(jiān)控系統(tǒng)[J].通信技術(shù),2008,41(1):159?161.

        猜你喜歡
        多傳感器串口通信
        基于Qt和Flash的嵌入式Linux軟件架構(gòu)設(shè)計
        多傳感器數(shù)據(jù)融合技術(shù)在機房監(jiān)控系統(tǒng)中的應用
        基于智能粒子濾波的多傳感器信息融合算法
        多傳感器圖像融合技術(shù)
        串口通信在智能家居監(jiān)控系統(tǒng)中的應用
        一種基于多傳感器的PM2.5數(shù)據(jù)分析系統(tǒng)
        基于OpenCV的室內(nèi)照明智能控制系統(tǒng)設(shè)計與實現(xiàn)
        科技視界(2016年13期)2016-06-13 22:01:19
        船舶動力定位中的數(shù)據(jù)融合技術(shù)文獻綜述
        科技視界(2016年14期)2016-06-08 13:24:00
        基于MSP430單片機的窄帶無線數(shù)據(jù)傳輸模塊的設(shè)計
        便攜式數(shù)傳電臺測試系統(tǒng)的設(shè)計與實現(xiàn)
        性猛交╳xxx乱大交| 97久久久久国产精品嫩草影院| 加勒比日本东京热1区| 亚洲成人黄色av在线观看| 亚洲精品一区二区在线免费观看 | 国产永久免费高清在线| 51久久国产露脸精品国产| 久久精品国产亚洲婷婷| 都市激情亚洲综合一区| 亚洲高清国产成人精品久久| 亚洲精品中文字幕乱码二区| 一区=区三区国产视频| 日韩三级一区二区不卡| 女人色熟女乱| 无码久久精品国产亚洲av影片| 亚洲人成18禁网站| 亚洲男人的天堂色偷偷| 熟女免费观看一区二区 | 国产麻豆剧传媒精品国产av蜜桃 | 亚洲写真成人午夜亚洲美女| 国产果冻豆传媒麻婆精东| 亚洲伊人成综合网| 国产精品午夜波多野结衣性色| 成人性生交大片免费看7| 国产女同va一区二区三区| 人妻饥渴偷公乱中文字幕| 婷婷丁香五月中文字幕| 亚洲AV秘 无套一区二区三区 | 精品女同一区二区三区在线播放器| 国产一区二区黄色网页| av狠狠色丁香婷婷综合久久 | 偷拍视频网址一区二区| 国模吧无码一区二区三区| 无码熟熟妇丰满人妻啪啪| 国产精品亚洲一区二区极品| 高潮精品熟妇一区二区三区| 国产亚洲自拍日本亚洲| 免费成人在线电影| 国产女人18毛片水真多| 一区二区三区在线蜜桃| 国产亚洲精品av一区|