免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務建站與企業(yè)官網運營的一線實戰(zhàn)洞察。

Python Snap7讀取西門子PLC數(shù)據(jù):Dint與LReal解析實戰(zhàn)指南

Python Snap7讀取西門子PLC數(shù)據(jù):Dint與LReal解析實戰(zhàn)指南 搞工業(yè)自動化的朋友一定都有這種經歷現(xiàn)場立著一臺西門子觸摸屏屏幕上實時刷著溫度、壓力、產量這些關鍵參數(shù)但旁邊那臺辦公電腦上卻沒有博途只有Python環(huán)境。想把屏幕上的數(shù)據(jù)接出來做報表、做預警、做歷史曲線第一個念頭就是直接用程序去“讀觸摸屏”。但這兒的門道比想象中要多不少尤其是數(shù)據(jù)類型里最常見的Dint32位整型和LReal64位雙精度浮點。這兩個數(shù)據(jù)類型的解析方式和普通整數(shù)、單精度浮點數(shù)完全不是一個路子我之前第一次上手時就因為字節(jié)序和地址偏移這兩個問題卡了整整一個下午。先說結論用Python Snap7讀西門子觸摸屏背后的數(shù)據(jù)是完全可以的但真正讀的不是觸摸屏本身而是觸摸屏所綁定的PLC。Snap7作為一個開源的S7通信庫通過以太網直接和PLC對話把DB塊里的數(shù)據(jù)拿到手而我們看到的觸摸屏畫面本質上是PLC數(shù)據(jù)塊的“鏡像”。這篇文章我結合自己的實戰(zhàn)經歷把從環(huán)境搭建、連接配置、Dint與LReal的讀取代碼、地址偏移計算、字節(jié)序轉換到各種常見坑完整梳理一遍。不管是設備維護人員、MES對接工程師還是剛接觸工控的Python開發(fā)者照著這套流程都能把數(shù)據(jù)跑起來。1. 先把問題看清楚讀的到底是什么1.1 觸摸屏上的數(shù)據(jù)實際存放在哪里很多剛從IT轉過來接觸工業(yè)現(xiàn)場的程序員第一反應是“觸摸屏里應該有數(shù)據(jù)”。這個想法可以理解但和西門子的實際架構是有出入的。在標準的西門子自動化系統(tǒng)中觸摸屏HMI面板和PLC是兩臺獨立設備觸摸屏的角色是人機交互界面PLC的角色是邏輯運算和數(shù)據(jù)存儲。屏幕上顯示的那個流量計數(shù)值本質是PLC某個DB塊里的變量——HMI通過組態(tài)軟件把這個變量的地址映射到畫面上的一個文本顯示控件。所以數(shù)據(jù)真正的“老家”是PLC的內存區(qū)觸摸屏只是臨時把數(shù)據(jù)展示出來。這就引出一個關鍵結論Snap7連接的目標不是觸摸屏的IP而是PLC的IP。我在一個設備改造項目里最開始就試圖用觸摸屏的IP去連接結果一直超時后來翻看了觸摸屏的組態(tài)工程——畫面變量列表里每個變量都標注了PLC的DB號和偏移地址這才明白過來。因此在做任何采集程序之前最值得做的事是找到觸摸屏組態(tài)里的“變量列表”或者“連接設置”把每個畫面變量背后的PLC數(shù)據(jù)區(qū)信息理清楚。這步做扎實了后面寫代碼就是純粹的體力活。也有個別例外情況比如部分新款HMI面板支持數(shù)據(jù)記錄功能可以把歷史數(shù)據(jù)寫到自身存儲介質里比如配方數(shù)據(jù)、報警記錄。這類數(shù)據(jù)確實存在觸摸屏上但Snap7走的是S7通信協(xié)議核心交互對象是PLC的存儲區(qū)觸摸屏自己的記錄數(shù)據(jù)一般需要走文件導出或者OPC UA通道。因此本文的核心場景仍然是觸摸屏所綁定的PLC實時數(shù)據(jù)。1.2 Dint和LReal到底是什么數(shù)據(jù)類型Dint這個寫法初次接觸會覺得有點陌生。它是Double Integer的縮寫代表32位有符號整數(shù)取值范圍從-2147483648到2147483647。相比西門子PLC里常見的INT16位整數(shù)范圍-32768到32767Dint能表達的數(shù)字范圍大得多。為什么觸摸屏上經常用Dint典型的例子是累計產量。一個計數(shù)器如果長期累加很快就能突破32767的上限用INT必然溢出用Dint則可以跑到21億多對絕大多數(shù)產線來說足夠了。LReal則是Long Real的縮寫是64位雙精度浮點數(shù)對應到C語言里的double也對應到Python里的float——因為Python的float本身就是雙精度。很多傳感器比如稱重、流量、溫度變送器的測量值要求很高精度如果用32位REAL單精度浮點數(shù)有效數(shù)字只有7位大數(shù)加小數(shù)時精度損失很嚴重。舉個例子一個讀數(shù)在100000.123456附近的重力傳感器REAL類型可能只能讀成100000.13而LReal類型能精確保留到小數(shù)點后六位以上。這就是LReal存在的意義。準確理解這兩個類型不僅是類型轉換的問題更直接關系到通信時的字節(jié)長度。Dint在S7協(xié)議中占用4個字節(jié)LReal占用8個字節(jié)。這個“4字節(jié)”和“8字節(jié)”是所有地址偏移計算的基礎——DB塊里一個Dint變量后面緊跟著另一個變量時第二個變量的起始偏移量至少要在前一個變量的基礎上加4如果中間還有LReal變量則要加8。后面關于地址偏移的討論全部建立在這兩個字節(jié)長度上。2. 環(huán)境準備Snap7安裝與PLC通信配置2.1 安裝Python Snap7庫并驗證底層驅動Snap7是一個開源的S7以太網通信庫原生語言是C官方提供了Python綁定python-snap7。安裝方式走標準的pip流程。pip install python-snap7這個包在安裝時會自動攜帶對應平臺的本地動態(tài)庫文件Windows下是snap7.dllLinux下是libsnap7.so所以一般情況下裝完就能直接用。我個人的建議是裝完后立即跑一段最簡測試確認底層驅動真的可用免得后面寫了一大堆代碼才發(fā)現(xiàn)環(huán)境有問題。import snap7 client snap7.client.Client() client.create() print(Snap7 client created successfully) client.destroy()如果導入snap7模塊時報錯比如提示找不到動態(tài)庫直接去Snap7官方GitHub的Release頁面手動下載對應操作系統(tǒng)的庫文件放到系統(tǒng)搜索路徑里即可。這種情況在Windows精簡環(huán)境下出現(xiàn)過幾次安裝Visual C運行庫后基本能解決。2.2 開啟PLC的PUT/GET通信授權這一步極其關鍵而且踩坑率極高。S7-1200和S7-1500系列PLC在默認安全設置下是禁止外部設備通過以太網直接讀寫數(shù)據(jù)塊的。如果你的Snap7程序出現(xiàn)“連接成功但讀取超時”或“完全連不上”這類現(xiàn)象十有八九是PLC的通信權限沒有打開。需要做的操作是在博途TIA Portal里打開PLC的設備組態(tài)進入“屬性 - 保護與安全 - 連接機制”勾選“允許來自遠程對象的PUT/GET通信訪問”。不同版本的博途菜單名稱略有差異有些版本顯示為“Permit access with PUT/GET communication”但位置基本都在保護與安全相關配置里。S7-300和S7-400老款PLC默認允許遠程通信但也要檢查CPU屬性里的保護級別。如果保護級別設置為“完全保護”外部訪問同樣會被拒絕。另外某些老版本固件的S7-300需要在組態(tài)軟件里明確勾選“允許外部讀寫”否則Snap7只能讀不能寫。值得注意的是修改PLC通信權限之后需要重新編譯并下載硬件配置必要時還要做一次停機重啟。這涉及設備停機時間現(xiàn)場操作時一定要提前和相關人員溝通確認。2.3 確認Rack機架號和Slot槽號Snap7的connect方法有三個關鍵參數(shù)IP地址、機架號、槽號。client snap7.client.Client() client.connect(192.168.0.1, 0, 1)這三個參數(shù)一個都不能錯。對于S7-300系列常見的配置是機架0、槽號2對于S7-1200和S7-1500系列常見的配置是機架0、槽號1。但這個不是絕對的比如某些緊湊型CPU或者第三方機架槽號可能有差異。最穩(wěn)妥的方式是打開博途的設備組態(tài)在左側設備樹中查看CPU的實際機架和槽位。如果手頭沒有博途也可以嘗試幾個常見組合連接成功的那個組合大概率就是對的。判斷Rack和Slot是否正確的標志是connect方法不報錯而且后續(xù)的db_read有正常返回。如果connect直接拋異常先別懷疑網絡優(yōu)先檢查IP、Rack、Slot這三項。3. 核心代碼用Snap7讀取Dint和LReal數(shù)據(jù)3.1 基礎連接與DB讀取框架確認通信環(huán)境沒問題后就可以正式寫采集代碼了。先來看最基礎的連接和讀取框架。import snap7 from snap7.util import get_dint, get_lreal def connect_plc(ip, rack0, slot1): client snap7.client.Client() client.connect(ip, rack, slot) return client client connect_plc(192.168.0.10) # 讀取DB號、起始偏移、字節(jié)長度 data client.db_read(db_number1, start0, size4) print(data.hex())db_read是Snap7讀取數(shù)據(jù)塊的核心方法參數(shù)分別是DB塊編號、起始偏移地址、要讀取的字節(jié)長度。返回的是一個字節(jié)數(shù)組也就是PLC原始數(shù)據(jù)的“底片”。我們所有的數(shù)據(jù)類型解析都是在拿到這個字節(jié)數(shù)組之后進行的。我習慣先把原始字節(jié)打印成十六進制用肉眼核對一遍再寫解析邏輯。這樣能第一時間發(fā)現(xiàn)地址對不對、長度夠不夠也能直觀感受大端字節(jié)序。比如PLC里存了一個整數(shù)10實際讀出來的字節(jié)可能是00 00 00 0A而不是0A 00 00 00這就是大端和小端的區(qū)別后面細說。3.2 讀取Dint數(shù)據(jù)的兩種方式拿到原始字節(jié)后解析Dint有現(xiàn)成的工具函數(shù)也可以自己用struct手動解析。先看最直接的方式。# 方式一使用snap7.util自帶的get_dint data client.db_read(db_number1, start0, size4) dint_value get_dint(data, 0) print(fDint value at DB1.DBD0: {dint_value})get_dint接收兩個參數(shù)第一個是字節(jié)數(shù)組第二個是在數(shù)組內部的起始偏移注意這個偏移是數(shù)組內偏移不是PLC的DB地址偏移。它會自動按照西門子的大端規(guī)則把4個字節(jié)解析成32位有符號整數(shù)。再來看自己手動解析的方式。# 方式二使用struct手動解析 import struct data client.db_read(db_number1, start0, size4) dint_value struct.unpack(i, data[:4])[0] print(fDint value: {dint_value})這里的i就是大端Big-Endian有符號32位整數(shù)。是字節(jié)序標記i是C語言int的對應格式。為什么必須加因為西門子PLC的S7協(xié)議在網絡傳輸時使用的是大端字節(jié)序高字節(jié)在前、低字節(jié)在后而x86架構的電腦默認是小端低字節(jié)在前。所以如果寫成i不加結構是以小端解析同一個4字節(jié)數(shù)據(jù)解析出來的整數(shù)就完全不對。get_dint內部做的就是這件加的事所以推薦直接用工具函數(shù)。一個小技巧測試階段可以用已知值驗證。比如手動在博途里給某個Dint變量寫入12345然后運行程序看讀出來的值是不是12345。如果是說明地址和字節(jié)序都對了如果不是先別改解析代碼回頭檢查地址偏移。3.3 讀取LReal數(shù)據(jù)的完整示例LReal占8個字節(jié)讀取流程和Dint類似但解析時的格式和工具函數(shù)不同。# 使用snap7.util自帶的get_lreal data client.db_read(db_number1, start0, size8) lreal_value get_lreal(data, 0) print(fLReal value: {lreal_value})手動解析的寫法import struct data client.db_read(db_number1, start0, size8) lreal_value struct.unpack(d, data[:8])[0] print(fLReal value: {lreal_value})d對應大端雙精度浮點數(shù)占8個字節(jié)。Python的float就是雙精度所以解析出來的值可以直接參與后續(xù)的數(shù)學運算、入庫、展示。這里要提醒一個容易犯的錯LReal是8字節(jié)REAL是4字節(jié)。在DB塊里它們對應的符號名分別是“LReal”和“Real”如果你的變量表里寫的是REAL卻用get_lreal去讀讀出來的字節(jié)長度就不對數(shù)據(jù)會錯位。讀取時size參數(shù)必須和類型嚴格匹配Dint用4LReal用8REAL用4INT用2。3.4 連續(xù)讀取DB塊內的多個變量現(xiàn)場需求通常不是只讀一個變量。比如某個DB塊里偏移0處是一個Dint類型的累計數(shù)偏移4處是一個LReal類型的壓力值偏移12處是一個Dint類型的設備狀態(tài)。這時候最合理的做法是一次性讀取整段數(shù)據(jù)然后分別解析。# 一次性讀取DB1從偏移0開始的16個字節(jié) data client.db_read(db_number1, start0, size16) total_count get_dint(data, 0) # 偏移0讀4字節(jié) pressure get_lreal(data, 4) # 偏移4讀8字節(jié) device_status get_dint(data, 12) # 偏移12讀4字節(jié) print(total_count, pressure, device_status)為什么說這是一次“區(qū)塊讀取”因為從偏移0到偏移16正好覆蓋了這三個變量的全部字節(jié)4Dint 8LReal 4Dint 16。這種做法的優(yōu)勢是減少網絡交互次數(shù)只發(fā)一個請求、收一個響應就能拿到多個變量的數(shù)據(jù)。如果每個變量單獨db_read一次數(shù)據(jù)量小還能接受變量多起來網絡開銷會明顯增加現(xiàn)場通信負載高的情況下還可能丟包。地址偏移的計算一定要拿紙筆推演別在腦子里想象。我踩過一次很典型的坑一個DB塊偏移0是INT占2字節(jié)偏移2是Dint占4字節(jié)但我在讀Dint時想當然地用了偏移4結果把Dint的低兩位和下一個REAL的高兩位拼在一起讀出來的數(shù)值完全不可信。3.5 封裝一個通用讀取器把上面這些邏輯封裝成一個可復用的類是讓代碼真正落地的好辦法。下面是我在多個項目里用的一套結構。import snap7 from snap7.util import get_int, get_dint, get_real, get_lreal class S7DataReader: def __init__(self, ip, rack0, slot1): self.client snap7.client.Client() self.client.connect(ip, rack, slot) def read_dint(self, db_number, offset): data self.client.db_read(db_number, offset, 4) return get_dint(data, 0) def read_lreal(self, db_number, offset): data self.client.db_read(db_number, offset, 8) return get_lreal(data, 0) def read_int(self, db_number, offset): data self.client.db_read(db_number, offset, 2) return get_int(data, 0) def read_real(self, db_number, offset): data self.client.db_read(db_number, offset, 4) return get_real(data, 0) def read_segment(self, db_number, start, size): return self.client.db_read(db_number, start, size) def disconnect(self): self.client.disconnect() # 使用示例 reader S7DataReader(192.168.0.10) dint_val reader.read_dint(1, 0) lreal_val reader.read_lreal(1, 4) print(dint_val, lreal_val) reader.disconnect()這個類的好處是每個類型對應一個方法名字直觀調用方便。我在實際項目中還會在read_segment里加一個超時重試機制比如請求異常時自動重連一次來處理現(xiàn)場偶發(fā)的通信抖動。4. 實戰(zhàn)中的故障排查與避坑記錄4.1 連接失敗但IP能ping通這是出現(xiàn)頻率最高的問題。能ping通說明網絡鏈路是通的但Snap7連接失敗通常繞不開這三個原因第一Rack或Slot參數(shù)不對。我見過一個現(xiàn)場工程師為了省事把所有設備的Rack都填成0結果S7-300連得上S7-1500死活連不上因為后者的實際槽號不是1。解決方法是打開博途設備組態(tài)確認或者試錯幾個組合。第二PLC未開放PUT/GET通信權限。這個在S7-1200/1500上尤其常見。博途里有個默認勾選項是禁止外部讀寫很多人沒注意到導致Snap7連上了但一讀寫就超時。必須到“保護與安全 - 連接機制”里勾選允許外部訪問。第三防火墻攔截?,F(xiàn)場電腦若開啟Windows防火墻可能攔截Snap7使用的102端口需要在防火墻中放行。還有更隱蔽的情況PLC所在的工業(yè)網段與辦公網段做了VLAN隔離Snap7的請求根本到達不了PLC。這類問題要聯(lián)合網絡管理員排查而不是單純在代碼層面解決。4.2 讀出來的數(shù)值明顯不對怎么定位數(shù)值不對一般問題出在地址偏移或字節(jié)長度不匹配。我曾經遇到一個案例設備狀態(tài)字在觸摸屏上顯示正常但程序讀出來是負數(shù)。后來對照博途的變量表才發(fā)現(xiàn)那個變量在組態(tài)里定義的是INT程序卻用Dint去讀了。4字節(jié)的Dint讀取包含了這個INT變量的兩個字節(jié)又把下一段數(shù)據(jù)的字節(jié)也拼了進來自然就錯了。排查這個問題的標準動作是“對照變量表 十六進制打印”。先把db_read拿到的原始字節(jié)打印成hex然后和博途變量表里該變量的真實值做對比。比如在博途里給某個Dint寫入0x12345678協(xié)議層面讀出來應該就是12 34 56 78這樣的原始字節(jié)。如果看到的是78 56 34 12說明你用了小端解析如果完全不是這幾個字節(jié)說明地址都錯了壓根不是這個變量。4.3 字節(jié)序問題導致的數(shù)值反轉字節(jié)序錯誤的表現(xiàn)非常典型變量值是1程序讀出來可能是16777216也就是0x01000000被當成小端解析成了0x00000001不對應該是256的倍數(shù)之類的。具體來說如果我認定了4字節(jié)00 00 00 01用i解析得到1用i小端解析則得到16777216。有些新手會把這種值當成“數(shù)據(jù)錯亂”其實是解析端字節(jié)序問題。解決辦法很簡單統(tǒng)一使用snap7.util里的get_dint、get_lreal、get_real、get_int這些工具函數(shù)它們內部已經固定好大端解析規(guī)則。如果確實要用struct手動解析所有格式都必須加上前綴比如i、d、f、h。4.4 優(yōu)化DB塊讀不出數(shù)據(jù)這個問題很隱蔽代碼完全沒錯但讀取結果要么超時要么全零。調查后發(fā)現(xiàn)DB塊組態(tài)時啟用了“優(yōu)化的塊訪問”O(jiān)ptimized block access。在優(yōu)化模式下變量的地址不是簡單地從0開始順序排列而是由編譯器自動排布對外部通信而言等于“不可見”。Snap7這類工具訪問優(yōu)化DB時無法通過固定的偏移地址讀取任何有效內容。解決方式在博途里選中對應的DB塊在屬性中取消“優(yōu)化的塊訪問”選項保存編譯后重新下載到PLC。注意取消優(yōu)化后DB塊內變量的實際地址會發(fā)生重排那么所有依賴該DB塊的讀寫程序、HMI變量綁定都要跟著更新否則會出現(xiàn)張冠李戴。這個改動的影響面較大現(xiàn)場操作前建議先導出變量表備份。關于優(yōu)化DB和非優(yōu)化DB還有一個判斷方法在博途DB編輯器的“監(jiān)視”視圖中優(yōu)化DB的偏移列通常顯示為灰色或不顯示具體數(shù)字非優(yōu)化DB則有一個明確的OFFSET值序列。4.5 觸摸屏和PLC都連接成功但讀出的數(shù)據(jù)對不上號一個容易忽略的點現(xiàn)場可能有多臺PLC和多臺觸摸屏所有設備的IP都在同一個網段。如果程序里只改了觸摸屏IP卻沒注意觸摸屏綁定的PLC可能換了CPU或者有冗余切換就容易出現(xiàn)“程序讀到的是A車間數(shù)據(jù)你以為自己在讀B車間”的情況。這種問題在代碼層面無解必須在現(xiàn)場確認設備對應關系最簡單的方法是在博途的在線診斷里查看觸摸屏當前連接的實際PLC名稱和型號。5. 進階把數(shù)據(jù)解析流程做得更可靠5.1 用變量定義文件自動生成解析邏輯當項目的DB塊里有幾十個甚至上百個變量時手寫解析代碼的風險和成本都太高。我的做法是把變量表導出為結構化文件JSON或Excel然后在程序里自動生成解析邏輯。邏輯本身不復雜核心是“變量名 偏移 數(shù)據(jù)類型”這三個要素一一對應。下面是一個JSON配置的示例{ db_number: 1, variables: [ {name: total_count, offset: 0, type: DINT}, {name: pressure, offset: 4, type: LREAL}, {name: device_status, offset: 12, type: DINT}, {name: temperature, offset: 16, type: LREAL} ] }對應的解析器可以借助循環(huán)完成。import json import snap7 from snap7.util import get_dint, get_lreal, get_real, get_int def parse_config(config_path): with open(config_path, r, encodingutf-8) as f: cfg json.load(f) return cfg def read_variables_by_config(client, cfg): db cfg[db_number] start 0 # 最大偏移 類型長度 total_size max(v[offset] for v in cfg[variables]) total_size 8 block_data client.db_read(db_numberdb, start0, sizetotal_size) result {} parse_map { DINT: (get_dint, 4), LREAL: (get_lreal, 8), REAL: (get_real, 4), INT: (get_int, 2) } for v in cfg[variables]: func, size parse_map[v[type]] result[v[name]] func(block_data, v[offset]) return result這個方案后期擴展非常方便新增一個變量只需要改配置文件的對應行不必動代碼。而且配置文件可以和觸摸屏組態(tài)的變量表保持同步從源頭降低了地址錯位的概率。5.2 通信超時與異常斷線重連機制工業(yè)現(xiàn)場的以太網環(huán)境并不總是穩(wěn)定。電機的啟停、變頻器的干擾、交換機的端口協(xié)商都可能導致PLC和上位機之間的連接短暫中斷。如果程序不做任何容錯一次斷線就會讓采集進程崩潰或數(shù)據(jù)流中斷。我在封裝讀取器時習慣加一個自動重連機制?;具壿嬍遣东@Snap7的通信異常等待幾秒后重新連接重連成功后繼續(xù)執(zhí)行后續(xù)讀取操作。class RobustS7Reader(S7DataReader): def __init__(self, ip, rack0, slot1, max_retry3): super().__init__(ip, rack, slot) self.max_retry max_retry def read_with_retry(self, db_number, offset, read_func, size): for i in range(self.max_retry): try: data self.client.db_read(db_number, offset, size) return read_func(data, 0) except Exception as e: print(fRead failed, retry {i1}/{self.max_retry}: {e}) time.sleep(1) raise RuntimeError(Max retries exceeded)這里的關鍵是read_func這個參數(shù)它可以是get_dint、get_lreal等解析函數(shù)這樣這個方法就能被所有類型復用。實際使用時把read_dint和read_lreal改成調用read_with_retry即可。5.3 數(shù)據(jù)采集寫入數(shù)據(jù)庫的思路數(shù)據(jù)讀出來只是第一步大多數(shù)場景需要寫入數(shù)據(jù)庫或者推送MES。最簡單的做法是配合pandas和SQLAlchemy把每次采集到的數(shù)據(jù)轉成DataFrame按批次寫入。import pandas as pd from sqlalchemy import create_engine # 采集一批數(shù)據(jù) row {timestamp: datetime.now(), total_count: total_count, pressure: pressure} df pd.DataFrame([row]) df.to_sql(production_data, conengine, if_existsappend, indexFalse)如果是高頻數(shù)據(jù)比如每秒采集一次建議做成內存隊列批量落庫避免每條數(shù)據(jù)都開一次數(shù)據(jù)庫連接。如果現(xiàn)場已經有OPC UA網關Snap7的定位可以更靈活Snap7作為PLC數(shù)據(jù)采集層把數(shù)據(jù)推到MQTT或Redis再讓上層應用消費形成一套完整的工業(yè)數(shù)據(jù)鏈路。6. 最后補充幾句實操心法Snap7讀西門子數(shù)據(jù)的整體流程說到底就是三件事通信授權打開、地址算對、字節(jié)序解析對。這三件事都不難但每個環(huán)節(jié)都有隱藏的坑。從我個人經驗來看最容易出問題的不是代碼層面而是工程信息不透明——你拿不到準確的DB變量表或者拿到的是過期版本。所以在動手前我一定會先做兩件事一是拿到最新的PLC程序變量表二是用“讀4字節(jié)hex打印”的方式驗證一兩個已知變量。這兩步的投入只要十幾分鐘卻能把后面好幾個小時的排查時間省下來。另外如果是給長期運行的產線做采集不要忽略異常斷線重連和重復數(shù)據(jù)去重。工業(yè)現(xiàn)場設備重啟、固件升級、觸摸屏程序下載這些操作都可能讓PLC短暫離線采集程序如果扛不住這些小震動會產生數(shù)據(jù)空洞或重復記錄。給自己留一個簡單的手工驗證指令比如在命令行里跑一段單獨的讀取腳本檢查當前連通狀態(tài)排查問題時特別管用。這套方案目前在我的多個項目里穩(wěn)定運行覆蓋了S7-1200、S7-1500和部分S7-300設備。如果你正準備用Python對接西門子觸摸屏背后的數(shù)據(jù)照著上面的步驟一步步來先跑通一個Dint變量再擴展到LReal最后做成通用采集器整個流程會非常順。遇到問題也歡迎對照本文的排查清單逐項核對大部分疑難雜癥都能定位到明確原因。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
九色成人AV在线| 91久久国产综合久久| 狠狠色无码| 色情五月天导航| 香蕉狠狠爱视频| 千人斩操逼| 操操操91| 亚洲AV日韩在线观看| 精品久热69| 99久久这里只有精品免费官网| 亚洲精品99| 久久99热这里只有精品首| 五月Huangsewang| 玖玖爱综合网| 亚洲精品永久久久久久| 婷婷久久亚洲| WWW五月| 精品五月丁香| 在线观看熟女少妇| www.激情.com.| 99精品综合在线| 色色热| 26uuu精品一区二区| 国产成人va在线| 99亚洲综合| 26uuu精品一区二区| 色亭亭九月| 久久久久久欧美精品se一二三四| 五月天com| 天天干天天 亚洲| 激情综合无码| 99久久久免费| 丁香五月天无码AV| WwW天天干| 久久婷婷精品| 综合激情五月四射婷婷| 天天骑日日爽| 草美女在线观看视频在线播放| 91精选国| 亚洲黄色操逼| 色涩影院六月丁香| 97久人人| 五月丁香综合激情| 五月婷婷综合网在线播放| 久久女婷| 激情狠狠丁香月| www.狠狠狠狠| 无码人妻一区| aa久久| 在线视频激情网站| 91啪啪视频| 色婷婷婷婷| 五月丁香激情综合啪啪| 五月婷婷色| 97色色婷婷| 丁香五月天网站| 丁香五月欧美激情| 亚洲久艹| 欧美久久婷婷| 色色色综合| 国产无套精品一区二区| 开心五月激情网| 色婷婷婷婷| 99热免费观看| WWW色色色COM| 91人人爽狠狠狠| 国产操B视频| 嫩模aV在线| 日本啪啪天堂| 五月婷婷丁香大陆免费| 亚洲日日日| 色五月色五天免费视频| 深爱激情五月婷婷| 色亭亭九月| 99国产97在线,| 玖玖热99| 国产日批视频| 婷婷久久色| 五月婷婷久久大香蕉| 亚洲AV网址| 婷婷啪啪| 丁香五月婷婷亚洲天堂| 華人性愛AV在線| 色婷五月天网站| 综合久久六月| 激情久久久| AV成人在线网站| 中文不卡av| 97超碰在线免费观看| 丁香色五月 97干| 久久久久亚洲A∨成人乱码电影| 午夜微拍福利| 日本色婷婷| 婷婷六月综合在线| 久久久婷婷五月亚洲97号色| 国产精品涩涩涩视频网站| 日操夜操天天操不卡| 麻豆精品| 六月丁香五月激情婷婷| 天天插天天插| 成人 在线 日韩| 五月色欧洲| 五月婷婷丁香俺日污视频| 91黄址| 国产FREESEXVIDEOS性中国| 色欲色香,www,com| 青青草视频福利| www.91婷婷| A片试看50分钟做受视频| 黑人熟妇一区二区三区| 五月丁香婷婷俺| 色色激情五月天| 色五月综合网站| av网址在线| 俺也高清无码高清视频| 国产毛片欧美毛片久久久| 综合激情九月婷婷,激情综合婷婷中文字 | 丁香婷婷色五月| 久艹伊| 五月天欧美 另类小说| 色色色综合| 国产偷人爽久久久久久老妇APP| 清纯唯美 激情四射| 丁香婷婷六月天| 亚洲色情网站| 91五月花丁香| 深爱激情网五月天| 天天干天天日蜜臀av| 色性综合| 女人天堂AV| 91丨九色|PRNY熟妇| 色视五月天婷婷| 国产成人网站在线观看| 婷婷色啪| 久久婷婷亚洲| 五月天激情综合在线| 久久综合首页| 99福利导航| 天天日天天摸| 欧美激情中文字幕| 黄色成人网站在线播放| 欧美色色色色色| 久热这里只有| 五月丁香好婷婷A片网| 亚洲欧美999| 久久婷婷五月综合色丁香花| 天天做天天摸| 综合网啪| 欧美色婷婷| 超碰93在线观看| 丁香婷婷视频| 黑人无码一区| 5月丁香啪啪啪| w婷婷五月婷婷w| 超碰人人操| 人妖色AV色综合| 五月丁香黄色视频| 色五婷婷| 九色婷婷| 这里只有精品69| 97超级碰人人| 91干在线| 亚洲色色在线| 日本天堂网站99| 狠狠干综合网| PORNY九色9l自拍视频成人| 国产激情在线| 色99视| 免费看欧美成人A片无码| 99色啊| 亚洲第一成人无码A片| 激情五月天综合图片小说网站| 五月精品| 高清无码.com| 99碰碰中文| 国产成人av在线播放| 九月婷婷| 天天色五月婷婷91久久久久久久| 99热中国| 免费九九热| 国产人妻777人伦精品HD| 好吊丝aV| 国产精品99久久久久久猫咪| 日韩AV免费电影在线播放| 人妻操在线看| 综合激情伊人影视在线| 玖玖@三月天天丁香婷婷| www.99热视频| 色婷婷丁香五月丁香| 一本色道久久综合狠狠躁一二三| www,五月天激情| 精品九九网| 精品五月天| 激情综合网,婷婷五月天| 丁香五月ⅤA久久久| 五月婷婷丁香大陆免费| 玖操97| 97人人看一| 人妻操逼视频| 成人网址在线观看| 婷婷亚洲在线| 五月情丁香色| 五月婷婷中文字幕| 久久九九99.www| 久久丁香五月天| 中文字幕性爱丰满| 久久黄色免费视频| 亚洲精品国产成人AV在线| 玩熟女五十AV一二三区| 99久久9| 五月婷激情| 成人视频九九| 亚洲艹网| 操一区| 色色五月天 亚洲| 五月天开心激情综合网| 日本啪啪网| 99热99热99热99热| 久久这里只有国产精品视频| 色网站99| 热的国产99热| 伊人久久婷婷| 91久操| 看全色黄大色大片| 婷婷性爱视频在线| 超碰9在| 97碰碰草| www.99riav99| 99欧美精品99日本精品| 婷婷色影音天| 中文字幕在线aⅴ免费观看| 激情久久综合| 五月婷婷基地| 婷婷香五月天| AV性爱在线| 久色网址| 色五月激情| 六月撸婷婷| 天天日日综合| 五月天婷婷激情在线色图| 99热欧美| 中文字幕无码人妻少妇免费视频| 婷婷伊人网| 婷婷成人综合五月| 五月成人天| 色五月五月天| 亚洲五月天狠狠| 精品久久人妻热| www.91久久| www.色色五月天.com| 超碰97色| 欧美乱码国产一级A片| 一区二区aV电影免费看| 日韩国产在线免费观看| 久久婷婷五月丁香网| 97碰成超视频免费视频| 五月激情射| 国产午夜精品一区二区| 日韩ac不卡无码| 天天操人人干| 九九色热| 91嫩草国产线观看亚洲一区二区| 日韩婷婷| 三级三久久线久久99久目本WW| 五月色俺婷婷| 日本人人xxx| 婷婷 月 丁香| 99丁香五月婷| 丁香六月激情综合| 99热99精品在线观看| 在线看AV| 色婷五月天| 婷婷五月丁香久久| 久久五月丁香| 五月婷婷丁香日韩在线| 91日韩美女被插视频| 日本久久精品18| 九九无码| 婷婷五月丁香基地在线视频官网| 99操逼| 久久三级视频| 黄色国久久| 亚洲AVwwwwwww| 中文字幕激情综合| 免费精品66| 五月综合激情视频| 超碰色综合| 五月天另类激情在线| 午夜少妇在线观看视频| 伊人三级激情| 激情婷婷丁香色五月综合| 五月色精品| 五月天播播中文字幕 | 丁香五月激情综合| 久久人妻在线| 丁香五月婷久久| 九九热精品| 丁香婷婷欧美综合| 综合久久婷婷| 欧美成人网99网| 9久视频| 少妇人妻丰满做爰XXX| 九月性爱网| 激情综合五月| 亚洲色热| 伊人久久婷婷五月综合97色| 亚洲欧洲99| 婷婷五月天在线观看第二页| 色五月亚洲| www.久久色.com| 久久久婷| 激情综合网五月丁香| 亚洲精品a成人在线播放| 99亚洲视频| 日本激情五月| 任你草| 亚洲成人在线综合| 天天爽天天日天天舔| www.五月.com| 色五月激情网| 午夜成人综合| 五月婷婷在线视频观看| 五月丁香久久激情综合| RenRenSe在线视频网站| 婷婷五月天成人| 久热伊人9| 天天在线久久综合 | 中文字幕视频在线播放| 99婷婷色| 狠狠操狠狠干综合| Av狠狠色丁香婷| 丁香五月在线人妻| 久久9久| 偷拍99在线视频观看| 色婷婷六月性| 婷婷色色网| 丁香五月情| 五月情婷婷| 狠狠色噜噜狠| RenRenSe在线视频网站| 怡红院AV亚洲一区二区三区H | 老司机伊人| 久久精品99久久久久久| 国产色网站| 日日操无码| 99久久99热这里只有精品| 99热66| 91操片| 亚洲五月婷婷| 久热AA| 国产无人区大片| 黄色AAAAAAA| 噜噜噜精品欧美成人在线观看| 色综合五月| 97超喷视频在线观看| 色99综合视频| 97超碰色| 婷婷五月丁香五月综合网| 狠狠色噜噜狠狠狠狠狠色综合久久| 91婷婷色五月| 强伦轩人妻一区二区电影| 99色干| 97超碰在线免费观看| 九月激情综合婷婷| 久久久久9| 色999五月色| 99色免费观看全部| 婷婷丁香五月久久| 五月婷婷激情啪啪| 五月丁香六月色| 五月婷婷色综图片| 五月婷婷综合网| 久热这里有精品视频| www.婷婷六月天| 天天肏天天插| 激情骚五月| 五月婷婷在线免费| 亚洲永久四色| 激情涩播| 九九热99熟女| 天天网站天天爽| 久久五月婷6 9| 五月丁香六月婷婷的女人| 黄色av网站在线免费播放| 欧美人人草| 久9视频免费播放| 99精品久久| 亚洲综合网激情小说| 九九成人电影婷婷| 99热在线观看| 俺也高清无码高清视频| 在线观看的av| 亚洲最大视频网站| 亚州操人在线视频| 五月婷婷六月少妇激情| 开心婷婷五月天综合| 97色婷婷| 丁香花五月天激情| 亚洲丁香五月在线观看| 五月天丁香网| 婷五月天| 国产SUV精品一区二区6| 五月天激情网站| 丁香五月AV在线| 日韩久久日| 丁香五月性爱| 激情六月丁| site:xiongshengzz.com| 激婷网| 色域五月婷婷丁香| 久热精品视频| 婷婷色五月天第7色| bukadeavzaixian| 欧美这里只有精品| 丁香五月开心亚洲| 天天免费日日夜夜夜夜| 婷婷激情丁香五月天综合| 亚洲中文AV网站| 色五月播五月| 久操无码| 99色在线视频| 五月婷婷激情综合网 | 俺来也综合网精品一区| 九9九9无码| 99ER热精品视频| 99热亚洲| 丁香婷婷激情六月五月开心| 五月婷婷激清网| 色播五月丁香| 激情五月丁香社区| 正宗黄色毛片| 五月色丁香婷婷综合| 99re6在线视频精品免费| 色婷婷五月天成人网| 99久久er| 第四色婷婷五月| 五月婷婷xxx| 激情性爱网站| 青青草婷婷久久| 大色鬼综合| 思思久久99| 五月丁香久| 丁香五月天论坛| 深爱五月亚洲| 四色女婷婷| 久久久久婷婷五月热综合| 久久五月天色婷婷| 热五月婷婷| 日韩无码性爱| 丁香久月| 碰97久久| 婷婷伊人综合中文字幕| 色激情五月| 五月天婷婷色色首页| 伊人婷婷福利网| 国产看真人毛片爱做A片| www.国产色| 五月婷婷与六月丁香图片激情| 六月亚洲| 超碰狠狠色| 五月丁香激情综合六月涩涩爱| 日本毛片内射| 99热99久久| 色色色婷婷五月| 中文字幕,综合,91| 久久作爱| 99久久a线观| 五月丁香综合激情在线观看| 狠狠久久婷五月综合色| 中文字幕 久久9999| 五月丁香六月情婷婷久久| 伊人天天色| 激情综合网激情五月欧美| 在线综合婷婷| 婷婷五月天综合小说网| 日本欧美成人片AAAA| 影音先锋91| 99在线免费视频| 在线另类| 午夜天天精品视频| 五月丁香婷婷激情四射迷人| 99福利导航| 五月丁香狠狠爱| 综合99在线| 九九热在线观看视频网站| 武汉美女啪啪视频免费一级片| 操操操www.com| 亚洲成人电影aaaa| 日本狠狠色| 99操逼| 99热官网| www.九月婷婷丁香.com| 91在线日| 亚洲精品色色色| 思思热这里只有精品| 亚洲AV人人操| 欧美色图片88| 国产操B视频| 五月天婷婷三级黄| 黄色激情五月天| 99九无网码| 日日夜夜天天| 偷拍91九色| 欧洲精品欧洲情| 激情婷婷综合五月少妇| 五月色综合| 五月丁香亭亭电影久久| 99在线69| 婷婷五月天在线观看第二页| 色五月婷婷天天干| 激情五月天偷拍综合网| 免费观看18视频网站| 婷婷五月开心六月AV| 九九久久五月天| 伊人丁香花综合影院| 五月天综合在线| 久久久中文| 综合激情在线观看| 热久久国产视频| 变态另类9| 久综合4| 亚洲精久久| www夜夜操comwww| 婷婷午夜天| 五月婷婷,六月婷婷| 色色啊| 亚卅毛片| 成人在线观看一区| 天天摸天天高潮天天爽| 91日本在线观看| 五月婷婷丁香六月| 丁香五月激情五月开心五月| 怡红院AV亚洲一区二区三区H| 欧美 色婷婷| 六月丁香婷| 久青草影院| 色色色色色色综合网| 婷婷五月天最新综合你懂的| 激情AV在线| 狠狠色婷| 九九机热| 在线播放人妻| 人人干天天操五月丁香| 六月伊人婷婷| www.99热| 色999亚洲人成色| 五月天丁香久久| 天天久综合| 色色色色丁香| 南京搡BBBB搡BBBB| 九九色热| 久久永久网址| 99久热| 国産精品| 97色婷| 国产成人高清| 区美毛片子| 久婷婷色| 日本综合色色| 色婷婷久久久| 激情五月六月婷婷| 五月丁香六月婷婷,婷| 成人丁香五月| 丁香五月婷婷五月天在线| 色啪影院| 五月色情婷婷开心五月天| 九九99久久| 婷婷五月天激情四射五月天激情| 丁香婷婷月| 婷婷激情啪啪| 六月丁香中文字幕| 成人午夜无码视频| 91久久久久久| 色情激情五月| 久久国产高潮白浆免费观看99| 丁香五月天欧美成人| 五月丁香六月激情在线| a v色婷婷| 懂色av粉嫩av蜜臀av| 亚洲久久婷婷| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 九九超日本| 五月丁香婷婷欧美| 丁香婷婷大香蕉| 婷婷色婷婷| 婷婷五月天伦理| 国产精品色情AAAAA片软件| 色色aⅤ網| 高清av在线国产| 久久久天天啊| 五月丁香久久精品在线观看| 超碰97在线操| 婷婷色五月婷| 午夜色色色极品视频| 国产亚洲精品久久久久久久久动漫 | 欧美大肥婆大肥BBBBB| 成人婷婷五月天| 九九久久9 9在线观看| 亚洲色视频| 91天天操天天干天天射| 青草视频在线播放| 久久婷婷五月| 在线观看视频1区| 激情图片婷婷丁香五月| 夜夜骑操AV| 丁香八月综合激情| 超碰99在线观看| 婷婷激情五月综合基地| 婷婷天堂视频| 国产AV熟妇人震精品一品二区| 99色最新在线视频| 日韩天堂久久| 六月婷婷色综合| 天天狠狠夜夜狠狠2023| WWW,色五月| 日逼影音先锋男人资源站| 91色逼| 91啪级电影| 久久伦乱| 久草五月丁香婷婷综合| 丁香五月天综合| 99热99热在线| 精品综合久久久久久五月天| 色色色综合网| www激情五月天| 激情图片亚洲| 26uuu丁香婷婷五月| 国产日韩精品SUV| 久久久.COM| 午夜婷婷六月天| 激情五月综合网| 婷婷久久色| 香蕉久久国产AV一区二区| 日韩在线一级| 99视频这里只有精品10| 婷婷五月精品在线| 婷婷色女| 超碰激情网| 大香伊人婷婷影院| 95精品区一区二| 人人摸人人摸| AV在线观看网站| 玖玖资源站中文| 求可以看的AV网址| 深爱激情网五月| 五月婷婷色影院| 丁香六月综合激| 丁香婷婷欧美综合| 免费视频在线观看的网站| 国产无套精品一区二区| 久久婷婷热| 狠狠色噜噜狠狠| 少妇达人正片在线播放_ikun_福利吧| 九九99免费理论| 婷婷五月天首页激情| 艹B高清无码| 八戒青柠影视剧在线观看| 色五月天综合网| 婷婷五月花| 激情综合在线观看| 色噜噜狠狠色综合无码久久欧美| 日韩色色色色| 日本欧美成人片AAAA| 玖玖热视频| 大香蕉人妻| 色婷五月天| 亚洲综合色色| 99热官网精品在线| 五月婷在线观看| 天天搞天天爽| 五月丁香啪啪| 亚洲V国产V欧美V久久久久久| 激情亭亭五月| 熟女网站久久| 99re思思久久| 国产 码在线成人网站| 久久久久久久人妻| 精品一二三区久久AAA片| 亚洲无码99| 性做爰A片免费视频A片直播| 日韩av手机在线观看| 中文字幕无线久必| 久久色吧| 国产操B视频| 久久婷色| 插插干干干色| 日韩欧美一级大黄网站| 激情都市丁香婷婷| 久久XX| www.久久| 婷婷丁香五月视频| 日本久久99久久| 久久久久久激情| 国产亚洲色婷婷99精品| 狠狠干五码| 欧洲亚洲精品| 久热这里只有精品99re | 九九亚洲视频| 欧美情色一区| 99久在线精品99re5热视频| 婷婷五月天堂| 五月婷婷综合网在线播放| 玖玖资源天天无码| 色丁香五月天| 热思思九九| 五月色亚洲| 丁香丁婷五月激情| 丁香婷婷十月| 草草操操| 婷婷大香焦| 人人操人人爽成人AV| 国产噜一噜天天噜| 久久婷婷成人综合色怡春院| 色色色9| 一级黄色片看看| 变态另类9| 色五月婷婷婷婷| 99热99精品| 精品无码久久久久久久久| 婷婷伊人五月丁香天堂网| 伊人99热| 婷婷五月天视频亚洲| 99热色精品| 亚洲影院婷婷色| 丁香五月亚洲AV| 五月五婷婷| 五月天社区| 综合五月丁香六月婷婷| 久久五月天黄色五月天色网址| 色婷婷五月综合在线| 91狠狠色丁香婷婷综合久久狠丁香综合久久精品 | 国产操肏网站| 天天操夜夜夜拍拍拍| 97精品自拍视频| 国产XXXX搡XXXXX搡麻豆| 停停五月色宗合| 日本熟妇人妻在线| 五月丁香婷婷成人网| 日韩AV在线免费| 婷婷色色综合激情| 色综合九九| 色丁香五月婷婷综合久久| 538在线| 色五月色图| 一级韩国产精品毛| 99精品视频在线| 伊人五月天在线| 伊人婷婷五月天av| 激情婷婷五月天日本系列| 国产精品美女| 在线中文字幕视频| 99性爱视频| 亚洲天堂AV综合网| 欧美精品狠狠色丁香婷婷| 婷婷色激情网| 色色五月丁香婷婷| 日本丁香久在线| 精品国产va久久久| 天天插操| 激情五月色综合国产精品| 天天拍天天操| 玖玖在线视频| 丁香五月天网站| 一起草无码| 婷婷五月天播播| 中文字幕人妻AV| 婷婷五月骚厕所| 亚洲午夜在线视频| 色婷婷五月天激情综合| 国产午夜精品一区二区三区嫩草| 成人网页在线观看| 天天干狠狠| 九九综合88| 天天插天天插天天插天天插 | AV成人在线播放| 婷婷综合九月| 丁香六月综合| 婷婷色中文| 激情九色| 91精品久久久久久久| 日亚二欧美| 久久久27操| 一区二区乱码视频| 婷婷五月天堂| 操骚货在线| 色五月涩涩婷婷蜜桃| 五月丁香六月婷| 五月丁香激情综合欧美| 婷婷五月欧美综合| 99re这里只有精品视频了| 精品国产a| 五月天婷婷综合| www.夜夜操| 热99精品视频观看| 色和综合网| 婷婷婷婷色| www.99日本| 五月天色色网站| 激情综合网络插| 色狠狠色噜噜AV天堂五区| 99久久er| 九九九九中文字幕| 久久网日本| 婷婷色激情网| 中文字幕视频色婷婷| 狠狠色噜噜狠狠| 久久9RE热视频精品98| 亲子乱AV一区二区三区下载| 热的国产99热| 日本综合99| 丁香五月成人| 亚洲日本激情| 五月天婷婷激情六月久久 | 婷婷色色播五月天| 69精品无码一区二区三区| 久久性操| 丁香五月激情婷婷激情| 一级七香蕉| 九九亚洲视频| 国产乱妇乱子伦| 精品网站:999WWW| 疯狂做受XXXX高潮A片| 国产玖玖资源| 人妻性操逼中文字幕 国产| 91精品激情9| 五月激情综合网| av在线超清中文| 18久久| 久久久久婷婷| 五月婷婷丁香俺日污视频| 亚州色婷婷| 1024人妻无码中文字幕| 九九色热| 中文在线视频久1| 激情婷婷五月久久| 天色色综合网| 欧美交换配乱吟粗大25P| 亚洲综合色色色| 久这里只有精品99| 丁香五月成人丝袜| 日本人妻伦在线中文字幕| 操九色| 狠狠色婷婷六月激情网| 五月天婷婷色| 殴美日韩成人| 九九婷婷五月天| 伊人五月综合网| 天天色天天操天天射| 天天操天天操| 超碰在线91| 天堂网啪啪| 狠狠一日| 色五月综合| 久久伊人婷婷| 丁香五月天激情免费在线观看AV777 | 日本色噜| 婷婷在线综合| 久久久婷婷色五月资源网| 日本乱子人伦在线视频| 九九热最新视频| 色欲婷婷五月天丁香| 五月激情五月婷婷五月天在线| www.91在线看| 黄色AAAA韩国guochansanji| 99色色| 开心激情综合| 婷婷中文在线| 欧美精品啪啪| 99爱在线视频| 五月丁香婷婷激情视频| 丁香五月婷婷久久久| 中文字幕按摩做爰| 久热伊人| 久久天天| 天天日天天摸| 欧美在线视频99| 婷婷综合五月天| 婷婷激情人妻| 久久九九@| 婷婷六月综合基地| 久久a热| 五月婷婷婷| 色婷婷综合视频| 激情亚洲网| 丁香五月色欲| 五月天激情无码专区| 亚州精品久久久久AV无码| 艾小青av| 欧美丁香五月天| 丁香婷婷啪啪啪| 99热精国产这里只有精品| 99秘 在线| 久久96热| 五月色丁香视频精品| 夜夜撸日日骑| 五月丁香六月婷婷无码| 99色网站| 99乱视频| 五月丁香天堂网| 激情六月婷婷| 午夜少妇在线观看视频| 欧美色五月天| 成人五月天视频| 婷婷五月天成人| 91色操| 五月婷婷综合网| 久热九九| 日本无码专区| 亚洲激情Av| 99操免费视频| 激情久久久| 亚洲舔观看| 五月婷婷激清网| 激情六月综合| 五月婷婷与六月丁香图片激情| 久热这里只有精品视频免费观看| 六月丁香五月婷婷首页| 激情婷婷亚洲五月| 色射婷婷五月天| 久久五月天综合| 久/久精品99看9| AA片在线观看视频在线播放| 婷婷热色| 九色91视频| 亚州欧美国产久精国产99综合视频| 久九色| 99这里只有免费的小视频在线观看| 国产成人网| ss99热| 丁香五月成人网| 婷婷激情图片| 婷婷五月花.97| 超碰人人99| 九九蜜臀精品| 色播五月婷婷五月| 东京热免费视频| 激情操逼婷婷| 久久婷狠狠色| 丁香五月亚洲综合| www.婷婷.com| 中文字幕无码人妻少妇免费视频| 大地9中文在线观看免费高清 | 日本 欧美在线| 狠狠狠人妻| 色欲午夜无码久久久久久张津瑜 | 99国产精品久久久久久久久久久| 91久久久久久| 美女91一起草| 免費亭亭成人| 超碰在线中文字幕| 91肏肏肏| 噜噜干日本| 婷婷五月天在婷| 亚洲天天| 99免费偷拍视频| 婷婷亚洲五月丁香综合在线| 99九九在线视频| 超碰在线网站9| 99视频久久| Www,五月天| 欧美经典片免费观看大全| 婷婷中文字幕网| 激情网开心网| 泰州成人视频| 97操碰在线视频| 草婷婷在线| 五月色婷| 五月天婷婷色色首页| 久草五月天电影网| 色爱综合网| 伊人久久大香天蕉亚洲特级| 99热99精品在线观看| 五月天婷婷激情小说电影| 一区操| 久热A片| 蜜臀av无码久久久久久久久| 激情久久久久久久久久久| 亚州成人综合在线| 日本va网站| 开心深爱激情网| 婷婷五月天激情电影| 婷婷五月美女直播| 一本色综合色| 99久久黄色顶级视频| 无码人妻电影| 蜜臀av粉嫩av懂色av| 天天插天天操| 26uuu色五月| 五月丁香网中文字幕| 亚洲中文字幕av| 九九青青草成人| 97操碰视频| 久九九热| 日本成人噜噜噜| 婷婷五月激情小说| 99热久草| 人人操9| www.日韩艹| 成人无码髙潮喷水A片| 91婷婷丁香五月天免费视频网站| 热99只有里视频| 五月天婷a在线| 欧美丁香六月激情视频| 91综合在线| 成人精品一区二区三区四区五区 | 99精品女人天堂| 色婷婷狠狠| 91九色 熟| 日韩色五月| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 日本三日本三级少妇三级66| 天天色综合网吨吧| 影音先锋91网站在线观看| 丁香五月天在线直播观看| 国产精品人成A片一区二区| 天天上天天爽| 乱精品一区字幕二区| 色五月激情综合| 玖玖婷婷色欲| 午夜做爱影院| 激情五月份婷婷| AV在线观看网站| 狠狠做五月| 亚洲中文字幕在线观看| 婷婷六月中文字幕| 五月丁香婷婷狠狠操| 开心激情播播五月天| 中日韩狠狠色| 99精品热| 五月天婷婷色播综合在线| 99热99艹在线观看| www.五月天社区| 五月丁香婷婷啪啪网| 丁香色综合| 深爱婷婷基地| 大香蕉久久视频久久视频| 99色爱| 激情五月份婷婷| 亚洲AV成人在线| 五月天亚洲最大成人| Aaa久久| 噜啊噜在线| 淫视馆aV二区一区| 国产午夜成人AV在线播放| site:feetmall.com| 亚洲无码黄色| 狠狠色噜噜狠狠狠888| 亚洲综合婷婷| 婷婷久久影院| 婷婷狠狠操| 九九热视频思思| 婷婷丁香亚洲色综合91| 五月色综合| 激情五月色综合| 92久久| 国产性爱在线| 超碰三级片| 色爱99| 日韩性爱无码| 五月婷婷五月天| 五月婷色激情五月| 91操人视频| 九九色婷| 六月丁香久久| 午夜丁香综合婷婷| 性一交一乱一交A片久| 深爱综合网| 婷婷六月爽| 99啪啪网| 伊久大香蕉| 色五月天丁香| 五月丁香六月婷婷视频| 五月天激情国产综合婷婷婷就去爱| 色五月婷婷久久| 五月婷婷久| 26uuu欧美日韩| 综合九九久久| 性按摩玩人妻HD中文字幕| 国产精品国产| 丁香久久五月天视频在线观看 | 国产精品成人av在线观看春天| 亚洲AV日韩在线观看| 狠狠干狠狠色| 人人爽天天爽| 丁香五月婷婷亚洲另类| 9久久久久| 丁香五月激情啪啪啪| 狠狠操天天干| 色婷婷久久综合| 99色最新在线视频网站| www.25五月婷婷| 在线超碰91| 91麻豆国产三级精品福利在线观看| 韩国激情五月天综合网| 亚洲九九九九| 色噜噜狠狠色综合AV兰草影视| 欧美激情综合| 五月天综合久久| 能看的av网站| 久狠日av| 伊人干练久| 丁香六月婷婷综合激情欧美| 久久婷婷五月天激情四射| 99视频免费播放| 99无码视频| 久久久婷| 91精品婷婷国产综合久久| 久久538| www.色五月.com| 五月涩涩网| 九九热思思热| 色五月天天| 激情精品久久| 激情的五月婷婷蜜桃| 噜噜色天天开心| 91se在线视频| 国产精品99久久久久久猫咪| 99色久| 久久天堂精品| 亚洲蜜乳AV| www.五月婷| 丁香婷婷五月人体| 九九九九无码| 99久久高清视频| 中文字幕av网站| 91综合网| 91超级碰人人操| 婷婷五月天av小说| 一起操最新网址| 31色区视频免费看| 99久久高清视频| 五月天丁香欧美激情| 丁香久久九九99| 久久婷婷综合国产| 五月天婷婷操逼视频| 日韩综合久| 狠狠爱婷婷爱| 99九九久久| 99热这里只有精品9| 超碰在线国产| 少妇AB又爽又紧无码网站| 人妻体体内射精一区二区 | 毛片色五月| 天天日,天天射,天天舔| 人人草人| 天堂综合久久 | 中文字幕无码成人电影| 日韩在线一级| 成人五月天丁香| 亚洲日韩国产黑丝黑丝AVAV一区二区三区 | 五月天婷婷激情小说| 五月丁香激情综合六月涩涩爱| 婷婷和五月天| 激情开心五月婷婷| 台湾佬天天日丁香婷婷五月天| 丁香婷婷六月激情文学| 另类五月婷婷| 天天干天天 亚洲| 六月丁香六月婷婷欧美| 五月丁香亭亭操逼| 久久久久久久人妻| 天天色天天操天天射| 婷婷丁香五月天色色| 色碰干| 九九视频精品这里只有| 久久欧洲综合网| 97碰人人操| 婷婷激情五月| 香蕉久久五月| www.91九色| 丁香五月婷婷色五月| 天天摸色吧天天摸色吧| 五月伊人网| 成人无码精品1区2区3区免费看| 色爱综合网| 99超碰欧美| 丁香五月婷婷av| 丁香六月av| 婷婷综合精品视频97| 日韩综合天堂| 九九九九精品精| 日韩色色一区| 新99思思视频| 99热手机在线精品| 五月色网| 一起操 91N.com| 国产精产国品一二三在观看| 爆乳熟女-区二区三区| 9久精品视频| 在线成人网站| 五月停停色| 五月熟妇婷婷久久| 免费视频无码| 香蕉久久av一区二区三区| 欧美日本高清视频99| 色一区高清| 色婷婷五月天偷拍| 色五月婷婷五月天| 久久999久久999久久999久久| 婷婷久久18| 天天舔天天摸天天射| 五日激情综合| 国产精品久久久爽爽爽麻豆色哟哟| av在线婷婷| 异能之下短剧免费观看全集| 丁香激情五月少妇| 中文字幕成人| 99热费观看| 色久综合天天做视频| 亚洲天堂热| 色色丁香五月天社区| 四虎婷婷五月天| 婷婷丁香在线| 毛片九九九九九九| 婷婷伊人激情婷婷| 爱射综合| 97五月婷婷| 久婷首页| 5月丁香六月婷婷| 欧美一级色| 丁香五月日韩| 婷婷五月六月丁香| 草草色情综合网| 人妻性爱| 久久综合婷婷| 中文字幕97超级碰| 99热精品在线免费观看| 人与禽A片啪啪| 欧美激情五月天婷婷| 丁香五月日韩| 97在线/日本| 99热在线免费| 91蝌蚪窝视频在线| 888精品福利地址| 久久xxxx| 五月激情婷婷综合| 精品色色| se.久久视频在线观看| 青青草原福利在线| 婷婷色色综合| 亚洲五月天综合| 成人综合网站| site:esunnet.com| www.99视频| 婷婷五月亚洲激情| 丁香五月天色婷婷| 久操热线| 五月激情啪啪| 六月婷婷激情图片| 婷婷色九月| 最新色色五月天| 婷色五月天| 久久视频婷婷视频| 日夜操B| 丁香婷婷性爱| 久99热| 九九热a| 操碰97| 婷婷激情伍月网| 另类激情综合| 乱女乱妇熟女熟妇综合网站| 99爱在线视频| 天天艹天天色| 日本波多野结衣视频| 五月婷婷六月丁香综合| 色色色色色五月|