一種基于工業(yè)PC的軟PLC控制系統(tǒng)_第1頁
一種基于工業(yè)PC的軟PLC控制系統(tǒng)_第2頁
一種基于工業(yè)PC的軟PLC控制系統(tǒng)_第3頁
一種基于工業(yè)PC的軟PLC控制系統(tǒng)_第4頁
一種基于工業(yè)PC的軟PLC控制系統(tǒng)_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、一種基于工業(yè)PC的軟PLC控制系統(tǒng)首先介紹了基于PC的控制系統(tǒng)的發(fā)展?fàn)顩r以及軟PLC技術(shù)的概念和組成結(jié)構(gòu)。然后詳細(xì)地敘述了基于工業(yè)PC的軟PLC的軟、硬件實(shí)現(xiàn)方案,最后給出了應(yīng)用實(shí)例。0、引言 基于PC的控制系統(tǒng)是國際上繼PLC和DCS之后推出的工業(yè)控制系統(tǒng)。目前在工業(yè)控制領(lǐng)域,基于PC的控制系統(tǒng)得到日益廣泛的應(yīng)用。同時由于計算機(jī)軟、硬件技術(shù)的迅速發(fā)展以及工控領(lǐng)域國際編程標(biāo)準(zhǔn)-IEC 61131-3的制定和推廣應(yīng)用,在工業(yè)PC上以軟件技術(shù)實(shí)現(xiàn)PLC的功能,即軟PLC技術(shù),成為一項新興的技術(shù)。 1、基于PC的軟PLC控制系統(tǒng)的發(fā)展現(xiàn)狀 1.1 IEC 61131-3國際編程標(biāo)準(zhǔn)1 IEC 611

2、31國際標(biāo)準(zhǔn)的制訂是軟PLC技術(shù)發(fā)展的一個重要基礎(chǔ)。為了規(guī)范工業(yè)控制領(lǐng)域的編程語言,20世紀(jì)90年代初,IEC(國際電工委員會)頒布了IEC 61131國際標(biāo)準(zhǔn)。該標(biāo)準(zhǔn)共分八個部分,依次包括:基本概念、硬件裝置和測試、編程語言標(biāo)準(zhǔn)、用戶指南、通信服務(wù)規(guī)范、現(xiàn)場總線通信(未公布)、模糊控制語言和編程實(shí)施方針。其中IEC 61131-3是PLC編程語言標(biāo)準(zhǔn),它詳細(xì)地說明了句法、語義和5種編程語言:指令表(Instruction),結(jié)構(gòu)化文本(Structured Text),順序功能圖(Sequential Function Diagram),梯形圖(Ladder Diagram),功能塊圖(Fu

3、nction Block Diagram)。在這五種編程語言中,指令表和結(jié)構(gòu)化文本是文本語言,易于實(shí)現(xiàn)一些復(fù)雜的算法;順序功能圖、梯形圖和功能塊圖是圖形語言,它們則擅長處理邏輯控制。同時該標(biāo)準(zhǔn)還允許在同一項目中,使用多種語言進(jìn)行混合編程,而且支持POU(程序組織單元)的重復(fù)使用,為不同知識背景的編程人員提供了方便。 1.2 基于PC的軟PLC控制系統(tǒng)的發(fā)展現(xiàn)狀4 目前,國外許多工業(yè)控制系統(tǒng)開發(fā)商正在發(fā)展基于PC的控制系統(tǒng),推出了符合IEC 61131-3標(biāo)準(zhǔn)的產(chǎn)品。在國內(nèi)市場上常見的控制產(chǎn)品有:法國CJ International公司的ISaGRAF,德國KW公司的MULTIPROG,BECK

4、HOFF公司的TWinCAT以及SOFTPLC公司的SoftPLC等。作為典型的基于PC的控制系統(tǒng),西門子公司的WinAC在國內(nèi)得到了廣泛的應(yīng)用。 1.3 基于PC的軟PLC控制系統(tǒng)的優(yōu)點(diǎn) 軟PLC基于PC機(jī),建立在PC機(jī)的軟、硬件平臺之上,因此具有PC機(jī)的優(yōu)點(diǎn)和PLC的特性。 具有良好的開放性。全面支持Windows、Linux等操作系統(tǒng),通過OPC或DDE等通信方式易于與第三方的產(chǎn)品集成運(yùn)行。其硬件結(jié)構(gòu)不再封閉,用戶可以選擇不同的I/O模塊來滿足自己的要求。 具有廣泛的兼容性。軟PLC的技術(shù)是基于IEC 61131-3標(biāo)準(zhǔn)的,用戶在掌握了標(biāo)準(zhǔn)語言后,開發(fā)比較容易。由于該標(biāo)準(zhǔn)繼承了傳統(tǒng)PLC

