• <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)更好
    青青草视频在线视频观看| 久久这里只有精品19| 99国产精品99久久久久| 国产成人精品久久二区二区91| 两个人免费观看高清视频| 在线观看免费视频日本深夜| 国产精品一区二区免费欧美| 一区二区三区精品91| 五月开心婷婷网| 一级a爱视频在线免费观看| 看免费av毛片| 国产区一区二久久| 丝袜美腿诱惑在线| 自线自在国产av| 一区二区三区国产精品乱码| 日韩大片免费观看网站| 亚洲一码二码三码区别大吗| 热99久久久久精品小说推荐| 老司机靠b影院| 久久精品国产综合久久久| 国产区一区二久久| 日韩人妻精品一区2区三区| 高清视频免费观看一区二区| 男女午夜视频在线观看| 美女国产高潮福利片在线看| 国产成人av激情在线播放| 菩萨蛮人人尽说江南好唐韦庄| 免费观看av网站的网址| 一区二区日韩欧美中文字幕| 建设人人有责人人尽责人人享有的| 黄片播放在线免费| 又大又爽又粗| 久久久水蜜桃国产精品网| 国产高清视频在线播放一区| 国产成人免费无遮挡视频| 最近最新免费中文字幕在线| 成年动漫av网址| 妹子高潮喷水视频| 精品高清国产在线一区| 免费不卡黄色视频| 夜夜爽天天搞| 欧美黑人欧美精品刺激| 亚洲国产欧美日韩在线播放| 午夜91福利影院| 国产麻豆69| 性色av乱码一区二区三区2| 精品一区二区三卡| 亚洲国产成人一精品久久久| 黑人操中国人逼视频| 大码成人一级视频| 欧美日韩福利视频一区二区| 老司机影院毛片| 国产不卡av网站在线观看| 999久久久精品免费观看国产| 亚洲av片天天在线观看| 久久久久久亚洲精品国产蜜桃av| 电影成人av| 欧美激情极品国产一区二区三区| 新久久久久国产一级毛片| 欧美精品啪啪一区二区三区| 一级毛片电影观看| 国产一区二区在线观看av| 亚洲av日韩在线播放| www.999成人在线观看| 亚洲av成人不卡在线观看播放网| 水蜜桃什么品种好| 下体分泌物呈黄色| av福利片在线| 一进一出抽搐动态| 久久天躁狠狠躁夜夜2o2o| 欧美日韩中文字幕国产精品一区二区三区 | 国产av国产精品国产| 91麻豆av在线| 99精品久久久久人妻精品| 中文字幕另类日韩欧美亚洲嫩草| 蜜桃在线观看..| 波多野结衣av一区二区av| 欧美亚洲日本最大视频资源| 国产亚洲av高清不卡| 午夜福利视频精品| 亚洲国产中文字幕在线视频| 午夜久久久在线观看| 夫妻午夜视频| 怎么达到女性高潮| 搡老乐熟女国产| 黄色a级毛片大全视频| 色老头精品视频在线观看| 国产在视频线精品| 午夜福利视频精品| 50天的宝宝边吃奶边哭怎么回事| av天堂久久9| 美女国产高潮福利片在线看| 亚洲专区中文字幕在线| 欧美在线黄色| 国产精品国产av在线观看| 一个人免费看片子| 十八禁高潮呻吟视频| 欧美激情极品国产一区二区三区| 午夜精品久久久久久毛片777| 亚洲欧洲日产国产| 美女国产高潮福利片在线看| 国产xxxxx性猛交| 欧美黑人精品巨大| 大型黄色视频在线免费观看| 国产精品免费视频内射| 午夜91福利影院| 怎么达到女性高潮| 亚洲欧洲精品一区二区精品久久久| 久久久精品国产亚洲av高清涩受| 国产精品久久久久久人妻精品电影 | 国产一区有黄有色的免费视频| 女同久久另类99精品国产91| 精品卡一卡二卡四卡免费| 日本vs欧美在线观看视频| 电影成人av| 久久久国产欧美日韩av| 天堂俺去俺来也www色官网| 激情在线观看视频在线高清 | 国产精品亚洲av一区麻豆| 欧美乱妇无乱码| 久久人妻熟女aⅴ| 国产精品一区二区在线观看99| 国产精品免费一区二区三区在线 | 国精品久久久久久国模美| 国产aⅴ精品一区二区三区波| 法律面前人人平等表现在哪些方面| 两人在一起打扑克的视频| 99久久国产精品久久久| 波多野结衣一区麻豆| a在线观看视频网站| 午夜福利在线观看吧| 国产亚洲精品久久久久5区| 少妇裸体淫交视频免费看高清 | 久久久精品区二区三区| 九色亚洲精品在线播放| 亚洲中文日韩欧美视频| 在线观看免费高清a一片| 国产aⅴ精品一区二区三区波| 欧美中文综合在线视频| 高清在线国产一区| av一本久久久久| 美女扒开内裤让男人捅视频| 亚洲avbb在线观看| 色综合欧美亚洲国产小说| 成年女人毛片免费观看观看9 | 午夜福利,免费看| 久久国产精品人妻蜜桃| 午夜福利在线观看吧| 中亚洲国语对白在线视频| 色精品久久人妻99蜜桃| 亚洲av国产av综合av卡| 午夜福利在线观看吧| 久久天躁狠狠躁夜夜2o2o| 夜夜爽天天搞| 一级片免费观看大全| 天堂中文最新版在线下载| 国产伦人伦偷精品视频| 男女免费视频国产| 一夜夜www| 亚洲av日韩在线播放| 国产精品久久久久久人妻精品电影 | 男女边摸边吃奶| 久久久久国内视频| 夜夜爽天天搞| 久久免费观看电影| 久久精品成人免费网站| 久久精品91无色码中文字幕| 视频在线观看一区二区三区| 久久精品成人免费网站| 黄片大片在线免费观看| 欧美日韩视频精品一区| 99精品久久久久人妻精品| 别揉我奶头~嗯~啊~动态视频| 99精品久久久久人妻精品| 美女主播在线视频| 亚洲国产av新网站| 精品欧美一区二区三区在线| 一进一出抽搐动态| 久久午夜亚洲精品久久| bbb黄色大片| 亚洲人成伊人成综合网2020| 十分钟在线观看高清视频www| 精品欧美一区二区三区在线| 法律面前人人平等表现在哪些方面| 久久久久精品国产欧美久久久| 男女高潮啪啪啪动态图| 两个人看的免费小视频| 看免费av毛片| 91九色精品人成在线观看| 女性被躁到高潮视频| www日本在线高清视频| 999久久久精品免费观看国产| 免费在线观看影片大全网站| 成人国产一区最新在线观看| 在线观看人妻少妇| 日韩精品免费视频一区二区三区| 一区二区日韩欧美中文字幕| 亚洲精品一二三| 亚洲精品粉嫩美女一区| 日韩欧美免费精品| 色精品久久人妻99蜜桃| 免费观看a级毛片全部| 一进一出抽搐动态| 久久久久视频综合| 多毛熟女@视频| 国产日韩一区二区三区精品不卡| 不卡av一区二区三区| 伊人久久大香线蕉亚洲五| 国产精品九九99| 精品国产乱码久久久久久小说| 日日爽夜夜爽网站| 丰满少妇做爰视频| 五月天丁香电影| 又紧又爽又黄一区二区| 热re99久久精品国产66热6| 国产欧美日韩一区二区三区在线| 精品亚洲乱码少妇综合久久| 免费少妇av软件| 人妻 亚洲 视频| 日本精品一区二区三区蜜桃| 午夜福利免费观看在线| 久久人妻熟女aⅴ| 欧美在线一区亚洲| 男女边摸边吃奶| 麻豆国产av国片精品| 亚洲伊人久久精品综合| 午夜激情久久久久久久| 久久午夜综合久久蜜桃| 午夜成年电影在线免费观看| 日韩有码中文字幕| 亚洲成国产人片在线观看| 丰满人妻熟妇乱又伦精品不卡| 亚洲欧洲日产国产| 久久热在线av| 亚洲欧洲日产国产| 一级毛片女人18水好多| 欧美日韩国产mv在线观看视频| 国产精品熟女久久久久浪| av国产精品久久久久影院| 精品久久久精品久久久| 免费日韩欧美在线观看| 午夜两性在线视频| 好男人电影高清在线观看| 美女午夜性视频免费| 免费在线观看完整版高清| 大陆偷拍与自拍| 性少妇av在线| 国产精品久久久久久精品电影小说| 一区二区日韩欧美中文字幕| a在线观看视频网站| 国产欧美日韩综合在线一区二区| 又黄又粗又硬又大视频| 亚洲色图av天堂| 悠悠久久av| 亚洲专区中文字幕在线| 99re在线观看精品视频| 十八禁网站免费在线| 国内毛片毛片毛片毛片毛片| 丝袜人妻中文字幕| 国产极品粉嫩免费观看在线| 久久久久国产一级毛片高清牌| 丰满人妻熟妇乱又伦精品不卡| 91老司机精品| 无限看片的www在线观看| 建设人人有责人人尽责人人享有的| 丝瓜视频免费看黄片| 国产主播在线观看一区二区| 19禁男女啪啪无遮挡网站| 亚洲av日韩在线播放| 久久性视频一级片| 亚洲成a人片在线一区二区| av天堂久久9| 国产亚洲精品一区二区www | 精品久久久精品久久久| 午夜两性在线视频| 国产野战对白在线观看| 亚洲第一青青草原| 黑丝袜美女国产一区| 桃红色精品国产亚洲av| 欧美在线一区亚洲| 日韩有码中文字幕| svipshipincom国产片| 一区二区三区国产精品乱码| 国产精品免费视频内射| 人人妻,人人澡人人爽秒播| 蜜桃在线观看..| 国产有黄有色有爽视频| 国产色视频综合| 婷婷丁香在线五月| 我的亚洲天堂| 激情在线观看视频在线高清 | 飞空精品影院首页| 久久精品熟女亚洲av麻豆精品| 国产精品.久久久| 欧美日韩成人在线一区二区| 首页视频小说图片口味搜索| 黄色怎么调成土黄色| 欧美激情久久久久久爽电影 | 日韩制服丝袜自拍偷拍| 一进一出好大好爽视频| 欧美精品人与动牲交sv欧美| 一本—道久久a久久精品蜜桃钙片| 国产精品99久久99久久久不卡| 热99久久久久精品小说推荐| 成年人黄色毛片网站| 91精品国产国语对白视频| 婷婷成人精品国产| 99国产精品免费福利视频| 亚洲人成电影免费在线| 高潮久久久久久久久久久不卡| 亚洲欧美色中文字幕在线| 免费在线观看黄色视频的| 麻豆成人av在线观看| 免费观看人在逋| 久久影院123| 日韩 欧美 亚洲 中文字幕| 国产欧美日韩综合在线一区二区| 一边摸一边做爽爽视频免费| 亚洲性夜色夜夜综合| 亚洲天堂av无毛| 丰满迷人的少妇在线观看| 激情视频va一区二区三区| 一二三四社区在线视频社区8| 美女扒开内裤让男人捅视频| 18禁观看日本| 成年人免费黄色播放视频| 久久午夜亚洲精品久久| 亚洲精品国产色婷婷电影| 97人妻天天添夜夜摸| 日韩精品免费视频一区二区三区| 男女之事视频高清在线观看| 国产精品美女特级片免费视频播放器 | 国产淫语在线视频| 天堂中文最新版在线下载| 久久久精品94久久精品| 亚洲五月色婷婷综合| 欧美变态另类bdsm刘玥| 人成视频在线观看免费观看| 久久精品国产99精品国产亚洲性色 | 日韩人妻精品一区2区三区| 精品卡一卡二卡四卡免费| 高清视频免费观看一区二区| 香蕉国产在线看| 黄色a级毛片大全视频| 成人特级黄色片久久久久久久 | 一级片免费观看大全| svipshipincom国产片| 99精品在免费线老司机午夜| 悠悠久久av| 汤姆久久久久久久影院中文字幕| 757午夜福利合集在线观看| 天天添夜夜摸| 自拍欧美九色日韩亚洲蝌蚪91| 每晚都被弄得嗷嗷叫到高潮| 久久天躁狠狠躁夜夜2o2o| 久久精品亚洲熟妇少妇任你| videosex国产| 50天的宝宝边吃奶边哭怎么回事| h视频一区二区三区| 首页视频小说图片口味搜索| 亚洲全国av大片| 大香蕉久久成人网| 欧美 亚洲 国产 日韩一| 中文字幕人妻丝袜一区二区| 法律面前人人平等表现在哪些方面| 大型黄色视频在线免费观看| 汤姆久久久久久久影院中文字幕| 美国免费a级毛片| 岛国毛片在线播放| 亚洲人成电影观看| 亚洲情色 制服丝袜| 亚洲专区中文字幕在线| 一夜夜www| 青青草视频在线视频观看| 国产一区有黄有色的免费视频| 如日韩欧美国产精品一区二区三区| 两性午夜刺激爽爽歪歪视频在线观看 | 久久中文看片网| 老司机午夜十八禁免费视频| 蜜桃国产av成人99| 中亚洲国语对白在线视频| 精品少妇内射三级| videos熟女内射| 一夜夜www| 午夜激情久久久久久久| 国产精品国产高清国产av | 亚洲少妇的诱惑av| 国产av精品麻豆| 国产成人免费观看mmmm| 99九九在线精品视频| 男女午夜视频在线观看| 国产有黄有色有爽视频| 一本—道久久a久久精品蜜桃钙片| 一本大道久久a久久精品| 国产在线观看jvid| 大型av网站在线播放| 欧美中文综合在线视频| 久热爱精品视频在线9| 久久天堂一区二区三区四区| 桃红色精品国产亚洲av| 人人妻人人添人人爽欧美一区卜| 亚洲国产欧美日韩在线播放| av有码第一页| 亚洲成a人片在线一区二区| 一本久久精品| 午夜福利欧美成人| 亚洲一区二区三区欧美精品| 欧美久久黑人一区二区| 国产精品久久久久久精品电影小说| 国产主播在线观看一区二区| 一边摸一边抽搐一进一小说 | 伦理电影免费视频| 在线观看www视频免费| 亚洲精品美女久久av网站| 人人妻人人澡人人看| 国产亚洲精品一区二区www | 精品亚洲成a人片在线观看| 18禁美女被吸乳视频| 国产成人啪精品午夜网站| 一边摸一边做爽爽视频免费| www.999成人在线观看| 99久久国产精品久久久| 国产亚洲精品一区二区www | 无遮挡黄片免费观看| 亚洲黑人精品在线| 搡老乐熟女国产| 欧美日韩亚洲高清精品| 久久国产精品大桥未久av| 亚洲第一欧美日韩一区二区三区 | 精品亚洲乱码少妇综合久久| 黄频高清免费视频| 国产亚洲午夜精品一区二区久久| 一区二区三区激情视频| 岛国毛片在线播放| 日韩一卡2卡3卡4卡2021年| 国产精品熟女久久久久浪| 日韩视频在线欧美| 亚洲精品国产精品久久久不卡| 无人区码免费观看不卡 | 在线观看免费高清a一片| 久久久精品区二区三区| videosex国产| 亚洲国产欧美在线一区| 在线观看免费视频日本深夜| 亚洲精品美女久久av网站| 桃花免费在线播放| 水蜜桃什么品种好| 天堂动漫精品| 亚洲成a人片在线一区二区| 欧美日韩av久久| www.999成人在线观看| 99久久精品国产亚洲精品| 美国免费a级毛片| 日韩欧美一区二区三区在线观看 | 国产淫语在线视频| 如日韩欧美国产精品一区二区三区| 五月天丁香电影| 丝袜美腿诱惑在线| 窝窝影院91人妻| 久久亚洲精品不卡| 亚洲国产av新网站| 亚洲伊人色综图| 国产熟女午夜一区二区三区| 久久久久久久久免费视频了| 丁香六月天网| 波多野结衣一区麻豆| 亚洲一区中文字幕在线| 一本一本久久a久久精品综合妖精| 欧美黄色淫秽网站| 国产高清视频在线播放一区| 中亚洲国语对白在线视频| 午夜91福利影院| 午夜福利乱码中文字幕| 一级片'在线观看视频| 国产男靠女视频免费网站| 成人黄色视频免费在线看| 亚洲欧美一区二区三区久久| av视频免费观看在线观看| 日本撒尿小便嘘嘘汇集6| 丰满饥渴人妻一区二区三| 亚洲av第一区精品v没综合| 日韩大片免费观看网站| 婷婷成人精品国产| 亚洲黑人精品在线| 美女高潮到喷水免费观看| 91麻豆av在线| 欧美亚洲日本最大视频资源| 狠狠婷婷综合久久久久久88av| 人妻久久中文字幕网| 无限看片的www在线观看| 国产精品国产av在线观看| 国产单亲对白刺激| 不卡一级毛片| 51午夜福利影视在线观看| 免费在线观看日本一区| 国产淫语在线视频| 99精品久久久久人妻精品| 欧美 亚洲 国产 日韩一| 国产一区二区三区综合在线观看| 久久精品国产99精品国产亚洲性色 | 国产亚洲精品久久久久5区| 青青草视频在线视频观看| 亚洲欧美色中文字幕在线| 麻豆国产av国片精品| 亚洲色图av天堂| 1024香蕉在线观看| 国产单亲对白刺激| 老司机靠b影院| 啪啪无遮挡十八禁网站| 国产精品电影一区二区三区 | 99久久人妻综合| 后天国语完整版免费观看| 亚洲精品成人av观看孕妇| 两性夫妻黄色片| 纯流量卡能插随身wifi吗| 久久这里只有精品19| 国产日韩欧美亚洲二区| 亚洲成国产人片在线观看| 女人高潮潮喷娇喘18禁视频| 国产欧美日韩综合在线一区二区| 亚洲 国产 在线| 亚洲精品乱久久久久久| 男女无遮挡免费网站观看| 在线播放国产精品三级| 国产精品二区激情视频| 久久国产亚洲av麻豆专区| 极品教师在线免费播放| 热99国产精品久久久久久7| 久久亚洲真实| 天堂俺去俺来也www色官网| 亚洲一卡2卡3卡4卡5卡精品中文| 大型黄色视频在线免费观看| 性少妇av在线| 天天影视国产精品| 多毛熟女@视频| 男女床上黄色一级片免费看| 国产成人免费无遮挡视频| 国产av精品麻豆| 岛国在线观看网站| 丝袜人妻中文字幕| 少妇粗大呻吟视频| 最黄视频免费看| 色在线成人网| 一级毛片电影观看| 精品人妻熟女毛片av久久网站| 亚洲av片天天在线观看| 男女之事视频高清在线观看| 欧美日韩精品网址| 欧美精品一区二区免费开放| 亚洲伊人色综图| 欧美中文综合在线视频| 深夜精品福利| 午夜日韩欧美国产| 久久精品国产亚洲av高清一级| 又紧又爽又黄一区二区| 后天国语完整版免费观看| 亚洲精品在线观看二区| av网站在线播放免费| 精品乱码久久久久久99久播| 成人精品一区二区免费| 高清黄色对白视频在线免费看| 黄网站色视频无遮挡免费观看| 热99re8久久精品国产| 日韩视频在线欧美| 国产一区二区 视频在线| 成人免费观看视频高清| 在线 av 中文字幕| 青草久久国产| 国产男靠女视频免费网站| 国产亚洲午夜精品一区二区久久| www.999成人在线观看| 一本久久精品| 一边摸一边抽搐一进一小说 | 精品视频人人做人人爽| 国产一区二区 视频在线| 性高湖久久久久久久久免费观看| 国产精品久久久久成人av| 丝袜人妻中文字幕| 午夜精品国产一区二区电影| 亚洲成国产人片在线观看| kizo精华| 国产成人精品久久二区二区免费| 久久精品国产亚洲av高清一级| 午夜两性在线视频| 亚洲国产av新网站| 国产主播在线观看一区二区| av国产精品久久久久影院| 亚洲精品中文字幕一二三四区 | 最黄视频免费看| 99re在线观看精品视频| 精品一区二区三区av网在线观看 | 黄色丝袜av网址大全| 欧美激情极品国产一区二区三区| 欧美国产精品va在线观看不卡| 成人手机av| 波多野结衣av一区二区av| 久久ye,这里只有精品| 亚洲av日韩精品久久久久久密| 女性被躁到高潮视频| 两性夫妻黄色片| 丝袜喷水一区| 久久人人爽av亚洲精品天堂| 国产有黄有色有爽视频| 在线观看免费视频日本深夜| 亚洲人成伊人成综合网2020| 考比视频在线观看| 亚洲av片天天在线观看| 中亚洲国语对白在线视频| 亚洲 国产 在线| 国产男女内射视频| 亚洲精品国产精品久久久不卡| 国产老妇伦熟女老妇高清| 欧美人与性动交α欧美精品济南到| 国产男靠女视频免费网站| 国产高清国产精品国产三级|