首頁(yè) > 專(zhuān)家說(shuō)

PLC用什么語(yǔ)言編程

來(lái)源:新能源網(wǎng)
時(shí)間:2024-08-17 10:17:54
熱度:

PLC用什么語(yǔ)言編程【專(zhuān)家解說(shuō)】:1引言

【專(zhuān)家解說(shuō)】:1引言 在PLC中有多種程序設(shè)計(jì)語(yǔ)言,如梯形圖語(yǔ)言、布爾助記符語(yǔ)言、功能表圖語(yǔ)言、功能模塊圖語(yǔ)言及結(jié)構(gòu)化語(yǔ)句描述語(yǔ)言等。梯形圖語(yǔ)言和布爾助記符語(yǔ)言是基本程序設(shè)計(jì)語(yǔ)言,它通常由一系列指令組成,用這些指令可以完成大多數(shù)簡(jiǎn)單的控制功能,例如,代替繼電器、計(jì)數(shù)器、計(jì)時(shí)器完成順序控制和邏輯控制等。通過(guò)擴(kuò)展或增強(qiáng)指令集,它們也能執(zhí)行其它的基本操作。功能表圖語(yǔ)言和語(yǔ)句描述語(yǔ)言是高級(jí)的程序設(shè)計(jì)語(yǔ)言,它可根據(jù)需要去執(zhí)行更有效的操作,例如,模擬量的控制,數(shù)據(jù)的操縱,報(bào)表的報(bào)印和其他基本程序設(shè)計(jì)語(yǔ)言無(wú)法完成的功能。功能模塊圖語(yǔ)言采用功能模塊圖的形式,通過(guò)軟連接的方式完成所要求的控制功能,它不僅在PLC中得到了廣泛的應(yīng)用,在集散控制系統(tǒng)的編程和組態(tài)時(shí)也常常被采用。由于它具有連接方便、操作簡(jiǎn)單、易于掌握等特點(diǎn),為廣大工程設(shè)計(jì)和應(yīng)用人員所喜愛(ài)。 2 常用的程序設(shè)計(jì)語(yǔ)言分類(lèi) 根據(jù)PLC應(yīng)用范圍,程序設(shè)計(jì)語(yǔ)言可以組合使用,常用的程序設(shè)計(jì)語(yǔ)言有以下幾種: (1) 梯形圖(Ladder Diagram)程序設(shè)計(jì)語(yǔ)言 梯形圖程序設(shè)計(jì)語(yǔ)言是用梯形圖的圖形符號(hào)來(lái)描述程序的一種程序設(shè)計(jì)語(yǔ)言。采用梯形圖程序設(shè)計(jì)語(yǔ)言,這種程序設(shè)計(jì)語(yǔ)言采用因果關(guān)系來(lái)描述事件發(fā)生的條件和結(jié)果,每個(gè)梯級(jí)是一個(gè)因果關(guān)系。在梯級(jí)中,描述事件發(fā)生的條件表示在左面,事件發(fā)生的結(jié)果表示在右面。 梯形圖程序設(shè)計(jì)語(yǔ)言是最常用的一種程序設(shè)計(jì)語(yǔ)言,它來(lái)源于繼電器邏輯控制系統(tǒng)的描述。在工業(yè)過(guò)程控制領(lǐng)域,電氣技術(shù)人員對(duì)繼電器邏輯控制技術(shù)較為熟悉。因此,由這種邏輯控制技術(shù)發(fā)展而來(lái)的梯形圖受到歡迎,并得到廣泛的應(yīng)用。 梯形圖程序設(shè)計(jì)語(yǔ)言的特點(diǎn)是: ·與電氣操作原理圖相對(duì)應(yīng),具有直觀(guān)性和對(duì)應(yīng)性; ·與原有繼電器邏輯控制技術(shù)相一致,易于撐握和學(xué)習(xí); ·與原有的繼電器邏輯控制技術(shù)的不同點(diǎn)是:梯形圖中的能流(Power FLow)不是實(shí)際意義的電流,內(nèi)部的繼電器也不是實(shí)際存在的繼電器,因此應(yīng)用時(shí)需與原有繼電器邏輯控制技術(shù)的有關(guān)概念區(qū)別對(duì)待; ·與布爾助記符程序設(shè)計(jì)語(yǔ)言有一一對(duì)應(yīng)關(guān)系,便于相互轉(zhuǎn)換和程序檢查。 (2) 布爾助記符(Boolean Mnemonic)程序設(shè)計(jì)語(yǔ)言 布爾助記符程序設(shè)計(jì)語(yǔ)言是用布爾助記符來(lái)描述程序的一種程序設(shè)計(jì)語(yǔ)言。布爾助記符程序設(shè)計(jì)語(yǔ)言與計(jì)算機(jī)中的匯編語(yǔ)言非常相似,采用布爾助記符來(lái)表示操作功能。 布爾助記符程序設(shè)計(jì)語(yǔ)言具有下列特點(diǎn): ·采用助記符來(lái)表示操作功能,具有容易記憶,便于撐握的特點(diǎn); ·在編程器的鍵盤(pán)上采用助記符表示,具有便于操作的特點(diǎn),可在無(wú)計(jì)算機(jī)的場(chǎng)合進(jìn)行編程設(shè)計(jì); ·與梯形圖有一一對(duì)應(yīng)關(guān)系,其特點(diǎn)與梯形圖語(yǔ)言基本類(lèi)同。 (3) 功能表圖(Sepuential Function Chart)程序設(shè)計(jì)語(yǔ)言 功能表圖程序設(shè)計(jì)語(yǔ)言是用功能表圖來(lái)描述程序的一種程序設(shè)計(jì)語(yǔ)言。它是近年來(lái)發(fā)展起來(lái)的一種程序設(shè)計(jì)語(yǔ)言。采用功能表圖的描述,控制系統(tǒng)被分為若干個(gè)子系統(tǒng),從功能入手,使系統(tǒng)的操作具有明確的含義,便于設(shè)計(jì)人員和操作人員設(shè)計(jì)思想的溝通,便于程序的分工設(shè)計(jì)和檢查調(diào)試。功能表圖程序設(shè)計(jì)語(yǔ)言的特點(diǎn)是: ·以功能為主線(xiàn),條理清楚,便于對(duì)程序操作的理解和溝通; ·對(duì)大型的程序,可分工設(shè)計(jì),采用較為靈活的程序結(jié)構(gòu),可節(jié)省程序設(shè)計(jì)、調(diào)試時(shí)間; ·常用于系統(tǒng)規(guī)模校大、程序關(guān)系較復(fù)雜的場(chǎng)合; ·只有在活動(dòng)步的命令和操作被執(zhí)行,對(duì)活動(dòng)步后的轉(zhuǎn)換進(jìn)行掃描,因此整個(gè)程序的掃描時(shí)間較其他程序編制的程序掃描時(shí)間要短得多。 功能表圖來(lái)源于佩特利(Petri)網(wǎng),由于它具有圖形表達(dá)方式,能比較簡(jiǎn)單清楚地描述并發(fā)系統(tǒng)和復(fù)雜系統(tǒng)的所有現(xiàn)象,并能對(duì)系統(tǒng)中存在的象死鎖、不安全等反?,F(xiàn)象進(jìn)行分析和建模,在模型的基礎(chǔ)上可以直接編程,因此得到了廣泛的應(yīng)用。近幾年推出的可編程控制器和小型集散控制系統(tǒng)中也已提供了采用功能表圖描述語(yǔ)言進(jìn)行編程的軟件。(4) 功能模塊圖(Function Block)程序設(shè)計(jì)語(yǔ)言 功能模塊圖程序設(shè)計(jì)語(yǔ)言是采用功能模塊來(lái)表示模塊所具有的功能,不同的功能模塊有不同的功能。它有若干個(gè)輸入端和輸出端,通過(guò)軟連接的方式,分別連接到所需的其它端子,完成所需的控制運(yùn)算或控制功能。功能模塊可以分為不同的類(lèi)型,在同一種類(lèi)型中,也可能因功能參數(shù)的不同而使功能或應(yīng)用范圍有所差別,例如,輸入端的數(shù)量、輸入信號(hào)的類(lèi)型等的不同使它的使用范圍不同。由于采用軟連接的方式進(jìn)行功能模塊之間及功能模塊與外部端子的連接,因此控制方案的更改、信號(hào)連接的替換等操作可以很方便實(shí)現(xiàn)。功能模塊圖程序設(shè)計(jì)語(yǔ)言的特點(diǎn)是: ·以功能模塊為單位,從控制功能入手,使控制方案的分析和理解變得容易; ·功能模塊是用圖形化的方法描述功能,它的直觀(guān)性大大方便了設(shè)計(jì)人員的編程和組態(tài),有較好的易操作性; ·對(duì)控制規(guī)模較大、控制關(guān)系較復(fù)錄的系統(tǒng),由于控制功能的關(guān)系可以較清楚地表達(dá)出來(lái),因此,編程和組態(tài)時(shí)間可以縮短,調(diào)試時(shí)間也能減少; ·由于每種功能模塊需要占用一定的程序內(nèi)存,對(duì)功能模塊的執(zhí)行需要一定的執(zhí)行時(shí)間,因此,這種設(shè)計(jì)語(yǔ)言在大中型PLC和集散控制系統(tǒng)的編程和組態(tài)中才被采用。 (5) 結(jié)構(gòu)化語(yǔ)句(Structured Text)描述程序設(shè)計(jì)語(yǔ)言 結(jié)構(gòu)化語(yǔ)句描述程序設(shè)計(jì)語(yǔ)言是用結(jié)構(gòu)化的描述語(yǔ)句來(lái)描述程序的一種程序設(shè)計(jì)語(yǔ)言。它是一種類(lèi)似于高級(jí)語(yǔ)言的程序設(shè)計(jì)語(yǔ)言。在大中型的可編程序控制器系統(tǒng)中,常采用結(jié)構(gòu)化語(yǔ)句描述程序設(shè)計(jì)語(yǔ)言來(lái)描述控制系統(tǒng)中各個(gè)變量的關(guān)系。它也被用于集散控制系統(tǒng)的編程和組態(tài)。 結(jié)構(gòu)化語(yǔ)句描述程序設(shè)計(jì)語(yǔ)言采用計(jì)算機(jī)的描述語(yǔ)句來(lái)描述系統(tǒng)中各種變量之間的運(yùn)算關(guān)系,完成所需的功能或操作。大多數(shù)制造廠(chǎng)商采用的語(yǔ)句描述程序設(shè)計(jì)語(yǔ)言與BASIC語(yǔ)言、PASCAL語(yǔ)言或C語(yǔ)言等高級(jí)語(yǔ)言相類(lèi)似,但為了應(yīng)用方便,在語(yǔ)句的表達(dá)方法及語(yǔ)句的種類(lèi)等方面都進(jìn)行了簡(jiǎn)化。 結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言具有下列特點(diǎn): ·采用高級(jí)語(yǔ)言進(jìn)行編程,可以完成較復(fù)雜的控制運(yùn)算; ·需要有一定的計(jì)算機(jī)高級(jí)程序設(shè)計(jì)語(yǔ)言的知識(shí)和編程技巧,對(duì)編程人員的技能要求較高,普通電氣人員難以完成。 ·直觀(guān)性和易操作性等較差; ·常被用于采用功能模塊等其他語(yǔ)言較難實(shí)現(xiàn)的一些控制功能的實(shí)施。 部分PLC的制造廠(chǎng)商為用戶(hù)提供了簡(jiǎn)單的結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言,它與助記符程序設(shè)計(jì)語(yǔ)言相似,對(duì)程序的步數(shù)有一定的限制。同時(shí),提供了與PLC間的接口或通信連接程序的編制方式,為用戶(hù)的應(yīng)用程序提供了擴(kuò)展余地。 3 PLC程序設(shè)計(jì)語(yǔ)言應(yīng)用實(shí)例 溫度控制是許多機(jī)器的重要的構(gòu)成部分。它的功能是將溫度控制在所需要的溫度范圍內(nèi),然后進(jìn)行工件的加工與處理。PID控制系統(tǒng)是得到廣泛應(yīng)用的控制方法之一,下面較為詳盡地介紹了PID溫度控制的PLC程序設(shè)計(jì)實(shí)例。 (1) 系統(tǒng)組成 本套系統(tǒng)采用Omron的PLC與其溫控單元以及Pro-face的觸摸屏所組成。系統(tǒng)包括CQM1H-51、擴(kuò)展單元TC-101、GP577R以及探溫器、加熱/制冷單元。 (2) 觸摸屏參數(shù)設(shè)置 設(shè)002代表現(xiàn)在的溫度,而102表示輸出的溫度。如按下開(kāi)始設(shè)置就可設(shè)置參數(shù)。需要設(shè)置的參數(shù)有6個(gè),分別是比例帶、積分時(shí)間、微分時(shí)間、滯后值、控制周期、偏移量。它們?cè)赑LC的地址與一些開(kāi)關(guān)的地址如下: 比例帶 : DM51 積分時(shí)間 : DM52 微分時(shí)間 : DM53 滯后值 : DM54 控制周期 : DM55 偏移量 : DM56 數(shù)據(jù)刷新 : 22905 (3) PLC程序 002:PID的輸入字 102:PID的輸出字 [NETWORK] Name="Action Check" //常規(guī)檢查 [STATEMENTLIST] LD 253.13 //常ON. OUT TR0 CMP 002 #FFFF //確定溫控單元是否完成初始化 AND NOT 255.06 //等于 OUT 041.15 //初始化完成 LD TR0 AND 041.15 OUT TR1 AND NOT 040.10 //不在參數(shù)設(shè)置狀態(tài) MOV DM0050 102 //將設(shè)置溫度DM50傳送給PID輸出字 LD TR1 MOV 002 DM0057 //將002傳送到DM57    [NETWORK] Name="Setting Start" //設(shè)置開(kāi)始 [STATEMENTLIST] LD 253.13 OUT TR0 AND 229.05 //觸摸屏上的開(kāi)始設(shè)置開(kāi)關(guān) DIFU 080.05 //設(shè)置微分 LD TR0 AND 041.15 AND 080.05 SET 040.01 //開(kāi)始設(shè)置標(biāo)志位1 SET 040.10 //開(kāi)始設(shè)置標(biāo)志位2    [NETWORK] Name="Poportion" //比例帶設(shè)置 [STATEMENTLIST] LD 040.01 OUT TR0 AND NOT 042.01 MOV #C110 102 //讀輸出邊與輸入邊的比例帶 CMP 002 #C110 //比較輸入字是否變成C110 AND 255.06 //等于 SET 042.01 //設(shè)置比例帶標(biāo)志 LD TR0 AND 042.01 MOV DM0051 102 //將比例帶的設(shè)定值寫(xiě)入輸出字 CMP 002 DM0051 //是否寫(xiě)入 AND 255.06 SET 040.01 //復(fù)位標(biāo)志1 RSET 042.01 //復(fù)位比例帶標(biāo)志 SET 040.02 //向下繼續(xù)設(shè)置標(biāo)志    [NETWORK] Name="Integral"http://積分時(shí)間設(shè)置 [STATEMENTLIST] LD 040.02 OUT TR0 AND NOT 042.02 MOV #C220 102 //讀輸出邊與輸入邊的積分 CMP 002 #C220 //比較輸入字是否變成C220 AND 255.06 SET 042.02 //設(shè)置積分標(biāo)志 LD TR0 AND 042.02 MOV DM0052 102 //將積分的設(shè)定值寫(xiě)入輸出字 CMP 002 DM0052 //是否寫(xiě)入 AND 255.06 RSET 040.02 RSET 042.02 SET 040.03 //向下繼續(xù)設(shè)置標(biāo)志    [NETWORK] Name="differential"http://微分時(shí)間設(shè)置 [STATEMENTLIST] LD 040.03 OUT TR0 AND NOT 042.03 MOV #C330 102 //讀輸出邊與輸入邊的微分 CMP 002 #C330 //比較輸入字是否變成C330 AND 255.06 SET 042.03 //設(shè)置微分標(biāo)志 LD TR0 AND 042.03 MOV DM0053 102 //將微分的設(shè)定值寫(xiě)入輸出字 CMP 002 DM0053 //是否寫(xiě)入AND 255.06 RSET 040.03 RSET 042.03 SET 040.04 //向下繼續(xù)設(shè)置標(biāo)志    [NETWORK] Name="Hysteresis"http://滯后值設(shè)置 [STATEMENTLIST] LD 040.04 OUT TR0 AND NOT 042.04 MOV #C440 102 //讀輸出邊與輸入邊的滯后值 CMP 002 #C440 //比較輸入字是否變成C440 AND 255.06 SET 042.04 //設(shè)置滯后值標(biāo)志 LD TR0 AND 042.04 MOV DM0054 102 //將滯后值的設(shè)定值寫(xiě)入輸出字 CMP 002 DM0054 //是否寫(xiě)入 AND 255.06 RSET 040.04 RSET 042.04 SET 040.05 //向下繼續(xù)設(shè)置標(biāo)志    [NETWORK] Name="Period" //控制周期設(shè)置 [STATEMENTLIST] LD 040.05 OUT TR0 AND NOT 042.05 MOV #C550 102 //讀輸出邊與輸入邊的控制周期 CMP 002 #C550 //比較輸入字是否變成C550 AND 255.06 SET 042.05 //設(shè)置控制周期標(biāo)志 LD TR0 AND 042.05 MOV DM0055 102 //將控制周期的設(shè)定值寫(xiě)入輸出字 CMP 002 DM0055 //是否寫(xiě)入 AND 255.06 RSET 040.05 RSET 042.05 SET 040.06 //向下繼續(xù)設(shè)置標(biāo)志    [NETWORK] Name="Shift" //偏移量設(shè)置 [STATEMENTLIST] LD 040.06 OUT TR0 AND NOT 042.06 MOV #C660 102 //讀輸出邊與輸入邊的偏移量 CMP 002 #C660 //比較輸入字是否變成C660 AND 255.06 SET 042.06 //設(shè)置偏移量標(biāo)志 LD TR0 AND 042.06 MOV DM0056 102 //將偏移量的設(shè)定值寫(xiě)入輸出字 CMP 002 DM0056 //是否寫(xiě)入 AND 255.06 RSET 040.06 RSET 042.06 SET 040.00    [NETWORK] Name="Return" //返回 [STATEMENTLIST] OUT TR0 AND NOT 042.00 MOV #C070 102 //讀輸入邊的處理值 CMP 002 #C070 //比較輸入字變成C070 AND 255.06 SET 042.00 //返回標(biāo)志 LD TR0 AND 042.00 MOV DM0050 102 //將設(shè)定溫度值寫(xiě)入輸出字 RSET 040.00 RSET 042.00 RSET 040.10 4 結(jié)束語(yǔ) 以上是PID溫度控制的PLC程序設(shè)計(jì)實(shí)例,經(jīng)過(guò)反復(fù)試驗(yàn),該系統(tǒng)可以維持溫度在1℃之間變化,保證了好的生產(chǎn)狀況,減少了不合格品發(fā)生的幾率。
  1. 三菱PLC數(shù)據(jù)線(xiàn)型號(hào)
    2024-08-18
  2. 三菱MSH-FC09VC空調(diào)光觸媒空調(diào)過(guò)濾網(wǎng)在哪里購(gòu)買(mǎi)?
    2024-08-17
  3. 去慈溪三菱4S店汽車(chē)保養(yǎng),修理工放掉了我車(chē)內(nèi)的機(jī)油,居然沒(méi)有給我加上新的機(jī)油。!!!!
    2024-08-17
  4. 慈溪三菱中央空調(diào)特約維修在哪里 謝謝
    2024-08-17
  5. 慈溪的三菱空調(diào)維修店在那里
    2024-08-17
  6. 為什么電動(dòng)車(chē)幾乎都是后驅(qū)?例如BMW i3、三菱的i-Miev、大眾的UP!
    2024-08-17
  7. 慈溪三菱空調(diào)維修 三菱空調(diào)特約維修
    2024-08-17
  8. 慈溪三菱空調(diào)維修(廠(chǎng)家指定)
    2024-08-17
  9. 三菱空氣凈化器怎么樣?
    2024-08-17
  10. 海信空調(diào),海爾,格里,LG,三菱,這幾家哪家空調(diào)好?全凈化空氣功能有嗎?除甲醛功能彪悍的。?
    2024-08-17
  11. 三菱4g18發(fā)動(dòng)機(jī)正時(shí)皮帶如何安裝
    2024-08-17
  12. 三菱重工的空氣凈化器好不好?
    2024-08-17
  13. 三菱的一款迷你HelloKitty小型車(chē)報(bào)價(jià)...粉紅色的...
    2024-08-17
  14. 比亞迪s6發(fā)動(dòng)機(jī)改裝成三菱2.0發(fā)動(dòng)機(jī),需要多少錢(qián)?
    2024-08-17
  15. 我的車(chē)發(fā)動(dòng)機(jī)三菱4G69,改氣多點(diǎn)直噴,想安裝點(diǎn)火提前器,不知哪個(gè)型號(hào)適配我的車(chē),懇求大家給以指導(dǎo)
    2024-08-17