Wincc 如何連接SQL Server 數據庫

經常會有朋友用到將部分有用的數據單獨寫到關係型數據庫如:SQL Server ,MySQL等,然後通過製作報表進行數據的顯示,而對於報表,我目前比較常用的是 SQL Server 自帶的免費的 SSRS 來製作報表,用戶可以通過網頁的形式進行訪問,頁可以導出為PDF,WORD,或者可以選擇打印,非常方便。

那麼對於WINCC軟件大家肯定非常熟悉了,


Wincc 如何連接SQL Server 數據庫

那麼,如何將實時數據寫入WINCC自帶的關係數據庫SQL Server,並讀出。

步驟:

1)在SQL SERVER中創建一個數據庫

登錄到 SQL Server,登錄方式默認為Windows賬戶,而非混合賬戶sa(如圖2),首先需要在SQL Server中建立一個數據庫,如名稱為“DBTEST”,然後建立一個表,如value,表中輸入字段,並設置數據格式,如字段名稱為 press,temp,他們對應的數據類型都為 float , 此處的字段名稱需要與WINCC中變量的名稱一致,(如圖1)

Wincc 如何連接SQL Server 數據庫

圖1

Wincc 如何連接SQL Server 數據庫

圖2

如果你對數據庫不懂,那麼可以觀看此專欄進行學習,掌握數據庫的相關知識,以及報表的製作方法。



2)wincc 數據寫入到數據庫

可以使用按鈕來將數據寫入,在按鈕的VBS腳本中輸入代碼;一般我們常通過全局腳本,週期觸發將數據寫入(必須在計算機屬性—啟動選項卡中勾選"全局腳本運行系統")

代碼如下(按鈕和全局腳本相同):

'定義變量

Dim sCon

Dim sSql

Dim oRs

Dim conn

Dim oCom

Dim Con

Dim Data1, Data2


'將需要寫入的數據從WINCC中讀取到變量中,此處的press和temp必須與數據庫中的建立的字段一致

Data1=HMIRuntime.tags("press").read

Data2=HMIRuntime.tags("temp").read


'數據庫連接,"Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial ‘Catalog=DBTEST;Data Source=.\\WINCC"中Initial Catalog=DBTEST需要改為實際建立的數據庫的名稱,Data Source=.\\WINCC需要修改為數據源,完整的名稱應該是登錄數據庫時的Server name: luoyh\\WINCC

Con="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=DBTEST;Data Source=.\\WINCC"

Set conn = CreateObject("ADODB.Connection")

conn.ConnectionString = Con

conn.CursorLocation = 2

conn.Open


'將實時數據插入到數據庫,"insert into value VALUES(" & Data1 & "," & Data2&");" 此處value為表的名稱," & Data1 & "," & Data2&" 此處的數據為字符串時需要用單引號,如:' " & Data1 & " ',' " & Data2&" '

sSql="insert into value VALUES(" & Data1 & "," & Data2&");"

Set oRs = CreateObject("ADODB.Recordset")

Set oCom = CreateObject("ADODB.Command")

Set oCom.ActiveConnection = conn

oCom.CommandType = 1

oCom.CommandText = sSql

Set oRs = oCom.Execute

Set oRs = Nothing

conn.Close

Set conn = Nothing

以上代碼就可以實現將實時讀取到數據寫入到關係數據庫,寫入的頻率主要看全局腳本中週期觸發的設置。

3)通過 SSRS 開發報表,進行數據的顯示分析等操作。

通過 SSRS 可以以表格的形式進行數據顯示,可以對數據生成趨勢曲線,餅圖,儀表盤,地圖等元素,通過一定腳本,還可以實現對數據的篩選功能等。還可以通過網頁形式訪問報表,而對於很多組態軟件都已經具有Web控件,那麼就可以通過此web控件將網頁嵌入到你的畫面中進行報表的查看。此方式非常方便,比組態軟件自帶的報表功能強大。

Wincc 如何連接SQL Server 數據庫

SSRS 開發的簡單報表


Wincc 如何連接SQL Server 數據庫

各種 Chart


Wincc 如何連接SQL Server 數據庫

各種儀表盤

以上關於 WINCC 在與數據庫的數據交互,以及如何使用 SSRS實現強大的報表功能的介紹到此結束,如果你有更多的問題,或者想要了解更多,可以關注我的“頭條文章”,“專欄”,“圈子”等獲取更多的知識。


分享到:


相關文章: