在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于樹莓派實現的水下無人機設計方案

科技觀察員 ? 來源:hackster.io ? 作者:hackster.io ? 2022-05-03 17:04 ? 次閱讀

本文介紹了由樹莓派驅動的水下無人機原型的設計過程、開發和組裝操作。

我在探索頻道上看了很多關于發明家的節目,有一次我決定自己做一些有趣的事情,這樣一次就可以真正令人印象深刻和困難:一些電動機、控制器、處理、相機。買了很多有用(而且不是很有用)的東西后,我開始思考應該開始什么樣的項目。最后我得出的結論是,有很多飛行和駕駛無人機,但不是關于水下無人機(哈哈,現在看來,我當時簡直大錯特錯)。

pYYBAGJZNP6APkugAAmXzDWx6-w375.png

在網上沖浪后,我發現了幾個有趣的項目,但其中大多數要么處于開發階段,要么價格不便宜。

展望未來,我可以說我有一個可以游泳幾米深的工作原型,盡管它有著部分優點和缺點。我不能斷言我終于有了一個易于控制的東西,或者可以做的不僅僅是平息我的工程師熱情的東西。但是這些東西的所有單元都能正常工作,我的錯誤和經驗可以幫助某人創造出真正重要的東西(即使它只對他自己有意義),這一點在我看來是非常重要的。

由于做了大量工作,本文可分為以下幾章:

選擇組件

電調編程

樹莓派服務器配置

使用 Raspberry Pi 處理電動機

陀螺儀

樹莓派手電筒控制

客戶端-服務器通信協議

安卓應用

視頻

屏幕和操縱桿控制

施工組裝和測試

結論

選擇組件

您將在下面找到用于創建設備的不同內容的列表。

母板

poYBAGJZNPiAS9q0AAUTU_NNeTc534.png

在眾多控制器中,我選擇了Raspberry Pi 3B 。我不會為這個項目推薦類似 Arduino 的板,因為它不會管理如此復雜的任務,因為需要控制至少 4 個電機二極管、陀螺儀、從相機發送視頻流并同時接收并處理來自控制設備的命令。Raspberry Pi 3B 帶有用于 RJ-45 連接器的內置 Wi-Fi以太網,這無疑會幫助您完成所有這些操作。

聯結渠道

poYBAGJZNPSAAGKoAAGcC0zCTUE181.png

在水下傳輸數據總是很困難。水是一個很好的盾牌,因此,您可以忘記任何無線數據傳輸。所以沒有其他選擇。

在水下傳輸數據的能力。

水下數據傳輸的速度。

通用性(它非常適合 Raspberry Pi 3B 和發射器)。

基地發射器

pYYBAGJZNPOAYEsSAAFYX4NHzT0828.png

NEXX迷你路由器 有 3 個主要的傳輸選項:

嘗試將 Wi-Fi 天線從水中連接到陸地(在這種情況下,應該使用實心線而不是雙絞線),但存在很多爭議點。

在兩個 Raspberry Pi 3B 之間創建一個客戶端-服務器橋連接(這將是合適的,但更昂貴且更麻煩)。

使用雙絞線將迷你路由器與 Raspberry 連接。這個選項被作為基礎,因為它是最可靠、最快速和最便宜的。經驗證明,這是一個相當不錯的選擇。

電動馬達

pYYBAGJZNPKAAZ7uAAISYgth2Jg646.png

N2830/2212 1000KV

在測試了 3 種不同的電機后,我選擇了這個模型。你可能會問為什么?因為它足夠強大,它有第二個軸,所以你可以同時使用 2 個螺旋槳。一般來說,所有電機在水中正常運行,直到藻類或沙子進入電機內部。如果您選擇高速且功率較小的電機,您會發現這些類型的電機并不是最適合水的。更便宜的電機也沒有達到預期。

控制板 (ESC)

poYBAGJZNPKASVyjAAOHPJLxAs0140.png

非洲式電調 (30A)

這也很簡單。它可以編程為正向/反向切換,30安培的功率對于被測電機來說應該足夠了。

Afro ESC USB 編程工具

pYYBAGJZNNCADf9UAAMW1kkDxZ4106.png

ESC 的編程工具。使用此設備,您可以上傳必要的固件。但實際上,這就是問題所在。我不得不等了一個半月。

LED脈沖驅動器

pYYBAGJZNMmAT51SAAO1Sz1cAFM112.png

