ctjh900801
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 8 個
工控威望: 129 點(diǎn)
下載積分: 563 分
在線時(shí)間: 6(小時(shí))
注冊時(shí)間: 2013-01-11
最后登錄: 2013-09-09
查看ctjh900801的 主題 / 回貼
樓主  發(fā)表于: 2013-01-17 16:30
圖片:
小弟最近開始使用OMRON的PLC 之前在學(xué)校學(xué)的是三菱的PLC 

踏入業(yè)界后 開始接觸到不同的PLC 也就是OMRON

但是看了機(jī)臺編寫的程序  發(fā)現(xiàn)PLC明明可以使用步進(jìn)階梯圖的指令

型號是CP1H-x型的PLC  我發(fā)現(xiàn)這顆PLC可以使用 SNXT/STEP的步進(jìn)指令

相當(dāng)于三菱的SET/STL指令  但是我看編寫的程序卻不使用這個步進(jìn)指令

而是使用SET/RSET W暫存區(qū)的做法  去達(dá)到SFC的控制精神  可是這樣編寫的話

就要多花精神去想其它的邏輯  我打聽到會這樣用SET/RSET W暫存區(qū)的用法

是因?yàn)檫@樣的寫法運(yùn)行的周期會比使用SNXT/STEP的步進(jìn)指令 運(yùn)行周期還要短

現(xiàn)在碰的這臺機(jī)器  PLC型號是CP1H-X 系列的

規(guī)劃這臺機(jī)器的工程師就是SET/RSET  W暫存區(qū) 去規(guī)劃步進(jìn)點(diǎn)

我目前寫了兩支程序 分別用步進(jìn)指令SNXT/STEP和用SET/RSET的方法去規(guī)劃的步進(jìn)動作

實(shí)機(jī)測試的結(jié)果發(fā)現(xiàn)SNXT/STEP 所耗的周期時(shí)間確實(shí)比較長

照片上傳大家可以比較一下  并且我將程序和規(guī)劃的動作流程都放在壓縮文件

大家可以下載實(shí)際測試一下

所以基本上如果用這種方式去規(guī)劃的話  耗的周期較長  會發(fā)生什么問題?

我想了一下 大概只有該發(fā)送出去的信號 來不急發(fā)送出去 可能會發(fā)生一些沖突吧

大家針對這種問題  有什么好的解套的技巧嗎?


附件: 步進(jìn)寫法比較.rar (16 K) 下載次數(shù):495
網(wǎng)站提示: 請不要用迅雷下載附件,容易出錯
asmoshd
級別: 家園?
精華主題: 0
發(fā)帖數(shù)量: 516 個
工控威望: 607 點(diǎn)
下載積分: 33716 分
在線時(shí)間: 410(小時(shí))
注冊時(shí)間: 2008-08-05
最后登錄: 2024-12-13
查看asmoshd的 主題 / 回貼
1樓  發(fā)表于: 2013-01-17 22:16
使用SET   RSET 可定速度快。步進(jìn)程序SNXT/STEP不好用,我很少用,效率太低。對于能把握SET RESET 指令來說,用很好。但是,我不推薦都用,在特別復(fù)雜的程序來說。太多SET 太多RESET容易亂。而且變得程序非常非常復(fù)雜,不容易明白,自己也調(diào)試不成功。我經(jīng)歷過許多工程師調(diào)試很長時(shí)間也完成不了。原因就是全部使用SET RESET。十幾萬步的程序,如何調(diào)整。
ctjh900801
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 8 個
工控威望: 129 點(diǎn)
下載積分: 563 分
在線時(shí)間: 6(小時(shí))
注冊時(shí)間: 2013-01-11
最后登錄: 2013-09-09
查看ctjh900801的 主題 / 回貼
2樓  發(fā)表于: 2013-01-17 23:46
是的 大俠您講的確實(shí)命中我提出的問題 所以我才想提出來和大家討論

請各位大大能分享一下 如果SNXT/STEP 它造成運(yùn)行效率低的問題

那么在開發(fā)的案子上 會造成那些負(fù)面的影響呢?

我提出其中一個最大的影響點(diǎn)即是

該發(fā)送出去的信號 來不急發(fā)送出去 容易會造成一些沖突

但如果是這樣的話沒辦法靠其他的技術(shù)去彌補(bǔ)嗎?


還有如果真的此題沒有其他的技術(shù)去取代這個問題的話

我不得不選擇set/rset 去編輯我的程序的話 那么如何有效率的

去解決程序復(fù)雜性的問題 有那些技巧可以活用嗎?
ctjh900801
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 8 個
工控威望: 129 點(diǎn)
下載積分: 563 分
在線時(shí)間: 6(小時(shí))
注冊時(shí)間: 2013-01-11
最后登錄: 2013-09-09
查看ctjh900801的 主題 / 回貼
3樓  發(fā)表于: 2013-01-19 13:09
有大大關(guān)注這個問題嗎?  請各位大大踴躍提出看法阿

我試過了Jmp/Jme 和子程序父程序的方法  

小弟愚昧 使用過也沒發(fā)現(xiàn)這兩個技巧能有辦法解決這個SFC編寫上的功能

有聽人家提過說用Function block的方式 能有效率的減少PLC運(yùn)行的周期

不曉得還有那些技巧可以使用?  

我的話自己有些其他的看法 如解決某些Sensor 感應(yīng)到對象之后要能即時(shí)送出信號

如果用外部插斷去解決 這招可以有效地解決這個問題嗎?  有在書上看

過這個技巧  但還沒實(shí)際用過 所以想看看大家的看法
asmoshd
級別: 家園?
精華主題: 0
發(fā)帖數(shù)量: 516 個
工控威望: 607 點(diǎn)
下載積分: 33716 分
在線時(shí)間: 410(小時(shí))
注冊時(shí)間: 2008-08-05
最后登錄: 2024-12-13
查看asmoshd的 主題 / 回貼
4樓  發(fā)表于: 2013-02-01 22:39
常規(guī)指令編程的效率是最高的。而且容易懂。我看到過300K 的程序。編寫的非常好,都是常規(guī)指令。跳轉(zhuǎn)和子程序調(diào)用可以使用?赐灰褂肧ET   RESET。只有在特別要求的地方可以使用一點(diǎn)我希望大家的變成水平都大幅度的提升。 外部中斷不受掃描周期的影響。
ctjh900801
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 8 個
工控威望: 129 點(diǎn)
下載積分: 563 分
在線時(shí)間: 6(小時(shí))
注冊時(shí)間: 2013-01-11
最后登錄: 2013-09-09
查看ctjh900801的 主題 / 回貼
5樓  發(fā)表于: 2013-02-06 05:25
小弟也是在理解這方面的技術(shù)  不希望被Set Reset 這種不好理解的思路給綁住了  

我目前得知能用來解決執(zhí)行效率的問題  又能幫助程序員理解程序的指令是用 SNXT STEP

步進(jìn)指令再搭配輸入中斷  及TKON、  TKOF指令  

我相信這些指令應(yīng)該就夠滿足我在編寫SFC的時(shí)候  寫出好理解又效率高的代碼了 感謝有人關(guān)注這個議題
huan9009
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 53 個
工控威望: 190 點(diǎn)
下載積分: 2298 分
在線時(shí)間: 128(小時(shí))
注冊時(shí)間: 2013-06-07
最后登錄: 2024-10-10
查看huan9009的 主題 / 回貼
6樓  發(fā)表于: 2013-12-03 22:52
下不了,學(xué)習(xí)學(xué)習(xí)