首頁>Club>
14
回覆列表
  • 1 # 控制研究控

    PLC程式設計中的梯形圖(LAD)程式設計可以說是PLC程式設計中最簡單直觀的程式設計方法了,但是較長程式的對錯想要透過眼睛很直觀的看出來是很難的,最好的方法就是在PLC編輯器中依靠編譯發現一些常規錯誤,而後執行測試程式去發現那些功能或者邏輯上的錯誤!

    我簡單的舉一個例子來說一下,如下是西門子200PLC中的一段程式,這個程式存在明顯的編譯錯誤,和一些不明顯的要依據實際功能來判定的錯誤,下邊我來分析一下:

    1,先來看一下編譯錯誤:

    這個圖片就是PLC程式設計軟體編譯後給出的錯誤提示,其實上邊的圖片已經明顯的給出了錯誤的地方,就是有紅色波浪線的地方!

    MW12是一個字長資料,而對其操作的指令MOV_B是一個對位元組操作的指令,因此這裡需要把MW12改為MB12,或者把指令改成MOV_W指令!

    比較指令MB10和1000比較這裡,因為MB10是一個位元組其能表示的範圍是0-255,所以1000明顯超出這個位元組的表示範圍,就被紅色波浪線提示錯誤了!

    2,再來看一下功能錯誤:

    這段程式有2個值得商榷的功能錯誤:

    第①處就是網路1的SM0.0,此處根據後邊把變數賦予一個0的初始值,這段程式應該是初始化程式,那麼就應該使用SM0.1才是初始化點!

    第②出就是網路1中的SET指令和網路3中的RESET指令,初始化的時候使用set指令置位了M0.0開始的8個點,而網路3復位的時候只復位了M0.0這一個點!---一般來說set和reset應該是對應的,也就是說網路3處也應該是復位M0.0-M0.7這8個點!(當然,要根據實際的情況來判定!)

    以上就是PLC的梯形圖程式怎麼看對錯的一個簡單舉例,可以看到梯形圖中的程式錯誤,在一段比較短的程式中,用肉眼分析是可以分析出來對錯的,但是沒有編譯器加入效率高。同時,還應該看到編譯器雖然可以發現一些硬性的錯誤,但是程式是否能夠達到最終的控制要求,也就是說功能上的錯與對,就需要程式設計人員自己多多測試,去發現了!

  • 2 # 現在就行動

    1、程式自身的對錯編譯一下,程式設計軟體會提示有沒有錯誤?

    2、有條件的人可以透過實際應用來驗證程式的功能是否滿足實際需求?

  • 3 # 工控人

    plc梯形圖怎麼看對錯呀

    梯形圖的對錯分好多種,一種是程式編譯出現的錯誤,二就是控制功能異常或者邏輯錯誤。編譯引起的如雙線圈、指令使用錯誤、軟元件使用有誤等等,有些是能透過梯形圖檢查到的,輸入線圈Y明顯發現使用了多次,在程式較大的時候我們可以透過工具中的‘程式檢查’功能來查詢,如果發現程式有錯,會跟出相應的提示,比如出錯的內容以及在梯形圖中的步數,方便我們查詢。

    還有的就是隱形的造成計算結果不對的,常見的是16位指令和32位指令的應用,如果資料的範圍超過16位則需要使用32位指令。另外就是軟元件的重複使用導致資料覆蓋造成的,這裡主要指資料暫存器。比如除法運算中最後的結果會自動佔用兩個相鄰的暫存器,低位儲存商,高位儲存餘數。如果後面的梯形圖用到了高位就會引起計算結果異常。對於這樣的錯誤,我們一般很難在梯形圖中發現,這時候就要在軟元件使用表中的‘交叉參照’檢查是否有重複使用的資料暫存器。如下圖中的D11被使用在兩個指令中。

    程式由於編輯、編譯、指令語法等操作操作錯誤,最重要的還是控制功能出錯,簡單說就是邏輯順序不對,比如按鈕SB1控制電機啟動,但按下去卻沒有反應。這時候就涉及到程式除錯的過程,除了檢查程式外,我們需要線上監控PLC梯形圖的狀態。首先透過程式設計線纜把PLC與程式設計軟體連線起來,並進入監視狀態,可以返現各個元件的ON/OFF狀態、數值的大小情況,能夠清晰地判斷出錯的狀況。

  • 中秋節和大豐收的關聯?
  • 華為手機怎麼給相片加上字和時間地點?