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

        ?

        開(kāi)源自動(dòng)化控制軟件Sedona在物聯(lián)網(wǎng)中的應(yīng)用※

        2012-06-25 02:46:08邱旭華
        關(guān)鍵詞:工具包圖形化開(kāi)發(fā)者

        邱旭華

        (公安部第一研究所,北京 100048)

        引 言

        如何在不更換設(shè)備的情況下,讓嵌入式智能設(shè)備和系統(tǒng)協(xié)調(diào)工作并且更好地管理是每個(gè)集成商和用戶(hù)所面臨的關(guān)鍵問(wèn)題。Sedona軟件解決了這一問(wèn)題。Sedona軟件為開(kāi)發(fā)、部署、集成和管理無(wú)處不在的最底層的智能設(shè)備應(yīng)用提供完整的軟件平臺(tái),為廉價(jià)的設(shè)備提供可編程控制和連接Internet的能力。Sedona框架的分布式?jīng)Q策系統(tǒng)可以使所有的設(shè)備都具備控制和管理的能力,連接到網(wǎng)絡(luò)的任何地方。

        1 物聯(lián)網(wǎng)簡(jiǎn)述

        物聯(lián)網(wǎng)(Internet of Things)概念是2005年正式提出來(lái)的,是互聯(lián)網(wǎng)的延伸。它是一個(gè)基于互聯(lián)網(wǎng)、傳統(tǒng)電信網(wǎng)等信息的承載體,讓所有能夠被獨(dú)立尋址的普通物理對(duì)象實(shí)現(xiàn)互聯(lián)互通的網(wǎng)絡(luò)。它具有普通對(duì)象設(shè)備化、自治終端互聯(lián)化和普通服務(wù)智能化3個(gè)重要特征。

        在物聯(lián)網(wǎng)應(yīng)用中有兩項(xiàng)關(guān)鍵技術(shù):傳感器技術(shù)和RFID標(biāo)簽。

        編者注:關(guān)于物聯(lián)網(wǎng)特征、關(guān)鍵技術(shù)及展望的詳述略。

        2 Niagara AX平臺(tái)

        隨著物聯(lián)網(wǎng)技術(shù)的迅速發(fā)展和應(yīng)用,如何使各種智能設(shè)備連接IP網(wǎng)絡(luò)并融入上層的應(yīng)用系統(tǒng),就變得至關(guān)重要。Tridium公司所研發(fā)的Niagara AX平臺(tái)正是用于解決設(shè)備連接應(yīng)用的軟件框架平臺(tái)。它創(chuàng)造了一個(gè)通用的環(huán)境,幾乎可以連接任何能夠想到的嵌入式設(shè)備或系統(tǒng),而不用太多考慮這些設(shè)備的制造廠家和所使用的通信協(xié)議。其關(guān)鍵在于Niagara AX可以與各種設(shè)備和系統(tǒng)通信,將它們的數(shù)據(jù)和屬性轉(zhuǎn)換成為標(biāo)準(zhǔn)的軟件組件,通過(guò)大量基于IP的協(xié)議,支持XML的數(shù)據(jù)處理和開(kāi)放的API,為企業(yè)級(jí)應(yīng)用提供無(wú)縫的、統(tǒng)一的設(shè)備數(shù)據(jù)視圖。圖1表示的是一種多對(duì)一架構(gòu)的Niagara AX平臺(tái)。

        通過(guò)轉(zhuǎn)換各種外部設(shè)備和系統(tǒng)的數(shù)據(jù)成為規(guī)范的軟件組件,Niagara AX創(chuàng)造了一種開(kāi)發(fā)架構(gòu),大大優(yōu)于基于網(wǎng)關(guān)集成的多對(duì)多的復(fù)雜架構(gòu)。這種優(yōu)勢(shì)體現(xiàn)在任何的設(shè)備和系統(tǒng)通過(guò)Niagara AX規(guī)范,就可以兼容其他連接到應(yīng)用框架的設(shè)備和系統(tǒng),為企業(yè)級(jí)應(yīng)用提供真正的系統(tǒng)內(nèi)的互操作能力和統(tǒng)一的數(shù)據(jù)呈現(xiàn)。開(kāi)發(fā)者不再需要花費(fèi)時(shí)間去創(chuàng)建、測(cè)試和重復(fù)驗(yàn)證各種網(wǎng)關(guān)設(shè)施。圖2是傳統(tǒng)的多對(duì)多系統(tǒng)結(jié)構(gòu)。

        圖1 多對(duì)一架構(gòu)的Niagara AX平臺(tái)

        圖2 傳統(tǒng)的多對(duì)多系統(tǒng)結(jié)構(gòu)

        3 Sedona及其應(yīng)用

        Sedona是一個(gè)開(kāi)源自控軟件體系框架,由Tridium公司研發(fā),包含Sedona語(yǔ)言、Sedona工具包、Sedona虛擬機(jī)、Sedona編譯器、Sedona圖形化開(kāi)發(fā)調(diào)試工具等部分,于2009年8月正式推出第1版,并開(kāi)放源代碼。

        Sedona語(yǔ)言繼承了Java、C#等面向?qū)ο笳Z(yǔ)言的特點(diǎn),使得開(kāi)發(fā)非常簡(jiǎn)單,而實(shí)現(xiàn)的功能又非常強(qiáng)大。以Sedona工具包形式發(fā)布的控制邏輯模塊,實(shí)現(xiàn)了“一次開(kāi)發(fā)、隨處可用”的目的,大大降低了用戶(hù)的應(yīng)用難度,同時(shí)也使很多行業(yè)應(yīng)用經(jīng)驗(yàn)得到很好的積累與發(fā)展。Sedona虛擬機(jī)(Sedona Virtual Machine,SVM)專(zhuān)門(mén)針對(duì)樓宇自控設(shè)備進(jìn)行了優(yōu)化,能高效地運(yùn)行在只有100KB左右內(nèi)存的小型嵌入式設(shè)備上,并且實(shí)時(shí)性能得到很好的保證。采用Sedona圖形化開(kāi)發(fā)工具進(jìn)行在線實(shí)時(shí)開(kāi)發(fā)調(diào)試,用組件模塊的方式簡(jiǎn)單拖拽各種所需功能,并進(jìn)行數(shù)據(jù)流向和控制邏輯的連線,就可以立刻完成用戶(hù)的應(yīng)用邏輯開(kāi)發(fā),還能實(shí)時(shí)看見(jiàn)反饋結(jié)果,使用戶(hù)開(kāi)發(fā)業(yè)務(wù)控制邏輯非常簡(jiǎn)單、直觀,大大降低了用戶(hù)使用難度。

        3.1 Sedona工作流程

        圖3所示的流程列舉了在樓宇智能控制器上開(kāi)發(fā)Sedona應(yīng)用程序的整個(gè)過(guò)程。在Sedona軟件架構(gòu)下進(jìn)行開(kāi)發(fā),有兩種角色:一種是開(kāi)發(fā)者(Developer),另外一種是集成者(Integrator)。雖然在實(shí)際工作中不可能將這兩種角色區(qū)分得很清楚,并且大多數(shù)情況下用戶(hù)是用兩種角色配合來(lái)完成工作的,但在這里區(qū)分這兩種角色將有助于對(duì)Sedona軟件框架的深入討論。

        圖3 Sedona開(kāi)發(fā)工作流程圖

        (1)開(kāi)發(fā)者角色

        該角色主要是指軟件開(kāi)發(fā)工程師,他們負(fù)責(zé)用Sedona編程語(yǔ)言開(kāi)發(fā)各種Sedona應(yīng)用組件模塊,如行業(yè)特殊應(yīng)用功能模塊、設(shè)備I/O驅(qū)動(dòng)模塊、特殊算法模塊等等。組件模塊開(kāi)發(fā)好以后將以工具包(kit)的形式進(jìn)行發(fā)布,這樣有利于版本的管理,同時(shí)也便于行業(yè)經(jīng)驗(yàn)的積累和延續(xù)。

        (2)集成者角色

        該角色主要是指某個(gè)行業(yè)或領(lǐng)域的專(zhuān)家,通常他們只需要在如圖3所示的圖形化開(kāi)發(fā)工具里,將開(kāi)發(fā)者發(fā)布的工具包中所需要用到的組件模塊拖拽到工作區(qū),然后用連線方式將所選擇的組件模塊按照業(yè)務(wù)數(shù)據(jù)流程或者控制邏輯關(guān)系連接在一起,就完成了數(shù)據(jù)處理和控制邏輯的工作。對(duì)于開(kāi)發(fā)者發(fā)布的每個(gè)組件模塊,集成者還可以通過(guò)屬性來(lái)配置和調(diào)整其實(shí)現(xiàn)功能的各項(xiàng)參數(shù),以滿(mǎn)足具體應(yīng)用的需要。這樣對(duì)于沒(méi)有軟件開(kāi)發(fā)經(jīng)驗(yàn)的行業(yè)專(zhuān)家來(lái)說(shuō),Sedona允許他們采用組件模塊的方式來(lái)積累并延續(xù)行業(yè)經(jīng)驗(yàn),并且以圖形化的方式讓用戶(hù)進(jìn)行模塊的簡(jiǎn)單連線組合,這就為行業(yè)專(zhuān)家在各自的領(lǐng)域中進(jìn)行創(chuàng)造性應(yīng)用奠定了堅(jiān)實(shí)的基礎(chǔ)。

        3.2 開(kāi)發(fā)者工作流程

        開(kāi)發(fā)者的工作流程通常按如下步驟進(jìn)行:

        ① 用面向?qū)ο蟮腟edona編程語(yǔ)言編寫(xiě)Sedona組件,用于實(shí)現(xiàn)某種功能或者算法。

        ② 用sedonac編譯器工具將Sedona組件源代碼編譯成工具包。在編譯的過(guò)程中,工具包里所有包含的類(lèi)都要先進(jìn)行有效性檢查,然后才被編譯成一種特殊的中間格式代碼(Intermediate Representation,IR)。IR就像是Sedona的匯編語(yǔ)言一樣,它的引入使得用Sedona語(yǔ)言開(kāi)發(fā)的組件或者應(yīng)用有了很好的移植性,因?yàn)橛肐R實(shí)現(xiàn)的用戶(hù)邏輯代碼直到最后才會(huì)針對(duì)某個(gè)具體應(yīng)用平臺(tái)編譯成對(duì)應(yīng)的二進(jìn)制Sedona虛擬機(jī)指令,這樣就能讓開(kāi)發(fā)好的工具包適應(yīng)所有的平臺(tái),而不需要在不同平臺(tái)之間進(jìn)行多次編譯。在編譯的同時(shí),該編譯器也能針對(duì)每個(gè)類(lèi)產(chǎn)生標(biāo)準(zhǔn)的Java classfile文件,從而可以在Java虛擬機(jī)上直接運(yùn)行Sedona應(yīng)用代碼,以便于開(kāi)發(fā)者利用Java的開(kāi)發(fā)調(diào)試工具對(duì)應(yīng)用組件進(jìn)行開(kāi)發(fā)調(diào)試,大大提高開(kāi)發(fā)效率。

        ③ 開(kāi)發(fā)者將組件以工具包的形式發(fā)布,由集成者選擇將哪些工具包安裝到最終的設(shè)備上去,這樣就由sedonac工具將這些工具包編譯成二進(jìn)制的scode映像文件(這一步通常由工具自動(dòng)完成)。集成者選擇的工具包決定了在設(shè)備上能使用的組件功能,這樣的自由選擇能力,大大提高了設(shè)備的適用范圍,使得集成者可以根據(jù)具體應(yīng)用環(huán)境進(jìn)行靈活的裁剪。

        ④ 將Sedona虛擬機(jī)和scode映像文件加載到設(shè)備上運(yùn)行。這些文件既可以預(yù)先保存在設(shè)備的ROM上,從而在設(shè)備上電之后直接運(yùn)行,也可以由集成者臨時(shí)選擇,通過(guò)網(wǎng)絡(luò)用SOX協(xié)議動(dòng)態(tài)加載。這樣就使得集成者能非常靈活、方便地根據(jù)不同需求進(jìn)行現(xiàn)場(chǎng)定制。

        3.3 集成者工作流程

        在開(kāi)發(fā)者將基本的組件模塊設(shè)計(jì)好并發(fā)布出來(lái)之后,就可以讓集成者自行進(jìn)行設(shè)備功能的開(kāi)發(fā)與定制,從而用標(biāo)準(zhǔn)的開(kāi)發(fā)方式實(shí)現(xiàn)統(tǒng)一的“分散控制”思想。通常集成者是某個(gè)領(lǐng)域或者行業(yè)的專(zhuān)家,他們用圖形化工具,靈活地選擇哪些工具包用在設(shè)備上,然后選擇需要的控制組件拖拽到工作區(qū)上,依據(jù)組件之間的數(shù)據(jù)流向或者控制邏輯關(guān)系,采用連線的方式將它們組織在一起,從而實(shí)現(xiàn)最終的應(yīng)用程序。

        采用圖形化的工具來(lái)設(shè)計(jì)應(yīng)用程序,既可以在現(xiàn)場(chǎng)直接連接設(shè)備,實(shí)時(shí)地用SOX協(xié)議對(duì)設(shè)備進(jìn)行開(kāi)發(fā),直接觀察到設(shè)備的運(yùn)行效果;又可以離線進(jìn)行設(shè)計(jì),然后將應(yīng)用程序保存在“sax”文件里,之后在需要更新設(shè)備的時(shí)候用sedonac工具將其編譯成“sab”文件,并用SOX協(xié)議將編譯后的程序傳輸安裝到設(shè)備上,完成應(yīng)用程序的更新。

        3.4 控制邏輯實(shí)現(xiàn)

        在Sedona開(kāi)發(fā)軟件中并沒(méi)有現(xiàn)成的組件可以實(shí)現(xiàn)樓宇自控系統(tǒng)中風(fēng)機(jī)的控制邏輯。雖然可以利用其基本的各種邏輯控制組件實(shí)現(xiàn)控制算法,但這里介紹如下步驟,讓開(kāi)發(fā)者能很容易地開(kāi)發(fā)用戶(hù)自定義的控制邏輯組件。

        ① 以3.4.43版本的軟件為例,假設(shè)應(yīng)用軟件安裝在“C:\Niagara\Niagara-3.4.43”下根目錄,后面為表述方便,將根目錄簡(jiǎn)述為{Root}。

        ② 在{Root}\sedona\src目錄下創(chuàng)建一個(gè)新的工具包目錄,這里取名為L(zhǎng)ongDHuaTools。

        ③ 在{Root}\sedona\src\LongDHuaTools目錄下創(chuàng)建“kit.xml”文件,該文件是用來(lái)描述編譯器編譯時(shí)所需要的相關(guān)源代碼目錄及其他信息,詳細(xì)的內(nèi)容如下:

        ④ 在{Root}\sedona\src\LongDHuaTools目錄下創(chuàng)建“Fan.sedona”文件,該文件是用戶(hù)自定義風(fēng)機(jī)控制邏輯的源代碼文件,詳細(xì)的內(nèi)容如下:

        ⑤ 啟動(dòng)一個(gè)DOS命令行窗體,轉(zhuǎn)到{Root}\sedona\src\LongDHuaTools目錄下,輸入如下命令執(zhí)行編譯的過(guò)程:

        ⑥ 在經(jīng)過(guò)上述5個(gè)步驟之后,將會(huì)自動(dòng)創(chuàng)建{Root}\sedona\kits\LongDHuaTools目錄,并將編譯好的工具包文件拷貝到該目錄下,如 LongDHuaTools-182eba01-1.0.0.kit。其命名分3個(gè)部分,第1部分是工具包名稱(chēng),包含供應(yīng)商信息,第2部分是校驗(yàn)碼,第3部分是工具包的版本號(hào)。至此一個(gè)新的風(fēng)機(jī)控制邏輯組件已經(jīng)創(chuàng)建成功。

        4 總 結(jié)

        Sedona軟件框架主要是面向基于互聯(lián)網(wǎng)的智能型嵌入式設(shè)備而設(shè)計(jì)的,其主要特點(diǎn)如下:

        ①Sedona語(yǔ)言是一種通用的面向組件化的編程語(yǔ)言,非常類(lèi)似Java或者C#;它支持單一繼承、多態(tài)等面向?qū)ο蟮奶匦?,不支持接口擴(kuò)展;采用靜態(tài)內(nèi)存設(shè)計(jì)模式,不支持new關(guān)鍵字,從而非常適合只有100KB左右的嵌入式設(shè)備,用戶(hù)可以編寫(xiě)自定義的擴(kuò)展功能函數(shù)或者對(duì)象組件等,從而可以不斷擴(kuò)充新的功能。

        ②Sedona虛擬機(jī)是一個(gè)小型解析器,采用ANSI C編寫(xiě),具有良好的可移植性,無(wú)論底層有沒(méi)有操作系統(tǒng)的支持,移植都很方便。由于有了Sedona虛擬機(jī),也就實(shí)現(xiàn)了類(lèi)似Java語(yǔ)言的“一次編程、隨處可運(yùn)行”的目標(biāo),只要是采用Sedona語(yǔ)言編寫(xiě)的代碼,只要編寫(xiě)一次,就可以在任何支持Sedona虛擬機(jī)的設(shè)備上運(yùn)行。

        ③ 支持Java。Sedona編譯器不僅能將Sedona程序編譯成Sedona虛擬機(jī)能識(shí)別的二進(jìn)制代碼,也能將其編譯成標(biāo)準(zhǔn)Java字節(jié)碼,從而可以在Java虛擬機(jī)上運(yùn)行用戶(hù)的Sedona應(yīng)用程序,這就允許像使用Java的JAR文件那樣運(yùn)行Sedona應(yīng)用程序。在Java虛擬機(jī)上運(yùn)行Sedona應(yīng)用程序有兩點(diǎn)好處,一方面類(lèi)似HotSpot這樣的Java虛擬機(jī)擁有高效的即時(shí)編譯技術(shù)(JIT),能在運(yùn)行時(shí)將Java字節(jié)碼編譯并優(yōu)化成本機(jī)代碼執(zhí)行,從而提高運(yùn)行效率,使得Sedona應(yīng)用程序在Java上能運(yùn)行得更快;另外一方面,在Java環(huán)境下能有更多的開(kāi)發(fā)調(diào)試工具可以使用,這樣就能在程序運(yùn)行出現(xiàn)異常情況的時(shí)候,充分利用Java下的開(kāi)發(fā)工具進(jìn)行邊界檢查和堆棧跟蹤,方便快速開(kāi)發(fā)調(diào)試程序。

        ④ 面向小型設(shè)備。在Java上運(yùn)行的Sedona所需要的資源和性能使其并不適合大多數(shù)嵌入式設(shè)備。Java通常需要好幾兆的內(nèi)存來(lái)運(yùn)行,并且有些Java虛擬機(jī)還需要運(yùn)行時(shí)的授權(quán)費(fèi)用,所以Sedona的虛擬機(jī)就專(zhuān)門(mén)針對(duì)只有100KB左右內(nèi)存的嵌入式設(shè)備進(jìn)行設(shè)計(jì)。Sedona虛擬機(jī)不支持new關(guān)鍵字,并且采用靜態(tài)內(nèi)存設(shè)計(jì)模式,這樣就避免了Java虛擬機(jī)在運(yùn)行時(shí)存在垃圾回收算法影響運(yùn)行效率的問(wèn)題,使得Sedona虛擬機(jī)在嵌入式領(lǐng)域中能滿(mǎn)足對(duì)實(shí)時(shí)性的特殊要求。

        ⑤ 面向組件化的編程。Sedona采用組件化的方式編程,組件可以是某種服務(wù)程序,也可以是其他組件的組合連接,從而完成某種數(shù)據(jù)處理或者流程控制。在已經(jīng)開(kāi)發(fā)好的組件基礎(chǔ)上,將各個(gè)預(yù)先編譯好的組件連接起來(lái),形成最后的應(yīng)用程序,這樣的編程模型非常適合采用圖形化編程工具來(lái)進(jìn)行開(kāi)發(fā),同時(shí)也便于用戶(hù)的理解和使用。

        ⑥ 聯(lián)網(wǎng)性能。Sedona內(nèi)嵌多種通信協(xié)議,可以運(yùn)行在任何基于IP通信的網(wǎng)絡(luò)上,包括6LoWPAN等。通過(guò)聯(lián)網(wǎng)通信協(xié)議,可以讓用戶(hù)實(shí)時(shí)觀察設(shè)備運(yùn)行數(shù)據(jù)并進(jìn)行遠(yuǎn)程控制,也允許用戶(hù)通過(guò)聯(lián)網(wǎng)遠(yuǎn)程實(shí)時(shí)對(duì)應(yīng)用程序進(jìn)行增加、刪除、修改操作,甚至可以遠(yuǎn)程更新整個(gè)嵌入式系統(tǒng)的固件代碼。Sedona不僅提供標(biāo)準(zhǔn)的通信協(xié)議,如BAC-net、Lonworks、Modbus等,還允許用戶(hù)自行開(kāi)發(fā)新的通信協(xié)議,以便兼容傳統(tǒng)的控制設(shè)備或者擴(kuò)展新的用途。

        ⑦ 開(kāi)源的系統(tǒng)。Sedona核心技術(shù)基于一種靈活的學(xué)術(shù)性授權(quán),因此對(duì)于制造廠家來(lái)說(shuō)很容易在其設(shè)備上集成Sedona技術(shù),并且保證用Sedona開(kāi)發(fā)的工具或者應(yīng)用很容易地移植到任何Sedona設(shè)備上。Sedona開(kāi)源框架整合了最新的IT技術(shù),如面向?qū)ο缶幊陶Z(yǔ)言、虛擬機(jī)、圖形化組件開(kāi)發(fā)技術(shù)等,給樓宇自動(dòng)化領(lǐng)域帶來(lái)了一種新的解決方案。相信經(jīng)本文的拋磚引玉,會(huì)有越來(lái)越多的人參與到這個(gè)開(kāi)源項(xiàng)目的開(kāi)發(fā)與建設(shè)中來(lái),那時(shí)就會(huì)有源源不斷的新思路補(bǔ)充到這個(gè)開(kāi)源框架里來(lái),使其不斷壯大,給樓宇自動(dòng)化領(lǐng)域也注入新的活力。希望本文能為Sedona在國(guó)內(nèi)的應(yīng)用與發(fā)展開(kāi)個(gè)好頭。

        編者注:本文為期刊縮略版,全文見(jiàn)本刊網(wǎng)站www.mesnet.com.cn。

        [1]朗德華信(北京)自控技術(shù)有限公司.開(kāi)源樓宇自控軟件體系框架 Sedona簡(jiǎn)介[OL].[2012-07].http://www.1000bas.com/html/2009-10/8100.html.

        [2]吳財(cái)軍.開(kāi)源樓宇自控軟件體系框架Sedona簡(jiǎn)介[OL].[2012-07].http://www.jielizhun.com/Read.Asp?NewsID=3.

        猜你喜歡
        工具包圖形化開(kāi)發(fā)者
        Epigallocatechin-3-gallate exerts antihypertensive effects and improves endothelial function in spontaneously hypertensive rats
        谷歌云與Digital Asset合作推出區(qū)塊鏈工具包
        LKJ自動(dòng)化測(cè)試系統(tǒng)圖形化技術(shù)研究
        運(yùn)用MATLAB軟件求解高中數(shù)學(xué)中的線性和非線性規(guī)劃問(wèn)題
        科技視界(2016年21期)2016-10-17 19:09:05
        16%游戲開(kāi)發(fā)者看好VR
        CHIP新電腦(2016年3期)2016-03-10 13:06:42
        運(yùn)用圖形化聽(tīng)寫(xiě)式復(fù)習(xí),構(gòu)建高效地理課堂
        iOS開(kāi)發(fā)者調(diào)查
        電腦迷(2015年8期)2015-05-30 12:27:10
        iOS開(kāi)發(fā)者調(diào)查
        電腦迷(2015年4期)2015-05-30 05:24:09
        圖形化地區(qū)電網(wǎng)無(wú)功優(yōu)化軟件開(kāi)發(fā)與應(yīng)用
        Microchip推出PIC32藍(lán)牙入門(mén)工具包
        国产久色在线拍揄自揄拍| 日日噜噜夜夜狠狠久久无码区| 暖暖免费 高清 日本社区在线观看| 久久久久久岛国免费网站| 91九色国产在线观看| 福利利视频在线观看免费| 色多多性虎精品无码av| 日本老熟妇50岁丰满| 亚洲av成本人无码网站| 97久久综合区小说区图片区| 国产黄色一区二区三区,| 激情综合五月婷婷久久| 成人综合网站| 粉嫩少妇内射浓精videos| 视频精品熟女一区二区三区| 日韩一级精品视频免费在线看| 亚洲最新无码中文字幕久久| 国产女厕偷窥系列在线视频| 色偷偷88888欧美精品久久久| 国产人妖一区二区在线| 五月婷婷开心五月激情| 欲求不満の人妻松下纱荣子 | 激情综合一区二区三区| 91孕妇精品一区二区三区| 国产一区二区三区特黄| 亚洲一区二区三区,日本| 无码国产精品一区二区免费式直播| 成人天堂资源www在线| 美腿丝袜av在线播放| 在线免费观看蜜桃视频| 国产精品多人p群无码| 精品久久亚洲中文无码| 久久精品国产av大片| 青青久在线视频免费视频| 亚洲欧美国产精品久久| 116美女极品a级毛片| 亚洲av综合色区在线观看| 国产精品一区二区偷拍| 国产国产人免费人成免费视频| 亚洲av无码一区二区三区网站 | 三上悠亚久久精品|