發現網上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.使編譯後的程式盡可能清晰,既方...