pg7499
級別: 探索解密
|
IF (M1=1 OR Y1=1 AND M3=1 AND Y2=0) THEN Y1:=1; END_IF; IF (m2=1 OR Y2=1 AND m3=1 and y1=0) THEN Y2:=1; END_IF; 為什么M1為true ,M3為false Y1會為true 這個要怎么解決 |
|
---|---|---|
|
13821917697
承接電氣自動化項目、電氣接線圖設計、IO點表、電氣元器件選型
級別: 工控俠客
|
適當的在加點括號 你試試 |
---|---|
|
cvlsam
富士低壓,POD(觸摸屏),PLC專賣
級別: VIP會員
|
或,有1出1,M1=1,OR后面是什么結果不重要. Good Luck~ |
---|---|
|
hansir
級別: 探索解密
|
AND的優先級高于OR,程序中是先執行AND,后執行OR,相當于 IF M1=1 OR (Y1=1 AND M3=1 AND Y2=0)THEN Y1:=1; END_IF; 另外你的括號等于沒加,IF判斷條件整體不需要加括號 我猜你想實現的是M1=1或者Y1=1,然后串聯M3=1,Y2=0 可以改成 IF (M1=1 OR Y1=1) AND M3=1 AND Y2=0THEN Y1:=1; END_IF; 明白了嗎? |
---|---|
|