最新天堂中文在线丨午夜嘿嘿嘿影院丨亚洲国产精品高清久久久丨中文字幕人成乱码熟女app丨www91亚洲丨97成人资源丨成人中文字幕+乱码+中文字幕丨一区二区三区在线 | 日丨日韩免费大片丨亚洲欧美一区二区三区丨国产在线观看a丨亚洲成人第一区丨国内免费视频成人精品丨亚洲综合色网站丨午夜精品美女久久久久av福利丨国产午夜人做人免费视频网站丨国产又黄视频丨97se狼狼狼狼狼亚洲网丨狠狠亚洲婷婷综合色香五月丨中国一级毛片黄丨国产女人十八毛片丨国产色视频在线播放丨国产亚洲精久久久久久无码苍井空丨天天摸日日摸爽爽狠狠丨久久综合香蕉国产蜜臀av

f1652577
滄海一聲笑!
級別: 探索解密
精華主題: 0
發帖數量: 16 個
工控威望: 116 點
下載積分: 3369 分
在線時間: 26(小時)
注冊時間: 2016-04-15
最后登錄: 2023-08-18
查看f1652577的 主題 / 回貼
樓主  發表于: 2017-11-15 16:46
圖片:
MOV (SM402 ,K0,D20);
MOV (SM402 ,K0,D21);
FOR D20 :=K0 TO K99    BY K1 DO
    D20:= D20+K1;
    D21:= D21+D20;
END_FOR;

模擬時為什么D21中的數值一直在變?
楓落云端
施主,腳抬一下
級別: 略有小成

精華主題: 0
發帖數量: 341 個
工控威望: 465 點
下載積分: 1548 分
在線時間: 416(小時)
注冊時間: 2017-10-10
最后登錄: 2025-06-26
查看楓落云端的 主題 / 回貼
1樓  發表于: 2017-11-16 09:37
只能說樓主還沒有深刻理解PLC的循環掃描工作機制
楓落云端
施主,腳抬一下
級別: 略有小成

精華主題: 0
發帖數量: 341 個
工控威望: 465 點
下載積分: 1548 分
在線時間: 416(小時)
注冊時間: 2017-10-10
最后登錄: 2025-06-26
查看楓落云端的 主題 / 回貼
2樓  發表于: 2017-11-16 09:46
前兩句只是PLC運行第一個掃描周期起作用,每一個FOR循環,D20都會從0自加到99。D21=(1+2+...+99)*N個掃描周期,由于直接使用D21寄存器,默認為16位的有符號整數,最大只能到+32767,再加就會溢出到符號位,所以變成負數,之后自加又變成正數,繼續加又溢出變負數,一直不斷地循環
本帖最近評分記錄:
  • 下載積分:+1(shangbinhou) 熱心助人!
  • 下載積分:+1(conchnit) 熱心助人!
    楓落云端
    施主,腳抬一下
    級別: 略有小成

    精華主題: 0
    發帖數量: 341 個
    工控威望: 465 點
    下載積分: 1548 分
    在線時間: 416(小時)
    注冊時間: 2017-10-10
    最后登錄: 2025-06-26
    查看楓落云端的 主題 / 回貼
    3樓  發表于: 2017-11-16 09:50
    我只是具體分析他的程序運行過程,產生這個現象是正常的。如果想只是要循環一次,那就得加條件限制。
    MOV (SM402 ,K0,D20);
    MOV (SM402 ,K0,D21);
    IF LDP(TRUE,M0) THEN
        FOR D20 :=K0 TO K99    BY K1 DO
            D20:= D20+K1;
            D21:= D21+D20;
        END_FOR;
    END_IF;
    楓落云端
    施主,腳抬一下
    級別: 略有小成

    精華主題: 0
    發帖數量: 341 個
    工控威望: 465 點
    下載積分: 1548 分
    在線時間: 416(小時)
    注冊時間: 2017-10-10
    最后登錄: 2025-06-26
    查看楓落云端的 主題 / 回貼
    4樓  發表于: 2017-11-16 09:53
    以上是M0 為ON時執行一次循環,如果只是想PLC開機自動算一次,那就變成
    MOV (SM402 ,K0,D20);
    MOV (SM402 ,K0,D21);
    IF SM402 THEN
        FOR D20 :=K0 TO K99    BY K1 DO
            D20:= D20+K1;
            D21:= D21+D20;
        END_FOR;
    END_IF;
    楓落云端
    施主,腳抬一下
    級別: 略有小成

    精華主題: 0
    發帖數量: 341 個
    工控威望: 465 點
    下載積分: 1548 分
    在線時間: 416(小時)
    注冊時間: 2017-10-10
    最后登錄: 2025-06-26
    查看楓落云端的 主題 / 回貼
    5樓  發表于: 2017-11-17 14:18
    FOR D20 :=K0 TO K99    BY K1 DO 本身就是一個掃描周期開始后,D20會被賦值為0,所以每個掃描周期都會執行