加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入
  • 正文
    • 1.功能介紹
    • 2.組態(tài)步驟
    • 3.WinCC查詢畫面
    • 查詢腳本
  • 推薦器件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

WinCC歷史數(shù)據(jù)利用VB快速錄入,學(xué)會(huì)直接超越同行

09/24 09:39
2.5萬
閱讀需 11 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

能否快速批量錄入歷史數(shù)據(jù)變量?能否動(dòng)態(tài)增、刪歷史數(shù)據(jù)控件里數(shù)據(jù)?能否動(dòng)態(tài)選擇控件的時(shí)間區(qū)間?

總之,就是想,省時(shí)!高效!靈活!

本文以示例方式來介紹這個(gè)話題,包括:

  • 示例功能介紹
  • 示例實(shí)現(xiàn)步驟
  • 示例源程序下載鏈接

1.功能介紹

動(dòng)態(tài)控制WinCC在線表格控件

1、選擇參數(shù)組名稱(變量組),向控件中添加多條數(shù)據(jù)

2-3、設(shè)定歷史數(shù)據(jù)顯示的時(shí)間范圍

4、設(shè)置數(shù)據(jù)時(shí)間間隔

5、查詢歷史數(shù)據(jù)

2.組態(tài)步驟

創(chuàng)建變量

在WinCC變量管理中創(chuàng)建不同的變量

本例中,每個(gè)變量組下包含的變量如表所示:

創(chuàng)建變量歸檔

在WinCC變量記錄下創(chuàng)建變量歸檔,并添加變量

變量歸檔下包含的歸檔變量同上

3.WinCC查詢畫面

添加畫面對(duì)象

本例中需要選擇查詢的參數(shù)以及查詢的時(shí)間段,然后通過一個(gè)按鈕來執(zhí)行數(shù)據(jù)查詢腳本,并把歷史數(shù)據(jù)加載到在線表格控件上。

因此,需要在畫面中添加以下對(duì)象:- 選項(xiàng)組控件:用來選擇所查詢的參數(shù),其對(duì)應(yīng)的所有歸檔變量將會(huì)被加載到歷史數(shù)據(jù)控件中- 時(shí)間選擇控件:用來設(shè)定歷史數(shù)據(jù)的開始和結(jié)束時(shí)間- 歷史數(shù)據(jù)控件:查詢- 按鈕:執(zhí)行查詢事件

畫面中個(gè)對(duì)象的名稱將會(huì)在查詢腳本中被使用到,因此需要設(shè)定各個(gè)控件的名稱。本例中各控件名稱設(shè)置如下圖所示。

選項(xiàng)組控件

<選項(xiàng)組控件用來選擇需要查詢的參數(shù),并且為單選控件。本文中介紹兩種添加選項(xiàng)組控件的方法:直接拖拽控件、從Excel表格中拖拽。1、直接拖拽控件選項(xiàng)組控件可以直接從“窗口對(duì)象”下拖拽到畫面中,設(shè)定其框數(shù)量(屬性:“幾何”->“框數(shù)量”)為4,并為不同的索引設(shè)定相應(yīng)的文本。

2、從表格中拖拽:下面介紹另外一種方法,可以直接從excel(必須是微軟的excel不可以是wps)或者WinCC Configuration Studio中拖拽文本到WinCC畫面自動(dòng)創(chuàng)建選項(xiàng)組控件。首先,在excel中輸入需要的文本。然后,在excel中選擇所有文本,移動(dòng)鼠標(biāo)到選中區(qū)域的右下角,直到鼠標(biāo)變成十字光標(biāo)形狀。按著鼠標(biāo)右鍵拖拽文本到WinCC畫面,松開鼠標(biāo),在彈出對(duì)話框中選擇“插入選項(xiàng)組”。最后,選項(xiàng)組控件被插入到WinCC畫面。