7-30В 3А或類似

這非常適合我們的目的 - 它擁有兩個上述 LED,它還連接到 Raspberry 并允許您調整 LED 的亮度。

陀螺儀

MPU-6050

一個三軸陀螺儀/加速度計,將位置數據發送到樹莓。有一些數據,但不是很有用?。

相機

pYYBAGJZNL-AaelNAAG_79kf1fg163.png

RPi 相機 F

您可以使用任何其他本機 Raspberry Pi 相機。主要條件是它應該通過FFC連接,而不是USB。視頻流一直是一個大問題(延遲、編碼),或者更確切地說,這不是問題,只是需要很多時間才能開始。

操縱桿

poYBAGJZNLuAF3biAAPRchusv4Y883.png

iPega PG-9055 - 額外的控制助手,如果你的手濕了,相信我,他們會濕的,你可以使用這個設備控制無人機。

電池

Turnigy 2200mAh 3S 30C

再次進行了很多測試。18650 電池不適合,因為控制器具有 25A 的放電率,這對于峰值負載條件下的整個系統來說是不夠的(是的,幾塊電池在使用后就死了)。可以嘗試使用 6 節電池并獲得 50A,但難度更大。這樣的直流電不能使用電線傳輸(不要忘記大約 100 m 的距離)。所以我買了 Li-Po,它優雅地完成了任務,完美地融入了外殼。

驅動螺旋槳(主要問題之一)

電纜接頭

還有外殼、連接器、電線和其他東西。

電調編程

不幸的是,全新的 Afro ESC 只能向一個方向旋轉,因此您需要更新固件。

pYYBAGJZNLKALe17AARZfxcXjpk034.png

現在正確連接電線很重要,否則其中一個設備可能會發生故障。

在這里,您將找到一些有關如何正確連接電線的簡短說明:

一對紅色和黑色粗線,末端有一個公連接器。是通用電源。在這種情況下,提供的電源將是 12V 和所需的安培數。

紅色——輸入端口“+”。

黑色 – 輸入端口“-”。

一根粗紅黑黃的電線負責電機電源。我們現在不會連接它們,但稍后我們會將這些電線連接到具有相似顏色的電動機的電線上。

細線負責控制電路板。

控制信號通過黃線傳輸。

紅線輸出5v(我沒用過)。它們有幾種不同的類型,您可以在此處了解更多信息

黑線應連接到端口“-”。

因此,讓我們將細線連接到鏈接器:將黑線(減號)和黃線(信號)連接在一起。請勿觸摸或將紅線連接在一起。下一步——為電路板提供電源(黑色和紅色厚輸入)。我使用了這個靜態電源單元,但任何其他具有類似特性的電源都可以(12V,2+A)。

打開固件更新工具并選擇:

pYYBAGJZNK2AP7kgAAHovqyvZcs262.png

端口:選擇連接的 USB 端口。幸運的是,只有很少的選擇。

波特率:9600。

控制器:基于 atmega 8 的無刷 ESC(8kB 閃存)。

選擇下載的固件文件。單擊“運行”按鈕并祈禱:)

很快固件就會成功上傳到電調,一切準備就緒。

使用 Raspberry Pi 處理電動機

一件重要的事情是,如果您正在構建一個嚴肅的項目,而不僅僅是為了好玩,您不必使用 Raspberry PI 進行實時工作,例如電機處理。PWM 生成不會如您所愿,因此請使用單獨的板,例如 Arduino 進行控制。但是對于我的項目來說,使用 Raspberry 就足夠了。感謝Fabio Balzano在本文下方的評論中對此進行了解釋。

所以,讓我們開始我們工作中最有趣的部分——我們應該為 Raspberry Pi 控件編寫代碼。找到項目文件夾~ /drone并在那里安裝 PiGpio 庫:

poYBAGJZNKeAT6g_AAAl1VFwV50172.png

現在我將為您提供一些有關 ESC 控制的簡短信息。我們應該將某個頻率傳輸到細黃線(控制)(參見“ESC 編程”部分)。afro_nfet_besc30_r1固件的范圍是1100-1900 ,其中值 1500 是平靜狀態,1100 最大反向,1900 最大正向。創建文件engines.js并將JS代碼添加到其中:

