九九热九九I在线观看i国产女优视频i中文字幕人成高清i欧美亚洲日本一区二I久久久久acI伊人在线视频网站I久久久久IVI中文字幕永久有效I9爱在线观看一区I久久鲁一鲁I国产精品98I天天综合网7799I大香蕉资源站I真人高清无码

zhang2601312
級別: 探索解密
精華主題: 0
發帖數量: 26 個
工控威望: 128 點
下載積分: 859 分
在線時間: 20(小時)
注冊時間: 2016-08-16
最后登錄: 2025-06-30
查看zhang2601312的 主題 / 回貼
樓主  發表于: 2025-06-12 20:48
圖片:
圖片:
圖片:
圖片:
圖片:
圖片:
圖片:
用的用戶自由通訊發送和接收功能塊。發送功能塊對下發送了一個讀取報文(01 03 00 12 00 04 EC 0C)然后就出現了一個問題。就發送這個報文讀取4個字節數據時接收的數據是沒問題的。但是我想多讀取幾個數據發送(01 03 00 12 00 10 EC 03)的話接收到的報文就和圖片1一樣亂的。這是為啥呢。問了論壇好多高手的意思估計是接收功能塊設置問題。但是我仔細看了幫助幾個模式(ADHOC設置位1或者0)都測試過了還是沒用。求助各位高手幫忙看下。十分感謝。PS:報文沒問題
http200
級別: 正式會員
精華主題: 0
發帖數量: 17 個
工控威望: 62 點
下載積分: 338 分
在線時間: 10(小時)
注冊時間: 2024-12-23
最后登錄: 2026-03-19
查看http200的 主題 / 回貼
1樓  發表于: 2025-06-16 00:41
開放式tcp亂序是因為發送字節數和接收字節數對不上,不足接收字節數的就會被plc先緩存起來
樓主留言:
對的對的,接收區的字節數設置少了,然后數據存儲位不夠的話就會從頭開始。所以看起來就像亂了一樣
http200
級別: 正式會員
精華主題: 0
發帖數量: 17 個
工控威望: 62 點
下載積分: 338 分
在線時間: 10(小時)
注冊時間: 2024-12-23
最后登錄: 2026-03-19
查看http200的 主題 / 回貼
2樓  發表于: 2025-06-16 00:42
前幾天測試開放式tcp也遇到一樣的問題,問deepseek和chatgpt解決的
樓主留言:
我也查了deepseek但是沒給有用的答復,可能是我的問題沒闡述清楚
http200
級別: 正式會員
精華主題: 0
發帖數量: 17 個
工控威望: 62 點
下載積分: 338 分
在線時間: 10(小時)
注冊時間: 2024-12-23
最后登錄: 2026-03-19
查看http200的 主題 / 回貼
3樓  發表于: 2025-06-16 00:42
您遇到的數據順序錯亂問題是由于**TCP協議本身的無邊界性和PLC緩沖區處理機制**共同導致的。以下是具體原因和解決方案:

---

### **問題根源分析**
1. **TCP流式協議特性**  
   TCP是字節流協議,不保證應用層消息的邊界。若客戶端快速連續發送多組數據,PLC可能將多次發送的數據合并到同一接收緩沖區(如網絡延遲或PLC處理速度慢時)。

2. **PLC緩沖區覆蓋機制**  
   S7-1200的`TRCV`指令默認采用**循環緩沖區**(FIFO機制)。當新數據到達時,會從緩沖區的當前指針位置開始覆蓋舊數據,導致看似"亂序"。

3. **字節對齊差異**  
   如果客戶端發送時未顯式指定字節序(如大端/小端),而PLC默認按大端序解析,可能引發分段錯誤(但您的案例中實際是整體偏移,非字節反轉)。

---

### **解決方案**
#### **(1) 顯式定義應用層協議**
在數據包中加入**幀頭**和**幀尾**標識,例如:
```plaintext
[頭標識:0xAA][數據長度:1字節][數據:N字節][校驗和:1字節][尾標識:0x55]
```
PLC側通過循環檢查緩沖區匹配完整幀后再處理。

#### **(2) 修改TRCV參數配置**
```pascal
TRCV(
    REQ     := TRUE,        // 持續使能
    CONT    := TRUE,        // 保持連接
    DATA    := #ReceiveBuf, // 接收緩沖區
    LEN     := 20,          // 預期接收長度
    RCVD_LEN=> #ActualLen,  // 實際接收長度輸出
    BUSY    => #BusyFlag);
```
關鍵點:
- 設置`LEN`與發送方嚴格一致(您已設為20字節)。
- 監控`RCVD_LEN`確認每次接收的實際字節數。

#### **(3) 強制單次接收同步**
在客戶端每次發送后增加延遲(如100ms),或通過PLC程序控制:
```pascal
IF #FirstReceive THEN
    TRCV(REQ := TRUE);      // 首次觸發
    #FirstReceive := FALSE;
ELSE
    TRCV(REQ := NOT #BusyFlag); // 上次接收完成后再請求
END_IF;
```

#### **(4) 使用`TRCV_C`替代`TRCV`**
`TRCV_C`集成連接管理,可減少緩沖區沖突:
```pascal
TRCV_C(
    CONT    := TRUE,
    LEN     := 20,
    DATA    := #ReceiveBuf,
    RCVD_LEN=> #ActualLen);
```

---

### **您的數據案例分析**
- **原始發送數據**(16進制):
  ```plaintext
  15 3E 14 24 54 26 4E 28 51 29 53 AA 56 B0 2D 2D 5C 75 2F C8
  ```
