国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

PLC編程語言的設計與應用

發布時間:2010-8-21 17:58    發布者:lavida
關鍵詞: PLC , 編程 , 語言
1 引言  

PLC中有多種程序設計語言,如梯形圖語言、布爾助記符語言、功能表圖語言、功能模塊圖語言及結構化語句描述語言等。梯形圖語言和布爾助記符語言是基本程序設計語言,它通常由一系列指令組成,用這些指令可以完成大多數簡單的控制功能,例如,代替繼電器、計數器、計時器完成順序控制和邏輯控制等。通過擴展或增強指令集,它們也能執行其它的基本操作。功能表圖語言和語句描述語言是高級的程序設計語言,它可根據需要去執行更有效的操作,例如,模擬量的控制,數據的操縱,報表的報印和其他基本程序設計語言無法完成的功能。功能模塊圖語言采用功能模塊圖的形式,通過軟連接的方式完成所要求的控制功能,它不僅在PLC中得到了廣泛的應用,在集散控制系統的編程和組態時也常常被采用。由于它具有連接方便、操作簡單、易于掌握等特點,為廣大工程設計和應用人員所喜愛。  

2 常用的程序設計語言分類  

根據PLC應用范圍,程序設計語言可以組合使用,常用的程序設計語言有以下幾種:  

(1) 梯形圖(Ladder Diagram)程序設計語言  

梯形圖程序設計語言是用梯形圖的圖形符號來描述程序的一種程序設計語言。采用梯形圖程序設計語言,這種程序設計語言采用因果關系來描述事件發生的條件和結果,每個梯級是一個因果關系。在梯級中,描述事件發生的條件表示在左面,事件發生的結果表示在右面。  

梯形圖程序設計語言是最常用的一種程序設計語言,它來源于繼電器邏輯控制系統的描述。在工業過程控制領域,電氣技術人員對繼電器邏輯控制技術較為熟悉。因此,由這種邏輯控制技術發展而來的梯形圖受到歡迎,并得到廣泛的應用。  

梯形圖程序設計語言的特點是:  

·與電氣操作原理圖相對應,具有直觀性和對應性;  

·與原有繼電器邏輯控制技術相一致,易于撐握和學習;  

·與原有的繼電器邏輯控制技術的不同點是:梯形圖中的能流(Power FLow)不是實際意義的電流,內部的繼電器也不是實際存在的繼電器,因此應用時需與原有繼電器邏輯控制技術的有關概念區別對待;  

·與布爾助記符程序設計語言有一一對應關系,便于相互轉換和程序檢查。  

(2) 布爾助記符(Boolean Mnemonic)程序設計語言  

布爾助記符程序設計語言是用布爾助記符來描述程序的一種程序設計語言。布爾助記符程序設計語言與計算機中的匯編語言非常相似,采用布爾助記符來表示操作功能。  

布爾助記符程序設計語言具有下列特點:  

·采用助記符來表示操作功能,具有容易記憶,便于撐握的特點;  

·在編程器的鍵盤上采用助記符表示,具有便于操作的特點,可在無計算機的場合進行編程設計;  

·與梯形圖有一一對應關系,其特點與梯形圖語言基本類同。  

(3) 功能表圖(Sepuential Function Chart)程序設計語言  

功能表圖程序設計語言是用功能表圖來描述程序的一種程序設計語言。它是近年來發展起來的一種程序設計語言。采用功能表圖的描述,控制系統被分為若干個子系統,從功能入手,使系統的操作具有明確的含義,便于設計人員和操作人員設計思想的溝通,便于程序的分工設計和檢查調試。功能表圖程序設計語言的特點是:  

·以功能為主線,條理清楚,便于對程序操作的理解和溝通;  

·對大型的程序,可分工設計,采用較為靈活的程序結構,可節省程序設計、調試時間;  

·常用于系統規模校大、程序關系較復雜的場合;  

·只有在活動步的命令和操作被執行,對活動步后的轉換進行掃描,因此整個程序的掃描時間較其他程序編制的程序掃描時間要短得多。  

功能表圖來源于佩特利(Petri)網,由于它具有圖形表達方式,能比較簡單清楚地描述并發系統和復雜系統的所有現象,并能對系統中存在的象死鎖、不安全等反常現象進行分析和建模,在模型的基礎上可以直接編程,因此得到了廣泛的應用。近幾年推出的可編程控制器和小型集散控制系統中也已提供了采用功能表圖描述語言進行編程的軟件。  

(4) 功能模塊圖(Function Block)程序設計語言  

功能模塊圖程序設計語言是采用功能模塊來表示模塊所具有的功能,不同的功能模塊有不同的功能。它有若干個輸入端和輸出端,通過軟連接的方式,分別連接到所需的其它端子,完成所需的控制運算或控制功能。功能模塊可  

以分為不同的類型,在同一種類型中,也可能因功能參數的不同而使功能或應用范圍有所差別,例如,輸入端的數量、輸入信號的類型等的不同使它的使用范圍不同。由于采用軟連接的方式進行功能模塊之間及功能模塊與外部端子的連接,因此控制方案的更改、信號連接的替換等操作可以很方便實現。功能模塊圖程序設計語言的特點是:  

