99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

WinCC如何做外部報(bào)表

1bGT_GKYXT1508 ? 來(lái)源:未知 ? 作者:李倩 ? 2018-04-16 10:40 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

用VB實(shí)現(xiàn)WinCC歸檔數(shù)據(jù)的復(fù)雜報(bào)表

最近在看WinCC如何做外部報(bào)表,網(wǎng)上找了一篇文章,供大家參考。

引言:

Siemens公司的WinCC是一個(gè)優(yōu)秀的工控組態(tài)軟件,廣泛應(yīng)用于各種工業(yè)控制系統(tǒng)的數(shù)據(jù)采集及監(jiān)控,具有良好的人機(jī)界面、靈活的組態(tài)功能。WinCC本身也具有報(bào)表和曲線處理功能,但 WinCC V6.0以前的版本沒(méi)有嵌入VB腳本功能,且其歸檔數(shù)據(jù)不能直接被SQL server數(shù)據(jù)庫(kù)所用。對(duì)于一些較復(fù)雜的數(shù)據(jù)處理功能(如數(shù)據(jù)查詢、數(shù)據(jù)備份、報(bào)表打印等)用WinCC實(shí)現(xiàn)就顯得力不從心。同時(shí),WinCC在處理報(bào)表時(shí)不能對(duì)歷史數(shù)據(jù)進(jìn)行任意查詢和過(guò)濾,且報(bào)表格式設(shè)計(jì)也不夠靈活方便,無(wú)法滿足項(xiàng)目要求。

1.系統(tǒng)概述

本系統(tǒng)是將WinCC從PLC采集過(guò)來(lái)的過(guò)程數(shù)據(jù)通過(guò)VB編程進(jìn)行歸檔、查詢、過(guò)濾、報(bào)表打印。在每次試驗(yàn)前,先要清空WinCC歸檔數(shù)據(jù)庫(kù)和Access臨時(shí)數(shù)據(jù)庫(kù),以保證每一次試驗(yàn)數(shù)據(jù)的有效性和完整性。試驗(yàn)結(jié)束后,可立即進(jìn)行數(shù)據(jù)處理(備份、查詢、過(guò)濾、打印)。也可對(duì)備份的歷史數(shù)據(jù)進(jìn)行查詢和報(bào)表打印。由于Excel實(shí)現(xiàn)報(bào)表功能非常強(qiáng)大,且VB的可擴(kuò)展性強(qiáng),可以利用Excel作為OLE服務(wù)器,實(shí)現(xiàn)VB與Excel的集成,所以各種復(fù)雜的報(bào)表可以很容易的實(shí)現(xiàn)。系統(tǒng)主要界面如下 :

圖一:新試驗(yàn)起始畫(huà)面

圖二:數(shù)據(jù)查詢畫(huà)面

2. ODBC的配置連接和DAO

2.1 ODBC(Open Database Connectivity)配置

ODBC是一個(gè)用于訪問(wèn)數(shù)據(jù)庫(kù)的統(tǒng)一標(biāo)準(zhǔn)接口,是Microsoft Windows的開(kāi)放服務(wù)體系WOSA(Windows OpenServices Architecture)中有關(guān)數(shù)據(jù)庫(kù)的一個(gè)組成部分。ODBC需要連接數(shù)據(jù)源,選擇相應(yīng)的驅(qū)動(dòng)程序。本系統(tǒng)數(shù)據(jù)源配置在ODBC Config 對(duì)話框中進(jìn)行,配置數(shù)據(jù)庫(kù)文件名(此處輸入Siemens組態(tài)軟件Wincc自動(dòng)生成存檔的過(guò)程數(shù)據(jù)庫(kù)《項(xiàng)目名》RT.DB)和路徑。并在類型(Description)中輸入Wincc5.0 。在Access中通過(guò)“獲取外部數(shù)據(jù)“連接到在ODBC 管理器中建立的數(shù)據(jù)源。這樣即使Wincc退出后,Access仍然與過(guò)程數(shù)據(jù)庫(kù)保持后臺(tái)動(dòng)態(tài)連接。