5、的編程方式,因此不同知識背景的工程人員容易接受和使用。 可以節(jié)省投資。與傳統(tǒng)的PLC解決方案相比,基于PC的軟PLC由于其良好的開放性和兼容性,可以大大減少設(shè)備投資和系統(tǒng)的集成費(fèi)用。 性價比日益提高。PC處理器的速度日益提高,充分利用CPU的超強(qiáng)速度容易實(shí)現(xiàn)數(shù)據(jù)處理、多回路調(diào)節(jié)和多任務(wù)。 基于以上原因,許多學(xué)者就軟PLC控制系統(tǒng)的實(shí)現(xiàn)方案作了相應(yīng)的探討,在此,筆者設(shè)計了一種基于工業(yè)PC的軟PLC控制系統(tǒng)。 2、基于工業(yè)PC的軟PLC控制系統(tǒng)的實(shí)現(xiàn) 2.1 系統(tǒng)的硬件結(jié)構(gòu)搭建 該軟PLC控制系統(tǒng)的硬件平臺選用的是凌華PACK-610工業(yè)計算機(jī),I/O板卡分別選用的是研華公司的PCI-1710,P

6、CL-720和中泰公司的PC6311。在工業(yè)PC中可以驅(qū)動多塊板卡,根據(jù)被控對象而定。系統(tǒng)結(jié)構(gòu)如圖1。圖1 系統(tǒng)結(jié)構(gòu)圖 2.2 軟PLC系統(tǒng)的軟件實(shí)現(xiàn) 該軟PLC系統(tǒng)由編程系統(tǒng)和運(yùn)行系統(tǒng)構(gòu)成。編程系統(tǒng)用來完成PLC應(yīng)用程序的開發(fā),運(yùn)行系統(tǒng)負(fù)責(zé)對整個系統(tǒng)的管理和對應(yīng)用程序的執(zhí)行。由于編程系統(tǒng)和運(yùn)行系統(tǒng)運(yùn)行于同一臺工控機(jī),所以兩者之間的通信采用了動態(tài)連接庫(DLL)函數(shù)的方法實(shí)現(xiàn)數(shù)據(jù)交換。系統(tǒng)整體框圖如圖2。圖2 軟PLC系統(tǒng)框圖 (1)編程系統(tǒng) 按照IEC 61131-3的標(biāo)準(zhǔn),編程系統(tǒng)中提供了對整個工程的管理、資源配置和POU(程序組織單元)的編輯調(diào)試功能。POU包括程序、功能塊和函數(shù),其中程

7、序可以調(diào)用程序、功能塊和函數(shù);功能塊可以調(diào)用功能塊和函數(shù);函數(shù)可以互相調(diào)用。 工程管理功能提供了整個工程所需文件的管理,在這個工程中可以同時用五種語言編程來實(shí)現(xiàn)控制功能。POU編輯功能包含兩個窗口:一個是變量定義窗口,在此用戶可以聲明POU所需的元素,這些變量包含局部變量、外部變量,而且用戶還可以聲明相應(yīng)的功能塊和函數(shù)的名稱。另外一個窗口則是程序的編輯窗口,用戶在此可以編輯圖形語言的程序和文本語言的程序。此外,在編程系統(tǒng)中還可以嵌入復(fù)雜的控制算法,如智能PID算法等。 調(diào)試工具欄包含編譯和調(diào)試功能:編譯功能是將用戶創(chuàng)建的圖形或者文本程序編譯成運(yùn)行系統(tǒng)可以執(zhí)行的目標(biāo)代碼,同時也提供了語法語義的檢

8、查功能。就調(diào)試功能而言,用戶可以下載程序,而且可以在線仿真和調(diào)試。 (2)運(yùn)行系統(tǒng) 運(yùn)行系統(tǒng)的主要功能有三個:與編程系統(tǒng)的通信、目標(biāo)代碼的執(zhí)行和各種I/O硬件的驅(qū)動。 為了便于軟件的日后維護(hù)和升級,將運(yùn)行系統(tǒng)和編程系統(tǒng)分開,以便于移植到不同的硬件平臺。兩者的通信依靠動態(tài)連接庫提供的函數(shù),以下是動態(tài)連接庫提供的函數(shù): PlcNetInitialize(); / 通信初始化 PlcNetShutDown(); / 關(guān)閉通信 PlcNetSendData();/ 接收數(shù)據(jù) PlcNetRecData();/ 發(fā)送數(shù)據(jù) PlcNetGetRxStatus();/ 得到通信就緒信號 在運(yùn)行系統(tǒng)的工程中加