//Calm state constant
const SERVO_ZERO = 1500;
//Connect 'pigpio' library
const Gpio = require('pigpio').Gpio;
// Define 4 motors using Raspberry pins (this process will be described below)
const servo1 = new Gpio(22, {mode: Gpio.OUTPUT});
const servo2 = new Gpio(10, {mode: Gpio.OUTPUT});
const servo3 = new Gpio(9, {mode: Gpio.OUTPUT});
const servo4 = new Gpio(27, {mode: Gpio.OUTPUT});
//Set each board into the state of "calm"
servo1.servoWrite(SERVO_ZERO);
servo2.servoWrite(SERVO_ZERO);
servo3.servoWrite(SERVO_ZERO);
servo4.servoWrite(SERVO_ZERO);
//After that you should enter the value into ESC
module.exports.engines = {
leftEsc: (value) => {
servo1.servoWrite(value);
},
rightEsc: (value) => {
servo2.servoWrite(value);
},
topLeftEsc: (value) => {
servo3.servoWrite(value);
},
topRightEsc: (value) => {
servo4.servoWrite(value);
}
}

為了使用此代碼,您應該在app.js中編寫:

pYYBAGJZNJ-AUpmpAAAu-ZAV4CE938.png

實際上這部分代碼servo1.servoWrite()負責控制。1100 - 電機反向轉動,1900 - 最大正向轉動。

在這里您可以找到 Raspberry pin 方案:

poYBAGJZNJuAOT46AAV_YtrxPec434.png

簡而言之,你應該使用橙色的 GPIO。一對由 GPIO 10 和 GPIO 22 組成,第二對是 GPIO 9 和 GPIO 27(使用 27、22 和 10 -9 會更合乎邏輯,但我在焊接時沒有考慮到,所以我不得不更改它)。如果考慮序數(它們是灰色的),那么這些是 13、15 和 19、21 聯系人。您應該將 ESC 的黃線連接到它們中的每一個,負號應連接到一個 GND,例如 39 觸點。現在讓我們連接其他的東西。

將Afro ESC的電源線(紅色和黑色)連接到單獨的電源單元(12v),將電機連接到黃-紅-黑粗線,現在您可以嘗試它是如何工作的。

陀螺儀

連接示例:

poYBAGJZNJWAa_HvAALoTUYU6uI914.png

VCC到引腳 1 (3.3V PWR)

GND到任何負號

SCL到引腳 5 (GPIO 3)

SDA到引腳 3 (GPIO 2)

正確連接一切并不難,如果談論軟件——它會更簡單——所有信息都可以在互聯網上輕松找到。在這里你應該使用i2c-bus и i2c-mpu6050庫。將它們安裝到項目中:

pYYBAGJZNI-AFWk1AAAYNnlI4lM731.png

創建文件gyroscope.js并添加:

const i2c = require('i2c-bus');
const MPU6050 = require('i2c-mpu6050');
const address = 0x68;
const i2c1 = i2c.openSync(1);
const sensor = new MPU6050(i2c1, address);
var reading = false;
var sensorData = {};
module.exports.gyroscope = {
getData : () => {
return JSON.stringify(sensorData);
},
readRotation : () => {
sensor.readRotation(function (err, rot) {
if (err) {
console.log(e);
return;
}
console.log(rot);
});
},
readSensor : () => {
if (!reading) {
reading = true;
}
sensor.read(function (err, data) {
reading = false;
if (err) {
console.log(err);
} else {
sensorData = data;
}
});
}
}

以一定的頻率運行 readSensor 方法,并從 getData 獲取上次調查的數據。會有很多位置分量(x,y,z,a)。我沒有足夠的時間來定義這些組件的含義,因為我有更重要的任務——處理。我知道調查它會更好,但結果的相關性對于當時的這個項目來說并不是很重要。

樹莓派手電筒控制

所以,讓我們繼續增加我們無人機的功能,現在我將向您介紹 LED。我有兩個XHP-50 LED 和 LED 脈沖驅動器(見上表)。它們很容易過熱,因此我建議您將它們與散熱器一起使用。你可以在同一個網上商店找到它們,最主要的是不要忘記尺寸。因此,將 LED 連接到散熱器上,使用電線將一個 LED 的負極焊接到另一個 LED 的正極(它們已標記)并焊接 - 和 + 線:

poYBAGJZNIKAc78IAAKAyuFuqdw838.png

控制器和焊接:

poYBAGJZNHyAJyDjAAHuDLKhfYY198.png