2.2 DAO(dataaccessobjects)

VB訪問(wèn)數(shù)據(jù)庫(kù)的方法有多種,訪問(wèn)的數(shù)據(jù)庫(kù)類型也有多種。DAO(dataaccess objects)是一種基于Jet 數(shù)據(jù)庫(kù)引擎的面向?qū)ο蠼涌冢峁┝送暾墓芾硪粋€(gè)關(guān)系型數(shù)據(jù)庫(kù)所需的全部操作屬性和方法。DAO可以識(shí)別ODBC數(shù)據(jù)庫(kù)。

3. VB創(chuàng)建數(shù)據(jù)庫(kù)和Excel報(bào)表

3.1創(chuàng)建數(shù)據(jù)庫(kù)、添加記錄

Siemens組態(tài)軟件Wincc自動(dòng)生成歸檔的過(guò)程數(shù)據(jù)庫(kù)《項(xiàng)目名》RT.DB,每一個(gè)標(biāo)簽變量對(duì)應(yīng)一個(gè)表,需將若干個(gè)表匯總成為一個(gè)總表,另外需建一個(gè)包含變量名稱、代號(hào)、允許值等字段的表。上述過(guò)程采用VB編程,用前面介紹的的DAO創(chuàng)建數(shù)據(jù)庫(kù)、創(chuàng)建表、添加字段等來(lái)完成。并將Access中不同的采樣周期對(duì)應(yīng)數(shù)據(jù)添加到臨時(shí)數(shù)據(jù)庫(kù)中,然后進(jìn)行備份、查詢和報(bào)表處理等。主要程序如下:

SetWs = DBEngine.Workspaces(0)

Set dataBase = Ws.CreateDatabase(dataBasePath,dbLangGeneral, dbVersion60)

Set Table = dataBase.CreateTableDef(TableName)

Do Until recordTemp.EOF

Rs.AddNew:Rs(1) = recordTemp(0)

Rs.Update:recordTemp.MoveNext

Loop

3.2數(shù)據(jù)查詢和過(guò)濾

使用SQL語(yǔ)句實(shí)現(xiàn)時(shí)間段和數(shù)據(jù)過(guò)濾時(shí)間的子查詢,并將查詢結(jié)果放在建立的臨時(shí)查詢表中,再將臨時(shí)查詢表的記錄顯示。

Set queryTemp =db.CreateQueryDef(“”, “SELECT * FROM 運(yùn)行數(shù)據(jù) WHERE 時(shí)間 IN ( SELECT 時(shí)間 From 運(yùn)行數(shù)據(jù) WHERE 時(shí)間 between #” & strStart & “# and #” &strEnd & “# ) and Val(序號(hào)) Mod ” & Tim& “=” & numMod & “ ORDER BY 時(shí)間 ”)

3.3生成Excel報(bào)表

由于生成的報(bào)表比較復(fù)雜,所以先在Excel中按照用戶的要求作好一個(gè)模板(后綴為.xlt),對(duì)于報(bào)表中不固定的部分,需要VB程序動(dòng)態(tài)生成。由于本項(xiàng)目過(guò)程變量數(shù)目及采樣值較多,在VB程序中需同時(shí)控制Excel的Sheet和Page。整個(gè)過(guò)程都是后臺(tái)調(diào)用Excel。

1)啟動(dòng)Excel、復(fù)制模板:

SetobjNew = New Excel.Application

SetobjNew = CreateObject(“Excel.application”)

FileCopystrS, strD ‘復(fù)制模板

SetobjEW = objNew.Workbooks.Open(strD) objNew.Visible = False

2)按要求將查詢結(jié)果送到Excel的各個(gè)Range或Cells中:

Fori = 3 To 16

objEW.Sheets(1).Cells(4+ k * 33, i) = c(i - 2, 1): Next I

3)刪除多余的模板:

objEW.Sheets(1).Range(“A”& Trim$(Str$(k)) & “:” & “P660”).Select objNew.Selection.EntireRow.Delete

