zmrs163
級別: 家園?
![]() |
圖片:
![]()
圖片:
![]()
圖片:
![]() 在好多年前我學三菱的時候,從3U的手冊上看到PLC執(zhí)行順序是輸入刷新-程序執(zhí)行-輸出刷新,然后我就一直默認三菱PLC都是這個順序,直到最近我才發(fā)現(xiàn)5U,R系列都是圖2的順序,雖然從使用效果來說幾乎沒有區(qū)別,西門子,倍福也似乎都是輸入輸出刷新在一起。但是從圖3來看,IO刷新和END處理又是兩個不同的階段,所以三菱的掃描周期到底是從IO刷新開始計算,還是程序執(zhí)行開始計算,刷新到底是算在END處理中,還是不算呢 |
---|---|
|
天空流星
SZ-CL
級別: 網(wǎng)絡英雄
![]() |
一樣啊,按第二個圖輸入信號刷新是給當期掃描周期用,輸出信號刷新的上一個掃描周期運算的結果, 圖1簡化不就是:IO刷新--->梯圖運算 |
---|---|
|
zmrs163
級別: 家園?
![]() |
單機來說,恒定周期執(zhí)行時刷新的時機可能導致輸出抖動,后續(xù)一些MXF,MXR來說,這個刷新時機和遠程IO的配合就很有說法了。就倍福來說,I/O at Task Begin和I/O at Task End可以設置,隨著設置的不同,響應性可能會相差1-2個掃描周期,精度要求高的場合對這幾毫秒設置幾十毫秒還是影響挺大的。我參考了5U,R,MXF,MXR的手冊,說法有點不同也有可能是翻譯問題 ![]() 雖然只是一個不起眼的小問題,但是手冊前后矛盾真的讓我很別扭 [ 此帖被zmrs163在2025-08-22 09:05重新編輯 ] |
---|---|
|
天空流星
SZ-CL
級別: 網(wǎng)絡英雄
![]() |
某些有運動控制的PLC還分高速掃描程序和普通掃描程序,IO刷新又是在普通掃描周期的,這種對實際影響就更不好說了 |
---|---|
|
sjm213
有小知識,無大學問。
級別: 論壇版主
![]() ![]() ![]() ![]() |
西門子200smart對掃描周期的描述也是 輸入刷新--程序執(zhí)行--輸出刷新 這種方式。 如果把END作為程序執(zhí)行完畢的標識點,那么按這種描述循環(huán)執(zhí)行下來就是 輸入刷新--程序執(zhí)行--END處理--輸出刷新-- 輸入刷新--程序執(zhí)行--END處理--輸出刷新 -- 輸入刷新--程序執(zhí)行--END處理--輸出刷新 …… 如果掃描周期截取點放在某個“輸出刷新”上,就成了 IO刷新-程序執(zhí)行-END處理。 |
---|---|
|
zmrs163
級別: 家園?
![]() |
你說得沒錯,不同的起點可以有不同的順序。因此從程序內(nèi)部無法觀測到這兩種刷新方式的區(qū)別。那問題來了,第一次掃描的時候如果刷新是在END處理中,那么初始程序中輸入是獲取不到的,經(jīng)過我的測試5U初始程序可以獲取外部輸入。其實我困惑的點在于為啥手冊里END處理一會包含IO刷新,一會不包含
|
---|---|
|
蘇州工人
級別: 工控俠客
![]() |
有沒有可能第一次掃描的時候獲取不到輸入,這個被當成BUG被修復了 |
---|---|
|
zmrs163
級別: 家園常客
![]() |
這也算不上bug,1200手冊里面寫的初始程序讀取不到輸入,實際我也沒東西測。
|
---|---|
|