電源 - 12V 正負,您可以使用與電機相同的輸入。LED 連接器應連接到先前焊接的連接器,L- 到負,L+ 到正。在這種情況下,我們不需要模擬觸點(A),所以不要連接它。

現在我們對數字輸入(D)和接地輸入(G)感興趣。現在您應該將數字輸入 (D) 與 GPIO11 連接,將接地輸入 (G) 與 GND 連接(您可以在 Raspberry 上選擇任何您想要的)。

現在讓我們回到 Raspberry Pi,創建一個文件light.js并添加以下內容:

//Again the same library
const Gpio = require('pigpio').Gpio;
//Create Gpio for your pin
const light = new Gpio(11, {mode: Gpio.OUTPUT});
// You can set the value starting from 0 to 255 (I have found this info in the LED driver instructions)
const LIGHT_MIN = 0;
const LIGHT_MAX = 255;
//It will be needed for calculations
const LIGHT_DIAPASONE = LIGHT_MAX - LIGHT_MIN;
// Turn off the LED (the system starts with the LEDs turned on to maximum)
light.pwmWrite(LIGHT_MIN);
//Export work methods
module.exports.light = {
on: () => {
//Transmit the value 255 to the driver
light.pwmWrite(LIGHT_MAX);
},
off: () => {
// Transmit the value 0 to the driver
light.pwmWrite(LIGHT_MIN);
},
//Here will be the percent value from 0 to 100
set: (val) => {
if(val < 0 || val > 100) return;
//Calculate the value based on the percentage
val = Math.round(LIGHT_MIN + LIGHT_DIAPASONE / 100 * val);
console.log("Light:"+val);
//Transmit the value to the driver
light.pwmWrite(val);
}
}

我們可以使用app.js或引擎運行它:

pYYBAGJZNGqAMhhGAAAu-wGt3Iw482.png

客戶端-服務器通信協議

正如您從樹莓派的初始配置中了解的那樣,通信將使用套接字連接進行。您還需要一些在服務器和客戶端中硬編碼的命令集。當我自己做所有事情時,我決定使用我自己的格式,因為存在的選項與重量/可讀性標準不太匹配。因此,讓我們在考慮控制模型的情況下進行構建,在這種情況下,它將是 Android 智能手機

pYYBAGJZNGOAakBaAAHlwcBdAsU317.png

在這里你可以找到模型本身(應用程序將在下面描述)。

畫面分為兩部分。左邊部分代表水平軸(前后),右邊部分代表垂直軸。如果您將手指放在某個區域,這將被視為參考點并由一對電機控制,但它也是一個“平靜”點。

如果您的手指垂直向上滑動,兩個電機的正向旋轉速度將隨著功率從 0 到最大值(取決于接觸點到當前點的距離)緩慢增加。

如果您向下滑動手指,兩個電機將以一定速度反向旋轉,該速度取決于與接觸點的距離。

如果您向右滑動手指,左側電機將向前旋轉,而右側電機將反向旋轉。所以,實際上,我們需要知道偏離接觸點的角度(其中top=90,bottom=90,right=0,left=180)和速比——手指到接觸點的距離(從 0 到 100)。對象命令應如下所示:

pYYBAGJZNECAO-IHAAAcpfh6JH8597.png

С - (command),任何命令都應該以這個字母開頭;

: - 鍵值分隔符;

; - 鍵值對的分隔符;

L——表示觸摸是在屏幕左側進行的;

R - 表示觸摸是在屏幕的右側進行的;

LIGHT——代表光 :)

A ——ANGLE,偏差角;

V——價值,某物的價值。

因此,第一個命令聽起來像:“一對水平電機,方向 - 45 度(左電機處于最大速度(但最大值為 35%,基于 V),右電機停止),旋轉速度為 35%最大限度”。

第二條命令:“垂直電機對,方向 - 0 度(左電機最大轉速,右電機反向最大轉速),最大轉速”。

第三個命令:“以 50% 的亮度打開燈”。

當您通過套接字在鍵值塊中為每個值更改發送單獨的命令時,這就是它的工作原理。然后神奇地變成控制板上的命令。解釋這些數據的轉換會很無聊。所以大家可以試著自己研究一下,掌握控制器。

安卓應用