Selection.DeleteShift:=xlUp

4)設(shè)置紙張、打印預(yù)覽和打?。?/p>

objEW.ActiveSheet.PageSetup.Orientation= xlLandscape ‘設(shè)置紙張方向?yàn)闄M向

objEW.ActiveSheet.PageSetup.PaperSize= xlPaperA4 ’設(shè)置紙張尺寸為A4

objNew.Visible= True

objEW.Sheets(1).PrintPreview

objNew.Visible= False

objEW.Sheets(1).PrintOut

objNew.DisplayAlerts= False: objNew.Quit objNew.DisplayAlerts= True:

SetobjNew = Nothing

KillApp.Path + “\temp1.xls” ‘刪除臨時(shí)模板

4.結(jié)束語(yǔ):

本系統(tǒng)將WinCC從PLC采集過(guò)來(lái)的過(guò)程數(shù)據(jù),通過(guò)VB編程進(jìn)行歸檔、查詢、過(guò)濾、報(bào)表打印,以及對(duì)歷史數(shù)據(jù)查詢、過(guò)濾、報(bào)表打印。系統(tǒng)充分利用Excel非常強(qiáng)大的報(bào)表處理功能,以及VB的可擴(kuò)展性強(qiáng),將VB與Excel集成,以實(shí)現(xiàn)用戶所要求的報(bào)表;同時(shí),實(shí)現(xiàn)了數(shù)據(jù)靈活備份,解決了工程實(shí)際問(wèn)題。目前該系統(tǒng)已投入運(yùn)行,性能良好。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • WinCC
    +關(guān)注

    關(guān)注

    6

    文章

    206

    瀏覽量

    48855
  • VB編程
    +關(guān)注

    關(guān)注

    0

    文章

    44

    瀏覽量

    8706

原文標(biāo)題:用VB實(shí)現(xiàn)WinCC歸檔數(shù)據(jù)的復(fù)雜報(bào)表