9、入動態(tài)連接庫的導(dǎo)入庫文件IPCDrv.lib,這樣就可以在運(yùn)行系統(tǒng)中調(diào)用這些庫函數(shù)了。當(dāng)程序運(yùn)行時,即可啟動編程系統(tǒng)和運(yùn)行系統(tǒng)的數(shù)據(jù)交換軟PLC運(yùn)行系統(tǒng)虛擬機(jī)是運(yùn)行系統(tǒng)的核心,也是整個軟PLC系統(tǒng)的核心。它一方面負(fù)責(zé)處理操作系統(tǒng)的服務(wù)請求,另一方面對應(yīng)用程序進(jìn)行管理和執(zhí)行。程序執(zhí)行時,首先為應(yīng)用程序分配內(nèi)存,將程序加載到分配好的內(nèi)存里,然后在虛擬機(jī)中解釋并執(zhí)行編程系統(tǒng)下載的目標(biāo)代碼。該運(yùn)行系統(tǒng)虛擬機(jī)支持IEC 61131-3標(biāo)準(zhǔn)規(guī)定的100余種函數(shù)、功能塊和操作符。使用虛擬機(jī)技術(shù),可以方便地將運(yùn)行系統(tǒng)移植到不同的硬件平臺。 運(yùn)行系統(tǒng)的I/O驅(qū)動模塊直接驅(qū)動具體的硬件。為了完成與I/O模塊的數(shù)據(jù)

10、交換,運(yùn)行系統(tǒng)在內(nèi)存中開辟了一個段表,稱為I/O映象區(qū)域。這個I/O映象區(qū)域在編程系統(tǒng)和運(yùn)行系統(tǒng)之間起一個橋梁的作用,其作用是將編程系統(tǒng)定義的某一個地址的物理變量直接映射到段表的某一個地址,并根據(jù)這個地址的偏移量來操作具體的硬件。 這個段表分成四段,依次為:段頭(header),輸入?yún)^(qū)(input),輸出區(qū)(output)和標(biāo)志區(qū)(maker)。段表的段頭占用6個字節(jié)(byte),從0到5,定義了整個段的長度,輸入和輸出各占用的字節(jié)數(shù)等。輸入?yún)^(qū)從6開始,也就是輸入?yún)^(qū)的偏移量(offset)是6,如果將輸入的變量值放在輸入?yún)^(qū)的第1個字節(jié)(byte),則該變量的地址是7。如果輸入?yún)^(qū)的長度占有2個字

11、節(jié)數(shù),則輸出區(qū)的偏移量是8,這樣輸出變量的地址應(yīng)該加上偏移量8。標(biāo)志區(qū)(maker)則用來存放中間變量。原理如圖3所示。圖3 I/O映象原理圖 I/O驅(qū)動模塊中提供了四個函數(shù),依次為: LzsEnvInitialize (void);/ 初始化過程 LzsEnvShutDown (void);/ 關(guān)閉過程 LzsEnvWriteProcImg ();/ 寫過程映象 LzsEnvReadProcImg ();/ 讀過程映象 按照上面的原理,以研華板卡PCI-1710為例,為了讀寫編程系統(tǒng)中定義的三個變量(地址分別為%IX0.5、%IX1.6、%QX0.7)其主要代碼如下: LzsEnvReadP

12、rocImg() ptDioReadBit.port = 0; /讀輸入?yún)^(qū)的第零個字節(jié) ptDioReadBit.bit = 6; /讀輸入?yún)^(qū)第零個字節(jié)的第六位,編程系統(tǒng)中的地址為%IX0.5 ptDioReadBit.state = &usState; / 返回值 dwErrCde = DRV_DioReadBit(lDriverHandle, (LPT_DioReadBit)&ptDioReadBit); *(LZSBYTE*)pProcImgSeg_p+0) = usState; 寫過程映象,也按照上面的方法。整個系統(tǒng)在Visual C+6.0環(huán)境下開發(fā),目前,已對多個試驗(yàn)對象實(shí)現(xiàn)成功控

13、制。 3、應(yīng)用實(shí)例 按照以上的系統(tǒng)構(gòu)建方案,控制對象既有開關(guān)量又有模擬量,分別為五層電梯模型和三容液位水槽。 (1)對于電梯模型的控制而言,主要涉及到開關(guān)量信號,故采用梯形圖編程語言。以研華公司的PCL-720板卡為I/O硬件,PCL-785B繼電器板卡將信號放大,已對五層電梯模型實(shí)現(xiàn)控制。部分梯形圖程序如圖4。圖4 電梯控制梯形圖 (2)三容液位水槽是一個強(qiáng)耦合、變結(jié)構(gòu)的復(fù)雜被控對象,在此采用了PID算法。由于結(jié)構(gòu)化文本是一種類pascal語言,擅長一些復(fù)雜算法和模擬信號的控制,故采用結(jié)構(gòu)化文本語言,以中泰公司的PC6311板卡作為I/O硬件,應(yīng)用PID算法對三容液位水槽實(shí)現(xiàn)成功控制。部分代

14、碼如下: VAR t : ton; t_in,t_out : bool; aoutport0_1 :REAL AT %QX2.0; ain_1 :REAL AT %IX6.0; END_VAR /以上聲明了中間變量和輸入輸出變量 if now_f 2.0 then now_control := 4.96; aoutport0_1 := now_control; else if now_f 2.64 then now_control := k_p * now_e; aoutport0_1 := now_control + 1.01; else control_error_p := k_p * (now_e - past_e); control_error_i := k_i * now_e; control_error_d := k_d * (now_e - 2.0 * past_e + pp

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論