最后,我們已經到了嘗試創建控制器的時刻。一般來說,通信的意思是:“點擊屏幕上的東西——將值傳輸到服務器”。我會寫一些關于應用程序的內容。沒有什么不尋常或特別具有挑戰性的,所以我不會發布所有代碼。如果您愿意,您可以訪問存儲庫并找到所需的信息。我還想指出,我沒有使用任何新奇的模式,如 MVVM、MVP、VIPER 等,因為我需要在最短的時間內工作的應用程序。UI 盡可能簡單。

首先,您應該創建一個帶有狀態顯示視圖的活動。布局如下:

視頻顯示層(播放器封裝在一個片段中)。

JoystickView層是一個自定義視圖,其中dispatchTouchEvent方法被覆蓋,它處理手指在屏幕上的按下和移動。它將 UI 線從按下點繪制到當前狀態。多點觸控支持是強制性的,因為控制是用兩根手指執行的。

一個帶有 Raspberry Pi 當前溫度的 TextView 的層(如果出現問題并且它開始過熱,您可以在它關閉/燃燒之前停止使用它)。幸運的是,我的 Raspberry 沒有發生這種情況。

陀螺儀顯示的數據層。在標簽值對中設置的 TextView。它顯示來自陀螺儀的“原始數據”。計劃處理這些數據,但我沒有足夠的時間來做它并發明一個很酷的顯示它。

一個 SeekBar 層 - LED 控件,一個簡單的元素,它在拖動時將值從 0 更改為 100。

施工組裝和測試

現在我們已經到了下一步——我們需要找到一些東西,我們可以放置上面提到的所有東西(哈哈)。在設計和組裝階段,我的朋友 Sergey 給了我很多幫助。實際上,他找到了一個外殼,做了一個鐵平臺,我們可以將電機安裝在不同的位置,然后將它們放在一起:

poYBAGJZNCSAXh1LAAZldwFa5oI173.png

我先說 6 個電機的原型會更有效率,但對我來說,即使有 4 個電機也很難支持原型,這就是為什么決定用 4 個電機測試原型的原因。

首先,我們決定測試外殼的結構,這就是為什么我們沒有將所有電子設備都放入外殼中,而是簡單地將電機連接到平臺上,兩對雙絞線從電調發送信號到每個他們(ESC在測試期間一直留在內陸)。

poYBAGJZNByAMrTsAAamrGW3Zps699.png

結論

所有這一切的主要結果是,我獲得了構建此類單元和系統的豐富經驗。在開發過程中使用了大量不同的設備,其管理比看起來要容易得多。四電機原型并沒有預期的那么好——控制這樣的設備非常困難。最好使用四個垂直電機和至少兩個水平電機。同時,它應該用陀螺儀穩定,因為對于人類來說,它很難完美地控制它,需要幫助(飛行無人機也是如此)。

此外,所有在售的電機都會被沙子和其他東西堵塞,所有單元都可能因腐蝕而損壞(這是合乎邏輯的),不適合此類項目。我沒有找到水下馬達(可以表明它是防水的,但它只能在 1-2 米的深度正常工作)。在這個項目之后,任何智能家居似乎都沒有那么復雜了。服務器,中繼命令,僅此而已。您需要的主要是有時間和愿望去做。其余的將隨之而來。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 無人機
    +關注

    關注

    230

    文章

    10437

    瀏覽量

    180455
  • 樹莓派
    +關注

    關注

    116

    文章

    1707

    瀏覽量

    105648
