PLC的ST程式設計方式 文字程式設計,簡潔啊

2021-09-28 14:33:33 字數 2366 閱讀 8466

發現網上plc的st程式設計資料極少。不過,道理也很簡單,因為做plc的基本都是電氣出身,梯形圖類似於繼電器邏輯,比較接近他們的習慣。。。st屬於文字程式設計,符合程式設計師的習慣,兼職做plc的程式設計師極少,原因你們懂的。(我是個例外,無奈臉)。

由於我只用過三菱的plc,下面的使用,全以三菱plc為依據。其他品牌的若有出入,勿噴,歡迎補充

下面是乙個st程式的例子:當x0接通時,開啟y0。

if x0 then

y0 := true;

end_if;

很像c語言對不對?不過呢,建議寫成下面這個樣子(更簡潔):

set(x0,y0);
set,rst都是函式,傳入引數就可以了,可以看幫助。(直接給答案吧:第乙個引數時,觸發條件,第二個引數是操作物件)

上面的例子這麼寫:

看到沒,其實差不多。但是呢,當**長了之後,就會發現:

1)梯形圖臃腫,一頁螢幕顯示不了多少語句

2)梯形圖只能用軟元件名,不能自己取乙個有意義的名字。(可以設定標籤,但是只是輸入時方便。寫完後,顯示不了標籤);

而st語言則可以,而且滑鼠停靠時,可以顯示注釋。

t形圖:gx developer、gx works2

st語言:gx works2

建議使用gx works2!因為它比較新,支援多種程式設計方式:程式設計師風格的st語言,電氣工程師風格的t形圖、流程圖風格的sfc、閘電路風格的fbd。gx developer是老古董了

標籤就是給軟元件取名字,有名字,程式設計才流暢啊,誰記得那麼多點編號啊。有全域性標籤、區域性標籤,顧名思意,相當於全域性變數/區域性變數嘛。

要先設定軟元件,回車就會自動幫你填好。然後再設定標籤名。

先寫乙個最簡單的

先編譯,編譯時會檢查程式是否有錯誤。(相當於t形圖中的「轉換」)

再寫入

接下來,再plc上測試就好了。接通x0,看看y0是不是會亮(plc每個電位都有指示燈的)。

如果沒有plc呢?或者怕寫入plc把東西搞燒了咋辦呢?嗯,可以模擬嘛!見第6節-plc模擬

6.plc模擬

啟動之後,是下面這個樣子

我們把急停訊號開啟,看看報警輸出會不會開啟

注意:

因為這是模擬plc,才可以通過軟體改變輸入訊號。如果是接plc,輸入訊號只能通過外部接線來改變。

發現一:

2)而且,不管哪種程式設計方式寫的,寫到plc,再讀出來的都是梯形圖。

好吧,原來不管是寫入時,是轉成t形圖再寫進入的。

發現二:

這樣的例子,讓y0等於x0。

寫法1:

if x0 then

y0 :=true;

else

y0 :=false;

end_if;

寫法2:

set(x0,y0);

rst(not x0,y0);

寫法1雖然更直白,但是語句更多,寫入到plc的梯形圖很複雜(如下圖)。所以建議用第二種風格

而第2種寫法,則是下面這樣的,這才像是人寫的嘛。

plc程式語言有幾種?plc常用的程式語言

大家都知道學習某種新知識,技巧跟方法是關鍵的。正如新手剛開始接觸plc,它的軟體程式語言與一般計算機語言相比,具有明顯的特點,它既不同於高階語言,也不同於一般的組合語言,它既要滿足易於編寫又要滿足易於除錯的要求。海風教育退費 早期的plc僅支援梯形圖程式語言和指令表程式語言,現根據國際電工委員會制定...

PLC程式設計的步驟解讀

設計plc控制系統時,除了解決輸出部件和輸入部件的連線方式外,最主要的工作是程式設計與除錯。通常程式設計按如下步驟進行。1 了解被控系統的工藝過程和控制要求,並作出流程圖,以描述控制過程。2 了解所選plc機的效能,內部等效繼電器編號範圍 指令,並根據控制要求確定輸入和輸出端分配及輸入端控制方式。3...

PLC程式設計的5個要求

2.使程式設計程式盡可能簡潔,可以節省記憶體,簡化除錯,節省執行指令的時間,提高對輸入的響應速度。要使程式短小精悍,就要注意程式設計方法,善用指令,巧用指令,優化結構。要實現某個功能,一般來說,在目的相同的情況下,使用強大的指令,程式步驟的數量可能比使用單一指令少。3.使編譯後的程式盡可能清晰,既方...