·以功能模塊為單位,從控制功能入手,使控制方案的分析和理解變得容易;  

·功能模塊是用圖形化的方法描述功能,它的直觀性大大方便了設計人員的編程和組態,有較好的易操作性;  

·對控制規模較大、控制關系較復錄的系統,由于控制功能的關系可以較清楚地表達出來,因此,編程和組態時間可以縮短,調試時間也能減少;  

·由于每種功能模塊需要占用一定的程序內存,對功能模塊的執行需要一定的執行時間,因此,這種設計語言在大中型PLC和集散控制系統的編程和組態中才被采用。  

(5) 結構化語句(Structured Text)描述程序設計語言  

結構化語句描述程序設計語言是用結構化的描述語句來描述程序的一種程序設計語言。它是一種類似于高級語言的程序設計語言。在大中型的可編程序控制器系統中,常采用結構化語句描述程序設計語言來描述控制系統中各個變量的關系。它也被用于集散控制系統的編程和組態。  

結構化語句描述程序設計語言采用計算機的描述語句來描述系統中各種變量之間的運算關系,完成所需的功能或操作。大多數制造廠商采用的語句描述程序設計語言與BASIC語言、PASCAL語言或C語言等高級語言相類似,但為了應用方便,在語句的表達方法及語句的種類等方面都進行了簡化。  

結構化程序設計語言具有下列特點:  

·采用高級語言進行編程,可以完成較復雜的控制運算;  

·需要有一定的計算機高級程序設計語言的知識和編程技巧,對編程人員的技能要求較高,普通電氣人員難以完成。  

·直觀性和易操作性等較差;  

·常被用于采用功能模塊等其他語言較難實現的一些控制功能的實施。  

部分PLC的制造廠商為用戶提供了簡單的結構化程序設計語言,它與助記符程序設計語言相似,對程序的步數有一定的限制。同時,提供了與PLC間的接口或通信連接程序的編制方式,為用戶的應用程序提供了擴展余地。  

3 PLC程序設計語言應用實例  

溫度控制是許多機器的重要的構成部分。它的功能是將溫度控制在所需要的溫度范圍內,然后進行工件的加工與處理。PID控制系統是得到廣泛應用的控制方法之一,下面較為詳盡地介紹了PID溫度控制的PLC程序設計實例。  

(1) 系統組成  

本套系統采用Omron的PLC與其溫控單元以及Pro-face的觸摸屏所組成。系統包括CQM1H-51、擴展單元TC-101、GP577R以及探溫器、加熱/制冷單元。  

(2) 觸摸屏參數設置  

設002代表現在的溫度,而102表示輸出的溫度。如按下開始設置就可設置參數。需要設置的參數有6個,分別是比例帶、積分時間、微分時間、滯后值、控制周期、偏移量。它們在PLC的地址與一些開關的地址如下:  

比例帶 : DM51 積分時間 : DM52  

微分時間 : DM53 滯后值 : DM54  

控制周期 : DM55 偏移量 : DM56  

數據刷新 : 22905  

(3) PLC程序  

002:PID的輸入字  

102:PID的輸出字  

[NETWORK]  

Name="Action Check" //常規檢查  

