色综合小说,久久精品中文字幕免费,男人插曲女人身体视频,综合天堂av久久久久久久,亚洲 欧美 自拍 动漫 免费

技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網(wǎng) > 技術(shù)頻道 > 應用方案 > 世紀星組態(tài)軟件和Visual Basic 6.0數(shù)據(jù)交換

世紀星組態(tài)軟件和Visual Basic 6.0數(shù)據(jù)交換

時間:2009-11-26 13:38:32來源:zhangting

導語:?盡管組態(tài)軟件已經(jīng)具備了很強的功能,但是在很多場合都有直接使用第三方代碼的要求。
1 引言 盡管組態(tài)軟件已經(jīng)具備了很強的功能,但是在很多場合都有直接使用第三方代碼的要求。例如用戶需要將組態(tài)軟件采集的實時數(shù)據(jù)傳送到自己開發(fā)的VB程序中做更復雜的數(shù)據(jù)分析或者是將世紀星采集的數(shù)據(jù)做特定的處理之后再傳送給世紀星,這都需要有一種數(shù)據(jù)交換機制。 當然實現(xiàn)這種交換機制有很多傳統(tǒng)的方法,如使用文件共享數(shù)據(jù)、使用DDE數(shù)據(jù)交換機制。傳統(tǒng)的方法雖然能夠達到數(shù)據(jù)交換的目的,但其使用方法較為煩瑣,使用文件共享數(shù)據(jù)就需要在組態(tài)軟件和外部程序內(nèi)部進行文件讀取操作,這樣不但麻煩而且處理速度也相對較慢,在要求實時性較好的工程中就顯得力不從心。為了讓第三方程序方便地讀寫世紀星數(shù)據(jù),世紀星提供了基于ActiveX技術(shù)的OCX控件,此控件可以在大多的開發(fā)環(huán)境中使用(如VC++6.0、VB6.0),它就是DBComm。 2 DBComm 世紀星數(shù)據(jù)交換標準控件 世紀星提供標準控件 DBComm.ocx 與外部第三方程序進行數(shù)據(jù)交換,數(shù)據(jù)交換內(nèi)容包括: 2.1 實時數(shù)據(jù)交換 外部程序可以讀取世紀星的系統(tǒng)變量(包括系統(tǒng)離散、系統(tǒng)整數(shù)、系統(tǒng)實數(shù)和系統(tǒng)信息)、內(nèi)存變量(包括內(nèi)存離散、內(nèi)存整數(shù)、內(nèi)存實數(shù)和內(nèi)存信息)和IO變量(包括IO離散、IO整數(shù)、IO實數(shù)和IO信息);還可以改寫世紀星的內(nèi)存變量和IO變量。 相關(guān)函數(shù): DiscValue=tagReadDisc(Tagname) 讀取世紀星離散變量的當前值 IntValue=tagReadInt(Tagname) 讀取世紀星整數(shù)變量的當前值 FloatValue=tagReadFloat(Tagname) 讀取世紀星實數(shù)變量的當前值 MessValue=tagReadMess(Tagname) 讀取世紀星信息變量的當前值 tagWriteDisc(Tagname, DiscValue) 改寫世紀星離散變量的當前值 tagWriteInt(Tagname, IntValue) 改寫世紀星整數(shù)變量的當前值 tagWriteFloat(Tagname, FloatValue) 改寫世紀星實數(shù)變量的當前值 tagWriteMess(Tagname, String) 改寫世紀星信息變量的當前值 InitComm() DBComm初始化函數(shù) 2.2 歷史數(shù)據(jù)讀取 外部程序可以按時間和變量名稱讀取世紀星的歷史數(shù)據(jù)。 TimeUINT=ConvertTime(Year, Month, Day, Hour, Minute, Second) 時間轉(zhuǎn)換函數(shù) DiscResult=GetHistoryData (Tagname,StartTime,EndTime,DataArray,SizeOfArray, Interval) 根據(jù)指定的起止日期時間和世紀星的變量名稱讀取世紀星的歷史數(shù)據(jù)。 3 DBComm在VB6.0中的應用 VB工程和世紀星工程數(shù)據(jù)交換示意圖:
下面是一個應用VB程序在外部計算PID輸出功率的一個簡單實驗: 需要硬件:三菱FX2N系列PLC、FX2N-4AD-TC、加熱器、S分度熱電偶(TC)、固態(tài)繼電器(SSR)。 需要軟件:世紀星組態(tài)軟件7.22、VB6.0。 如下圖所示為電器原理圖:
如上圖所示是一個加熱控制系統(tǒng)。PLC主模塊負責控制繼電器的通斷(PID輸出),TC模塊負責溫度采集(PID輸入),上位機世紀星部分負責溫度設定、采集下位機信號、曲線顯示、數(shù)據(jù)記錄、數(shù)據(jù)檢索等功能,上位機VB部分負責從世紀星獲取設定溫度SV、測量溫度PV、計算PID輸出(固態(tài)繼電器的通斷時間)。 3.1 世紀星監(jiān)控程序 將控制電路配置好,將上位機連接到PLC。開發(fā)世紀星監(jiān)控程序,配置相應的串口驅(qū)動、串口參數(shù),創(chuàng)建的監(jiān)控畫面如下:
3.2 VB外掛程序開發(fā) * 創(chuàng)建一個VB標準工程。 * Projiec—Components—DBComm ActiveX Control Moudle。 * 初試化DBComm dbcomm_pid.InitComm * 從世紀星組態(tài)軟件讀取溫度設定和實際值 SV= dbcomm_pid.tagReadFloat ("sv") PV= dbcomm_pid.tagReadFloat ("pv") * y0輸出時間計算函數(shù)(根據(jù)P=0.5,I=0.5,D=0) Private Function PIDCalc(pp As PID, ByVal NextPoint As Double) As Double Dim dError As Double Dim Error As Double Error = pp.SetPoint - NextPoint pp.SumError = pp.SumError + Error dError = pp.LastError - pp.PrevError pp.PrevError = pp.LastError pp.LastError = Error PIDCalc = pp.P * Error + pp.i * pp.SumError + pp.D * dError End Function 3.3 加熱輸出控制 根據(jù)2中計算的加熱時間(時間百分比,x%*1s),對PLC的Y0 進行輸出控制。 Y0 ON/OFF:tagWriteDisc ("y0",1)/ tagWriteDisc ("y0",0),Y0脈寬調(diào)制如下圖所示:
3.4實驗結(jié)果 本工程利用世紀星組態(tài)軟件采集溫度實際值(從PLC),在組態(tài)軟件中設定溫度的目標值,在VB6.0程序中計算輸出功率的百分比,VB再將加熱時間(Y0時間)傳遞給組態(tài)軟件,組態(tài)軟件再傳給PLC,PLC控制加熱。 由于采用了粗糙的PID,所以控溫精度在正負1度以內(nèi)(精度不在本文研究范圍內(nèi)),但是VB通過DBComm和世紀星組態(tài)軟件實時交換數(shù)據(jù)功能良好。 4 總結(jié) 綜上所述,世紀星所提供的DBComm 控件使用方便,為第三方程序提供了完備的數(shù)據(jù)交換接口。另外DBComm 控件還可以訪問世紀星組態(tài)軟件的歷史數(shù)據(jù)庫,本篇暫不詳述。

標簽:

點贊

分享到:

上一篇:Lancashire公司提供的碎玻璃...

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

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

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

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

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

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

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