碎心斷劍
每天給自己一個微笑,快樂幸福少不了
級別: 家園常客
|
合理利用子程序,可以大大的降低掃描時間 |
|
---|---|---|
|
wangzhentang
大傻
級別: 探索解密
|
成本如何 ,小型PLC只有一個掃描循環,不然你用中大型PLC,用多個循環處理。 |
---|---|
|
lvpretend
級別: 論壇先鋒
|
只要是分時多任務的系統都有這個問題,如果你對響應要求非常高,你只能用嵌入式做單任務,PLC的中斷響應其實不快,但數十mS的響應 我覺得也夠絕大多數任務了。直接用伺服器吧,響應快得多。我很好奇,你是什么定位,要求這么高?不能通過斜坡降速來降低誤差嗎?我覺得你的設計有問題。 |
---|---|
|
lugua1
級別: 探索解密
|
先說外部中斷,在外部輸入狀態變化時,立即跳出當前循環掃描執行程序,轉而執行中斷服務子程序,執行完中斷服務子程序后,再跳回到之前跳出的循環掃描程序位置繼續執行順序程序。所以你只需要在中斷服務子程序中寫入你的停止程序即可。外部中斷輸入點不受掃描周期影響。另外基于以上特性不是所有的輸入點都可以執行中斷,只有硬件支持的才能中斷(具體那幾個點支持中斷,需要你自行根據PLC的型號查手冊)。 再回到樓主的工作模型,其實你停止的位置精度除了受你的程序執行周期影響外,還受你當前運行速度影響,例如你以1MM/S的速度立即停止和以100MM/S的速度立即停止是相差蠻遠的(其實速度差異遠遠大于PLC掃描周期帶來的差異)。。。。。。。由于在運行之前你并不知道目標地址在哪里,是檢測到停止,都存在一個滯后性,不管你運用什么馬達這個滯后性肯定是不能消除的,所以只要馬達響應性還可以,不管是類型的馬達沒有什么大的區別。。。。。感應到停止最好例子是就PLC自帶的馬達歸原點指令。我們可以去查看下各種PLC手冊,對于馬達歸原點指令:有近原點開關 有原點開關 有原點回歸高速 有原點回歸爬行速度。你可以留意一下對系統歸原點指令的原點開關,都是系統已經指定的一個輸入點,為什么指定呢,就是因為這個輸入點需要具有高響應性,換句話說需要具有中斷能力。馬達歸原點的過程是這樣的:先高速運行,檢測到近原點開關后,切換到爬行速度,以爬行速度檢測到原點開關后立即停止(當然回歸方式很多,大概都是這個模式)。即使是這樣,你的爬行速度不一樣,找的原點位置也不一樣。純手打,希望樓主有所啟發 |
---|---|
本帖最近評分記錄: |