另外,也可以直接從WinCCConfiguration Studio中拖拽文本到WinCC畫面自動(dòng)創(chuàng)建選項(xiàng)組控件,方式和上面的從表格拖拽一致,也有右鍵拖拽。

時(shí)間選擇控件

按如下步驟添加MicrosoftDate and Timer Picker Control控件到畫面中。

首先,在ActiveX控件上右鍵,選擇“添加/刪除”,然后在OCX控件列表中選擇Microsoft Date andTimer Picker Control。

然后,添加控件到畫面,拖拽MicrosoftDate and Timer Picker Control控件到畫面中。

最后,設(shè)置控件的“Format”屬性為“3-dptCustom”,“CustomFormat”屬性為”yyyy-MM-dd hh:mm”。

在線表格控件

添加在線表格控件到畫面中,所有屬性保持默認(rèn)值即可。

查詢腳本

根據(jù)選項(xiàng)組所選定的參數(shù)加載相應(yīng)的多個(gè)歸檔變量到在線表格控件,根據(jù)設(shè)定的查詢時(shí)間范圍設(shè)定控件時(shí)間軸的開始時(shí)間及結(jié)束時(shí)間。注意:設(shè)定在線表格控件的時(shí)間范圍之前,需要取消在線表格控件的“刷新”(Online)屬性,否則設(shè)定的時(shí)間范圍不起作用。本例中將通過腳本來設(shè)置在線表格控件的“刷新”(Online)屬性。畫面中“數(shù)據(jù)查詢”按鈕的腳本

以下是部分的VBS腳本如下:
Sub OnLButtonUp(ByVal Item, ByVal Flags, ByVal x, ByVal y)
Dim OP1,tbl1,col
Dim TableName(26),ValueColumnCount '定義每張表格數(shù)值上限為(可以自行增減) 定義變量個(gè)數(shù)
Set tbl1 = ScreenItems("tbl1") '將在線表格控件名稱賦值給tbl1
tbl1.Online=False '停止數(shù)據(jù)刷新
Dim i
For i=1 To tbl1.ValueColumnCount
tbl1.ValueColumnIndex=i '引用已組態(tài)的數(shù)值列。使用此屬性可以將其它屬性的值分配給特定的數(shù)值列。

'介于 0 和 (ValueColumnCount - 1) 之間的值為“ValueColumnIndex”的有效值。屬性“ValueColumnCount”定義已組態(tài)的數(shù)值列數(shù)。

'通過特性 ValueColumnRepos 可為“ValueColumnIndex”特性分配動(dòng)態(tài)屬性。數(shù)據(jù)類型為 LONG。

tbl1.ValueColumnRemove=tbl1.ValueColumnName '添加數(shù)據(jù)前先刪除所有數(shù)據(jù),否則數(shù)據(jù)沒辦法替換
Next
Set OP1=ScreenItems("OP1") '數(shù)據(jù)選擇選項(xiàng)組控件名稱 (注意設(shè)置好多選框名字為OP1)
Select Case OP1.Process '根據(jù)選擇項(xiàng)設(shè)定變量個(gè)數(shù)及各個(gè)歸檔變量名稱
Case 1 '選擇第1項(xiàng)
TableName(0)="測(cè)試溫度1"
TableName(1)="測(cè)試溫度2"
TableName(2)="測(cè)試溫度3"
TableName(3)="測(cè)試溫度4"

valuecolumncount=4 '每個(gè)選擇的個(gè)數(shù)賦值給計(jì)數(shù)變量
Case 2 '選擇第2項(xiàng)
TableName(0)="測(cè)試濕度1"
TableName(1)="測(cè)試濕度2"
TableName(2)="測(cè)試濕度3"
TableName(3)="測(cè)試濕度4"
TableName(4)="測(cè)試濕度5"

valuecolumncount=5

Case 4 '選擇第3項(xiàng)
TableName(0)="測(cè)試壓力1"
TableName(1)="測(cè)試壓力2"
TableName(2)="測(cè)試壓力3"
valuecolumncount=3