收藏 人收藏

    評論

    相關推薦

    The Drone Pi :用樹莓無人機(一)——材料準備

    RaspiU盤:用來保存視頻遙控和遙控接收器:把遙控接收器連到Multiwii盡請期待:用樹莓無人機(二)——工作原理和框架構造用樹莓
    發表于 12-29 15:24

    樹莓無人機(三)——推進和飛行控制

    樹莓無人機(一)——材料準備用樹莓無人機(二)——工作原理和框架構造推進:飛行控制器和
    發表于 01-06 10:54

    樹莓無人機(完)——樹莓部分

    樹莓無人機(一)——材料準備用樹莓無人機(二)——工作原理和框架構造用
    發表于 01-06 11:32

    有沒有對水下無人機感興趣的

    本帖最后由 hellocode 于 2016-10-4 18:27 編輯 本人8年軟件經驗,想找個華南地區經驗較豐富的硬件portner,業余時間DIY個水下無人機玩玩,有沒有感興趣的大哥一起探討探討{:12:}
    發表于 10-01 11:31

    你期待水下無人機的什么功能?

    `你期待水下無人機的什么功能?第一個,就是導航,我比較喜歡,因為畢竟水下就好比一片四面望不到的森林,很容易迷失方向高清的攝影功能,當然也少不了足夠的照明,水下沒有太陽,超過七八米就開始
    發表于 01-17 17:51

    無人機電源系統設計方案探討

    系統設計更加容易,而且還可讓無人機設計人員專注于無人機設計之其他部分,而不是在電源系統設計上花大量的時間;它不僅可節省設計完成時間,還可降低設計復雜性。  為了充分利用上述優勢,Vicor模組電源
    發表于 10-09 10:31

    無人機電源系統設計方案探討

    復雜性不僅可以使電源系統設計更加容易,而且還可讓無人機設計人員專注于無人機設計之其他部分,而不是在電源系統設計上花大量的時間;它不僅可節省設計完成時間,還可降低設計復雜性。  為了充分利用上述優勢
    發表于 10-09 10:02

    TDK-Lambda電源在系留無人機水下機器人中的應用

    近來,在與客戶工程師的溝通中了解了一些系留無人機水下機器人等方面的系統應用,兩種設備雖然完全屬于不同的行業領域,但是供電的構架卻有很多相似之處,這里粗略整理一下,分享給大家。系留無人機電源構架系留
    發表于 08-16 11:15

    多軸無人機BLDC驅動解決方案

    、、科學考察、石油勘探、航空遙感、邊防巡邏、森林防火、災況評估、氣象預報、考古研究等)    常見的玩具無人機和小型無人機通常采用簡潔的4軸設計,而用于快遞、運輸、行業用途的無人機則會采用更多軸的
    發表于 07-02 15:40

    航模/無人機遙控的解決方案

      一、方案概述:  一個典型的無人機系統包括飛行器、一個地面控制站(Ground Control Station)GCS、有效載荷及數據鏈路。地面控制站用于實現任務規劃、鏈路控制、飛行控制、載荷
    發表于 07-03 14:56

    怎樣去設計一個基于樹莓和Python的無人機視覺跟蹤系統呢

    怎樣去設計一個基于樹莓和Python的無人機視覺跟蹤系統呢?有哪些設計步驟呢?
    發表于 11-12 07:15

    powerray水下無人機簡單介紹

    跟市面上“換湯不換藥”的空中無人機大不一樣,水下無人機絕對算的上無人機市場的一股清流。除了水下攝影之外,
    發表于 01-15 08:43 ?5532次閱讀

    水下無人機原理分析

    本文主要介紹了水下無人機原理和水下無人機分類,其次介紹了水下無人機控制問題和
    發表于 01-15 16:07 ?1.4w次閱讀

    水下無人機的用途和優勢有哪些

    水下無人機目前已經得到廣泛的運用。本文主要介紹了水下無人機的用途、水下無人機的優勢。及
    發表于 01-15 16:19 ?9512次閱讀

    無人機可以保護水下生物嗎

    使用無人機水下無人機等設備,搭建江豚生活習性巡護系統、水生態環境巡護系統和無人機智能巡護系統。
    發表于 06-05 14:10 ?1199次閱讀
    主站蜘蛛池模板: 成人永久免费视频| 天天做天天爱天天综合网2021| 天天澡天天摸天天添视频| 国产手机看片| 中国日韩欧美中文日韩欧美色| 日本福利网址| 午夜特片网| 亚洲影视一区二区| 人操人摸| 五月婷综合| 亚洲欧美一区二区三区四区 | 男女视频免费观看| 欧美性一区二区三区五区| 亚色中文| 欧美日本俄罗斯一级毛片| 农村女人的一级毛片| 日韩免费一级片| 99久久精品国产自免费| 加勒比色| 1024在线观看你懂的| 涩久久| 亚洲午夜视频在线观看| 亚洲国产成人久久笫一页| 欧美大全| 精品黄色片| 婷婷六月激情| 性试验k8经典| 精品国产成人三级在线观看| 久久青草国产精品一区| 国产夜夜爽| 色综合久久综精品| 天天干天天操天天干| 中国免费黄色片| 爱爱免费视频| 欧美性色黄大片四虎影视| 精品xxxxxbbbb欧美中文| 91夜夜操| 欧美日韩高清一区| 国产午夜精品片一区二区三区| 天堂bt在线种子网| 日韩黄色网|