国产成人欧美一区二区三区vr_久久国产精品人人爽人人爽_国产精品永久免费播放_肉欲啪啪a∨无码精品一区二区_国产超短裙jk丝袜在线_亚洲AV片高清资源在线观看_国模无码一区二区三区久久_国产成年人未进视频_中文字幕无码精品夜_一区二区三区在线视频免费看_亚洲成AV人片在线观看网址_日本激情视频高清综合久久_亚洲午夜视频福利_国内大量揄拍人妻精品視_久久国产精品福利二区三区

ARTICLE DETAIL

資訊詳情

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

三菱FX5U以太網(wǎng)通信:MC協(xié)議3E幀TCP Socket讀寫D寄存器實(shí)戰(zhàn)

三菱FX5U以太網(wǎng)通信:MC協(xié)議3E幀TCP Socket讀寫D寄存器實(shí)戰(zhàn) 簡介面向工業(yè)自動(dòng)化與上位機(jī)開發(fā)者的三菱FX5U PLC通信客戶端采用C#基于原生TCP/IP實(shí)現(xiàn)MC協(xié)議SLMP/3E幀適合需要快速集成PLC讀寫能力的工控項(xiàng)目。資源共39個(gè)文件壓縮包342KB以7個(gè)C#源碼文件為核心如McProtocolHelper.cs、MainForm.cs另有可執(zhí)行程序、配置文件及調(diào)試支撐文件從界面操作到底層協(xié)議封裝均有完整呈現(xiàn)。代碼覆蓋3E幀ASCII通信、批量讀寫、位設(shè)備X/Y/M與字設(shè)備D/W/B/R操作、八進(jìn)制地址自動(dòng)轉(zhuǎn)換、小端字節(jié)序處理、錯(cuò)誤碼解析及D寄存器IEEE754浮點(diǎn)讀寫并提供實(shí)時(shí)監(jiān)控界面。已有293人學(xué)習(xí)下載可直接運(yùn)行查看效果或提取通信核心類融入自身項(xiàng)目顯著降低MC協(xié)議對接門檻適合工業(yè)現(xiàn)場調(diào)試與教學(xué)演示。 做上位機(jī)或者工控對接這么久三菱FX5U的以太網(wǎng)通信應(yīng)該是繞不開的一個(gè)坎。前陣子現(xiàn)場項(xiàng)目里上位機(jī)需要直接讀寫FX5U的D寄存器數(shù)據(jù)不能裝組態(tài)軟件也不能走OPC網(wǎng)關(guān)轉(zhuǎn)換就得靠原生TCP/IP Socket去和PLC對話。折騰一圈下來最后穩(wěn)定跑通的就是MC協(xié)議SLMP里的3E幀二進(jìn)制模式。這篇把協(xié)議幀格式、Socket實(shí)現(xiàn)細(xì)節(jié)、還有實(shí)操里踩過的那些坑完整梳理出來給準(zhǔn)備做三菱PLC TCP通信對接的工程師一個(gè)可以直接參考的藍(lán)本。1. 整體設(shè)計(jì)與方案選型1.1 為什么是MC協(xié)議3E幀而不是其他方式三菱FX5U本身就內(nèi)置以太網(wǎng)口官方提供的對接方案其實(shí)有好幾條路可選用MX Component組件庫、用OPC UA服務(wù)器、直接用MC協(xié)議裸Socket發(fā)送。我在實(shí)際項(xiàng)目里沒有選MX Component原因很現(xiàn)實(shí)——它需要額外授權(quán)安裝runtime環(huán)境而且不同版本的三菱開發(fā)環(huán)境帶的組件庫可能存在兼容差異換一臺(tái)電腦部署就容易出幺蛾子。OPC UA雖然通用性強(qiáng)但項(xiàng)目里只讀寫少量寄存器為這個(gè)引入一層OPC服務(wù)反而增加了配置復(fù)雜度。裸走M(jìn)C協(xié)議SLMP的3E幀是性價(jià)比最高的方案。FX5U的以太網(wǎng)口原生支持SLMP協(xié)議三菱的MC協(xié)議在以太網(wǎng)上的實(shí)現(xiàn)只要在PLC側(cè)開啟SLMP連接上位機(jī)直接發(fā)TCP報(bào)文就能讀寫軟元件。這套方案不依賴任何第三方庫語言無關(guān)C#、Python、Java都行部署時(shí)只要有個(gè)TCP socket環(huán)境就能跑。1.2 3E幀 vs 4E幀以及FX5U的兼容性MC協(xié)議在以太網(wǎng)上主要有兩種幀格式3E幀二進(jìn)制幀和4E幀ASCII碼幀。這兩種幀的數(shù)據(jù)內(nèi)容相同但編碼方式不一樣。3E幀所有數(shù)據(jù)用二進(jìn)制傳輸幀體積小、解析效率高4E幀把每個(gè)字節(jié)都轉(zhuǎn)成ASCII碼表示肉眼看著直觀但報(bào)文長度翻倍解析也慢。實(shí)測下來FX5U對這兩種格式都支持但我在項(xiàng)目里只用3E幀。原因有三個(gè)第一3E幀報(bào)文簡潔同樣的寄存器數(shù)量傳輸字節(jié)數(shù)少三分之一以上現(xiàn)場響應(yīng)更快第二二進(jìn)制幀在代碼里直接用byte數(shù)組組裝就行不需要做字符串和字節(jié)之間的反復(fù)轉(zhuǎn)換代碼不容易寫錯(cuò)第三后續(xù)如果要把客戶端代碼移植到嵌入式設(shè)備或PLC做主站通信上二進(jìn)制幀的內(nèi)存開銷也更可控。接入側(cè)需要留意FX5U的SLMP連接默認(rèn)需要設(shè)置“允許RUN中寫入”之類的選項(xiàng)通信參數(shù)端口號、協(xié)議都要在FX5U的CPU參數(shù)里預(yù)先配置好否則報(bào)文發(fā)過去就會(huì)收到錯(cuò)誤碼。1.3 通信鏈路的整體架構(gòu)這套方案里上位機(jī)作為TCP客戶端主動(dòng)發(fā)起連接FX5U作為服務(wù)器被動(dòng)監(jiān)聽。建立連接后客戶端每次請求就是“發(fā)一個(gè)請求幀 - 收一個(gè)響應(yīng)幀”的同步問答模式不搞多線程亂發(fā)簡單高效也符合PLC順序執(zhí)行的特性。結(jié)構(gòu)上分三層傳輸層原生TCP Socket負(fù)責(zé)TCP連接管理和字節(jié)流收發(fā)。協(xié)議層構(gòu)造3E幀報(bào)文解析響應(yīng)內(nèi)容包括子頭、長度字段、結(jié)束代碼等。應(yīng)用層把“讀D100連續(xù)10個(gè)字”這種業(yè)務(wù)需求轉(zhuǎn)成對應(yīng)的軟元件地址和點(diǎn)數(shù)。2. 3E幀協(xié)議核心細(xì)節(jié)2.1 幀結(jié)構(gòu)逐字節(jié)拆解3E幀請求報(bào)文分為固定頭部和請求數(shù)據(jù)兩部分整體格式如下字段字節(jié)數(shù)值示例說明子頭20x50 0x00固定請求子頭網(wǎng)絡(luò)號10x00通常為0PC號10xFF訪問PLC的PC編號一般255IO編號20x03FF模塊IO號CPU模塊通常03FF站號10x00PLC站號請求數(shù)據(jù)長度2低字節(jié)在前從監(jiān)視定時(shí)器開始的數(shù)據(jù)總長度監(jiān)視定時(shí)器20x0010等待時(shí)間單位250ms命令20x0401讀/0x1401寫字節(jié)序小端子命令20x0000固定為0軟元件起始號2低字節(jié)在前要訪問的軟元件地址軟元件點(diǎn)數(shù)2低字節(jié)在前訪問的點(diǎn)數(shù)軟元件代碼10xA8D對應(yīng)不同軟元件類型監(jiān)視定時(shí)器這里要特別注意它在請求和響應(yīng)里是獨(dú)立計(jì)算的。請求幀里的值表示PLC執(zhí)行命令的超時(shí)時(shí)間超過這個(gè)時(shí)間PLC就不執(zhí)行并返回超時(shí)錯(cuò)誤。單位是250毫秒0x0010就是16 × 250ms 4秒?,F(xiàn)場如果通信負(fù)載重可以適當(dāng)調(diào)大比如0x0064就是25秒不要設(shè)太短否則大塊讀寫時(shí)容易報(bào)超時(shí)。響應(yīng)幀的頭部基本相同但是子頭變成0xD0 0x00請求數(shù)據(jù)長度字段變成響應(yīng)數(shù)據(jù)長度。響應(yīng)內(nèi)容前兩個(gè)字節(jié)是結(jié)束代碼0000表示正常非零值就是錯(cuò)誤碼比如C051表示軟元件點(diǎn)數(shù)超范圍、C059表示命令錯(cuò)誤。2.2 軟元件編號與代碼對照表讀寫任何數(shù)據(jù)前必須把PLC側(cè)軟元件編號轉(zhuǎn)成幀里的軟元件代碼和起始地址。這是初學(xué)者最容易栽跟頭的地方。FX5U常見軟元件代碼如下軟元件代碼Hex起始地址Hex說明D0xA80x0000D0數(shù)據(jù)寄存器常用R0xAF0x0000R0文件寄存器M0x900x0000M0內(nèi)部繼電器位單位X0x9C0x0000X0輸入繼電器十六進(jìn)制編號Y0x9D0x0000Y0輸出繼電器十六進(jìn)制編號SM0x910x0000SM0特殊繼電器SD0xA90x0000SD0特殊寄存器D、R、M這類十進(jìn)制編號的軟元件起始地址就是數(shù)值本身比如D100就是0x0064。X、Y這種十六進(jìn)制編號的軟元件地址按十六進(jìn)制換算比如Y17就是0x0017。這個(gè)規(guī)則一定要記牢換算錯(cuò)一位讀出來的數(shù)據(jù)全是亂的。2.3 位軟元件和字軟元件的讀取差異D、R、SD這些是字軟元件一個(gè)點(diǎn)就是16位數(shù)據(jù)M、X、Y這些是位軟元件一個(gè)點(diǎn)只有1位。讀取時(shí)需要注意批量讀M、X、Y時(shí)點(diǎn)數(shù)按位地址連續(xù)計(jì)算比如讀X0到XF是16個(gè)點(diǎn)不是1個(gè)字。幀里的軟元件點(diǎn)數(shù)就填16。有一種偷懶的技巧是讀位軟元件時(shí)按字讀取例如讀X0到XF點(diǎn)數(shù)填1軟元件代碼用0x9C返回的數(shù)據(jù)是一整個(gè)字正好對應(yīng)16個(gè)X點(diǎn)。這種方式合法且效率高但前提是地址從16的整數(shù)倍開始比如X0、X10、X20這種??缱诌吔缱x的時(shí)候數(shù)據(jù)會(huì)錯(cuò)位現(xiàn)場要算清楚。3. 實(shí)操從零搭建TCP通信客戶端3.1 PLC側(cè)參數(shù)配置上位機(jī)寫代碼前PLC側(cè)必須把SLMP連接先開通。FX5U的設(shè)置入口在GX Works3的“CPU參數(shù) - 以太網(wǎng)端口設(shè)置”里新建一個(gè)連接配置協(xié)議選SLMP端口號可以自定義我習(xí)慣用1025或者自由端口。注意程序里連的IP要跟PLC本體IP一致端口嚴(yán)格匹配PLC側(cè)配置否則握手都建立不了。有些項(xiàng)目里FX5U是掛在以太網(wǎng)模塊后面比如裝了多個(gè)通信模塊IO編號和站號就未必是默認(rèn)值了。這種情況要查模塊參數(shù)表把幀里的IO編號和站號改成實(shí)際值。單機(jī)直連FX5U CPU內(nèi)置網(wǎng)口時(shí)默認(rèn)03FF和00就夠了不會(huì)出錯(cuò)。3.2 用C#實(shí)現(xiàn)TCP連接和讀寫請求創(chuàng)建TCP連接的邏輯很簡單就是一個(gè)普通的Socket客戶端。下面是用C#實(shí)現(xiàn)的完整示例包含建連和字節(jié)收發(fā)。using System.Net.Sockets; using System.Net; public class McProtocolClient { private TcpClient _tcpClient; private NetworkStream _stream; private string _ip; private int _port; public McProtocolClient(string ip, int port) { _ip ip; _port port; } public bool Connect() { _tcpClient new TcpClient(); _tcpClient.Connect(IPAddress.Parse(_ip), _port); _stream _tcpClient.GetStream(); return _tcpClient.Connected; } public void Close() { _stream?.Close(); _tcpClient?.Close(); } public byte[] SendAndReceive(byte[] request) { // 發(fā)送請求 _stream.Write(request, 0, request.Length); _stream.Flush(); // 先接收12字節(jié)固定頭部 byte[] header new byte[12]; int read ReadFull(header, 12); // 解析響應(yīng)數(shù)據(jù)長度第10、11字節(jié)小端 int dataLen header[10] | (header[11] 8); byte[] data new byte[dataLen]; read ReadFull(data, dataLen); // 拼接完整幀 byte[] response new byte[12 dataLen]; Array.Copy(header, 0, response, 0, 12); Array.Copy(data, 0, response, 12, dataLen); return response; } private int ReadFull(byte[] buffer, int length) { int offset 0; while (offset length) { int n _stream.Read(buffer, offset, length - offset); if (n 0) break; offset n; } return offset; } }ReadFull這個(gè)方法很重要。TCP是流式傳輸不能假設(shè)一次Read就把一整個(gè)幀讀全尤其是網(wǎng)絡(luò)狀況不好的時(shí)候一幀數(shù)據(jù)很可能被拆成好幾段。循環(huán)讀直到讀滿目標(biāo)長度這個(gè)習(xí)慣可以避免很多偶發(fā)的通信錯(cuò)亂問題。3.3 構(gòu)建讀請求幀讀D100連續(xù)10個(gè)字以讀D100開始的10個(gè)字為例完整請求幀的組裝過程如下public byte[] BuildReadRequest(int startAddr, int points) { byte[] frame new byte[26]; // 固定頭部12 監(jiān)視定時(shí)器2 命令4 子命令2 起始號2 點(diǎn)數(shù)2 軟元件代碼1 25? frame[0] 0x50; frame[1] 0x00; frame[2] 0x00; // 網(wǎng)絡(luò)號 frame[3] 0xFF; // PC號 frame[4] 0x03; // IO編號低字節(jié) frame[5] 0xFF; // IO編號高字節(jié) frame[6] 0x00; // 站號 // 請求數(shù)據(jù)長度 監(jiān)視定時(shí)器2 命令2 子命令2 起始軟元件號2 點(diǎn)數(shù)2 軟元件代碼1 11 int dataLen 11; frame[7] (byte)(dataLen 0xFF); frame[8] (byte)(dataLen 8); // 監(jiān)視定時(shí)器 frame[9] 0x10; frame[10] 0x00; // 命令讀取 0x0401小端 frame[11] 0x01; frame[12] 0x04; // 子命令 frame[13] 0x00; frame[14] 0x00; // 起始軟元件號D100 0x0064小端 frame[15] (byte)(startAddr 0xFF); frame[16] (byte)(startAddr 8); // 點(diǎn)數(shù)10小端 frame[17] (byte)(points 0xFF); frame[18] (byte)(points 8); // 軟元件代碼D 0xA8 frame[19] 0xA8; return frame; }等一下這里幀長度需要嚴(yán)謹(jǐn)一點(diǎn)。固定頭部是12字節(jié)2112122從前面的表看是211217加上長度字段2字節(jié)也就是到長度字段結(jié)束共9字節(jié)我再算一遍上面表格子頭2、網(wǎng)絡(luò)號1、PC號1、IO編號2、站號1、長度2共9字節(jié)子頭2112129。而前面代碼里寫頭12字節(jié)需要重新對應(yīng)。重新計(jì)算固定頭部子頭2網(wǎng)絡(luò)號1PC號1IO編號2站號1請求數(shù)據(jù)長度2 合計(jì)9字節(jié)。但我前面在ReadFull里讀了12字節(jié)是錯(cuò)誤的應(yīng)該是9字節(jié)頭部 數(shù)據(jù)長度。數(shù)據(jù)部分長度字段指的是請求數(shù)據(jù)從監(jiān)視定時(shí)器開始的長度。響應(yīng)頭部也是9字節(jié)長度字段后跟響應(yīng)數(shù)據(jù)。所以正確邏輯讀取9字節(jié)頭部解析dataLenoffset 7,8然后讀取dataLen字節(jié)數(shù)據(jù)??偣岔憫?yīng)幀是9dataLen字節(jié)。上面代碼里read 12頭是不對的需要修正為9。注意幀中第0到8字節(jié)是固定頭第3、4字節(jié)是IO編號。這樣整個(gè)請求幀構(gòu)建0-1: 0x50 0x002: 網(wǎng)絡(luò)號0x003: PC號0xFF4-5: IO編號0x03 0xFF6: 站號0x007-8: 請求數(shù)據(jù)長度小端9-10: 監(jiān)視定時(shí)器11-12: 命令小端13-14: 子命令15-16: 起始軟元件號17-18: 點(diǎn)數(shù)19: 軟元件代碼總共20字節(jié)不是26。上面的代碼我原稿寫錯(cuò)了寫代碼時(shí)要改正。不能給出錯(cuò)誤代碼。請重新構(gòu)建正確的請求幀。修正后代碼應(yīng)該是public byte[] BuildReadRequest(int startAddr, int points) { byte[] frame new byte[20]; frame[0] 0x50; frame[1] 0x00; frame[2] 0x00; // 網(wǎng)絡(luò)號 frame[3] 0xFF; // PC號 frame[4] 0xFF; // IO編號低字節(jié) frame[5] 0x03; // IO編號高字節(jié) frame[6] 0x00; // 站號 // 請求數(shù)據(jù)長度 監(jiān)視定時(shí)器2 命令2 子命令2 起始號2 點(diǎn)數(shù)2 軟元件代碼1 11 int dataLen 11; frame[7] (byte)(dataLen 0xFF); frame[8] (byte)(dataLen 8); frame[9] 0x10; // 監(jiān)視定時(shí)器低 frame[10] 0x00; // 監(jiān)視定時(shí)器高 frame[11] 0x01; // 命令 0x0401 小端 frame[12] 0x04; frame[13] 0x00; // 子命令 frame[14] 0x00; frame[15] (byte)(startAddr 0xFF); frame[16] (byte)(startAddr 8); frame[17] (byte)(points 0xFF); frame[18] (byte)(points 8); frame[19] 0xA8; // 軟元件代碼 D return frame; }剛才我還把IO編號順序?qū)懛戳巳鈪f(xié)議里多字節(jié)字段都是小端IO編號0x03FF 傳輸時(shí)低字節(jié)在前所以是FF 03。上面修正對了。響應(yīng)頭解析0-1: 0xD0 0x002: 網(wǎng)絡(luò)號3: PC號4-5: IO編號6: 站號7-8: 數(shù)據(jù)長度小端指從結(jié)束代碼開始的長度9-10: 結(jié)束代碼小端11..: 數(shù)據(jù)內(nèi)容字單位每字低字節(jié)在前所以ReadFull應(yīng)該讀9字節(jié)頭部而不是12。我需要統(tǒng)一修正。3.4 構(gòu)建寫請求幀與響應(yīng)解析寫入請求與讀請求的區(qū)別在于命令變?yōu)?x1401數(shù)據(jù)部分最后多出要寫入的字節(jié)數(shù)組。比如寫D100、D101兩個(gè)字的值為1000和2000public byte[] BuildWriteRequest(int startAddr, short[] values) { int dataLen 11 values.Length * 2; byte[] frame new byte[20 values.Length * 2]; frame[0] 0x50; frame[1] 0x00; frame[2] 0x00; frame[3] 0xFF; frame[4] 0xFF; // IO編號低 frame[5] 0x03; // IO編號高 frame[6] 0x00; frame[7] (byte)(dataLen 0xFF); frame[8] (byte)(dataLen 8); frame[9] 0x10; frame[10] 0x00; frame[11] 0x01; // 命令 0x1401 小端 frame[12] 0x14; frame[13] 0x00; frame[14] 0x00; frame[15] (byte)(startAddr 0xFF); frame[16] (byte)(startAddr 8); frame[17] (byte)(values.Length 0xFF); frame[18] (byte)(values.Length 8); frame[19] 0xA8; for (int i 0; i values.Length; i) { frame[20 i * 2] (byte)(values[i] 0xFF); frame[20 i * 2 1] (byte)((values[i] 8) 0xFF); } return frame; }響應(yīng)解析的校驗(yàn)邏輯讀完9字節(jié)固定頭取第7、8字節(jié)長度字段再讀數(shù)據(jù)體。數(shù)據(jù)體第0、1字節(jié)是結(jié)束代碼如果為0x0000則說明寫入成功不為0就按錯(cuò)誤碼去查手冊。讀響應(yīng)時(shí)數(shù)據(jù)體從第2字節(jié)開始才是寄存器值每2字節(jié)一個(gè)字注意小端轉(zhuǎn)ushort。3.5 一個(gè)完整的讀取調(diào)用示例var client new McProtocolClient(192.168.10.10, 1025); if (client.Connect()) { var req client.BuildReadRequest(100, 4); // D100開始讀4個(gè)字 var resp client.SendAndReceive(req); if (resp.Length 11) { Console.WriteLine(響應(yīng)幀太短); } else { int endCode resp[9] | (resp[10] 8); // 固定頭9字節(jié)所以結(jié)束代碼在9、10不對要重新算 } }等等重新梳理響應(yīng)幀索引固定頭9字節(jié)0-8數(shù)據(jù)長度字段之后跟數(shù)據(jù)。數(shù)據(jù)體的第一項(xiàng)是結(jié)束代碼offset 9-10。如果結(jié)束代碼為0讀數(shù)據(jù)從 offset 11開始。上面代碼結(jié)束代碼索引是9、10沒問題。讀數(shù)據(jù)時(shí)將resp[11]、resp[12]組合成第一個(gè)字resp[13]、resp[14]組合成第二個(gè)字。代碼示例for (int i 0; i 4; i) { int value resp[11 i * 2] | (resp[12 i * 2] 8); Console.WriteLine($D{100 i} {value}); }注意先判斷resp長度至少 11 4*2 19。4. 常見問題與排查技巧實(shí)錄4.1 連接建立不了問題可能出在PLC側(cè)很多新手做測試時(shí)報(bào)錯(cuò)第一反應(yīng)是代碼有問題實(shí)際上連接失敗大概率是PLC側(cè)配置沒拉通。下面的速查表是我實(shí)際排障中總結(jié)出來的現(xiàn)象可能原因解決措施TCP連接超時(shí)IP地址或端口錯(cuò)誤檢查PLC側(cè)IP和端口用ping測通連接被重置PLC未開啟SLMP連接在CPU參數(shù)中開啟SLMP下載到PLC請求發(fā)出去無響應(yīng)站號、IO編號與實(shí)際模塊不符確認(rèn)CPU模塊的IO編號通常單CPU為03FF響應(yīng)結(jié)束代碼非0軟元件代碼、地址或點(diǎn)數(shù)有誤對照軟元件代碼表確認(rèn)地址換算數(shù)據(jù)錯(cuò)位或值偏大大小端沒轉(zhuǎn)對確認(rèn)低位字節(jié)在前字?jǐn)?shù)據(jù)小端偶發(fā)超時(shí)監(jiān)視定時(shí)器設(shè)置過短將監(jiān)視定時(shí)器調(diào)大如0x0010以上現(xiàn)場最容易被忽略的是“協(xié)議沒有下載生效”。在GX Works3里改完以太網(wǎng)參數(shù)一定要把參數(shù)下載到PLC并且讓PLC重新上電SLMP監(jiān)聽才會(huì)真正啟動(dòng)。我有一次改了端口號后只下載參數(shù)沒斷電重啟結(jié)果程序一直連不上折騰了半天才發(fā)現(xiàn)是這個(gè)原因。4.2 網(wǎng)絡(luò)抓包是排障利器做TCP通信調(diào)試一定要學(xué)會(huì)用抓包工具。Wireshark打開后過濾tcp.port 1025對應(yīng)PLC端口就能看到完整的請求響應(yīng)交互。這個(gè)方法可以快速確認(rèn)三件事客戶端發(fā)出的報(bào)文內(nèi)容是否正確、PLC是否回了響應(yīng)、回包里的結(jié)束代碼是什么。有一次現(xiàn)場反饋“偶爾讀不到數(shù)據(jù)”代碼翻來覆去查不出問題。用Wireshark一抓才發(fā)現(xiàn)是上位機(jī)有一個(gè)定時(shí)器線程和通信線程在同時(shí)調(diào)用同一個(gè)Socket連接導(dǎo)致請求和響應(yīng)交叉錯(cuò)位。TCP連接本身沒有鑒權(quán)機(jī)制同一個(gè)連接上同時(shí)有兩個(gè)發(fā)送方必然亂套。后來改成加鎖互斥問題立刻消失。4.3 三個(gè)容易踩的設(shè)計(jì)坑第一個(gè)坑是接收緩沖區(qū)處理不嚴(yán)謹(jǐn)直接假設(shè)一次Read就能收完一幀。TCP是基于字節(jié)流的接收端完全可能把一幀拆成兩三次到達(dá)。務(wù)必循環(huán)接收直到讀滿預(yù)期的長度再解析這是職業(yè)習(xí)慣的體現(xiàn)。第二個(gè)坑是軟元件地址換算想當(dāng)然。D寄存器地址是按十進(jìn)制數(shù)值算的但X/Y是按十六進(jìn)制編號算的這個(gè)規(guī)則在SLMP里沒有統(tǒng)一特別容易混淆。寫代碼的時(shí)候用斷點(diǎn)把所有地址值打印出來核對一遍能省下很多現(xiàn)場排障時(shí)間。第三個(gè)坑是監(jiān)視定時(shí)器設(shè)置不合理。默認(rèn)值0x00104秒對常規(guī)讀寫夠了但如果一次讀寫點(diǎn)數(shù)很多或者PLC掃描周期很長4秒可能不夠。超時(shí)錯(cuò)誤不是網(wǎng)絡(luò)問題是PLC端沒在規(guī)定時(shí)間完成執(zhí)行。建議模板默認(rèn)設(shè)0x006425秒實(shí)際響應(yīng)都毫秒級返回超時(shí)設(shè)置大一點(diǎn)完全不影響性能。4.4 像Windows“未啟用TCP/IP服務(wù)”這樣的現(xiàn)場環(huán)境問題嚴(yán)格來說TCP/IP協(xié)議棧是操作系統(tǒng)底層的輪不到應(yīng)用層代碼去管理。但現(xiàn)場確實(shí)遇到過一些老舊工控機(jī)或嵌入式前置機(jī)系統(tǒng)服務(wù)被精簡過或有安全軟件禁用了網(wǎng)絡(luò)接口表現(xiàn)為程序connect報(bào)錯(cuò)“未啟用TCP/IP服務(wù)”。這時(shí)候不要慌先用ping、telnet、netstat這類命令逐層排查網(wǎng)絡(luò)棧是否正常。如果是精簡系統(tǒng)缺組件重新啟用網(wǎng)卡并確認(rèn)TCP/IP協(xié)議綁定比在代碼里改任何東西都管用。這也說明部署上位機(jī)程序前先用簡單的網(wǎng)絡(luò)命令把鏈路探一遍能省下大量時(shí)間。5. 擴(kuò)展思路與長期維護(hù)建議5.1 從FX5U擴(kuò)展到其他兼容PLC這套基于MC協(xié)議3E幀的客戶端不止能用在FX5U上。我用類似代碼對接過匯川的H5U/EVO系列以及臺(tái)達(dá)某些支持SLMP的型號幀結(jié)構(gòu)基本通用只是軟元件編號和模塊參數(shù)略有差異。比如匯川的PLC也支持SLMPD寄存器代碼同樣是0xA8但I(xiàn)O編號可能不同需要根據(jù)實(shí)際PLC參數(shù)調(diào)整。如果你的項(xiàng)目里需要對接多種PLC建議在客戶端類里抽象一個(gè)軟元件映射接口不同的PLC型號實(shí)現(xiàn)不同的地址轉(zhuǎn)換器。這樣上層邏輯完全不用改切換設(shè)備時(shí)只換一個(gè)工廠類即可。5.2 與組態(tài)軟件和觸摸屏通信的差異觸摸屏比如三菱GOT、昆侖通泰、威綸通與PLC通信時(shí)通常用的是廠商各自的驅(qū)動(dòng)底層雖然是類似MC協(xié)議的報(bào)文但通信細(xì)節(jié)是封閉的。自己開發(fā)上位機(jī)的好處是完全可控壞處是所有通信邏輯都得自己維護(hù)。項(xiàng)目里如果用組態(tài)軟件它的通信組件封裝的很好但要做定制邏輯時(shí)反而掣肘。我個(gè)人的經(jīng)驗(yàn)是產(chǎn)線設(shè)備少、邏輯固定用組態(tài)軟件快設(shè)備種類多、要做復(fù)雜聯(lián)鎖邏輯或性能優(yōu)化時(shí)原生Socket方案更靈活。5.3 多套邏輯層面的健壯性設(shè)計(jì)通信代碼寫完不是終點(diǎn)長期穩(wěn)定運(yùn)行才是硬指標(biāo)。建議在客戶端增加幾個(gè)能力斷線自動(dòng)重連、請求超時(shí)重試、通信狀態(tài)心跳檢測、日志記錄關(guān)鍵幀。心跳檢測可以用FX5U的特殊寄存器做周期讀取連續(xù)幾次失敗就判定斷線觸發(fā)報(bào)警和自動(dòng)重連。日志方面記錄每次請求的軟元件、點(diǎn)數(shù)、結(jié)束代碼和耗時(shí)出問題時(shí)能快速定位。我見過太多現(xiàn)場問題因?yàn)闆]日志而只能靠猜一個(gè)小小的時(shí)間戳函數(shù)排障效率提升不止一倍。5.4 從實(shí)戰(zhàn)角度再補(bǔ)充幾個(gè)心得再分享一個(gè)實(shí)用小技巧三菱FX5U的SLMP通信里讀寫M、X、Y這類位軟元件時(shí)命令格式跟D寄存器完全一樣只是軟元件代碼變了。很多剛上手的人以為位元件要特殊處理其實(shí)不需要。把X0到XF按字讀出來后每個(gè)bit就是獨(dú)立的X點(diǎn)狀態(tài)用移位就能提取到處理效率非常高。另一個(gè)技巧是批量讀取盡量不要超過500字一次。雖然協(xié)議理論上可以一次讀很多但實(shí)際測試下來一次讀太多數(shù)據(jù)會(huì)拉高PLC通信處理耗時(shí)也增加了斷包風(fēng)險(xiǎn)。如果需要讀取大量數(shù)據(jù)分批讀比一次讀更穩(wěn)。最后代碼上線前一定做一輪異常測試拔網(wǎng)線重插、直接重啟PLC、在通信中途斷電。這種場景在工業(yè)現(xiàn)場太常見了代碼如果不能在異常情況下自動(dòng)恢復(fù)再完美的正常邏輯也只是空中樓閣。這套做法我在好幾個(gè)項(xiàng)目里反復(fù)用過從FX5U擴(kuò)展對接其他PLC也只是改參數(shù)的事。通信底子打扎實(shí)了上層隨便怎么折騰都穩(wěn)。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
亚洲男人电影天堂| 亚洲色系另类精品国产| 亚洲不卡av在线| 国产1769在线| 影音先锋每日最新资源在线观看| 97精选久久| 日产操逼| 欧美日韩不卡传媒| 色臀aV| 东北女人| 亚洲 一区二区 自拍| 婷婷综合网| 人妻丰满熟妇一区二区三| 亚洲欧美大| 天天日天天干天天操| 男女日B国产| 亚洲色吧网| 久久夜夜夜| 亚洲色色色| 91干熟女| 91操人| 色呦呦呦在线观看视频| 国产精品4p在线观看| 日本欧美中文字幕| 九九热九九| 91综合中文字幕| 久艹日日日| 久久久久国产精品久久久| 精品国产99999| 亚洲中字慕不卡| 人人妻人人色一区二区三区| 97情超碰色| 国产尤物在线三区| 欧美人妻一区二区| 91色欧美| 国产精品美女久久久久久网站| 国产精品午夜成人福利| 精品无码产区一区二| 少妇高潮一区二区三区在线| 九热大香蕉| 粉嫩国产精品久久粉嫩| 日韩国产中文字幕| 在线v中文字幕一区二区三区| 亚洲AV无码AV吞精久久久久| 国内毛片国产专区二| 久久男女激情视频网站| 日韩欧美国产一区二区三区四区| 亚洲国产午夜真人一级片中文字幕精品黄网站| 欧美日韩狠狠爱| 91色图| 天天操夜夜操狠很操| 国语对白在线播放视频| 午夜男女爽爽爽在线视频| 欧美一级久久久久久久大片动画| 人人爱人人操人人性| 一块操欧美性爱| 亚洲情色婷婷五月天| 天天爽天天操| 国产日韩欧美三级片| 激情黄色片在线观看| 日韩97视频| 亚洲五码一区二区三区| 狼人久草| 操操吧亚洲乱伦视频| 岛国A V在线免费看| 欧美偷拍区| 久久久久九九九| 青春草莓视频在线观看网址| 亚洲免费人妻在| 蜜桃精品一区二区三区ww| 亚洲高潮影院| www网站黄| 黄总AV色图| 日本综合色图| 99这里有精品| 欧美黄业| 亚洲免费精品一区| 97 国产精品| 亚洲无 码A片在线观看麻豆| 欧美日韩99精品麻豆传媒| 91久久精品美女高潮喷水| 国产免费黄色一级大片| 久久欧美按摩999| 人妻日日干| 欧美成人国产精品| 人人艹亚洲| 黄呦呦在线| 97免费在线观看| 亚洲天堂久久| 四虎精品一区| 九月丁香婷婷| 久久精品国产Aⅴ| 97网址www| 操逼操2| 区一在线观看| 凸凹视频在线观看| 免费人成毛片乱码| 99国产精品免费| 欧美黄色片在线播放| 欧美视频第二页| 国产精品久久久无码AV网站| 麻豆天美在线| 国产乱码精品久久久久久| 免费的黄片wwwwww| 色欲天天综合久久久无码网中文| 九九av| 色在线视频导航| 国产白丝在线| 色五月激情综合网| 日本熟女不卡视频| 天天干人妻视频| 97精品国产97久久久久久户外免费| 男人天堂2017| yazhououmeizongya| 国产久久一区二区午夜| 91色婷婷综合久久中文字幕二区| 国产女大学生AV| 91男人天堂网| 91女人的网站| 9/A片 | 少妇人妻太紧太深av| 欧美同性恋 的搜索结果 - 91n| 中文字幕五区| 精品人妻中文字幕高清| 伊色久人大在线| 亚洲人在线成线成人| 天天干人妇| www.av在线视频| 91人妻最真实刺激绿帽| 无码精品久久久久久亚洲| 一本色道久久综合精品婷婷| 亚州精品人妻一二三区| 老熟女综合网 | 日本黄大片在线观看视频| 九t超碰| 黑人性欧美| 欧美性五月| 97精品97久久| 午夜久久久| 限制级中的三级片中的黑粗大屌屌日人妻熟女| 久久久久久久久久久999| 嗯嗯啊啊啊好舒服| 96国产污污污丝袜| 久久精品一区二区三区蜜桃臀| 九九碰九九爱97超碰| 蜜桃视频精品一区二区| 欧美亚洲宗合色性图| 性暴力欧美猛交在线直播| 囯戸精品高潮呻吟旡码| 亚洲欧美日韩不卡人妻| 欧亚 另类 久| 国产无马在线| 欧美区亚洲区偷拍区 | 国产精品无套内谢| 日语五十路和六十路亚洲国产精品 | 欧美综合区| 色色综合网站| 嗯啊不要啊啊在线观看视频| 东京热大香焦| 水多多映视AV| 久久久国产成人一区二区三区在线| 人妻精品一区二区在线| 日韩国产品视频中文字| 亚洲少妇视频| 国产乱人伦AVA麻豆软件.| 亚洲成人免费电影| 老女人碰碰在线碰碰视频| 欧美色亚洲色| 韩国黄片aaaa| 1区2区3区中文字幕日韩| 欧美精品系列| 日韩人成网站在线播放| 亚洲自拍一区夜夜操| 懂色aV一区二区天美传媒| 极品销魂美女一区二区| 国产一区二区三区中文字幕| 97一区二区三区视频| 欧美色图 色综合图| 一级@啪啪视频| 九九热视频在线观看| 加勒比性爱成人在线| 啊啊啊啊操死我| www.亚洲黄色| 五月天激情网图片| 熟妇女伦乱视频| 殴美在线AⅤ| 好吊色一区| 91内射| 美女黄色一级A视频| 国偷自 一区二区| 亚洲欧洲日韩天堂av| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 国产黄色小视频网站| 在线免费观看高清无码视频| 亚洲精品日日夜夜52| 深喉吞精| 色综合色欲色综合色综合色综合| 91视频综合在线| 插入逼91| 青青青在线高清视频在线一二三四区| 日本99视频| 亚洲天堂少妇| 97超碰美国| 欧美日韩*字幕一区| 国产不卡片| 欧美精品69性爱| 中文乱码99| 亚洲 暴爽 AV人人爽日日碰| 啊啊啊啊啊啊啊国| 国产成人无码网站在线视频| 中文字幕久久婷婷丁香五月天| 日韩不卡一二三四| 九九九九一级| 亚洲国产综合久久久性感熟妇| 色官网色综合| 中国国产精品一区视频| 国产日韩欧美亚洲精品95| 欧美se综合| 亚洲自拍青操视频| 中文字幕伊人| 狠狠操狠狠燥| 天天夜夜久久| 亚洲吊色| 蜜桃久久精品一区二区三区| 国产 码在线成人网站| 国产成人午夜视频网址| 亚洲无无码αⅴ每日更新| 欧美综合另类| 襙一襙| 嗯嗯嗯啊啊在线观看| 青青草日本中文字幕| 亚洲日韩视频二区| 草莓精品视频在线免费观看| 国产高清无码一区三区二区| 国产精品一区av在线| 一级岛国大片| 亚洲国产精品99久久久| 天天懆天天日| 手机在线看片免费人成视频| AV九九| 精品婷婷| 日韩人妻精品中文字幕| 久久青娱乐| 91亚.色| 果冻传媒A片一二三区| 日韩毛片9| 96麻豆精品一区二区三区| 夜夜欢天天干| 国产精品宅男免费| 国产农村一一级特黄毛片| 国产自偷自拍一区| 中文字幕精品久久久久人妻红杏ⅰ| 伊人四虎综合| 91亚洲欧美| 99婷婷一区二区| 大香网站| 91啪9色| 9久精品视频在线观看| 97神马久久| 91视频伊人| 欧美在线播放aaaa| 五月丁香婷婷色| 97国产色图| 9Ⅰ超碰| 日韩国产乱子伦App| 福利风月五月天影院| 国产熟女免费观看久久| 亚洲麻豆精品二区三区| 久久九九精品一区二区| 在线一道啪| 国产精品久久久亚洲一区| 亚洲黄a三级三级三级看三级| 天美传媒精品一区二区三区| 久久久111| 日韩成人高清一区二区| 色优久久| 欧美色图20p| 强奸乱伦大香蕉网| 九九自拍伦理| 久草网站免费在线观看| 狠狠色一区二区中文字幕| 久久久性爱| 国产一区二区三区影片| 久久九精品| 久久久久久国产成人| 欧美一级欧美三级在线观看| 亚洲乱码精品一区二区| 长长久久免费视频| 狠狠爱大香蕉| 日韩中字av一区| 手机在线大香蕉| 色综合91| 99久久国产精品免费高潮| 97久久精品亚洲| 一起草在线视频| 亚洲精品一区二区三区新线路| 精品一区二区三区麻豆| 青草视频人妻在线观看| 欧美性爱一级操| 日韩乱插| 国产白丝精品在线观看| 另类av天堂| www.久久最新地址| 美女丝袜激情小说| 国产自偷自拍一区| 97久久网| 夫妻AV网站| 中文字幕一区二区三区视频播放| 97超碰超碰| 亚洲免费精品一区| 国产一级不卡在线观看| 天堂性色| 超碰97人人乐| 精品人妻视频一区二区三区蜜桃视频| α√在线| 久久狠狠色噜噜狠狠狠狠97| 蜜桃狠狠色伊人亚洲综合 | 日本不卡二区| 综合视频91| 99热这里只有精| 伊人专区一区二区三区| 亚洲天堂情色| 欧美成人精品一区二区三区| 狠狠爱综合网| 亚洲国产尤物yw在线观看| 精品国产乱码久久久久久久久久毛片| 亚洲乱色视频一区、二区在线| 入口操逼网站| 国产二区三区免费视频| 丁香五月AV| 久久精品高清AV| se吧提供国产乱老熟视频胖女人 | 久久9久| 久久亚洲色图中文字幕| 91伊人影视综合| 亚洲人妻一区二区三区| 亚洲精品成人激情在线| 亚洲五码一区二区三区| 欧美的性爱网站免费| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 久久男人的天堂| 伊人久久AV诱惑悠悠| 久久天堂网| 蜜桃在线观看一区二区三区| 超碰在线人妻不卡| 亚洲av热热色| 精品九九九九九九九九九| 99丝袜福利在线播放| 加勒比无码一区二区三区| 中国国国产一级特黄毛片| 自拍视频一区在线观看| 美女国产一区二区久久| 久久亚洲AV无码专区国产精品| 欧美黄色手机在线观看| 青青五月天| 欧美人妻制服| 中日韩免费看男女操逼大全| 国产精品亚洲色婷婷久久久| 夜夜天天噜狠狠爱2021| 日韩一性一交一A片俄罗斯| AV不卡在线| 乱论91| 人人看人人摸人人色| 在线啊v一区| 成人麻豆av电影网站| 久久久无码av精| 丁香五月电影| 亚洲美女精品| 超碰天天操| www.成人无码| 亚洲av性爱电影| 天天操夜夜嗨| 91一起操| 综合熟女| 黑人中出21连凳花野真衣| 91天天综合网,天天综合网| 国产精品熟妇一区二区三| 精品久久艹| 欧亚韩国999| 大色综合| 99久久久久| 麻豆天美传媒在线视频天堂| 日韩在线观看AV| 日韩在线一区二区| 特污免视频| 99在线视频播放| 国内毛片四区| 一级二级三级黑人无码| 美女诱惑爱爱| 欧美色图片欧美色图| 国产精品懂色tv影视免费观看| 青娱乐国产精品| 大香蕉在线86| 天久久久噜噜噜久久国产精品爽爽| 日韩精品 视频一区二区| 色妹子A V| 亚洲图片偷拍欧美| 久久亚洲国产成人| 天美国产精品| 91bbb| 五月婷在线| 欧美亚州色的图| 最新无码国产| 美腿色图| 一区二区三区亚洲| 国产农村妇女精品1区二区| 麻豆精品.欧美精品.日韩精品.| 激情久久av一区av二区av| 99re在线视频国产| 男女激烈网站最新| 亚洲情色在线| 伦伦成年午夜免费视频| 欧美超碰人妻97| 久久亚洲中文字幕视频| 大香蕉国产中文自拍| 东京太热男人的天堂久久久| 色综合av男人天堂| 97天天弄| 最新中文字幕在线亚洲| 97超碰影音| 日本肉体xxxx裸交| 丝袜美腿操av| 自拍盗摄一区| 午夜偷拍久久熟女| 亚洲男人天堂2017| 一区二区三区四区五区高清无码永久视频 | 色在线视频导航| 久久久久元码视频| 丁香九月激情啪| 尤物视频视频官网| 久久久专区| 9久久精品| 国产精品白领在线观看| 大香交| 亚洲射综合网| 成人精品在线| 激情抓乳插进去啪啪啪日韩| 日本黄色精品| 偷拍综合亚洲| 99色悠悠| 中文字幕一区二区三区视频播放| 91夜色| 日本不卡一区二区三区| 亚洲色图在线视频| 天天拍天天操| 国产又操| 国产剧情AV不卡在线观看| 97精品久久久久久久| 青椒国产97在线熟女| 99人妻| 碰超人人在线一区二区三区| 久久九九一区二区三区成人| 久久久九97| 国产精品一区二区黄片| 中文字幕aⅴ在线视频| 91美女在线观看| 日韩精品人妻中文字幕不卡乱码| 狠狠操狠狠燥| 亚洲熟女乱色一区二区三区久久久| 午夜精品99久久久久传媒| 欧美顶级黄片AAAAA在线免费看| 成人一级性爱| 免费看A片毛毛片在线播| 四虎国产精品永久在线囯在线| 熟妇视频一区二区三区在线| 麻豆视频一区二区| 欧美性91| 亚洲九九九| 亚洲国产另类在线中文| 亚洲美女AV无码| 国产乱子伦久久精品综合一区二区三| 亚洲色欧美| 加勒比综合| 日本一道在线播放高清| 91丝袜在线观看| 国产精品白领在线观看| 1000部熟女视频在线观看| 欧美岛国精品在线观看| 一级黄色视频网| 无码操逼网| 人妻精品一区二区在线| 天天操综合网| 亚洲国产剧情少妇激情| 久久精品夜色国产亚洲AV| 中文字幕在线2| 密臀在线视频| 免费视频在线一区二区不卡| 国产精品久久久久无码A√| 亚洲成?V人片在线观看福利| 91狠狠综合久久久久久| 国产视频一区二区在线观看| 天美传媒AV国产在线| 一区二区三区四区免费视频| AV和黑人在线播放| 亚洲精品天天影视综合网 | 一线黄色免费性爱片| 新视频sss国产| 第四色奇米影视777| 中文久久96| 99日精品欧美国产| 九九九九国产| 嗯嗯啊啊好疼| 强奸乱亚洲| 99re免费| 午夜毛片高清免费不卡| 狠狠综合| 久久精品人人做人人看| 国产免费一区| 猛交交| 欧美一区二区三区互相| 日韩精彩视频| 欧美亚男人的天堂| 人人人人插| 精品传媒在线一区| 天美精品一区二区三区四区在线观看| 亚洲日韩国产欧美综合v| 欧美 亚洲精品首页| 综合亚洲情色| 啪一啪免费视频| 久久精品店| 98福利在线视频| 男人的天堂网免费| 亚洲精品国产专区在线观看| 欧美性爱超碰97| 欧美另类自拍| 大奶啊啊好爽 | 国产青视频| 国产女人91精品嗷嗷嗷嗷| 国产呦精品系列在线观看| 性欧美精| 欧美黄色图片| 97色在线| 欧美国产伊人久久久久| 精品久久无码午夜福利| 热热色国产一二区AV| www.四虎在线| 凹凸视频特色日本特黄| 亚洲一级性爱视频免费看| 91制服丝袜中文字幕| 天天插天天操天天摸天天射天天看| 玖玖视频在线资源一区二区三区| 国产熟女免费观看久久| 中国农村熟妇毛片视频| 东京热毛片177b2viP| 韩国嫰模上门援交视频| 天天舔九色婷婷| 狠狠久久亚洲欧美专区| 国产精品一区二区 尿失禁| 国产精品99精品视频网站| 99夜夜操| 黑人性暴力毛片| 久久久久久久久久黄色网| 欧美中出1| 国产v片在线免费观看| 国产99热| 偷偷人人精品女女久久| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 大香蕉综合| 激情六月天| 久久精品国产免费观看99| 波多野结衣一级视频| 日本在线观看网址| 少妇色| 国产视频第二页| 亚洲熟妇熟在线电影视频| 五月丁香六月| 人妻久久久| 色99视频| 综合色啪| 久久曰曰| 开心婷婷五月| 中文字幕 人妻不满 在线视频| 国产激情av女片自拍| 精品偷拍13p欧美dodk视频| 久操操AV电影| а√天堂资源官网在线资源| 色在线视频导航| 亚洲久久久| 国产吹潮女在线观看| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 极品后入免费视频| 美欧老女人97| 欧洲精品久久| 久久久精品中文字幕麻豆| 乱子伦一区二区三区国产精品| 欧美另类色| 黑丝少妇麻豆| 亚洲综合图文| 国产成人亚洲精品无码古代早漏男| 综合欧美亚洲| 另类图片天天影视| 熟妇综合一区二区三区| 免费观看性欧美一级| 国产精品4p在线观看| 操操操五月天婷婷丁香影院| 欧美激情性爱视频网站| 国产人妖视频一区在线观看| 亚洲av淫乱| 两性综合网| 久热99| 又大又黄国产| 欧美白嫩女HD| 999熟女精品| 欧美亚洲特P| 成人五月天丁香激情综合| 免费视频在线一区二区不卡| 日韩在线一区二区| 男人的天堂一区三区| www.狠狠操| 亚洲中文电影| 久久精品女同亚洲女同13| 密臀在线一区尤物| 国产精品探花色| 丁香婷婷九月| 亚洲棕合电彰| 欧美91网| 777AV电影| 亚洲色五月| 国产精品高潮久久AV| aV中文麻| 国产精品亚洲天堂网址| 加勒比大香蕉视频在线| 另类视频在线| 深夜福利黄片| 女人被添高潮免费视频| 熟女天天干| 一区二区影视| 亚洲精品aa久久伊人| 蜜桃精品一区二区三区ww| 欧美色图自拍| 日本 色 导航| 日韩精彩免费| 精品国产乱码久久久| 欧美日韩亚洲一区二区在线观看| 九九毛片这里只有精品| 中文字幕欧洲有码| 精品少妇人妻av久久免费| 日韩在线视频1234| 色老大| 亚洲一卡2卡3卡4卡乱码网站| 欧美专利1区2区3区4区5区免费| 97在线免费公开视频| 国产日韩精品人妻久久久久色欲网站| 久操九九九九| 唯美清纯 妖精视频| 日本一区二区不卡精品| 艳尻美人妻| 女人精品内射国产99| 99色色网| 快播久久人人aV| 91成人久久| 中文字幕78| 综合伊人激情| 久久人人妻| 日本久久超碰| 欧美一级三级| 男人的天堂99| 亚洲成人网站在线观看| 天天综合~91| 丝袜熟女一区二区三区| 热热色色综合| 日韩探花精品在线视频| 亚洲精品 欧美精品| 国产精品探花色| 黄色高清久久无码依人| 91av熟女人妻| 日本精品人妻少妇一区二区| 91天天综合| 久久婷婷国产一区二区色| 91天堂| 丁香激情五月天| 欧美激情 亚洲色图| 国产欧美日韩在线不卡第一页| 天天天做天天天爱天天天爽| 爆操无码| 加勒比无码毛片| 91啪啪视频| 大香蕉日韩| 青青草中文-久久青草精品一区二区三 | 爱爱60秒免费视频| 天天92av| 国产精品久久发布| 人人看黄色视频| 久草资源在线视频官方总站日韩丝袜美腿| 国产午夜福利专区综合| 国模不卡一本二本三电影| 影音先锋少妇| 丝袜狠狠草尤物 91| 蜜臀操逼黄色视频操的好爽| 精品少妇高潮久久| 人妻熟女字幕一区二区| 日韩av无码网站| 久久精品72| 日韩精品人妻一| 天操天操夜操夜月操月年年操操| 欧美十八禁在线看| 欧洲亚洲少妇| 美女的肌被草喷水视频| 精品视频免费在线一区| 国产精品午夜精品| 欧美后进式| 色欲Av人妻精品一区二| 天天射夜夜| 日韩中文字幕二区| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 久久亚洲影院一区二区| 日韩在线欧美精品一区二区| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 色色热| 欧美一区二区三区不卡高清视频| 亚洲熟女乱熟乱熟妇综合网二区| 国产69精品久久久久99尤物| 日韩99999| 久久久久久91香蕉国产| 日韩精品亚洲专区在线影视| 超碰人妻久久| 九一精品牛牛一区二区| 久久久97| 欧美色www亚洲国产阿娇要播| 91黑丝美女| www.色操逼| 网站A V在线| 97在线观看免费| 精品福利视频| 欧美激情久操网| 91综合国产精品| 无码137片内射在线影院| 五十路三区在线| 日本1区2区不卡视频| 日韩欧美aⅴ综合网站发布| 99这里只有精品| 天天插天天插| 国产日韩在线播放av| 久九九九九九九九热| 亚洲 图片 欧美 色图| 5月婷婷6月六月丁香| 一区在线精品中文字幕| 日韩欧美蜜桃精品久久中文字幕久久 | 亚洲天堂资源| 婷婷伊人一区| 9l视频自拍9l九色成人| 亚洲图片激情综合另类| 大奶的诱惑| 蜜臀无码一区二区| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 亚洲涩图欧美| 囯产精品久久久久久久久久梁医生 | 欧美亚洲清纯| 天美传媒国产原创中文字幕亚洲欧美另类 | 69精品久久久久中文字幕| 日本操逼视频在线| 欧美综合色图网| 内射卯月麻衣| 蜜臀AV成人精品蜜臀AV久久| 五月丁香啪| 亚洲日韩国产欧美综合v| 日本性交操一区二区不卡系列| 欧美日韩色| 啊啊啊啊啊舒服| 91欧美美女日韩国产婷婷| 91狠| 超碰99在线观看| 久久亚洲AV成人精品无码| 日韩 国产 欧美自拍| 久久久久久久| 97网站在线观看 | 国产精品一二三区18| 国产一区在线看| 人妻少妇精品无码专区二区密桃| 国产白丝在线| 九九热这里只有在线精品视 伊人草 成人菠萝蜜视频在线观看 | 最新中文字幕av| 青青草在线视频播放器| 一级特级aaaa毛片免费观看 | 韩国一区二区精品亚洲| 91综合网在线| 五月天激情国产综合婷婷婷| 91热色| 亚洲精品欧洲精品| 亚洲精品欧美专业| 国产老熟女| 强奸少妇AV导航网| 老鸭窝亚洲毛片| 亚洲美乱| 狠狠久久四虎| 日韩三级网址| 熟妇视频一区二区三区在线观看| 91美女在线精品视频| 欧美制服网站美腿丝袜| 天天透伊人| 蜜色网色哟哟| 欧美专利1区2区3区4区5区免费| 国色天香av| 天天肏美女| 亚洲色欲一区二区三区| 青青草吊丝| 午夜精品久久久99| 天堂在线一区二区| 国产精品久久久999| 久久AV色| 国产精品一区二区麻豆| 91中出在线| 欧色网址| 天天澡天天爽日日AV| 日韩特级毛片免费观看全集| 韩国三级一线观看久| 青青免费在线视频一区 | 午夜天天碰综合视频| 91在线美女| 欧美老妇女内射网址| 1024手机看片欧美日韩| 夜夜爽夜夜摸夜夜操免费视频| 亚洲激情欧美色图| 六月丁丁香| 欧美激情精品久久久久久| 小草精彩毛片| 久久五月天婷婷丁香中文字幕| 日韩黄色小说| 亚洲av在线免费观看| 国产精品露脸在线观看| 日本加勒比无码专区一二三| 国产强奸乱伦第1页| 999久久久国产精品| 日本成a人v网站在线观看| 翔田千里无码中出中文字幕| 欧亚乱色熟女一区二区| 依人大香蕉| 中文字幕在线观看AV| 91黑丝美女| 极品出轨视频网站| 伊人操| 免费观看国产小粉嫩喷水精品午| 成人网站 免费观看| www.婷婷| 人妻 欧美 中文| 99色热| а√天堂资源官网在线资源| 欧美操逼熟女| 日本狠狠干| 久久欧洲| AV女资源| 一区二区免费电影久久| 国产亚州日韩欧美看片| 999久久久九| 另类专区加勒比| 亚洲另类天堂| 岛国AB视频| 色综合一区二区三巨| 美女干逼2| 久久超碰日韩精品| 国产精品久久久久中文字幕| 日产狠狠干| 91路www| 亚洲超碰97| 国产熟女乱论| 德国一二三不卡| 天天操福利视频综合网站| 一中国女人毛片水真多| 色香色欲天天综合网天天来吧| 快点操死我| 9久9久| 在线a v| 欧美高清无码免费视频高清版| 少妇天堂| 亚洲 欧美 日韩另类 麻豆| 91日产欧美| 欧美一级欧美三级在线观看| 69超碰综合| 综合色播| 欧美很很操视频| 婷婷午夜成人色中色| 蜜臀久久久久久999| 中出人妻中文字幕91在线| 在线观看一级α片刺激高潮视频| 婷婷99狠狠躁天天躁| 欧美色自拍| 26uuu成人影片| 91oumei| 97精品一区二区视频在线观看| 国产一区二区三三视频| 色综合98| 91精品导航| 欧美视频中文字幕区| 亚洲男人的天堂网| 亚洲日韩久久精品一区| 无码久久国产| 又黄又爽在线观看视频| 91狠狠狠| 日韩视频啪啪| 欧美大片一区二区三区| 伊人五月天婷婷| 免费看美国人人爽,人人操| 欧美欧美少妇| 曰韩av中文字幕专区| 欧洲亚洲综合| 一级特级aaaa毛片免费观看| 精品亚州18| 中文字幕黄片在线| 九九九综合精品| 国产精品自拍视频| renqi久久久久久久久久久久| 插插综合网天天影视网| 欧美性爱伊人| 十八禁电影伊人网| 成人 日本A片无码8888| 啊啊啊啊啊,啊啊啊啊好舒服,操我舒服啊啊啊 | 99久久e免费热视| 日欧毛片久久| 丰满人妻一区二区三区四区| 天天操天天舔| 97视频在线看| 欧美五十路熟| 凸凹视频在线观看| 五月天色五月| 德国一二三不卡| 国产乱码精品久久久久久| 插入粉嫩少妇视频| 91无码精品| 国产夫妻性生活视频| 欧美国产精品| 一本久久精品中文字| 国产大学生口爆吞精合集| 风月影院男女十八禁| 美国日韩黄色片| 一本色道久久综合狠狠操| 大香蕉丝袜一级片| 网友自拍第1页| ′ !γ}丶。。久久精品欧美一区二区三区| 啊啊啊免费| 伊人97色天使| 中文人妻av高清一区| 天天综合网~91入口| 亚洲色图殴美色图激情乱伦| 久久久涩| 青娱乐 成人娱乐在线| 国产强奸AV在线| 日韩人妻精品中文字幕| 黄色小视频日本txt| 一二区在线观看视频| 男人的天堂啪啪啪啪啪蜜桃不卡| 97视频在线看| 欧美色天堂网在线视频| 亚洲人妻中文高清| 亚洲精品国产拍免费91在线| 在线观看AV不卡| 浓厚中出中文字幕在线| 欧洲大香蕉| 激情五月婷| 久久伦理视频久久大香蕉视频| 人人操人人操草草| 日本大香蕉综合网| 免费人人搞97| 亚洲国产麻豆一区二区三区| 欧美日韩久久精品爱爱| 色好看av| 最新国产亚洲精品精品国产亚洲综合 | 久久直播国产| 好湿好紧视频| 精品十三区| 亚洲国产成人7777| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 亚洲熟女乱色一区二区三区 | 91搞逼视频| 日韩干B| 啊a一区在线| 91久久精品中文字幕| 青娱乐黄色录像| 日韩99神马视频片| 国产亚洲综合欧美一区| 日本操逼aaaaa| 亚洲男人天堂视频| 好湿好紧好爽 视频| 高清无码 国产精品| 特色a在线上| 欲女人妻性色av| 色妺妺在线视频| 免费A V在线播放| 久久9久| 欧美精品,四区。五区| 嗯啊啊啊轻点视频| 日本道久久综合色色| 免费在线看黄片av| 久久精品91| 裸体女人草逼视频播放一区,二区,三区,四区,五区 | 亚洲aV性爱| 老熟女乱伦一区| 1024精品在线| 欧美人妻中出| 精品国产少妇高潮视频| 午夜理论片在线观看免费| 国产日韩精品suv| 噜噜噜噜天天狠狠| 亚州熟妇精品| 亚州操操穴网| 久操精品网| 免费亚洲黄色视频在线观看| 久草加勒比一区在线| 日韩欧美天堂| 欧美日韩国产电影| 熟女人妻av在线资源,黄色的资源| 亚洲精品亚洲人成在线麻豆| 清清草影| 国产天美欧美| 久久婷婷亚洲| 成人八戒网站| 无码操逼视频一下| 丁香九月婷婷| 中文三一区| 国产综合永久精品日韩鬼片| 日韩一999精品| 在线播放成人高清免费视频| 97这里都是精品| 午夜操逼不卡| 美女黄码视频午夜| 久久国产逼| 国产精品久久久午夜夜伦鲁鲁| 亚州综合色图| 超碰 av 女人天堂| 国产精品久久久视频| 防屏蔽在线视频| 亚洲超碰在线| 自拍偷拍2025在线观看| 93人人操人人| 波多野结衣一级视频| 午夜福利一区二区影院| 国产一区二区三区高清视频| 香蕉视频精品亚洲一区二区三区在线播| 职场同事知名国产国产精品久久欧美日韩 | 国产精品电影推荐| 四虎AV影视国产精品亚洲精品| 国产欧美一区二区| 奸色色 男人天堂 天天射| 日本三级黄页| 五月激情天| 色五月婷婷五月天| 丁香六月天| 激情文学网伊人| 丝袜美腿诱惑亚洲欧美视频在线观看| 久热大香蕉| 久久大香蕉| 五月丁香亭亭| 男人的天堂2010| 亚洲综合小说另类图欧美视频激情小说色五月天 | A级国产欧美激情在线| 秋霞怕怕片| a片自拍直播视频| 亚洲日韩av专区无码| 国产高清视频无码在线| 岛国片在线视频网站| 中文字幕日韩人妻视频| 精品中文字幕一区二区| 国产91乱伦| 97日韩欧美亚洲| 国产一级片| 欧美日韩不卡a片| 啊啊啊啊好爽好舒服一区二区易域| 成人天天看站长推荐| 五月天婷婷久久| 操逼片国产| 超碰97护士| 国产精品色约约| 黄色小说亚洲| 婷色五月| 91社操逼| 偷窥自拍亚洲| 美女爽爽爽刺痛洞洞| 清纯唯美亚洲另类| 96久久久| 国产日韩精品无码去免费专区国产| 911av网站免费观看| 亚洲制服欧美另类内射| 99色在线观看| 日本熟女不卡视频| 久久久久久久久久久97| 第45页一区二区| 日韩欧亚中文在线| 欧美日韩精品青青| 久久久久久久| 麻豆国产精品午夜视频| 国产亚洲精品农村妇女| 成人国产精品三级A片| 美中韩AV综合网| 久久精9| 人妻人久久精品中文字幕| 欧美懂色综合网| 丰满人妻一区二区三区性色| 91人妻尻屄视频| 男人亚洲91首页在线| 青草香蕉网| 性高潮久久久| 亚洲 欧美 精品专区 极品| 干日本人少妇午夜寂寞影院| 五月婷婷性爱| 75大香蕉| 日韩日韩日韩-国产乱码精品一区二区| 老熟女网站| 综合在线导航一区| 丰满人妻一区二区三区| 五月婷婷hd| 99热这里只有精品1| 国产资源中文字幕在线| 亚洲综合精品国产一区| 麻豆 欧美 日韩| 日产成人久久| 在线视频 亚洲精品| 天天干天天操天天干天天操| 天天日日舔舔| 国产精品动态一区二区三区四四| 精品久| 91黑丝在线播放| 92福利社视频| 97超碰jingpin| 欧美v日韩欧亚洲电影天堂色诱,国产传媒| 99色综合| 又黑又大又粗| 欧美人妻精品| yirendaxiangjiashipin| 福利偷拍视频-中文字幕2019国语完整视频大全-S91AV | 少妇精品久久久| 成熟熟女国产精品一区二区| 欧亚乱色熟一区二区三四区| 九九九九精品一区| 福利视频合集| 人人考人人摸人人干| 亚洲自拍一区夜夜操| 精品久久久久久久| 在线人人人人人人精品超| 五月婷婷hd| 色妇综合网| 91在线无码精品秘 软件| 秋霞一区二区三区四区五区六区七区| 精品人妻丰满熟妇一区二区三| 高清无码 国产精品| 91色爽欧美| 伊人91| 久久9视频| 九九国产| 久操操AV电影| 91九久| 激情一区二区| 久久久国产成人一区二区三区在线| 亚洲欧洲久久天堂| 色在线视频导航| 99国产人成精品| 风间由美日韩欧美久久| 熟女人妇一区二区三区| 性性欧美| 飘花国产午夜精品不卡| 人人色人人射人人妻| 亚欧美色| 天天综合色| 欧美色蜜桃97| 国产成人精品日本亚洲语言| 中文字幕jul-617人妻熟女| 美女干逼2| 久久久久久亚洲Av无码| 亚洲91亚洲| 20cm女自慰在线日韩欧美| 人人妻人人操人人乐| 上特色A在线|