' Case 8 '選擇第4項(xiàng)
'TableName(0)="EMSA區(qū)DB_1A-2Q34氣鎖對(duì)1A-2Q30緩沖_相對(duì)_顯示值"
'TableName(1)="EMSA區(qū)DB_1A-2Q43氣鎖對(duì)1A-2Q39緩沖_相對(duì)_顯示值"
'TableName(2)="EMSA區(qū)DB_1A-2Q53微生物檢驗(yàn)室對(duì)1A-2Q52更衣_相對(duì)_顯示值"
'TableName(3)="EMSA區(qū)DB_1A-2Q52更衣對(duì)1A-2Q51緩沖_相對(duì)_顯示值"
'TableName(4)="EMSA區(qū)DB_1A-2Q51緩沖對(duì)外走廊_相對(duì)_顯示值"
'TableName(5)="EMSA區(qū)DB_1A-2Q33退更對(duì)1A-2Q34氣鎖_相對(duì)_顯示值"
'TableName(6)="EMSA區(qū)DB_1A-2Q32氣鎖對(duì)1A-2Q31更衣_相對(duì)_顯示值"
'TableName(7)="EMSA區(qū)DB_1A-2Q31更衣對(duì)1A-2Q30緩沖_相對(duì)_顯示值"
'TableName(8)="EMSA區(qū)DB_1A-2Q30緩沖對(duì)外走廊_相對(duì)_顯示值"
'TableName(9)="EMSA區(qū)DB_1A-2Q49無菌檢驗(yàn)室對(duì)1A-2Q48更衣_相對(duì)_顯示值"
'TableName(10)="EMSA區(qū)DB_1A-2Q48更衣對(duì)1A-2Q47緩沖_相對(duì)_顯示值"
'TableName(11)="EMSA區(qū)DB_1A-2Q47緩沖對(duì)外走廊_相對(duì)_顯示值"
'TableName(12)="EMSA區(qū)DB_1A-2Q41氣鎖對(duì)1A-2Q40更衣_相對(duì)_顯示值"
'TableName(13)="EMSA區(qū)DB_1A-2Q40更衣對(duì)1A-2Q39緩沖_相對(duì)_顯示值"
'TableName(14)="EMSA區(qū)DB_1A-2Q39緩沖對(duì)外走廊_相對(duì)_顯示值"

需要完整程序可以私信老周獲取

運(yùn)行結(jié)果

在WinCC計(jì)算機(jī)屬性的啟動(dòng)列表中啟動(dòng)“變量記錄運(yùn)行系統(tǒng)”,并激活WinCC項(xiàng)目。

激活項(xiàng)目,效果如首圖

本文源程序 (軟件版本:WinCC V7.5 SP2)

推薦器件

更多器件
器件型號(hào) 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊(cè) ECAD模型 風(fēng)險(xiǎn)等級(jí) 參考價(jià)格 更多信息
MBR0540T1G 1 onsemi 500 mA, 40 V, Schottky Power Rectifier, Surface Mount, SOD-123 2 LEAD, 3000-REEL

ECAD模型

下載ECAD模型
$0.43 查看
47589-0001 1 Molex Telecom and Datacom Connector, 5 Contact(s), Female, Right Angle, Surface Mount Terminal, Locking, Receptacle,

ECAD模型

下載ECAD模型
$0.89 查看
MCR72-8TG 1 Littelfuse Inc Silicon Controlled Rectifier, 8A I(T)RMS, 600V V(DRM), 600V V(RRM), 1 Element, TO-220AB, CASE 221A-09, 3 PIN
$1.06 查看

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

公眾號(hào):工控老周PLC,分享自動(dòng)化行業(yè)經(jīng)歷,分享經(jīng)驗(yàn),共同進(jìn)步,謝謝你的關(guān)注和支持,工控不易,互勉!