|
ayusecret
級別: 略有小成
|
引用手冊 ![]() 大家認(rèn)為IF里面的上升沿指令條件常On,運(yùn)行效果是不是你要的預(yù)期,歡迎測試討論. |
|---|---|
|
|
|
ayusecret
級別: 略有小成
|
沒人討論,我來給出我的測試結(jié)果,D0,D1的不同結(jié)果讓我對ST的上升沿和下降沿的使用保持謹(jǐn)慎,畢竟這已經(jīng)是我第二次在ST邊沿指令時(shí)發(fā)現(xiàn)的問題了,第一次引貼:http://m.wsrsbx.cn/read-gktid-1728792.html |
|---|---|
|
|
|
ayusecret
級別: 略有小成
|
第一次被人說是新手 ,那我請教一下你,圖中類型梯形圖邏輯用ST如何體現(xiàn),或者用你那強(qiáng)大的Codesys要如何寫,能有如此底氣的可能也就是CodeSys沒類似問題而已,有的話估計(jì)也就不會這么說了![]() |
|---|---|
|
|
|
ayusecret
級別: 略有小成
|
拜托,你以為我給出的代碼是真實(shí)場景呀,能用一個If的情況下我為什么要寫那么多IF,而且你以為真實(shí)情況下是M4,M5,M6,M7情況下可以用For循環(huán)? 我的設(shè)想是用一個If帶后面所有上升沿,和梯形圖一樣,懂?我覺得你才是思想被束縛的人,能用IF盡量用IF |
|---|---|
|
|
|
ayusecret
級別: 略有小成
|
可能我對ST用法理解不到位,但你能幫忙分析下以下結(jié)果么,為啥M1 On,D0+1,M2,M3常On且不受指令影響可以強(qiáng)制On/Off. 這個寫法對應(yīng)的梯形圖究竟是長啥樣的能幫忙寫下嗎 ![]() ![]() |
|---|---|
|
|
|
ayusecret
級別: 略有小成
|
不行,有問題,你把IF M0 THEN改成IF SM412 THEN,就知道你的值一直在加,和梯形圖的執(zhí)行效果不一樣 |
|---|---|
|
|
|
ayusecret
級別: 略有小成
|
很遺憾,還是有問題。可以自己驗(yàn)證下,D0還是會自增 代碼1: M0:=TRUE; ib_IN:=SM412; IF ib_IN AND vb_b=FALSE THEN IF LDP(SM400,M0) THEN INC(SM400,D0); END_IF; END_IF; vb_b:=ib_IN; 代碼2: M0:=TRUE; ib_IN:=SM412; IF ib_IN AND vb_b=FALSE THEN INC(LDP(SM400,M0),D0); END_IF; vb_b:=ib_IN; |
|---|---|
|
|