<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 模擬技術 > 設計應用 > PLC與Excel的DDE在測控系統(tǒng)中的應用

          PLC與Excel的DDE在測控系統(tǒng)中的應用

          作者: 時間:2012-03-23 來源:網(wǎng)絡 收藏

          中的應用

          介紹應用的鏈接,將PC機與鏈接起來對外圍設備端口直接訪問,并對原始數(shù)據(jù)更好地使用和保存的技術。在液面的設計實踐中應用該技術,提高了測控質(zhì)量。
            關鍵詞:;;PLC

          Application of PLC and DDE of Excel in the Measure Control Syste m
          ZHANG Lixia
          (Beijing United University, Beijing 100023, China)
            Key words: measure control system; Excel; DDE; PLC
          1.1PLC與Excel的DDE在測控系統(tǒng)中的作用
            使用PLC的測控系統(tǒng),其數(shù)據(jù)庫的基本數(shù)據(jù)主要來自PLC的實時采集;它要求系統(tǒng)具有從PLC接收數(shù)據(jù)的能力,并能實時地把接收或發(fā)送的數(shù)據(jù)顯示出來,而數(shù)據(jù)庫系統(tǒng)沒有直接對端口訪問的能力。數(shù)據(jù)的發(fā)送和接收都涉及到計算機通信,它是通過對接口的讀寫來實現(xiàn)的。這要求測控系統(tǒng)和上位機之間有一個很好的通信協(xié)議,保證指令的正確執(zhí)行,保證數(shù)據(jù)的正確傳送。Excel中的DDE提供了一種支持兩個應用程序之間動態(tài)地交換數(shù)據(jù)信息的功能,利用它可以滿足上述要求。?
          1.2PLC與Excel的DDE在測控系統(tǒng)之間交換數(shù)據(jù)信息
            Excel的DDE是微軟公司推出的一種基于WindowsNT操作系統(tǒng)的內(nèi)部程序通信協(xié)議。凡是支持DDE的應用程序都可以通過DDE相互通信,彼此交換信息和數(shù)據(jù)。利用通信軟件RSLinx將PC機與PLC Micrologix 1000鏈接起來。RSLinx提供的網(wǎng)絡驅(qū)動程序的類型有很多種,利用編程軟件RSLogix 500對PLC編程,利用DDE鏈接功能對PLC采集來的數(shù)據(jù)進行監(jiān)視,其中顯示的數(shù)據(jù)存放在Microsoft Excel文件中。新的測控系統(tǒng)應能接受上位機的指令,并進行相應的操作。此外,盡管引入了Microsoft Excel,系統(tǒng)仍能保證有獨立的測控功能。?
            PLC與Excel的鏈接過程是通過RSLinx的DDE/OPC功能實現(xiàn)的,在鏈接中RSLinx作DDE的服務器,Excel作DDE的客戶端。
          2.1在Windows中組態(tài)DDE
            a.打開“控制面板”中的“管理工具”。
            b.雙擊“服務”圖標,啟動“NetworkDDE”和“NetworkDDE DSDM”并設置為自動運行,然后退出服務。在設置過程中,這兩項服務并不是自動運行的,所以當初次配置DDE時,一定要將這兩項服務啟動。
            c.單擊“開始”按鈕,在“運行”中輸入DDESHARE,打開DDESHARE窗口。
            d.在DDESHARE中組態(tài)新的DDE通信,單擊“共享”按鈕,選擇“DDE共享”,打開DDE共享窗口。
            e.在DDE共享窗口中單擊“添加共享”按鈕,彈出DDE3共享屬性窗口,進行設置。
            f.上面的共享屬性窗口設置完畢后,單擊OK按鈕回到DDE共享窗口;單擊“信任共享”按鈕,設置受信任的共享屬性。
            至此完成了Windows中DDE的組態(tài)。
          2.2在RSLinx中組態(tài)DDE
            a.打開“RSLinx Gateway”,單擊主菜單中的“DDE/OPC”,選擇下拉子菜單中的“TopicConfiguration”,彈出“DDE/OPCTopicConfiguration”窗口。
            b.單擊窗口中的“NEW”按鈕,建立新的“DDE/OPC”鏈接。
            c.對“Data source”,“Data Collection”,“Advanced Communication”的設置完成后保存。
            d.在RSLinx的主窗口中選擇“Edit”菜單下的“copy DDE link to clipboard”彈出復制“DDE數(shù)據(jù)鏈接”窗口,此處以“DataTable”中的“T4:0.ACC”為例做數(shù)據(jù)鏈接。根據(jù)需要,也可以選擇其他需要鏈接的數(shù)據(jù),如“N7:0”等。
            按上述步驟進行,即可完成RSLinx中的組態(tài)。
          2.3在Excel中組態(tài)DDE
            a.打開Excel,選擇“編輯”菜單下的“選擇性粘貼”,彈出新的窗口。
            b.選擇“粘貼鏈接”菜單下的“Unicode文本”,這樣就建立了PLC與Excel的DDE動態(tài)數(shù)據(jù)鏈接。
            筆者參與開發(fā)了液位自動控制系統(tǒng)的校驗測控,該系統(tǒng)使用PLC為控制器,液位、流量、溫度為被控參數(shù),主要完成對PID參數(shù)的測試、對象特性的測試、簡單系統(tǒng)的投運、串級控制系統(tǒng)的應用和前饋——反饋系統(tǒng)的投運等實驗內(nèi)容。
            第一步:工作環(huán)境設置,系統(tǒng)最多可同時允許對六十個實驗設備進行測試控制,實際工作中可能僅有少數(shù)幾個處于工作狀態(tài),為加快數(shù)據(jù)處理速度,可在開始工作前設置相關的工作狀態(tài)。
            第二步:通信端口初始化,確定系統(tǒng)端口是否處于完全通信狀態(tài)。
            第三步:上位機詢問測試臺有無新的測試數(shù)據(jù)可供讀取,具體取決于相關的系統(tǒng)及協(xié)議。
            在Excel中采用VBA控件,實現(xiàn)數(shù)據(jù)采集與記錄,具體步驟如下:
            a.單擊Excel主菜單的“工具”“宏”,選擇“Visual Basic編輯器”。
            b.雙擊彈出窗口中的“Sheet 1,編寫VB代碼,其作用是把OPC/DDE鏈接過來的數(shù)據(jù)以歷史記錄的形式存在Excel表格中。
            c.單擊VB編輯器窗口,這里以采樣周期為1s,以20個記錄數(shù)據(jù)為例編寫VB程序如下。
            
            
            
            至此,系統(tǒng)就建立起來了。通過建立DDE動態(tài)數(shù)據(jù)鏈接,將PLC中的數(shù)據(jù)T4:0.ACC和N7:5的數(shù)值顯示在Excel表中,達到了監(jiān)視數(shù)據(jù)的效果。
            經(jīng)實驗證明,在控制系統(tǒng)使用PLC與Excel的DDE鏈接的新技術,可對數(shù)據(jù)進行分析統(tǒng)計,也可保存原始測控數(shù)據(jù),進而提高測控質(zhì)量。同時,可進一步利用這個優(yōu)點,延伸功能,如:提高技術水平、簡化工作量、進行控制電路設計等。隨著對DDE的深入理解,其功能必然在實際應用中得到更加充分的發(fā)揮。

          pid控制相關文章:pid控制原理




          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();