引言
當(dāng)您學(xué)習(xí)plc編程時,您需要了解五種常用的編程語言:梯形圖語言(ld)、結(jié)構(gòu)化文本語言(st)、順序功能流程圖語言(sfc)、功能模塊圖語言(fbd)和指令表語言(il)。這些語言都可以用來編寫正確的程序代碼,以控制機器的運行。
但是,plc 初學(xué)者往往會對使用哪種語言感到困惑。了解這些語言的優(yōu)缺點可以幫助他們更容易地確定最適合編寫 plc 程序的語言。因此,本文將詳細介紹這些語言之間的區(qū)別,并幫助您確定最適合您使用的編程語言。
梯形圖邏輯(ld)
梯形圖邏輯是最基本的 plc 編程語言類型。它與電氣接線控制圖相關(guān)聯(lián),使得編程更加直觀。在傳統(tǒng)的電氣控制接線中,輸入操作會根據(jù)電氣接線控制圖來控制輸出。
梯形圖邏輯圖由觸點和線圈組成,在梯形圖邏輯編程中以相同的方式實現(xiàn)。每個梯級都有一系列的觸點和線圈,當(dāng)梯級通電時,線圈根據(jù)其類型運行。
可以根據(jù)需要編寫任意數(shù)量的梯級,代碼將按照設(shè)計的順序執(zhí)行。由于其形狀類似于梯子,因此被稱為梯形圖邏輯。請參閱下面的圖例以加深理解,可以看到其操作過程非常簡單。
梯形圖中每個觸點/線圈符號上方顯示的地址號是對邏輯控制器外部輸入/輸出連接位置的引用。因此,在兩個末端電源軌之間,您可以放置所需的元素并在其中寫入邏輯。梯級從上到下以循環(huán)方式執(zhí)行。
結(jié)構(gòu)化文本(st)
結(jié)構(gòu)化文本是一種類似于本地 it 語言的編程語言。與軟件語言編寫的代碼相似,結(jié)構(gòu)化文本是以作業(yè)方式編寫的一系列文本。
指令必須以分號結(jié)尾。在執(zhí)行賦值時,單個或多個元素變量的當(dāng)前值將被替換為表達式的計算結(jié)果。
賦值由左側(cè)的變量規(guī)范組成,后跟賦值運算符:=,后跟要計算的表達式。兩個變量(賦值運算符的左側(cè)和右側(cè))必須具有相同的數(shù)據(jù)類型。
順序流程圖(sfc)
當(dāng)您需要以重復(fù)或順序的方式編寫復(fù)雜的程序時,順序流程圖是最先進的工具。顧名思義,sfc(sequential function chart)語言允許您通過流程圖編寫程序。它以步驟、分支、鏈接、跳轉(zhuǎn)和過渡等方式工作。
sfc 中的部分是“狀態(tài)機”,即狀態(tài)由活動步驟創(chuàng)建,轉(zhuǎn)換通過切換/更改行為傳遞。步驟和過渡通過方向鏈接相互鏈接。
兩個步驟永遠不能直接鏈接,必須始終通過過渡分隔。活動信號狀態(tài)過程沿定向鏈路發(fā)生,并通過切換轉(zhuǎn)換觸發(fā)。
功能框圖(fbd)
通常用于微處理器的功能塊圖(fbd)語言在 plc 編程中也以類似的格式提供。它是相互連接的塊圖,每個塊都有其輸入和輸出。
使用 fbd 語言進行編程有很多優(yōu)點。首先,它能夠使程序結(jié)構(gòu)更加清晰,易于理解和維護。其次,它能夠提高編程效率,因為可以在單個視圖中查看整個代碼,無需上下滾動。此外,fbd 語言還具有直觀的圖形界面,使得編程變得更加容易和直觀。最后,它還有助于快速排除故障,因為可以更方便地找到和解決問題。
指令列表(il)
用指令列表語言編寫的程序由一系列指令組成,這些指令由邏輯控制器按順序執(zhí)行。
每條指令由單個程序行表示,由以下組件組成:
行號:表示指令在程序中的位置。
當(dāng)前值:只能在線查看的當(dāng)前值,表示在執(zhí)行指令之前存儲在特定地址中的值。
指令運算符:表示要執(zhí)行的操作的類型。
操作數(shù):表示要參與操作的值或地址。
總結(jié)
當(dāng)我們看到這五種語言時,我們看到程序員通常使用的最多的是梯形邏輯、結(jié)構(gòu)化文本和功能框圖。每種語言都有其優(yōu)點和缺點。但是,這三個都很容易理解、解釋和設(shè)計。這有助于程序員正確設(shè)計邏輯。
這并不意味著不使用其余兩種語言。這取決于程序員的技能,取決于他要實現(xiàn)什么類型的功能。因此,很難評論最好的語言。但是,在這五種語言當(dāng)中,最常用的還是梯形圖邏輯。