文章出處:【微信號(hào):GKYXT1508,微信公眾號(hào):工控云學(xué)堂】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    變壓器沒(méi)有抽頭如何做正負(fù)壓?

    變壓器沒(méi)有抽頭如何做正負(fù)壓?
    的頭像 發(fā)表于 01-20 10:28 ?3071次閱讀
    變壓器沒(méi)有抽頭<b class='flag-5'>如何做</b>正負(fù)壓?

    求教labview和wincc的接口問(wèn)題?

    現(xiàn)在在許多行業(yè)的HMI用的是西門子的WinCC ,有沒(méi)有用labview和西門子的SCADA軟件WINcc的接口?
    發(fā)表于 11-24 17:05

    labview 和 wincc 的區(qū)別 使用場(chǎng)景

    labview 和 wincc 的區(qū)別 使用場(chǎng)景 都是上位機(jī)軟件,都可以監(jiān)控軟件 wincc的名氣也比較大 對(duì)比的資料較少 寫(xiě)這些文章的人,從自己的從事的行業(yè)出發(fā),帶有自己的思維 使用的場(chǎng)景 肯定
    發(fā)表于 10-27 18:01

    WinCC數(shù)據(jù)報(bào)表實(shí)現(xiàn)方法介紹

    WinCC數(shù)據(jù)報(bào)表實(shí)現(xiàn)方法介紹:本文對(duì)數(shù)據(jù)報(bào)表的需求進(jìn)行了分析,結(jié)合WinCC就復(fù)雜數(shù)據(jù)報(bào)表的實(shí)現(xiàn)進(jìn)行了介紹。關(guān)鍵詞
    發(fā)表于 07-03 15:53 ?192次下載

    如何做一塊好的PCB板

    如何做一塊好的PCB板    大家都知道理PCB板就是把設(shè)計(jì)好的原理圖變成一塊實(shí)實(shí)在在的PCB電路板,請(qǐng)別小看這一
    發(fā)表于 01-18 13:16 ?2612次閱讀

    手機(jī)企業(yè)如何做項(xiàng)目管理

    手機(jī)企業(yè)如何做項(xiàng)目管理 項(xiàng)目管理科學(xué)是一門關(guān)于項(xiàng)目資金、時(shí)間、人力、產(chǎn)品等資源控制的管
    發(fā)表于 07-15 07:51 ?1719次閱讀

    半導(dǎo)體廠商如何做芯片的出廠測(cè)試

    半導(dǎo)體廠商如何做芯片的出廠測(cè)試呢,這對(duì)芯片來(lái)說(shuō),是流片后或者上市前的必須環(huán)節(jié)。
    發(fā)表于 06-18 15:56 ?1.6w次閱讀

    半導(dǎo)體廠商如何做芯片的出廠測(cè)試

    半導(dǎo)體廠商如何做芯片的出廠測(cè)試,感興趣的小伙伴們可以瞧一瞧。
    發(fā)表于 10-26 15:55 ?0次下載

    SIMATIC WinCC V7.4 過(guò)程可視化系統(tǒng)樣本

    、262144個(gè)外部變量)。外部變量是指,通過(guò)WinCC通道連接到控制器或其它數(shù)據(jù)源的數(shù)據(jù)點(diǎn)。WinCC基本系統(tǒng)已集成圖形系統(tǒng)、報(bào)警消息系統(tǒng)、歸檔系統(tǒng)、
    發(fā)表于 04-26 14:26 ?13次下載

    博圖WINCC如何做畫(huà)面模板

    博圖WINCC 如何做畫(huà)面模板
    的頭像 發(fā)表于 10-10 09:10 ?3.3w次閱讀
    博圖<b class='flag-5'>WINCC</b><b class='flag-5'>如何做</b>畫(huà)面模板

    利用第三方軟件實(shí)現(xiàn)WinCC打印實(shí)時(shí)報(bào)表的方法

    利用第三方軟件實(shí)現(xiàn)WinCC打印實(shí)時(shí)報(bào)表的方法A說(shuō)明。
    發(fā)表于 04-25 11:07 ?10次下載

    WINCC flexiblo組態(tài)報(bào)表是什么,如何創(chuàng)建

    出于產(chǎn)品測(cè)試和質(zhì)量控制的目的,報(bào)表用于記錄生產(chǎn)過(guò)程中的事件。這些事件,即報(bào)警和配方數(shù)據(jù),以班次報(bào)表的形式定期輸出。
    的頭像 發(fā)表于 06-30 17:26 ?2290次閱讀
    <b class='flag-5'>WINCC</b> flexiblo組態(tài)<b class='flag-5'>報(bào)表</b>是什么,如何創(chuàng)建

    涂鴉IoT平臺(tái)如何做智能家居項(xiàng)目

    電子發(fā)燒友網(wǎng)站提供《涂鴉IoT平臺(tái)如何做智能家居項(xiàng)目.zip》資料免費(fèi)下載
    發(fā)表于 11-08 10:40 ?7次下載
    涂鴉IoT平臺(tái)<b class='flag-5'>如何做</b>智能家居項(xiàng)目

    WINCC flexiblo組態(tài)報(bào)表詳解

    出于產(chǎn)品測(cè)試和質(zhì)量控制的目的,報(bào)表用于記錄生產(chǎn)過(guò)程中的事件。這些事件,即報(bào)警和配方數(shù)據(jù),以班次報(bào)表的形式定期輸出。
    的頭像 發(fā)表于 07-26 10:11 ?1389次閱讀
    <b class='flag-5'>WINCC</b> flexiblo組態(tài)<b class='flag-5'>報(bào)表</b>詳解

    SIMATIC WinCC產(chǎn)品特性及亮點(diǎn)

    SIMATIC WinCC 基本系統(tǒng)包分運(yùn)行版和完全版(組態(tài)+ 運(yùn)行)兩種,軟件授權(quán)以外部變量進(jìn)行劃分(可支持128、512、2048、8192、65536、102400、153600、262144 個(gè)外部變量)。
    的頭像 發(fā)表于 08-09 14:25 ?1952次閱讀