技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網(wǎng) > 技術(shù)頻道 > 應(yīng)用方案 > 基于WinCC V6 的制動器試驗臺高速數(shù)據(jù)歸檔與處理

基于WinCC V6 的制動器試驗臺高速數(shù)據(jù)歸檔與處理

時間:2007-12-04 16:13:00來源:zhangting

導(dǎo)語:?本文針對Profibus總線控制的制動器試驗臺控制系統(tǒng)的設(shè)計中需要對數(shù)據(jù)進行高速采集。
摘要:本文針對Profibus總線控制的制動器試驗臺控制系統(tǒng)的設(shè)計中需要對數(shù)據(jù)進行高速采集,而WinCC變量更新周期較長的問題,提出了一種首先利用S7-300 PLC進行高速數(shù)據(jù)采集,然后采用WinCC支持的原始數(shù)據(jù)類型進行數(shù)據(jù)打包,接收并歸檔的方法。此方法中將獲取的數(shù)據(jù)經(jīng)過處理后存儲到自定義的數(shù)據(jù)庫中,并實現(xiàn)了測試過程中的數(shù)據(jù)實時顯示。 關(guān)鍵詞:WinCC,原始數(shù)據(jù)類型,高速數(shù)據(jù)采集,歸檔 引言 Siemens 的監(jiān)控組態(tài)軟件WinCC(Windows Control Center)在生產(chǎn)和過程自動化中對控制任務(wù)編程并支持可視化,它提供了高性能的過程耦合、快速的畫面更新、以及可靠的數(shù)據(jù)處理,因此具有高度的適用性。WinCC提供了適用于工業(yè)的圖形顯示、消息、歸檔以及報表的功能模板,可以通過ODBC和SQL方式訪問歸檔數(shù)據(jù),并通過OLE2.0和ActiveX控件的對象和文檔鏈接,這使得WinCC廣泛地應(yīng)用于復(fù)雜自動控制的集成方案成為可能。 1 系統(tǒng)簡介 本系統(tǒng)是為某公司研制的制動器臺架試驗臺,試驗臺如圖1所示
圖1 制動器試驗臺實物圖
主要完成制動器磨合試驗、效能試驗、熱衰退恢復(fù)等一系列試驗。其控制系統(tǒng)采用了研華工控機、西門子公司的S7-300系列PLC、ProfiBus通訊處理卡CP5611和監(jiān)控軟件WinCC V6,組成了PROFIBUS總線控制系統(tǒng)。 系統(tǒng)連接如圖2所示。 2 問題的提出 在本試驗臺架上根據(jù)國標,制動器臺架試驗臺需要對制動期間的制動力矩進行采集,同時對采集的數(shù)據(jù)進行歸檔,以便對數(shù)據(jù)進行實時分析和以后對試驗數(shù)據(jù)進行分析。一般一個制動周期為2-6s,采樣周期至少為50ms才不至于使數(shù)據(jù)丟失。 WinCC可以通過MPI、PRrofibus、工業(yè)以太網(wǎng)等與下位機PLC進行通訊,將現(xiàn)場數(shù)據(jù)進行收集,歸檔,并顯示在界面上。但是WinCC的最小刷新周期(250ms)不能滿足試驗中對快速信號的采樣要求,不能保證試驗數(shù)據(jù)的可信度。這一刷新周期遠遠大于PLC可能達到的采樣周期(1ms),不能充分利用PLC的采樣速度。因為常規(guī)WinCC組態(tài)不能滿足特殊高速數(shù)據(jù)采集的要求,會導(dǎo)致數(shù)據(jù)的丟失,因此有必要尋找更好的途徑來實現(xiàn)高速數(shù)據(jù)采集的目的。
圖2 系統(tǒng)連接圖
3 設(shè)計思想 存儲過程數(shù)據(jù),并方便快捷的處理數(shù)據(jù)是上位機基于WinCC的過程監(jiān)控系統(tǒng)的目標。WinCC對現(xiàn)場數(shù)據(jù)進行數(shù)據(jù)采集的過程可通過WinCC外部變量按一定周期訪問PLC對應(yīng)地址的數(shù)據(jù)來實現(xiàn),但是這種數(shù)據(jù)采集的周期完全是由WinCC定義的更新周期來決定的。如前所述,WinCC的最小刷新周期(250ms)不能滿足試驗中對快速信號的采樣要求。S7-400系列PLC的SFB37(AR_Send)塊具有將所采集到的過程值傳給WinCC歸檔的功能,但是本系統(tǒng)中采用的S7-300系列沒有這個功能,因此本文的出發(fā)點就是利用S7-300系列有限的資源實現(xiàn)數(shù)據(jù)的高速采集。 本方案中在WinCC中實現(xiàn)高速數(shù)據(jù)采集的方法可歸納如下: PLC每個循環(huán)周期所采集到的過程值可以以一定的順序存放在具有一定格式的DB塊中; WinCC可以定義一種原始數(shù)據(jù)類型變量,可以對PLC里的DB塊直接讀取。 WinCC的以數(shù)據(jù)包的形式一次從PLC接收一批數(shù)據(jù),所以這樣就可以獲取完整的高速數(shù)據(jù),實現(xiàn)對原始高速數(shù)據(jù)的直接處理。 WinCC的歷史歸檔數(shù)據(jù)對于工業(yè)生產(chǎn)過程也極為重要,WinCC在實現(xiàn)高速數(shù)據(jù)采集后還必須對數(shù)據(jù)進行歸檔。WinCC V6的底層數(shù)據(jù)庫是Microsoft SQL 2000,由于WinCC自帶的歸檔數(shù)據(jù)采集周期滿足不了系統(tǒng)性能要求,所以本系統(tǒng)中基于上面介紹的方法是對過程值進行采集,并通過編寫腳本使WinCC過程值數(shù)據(jù)存放在一個已經(jīng)建立過的數(shù)據(jù)庫表格中,然后應(yīng)用軟件可通過查詢數(shù)據(jù)庫表格對歸檔數(shù)據(jù)進行訪問。 4 WinCC高速數(shù)據(jù)采集歸檔的實現(xiàn) 由于篇幅問題,本文只介紹一個制動周期的高速數(shù)據(jù)采集歸檔,不涉及WinCC是如何實現(xiàn)對制動器臺架試驗臺一個完整試驗的數(shù)據(jù)的接收。 下位機PLC的一個制動周期的高速數(shù)據(jù)采集的流程如下所示 1)一個新的制動周期開始; 2)PLC置位信號BrkFlag=1(BrkFlag為WinCC定義的一個二進制外部變量),同時PLC開始采集數(shù)據(jù),此時PLC將采集到的過程值以一定的順序存放在具有一定格式的DB塊中; 3)制動周期完畢,同時PLC 置位信號BrkFlag=0。 上位機WinCC的一個制動周期的高速數(shù)據(jù)采集通過編輯一個動作腳本來實現(xiàn),此時動作設(shè)置一個觸發(fā)器,此觸發(fā)器為位信號BrkFlag,位信號BrkFlag一旦改變就會觸發(fā)這個動作,只有位信號BrkFlag=0時WinCC才會對PLC發(fā)送的過程值進行拆包處理,并做一個制動周期的曲線圖同行對拆包數(shù)據(jù)存入一個已經(jīng)預(yù)先建立好的數(shù)據(jù)庫表格中。上述過程具體設(shè)計如下: 1)定義原始數(shù)據(jù)變量ActualStress,長度為240個字節(jié) WinCC提供了消息幀變量,多個過程值可以被寫入連續(xù)的數(shù)據(jù)塊并以幀形式發(fā)送到WinCC,存儲在WinCC的原始數(shù)據(jù)變量中,原始數(shù)據(jù)變量的格式和長度都是固定不變的。 2)用C Script編寫數(shù)據(jù)采集全局動作 WinCC不能直接對原始數(shù)據(jù)變量進行處理,但提供了C腳本功能可用于編寫處理數(shù)據(jù)變量的全局動作。在本系統(tǒng)中編寫了項目函數(shù)SendStressVar(),此項目函數(shù)通過調(diào)用內(nèi)部函數(shù)GetTagRaw()來實現(xiàn)原始數(shù)據(jù)變量的更新,并對其中的消息幀內(nèi)容進行拆包處理。GetTagRaw()定義如下: #define DATA_SIZE 120 WORD byData[DATA_SIZE]; GetTagRaw("ActualStress",byData,DATA_SIZE); 其中ActualStress為指定的原始數(shù)據(jù)變量的名字,參數(shù)byData是一個指針,只用來接收原始數(shù)據(jù)變量內(nèi)容的字數(shù)組,參數(shù)DATA_SIZE是字型數(shù)組的長度,函數(shù)返回結(jié)果為TRUE,表明函數(shù)正確的執(zhí)行了,否則為異常,需進行相應(yīng)處理。 3)對采集數(shù)據(jù)進行實時顯示并對采集數(shù)據(jù)進行歸檔 一個制動周期內(nèi)對制動力矩的分析是十分重要的,通過制動力矩數(shù)據(jù)的采集可以計算出一個制動周期內(nèi)的最大制動力矩、最小制動力矩和平均制動力矩。本系統(tǒng)要求對每個周期的制動力矩進行顯示。 本系統(tǒng)還同時要求對采集的數(shù)據(jù)進行歸檔,因為采集周期的限制必須編寫全局腳本實現(xiàn)把采集到的數(shù)據(jù)庫寫入已經(jīng)建立好數(shù)據(jù)表格中,流程如圖3所示。
圖3 對數(shù)據(jù)進行歸檔流程
[b] 5 試驗與結(jié)論[/b] 利用本系統(tǒng)對制動器進行了試驗,制動過程如圖4 所示,試驗過程記錄數(shù)據(jù)較多,本文只給出了通過記錄數(shù)據(jù)得到的制動力矩和制動溫度。
圖4 制動試驗數(shù)據(jù)顯示
目前大多數(shù)組態(tài)軟件都存在采集歸檔周期長的問題,本文針對將WinCC從PLC采集過來的原始類型數(shù)據(jù)進行處理,成功的將WinCC 的采集周期縮短至50ms甚至更小(最小可達10ms),滿足了數(shù)據(jù)高速采集的要求。該方法已經(jīng)在實際的工程項目中應(yīng)用,運行狀況穩(wěn)定。該方法具有一定的通用性 [i]參考文獻: 1 蘇昆哲,深入淺出西門子WinCC 6.0[M],北京,北京航空航天大學(xué)出版社,2004 2 劉玉國等,基于PLC的現(xiàn)場數(shù)據(jù)采集和自動控制,現(xiàn)代機械 2007 3 姜麗波等,WinCC高速數(shù)據(jù)采集應(yīng)用 電氣傳動自動化2006.11 4 西門子S7-300/400PLC編程軟件使用手冊[/i]

標簽:

點贊

分享到:

上一篇:FSL總線IP核及其在MicoBlaze...

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(m.u63ivq3.com)獨家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負版權(quán)法律責(zé)任。

網(wǎng)站簡介|會員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網(wǎng)-工業(yè)自動化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺

網(wǎng)站客服服務(wù)咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權(quán)所有
粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網(wǎng)安備 44030402000946號