• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    PROFINET IO設(shè)備中DCP協(xié)議的研究與應(yīng)用

    2023-02-06 10:12:32朱瑞華
    關(guān)鍵詞:樹(shù)莓IP地址組態(tài)

    榮 鋒,朱瑞華

    (1.天津工業(yè)大學(xué) 電子與信息工程學(xué)院,天津 300387;2.天津市光電檢測(cè)技術(shù)與系統(tǒng)重點(diǎn)實(shí)驗(yàn)室,天津 300387)

    0 引言

    PROFINET是工業(yè)控制領(lǐng)域廣泛應(yīng)用的一種工業(yè)以太網(wǎng),具備成熟的解決方案[1]。在HMS Networks對(duì)工業(yè)網(wǎng)絡(luò)市場(chǎng)研究報(bào)告中發(fā)現(xiàn)PROFINET的市場(chǎng)份額位居首位,尤其是在工廠自動(dòng)化、過(guò)程自動(dòng)化、安全應(yīng)用領(lǐng)域[2]。截止到2022年初,PROFINET約已連接1 600萬(wàn)個(gè)節(jié)點(diǎn),足以證明PROFINET的應(yīng)用是如此廣泛。而國(guó)內(nèi)在“中國(guó)制造2025”的國(guó)家戰(zhàn)略推動(dòng)下,PROFINET也將有更大的發(fā)展,因此對(duì)PROFINET的研究也應(yīng)該更深層次和多方面。

    對(duì)于PROFINET的研究可大致分為性能分析、產(chǎn)品開(kāi)發(fā)、診斷、安全等。張國(guó)棟等人對(duì)PROFINET RT和IRT的數(shù)據(jù)轉(zhuǎn)發(fā)方式進(jìn)行了分析,并利用公式推導(dǎo)出了IO設(shè)備的刷新時(shí)間[3]。KLEINES H等人通過(guò)數(shù)值模擬PROFINET IO網(wǎng)絡(luò)性能[4]。劉柯等人對(duì)RT通信幀的結(jié)構(gòu)、周期組成以及通信周期的相關(guān)參數(shù)計(jì)算進(jìn)行了研究[5]。對(duì)于PROFINET IO設(shè)備的開(kāi)發(fā),從原理上普通以太網(wǎng)網(wǎng)卡不能完全實(shí)現(xiàn)PROFINET IO功能,目前市場(chǎng)上廣泛應(yīng)用的解決方案是依賴西門子公司的ERTEC芯片、瑞薩公司的TPS-1芯片、赫優(yōu)訊公司的Netx51/52芯片等專用網(wǎng)絡(luò)控制芯片來(lái)實(shí)現(xiàn)PROFINET IO通信。如閆菲等人用ERTEC200P芯片開(kāi)發(fā)了PROFINET IO工業(yè)以太網(wǎng)接口[6]。徐建明等人基于TPS-1芯片設(shè)計(jì)了一種PROFINET耦合器設(shè)備[7]。劉振杰以NETX51芯片設(shè)計(jì)了一款PROFINET從站接口模塊[8]。但這些方案開(kāi)發(fā)成本較高,對(duì)于一些非運(yùn)動(dòng)控制領(lǐng)域有一定的冗余性。因此本文利用普通網(wǎng)卡通過(guò)軟件設(shè)計(jì)實(shí)現(xiàn)PROFINET IO通信的NRT、RT功能。為證明廣泛性,在樹(shù)莓派3B+硬件平臺(tái)上移植協(xié)議棧,實(shí)現(xiàn)樹(shù)莓派接入PROFINET網(wǎng)絡(luò)。PROFINET IO協(xié)議棧依照設(shè)備類型Class B進(jìn)行設(shè)計(jì),支持非同步實(shí)時(shí)數(shù)據(jù)交換,可以實(shí)現(xiàn)LLDP、DCP、SNMP協(xié)議。本設(shè)計(jì)可以實(shí)現(xiàn)對(duì)實(shí)時(shí)性要求不苛刻的非運(yùn)動(dòng)控制領(lǐng)域的工業(yè)控制。

    PROFINET通信系統(tǒng)中,DCP在系統(tǒng)啟動(dòng)時(shí)分配設(shè)備名稱和IP地址,是PROFINET網(wǎng)絡(luò)中數(shù)據(jù)交互的基礎(chǔ),對(duì)于PROFINET的研究和實(shí)現(xiàn)通信功能離不開(kāi)DCP。因此本文在實(shí)現(xiàn)PROFINET IO通信功能的基礎(chǔ)上對(duì)協(xié)議棧中的DCP子協(xié)議進(jìn)行深入研究,從DCP協(xié)議的原理出發(fā),對(duì)DCP在PROFINET系統(tǒng)中的作用及軟件實(shí)現(xiàn)進(jìn)行研究和分析。利用西門子PLC S7-1200控制器搭建通信測(cè)試平臺(tái),驗(yàn)證DCP協(xié)議在PROFINET中的作用及樹(shù)莓派RT和NRT通信的實(shí)現(xiàn),并將Wireshark軟件抓取到的數(shù)據(jù)幀解析,得出IO設(shè)備的更新時(shí)間抖動(dòng)。本文的研究將會(huì)幫助自動(dòng)化工程師加深對(duì)PROFINET協(xié)議棧的理解,從而更好的去應(yīng)用PROFINET。

    1 PROFINET IO

    PROFINET根據(jù)不同的應(yīng)用類型提供了兩種解決方案,PROFINET CBA和PROFINET IO[9]。其中PROFINET CBA主要用于實(shí)現(xiàn)控制器之間的通信,而PROFINET IO主要用于實(shí)現(xiàn)控制器與IO設(shè)備之間的通信。

    PROFINET IO定義了3個(gè)設(shè)備角色:IO控制器、IO監(jiān)控器和IO設(shè)備。

    1)IO設(shè)備是構(gòu)成自動(dòng)化過(guò)程接口的外圍現(xiàn)場(chǎng)設(shè)備,分為塊IO設(shè)備和模塊化IO設(shè)備兩種類型。塊IO設(shè)備具有固定模塊配置,而模塊化IO設(shè)備可靈活添加和刪除模塊。

    2)IO控制器用于控制自動(dòng)化過(guò)程,負(fù)責(zé)其相關(guān)的現(xiàn)場(chǎng)設(shè)備的 IP 地址分配、配置、參數(shù)設(shè)置、警報(bào)處理。

    3)IO監(jiān)視器用于完成對(duì)設(shè)備的遠(yuǎn)程控制、檢查、維護(hù)或參數(shù)化 IO設(shè)備的客戶端功能,通過(guò)在監(jiān)視器禁用IO控制器來(lái)臨時(shí)強(qiáng)制過(guò)程輸出值,通常是HMI、工程工具充當(dāng)監(jiān)視器。

    PROFINET IO設(shè)備在應(yīng)用層定義了插槽/子插槽的設(shè)備模型,其中插槽表示設(shè)備的物理或邏輯模塊,又被分為多個(gè)子插槽,子插槽相當(dāng)于過(guò)程數(shù)據(jù)的接口,每個(gè)插槽的IO數(shù)據(jù)、報(bào)警、診斷數(shù)據(jù)都被分配到這些子插槽中[10]。IO設(shè)備不同模塊和子模塊在通用站點(diǎn)描述文件(GSD,general station description)中描述。塊IO設(shè)備具有通用站點(diǎn)描述文件中描述的固定模塊配置,而模塊化IO設(shè)備允許根據(jù)需要添加和刪除模塊,GSD文件中包含所有可能的模塊,但I(xiàn)O設(shè)備的實(shí)際模塊需要在工程工具中定義,下載到控制器后,由控制器告訴IO設(shè)備需要的配置。

    PROFINET IO針對(duì)數(shù)據(jù)對(duì)實(shí)時(shí)性不同的要求,劃分為標(biāo)準(zhǔn)通道,實(shí)時(shí)通道和等實(shí)時(shí)通道[11]。標(biāo)準(zhǔn)通道是基于UDP/IP,用于上下文管理,處理IO設(shè)備的配置和診斷。實(shí)時(shí)通道(RT)用于傳輸循環(huán)過(guò)程數(shù)據(jù)、事件和警報(bào),它在標(biāo)準(zhǔn)通道的基礎(chǔ)上,將實(shí)時(shí)數(shù)據(jù)幀嵌入到以太網(wǎng)幀中,不使用任何高層協(xié)議。也就是直接在數(shù)據(jù)鏈路層進(jìn)行封裝,在以太網(wǎng)報(bào)文頭后加上PROFINET報(bào)文頭,因此能繞過(guò)UDP/IP堆棧,直接由PROFINET的協(xié)議棧處理,以此來(lái)減少數(shù)據(jù)的開(kāi)銷量,高效利用帶寬,提高PROFINET的實(shí)時(shí)性能。等實(shí)時(shí)通道用于對(duì)時(shí)間要求嚴(yán)格的通信,如運(yùn)動(dòng)控制,它通過(guò)特殊的IRT硬件使IRT數(shù)據(jù)在預(yù)先配置和計(jì)劃的時(shí)隙中發(fā)送,從而達(dá)到更高實(shí)時(shí)性。

    2 DCP發(fā)現(xiàn)和基本配置協(xié)議

    DCP為“發(fā)現(xiàn)和基本配置協(xié)議”是一種數(shù)據(jù)鏈路層協(xié)議,它為PROFINET提供多種服務(wù),例如用于PROFINET網(wǎng)絡(luò)中的發(fā)現(xiàn)識(shí)別設(shè)備,配置設(shè)備名稱、配置IP地址等[12]。

    2.1 DCP的主要功能

    為實(shí)現(xiàn)這些服務(wù)DCP提供了“Identify All”、“Identify”、“Set”、“Set-Flash”、“Set-Reset to Factory”、“Get”和“Hello”作為主要功能。PROFINET工程工具、控制器和設(shè)備中都集成了DCP服務(wù),但他們所側(cè)重的功能不同,如在IO設(shè)備上要能對(duì)控制器所發(fā)布的命令做出響應(yīng),要能主動(dòng)利用Hello功能向控制器發(fā)送消息,而IO控制器要能利用Identify功能來(lái)查找具體設(shè)備。主要功能具體描述如下。

    Identify All:識(shí)別全部設(shè)備。以廣播的方式向整個(gè)網(wǎng)絡(luò)發(fā)送消息,所有設(shè)備收到消息都要做出響應(yīng)。工程工具中利用此功能可以獲得所有設(shè)備信息列表來(lái)確定網(wǎng)絡(luò)中是否存如下問(wèn)題:1)設(shè)備有無(wú)連接;2)設(shè)備名稱是否設(shè)置;3)設(shè)備中有無(wú)重復(fù)的IP地址或重復(fù)的設(shè)備名稱;4)設(shè)備名稱和IP地址設(shè)置是否合規(guī);5)設(shè)備類型或供應(yīng)商是否正確,利用Identify All功能工程工具可以輕松實(shí)現(xiàn)網(wǎng)絡(luò)管理。

    Identify:查找具體設(shè)備和檢查設(shè)備參數(shù)設(shè)置。系統(tǒng)啟動(dòng)前,IO控制器會(huì)用它來(lái)識(shí)別設(shè)備,通過(guò)設(shè)備名稱來(lái)進(jìn)行查找,具有該設(shè)備名稱的設(shè)備進(jìn)行響應(yīng),但如果查找的設(shè)備名稱長(zhǎng)度為零則所有未分配名稱的設(shè)備都要做出響應(yīng)。

    Get:獲取設(shè)備信息。比如獲取設(shè)備名稱、IP地址和制造商信息等。

    Set:向設(shè)備寫入?yún)?shù)。將設(shè)備名稱和IP地址寫入尋址到的設(shè)備中,可以在一個(gè)幀中依次請(qǐng)求多個(gè)條件,用來(lái)找到相匹配的設(shè)備。

    Set-Flash:讓指定IO設(shè)備的LED燈閃爍,當(dāng)同一網(wǎng)絡(luò)中有多個(gè)同類設(shè)備時(shí),可以通過(guò)閃爍LED的方式來(lái)確定要操作的對(duì)象。

    Hello:IO設(shè)備主動(dòng)給IO控制器發(fā)送信息。主要在快速啟動(dòng)時(shí)使用Hello功能,表示IO設(shè)備已經(jīng)準(zhǔn)備就緒,從而縮短控制器查找IO設(shè)備的時(shí)間,實(shí)現(xiàn)系統(tǒng)的快速啟動(dòng)。

    2.2 DCP在PROFINET中的典型用法

    DCP是PROFINET重要的組成部分,實(shí)現(xiàn)PROFINET IO系統(tǒng)啟動(dòng)時(shí)設(shè)備名稱、IP地址的分配,是PROFINET網(wǎng)絡(luò)中數(shù)據(jù)交互的基礎(chǔ)[13]。同時(shí)DCP使PROFINET IO設(shè)備實(shí)現(xiàn)無(wú)需組態(tài)工具替換成為可能。

    2.2.1 啟動(dòng)時(shí)的DCP

    DCP協(xié)議是實(shí)現(xiàn)PROFINET IO通信的條件,在系統(tǒng)組態(tài)時(shí),工程工具會(huì)先給IO控制器分配IP地址,然后給組態(tài)好的IO設(shè)備分配設(shè)備名稱。隨后將組態(tài)好的信息下載到IO控制器中,這樣IO控制器就擁有尋址IO設(shè)備和數(shù)據(jù)交換所需的所有信息。IO控制器在根據(jù)設(shè)備名稱為IO設(shè)備分配IP地址。IP地址和設(shè)備名稱的分配都依賴于DCP子協(xié)議,在系統(tǒng)通電后,IO控制器與IO設(shè)備建立通信關(guān)系和應(yīng)用關(guān)系,然后IO控制器和IO設(shè)備交換過(guò)程數(shù)據(jù)、報(bào)警和非循環(huán)數(shù)據(jù)。從組態(tài)到系統(tǒng)啟動(dòng)的步驟如圖1所示。

    圖1 組態(tài)到系統(tǒng)啟動(dòng)

    PROFINET系統(tǒng)中,指定DCP協(xié)議分配設(shè)備名稱和IP地址。每個(gè)PROFINET設(shè)備會(huì)根據(jù)DNS和IP地址分配唯一的設(shè)備名稱。這個(gè)設(shè)備名稱用于系統(tǒng)啟動(dòng)時(shí)的PROFINET IO設(shè)備尋址。設(shè)備名稱和IP地址的成功分配是控制器和設(shè)備之間正常通信的前提。DCP協(xié)議分配IO設(shè)備名稱和IP地址的具體步驟如下。

    1)IO設(shè)備分配名稱。

    自動(dòng)化系統(tǒng)啟動(dòng)時(shí)需要進(jìn)行基于符號(hào)名稱的設(shè)備地址解析,在IO控制器和IO設(shè)備真正建立連接之前,IO設(shè)備就已經(jīng)分配了名字,該名稱是由IO監(jiān)視器分配并保存在IO設(shè)備中。這個(gè)名稱用作設(shè)備運(yùn)行期間對(duì)它明確的標(biāo)識(shí)。具體流程如圖2所示。

    圖2 DCP分配設(shè)備名稱

    2) IO設(shè)備分配IP地址。

    IO控制器以設(shè)備名稱作為尋址標(biāo)準(zhǔn)向IO設(shè)備發(fā)送請(qǐng)求,具有該名字的設(shè)備發(fā)送響應(yīng)。ARP請(qǐng)求在子網(wǎng)內(nèi)以廣播的方式發(fā)送,用于尋找對(duì)應(yīng)IP地址,該IP地址的設(shè)備發(fā)送自己的MAC地址作為響應(yīng),以此來(lái)檢查IP地址所對(duì)應(yīng)的MAC地址。如果沒(méi)有接收到ARP響應(yīng),則代表該IP地址的設(shè)備在此子網(wǎng)內(nèi)不存在或者沒(méi)有處在活動(dòng)的狀態(tài)。然后利用DCP_Set設(shè)置IP地址并等待IO設(shè)備發(fā)送相應(yīng)響應(yīng)進(jìn)行確認(rèn)。具體步驟如圖3所示。

    圖3 DCP分配IP地址

    PROFINET 網(wǎng)絡(luò)中也可以選用動(dòng)態(tài)主機(jī)配置協(xié)議(DHCP)對(duì)IO設(shè)備進(jìn)行地址分配[14]。但DHCP在地址分配時(shí),依賴一個(gè)可以使用的服務(wù)器,通常在自動(dòng)化應(yīng)用的范圍外,服務(wù)器會(huì)因?yàn)楦鞣N原因關(guān)閉導(dǎo)致地址分配不成功。PROFINET網(wǎng)絡(luò)依賴于靜態(tài)地址,而DHCP提供的是動(dòng)態(tài)地址這使設(shè)備更換困難。MAC地址通常與DHCP服務(wù)器進(jìn)行綁定,如果需要更換一個(gè)設(shè)備,MAC地址即發(fā)生改變,這會(huì)阻止新設(shè)備獲取地址,并且使進(jìn)程處于停滯狀態(tài),直到重新配置DHCP服務(wù)器。而使用DCP可以本地化管理地址,IP地址不會(huì)過(guò)期,并且設(shè)備名稱對(duì)每個(gè)設(shè)備來(lái)說(shuō)都是唯一的,DCP可以在不使用組態(tài)工具的情況下完成設(shè)備替換。

    2.2.2 設(shè)備替換

    DCP和LLDP結(jié)合使用可以實(shí)現(xiàn)“無(wú)需組態(tài)工具的設(shè)備替換”[15]。LLDP通過(guò)交換機(jī)端口交換鄰居設(shè)備的信息,LLDP幀中包括發(fā)送端口的端口ID、發(fā)送設(shè)備的MAC地址或設(shè)備名稱、目的端口等?,F(xiàn)場(chǎng)設(shè)備接通后,相鄰設(shè)備之間會(huì)周期性的發(fā)送LLDP幀用于交換設(shè)備信息。設(shè)備解析收到的LLDP報(bào)文,將端口ID和設(shè)備名稱結(jié)合形成設(shè)備別名,這個(gè)別名將用于替換設(shè)備的尋址。

    如果設(shè)備發(fā)生故障,則將停止與其鄰居設(shè)備循環(huán)交換LLDP幀,這樣可以檢測(cè)出設(shè)備故障。當(dāng)響應(yīng)超時(shí),鄰居設(shè)備會(huì)刪除故障設(shè)備的信息,控制器也將檢測(cè)出這個(gè)設(shè)備不再“可尋址”。更換設(shè)備后,控制器會(huì)循環(huán)的嘗試用原設(shè)備名稱和新設(shè)備建立聯(lián)系。因?yàn)樾略O(shè)備的設(shè)備名稱為空,所以不能成功建立聯(lián)系,此時(shí)控制器使用DCP_Identify服務(wù),設(shè)置請(qǐng)求參數(shù)“Alias Name Of Station”,通過(guò)設(shè)備別名詢問(wèn)設(shè)備,新設(shè)備進(jìn)行應(yīng)答,控制器再通過(guò)DCP_Set將新設(shè)備重新命名。

    3 PROFINET IO協(xié)議棧設(shè)計(jì)與實(shí)現(xiàn)

    3.1 PROFINET IO軟件總體架構(gòu)

    PROFINET IO提供了主要用于IO控制器和IO設(shè)備之間通信的服務(wù)和協(xié)議[16]。PROFINET IO協(xié)議是由一組協(xié)議機(jī)器定義,協(xié)議??偧軜?gòu)如圖4所示[17]。圖3描繪了IO設(shè)備內(nèi)提供應(yīng)用關(guān)系應(yīng)用服務(wù)元素(AR ASE,Application Relationship Application Service Element)行為的協(xié)議機(jī)器及協(xié)議機(jī)器之間的交互?;疑?yàn)镻ROFINET IO協(xié)議中主要的協(xié)議機(jī)器,箭頭代表協(xié)議機(jī)器之間的主要交互。本文所實(shí)現(xiàn)的PROFINET IO協(xié)議棧以RT為最高通信標(biāo)準(zhǔn)實(shí)現(xiàn)數(shù)據(jù)收發(fā)和診斷報(bào)警功能。

    圖4 PROFINET IO 協(xié)議總架構(gòu)

    圖5 PROFINET IO數(shù)據(jù)交互流程

    PROFINET IO用戶通過(guò)IO設(shè)備的應(yīng)用層服務(wù)協(xié)議映射機(jī)(FSPM,F(xiàn)AL service protocol machines)發(fā)布或接收服務(wù)原語(yǔ)。IO設(shè)備上下文協(xié)議機(jī)(CMDEV, context management protocol machine device)用于控制通信關(guān)系的建立和啟動(dòng)停止其他協(xié)議機(jī)。上下文管理RPC設(shè)備協(xié)議機(jī)(CMRPC, context management RPC protocol machine)中映射并封裝了與遠(yuǎn)程過(guò)程調(diào)用協(xié)議(DCE RPC,distributed computing environment remote procedure call)相關(guān)的服務(wù)。管理IP和名稱分配協(xié)議機(jī)器(CMINA,context management Ip and name assignment)主要用于處理站名和IP地址的分配,幫助處理DCP_Set和DCP_Identify請(qǐng)求和管理發(fā)送DCP_HELLO請(qǐng)求。消費(fèi)者協(xié)議機(jī)器(CPM,consumer protocol machine)處理接收循環(huán)數(shù)據(jù),為傳入的實(shí)時(shí)數(shù)據(jù)幀注冊(cè)處理程序并監(jiān)視傳入的數(shù)據(jù)幀。提供者協(xié)議機(jī)器(PPM,provider protocol machine)處理數(shù)據(jù)的循環(huán)發(fā)送并初始化傳輸緩沖區(qū)。報(bào)警協(xié)議啟動(dòng)機(jī)器(ALPMI,alarm protocol machine initiator)用于觸發(fā)警報(bào)。報(bào)警協(xié)議應(yīng)答機(jī)器(ALPMR,alarm protocol machine responder)用于響應(yīng)傳入的警報(bào)。非循環(huán)協(xié)議接收機(jī)器(APMR,acyclic protocol machine receiver)用于接收傳入的報(bào)警幀。非循環(huán)協(xié)議發(fā)送機(jī)器(APMS,acyclic protocol machine sender)用于向IO控制器發(fā)送報(bào)警以太網(wǎng)幀。

    3.2 PROFINET IO數(shù)據(jù)交換模塊設(shè)計(jì)

    在PROFINET IO通信中,發(fā)送數(shù)據(jù)調(diào)度是周期進(jìn)行,網(wǎng)絡(luò)中的每個(gè)設(shè)備的數(shù)據(jù)傳輸開(kāi)始于循環(huán)RT數(shù)據(jù),隨后是傳輸非循環(huán)RT數(shù)據(jù),例如警報(bào)數(shù)據(jù),最后才傳輸NRT數(shù)據(jù)。

    PROFINET配置階段,控制器告訴IO設(shè)備實(shí)際的模塊和子模塊。IO設(shè)備會(huì)在app_plug_dap()函數(shù)中利用app_get_module_cfg()函數(shù)、app_get_submodule_cfg()函數(shù)、app_get_parameter_cfg函數(shù)獲取所需要模塊、子模塊、參數(shù)配置,再調(diào)用pnet_plug_module()、pnet_plug_submodule()將特定模塊插入特定的插槽,特定子插槽插入特定的子模塊,最終實(shí)現(xiàn)IO設(shè)備的實(shí)際應(yīng)用模塊所有與組態(tài)信息相一致的模塊信息。配置完成后,IO設(shè)備和控制器之間連續(xù)交換循環(huán)數(shù)據(jù)。

    PROFINET IO設(shè)備和IO控制器之間的實(shí)際數(shù)據(jù)傳輸只能通過(guò)應(yīng)用關(guān)系(AR,application relationship)建立通信,而一個(gè)AR中可以包含一個(gè)或者多個(gè)用于交換數(shù)據(jù)的通信關(guān)系(CR,communication relationship)。CR在多個(gè)隊(duì)列或緩沖區(qū)之間建立,用于交換不同的數(shù)據(jù),循環(huán)RT數(shù)據(jù)使用IO數(shù)據(jù)CR,配置和其他非循環(huán)數(shù)據(jù)在記錄數(shù)據(jù)CR中交換,實(shí)時(shí)報(bào)警在報(bào)警CR中交換??刂破髋cIO設(shè)備之間的數(shù)據(jù)交互根據(jù)不同事件調(diào)用不同的回調(diào)函數(shù)進(jìn)行處理,反復(fù)調(diào)用Events_Stata()函數(shù)判斷不同事件。PROFINET數(shù)據(jù)交互流程如圖5所示。

    PROFINET IO通信是按照生產(chǎn)者/消費(fèi)者的模式進(jìn)行,在循環(huán)數(shù)據(jù)交換時(shí),不僅要包含數(shù)據(jù)單元還要包含兩個(gè)數(shù)據(jù)狀態(tài)屬性,輸入輸出生產(chǎn)者狀態(tài)(IOPS,input output provider status)和輸入輸出消費(fèi)者狀態(tài)(IOCS,input output consumer status)。IOCS和IOPS狀態(tài)指示收到或發(fā)送的數(shù)據(jù)是否有效。

    當(dāng)IO設(shè)備向IO控制器發(fā)送輸入數(shù)據(jù)時(shí),IO設(shè)備即是生產(chǎn)者也是消費(fèi)者。作為生產(chǎn)者時(shí),Set_Output_Data()函數(shù)發(fā)送過(guò)程數(shù)據(jù)并利用Set_Output_IOPS()函數(shù)為輸入數(shù)據(jù)設(shè)置IOPS狀態(tài),然后通過(guò)輸出數(shù)據(jù)CR將過(guò)程數(shù)據(jù)提供給IO控制器。作為消費(fèi)者時(shí),用Set_Intput_IOCS()函數(shù)向控制器報(bào)告自己之前接收到的數(shù)據(jù)是否可以使用。

    當(dāng)IO控制器向IO設(shè)備發(fā)送輸出數(shù)據(jù)時(shí),IO設(shè)備調(diào)用Get_Intput_Data()函數(shù)獲取輸入緩沖區(qū)中數(shù)據(jù),Get_Intput_IOPS()函數(shù)讀取指定模塊的IOPS狀態(tài),Get_Output_IOCS()函數(shù)獲取IO控制器報(bào)告的接收到的數(shù)據(jù)是否可用信息。Data_Status_Changed()函數(shù)通知應(yīng)用程序接收到的數(shù)據(jù)狀態(tài)已更改。循環(huán)數(shù)據(jù)交換過(guò)程如圖6所示。

    圖6 循環(huán)數(shù)據(jù)交互過(guò)程

    4 DCP協(xié)議程序?qū)崿F(xiàn)

    PROFINET IO設(shè)備中集成的DCP協(xié)議實(shí)現(xiàn)程序主要包括處理DCP_Identify請(qǐng)求程序、處理DCP_Set請(qǐng)求程序、處理DCP_Get請(qǐng)求程序、處理DCP_Hello請(qǐng)求程序、閃爍信號(hào)燈、重置設(shè)置等。要求IO設(shè)備能夠?qū)刂破靼l(fā)出的DCP服務(wù)請(qǐng)求作出正確的響應(yīng)。IO控制器和IO設(shè)備上電后,IO設(shè)備接收到來(lái)自控制器的數(shù)據(jù)包,先判斷此包是否為PROFINET數(shù)據(jù)包,數(shù)據(jù)類型是否等于0x8892。再將接收到的數(shù)據(jù)包解析,根據(jù)frame ID發(fā)送到不同處理程序。本節(jié)主要分析DCP_Identify請(qǐng)求程序和處理DCP_Set請(qǐng)求程序的具體實(shí)現(xiàn)過(guò)程。

    4.1 DCP中使用的選項(xiàng)和子選項(xiàng)

    DCP是一種通過(guò)不同過(guò)濾判據(jù)進(jìn)行讀取和寫入設(shè)備參數(shù)及發(fā)現(xiàn)設(shè)備的協(xié)議。DCP服務(wù)的實(shí)現(xiàn)是根據(jù)設(shè)備選項(xiàng)進(jìn)行過(guò)濾判斷再執(zhí)行,IO控制器中發(fā)送的請(qǐng)求命令中包含篩選條件,滿足篩選條件的設(shè)備才會(huì)作出響應(yīng)。因此協(xié)議中定義了很多選項(xiàng)和子選項(xiàng),選項(xiàng)及子選項(xiàng)如表1所示。

    表1 DCP用到的選項(xiàng)及子選項(xiàng)

    4.2 處理DCP_Identify請(qǐng)求程序

    DCP_Identify_Req()是處理傳入的DCP_Identify請(qǐng)求函數(shù),是實(shí)現(xiàn)構(gòu)造響應(yīng)并發(fā)送響應(yīng)的過(guò)程。請(qǐng)求中包含篩選條件,只有所有的條件都匹配的設(shè)備才發(fā)送響應(yīng)。接收到請(qǐng)求中的frame ID=0xfefe時(shí),表示接收到的是DCP_Identify請(qǐng)求需要發(fā)送DCP_Identify響應(yīng)。

    先獲取本設(shè)備的MAC地址并給響應(yīng)分配緩沖區(qū),從接收到的請(qǐng)求幀中讀取信息準(zhǔn)備構(gòu)造響應(yīng)幀,其中響應(yīng)幀中的目的地址就是請(qǐng)求幀中的源地址,響應(yīng)幀中的源地址就是本設(shè)備的MAC地址。構(gòu)造響應(yīng)幀的報(bào)文頭,從請(qǐng)求幀的報(bào)文頭中修改所需要的內(nèi)容,包括以太網(wǎng)報(bào)文頭、PROFINET報(bào)文頭、DCP報(bào)文頭,DCP block報(bào)文頭。通過(guò)DCP_Get_Req_()函數(shù)來(lái)讀取請(qǐng)求幀中block頭中的選項(xiàng)和子選項(xiàng)。如果Option為PF_DCP_OPT_ALL并且子選項(xiàng)為PF_DCP_SUB_ALL時(shí),則將變量Identify_all賦值為ture,表示請(qǐng)求幀是要尋址所有設(shè)備,不過(guò)濾此條信息,IO設(shè)備也準(zhǔn)備做出響應(yīng)。根據(jù)讀取請(qǐng)求幀中的Option的值來(lái)改變變量match和ret的值,當(dāng)ret=0并且match=true時(shí),PF_dcp_Get_Req()函數(shù)插入Device_Option的元素個(gè)數(shù)個(gè)block構(gòu)造響應(yīng)幀。造響應(yīng)幀的流程圖如圖7所示。

    圖7 處理DCP_Identify請(qǐng)求程序

    4.3 處理DCP_Set請(qǐng)求程序

    DCP_Get_Set()是處理DCP_Set請(qǐng)求程序函數(shù),發(fā)送DCP_Set響應(yīng)的流程圖如圖8所示。使用Get_Device_Macaddr()函數(shù)檢查請(qǐng)求幀中的目的地址與本設(shè)備的MAC地址是否相匹配,如果匹配則修改請(qǐng)求幀為構(gòu)造響應(yīng)幀做準(zhǔn)備。包括在響應(yīng)幀中插入frame ID,設(shè)置以太網(wǎng)報(bào)頭,并從請(qǐng)求幀中復(fù)制DCP頭等。然后判斷請(qǐng)求幀中的Service_ID是否為PF_DCP_SERVICE_SET,在響應(yīng)中插入塊構(gòu)造完成響應(yīng)后發(fā)送響應(yīng),再通過(guò)DCP_Set_Commit()函數(shù)提交對(duì)ip_suite的更改。

    圖8 處理DCP_Set請(qǐng)求程序

    5 GSD描述文件的設(shè)計(jì)

    GSD是由元素和屬性構(gòu)成,基于可擴(kuò)展標(biāo)記語(yǔ)言(XML,eXtensible markup language)的通用工作站標(biāo)識(shí)語(yǔ)言(GSDML,general station description markup language )編寫,用來(lái)描述PROFINET設(shè)備功能的文件[18]。該文件主要描述了可在PROFINET IO設(shè)備中使用的可插拔硬件模塊類型,但設(shè)備實(shí)際要使用的硬件模塊需要在工程工具中進(jìn)行配置。配置好的組態(tài)信息下載到控制器中,控制器會(huì)告訴IO設(shè)備需要插入的IO模塊的類型,只有IO設(shè)備中所插入的模塊與組態(tài)信息中的配置模塊一致才能控制器和IO設(shè)備才能組態(tài)成功。GSD文件由、兩部分構(gòu)成,頭里的內(nèi)容一般是固定不變的,描述設(shè)備的信息。里的用于設(shè)置制造商ID、設(shè)備ID和制造商的名稱,設(shè)置為“I/0”,主要用于處理通信設(shè)置。GSD文件的結(jié)構(gòu)圖如圖9所示。

    圖9 GSD文件結(jié)構(gòu)圖

    中的描述IO設(shè)備中所有的模塊的信息。圖10是一字節(jié)輸入一字節(jié)輸出模塊GSD文件描述。

    圖10 GSD文件

    用來(lái)聲明一個(gè)模塊,控制器與IO設(shè)備通信時(shí)通過(guò)模塊的ID來(lái)建立AR關(guān)系,所以每個(gè)模塊的ID需是唯一;用來(lái)描述模塊名稱和硬軟件版本信息;一些子模塊是模塊固定不變的部分稱之為虛擬子模塊,就是描述這些子模塊的輸入輸出數(shù)據(jù)和記錄數(shù)據(jù)。用來(lái)聲明一個(gè)子模塊,其中“IDSM_132”用于外部文本列表中的賦值,“0x0132”為子模塊的ID。是對(duì)輸入輸出數(shù)據(jù)的描述,Type=“Unsigned8”表示輸入的數(shù)據(jù)類型為8位無(wú)符號(hào)數(shù);UseAsBits=“true”表示可以在工程工具中顯示每一位。 用來(lái)命名各個(gè)位,最低有效位的偏移量為 0,之后偏移量加一。對(duì)子模塊參數(shù)進(jìn)行描述,其中Index=“123”利用Index=“123”的索引值可以找到對(duì)應(yīng)的模塊進(jìn)行非實(shí)時(shí)數(shù)據(jù)的讀寫操作,Length=“4”定義了參數(shù)長(zhǎng)度為四字節(jié)。

    6 系統(tǒng)測(cè)試

    PROFINET是在標(biāo)準(zhǔn)以太網(wǎng)的基礎(chǔ)上精簡(jiǎn)協(xié)議棧,不僅提高了實(shí)時(shí)性還使PROFINET的實(shí)現(xiàn)更加簡(jiǎn)單[19]。這種優(yōu)化是在軟件層面,因此主要要求硬件平臺(tái)能夠接受和發(fā)送以太網(wǎng)二層的數(shù)據(jù)幀就可以實(shí)現(xiàn)作為 IO設(shè)備接入PROFINET網(wǎng)絡(luò)中。本文選用Raspberry Pi 3B+(樹(shù)莓派)作為硬件平臺(tái),它是基于Linux系統(tǒng)的Cortex-A53架構(gòu)微型電腦主板,搭配千兆網(wǎng)卡LAN7515,不僅可以實(shí)現(xiàn)數(shù)據(jù)幀的收發(fā)還可以實(shí)現(xiàn)PC的基本功能[20]。樹(shù)莓派和PLC通過(guò)交換機(jī)連接,但此次測(cè)試采用的交換機(jī)不是鏡像交換機(jī),因此需要在樹(shù)莓派上運(yùn)行Wireshark軟件來(lái)抓取硬件平臺(tái)和IO控制器之間的數(shù)據(jù)交互。系統(tǒng)測(cè)試連接如圖11所示。

    圖11 實(shí)驗(yàn)平臺(tái)結(jié)構(gòu)

    6.1 從組態(tài)到運(yùn)行系統(tǒng)

    在工程工具TAL Portal V15中對(duì)PROFINET IO系統(tǒng)進(jìn)行組態(tài),將IO設(shè)備的GSD文件加載到工程工具中[21]。組態(tài)連接如圖12所示。

    圖12 TAL Portal組態(tài)

    6.2 啟動(dòng)期間的數(shù)據(jù)交換

    控制器上電后發(fā)送DCP廣播消息,子網(wǎng)上的所有IO設(shè)備用其MAC地址應(yīng)答。控制器向IO設(shè)備發(fā)送帶有特定MAC地址的DCP消息,其中包含IO設(shè)備應(yīng)使用的IP地址和站名。IO設(shè)備相應(yīng)地設(shè)置自己的IP地址和站名。 然后,PLC使用在IP上的UDP運(yùn)行的DCE/RPC協(xié)議啟動(dòng)IO設(shè)備的實(shí)際配置。配置完成后,IO設(shè)備和控制器之間連續(xù)交換循環(huán)數(shù)據(jù)。

    樹(shù)莓派上運(yùn)行Wireshark對(duì)設(shè)備和控制器之間的通信進(jìn)行抓包分析。在設(shè)備剛啟動(dòng)時(shí),控制器先通過(guò)設(shè)備名稱“pndev”尋址設(shè)備并通過(guò)DCP_Set服務(wù)分配IP地址,ARP確認(rèn)過(guò)設(shè)備后開(kāi)始建立連接。系統(tǒng)的初始化數(shù)據(jù)是NRT非實(shí)時(shí)數(shù)據(jù),通過(guò)IP地址傳輸,其中192.168.0.1為PLC控制器的IP地址,192.168.0.50是樹(shù)莓派的IP地址。IO控制器和IO設(shè)備之間的連接建立分為四步:第一步建立AR和CR,控制器發(fā)送連接請(qǐng)求,樹(shù)莓派對(duì)建立連接的請(qǐng)求進(jìn)行響應(yīng),只有在能保證建立連接的時(shí)候才會(huì)發(fā)送響應(yīng),然后開(kāi)始建立數(shù)據(jù)交互所需的AR和CR。第二步傳輸參數(shù),控制器發(fā)送寫請(qǐng)求,樹(shù)莓派進(jìn)行響應(yīng)后給IO設(shè)備傳輸參數(shù),每個(gè)模塊或子模塊的參數(shù)都要進(jìn)行傳輸。第三步傳輸結(jié)束,控制器發(fā)出“DControl”請(qǐng)求也就代表著控制器對(duì)參數(shù)的傳輸結(jié)束,樹(shù)莓派進(jìn)行響應(yīng)后連接就完全建立起來(lái)了。第四步確認(rèn),樹(shù)莓派在發(fā)送“CControl”請(qǐng)求對(duì)連接的建立進(jìn)行確認(rèn),收到控制器的響應(yīng)后就開(kāi)始進(jìn)行數(shù)據(jù)交換。Wireshark在啟動(dòng)期間的抓包如圖13所示。

    圖13 啟動(dòng)期間的數(shù)據(jù)交換

    6.3 設(shè)備發(fā)送周期及抖動(dòng)性分析

    在工程工具中組態(tài)時(shí)設(shè)置IO設(shè)備的更新時(shí)間為4 ms,利用Wireshark軟件對(duì)系統(tǒng)數(shù)據(jù)交互進(jìn)行抓包,組態(tài)工具中的更新時(shí)間如圖14所示。將抓取到的數(shù)據(jù)進(jìn)行篩選,篩選出IO設(shè)備發(fā)送給控制器的RT數(shù)據(jù)并導(dǎo)出為CSV文件。在Excel中處理數(shù)據(jù),計(jì)算出相鄰兩個(gè)數(shù)據(jù)的發(fā)送時(shí)間差值得到更新時(shí)間,再計(jì)算相鄰兩個(gè)更新時(shí)間的差值得到更新時(shí)間抖動(dòng)值。利用Matlab繪制更新時(shí)間折線圖和抖動(dòng)折線圖,如圖15所示發(fā)送周期在所設(shè)置的4 ms上下浮動(dòng),并且可以看到抖動(dòng)值不超過(guò)50 μs,所實(shí)現(xiàn)的IO設(shè)備符合PROFINET RT實(shí)時(shí)性的要求。

    圖14 工程工具中的更新時(shí)間

    圖15 更新時(shí)間及抖動(dòng)值

    7 結(jié)束語(yǔ)

    PROFINET是工業(yè)實(shí)時(shí)以太網(wǎng)絡(luò)中的典型代表,在PROFINET應(yīng)用廣泛的今天,對(duì)PROFINET的研究應(yīng)該更加深入和多面化。針對(duì)同類設(shè)備依賴特定芯片,成本較高,可移植性差的問(wèn)題,通過(guò)軟件設(shè)計(jì)在普通網(wǎng)卡下實(shí)現(xiàn)PROFINET IO的RT和NRT通信。為證明廣泛性,在樹(shù)莓派硬件平臺(tái)上移植協(xié)議棧實(shí)現(xiàn)樹(shù)莓派接入PROFINET網(wǎng)絡(luò)。本文在實(shí)現(xiàn)通信功能的基礎(chǔ)上對(duì)PROFIENT協(xié)議棧中的DCP協(xié)議進(jìn)行重點(diǎn)研究。闡述了DCP協(xié)議的功能、原理和在PROFINET網(wǎng)絡(luò)中所起的作用,對(duì)DCP的軟件程序進(jìn)行了設(shè)計(jì)與實(shí)現(xiàn)。最后為所設(shè)計(jì)的IO設(shè)備搭建了一套測(cè)試系統(tǒng),并完成硬件組態(tài)。驗(yàn)證了從組態(tài)到系統(tǒng)啟動(dòng)中DCP的作用和IO設(shè)備所實(shí)現(xiàn)的RT和NRT通信功能。通過(guò)在樹(shù)莓派上運(yùn)行Wireshark抓包軟件對(duì)IO設(shè)備和控制器PLC建立通信前的流程和DCP的功能實(shí)現(xiàn)過(guò)程進(jìn)行分析,對(duì)所抓取的數(shù)據(jù)進(jìn)行了篩選分析,得出了IO設(shè)備更新時(shí)間的抖動(dòng)值,設(shè)備的實(shí)時(shí)性及可靠性滿足自動(dòng)化生產(chǎn)控制中的需要,具有廣泛的應(yīng)用前景。本文對(duì)PROFINET IO通信的實(shí)現(xiàn)和對(duì)集成協(xié)議DCP的分析與研究,可以幫助從事相關(guān)方向的工程師掌握PROFINET技術(shù)的應(yīng)用。

    猜你喜歡
    樹(shù)莓IP地址組態(tài)
    基于PLC及組態(tài)技術(shù)的恒溫控制系統(tǒng)開(kāi)發(fā)探討
    鐵路遠(yuǎn)動(dòng)系統(tǒng)幾種組網(wǎng)方式IP地址的申請(qǐng)和設(shè)置
    基于樹(shù)莓派的騎行智能頭盔設(shè)計(jì)
    電子制作(2019年11期)2019-07-04 00:34:32
    基于樹(shù)莓派的遠(yuǎn)程家居控制系統(tǒng)的設(shè)計(jì)
    電子制作(2017年17期)2017-12-18 06:40:43
    基于PLC和組態(tài)的智能電動(dòng)擰緊系統(tǒng)
    基于SNMP的IP地址管理系統(tǒng)開(kāi)發(fā)與應(yīng)用
    黑龍江電力(2017年1期)2017-05-17 04:25:16
    PLC組態(tài)控制在水箱控制系統(tǒng)的應(yīng)用
    響應(yīng)面法優(yōu)化紅樹(shù)莓酒發(fā)酵工藝
    鑄造行業(yè)三維組態(tài)軟件的應(yīng)用
    歐盟:速凍樹(shù)莓比鮮食樹(shù)莓市場(chǎng)更好
    亚洲,一卡二卡三卡| 亚洲三级黄色毛片| 国产精品人妻久久久久久| 高清午夜精品一区二区三区| 搡女人真爽免费视频火全软件| 国国产精品蜜臀av免费| 亚洲欧美一区二区三区国产| 日日啪夜夜爽| 成年版毛片免费区| 国产伦精品一区二区三区视频9| 日本猛色少妇xxxxx猛交久久| 亚洲国产最新在线播放| 男女那种视频在线观看| 熟女电影av网| 五月玫瑰六月丁香| av女优亚洲男人天堂| 最近最新中文字幕大全电影3| 久久久久久久久久久免费av| 又大又黄又爽视频免费| 午夜亚洲福利在线播放| 中文字幕亚洲精品专区| 久久亚洲国产成人精品v| 亚洲av国产av综合av卡| 午夜亚洲福利在线播放| 热re99久久精品国产66热6| 干丝袜人妻中文字幕| 国产免费又黄又爽又色| 可以在线观看毛片的网站| 你懂的网址亚洲精品在线观看| 亚洲av成人精品一二三区| 久久99热这里只频精品6学生| 美女高潮的动态| 国产精品国产av在线观看| 永久免费av网站大全| 97超视频在线观看视频| 2021少妇久久久久久久久久久| 高清在线视频一区二区三区| 免费观看在线日韩| 有码 亚洲区| 精品一区二区三区视频在线| 成人午夜精彩视频在线观看| 国产亚洲5aaaaa淫片| 久久久久久国产a免费观看| 久久久久网色| 秋霞伦理黄片| 国产精品成人在线| 在线观看美女被高潮喷水网站| 亚洲人与动物交配视频| 国产伦在线观看视频一区| 亚洲精品久久久久久婷婷小说| 亚洲欧洲日产国产| 男人爽女人下面视频在线观看| 国产精品麻豆人妻色哟哟久久| 九九在线视频观看精品| 国产亚洲91精品色在线| 国产美女午夜福利| 秋霞伦理黄片| 亚洲精品日韩av片在线观看| 六月丁香七月| 观看免费一级毛片| 男的添女的下面高潮视频| 国产精品三级大全| 性色av一级| 色5月婷婷丁香| av在线观看视频网站免费| 国产高清国产精品国产三级 | 熟女人妻精品中文字幕| 尾随美女入室| 久久精品久久久久久噜噜老黄| 最近中文字幕高清免费大全6| 婷婷色av中文字幕| 五月开心婷婷网| 少妇丰满av| 亚洲色图综合在线观看| 亚洲天堂国产精品一区在线| 午夜福利在线观看免费完整高清在| 国产精品国产三级国产av玫瑰| 欧美日韩国产mv在线观看视频 | 国产精品一区二区在线观看99| 99久久九九国产精品国产免费| 亚洲激情五月婷婷啪啪| 69人妻影院| 亚洲精品国产av蜜桃| 成人免费观看视频高清| 亚洲精品乱久久久久久| 亚洲精品成人av观看孕妇| 午夜精品一区二区三区免费看| av在线蜜桃| 精品久久久久久久久av| 欧美3d第一页| 三级男女做爰猛烈吃奶摸视频| 美女国产视频在线观看| 男人和女人高潮做爰伦理| 国产免费又黄又爽又色| 亚洲欧美精品专区久久| av卡一久久| 99久久人妻综合| 亚洲av二区三区四区| 亚洲伊人久久精品综合| 色婷婷久久久亚洲欧美| 91精品一卡2卡3卡4卡| 亚洲真实伦在线观看| 美女xxoo啪啪120秒动态图| 女人被狂操c到高潮| 国产一区二区三区综合在线观看 | 我要看日韩黄色一级片| 中文字幕制服av| 国产白丝娇喘喷水9色精品| 99久久精品热视频| 国产精品久久久久久精品电影小说 | 日韩 亚洲 欧美在线| av专区在线播放| 久久久久久九九精品二区国产| a级毛片免费高清观看在线播放| 成年免费大片在线观看| 国产黄片美女视频| 久久久国产一区二区| 国产美女午夜福利| 国产黄片美女视频| 精品久久国产蜜桃| 国产v大片淫在线免费观看| 伦理电影大哥的女人| 国产精品久久久久久精品电影| 热99国产精品久久久久久7| 久热这里只有精品99| 国产黄色免费在线视频| 日本av手机在线免费观看| 亚洲精品国产av蜜桃| 欧美区成人在线视频| 国产精品人妻久久久影院| 国产精品久久久久久精品电影小说 | 久久鲁丝午夜福利片| 日韩不卡一区二区三区视频在线| 国产 精品1| 人人妻人人看人人澡| 成人黄色视频免费在线看| 色播亚洲综合网| 国产日韩欧美亚洲二区| 国产精品一区二区性色av| 久久久精品94久久精品| 日本三级黄在线观看| 午夜福利在线观看免费完整高清在| a级毛片免费高清观看在线播放| 国产精品伦人一区二区| 身体一侧抽搐| 嫩草影院新地址| 99久久人妻综合| 1000部很黄的大片| 啦啦啦中文免费视频观看日本| 久久久久久久久久久丰满| 国产午夜福利久久久久久| 男女国产视频网站| 美女视频免费永久观看网站| 亚洲第一区二区三区不卡| 一级a做视频免费观看| 最近的中文字幕免费完整| 国产成人一区二区在线| 视频区图区小说| 国产亚洲精品久久久com| 免费看不卡的av| 日本午夜av视频| 最近手机中文字幕大全| 少妇的逼水好多| 亚洲精品日韩av片在线观看| 久久久久精品性色| 欧美最新免费一区二区三区| 成人特级av手机在线观看| 亚洲精品中文字幕在线视频 | 乱码一卡2卡4卡精品| 日韩欧美 国产精品| 深爱激情五月婷婷| 亚洲人成网站高清观看| 欧美日韩在线观看h| 18禁在线无遮挡免费观看视频| 国产成人a区在线观看| 亚洲av国产av综合av卡| 午夜福利视频1000在线观看| 搞女人的毛片| 欧美精品国产亚洲| 嘟嘟电影网在线观看| 夫妻性生交免费视频一级片| 一级毛片久久久久久久久女| 久久精品熟女亚洲av麻豆精品| 自拍偷自拍亚洲精品老妇| 午夜福利视频精品| 午夜精品一区二区三区免费看| 亚洲自拍偷在线| 亚洲精品国产av成人精品| 国产在线男女| 国内揄拍国产精品人妻在线| 久久精品国产亚洲网站| 欧美三级亚洲精品| 一级毛片 在线播放| 在现免费观看毛片| 伦精品一区二区三区| 日韩大片免费观看网站| 在线亚洲精品国产二区图片欧美 | 好男人视频免费观看在线| 欧美97在线视频| 亚洲精品乱码久久久久久按摩| av国产精品久久久久影院| av在线老鸭窝| 日韩不卡一区二区三区视频在线| 国产69精品久久久久777片| 三级男女做爰猛烈吃奶摸视频| 丰满乱子伦码专区| 成人美女网站在线观看视频| 精品国产乱码久久久久久小说| 热99国产精品久久久久久7| 搞女人的毛片| 麻豆国产97在线/欧美| 国产v大片淫在线免费观看| 身体一侧抽搐| 亚洲欧美日韩卡通动漫| 久久精品熟女亚洲av麻豆精品| 久久精品国产自在天天线| 国产精品久久久久久精品电影小说 | 你懂的网址亚洲精品在线观看| 成人国产麻豆网| 男男h啪啪无遮挡| av专区在线播放| 少妇人妻 视频| 乱系列少妇在线播放| 白带黄色成豆腐渣| 99九九线精品视频在线观看视频| 真实男女啪啪啪动态图| 美女主播在线视频| 免费在线观看成人毛片| 日本黄大片高清| 嫩草影院新地址| 精品视频人人做人人爽| 3wmmmm亚洲av在线观看| 国产片特级美女逼逼视频| 内射极品少妇av片p| 黑人高潮一二区| 一级av片app| 在线看a的网站| 在线观看免费高清a一片| 欧美97在线视频| 日韩精品有码人妻一区| 美女高潮的动态| 麻豆久久精品国产亚洲av| 免费观看无遮挡的男女| 国产精品人妻久久久久久| www.色视频.com| 国产乱来视频区| 免费观看在线日韩| 欧美日韩国产mv在线观看视频 | 中文欧美无线码| 大香蕉97超碰在线| 亚洲av二区三区四区| 男女国产视频网站| 美女被艹到高潮喷水动态| 少妇人妻久久综合中文| 特大巨黑吊av在线直播| 一区二区三区精品91| 亚洲最大成人手机在线| 免费av不卡在线播放| 嫩草影院精品99| 国产成人精品一,二区| 97人妻精品一区二区三区麻豆| 精品人妻熟女av久视频| 永久网站在线| 婷婷色综合www| 黄色一级大片看看| 亚洲精品久久午夜乱码| 国产午夜精品一二区理论片| 精品久久国产蜜桃| 中文字幕久久专区| 中国三级夫妇交换| 中文字幕人妻熟人妻熟丝袜美| 国产午夜精品久久久久久一区二区三区| 在线 av 中文字幕| 精品国产露脸久久av麻豆| 91在线精品国自产拍蜜月| 另类亚洲欧美激情| 亚洲内射少妇av| av线在线观看网站| 哪个播放器可以免费观看大片| 黄色视频在线播放观看不卡| 99精国产麻豆久久婷婷| 久久午夜福利片| 国产伦在线观看视频一区| 色哟哟·www| 中文字幕人妻熟人妻熟丝袜美| 国产一区二区在线观看日韩| 如何舔出高潮| 黄片无遮挡物在线观看| 久久久久国产精品人妻一区二区| 永久免费av网站大全| 一区二区三区乱码不卡18| 九草在线视频观看| 亚洲欧美日韩卡通动漫| 日韩,欧美,国产一区二区三区| 欧美国产精品一级二级三级 | 国产精品一二三区在线看| 亚洲欧美一区二区三区黑人 | 久久99热这里只频精品6学生| 国产精品国产av在线观看| 亚洲国产欧美在线一区| 老女人水多毛片| 搡女人真爽免费视频火全软件| 亚洲精品中文字幕在线视频 | 麻豆成人av视频| 精品久久国产蜜桃| 日韩一区二区视频免费看| 99久久中文字幕三级久久日本| 精品99又大又爽又粗少妇毛片| 蜜臀久久99精品久久宅男| 精品一区二区三区视频在线| 边亲边吃奶的免费视频| 禁无遮挡网站| 久久久久久久久久久免费av| 九色成人免费人妻av| 久久久久久久大尺度免费视频| 国产成人精品久久久久久| 欧美少妇被猛烈插入视频| 日本三级黄在线观看| 少妇被粗大猛烈的视频| 一级av片app| 婷婷色麻豆天堂久久| 好男人在线观看高清免费视频| 看十八女毛片水多多多| 91久久精品国产一区二区成人| 日韩在线高清观看一区二区三区| 啦啦啦在线观看免费高清www| 高清毛片免费看| av在线观看视频网站免费| 黄色视频在线播放观看不卡| 交换朋友夫妻互换小说| 亚洲四区av| 色网站视频免费| 国产av国产精品国产| 99re6热这里在线精品视频| 国产亚洲最大av| 国产成人精品一,二区| 色吧在线观看| 亚洲av在线观看美女高潮| 免费播放大片免费观看视频在线观看| 欧美成人午夜免费资源| 少妇人妻久久综合中文| 老女人水多毛片| 99热网站在线观看| 精品人妻一区二区三区麻豆| 日韩大片免费观看网站| 国产成人a区在线观看| 亚洲一级一片aⅴ在线观看| av线在线观看网站| av免费在线看不卡| 免费少妇av软件| 国产一区亚洲一区在线观看| 青春草视频在线免费观看| 777米奇影视久久| 在线观看一区二区三区激情| 亚洲综合色惰| 真实男女啪啪啪动态图| 国产男人的电影天堂91| 男女无遮挡免费网站观看| 各种免费的搞黄视频| 中文字幕人妻熟人妻熟丝袜美| 一区二区av电影网| 极品少妇高潮喷水抽搐| 免费电影在线观看免费观看| 免费少妇av软件| 七月丁香在线播放| 国产综合懂色| 各种免费的搞黄视频| 男女那种视频在线观看| 一边亲一边摸免费视频| 人妻 亚洲 视频| 日本猛色少妇xxxxx猛交久久| 一级毛片aaaaaa免费看小| 麻豆国产97在线/欧美| 日韩一区二区视频免费看| 夫妻午夜视频| kizo精华| 亚洲av一区综合| 国产探花极品一区二区| 少妇猛男粗大的猛烈进出视频 | 亚洲四区av| 身体一侧抽搐| 最近的中文字幕免费完整| 亚洲av中文av极速乱| 在线免费观看不下载黄p国产| 天天躁夜夜躁狠狠久久av| 久久久久国产精品人妻一区二区| 国产精品国产三级专区第一集| 亚洲精品成人av观看孕妇| 在线观看av片永久免费下载| 日韩 亚洲 欧美在线| 亚洲精品自拍成人| 色视频www国产| 91aial.com中文字幕在线观看| 日韩一区二区三区影片| 99久久九九国产精品国产免费| 日韩成人av中文字幕在线观看| 日本熟妇午夜| 男男h啪啪无遮挡| 亚洲成人av在线免费| 18禁在线无遮挡免费观看视频| 欧美日韩综合久久久久久| 丰满少妇做爰视频| 免费观看av网站的网址| 国产美女午夜福利| 亚洲成人精品中文字幕电影| 欧美 日韩 精品 国产| 精品久久久久久久久亚洲| 国产欧美日韩一区二区三区在线 | 国产日韩欧美在线精品| 亚洲伊人久久精品综合| 中文在线观看免费www的网站| 国产精品av视频在线免费观看| 中文字幕人妻熟人妻熟丝袜美| 久久精品国产亚洲网站| 日韩欧美 国产精品| 国产成人a∨麻豆精品| 波野结衣二区三区在线| 99久久精品国产国产毛片| 日本黄大片高清| 亚洲成人久久爱视频| 亚洲一区二区三区欧美精品 | 久久久成人免费电影| 国产色爽女视频免费观看| 国内揄拍国产精品人妻在线| 又黄又爽又刺激的免费视频.| 黑人高潮一二区| 日韩欧美一区视频在线观看 | 国产成年人精品一区二区| 男女那种视频在线观看| 亚洲精品国产成人久久av| 高清视频免费观看一区二区| 性插视频无遮挡在线免费观看| av福利片在线观看| 麻豆成人午夜福利视频| 1000部很黄的大片| 色视频www国产| 日韩伦理黄色片| 久久精品国产鲁丝片午夜精品| 亚洲自偷自拍三级| 亚洲丝袜综合中文字幕| 午夜亚洲福利在线播放| 欧美日韩综合久久久久久| 国产老妇伦熟女老妇高清| 午夜福利在线在线| 久久久久久久大尺度免费视频| 国产精品久久久久久精品电影| 亚洲在线观看片| 亚洲欧洲日产国产| 免费看光身美女| 丰满少妇做爰视频| 久久热精品热| 18禁动态无遮挡网站| 亚洲av.av天堂| av在线app专区| 九色成人免费人妻av| 中国美白少妇内射xxxbb| 欧美zozozo另类| 欧美最新免费一区二区三区| 国产人妻一区二区三区在| 亚洲欧美精品专区久久| 97在线人人人人妻| 九色成人免费人妻av| 亚洲欧美一区二区三区国产| 国产高潮美女av| 性色av一级| 国产伦精品一区二区三区视频9| 成人美女网站在线观看视频| 成人漫画全彩无遮挡| 色综合色国产| 99久国产av精品国产电影| 婷婷色麻豆天堂久久| 中文字幕制服av| 黑人高潮一二区| 国产精品人妻久久久久久| 久久6这里有精品| 肉色欧美久久久久久久蜜桃 | 久久国产乱子免费精品| 日日啪夜夜爽| 男女国产视频网站| 久久久久久久久久久免费av| av女优亚洲男人天堂| 国产一区二区三区av在线| 日日啪夜夜爽| 亚洲精品国产成人久久av| 黄色一级大片看看| 国产老妇伦熟女老妇高清| 街头女战士在线观看网站| 欧美高清性xxxxhd video| 日韩三级伦理在线观看| 91狼人影院| 日韩欧美精品免费久久| 婷婷色麻豆天堂久久| 内地一区二区视频在线| 精品久久国产蜜桃| 国产成人精品福利久久| av女优亚洲男人天堂| 成人黄色视频免费在线看| 观看免费一级毛片| 青春草亚洲视频在线观看| 女人久久www免费人成看片| 日韩亚洲欧美综合| av播播在线观看一区| 中文字幕人妻熟人妻熟丝袜美| 有码 亚洲区| 久久久久国产网址| 日韩亚洲欧美综合| 哪个播放器可以免费观看大片| 真实男女啪啪啪动态图| 深爱激情五月婷婷| 夜夜看夜夜爽夜夜摸| 人妻系列 视频| 日韩不卡一区二区三区视频在线| 99久久精品一区二区三区| 午夜亚洲福利在线播放| 制服丝袜香蕉在线| 国产一级毛片在线| 自拍欧美九色日韩亚洲蝌蚪91 | 免费av观看视频| 亚洲精品影视一区二区三区av| 日本-黄色视频高清免费观看| 色视频www国产| 成人国产av品久久久| 青青草视频在线视频观看| 欧美最新免费一区二区三区| 亚洲精品第二区| 日韩制服骚丝袜av| 波多野结衣巨乳人妻| av国产精品久久久久影院| 国产精品一区二区性色av| 91精品国产九色| 国产亚洲91精品色在线| 黄色配什么色好看| 麻豆成人午夜福利视频| 少妇丰满av| a级一级毛片免费在线观看| 午夜福利视频精品| 亚洲精品亚洲一区二区| 国产乱人偷精品视频| 欧美另类一区| 国产精品一区二区三区四区免费观看| 国产片特级美女逼逼视频| eeuss影院久久| 秋霞伦理黄片| 亚洲婷婷狠狠爱综合网| 91午夜精品亚洲一区二区三区| 99久久人妻综合| 国产高清国产精品国产三级 | 国产欧美另类精品又又久久亚洲欧美| 内射极品少妇av片p| 色婷婷久久久亚洲欧美| 精品国产乱码久久久久久小说| 成年女人在线观看亚洲视频 | 人妻夜夜爽99麻豆av| 女的被弄到高潮叫床怎么办| 欧美精品国产亚洲| 99久久九九国产精品国产免费| 精品人妻熟女av久视频| 99久久精品热视频| 日韩成人伦理影院| 国内精品宾馆在线| 精品国产乱码久久久久久小说| a级一级毛片免费在线观看| 亚洲婷婷狠狠爱综合网| av在线观看视频网站免费| 男女那种视频在线观看| 啦啦啦中文免费视频观看日本| 中文天堂在线官网| av线在线观看网站| 美女xxoo啪啪120秒动态图| 欧美xxⅹ黑人| 狠狠精品人妻久久久久久综合| 久久久精品94久久精品| 熟女电影av网| 香蕉精品网在线| 又粗又硬又长又爽又黄的视频| 少妇高潮的动态图| 狂野欧美激情性bbbbbb| 国产精品久久久久久精品电影| 亚洲性久久影院| 成年人午夜在线观看视频| 亚洲欧美成人综合另类久久久| av专区在线播放| 欧美成人一区二区免费高清观看| 国产精品成人在线| 青春草视频在线免费观看| 嫩草影院入口| 国产乱人视频| videos熟女内射| 在线观看美女被高潮喷水网站| 午夜福利网站1000一区二区三区| 亚洲精品乱码久久久v下载方式| 亚洲精品国产成人久久av| 肉色欧美久久久久久久蜜桃 | 久久人人爽人人爽人人片va| 一个人看的www免费观看视频| 建设人人有责人人尽责人人享有的 | 精品久久久久久久久亚洲| 亚洲av中文字字幕乱码综合| 插阴视频在线观看视频| 亚洲欧美日韩无卡精品| 晚上一个人看的免费电影| 久久久久久久午夜电影| 国产精品久久久久久久电影| 女的被弄到高潮叫床怎么办| 日韩强制内射视频| 日本黄大片高清| 99久久人妻综合| 色视频在线一区二区三区| 纵有疾风起免费观看全集完整版| 高清毛片免费看| 综合色丁香网| 日韩一本色道免费dvd| 国产精品麻豆人妻色哟哟久久| 色播亚洲综合网| 国产精品成人在线|