[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  

//不在參數設置狀態  

MOV DM0050 102  

//將設置溫度DM50傳送給PID輸出字  

LD TR1  

MOV 002 DM0057  

//將002傳送到DM57  

[NETWORK]  

Name="Setting Start" //設置開始  

[STATEMENTLIST]  

LD 253.13  

OUT TR0  

AND 229.05  

//觸摸屏上的開始設置開關  

DIFU 080.05 //設置微分  

LD TR0  

AND 041.15  

AND 080.05  

SET 040.01 //開始設置標志位1  

SET 040.10 //開始設置標志位2  

[NETWORK]  

Name="Poportion" //比例帶設置  

[STATEMENTLIST]  

LD 040.01  

OUT TR0  

AND NOT 042.01  

MOV #C110 102  

//讀輸出邊與輸入邊的比例帶  

CMP 002 #C110  

//比較輸入字是否變成C110  

AND 255.06 //等于  

SET 042.01 //設置比例帶標志  

LD TR0  

AND 042.01  

MOV DM0051 102  

//將比例帶的設定值寫入輸出字  

CMP 002 DM0051 //是否寫入  

AND 255.06  

SET 040.01 //復位標志1  

RSET 042.01 //復位比例帶標志  

SET 040.02 //向下繼續設置標志  

[NETWORK]  

Name="Integral"http://積分時間設置  

[STATEMENTLIST]  

LD 040.02  

OUT TR0  

AND NOT 042.02  

MOV #C220 102  

//讀輸出邊與輸入邊的積分  

CMP 002 #C220  

//比較輸入字是否變成C220  

AND 255.06  

SET 042.02 //設置積分標志  

LD TR0  

AND 042.02  

MOV DM0052 102  

//將積分的設定值寫入輸出字  

CMP 002 DM0052 //是否寫入  

AND 255.06  

RSET 040.02  

RSET 042.02  

SET 040.03 //向下繼續設置標志  

[NETWORK]  

Name="differential"http://微分時間設置  

[STATEMENTLIST]  

LD 040.03  

OUT TR0  

AND NOT 042.03  

MOV #C330 102  

//讀輸出邊與輸入邊的微分  

CMP 002 #C330  

//比較輸入字是否變成C330  

AND 255.06  

SET 042.03 //設置微分標志  

LD TR0  

AND 042.03  

MOV DM0053 102  

//將微分的設定值寫入輸出字  

CMP 002 DM0053 //是否寫入  

AND 255.06  

RSET 040.03  

RSET 042.03  

SET 040.04 //向下繼續設置標志  

[NETWORK]  

Name="Hysteresis"http://滯后值設置  

[STATEMENTLIST]  

LD 040.04  

OUT TR0  

AND NOT 042.04  

MOV #C440 102  

//讀輸出邊與輸入邊的滯后值  

CMP 002 #C440  

//比較輸入字是否變成C440  

AND 255.06  

SET 042.04 //設置滯后值標志  

LD TR0  

AND 042.04  

MOV DM0054 102  

//將滯后值的設定值寫入輸出字  

CMP 002 DM0054 //是否寫入  

AND 255.06  

RSET 040.04  

RSET 042.04  

SET 040.05 //向下繼續設置標志  

[NETWORK]  

Name="Period" //控制周期設置  

[STATEMENTLIST]  

LD 040.05  

OUT TR0  

AND NOT  

042.05  

MOV #C550 102  

//讀輸出邊與輸入邊的控制周期  

CMP 002 #C550  

//比較輸入字是否變成C550  

AND 255.06  

SET 042.05 //設置控制周期標志  

LD TR0  

AND 042.05  

MOV DM0055 102  

//將控制周期的設定值寫入輸出字  

CMP 002 DM0055 //是否寫入  

AND 255.06  

RSET 040.05  

RSET 042.05  

SET 040.06 //向下繼續設置標志  

[NETWORK]  

Name="Shift" //偏移量設置  

[STATEMENTLIST]  

LD 040.06  

OUT TR0  

AND NOT 042.06  

MOV #C660 102  

//讀輸出邊與輸入邊的偏移量  

CMP 002 #C660  

//比較輸入字是否變成C660  

AND 255.06  

SET 042.06 //設置偏移量標志  

LD TR0  

AND 042.06  

MOV DM0056 102  

//將偏移量的設定值寫入輸出字  

CMP 002 DM0056 //是否寫入  

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 //返回標志  

LD TR0  

AND 042.00  

MOV DM0050 102  

//將設定溫度值寫入輸出字  

RSET 040.00  

RSET 042.00  

RSET 040.10  

4 結束語  

以上是PID溫度控制的PLC程序設計實例,經過反復試驗,該系統可以維持溫度在1℃之間變化,保證了好的生產狀況,減少了不合格品發生的幾率。
本文地址:http://www.qingdxww.cn/thread-23251-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 想要避免發生災難,就用MPLAB SiC電源仿真器!
  • Cortex-M4外設 —— TC&TCC結合事件系統&DMA優化任務培訓教程
  • 深度體驗Microchip自動輔助駕駛應用方案——2025巡展開啟報名!
  • 利用模擬開發工具生態系統進行安全電路設計
  • 貿澤電子(Mouser)專區

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 91免费版在线观看 | 欧美视频xx | 成人欧美一区二区三区视频不卡 | 青青草国 | 成免费视频 | 99视频在线观看免费 | 四虎4hu永久免费视频大全 | 日本高清在线播放一区二区三区 | 朋友的母亲hd中字在线观看 | 麻豆国内精品久久久久久 | 69视频免费在线观看 | 天天操操 | 久久亚洲这里只有精品18 | 天天操天天擦 | 亚欧精品在线观看 | 紫黑色的巨大又粗又硬视频 | 色婷婷综合久久久久中文一区二区 | 国产69精品久久久久999小说 | 色播在线永久免费视频网站 | 国产福利在线免费观看 | swag精品| 亚洲国产精品久久精品成人 | 成人韩免费网站 | 国产 日韩 在线 | 91成人在线播放 | 97se狠狠狠狠狠亚洲综合网 | 国产精品黄网站免费进入 | 国产玖玖在线 | 欧美精品香蕉在线观看网 | 日韩欧美精品综合一区二区三区 | 亚洲一区二区三区四区在线观看 | 日本综合欧美一区二区三区 | 久久99精品久久久久子伦小说 | 欧美精品久久久亚洲 | 亚洲日本在线播放 | 青丝影院高清版在线观看 | 国产三级精品久久三级国专区 | 四虎最新网址 | 国产精品尹人在线观看免费 | 日韩欧美精品综合一区二区三区 | 欧美激情视频一区二区三区 |