- **PLC接收數據**:
  ```plaintext
  2D 2D 5C 75 2F C8 15 3E 14 24 54 26 4E 28 51 29 53 AA 56 B0
  ```
  **現象解釋**:  
  數據被**環形偏移6字節**,說明PLC緩沖區中殘留了之前未及時讀取的6字節數據,新數據從緩沖區第7字節開始寫入,形成"拼接"效果。

---

### **終極調試建議**
1. **清空緩沖區**  
   在建立連接后、首次接收前,調用`TRCV`連續讀取直到`BUSY`=FALSE,丟棄舊數據。

2. **Wireshark抓包驗證**  
   過濾PLC的IP和端口,確認客戶端是否真正按預期順序發送(排除調試助手本身問題)。

3. **PLC側診斷**  
   在線監視`TRCV`的`RCVD_LEN`和`STATUS`,正常時應返回`16#7000`(無錯誤)。

4. **代碼示例(清空緩沖區)**  
```pascal
// 初始化階段清空緩沖區
#TempBuffer := ARRAY[1..100] OF BYTE; // 臨時緩沖區
WHILE TRUE DO
    TRCV(
        REQ  := TRUE,
        DATA := #TempBuffer,
        LEN  := 100,
        BUSY => #IsBusy);
    IF NOT #IsBusy THEN EXIT; END_IF;
END_WHILE;
```

---

通過以上方法,您應該能解決數據錯序問題。如果仍有異常,請檢查:
- 客戶端是否啟用了Nagle算法(建議禁用)
- PLC的OB1循環時間是否過短(建議≥50ms)
- 是否有多余的`TRCV`調用覆蓋了緩沖區
樓主留言:
謝謝回復解答

主站蜘蛛池模板: 福利在线免费观看 | 国产成人啪精品视频免费视频 | 国产女厕所盗摄老师厕所嘘嘘 | 久青青视频在线观看久 | 黄毛片在线观看 | 和岳每晚弄的高潮嗷嗷叫视频 | 国产办公室无码视频在线观看 | 玩弄放荡人妻一区二区三区 | 特级西西444ww大胆视频 | 新呦u视频一区二区 | 狠狠色丁香久久婷婷综合蜜芽五月 | 亚洲成av人片无码bt种子下载 | 优优人体大尺大尺无毒不卡 | 99久久人妻无码精品系列 | 亚洲小说区图片区色综合网 | 57pao国产精品一区 | 国产成人av大片大片在线播放 | 免费看片免费播放国产 | 精品久久久久久中文字幕无码软件 | 无码免费一区二区三区免费播放 | 免费观看18禁无遮挡真人网站 | 97香蕉久久超级碰碰高清版 | 人妻丰满熟妇av无码在线电影 | 日本真人无遮挡啪啪免费 | 国产成人亚洲综合色就色 | 亚洲七七久久桃花影院 | 99爱国产 | 国产乱人伦真实精品视频 | 老牛嫩草一区二区三区消防 | 国产精品成人免费视频一区 | 日本高清色倩视频在线观看 | 男女无遮挡猛进猛出免费视频国产 | 国产精品福利一区二区三区 | 大杳蕉狼人伊人 | 在线观看日韩精品视频 | 玖玖玖香蕉精品视频在线观看 | 末世极度乱淫h | 91av 视频| 久久久久综合精品福利啪啪 | 欧美孕妇变态重口另类 | 女同性恋毛片 | 久久久久青草线综合超碰 | 亚洲精品久久久久久久久久久 | 国内精品久久久久久久久电影网 | 高潮潮喷奶水飞溅视频无码 | 3344永久在线观看视频免费 | 正在播放的国产a一片 | 国产日韩欧美精品一区二区三区 | 新婚之夜疯狂做爰视频一区二区 | 日韩成人av一区二区 | 欧美久久一区二区 | 黄页网址大全免费观看 | 一二三四在线视频观看社区 | 欧美成人一级视频 | 国产在线一卡2卡三卡4卡免费 | 成人h动漫精品一区二区器材 | 日本黄色美女网站 | 国产又大又黄的视频 | 91色乱码一区二区三区 | 精品97国产免费人成视频 | 午夜精品极品粉嫩国产尤物 | 影音先锋在线视频资源 | 成人国产三级在线观看 | 男女啪啪做爰高潮www成人福利 | 日韩视频中文字幕精品偷拍 | 91av欧美| 91久久国产婷婷一区二区 | 免费播放一区 | 亚洲精品久久久久久动漫器材一区 | 亚洲精品乱码久久久久66 | 欧美在线一区二区三区 | 日出水了特别黄的视频 | 日本视频网 | 欧美肥妇多毛bbw | 成人福利在线视频 | 日本大香伊蕉一区二区 | 天天综合网在线观看视频 | 亚洲香蕉成人av网站在线观看 | 中文字幕7| 99视频国产精品免费观看 | 黄色高潮片 | 九色琪琪久久综合网天天 | 91精品久久久久久久久久 | 一区二区三区免费视频播放器 | 无码人妻一区二区三区在线 | 国产99对白在线播放 | 人妻系列无码专区69影院 | 欧美大胆a视频 | 免费看男女www网站入口在线 | 成年人免费小视频 | 国产大人和孩做爰bd | 国产精品自在在线午夜出白浆 | 欧美国产精品一区 | 欧美最猛黑人xxxx黑人猛叫黄 | 国产精品高潮呻吟久久久 | 日韩手机在线 | 熟妇人妻中文a∨无码 | 欧美日韩首页 | 午夜无码大尺度福利视频 |