久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

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

三菱CNC數(shù)據(jù)采集Demo用C#實(shí)現(xiàn)全流程詳解:EZSocket通信與宏變量讀取

三菱CNC數(shù)據(jù)采集Demo用C#實(shí)現(xiàn)全流程詳解:EZSocket通信與宏變量讀取 簡(jiǎn)介C#數(shù)據(jù)采集Demo面向三菱CNC系統(tǒng)專為機(jī)床自動(dòng)化工程師、上位機(jī)開發(fā)者和工業(yè)物聯(lián)網(wǎng)從業(yè)者設(shè)計(jì)旨在解決機(jī)床實(shí)時(shí)監(jiān)控、加工參數(shù)讀取、設(shè)備狀態(tài)追蹤及故障日志獲取等工業(yè)數(shù)據(jù)采集難題。壓縮包約3.52MB內(nèi)部包含PDF格式的參考手冊(cè)和三菱CNC模擬環(huán)境SimCNC的源碼目錄參考手冊(cè)用于查詢通訊協(xié)議、寄存器地址與數(shù)據(jù)格式SimCNC則支持在無實(shí)體機(jī)床的情況下搭建仿真調(diào)試環(huán)境方便反復(fù)驗(yàn)證采集邏輯。Demo源碼演示了配合A2.exe通訊軟件與CNC建立連接通過C#實(shí)現(xiàn)對(duì)多種型號(hào)三菱機(jī)臺(tái)的數(shù)據(jù)讀取并將采集功能封裝為獨(dú)立軟件或插件可靈活接入現(xiàn)有產(chǎn)線信息化系統(tǒng)。整體代碼結(jié)構(gòu)清晰包含連接建立、數(shù)據(jù)解析、異常處理等關(guān)鍵模塊是學(xué)習(xí)工業(yè)通訊編程的良好范本。已有620人學(xué)習(xí)下載適合需要快速落地三菱CNC數(shù)采項(xiàng)目或進(jìn)行技術(shù)預(yù)研的開發(fā)者參考能顯著縮短環(huán)境搭建與排錯(cuò)時(shí)間。1. 三菱CNC數(shù)據(jù)采集Demo先想清楚要采什么別急著開VS車間里一臺(tái)三菱加工中心正在跑活操作員盯著控制面板你在辦公室電腦前想看到它主軸轉(zhuǎn)速、當(dāng)前坐標(biāo)、有沒有報(bào)警——這就是三菱CNC數(shù)據(jù)采集Demo附C#源碼這個(gè)標(biāo)題真正要解決的事。它不靠串口線不靠人抄屏而是走CNC自帶的以太網(wǎng)口用C#把宏變量、坐標(biāo)、報(bào)警號(hào)實(shí)時(shí)拉回來。反直覺的地方在于新手最想要的往往是能把數(shù)讀出來的激動(dòng)感但真正決定這活兒成不成的是動(dòng)手之前先想清楚要采哪幾個(gè)地址、用什么協(xié)議、幀怎么解析。常見做法是走三菱的EZSocket中間件DLL一引C#里P/Invoke一調(diào)十幾行代碼就能連上但參數(shù)不對(duì)時(shí)一個(gè)Open函數(shù)能卡你一下午。這個(gè)方向適合做設(shè)備聯(lián)網(wǎng)、MES對(duì)接、機(jī)加工自動(dòng)化的工程師也適合剛?cè)胄邢肽靡慌_(tái)真設(shè)備練手的同學(xué)。看完這篇文章你至少能把這套Demo跑通并且知道坑在哪。2. 準(zhǔn)備工作三菱CNC數(shù)據(jù)采集Demo的網(wǎng)絡(luò)前提與協(xié)議選型2.1 網(wǎng)口通信是前提串口方案到了Demo階段就該放棄很多老工程師的第一反應(yīng)是“CNC后面不是有RS232口嗎直接串口讀不就行了”。這個(gè)思路在二十年前沒問題但現(xiàn)在做數(shù)據(jù)采集串口的三個(gè)短板非常明顯一是傳輸速度慢115200波特率下刷新一次狀態(tài)要幾百毫秒別說做高頻采集二是好多老舊串口方案只能單向輸出想寫宏變量回機(jī)臺(tái)很難三是串口線超過15米信號(hào)就開始飄車間現(xiàn)場(chǎng)拉線很不現(xiàn)實(shí)。所以這個(gè)Demo的正確起點(diǎn)是以太網(wǎng)口。三菱的中高端系統(tǒng)比如M70、M700、M80系列標(biāo)準(zhǔn)配置里都帶以太網(wǎng)口參數(shù)里面設(shè)好IP地址、子網(wǎng)掩碼之后上位機(jī)直接用網(wǎng)線連交換機(jī)就能訪問。通信鏈路的示意圖其實(shí)很簡(jiǎn)單C#程序通過TCP協(xié)議發(fā)一個(gè)ASCII字符串命令幀給CNCCNC回一個(gè)帶數(shù)據(jù)的響應(yīng)幀程序把幀解析出來就完事了。這里有個(gè)關(guān)鍵選型點(diǎn)直接用TCP發(fā)MC協(xié)議幀雖然可行但工程上沒人這么干因?yàn)閹^、校驗(yàn)、分包都得自己拼出錯(cuò)率太高。業(yè)界通用做法是安裝三菱的EZSocket通信庫它本質(zhì)上是把MC協(xié)議封裝成了C風(fēng)格函數(shù)提供固定接口往上位機(jī)這邊暴露動(dòng)態(tài)鏈接庫C#項(xiàng)目里聲明一下就能調(diào)用。Demo階段選它省掉的是協(xié)議拼幀的麻煩留下的是數(shù)據(jù)解析的核心邏輯。2.2 訪問對(duì)象A/B/C/DDemo該用哪一個(gè)通道EZSocket里有一個(gè)概念叫“訪問對(duì)象”英文叫Access Target官方分為A、B、C、D四種。A類走的是三菱PLC的MC協(xié)議用來讀PLC軟元件B類是Windows下和PC內(nèi)部數(shù)據(jù)交換用的C類是訪問CNC數(shù)值數(shù)據(jù)的通道宏變量、坐標(biāo)、刀補(bǔ)、報(bào)警都?xì)w它管D類是訪問機(jī)床側(cè)的PLC數(shù)據(jù)比如IO信號(hào)、繼電器狀態(tài)。寫成表格更直觀訪問對(duì)象面向的數(shù)據(jù)Demo里有沒有用APLC軟元件D、M、Y等一般不用BWindows環(huán)境內(nèi)部通信不用CCNC數(shù)值數(shù)據(jù)宏變量、坐標(biāo)、報(bào)警核心通道D機(jī)床側(cè)PLC數(shù)據(jù)IO、繼電器按需C#做CNC采集絕大多數(shù)需求都集中在C類上。你在MES里看到的主軸轉(zhuǎn)速當(dāng)前X軸坐標(biāo)報(bào)警號(hào)全部通過C類讀出來。有些車間還想看機(jī)床門有沒有關(guān)、紅燈有沒有亮這些信號(hào)在D類里但那是后話Demo階段先把C類吃透。有個(gè)細(xì)節(jié)要注意EZSocket的DLL同時(shí)支持A類訪問所以如果你這臺(tái)CNC的PLC里存了工件計(jì)數(shù)之類的數(shù)據(jù)也可以用同一套代碼去讀只需要把打開連接時(shí)的訪問對(duì)象類型改一下。Demo階段不建議一上來就通吃先把C類讀通再往D類擴(kuò)展。2.3 CNC側(cè)參數(shù)核對(duì)IP、端口、系統(tǒng)版本差異連不上CNC的時(shí)候八成不是代碼的問題而是CNC側(cè)的網(wǎng)絡(luò)參數(shù)沒核對(duì)。三菱系統(tǒng)里以太網(wǎng)參數(shù)一般在維護(hù)菜單的以太網(wǎng)設(shè)定或者網(wǎng)絡(luò)設(shè)定頁面里。需要確認(rèn)四項(xiàng)參數(shù)典型值說明IP地址192.168.1.50和上位機(jī)在同一網(wǎng)段子網(wǎng)掩碼255.255.255.0不跨網(wǎng)段就夠用端口號(hào)6000不同系統(tǒng)版本可能有差異通信協(xié)議TCP打開對(duì)應(yīng)通道端口號(hào)是個(gè)血淚高發(fā)區(qū)。部分老系統(tǒng)默認(rèn)用6000部分系統(tǒng)在參數(shù)里單獨(dú)開了一個(gè)端口還有的系統(tǒng)要同時(shí)開UDP和TCP兩個(gè)通道。我一般會(huì)在CNC旁邊先用筆記本電腦ping一下IP通了再跑Demoping不通就別折騰代碼先查網(wǎng)線和IP段。還有兩個(gè)前置條件容易被忽略一是EZSocket服務(wù)器端程序要和系統(tǒng)匹配二是CNC側(cè)參數(shù)里的傳輸協(xié)議要選成允許外部設(shè)備訪問。某些系統(tǒng)出廠時(shí)默認(rèn)關(guān)閉了外部訪問需要到維護(hù)模式里打開。這些操作需要操作員權(quán)限做Demo之前最好和車間師傅打個(gè)招呼別自己偷摸改參數(shù)改完機(jī)臺(tái)報(bào)警就麻煩了。3. 核心代碼C#讀三菱CNC宏變量、坐標(biāo)與報(bào)警3.1 創(chuàng)建一個(gè)控制臺(tái)Demo把EZSocket.dll引進(jìn)來拿到三菱EZSocket安裝包之后安裝目錄下會(huì)有一個(gè)動(dòng)態(tài)鏈接庫名字一般是EZSocket.dll。C#這邊不能直接添加引用因?yàn)樗荂風(fēng)格導(dǎo)出函數(shù)不是托管DLL正確做法是用DllImport聲明外部函數(shù)。先建一個(gè)控制臺(tái)項(xiàng)目平臺(tái)目標(biāo)改成x86然后寫一個(gè)靜態(tài)類來包裝接口using System; using System.Runtime.InteropServices; public static class EZSocketWrapper { // 聲明三個(gè)核心函數(shù)打開、讀取、關(guān)閉 [DllImport(EZSocket.dll, EntryPoint EZSocket_Open)] public static extern int Open( IntPtr[, ,] pCNC, // 連接句柄三維數(shù)組 int nType, // 訪問對(duì)象類型2表示C類CNC數(shù)據(jù) int nOpen, // 通信方式1表示TCP string pIPAddr, // CN C的IP地址 string pPort, // 端口號(hào) int nTimeOut); // 超時(shí)時(shí)間毫秒 [DllImport(EZSocket.dll, EntryPoint EZSocket_Read)] public static extern int Read( IntPtr[, ,] pCNC, // 連接句柄 int nType, // 訪問對(duì)象類型 string pReadBuf, // 讀命令幀 ref string pRetBuf, // 返回?cái)?shù)據(jù)緩沖區(qū) string pErrMsg); // 錯(cuò)誤信息輸出 [DllImport(EZSocket.dll, EntryPoint EZSocket_Close)] public static extern int Close( IntPtr[, ,] pCNC, int nType); }這段聲明里最容易栽跟頭的是句柄類型。EZSocket的手冊(cè)上寫的是三維指針數(shù)組C#這邊的對(duì)應(yīng)寫法就是IntPtr的三維數(shù)組初始化時(shí)每個(gè)維度給3就夠了。nType傳2代表C類訪問nOpen傳1代表走TCP。端口參數(shù)是字符串不是整數(shù)這是很多人第一次調(diào)用時(shí)報(bào)錯(cuò)的原因。超時(shí)時(shí)間建議給3000毫秒太短在車間網(wǎng)絡(luò)抖動(dòng)時(shí)容易誤報(bào)失敗太長(zhǎng)則程序卡死在那里。注意DLL的位數(shù)必須和編譯目標(biāo)一致。EZSocket.dll在多數(shù)版本里是32位的所以項(xiàng)目平臺(tái)目標(biāo)一定要選x86否則運(yùn)行到Open那行就拋BadImageFormatException這個(gè)在第5章避坑里展開。3.2 連接到CNCOpen和Close的寫法連接這塊的套路是固定的先創(chuàng)建句柄數(shù)組調(diào)Open判斷返回值用完調(diào)Close。下面是完整的最小連接代碼static void Main(string[] args) { // 連接句柄三維數(shù)組結(jié)構(gòu) IntPtr[,,] pCNC new IntPtr[3, 3, 3]; // 打開C類訪問TCP方式連192.168.1.50的6000端口 int ret EZSocketWrapper.Open( pCNC, 2, 1, 192.168.1.50, 6000, 3000); if (ret 0) { Console.WriteLine(連接成功); // 在這里執(zhí)行讀取操作 // ... EZSocketWrapper.Close(pCNC, 2); } else { Console.WriteLine(連接失敗錯(cuò)誤碼 ret); } }返回值ret為0表示成功非0為失敗。這一步很多人第一次跑通后會(huì)特別興奮但別高興太早——連接成功只代表TCP鏈路通了真正讀數(shù)據(jù)時(shí)的幀格式錯(cuò)一丁點(diǎn)Read照樣返回失敗。另外Close操作不能省有的現(xiàn)場(chǎng)出現(xiàn)過程序崩潰后CNC側(cè)連接資源沒釋放導(dǎo)致后續(xù)無法再次連接的情況雖然重啟機(jī)臺(tái)能恢復(fù)但車間里重啟設(shè)備你可得等操作員排完當(dāng)前工件。3.3 讀宏變量#100的實(shí)時(shí)值怎么取回來三菱系統(tǒng)的宏變量是機(jī)臺(tái)邏輯里最常用的數(shù)據(jù)區(qū)比如把當(dāng)前工件計(jì)數(shù)寫到#100把主軸倍率寫到#101MES要的就是這些。讀取宏變量用到EZSocket_Read命令幀格式我一般按R地址長(zhǎng)度來拼static void ReadMacro(IntPtr[,,] pCNC, int macroNum, out float value) { // 拼讀命令幀讀#100就填 R0,100,1 string cmd R0, macroNum ,1; string retBuf ; string errMsg ; int ret EZSocketWrapper.Read(pCNC, 2, cmd, ref retBuf, ref errMsg); if (ret 0) { // 返回?cái)?shù)據(jù)從第6個(gè)字符開始是有效數(shù)據(jù)區(qū) string hexData retBuf.Substring(5); // 三菱返回的是倒序十六進(jìn)制字符串要反轉(zhuǎn)字節(jié)再轉(zhuǎn)float byte[] bytes HexToBytes(hexData); Array.Reverse(bytes); value BitConverter.ToSingle(bytes, 0); Console.WriteLine(# macroNum value); } else { Console.WriteLine(讀取失敗 errMsg); value 0f; } } static byte[] HexToBytes(string hex) { int length hex.Length / 2; byte[] result new byte[length]; for (int i 0; i length; i) result[i] Convert.ToByte(hex.Substring(i * 2, 2), 16); return result; }這里有個(gè)工藝問題CNC讀回來的數(shù)據(jù)是十六進(jìn)制字符串而且是倒序字節(jié)序。比如浮點(diǎn)數(shù)1.5在內(nèi)存里是3F C0 00 00三菱回包里往往是0000C03F必須反轉(zhuǎn)之后用BitConverter轉(zhuǎn)float。這個(gè)字節(jié)序坑每一臺(tái)新機(jī)型都得試一次建議把轉(zhuǎn)出來的值和面板上顯示的值對(duì)一下對(duì)不上就交換一下高低字節(jié)順序。宏變量號(hào)本身也有講究公共變量#100到#149一般默認(rèn)為空變量區(qū)可以隨便用#150到#199在某些系統(tǒng)里是模擬輸入通道數(shù)據(jù)#500到#999是保持型變量斷電不丟。讀#500之前先確認(rèn)一下機(jī)床廠有沒有把這部分區(qū)域分配給專屬功能避免讀到無意義數(shù)據(jù)還當(dāng)成寶貝存進(jìn)數(shù)據(jù)庫。3.4 讀坐標(biāo)和報(bào)警把機(jī)臺(tái)狀態(tài)拼出來宏變量能解決數(shù)據(jù)交換但MES上層更關(guān)心的是坐標(biāo)和報(bào)警。讀取絕對(duì)坐標(biāo)和報(bào)警號(hào)用到的命令幀前綴分別是E和A下面是讀絕對(duì)坐標(biāo)和報(bào)警的核心片段static void ReadPositionAndAlarm(IntPtr[,,] pCNC) { string posBuf ; string almBuf ; string errMsg ; // 讀絕對(duì)坐標(biāo) int posRet EZSocketWrapper.Read(pCNC, 2, E, ref posBuf, ref errMsg); if (posRet 0 posBuf.Length 61) { // 第1~3位是附加信息每個(gè)坐標(biāo)占6個(gè)字節(jié) string xHex posBuf.Substring(6, 12); string yHex posBuf.Substring(18, 12); string zHex posBuf.Substring(30, 12); // 轉(zhuǎn)字節(jié)再反轉(zhuǎn)再轉(zhuǎn)float邏輯同上 float x ConvertHexToFloat(xHex); float y ConvertHexToFloat(yHex); float z ConvertHexToFloat(zHex); Console.WriteLine($X:{x:F3} Y:{y:F3} Z:{z:F3}); } // 讀報(bào)警號(hào) int almRet EZSocketWrapper.Read(pCNC, 2, A, ref almBuf, ref errMsg); if (almRet 0 almBuf.Length 9) { // 報(bào)警號(hào)也是倒序轉(zhuǎn)int string alarmHex almBuf.Substring(5, 4); byte[] bytes HexToBytes(alarmHex); Array.Reverse(bytes); int alarmCode BitConverter.ToInt16(bytes, 0); if (alarmCode ! 0) Console.WriteLine(當(dāng)前報(bào)警號(hào) alarmCode); else Console.WriteLine(無報(bào)警); } }坐標(biāo)讀取返回的幀長(zhǎng)度是固定的每個(gè)軸占6個(gè)字節(jié)十六進(jìn)制排列順序是X、Y、Z有些系統(tǒng)還帶A軸、B軸長(zhǎng)度就不一樣解析前先判斷返回幀長(zhǎng)度能省不少麻煩。報(bào)警讀取時(shí)要注意報(bào)警碼按有符號(hào)短整型解析負(fù)號(hào)代表報(bào)警級(jí)別。讀報(bào)警還分NC報(bào)警和機(jī)床報(bào)警A命令返回的是系統(tǒng)報(bào)警機(jī)床報(bào)警走D類訪問做Demo時(shí)別把兩者混在一起。一個(gè)實(shí)用技巧是把坐標(biāo)和宏變量的讀取放在同一個(gè)循環(huán)里每隔200到500毫秒刷一次屏。刷新太快沒必要太慢又看不出實(shí)時(shí)效果車間里大部分采集需求到500毫秒級(jí)別的刷新率已經(jīng)足夠。4. 參數(shù)與內(nèi)存映射宏變量、公共變量和回復(fù)幀的邊界4.1 三菱宏變量的分區(qū)公共變量、保持型變量和刀補(bǔ)拿到一套Demo代碼之后最先要問的問題是我該讀哪些地址。三菱CNC的宏變量地址分布有規(guī)律可循但不同系統(tǒng)之間有一點(diǎn)差異常用分區(qū)是這樣的變量號(hào)范圍類型Demo應(yīng)用場(chǎng)景#100 ~ #149空公共變量跨程序傳遞數(shù)據(jù)#150 ~ #199部分系統(tǒng)為模擬量輸入讀主軸電流等模擬量#500 ~ #999保持型變量工件計(jì)數(shù)、生產(chǎn)統(tǒng)計(jì)#2000 ~ #2199刀補(bǔ)變量部分系統(tǒng)刀具磨損管理#3000 ~ #3999系統(tǒng)設(shè)定相關(guān)一般不碰Demo階段建議優(yōu)先讀#100區(qū)間和#500區(qū)間。#100區(qū)間斷電會(huì)清零適合讀當(dāng)班產(chǎn)量這類臨時(shí)數(shù)據(jù)#500區(qū)間是斷電保持的適合存班長(zhǎng)累計(jì)數(shù)。很多工廠的做法是讓PLC在換班時(shí)把#500里的值搬運(yùn)到另一個(gè)地址上位機(jī)只負(fù)責(zé)讀不負(fù)責(zé)寫。刀補(bǔ)的地址范圍需要重點(diǎn)提示不同系統(tǒng)版本對(duì)#2000系列的映射并不一致有的系統(tǒng)里#2001對(duì)應(yīng)1號(hào)刀的X向刀補(bǔ)有的系統(tǒng)里卻跳過了部分保留段。讀取刀補(bǔ)之前找操作員確認(rèn)一下機(jī)床廠的宏變量分配表或者干脆用機(jī)臺(tái)面板手動(dòng)改一個(gè)已知值再讀出來驗(yàn)證——這是最樸素的測(cè)試方法。4.2 回復(fù)幀的字節(jié)對(duì)齊和大小端坑EZSocket返回的數(shù)據(jù)區(qū)是十六進(jìn)制字符串規(guī)則是所有數(shù)據(jù)都按字倒序。這里說的字倒序不是字節(jié)倒序而是兩個(gè)字節(jié)一組顛倒。舉例說明數(shù)據(jù)區(qū)里如果收到3412實(shí)際值應(yīng)該是0x1234。浮點(diǎn)數(shù)則四個(gè)字節(jié)整體反轉(zhuǎn)前面代碼里用了Array.Reverse其實(shí)就是把大小端問題用最簡(jiǎn)單的方式抹平了。解析時(shí)的另一層坑在于命令幀和數(shù)據(jù)幀之間可能帶空格或控制符。不同版本EZSocket返回的幀長(zhǎng)度有細(xì)微差異有的帶起始符有的不帶。我建議在寫解析邏輯之前先做一步打印裸包操作// 調(diào)試用把Read返回的原始幀原樣打印出來 Console.WriteLine(RAW:[ retBuf ] len retBuf.Length);把這行加到Demo里跑一次對(duì)照三菱手冊(cè)里的幀結(jié)構(gòu)看一遍再寫Substring的截取邏輯比對(duì)著網(wǎng)上抄解析代碼靠譜得多。不同系統(tǒng)的返回幀長(zhǎng)度不一樣在M70上試好的偏移量拿到M80上可能就得加一位。還有一個(gè)小提醒全部用Substring截取十六進(jìn)制字符串看起來簡(jiǎn)單但在解析多個(gè)軸坐標(biāo)時(shí)容易數(shù)錯(cuò)位數(shù)。碰到解析結(jié)果數(shù)值怪異的情況先數(shù)一下每個(gè)字符的下標(biāo)用調(diào)試器逐幀看不要靠猜。4.3 采集頻率與系統(tǒng)負(fù)荷別把Demo寫成死循環(huán)數(shù)據(jù)采集最常見的失控寫法是while(true)里不加延時(shí)CPU占滿不說CNC側(cè)的EZSocket服務(wù)也會(huì)被高頻請(qǐng)求拖累。三菱官方對(duì)采集頻率沒有硬性指標(biāo)但業(yè)界經(jīng)驗(yàn)是狀態(tài)數(shù)據(jù)坐標(biāo)、轉(zhuǎn)速500毫秒刷一次報(bào)警數(shù)據(jù)可以做到200毫秒甚至事件觸發(fā)產(chǎn)量數(shù)據(jù)按分鐘或按工件觸發(fā)即可。一個(gè)推薦的安全采集框架是這樣的// 用定時(shí)器代替死循環(huán)避免阻塞UI線程 System.Timers.Timer timer new System.Timers.Timer(); timer.Interval 500; // 500毫秒刷一次 timer.Elapsed (sender, e) { ReadPositionAndAlarm(pCNC); ReadMacro(pCNC, 100, out float count); }; timer.Start();注意這里有個(gè)隱患Timer觸發(fā)的事件如果在上一輪讀取還沒結(jié)束時(shí)又進(jìn)來就會(huì)導(dǎo)致消息堆積。保險(xiǎn)做法是加一個(gè)bool鎖標(biāo)志讀取中則跳過本次觸發(fā)。Demo階段可以不考慮并發(fā)但往生產(chǎn)走這一步是必須的。另外不要同一時(shí)間開多個(gè)線程去調(diào)EZSocket_ReadDLL內(nèi)部不是線程安全的。多個(gè)采集線程同時(shí)調(diào)用同一個(gè)連接句柄輕則返回?cái)?shù)據(jù)錯(cuò)亂重則直接讓連接斷掉。需要采集多組數(shù)據(jù)時(shí)串行讀別并行讀。5. 三菱CNC采集Demo的常見踩坑現(xiàn)象、原因與解決5.1 Open返回失敗但Ping得通CNC現(xiàn)象上位機(jī)能ping通CNC的IP但EZSocket_Open返回非0讀取完全無法進(jìn)行。原因TCP鏈路通不代表CNC側(cè)的EZSocket服務(wù)在監(jiān)聽。最常見的情況有三種CNC系統(tǒng)參數(shù)里沒打開外部訪問權(quán)限端口號(hào)和實(shí)際監(jiān)聽端口不一致訪問對(duì)象類型選錯(cuò)了類型比如C類通道沒開但A類通道是好的。解決登錄CNC維護(hù)畫面檢查以太網(wǎng)設(shè)定里的端口和訪問許可。先把訪問對(duì)象類型換成A類試一次如果能連上說明C類通道沒開如果A類也連不上檢查端口號(hào)。還有一招是看防火墻Windows自帶的防火墻經(jīng)常攔截TCP入站連接臨時(shí)關(guān)掉再測(cè)一下就能定位。5.2 調(diào)用DLL時(shí)拋BadImageFormatException現(xiàn)象代碼編譯通過一運(yùn)行到Open函數(shù)就拋出BadImageFormatException異常信息里通常寫著32位還是64位不匹配。原因EZSocket.dll是32位動(dòng)態(tài)庫而Visual Studio里新建的.NET項(xiàng)目默認(rèn)平臺(tái)目標(biāo)是AnyCPU在64位系統(tǒng)上運(yùn)行時(shí)會(huì)用64位進(jìn)程加載32位DLL直接崩。解決打開項(xiàng)目屬性找到生成選項(xiàng)卡把平臺(tái)目標(biāo)改成x86。改完重新生成問題消失。這個(gè)坑幾乎每個(gè)第一次接觸EZSocket的C#開發(fā)者都會(huì)遇到網(wǎng)上搜相關(guān)報(bào)錯(cuò)一搜一大片但知道原理之后十秒鐘就能解決。5.3 讀到的宏變量是全零或者NaN現(xiàn)象Read調(diào)用返回成功但解析出的變量值要么全是0要么是NaN。原因三菱宏變量分為數(shù)值型和邏輯型而數(shù)值型里又有整型和浮點(diǎn)型之分。系統(tǒng)默認(rèn)按雙字節(jié)整數(shù)返回時(shí)你用float解析就會(huì)得到詭異值。另外宏變量所在的地址區(qū)間可能根本沒被寫入有效數(shù)據(jù)空變量區(qū)讀出0是正?,F(xiàn)象。解決先在CNC面板上手動(dòng)給#100賦一個(gè)已知值比如12.34然后跑Demo讀一次。讀到12.34說明解析邏輯正確讀到0說明地址區(qū)間為空換個(gè)變量號(hào)測(cè)試讀到一堆亂碼說明數(shù)據(jù)類型解析錯(cuò)了——嘗試把BitConverter.ToSingle換成ToInt16或者反過來。用已知值校準(zhǔn)是排查這類問題最有效的手段。5.4 程序跑一會(huì)兒后連接自己斷開現(xiàn)象Demo運(yùn)行幾分鐘后Read開始返回錯(cuò)誤重試也無效只有重啟程序才能恢復(fù)連接。原因EZSocket服務(wù)端對(duì)空閑連接有超時(shí)回收機(jī)制超時(shí)時(shí)間從幾秒到幾分鐘不等。程序長(zhǎng)時(shí)間不發(fā)命令服務(wù)端主動(dòng)斷開連接。還有一種情況是網(wǎng)絡(luò)里有廣播風(fēng)暴TCP連接被干擾。解決在采集循環(huán)里加入周期重連機(jī)制。常見做法是每次Read失敗時(shí)自動(dòng)執(zhí)行一次重連先Close再Open。更溫和的做法是縮短Timer間隔把心跳維持在一秒一次以內(nèi)避免空閑超時(shí)。注意重連時(shí)要釋放舊句柄否則句柄會(huì)越積越多最終系統(tǒng)資源耗盡只能重啟。另外排查一下網(wǎng)絡(luò)里有沒有人在跑大流量傳輸車間里的監(jiān)控系統(tǒng)回傳視頻有時(shí)會(huì)占滿交換機(jī)帶寬把CNC和上位機(jī)挪到同一個(gè)交換機(jī)下或者劃分獨(dú)立VLAN能有效緩解。5.5 報(bào)警號(hào)讀出來和面板顯示不一致現(xiàn)象報(bào)警命令讀出的編號(hào)和機(jī)臺(tái)面板上顯示的報(bào)警號(hào)對(duì)不上有的差個(gè)幾千有的完全不在一個(gè)數(shù)量級(jí)。原因報(bào)警命令讀出的是內(nèi)部報(bào)警指針不等于面板顯示的報(bào)警號(hào)。面板顯示的是格式化后的報(bào)警文本內(nèi)部編號(hào)需要對(duì)照?qǐng)?bào)警表映射。另外一個(gè)常見干擾是機(jī)床廠在標(biāo)準(zhǔn)系統(tǒng)上疊加了自己的PMC報(bào)警這些報(bào)警由D類訪問對(duì)象負(fù)責(zé)C類讀不到。解決先確認(rèn)讀的是NC報(bào)警還是PMC報(bào)警。NC報(bào)警用A命令讀內(nèi)部編號(hào)再查系統(tǒng)報(bào)警表映射成面板報(bào)警號(hào)PMC報(bào)警要切換到D類訪問對(duì)象讀取。Demo階段建議直接在CNC上觸發(fā)一個(gè)已知報(bào)警比如急?;蛘唛T開關(guān)然后對(duì)比讀回來的編號(hào)和面板值把對(duì)應(yīng)關(guān)系記錄下來寫進(jìn)配置表里。這個(gè)工作看起來笨但做完以后對(duì)接MES報(bào)警模塊就順暢多了。6. 讓Demo往生產(chǎn)方向走數(shù)據(jù)落庫、心跳重連與MES橋接Demo跑通了接下來要做的三件事決定了它在生產(chǎn)環(huán)境里能不能站住腳數(shù)據(jù)落庫、斷線自動(dòng)重連、給上層系統(tǒng)留接口。數(shù)據(jù)落庫最省事的方案是SQLite不需要額外裝數(shù)據(jù)庫服務(wù)一個(gè)文件搞定。把每次讀到的坐標(biāo)、宏變量、報(bào)警號(hào)連同時(shí)間戳寫進(jìn)一張表里粒度控制在秒級(jí)就夠保留最近90天數(shù)據(jù)。注意寫入操作要和采集操作解耦采集線程只負(fù)責(zé)讀寫庫交給獨(dú)立線程或后臺(tái)任務(wù)避免磁盤慢的時(shí)候拖垮采集循環(huán)。斷線自動(dòng)重連是生產(chǎn)環(huán)境剛需。做法是把Open、Read、Close封裝成一個(gè)類內(nèi)部記錄連接狀態(tài)每次Read失敗時(shí)觸發(fā)重連重連次數(shù)達(dá)到上限后向上拋出異常由上層決定是告警還繼續(xù)重試。關(guān)鍵細(xì)節(jié)是重連之前必須Close舊句柄很多重連幾次之后徹底連不上的問題都出在句柄泄漏上。給MES橋接的方式有兩種簡(jiǎn)單一點(diǎn)是Demo里直接提供HTTP接口MES通過網(wǎng)頁接口拉數(shù)據(jù)更穩(wěn)妥的是把采集到的數(shù)據(jù)推給消息隊(duì)列由消費(fèi)端去落庫和展示。Demo階段不用做太復(fù)雜把采集類寫干凈數(shù)據(jù)格式定義成統(tǒng)一的JSON結(jié)構(gòu)后續(xù)擴(kuò)展就順理成章。最后說一個(gè)我在車間里淌過的教訓(xùn)有一回為了趕進(jìn)度我把采集循環(huán)直接寫進(jìn)窗體Timer里刷新間隔壓到50毫秒結(jié)果一臺(tái)老款系統(tǒng)被高頻請(qǐng)求打到以太網(wǎng)模塊卡死操作員停機(jī)重啟才恢復(fù)。后來我養(yǎng)成了兩個(gè)習(xí)慣任何采集代碼先量化頻率再上線任何外掛程序都加總開關(guān)和限速。做設(shè)備采集慢一點(diǎn)不會(huì)出事快過頭一定出事。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
99999无码| 日本一级特级毛片视频| 男人的天堂亚洲| 人人操人人插人www| 国产97/欧美| 91久久堂| 日本女厕偷拍| 久神马| 91亚洲精品青草| 91精品啪在线观看国产城中村| 久久女人| 久久久久亚洲| 激情天天视频| 国产无马在线| 日本1区2区不卡视频| 亚洲综合色图欧美| 岛国999| 五月久久HDAV| 亚洲AV小说| 国产综合操逼高清| 久久久九九网站| 国产色精品午夜大片| 操国产逼| 亚洲国产婷婷在线播放| 亚洲第一精品在线视频| 国产精品免费1区2区视频| 日夜精品| 2017av无码免费无线播| 综合亚洲欧美精品日韩?v| 97亚洲在线| yazhououmeizongya| 婷婷美人网| 亚洲妇色| 99在线啪| 熟女久久| 97超碰久久| 九九九免费视频| 国产综合久久久麻桃个| 亚洲午夜精品久久久中文影院| 99re免费视频精品全部| 区一二区日韩亚洲乱码av电影| 六月丁香五月婷婷| 男人亚洲91首页在线| 激情丁香五月婷婷| 你操综合| 伊人精品视频| 青青草中日韩在线| 深喉吞精| 国产色图乱伦| 成人精品久久久午夜福利| 操操吧亚洲乱伦视频| 秋霞一级A片黄色视频| 久久透逼视频| 小少妇| 欧美亚洲激情小说| 欧美在线综合| 日本韩高清无砖码22o| 91日韩| 欧美牲| 免费日韩黄片| A片三级无码| 久草五月| 欧美影音在线| 欧美激情综合| 四虎影视永久在线免费| 免费啪啪啪网站18岁| 99精彩视频| 午夜福利久久久噜久噜久久综合| 99re99视频在线免费观看| 人妻无码一区二区三区久久99| 欧美97av| 综合 欧美 亚洲 日本| 近亲乱伦一区二区| 伊人97色天使| 男人的天堂com| 欧美男人天堂| 色99在线| 久久精品国产97欧美精品亚洲| 三级色影综合网| 91免费看一区二区三区 | 日韩av电影成人在线| 日本 欧美 国产一区| 久久婷婷色综合一区二区三区| 91在线色| 国产精品嫩草影院午夜两性| 六月丁香婷| 91成人国产综合久久精品蜜月| 日本性一区| 91中文字幕| 无码人妻丰满热妇又大又粗| 99这里只有精品| 中文久久久| 一区二区三区 日韩欧美| 欧美成人9797| 一区二区三区麻豆| 最新啪啪视频| 久久久涩| h在线看免费版在线看| 亚洲熟女一区| 婷婷丁香九月| 精品美女久久一二三| 亚洲色图 欧美| 久99热| 97精品综合久久网| 黄视频免费| 亚洲日产专区| 午夜操一操| 激情五月丁香五月| 98超碰欧美| 亚洲精品日韩国产欧美| 色五月激情AV在线| 性色生活片久久毛片婬片免费放女人一级毛片| 男人天堂.AB| 日韩人妻无码不卡网站| 日本亚洲熟女视频| 限制级中的三级片中的黑粗大屌屌日人妻熟女| 国产超碰人人爽人人做| 精品妇操一区二区三区| 最近2019中文字幕国语免费版| 亚洲情色1区| 91熟女视频| 美女露胸露尿口| 亚洲美女av无码| 1024亚洲中文字幕久在线看片你懂的| 精品蜜乳AV免费观看| 色婷婷亚洲婷婷| 91天天美女| 天天躁日日躁XXXXYY| 中字一区| 自偷自拍的亚洲视频| 丝袜加勒比| 伊人婷婷五月天| 久久久999国产精品| 六月婷婷激情| 91人妻人人澡人人爽人人精品| 丰满少妇一区二区三区专区| 日本东京热久久久电影| 色情亚洲日本成人| 亚洲四虎熟女精品| 国产精品96久久久久久| 三级片大波波| 国内精品不卡无毒99999| 天天做天天爱| 国产美女激情| 五月丁香色色网| 69一区二区三区| 人妻天天爽夜夜爽爽| 2018天天日天天日| 欧美激色| 男人的天堂在线有码| 精品人妻免费观看| 婷婷丁香人妻 | 98色网| 天天色黄色影院天天操| 超碰久草| 屌妞视频久久久久久久久久久久| 无码聚合| 成人性爱视频在线看| 午夜福利合集| 性色av一区二区| 日韩午夜啪啪视频| 亚洲国产成人精品999| 五月天精品| 红桃视频高潮| 五月丁香六月婷| 日本熟女免费視颖| 日少妇视频| 亚洲青青草| 男人天堂.AB| 特级毛片特黄久久免费看 | 91丝袜美女| h无码动漫在线观看| 国产精品在线免费| 少妇久久久免费| 调教熟妇 久久久久久| 亚欧高清| 搡老女人老91二区| 激情文学小说一区二区| 99爱爱| 欧美欲色| 男人的天堂在线有码| 国产色呦呦| 国产日韩区| 中文字幕熟女人妻丝袜| 人人妻人人爽| 国产精品白丝AV| 美女91在线观看| 亚洲性综合9| 五月丁香社区婷婷日韩欧美精品影院| 18禁的网站在线| 欧美精品三级黄片| 校园春色五月天| 人人操人人精品影片| 日韩性爱小视频| 久久久9 9 9精品| 啊啊啊在线观看免费视频| 九九亚洲| 大香蕉碰碰| 色婷婷影院| 国产尤物AV尤物在线观看不卡| 少妇久久久久久| 国产精品另类一区大香蕉| 欲香欲色天天天综合和网| 欧美第一页性| 国产精品色哟哟| 91色综合激情| 亚洲素人综合| 成人九九| 78精品| 超碰色图| 26uuu久久| 91精品微拍福利| 成人免费毛片| 久久精品毛片免费不卡| 日本五十路熟女一区二区| 夜夜影视四色| 亚洲AV无码成人精品久久| AV免费在线播放一区| 国产日韩欧美中文在线播放| aⅴ日韩成人电影av在线免费看av大全 | 一级AV性爱| 少妇厨房愉情理伦片bd在线观看| 操啊国产| 国产成人无码啪| 国模不卡| 亚州精人品大香蕉| 中文字幕亚洲欧美在线不卡| 青青草在线视频欧美| 大香网伊人久久综合网eew| 久久久久久91香蕉国产| 骚日日av| 91视频伊人| 少妇高潮对白在线观看| 亚洲精品久久久久久久蜜桃臀| 五月丁香激情综合网| 麻豆人妻精品一区二区| 国产污视频麻豆传媒一区二区| 欧天美中出| 久久久九九| 国产精品网址| 国产熟女乱论| 中亚av| 超碰97最新人妻| 人妻天天爽夜夜爽2| 草B在线| 97日韩| 免费精品中文字幕| 翘臀vidoes| 亚洲自拍一区夜夜操| 人人澡人人澡人人| 中文字幕乱码人妻二区三区| 无码少妇精品一区二区60岁老人| 久久国产99精品72福利| 啊啊啊在线看| 人人操人人摸人人看人人插| 狠狠爱综合网| av线电影| 四虎国产精品永久在线囯在线| 93人人操人人| 超碰97资源中文字幕| 人妻色情天天操| 超碰免费人妻人人| 丝袜 亚洲 偷拍| 东北女人操比视频| 久久久久亚洲熟妇熟女| 国产精品色色| 日本不卡在线二区三区| 动漫爆乳3D奶水一区在线观看| 久久一二区四| 日韩性爱小视频| 五月婷婷基地| 999熟女精品| a级免费在线观看| 曰韩av中文字幕专区| 久久綜合很很很| 九九九九九精品| 欧美黄色片AAAAA| 伊人网在线视频| 亚洲无码com| 婷婷综合视频| 97超碰欧美中文字幕| 一区二区三区欧美激情| 狠狠干妹子| 精品国产人成在线| 日本熟妇自慰性高潮一区二区三区| 国产欧美在线观看免费观看| 亚洲,欧美,春色,另类| 色婷婷A V一二三四区麻豆综合| 综合久久久久久久综合网| 99re3这里只有精品| 国产精品久久久久久久久久久久久久吹 | 中文字幕欧美日本乱码一线二线| 亚洲色系另类精品国产| 操一区| 国产女人高潮嗷嗷嗷叫小说 | 日本孕妇一区二区视频操逼免费看| 麻豆国产尤物AV| 啊啊啊水好多| 久久免费老司机精品| 热热色91| 欧美97日韩精品| 国产Av超碰| 目产99999久久999| 国模艳艳啪啪一区| 深夜激情 | 91丰满| 长长久久曰曰夜夜成人网| 亚洲熟女诱惑| 热久久精品| 999久久久免费精品国产牛牛| 99re这里只有精品中心播放 | 色女99一级片在线观看| 八戒无码国产午夜福利| 粉嫩av一区二区三区四季| 国产强奸超碰AV| 四虎免费在线播放| 天天日日舔舔| 无码最新| 久久精品超碰| 狠狠操一区二区| 亚洲欧洲精品视频发布| 中国和日本人色哪个不下载能放| 国产伦精品一区二区三区视频女| 中文AV制服乱伦| 男人 天堂 日 亚洲| 亚洲第一黄色av网站 | 免费黄色片子| 免费1级a做爰片观看| 亚洲天堂电影网| 婷婷五月天成人| 操屄日韩| 91欧| 欧美性生活内射| 亚洲一区日韩| 999精品国产高清一区二区| 色香欲天天天天综合色| 欧美另类色图片| 91午夜无码| 国产午夜精品一区二区三区牛牛| 成人网欧美风情| 亚洲日韩成人性爱视频| 久久久久九九九九| 国产精品动态一区二区三区四四| 91xingse| 日韩av一级黄片| 久热一区二区| 综合熟妇一区二区三区| 精彩久久中文| 伊人国产视频| 国产传媒1234区| 天天爽天天操| 亚洲高清无码免费观看视频| 九九精品99| 97视频免费| 亚洲日韩久久精品一区| 欧美三级一级| 五月天色图影视| 亚洲区限制级| 色999人与兽| 女人高潮抽搐喷水视频网站| 日操粉逼逼| Sekablack无码一区| 中文久久久| 97超碰影音| 亚州男人的天堂| 亚洲另类久操网| 99热在线观看| 女优视频第10页| 强奸乱伦αv片| 日韩高清黄片| 尤物网址| 亚洲精品aa久久伊人| 岛国1区2区3区在线观看| 97天天| 欧美草草高清日韩视频| 久啪视频| 伊人性在线视频| 91视频综合在线| 亚洲色图欧美色图制服诱惑| 亚洲鸥美色图| 国产精品久久久久久久久久二区三区| 精品无码人妻一区二区免费蜜桃| 99re在线观看| 欧美韩日精品资源| 欧美日韩另类字幕中文| 后入日本1234| 亚洲精品黄码久久久久| 玖玖久久久| 国产精品国产精品国产| 天天射夜夜操| 中文字幕久久婷婷丁香五月天| 色妇综合网| 成人精品无码| 高潮的A片激情扒开一区| 1000部熟女视频在线观看| 国产激情视频一区区三区| 91欧美大片| 亚洲精品一区二区精华| 911av网站免费观看| 亚洲成人久久一区二区| 丁香六月婷婷久久综合| 好淫网一二三视区| 中文字幕超碰CAO| 天操天操夜操夜月月年年操操| 超碰欧美97资源| 清纯唯美第一页| 国产91福利小视频在线观看| 懂色天天爱天天日天天射天天澡| 91精品黄在线观看| 欧美v日韩欧亚洲电影天堂色诱,国产传媒| 高清不卡一二三区视频......| 2025亚洲男人天堂| 尤物视频偷拍免费| 91天堂网| 欧美1区二区三区公司| 国产精品蜜乳AV| 成人影 天天操 亚洲| 一直超碰| 午夜精品久久久久久久男人的天堂| 亚洲色色色| 国产欧美一区二区| 后入式999| 青娱乐国产剧情av一区| 在线强奷到舒服的无码视频| 天美传媒国产原创中文字幕亚洲欧美另类| 亚洲色图加勒比| 怡红院亚洲怡春院av| 免费成人自拍视频在线| 国产美女高潮叫床视频| 色91综合网| 久久久91福利姬| 亚洲一区二区三区四区视频| 91在线限制级| 精品人妻高清麻豆av| 蜜乳成人AV| 亚洲AV成人无码一区二区三区在线观看 | 国产成人精品必看| 91色综| 国产自啪精品视频网站黑丝| 亚洲婷婷丁香在线| 婷婷午夜| 加勒比无码毛片| 欧美日韩大黄片| 亚洲日产专区| 情色大香蕉| 色五天伊人| 蜜臀av中字字幕网站| 蜜臀在线网站| 艹少妇网站| 白丝少妇一区二区| 日本操逼视频不卡直接放| 99只有精品| 一级免费精品| 风流老熟女一区二区三区l| 欧美人妻二区三区| 国产亚洲色婷婷久久99精品91 - 百度| 亚洲无线码一区国产欧美国| 亚洲综合九| 亚洲性爱成人| 久久久中文版| 被男人添B超爽视频| 后入内射蜜桃臀| 91亚洲欧洲| 99色色网| 亚洲欧洲激情卡通另类文学四射小说网站| 久热大香蕉| 五月天AV资源| 操一区| 97伦综合| 熟女精品一区二区三区| 91爱网| 欧苏综合色综合| 综合 亚洲 欧美| 懂色AV一区二区三区| 三四中文字幕| 7月婷婷综合| 高清有码一区二区| 国产中文福利| 岛国在线一区二区三区| 蜜桃臀久久| 亚洲天堂99| 欧美日韩久久精品爱爱| 九九久久一区二区三区| 一级婬片120分钟试看| 91在线色| 欧美自拍偷拍免费观看| 久久久久久久9999| 国产无遮挡| 日韩国产欧美伦理在线| 国产97综合| 久久女人一区二区三区| 国产一级内射无挡观看| 国产精品毛片| 亚洲精品97在线| 人人操我人人干| 中文字幕伊人| 天天影视综合网欧美精品| 呦呦影院| 一区二区三区四区在线不卡| 亚洲五月丁香花狠狠干一区二区三区 | 欧美强奸一区二区诱惑| 亚洲 日本 不卡| 78综合网| 夜夜影视四色| 亚洲黑人在线| 18禁久极品美女久久哦哟呀!| 一区二区三区精品视频| 国产品精品自在在线午夜免费| 天天干天天中出av| av中文在线| 桃花色综合影院| 97操碰| 中文字幕88av在线| 六月丁香网| 国产欧美精选自拍一区| 青草精品视频日本久久久久网站在线| 中文字幕超碰CAO| 久久香蕉网| 99国产精品视频尤物| 老熟女综合| 亚洲欧美在线综合| 亚洲、日韩、综合、另类| 色青青久久影视| 91人精品妻入口| 午夜视频久久久| 欧美久久婷婷| 好淫网一二三视区| 99久久综合网| aaaa少妇高潮大片| 啪啪啪东京| 老妇女91| 麻豆熟妇乱妇熟色A片在线看| 亚洲欧洲色情高清| 九九久久一区二区三区| 久久久久13| 超碰99在线观看| 日韩不卡毛片Av免费高清| A一区片| 亚洲图片欧美色图| 中文字幕乱亚洲美女精品一区| 操91| 9 9无尺码天堂网| 乱码熟妇人妻久久久| 天天欧美色| www.婷婷| 91neishe| 91男女啊啊啊| 中文字幕一区 二区三四五 区日 日骚| 人人摸人人叼| 蜜桃av综合网发布| 999岛国大片| 无码抄逼网| 国产三级日产三级韩国三级 | 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 人人干黄色| 韩日色费| 最新av网站在线观看| 五月天婷婷在线看 | 91挑色欧美| 欧美色天堂网在线视频| 日韩午夜国产| 98福利在线视频| 内射黑丝袜| 免看60秒涩涩视频| 黄页网站成人免费| 亚洲 在线| 91日韩| 蜜乳成人AV| 国产精品呦一区二区三区| 91人妻中文| 久久欧洲| 狠狠躁日日躁夜夜躁A| 加勒比伊人影院| 国产中午字一暮区| 久久黄人人爽视频| 五月天我淫我色av| 国产免费操逼| 伊人久久88国产女| 亚洲91色在线| 久久精品91| 色淫网站优优视频| 思思热在线视频在线| 无码区蜜乳| 92午夜免费福利视频| 婷婷亚洲色| AND人妻系列| 欧美 亚洲 综合 制服 另类| julia国产在线 | 多毛小伙内射老太婆| 亚洲精品亚洲人成在线麻豆| 97超级久久强资源| 欧亚日韩综合精品国产| 夜夜欢天天干| 国产东北女人在线视频| 黑丝内射一区二区三区| 性性欧美| 日韩综合色图| 黄色免费网页无码| 久久理论字幕视频| 97在线欧| 亚洲?V无码专区在线电影| 综合一区中亚洲国产成人综合精品| 色性欧美| 婷婷探花久久精品一区| 天天干天天舔| 色婷婷影院| 国产欧美后入| 人人操人人摸人人骑| 伊人五月天激情| 久久久影院| 好一吊区二区| 亚洲一区二区三区播放在线| 亚州精品一区二区三区香中文字幕在线| 97精品综合久久网| 精品人妻一二三| 久久精品性| 欧美熟妇亚洲版| 国产白丝精品在线观看| 色综合婷婷| 精品一二三区女同 | 日本999精品视频| 天天综合网~91| 尤物国产一区在线观看| 伊人久久大香线综合无码| 欧美日韩亚洲天堂| 色婷婷香蕉| 亚洲熟妇综合久久久久久| 久艾草在线精品视频在线观看| 91 刺激在线| 亚洲蜜臀精品视频久久| 亚洲一欧洲中文字幕在线| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 五月婷婷爱六月丁香色| 夜夜免费视频| 99久久婷婷丁香| 青女在线| 国产一进一出视频网站| 日本999精品视频| 永久电影三级在线观看| 91美女视屏| 9久精品| 日韩亚洲美州欧洲综三区一品在线| 亚洲成人AB| 欧美国产日韩高清在线| 一级性爱啪啪视频| 九九九久久久久| 国产精品区在线12p| 色噜噜人妻丝袜AV资源| 国产一级137片内射麻豆| 大香蕉99热| 26uuu性物| 久久久久久久久久久久欧美日| AV不卡在线| 日韩二区三四区五区六区在线看| 成人午夜小视频手机在线看| 视频在线中文字幕| 色情五月丁香| 999综合网| 亚洲情色一区三区| 一级做a爰片久久毛片图片| 久久久久久久久久久久黄色 | 午夜激情成人在线观看| 色踪合AV| 日本天天操| 乱伦熟女论坛| 韩日巨乳美女免费视频在线观看| 久久久无码av精| 加勒比海人人操超碰在线| 夜夜爽爽爽| 精品人妻视频入口| 亚洲人久久久网| 99热婷婷| 欧美精品久久久久久久丰满| 色网1| 欧美成人精品A片免费一区99| 熟妇视频一区二区三区在线| 午夜天堂精品久久| 无码聚合| aV中亚| 欧美亚洲激情一二三| 中文字幕成人理论在线| 青青青青青手机视频| 免费农村成人少妇人妻Aa一区二区视频| 亚洲 欧美 制服 另类 自拍| 久久一二三四五六七八九区| 骚货人妻偷情自拍在线视频| 亚洲成人性| 性91| 日韩精品三级片长长久久| 性色av婷婷久久一区二区点复制| 久久午夜色播影院免费高清| 精品美女久久一二三| 亚洲激情久久| 免费一级黄色录像影片| 青青久久艹| 碰超人人在线一区二区三区| 69超碰综合| 久久riav中文精品| 久久国产乱子伦精品免费女,网站| 久久久久久午夜男人的天堂| 无码外流操逼视频| 97在线免费看视频| 久久久神马影院| 日韩AV色图| 俺去俺来也在线www| 午夜精品久久久久久久久久久久久| 一区,二区,三区视频| 激情婷婷五月天| 午夜电影在线观看无码专区| 乱伦熟女论坛| 啊啊啊啊好多水| 97视频新免费| 亚洲91色在线| 精品视频久久久久九九九九9999 | 九九久久99| 激情自拍 校园春色| 日本一区二区三区四区免费观看| 日比av无码| 少妇69中文| 五月天色色网站| 午夜无码精品免费看性色| 国产成人亚洲精品无码最新在线| 国产精品熟女九九九| 999岛国大片| 国产欧美日韩一区二区三区| 久久精品一区二区三区四区五区| 夜夜春夜夜操| 色老汉色| 一区二区三区日韩欧美| 男女打扑克高清网站| 免费看毛片操穴| 99ri精品| 99热91| 亚洲五月婷| 91粉嫩萝控精品福利网站_精品影音先锋国| 91精品久久久久五月天精品| 熟女激情综合网| 操逼无码操逼| 久艾草在线精品视频在线观看| 搡老熟女免费视频| 超碰精品国产无码| 看免费的黄片| 欧美αv.com| 国产宅男宅女在线观看| 一线黄色免费性爱片| A 在线网址| 大香蕉专区| 日本午夜精品理论片A级APP发布| 欧美97在线观看| 97高清啪啪| 久操九九九九九九九九九九九九九九九九九九九九九九九九九九九九 | 九热视频| 一区二区三区精品黑丝白丝酒店对鸡| 久操大香蕉手机视频在线看| 天堂九九九九九九九九九| 久操高青| 国产精品天干天干综合网麻豆| 久久同城AV| 中出20p| 国产99热| 无码免费在线观看黄色片| 久久精品欧美一区二区三区不卡| 色就色综合| 激情啪啪拍91| 另类图片五月| 最新av在线| 91精品91久久久久77777| 香蕉综合网| 欧美91视频| 三级片网站在线播放| 校园春色制服丝袜中文字亚洲| 丝袜喷水在线| 婷婷九月国产| 久久久96| 屁屁影院一区二区三区国产| 天堂精品在线| 淫乱图区| 香蕉视频精品亚洲一区二区三区在线播| 国产在线观看一区二区三区| 综合免费无码中文| 色香色香欲天天天影视综合网| 91国产大片| 大色网久久| 亚洲?V无码专区在线电影| 在线观看精品国产免费| 九九九九88| 午夜福利一区二区三区四区五区色婷婷| 亚洲日韩美女丝袜美腿人妻视频| 日本一区视频在线观看| 青青草日韩无码| 日日嗨AV一区二区夜夜| 97综合国产| 亚洲强奸乱伦影视网| 丝袜夫妻自拍| 亚洲日精品| 亚洲精品性爱片| 私色综合网| 午夜视频久久久| 在线观看免费视频国产| 欧美天天插| 超碰9 7女人| 少妇人妻好深太紧了vr91| 2020视频1区2区3区| 国产精品久久久久久夜夜夜夜| 日本一级特级毛片视频| 五月天综合在线| 色偷综合| 久思思热视频在线观看| 久久久久日本视| 97超碰大| 午夜男人一级A片7777| 91国产大片| 亚洲AV无码乱码| 凹凸视频特色日本特黄| 极品色电影院| 天天激情干| 自拍丝袜美腿人妻| 久久性爱视频免费看| 男人天堂一区二区| 99热精品在线观看| 日本免费亚洲欧美| 91激情国产| 亚洲一区二区中文字幕| 激情人妻另类| 性色av蜜臀av色欲aV| 一区二区三区蜜桃成人撸久久东京热 | 青娱乐啪啪视频| 九九av| 亚洲男人在线观看天堂| 99爱爱| 91色夜| 六月激情网| 色综合天天爱去电影网| 激情五月天丁香| 男人的天堂1024| 婷婷99狠狠| 欧美日韩欧美| 久久精精区一区二区一蜜桃一区二区| 花花AV导航| 欧美亚洲玖玖玖| 2024黄色视频| 日本一二三高清| 国产精品原创巨作?v网站| 神马久久久久久久久久久久| 久综合国内精品自在自线| 大香蕉一人在线| 芊芊操逼视频无码| 丰满丝袜少妇AV| 天天肏夜夜肏| 国产精品视屏| 蜜桃在线观看一区二区三区 | 污电影在线观看| 亚洲Av无码成人精品国产| 午夜操一视频一区| 欧美日韩超碰在线| 久久久久久亚洲Av无码精| 日韩精品作爱导航| 亚洲中文字母在线播放| 97综合激情| 午夜久久一区二区无码中出| 97人人夜夜精品视频| 69久久久久久久久久久久久| 免费毛片在线播放| 久久久久97| 久啪| 五月激情在线| 丁香五六月啪啪| 在线小说视频一区| 偷拍 精品另类 凸凹了四区| 一级AV性爱| 久久久久极品| 久久久9品一区二区三区| 欧美性生活免费网| 国产精品97视频| 中文字幕制服欧美久久一区| 91人妻素女| 全球成人中文在线| 91网站18| 91美女国产在线| 热久久精品| 性爱乱伦一区| 人人操人人干xxx| 亚洲玖玖爱| AV天堂男人的天堂| 欧美黄色大香蕉一区二区| 99无码狠狠久久| 99精品在线| 欧美高清性猛交| 99热自拍| 一区二区三区黄片免费观看| 国产馆| 91精品又粗又猛又爽| 91oumei| 爱av免费| 最新国内自拍av免费| 女人香蕉久久毛毛片精品| 18岁禁 茉莉成人久久| 狠狠综合| 乱伦日本色图AⅤ| 综合影院永久入口国产| 欧美宗合网| 嗯嗯啊啊的视频| 久久综合女优| 99热这里只有精| 99热伊人| 人妻在线视频| 日本十八禁免费看污网站| 蜜桃av色偷偷av老熟女| 97色操| 国产91专区| 色婷婷久久综合超碰| 欧美三级一级| 校园春色 男人天堂 | 少妇人妻在线| 在线一区| 久久综合女优| 欧美 日韩 国产传媒| 日韩偷拍色图| 人妻AV 中文字幕的| 亚洲熟女中文字幕在线| 青娱乐国产精品| 天天色天天干天天爱| A级国产欧美激情在线| 色欧美综合| 玖玖久久久| 人妻天堂网| 欧洲人妻视频| 91 天天综合| 欧美亚洲天天| 免费在线视频97| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 疯操AV| 国产suv精品一区二六| 国产免费一区| 啊啊啊啊啊舒服| 久久久久久裸体| 综合一区二区影视| 中文无线日韩一区| 超碰97综合网| 超碰九九| 99re99| 综合97| 欧美高清无码免费视频高清版| 日本一区二区中文字幕久久| 日日夜夜精品视频| 强被迫伦姧在线观看无码网站| 中文字幕丰满子伦无码专区在线视频最新| 欧美精品庄| 九九碰九九爱97超| 久久在线观看免费视频| 亚洲精品免费中文字幕| 欧美日韩日产免费网站看| 综合欧美激情网| 强奸a片网| 99免费在线视频| 色妹子A V| AV天堂男人的天堂| 欧洲精品一二三在线| 国产精品一区二区麻豆| 色97干| 亚洲 无码 偷拍| 日本成人A片网站| 国人欧美精品一区二区| 狠狠狠狠狠干| 日韩影片中文字幕一区二区三区| 99RE在线视频精品,这里只有精品| 老司机午夜福利视频一区二区| 久久9免费视频| 欧美97在线欧| 亚洲性爱免费电影| 色色色色综合网| 特级大荫道BBwBBwBBW| AV99热18这里只有精品| 97伦综合| 免费αV在线视频| 日本精品第一视频在'| 国产高清1234区| 亚洲自拍欧美色综合| 在线欧美亚洲| 370p日韩欧美亚洲精品| 亚洲人妻av| 青青草精玖玖69精品| 色欲久久99精品久久| 亚洲精品国语在线播放| 热99这里只有精品| 中文字幕版| 国产97av| 亚洲图片婷婷五月天| 五月开心网| 精品二999| 操逼操逼操| 超碰人人超在线观看| 少妇一区二区三区在线观看| 91美女视频电影| 日韩欧美亚欧在线视频| 欧美视频中文字幕区| 国产精品色哟哟| 97资源久久| 日本一级二级三级网站| 大香蕉天天看妹子| 揉揉日日日日| 欧美,日韩,亚洲视频| 欧洲乱码一区二区| 午夜福利精品| 99精品视频在线观看免费| 一本道综合色图| 伊人 俄罗斯 a v| 清纯唯美亚洲综合| 日韩激情啪啪| 香蕉久久精品| 操碰97| 国产高潮AA片免费看| 91丝袜熟女| 国产午夜精品理论片一二三区区 | 国内操逼视频二区| 国产久久久久久| 亚洲五月婷| 91色s| 一类无码操逼视频| 91艹逼精品| 中国熟女老妇仑乱一区二区三区| 九热视频| 婷婷久久久精品| 国产精品自在线发布| 亚洲人妖网| 久久久精品电影| 冬京热男人的天堂| 美女久久久| 亚洲情色91| 色噜噜狠狠色综无码久久合欧美| 91free福利| 熟妇女伦乱视频视频| 最新啪啪视频| 亚洲se电影| 天天色播亚洲综合网站| 久久久91福利姬| 国产午夜激片Av毛片不卡| 天堂涩涩| 色婷婷视频| 国产欧洲精品亚洲午夜拍精品| 国产一在线观看| 日韩不卡网操逼中文字幕日韩| 国产精品盗摄 偷窥盗摄| 中文字幕乱碼在线| 在线综合 亚洲 欧美中文字幕| 91色综合激情| 一级日本牲交大片好爽在线看| 精品国产72| 久久黄色视频一区二区三区 | 金莲网址| 蜜桃臀一区二区aV| 国产精品熟女乱伦| 色约约一区=区三区| 六月丁香五月婷婷| 91青青草| 五月婷婷hd| 免费超碰97在线观看| 欧美在线视频观看一二三四区高清| 九月丁香综合网| 欧美第五页| 天天色综合图片| 精品国产三级av韩国在线| 久久內射| 欧美黑人精品一区二区| 97网站在线观看| 中文字幕五区| 午夜视频黄| 亚洲日韩XXX| 色情五月综合婷婷| 男人午夜天堂| 高潮综合网| av一区二区三区 中文| 中文字幕乱亚洲美女精品一区| 少妇诱惑视频| 人妻在线视频| 97精品免费视频网站| 99亚洲人人| av资源在线观看少妇| 欧美人体性爱互联网第一页婷婷日本| 97色色色综合网站| 欧美人妻精品一区二区| 久草这里只有精品 | 亚洲日本激情| 丝袜美腿操av| 欧美精品丝袜久久久中文字幕| 女人喷水视频在线观看| 日本久久超碰| 日韩欧美中文字| 亚洲91极品| 免费观看的黄色的网站| 精品对白久久不卡| 国产美女口爆吞精| 任你艹| 欧美国产精品| 91老熟女| 超碰在线1234区| 精品久久久久9999| 很很热性爱视频| 性色AV蜜色av色欲av| 后入福利| 无码人妻丰满熟妇奶水区毛片| 久久一区二区三区入口| 翔田千里爆乳巨臀无码| 天天综合网~91| 97在线观看免费视频l| 97资源制服丝袜| 手机在线看片免费人成视频| 无遮挡男女激烈动态图| 欧美日韩制服| 九九综合网| 嗯~啊~快点 死我视频| 五月丁香激情综合网| 国产一区二区三区视频在线看| 亚州男人天堂| 91久热| 97超碰这里只有精品| 91 丝袜在线| 思思热在线观看| 囯产乱伦一区二区三女| 午夜一级免费毛片| 精品欧美不卡在线播放| 日本黄色精品| 天天热精品| 亚洲日韩少妇一道本视频| 亚州成人a∨| 97干日韩| 色色色综合| 久99视频| 亚洲AV无码乱码在线观看性色| 日韩欧美aⅴ综合网站发布| 中文字幕日韩精品久久| 久久伊人最新网址视频| 热热色中文无码| 午夜九九九九九九| 亚洲激情久久久伊人综合| 伊人午夜福利视频| 青草园大香蕉| 蜜桃狠狠色伊人亚洲综合| 免费成人在线熟妇网| 久日91在线| www.高清无码诱惑一区.com | 国产午夜在线观看| 国产福利合集| 日本不卡一区二区| 亚洲天堂一区| 97视频网站| 欧州一区二区三区四区| 91精品人| 丁香五六月啪啪| 成人AV超碰免费在线| 久久欲| 天天看天天在线精品| 天天操夜夜嗨| 亚洲AV无码黄色强奸| 精品在线观看视频在线| 美女黄频a美女大全免费皮| 曰韩成人免费视频| 丰满人妻大屁一区二区| 综合色啪| 亚洲另类在线观看|