在項(xiàng)目的開發(fā)過程中,用戶的需求總是多種多樣,有些用戶的主要需求是高效、準(zhǔn)確的實(shí)時(shí)數(shù)據(jù),采用紫金橋?qū)崟r(shí)數(shù)據(jù)庫即可滿足需求。但在某些以報(bào)表生成、打印為主要內(nèi)容的項(xiàng)目中,用戶的主要需求是由很多靜態(tài)的數(shù)據(jù)形成的報(bào)表。這時(shí),如依然采用紫金橋的實(shí)時(shí)數(shù)據(jù)庫,既在組態(tài)時(shí)浪費(fèi)大量的時(shí)間,又無法突出實(shí)時(shí)數(shù)據(jù)庫數(shù)據(jù)采集穩(wěn)定、高效、準(zhǔn)確等優(yōu)點(diǎn)。
這時(shí),我們會同時(shí)的用到紫金橋組態(tài)軟件與關(guān)系數(shù)據(jù)庫,來完成項(xiàng)目的開發(fā)過程,這樣既完美的結(jié)合了紫金橋組態(tài)軟件強(qiáng)大的實(shí)時(shí)數(shù)據(jù)采集、處理等功能,又合理的利用了關(guān)系數(shù)據(jù)庫易使用且在存儲靜態(tài)數(shù)據(jù)時(shí)的穩(wěn)定、可靠等諸多優(yōu)點(diǎn)。
那么,如何利用紫金橋組態(tài)軟件和關(guān)系數(shù)據(jù)庫進(jìn)行項(xiàng)目的開發(fā)呢?
利用關(guān)系數(shù)據(jù)庫來存儲數(shù)據(jù)時(shí),需在前置機(jī)或服務(wù)器上安裝關(guān)系數(shù)據(jù)庫軟件,關(guān)系數(shù)據(jù)庫軟件有很多種,如:access、MySql、SQL Server系列、Oracle系列等等,針對現(xiàn)場的實(shí)際需要選擇合適的數(shù)據(jù)庫才是最合理的。選擇合適的關(guān)系數(shù)據(jù)庫進(jìn)行安裝并建立數(shù)據(jù)庫后,根據(jù)現(xiàn)場實(shí)際的需要建立所用到的數(shù)據(jù)表。在需求的數(shù)據(jù)量小、數(shù)據(jù)類型少時(shí),推薦使用Access數(shù)據(jù)庫,如數(shù)據(jù)量較多、數(shù)據(jù)種類繁多時(shí),則需用到SQL Server數(shù)據(jù)庫,當(dāng)數(shù)據(jù)量特別巨大、數(shù)據(jù)需經(jīng)大量處理時(shí),推薦使用Oracle數(shù)據(jù)庫。
在使用關(guān)系數(shù)據(jù)庫時(shí),首先,我們先利用紫金橋組態(tài)軟件來采集現(xiàn)場的PLC來獲取實(shí)時(shí)數(shù)據(jù),或通過人工錄入的方式獲取生產(chǎn)數(shù)據(jù),再以紫金橋組態(tài)軟件為平臺,通過編寫SQL語句,將實(shí)時(shí)數(shù)據(jù)存儲到關(guān)系數(shù)據(jù)中的靜態(tài)表中,形成靜態(tài)數(shù)據(jù),以完成數(shù)據(jù)的存儲。如下圖所示:

這種方式只適合在紫金橋組態(tài)軟件和關(guān)系數(shù)據(jù)庫都安裝在同一臺計(jì)算機(jī)上,而且數(shù)據(jù)量小、數(shù)據(jù)類型少、數(shù)據(jù)傳輸量不多的項(xiàng)目,推薦使用Access數(shù)據(jù)庫。
如現(xiàn)場數(shù)據(jù)來源復(fù)雜,有多臺計(jì)算機(jī)安裝有紫金橋組態(tài)軟件時(shí),為了保證數(shù)據(jù)的統(tǒng)一性,則需要一臺服務(wù)器單獨(dú)安裝關(guān)系數(shù)據(jù)庫,這種條件下,可以使用SQL Server數(shù)據(jù)庫。但假設(shè)發(fā)生網(wǎng)路斷路,數(shù)據(jù)就無法添加至關(guān)系數(shù)據(jù)庫中,繼而就破壞了數(shù)據(jù)庫的完整性,造成了數(shù)據(jù)的缺失。
我們可以利用紫金橋組態(tài)軟件可以和多個(gè)關(guān)系數(shù)據(jù)庫同時(shí)進(jìn)行通訊的功能和SQL Server數(shù)據(jù)庫之間可以互相通訊的功能,來防止這種數(shù)據(jù)的缺失。
在所有前置機(jī)和服務(wù)器上都安裝SQL Server數(shù)據(jù)庫,如下圖所示:
在紫金橋組態(tài)軟件運(yùn)行的過程中,將所獲取的實(shí)時(shí)數(shù)據(jù)儲存至前置機(jī)上的SQL Server數(shù)據(jù)庫中,再間隔一段固定的時(shí)間通過調(diào)用事先編寫好的SQL Server存儲過程,將所有前置機(jī)SQL Server數(shù)據(jù)庫中的數(shù)據(jù)上傳至服務(wù)器中的SQL Server數(shù)據(jù)庫中,以保證數(shù)據(jù)的統(tǒng)一性、完整性。
使用紫金橋組態(tài)軟件,可以非常方便的和各種關(guān)系數(shù)據(jù)庫進(jìn)行通訊,而且利用紫金橋組態(tài)軟件中的各種驅(qū)動,可以方便快捷的采集現(xiàn)場的實(shí)時(shí)數(shù)據(jù),通過紫金橋組態(tài)軟件這樣一個(gè)開放的開發(fā)平臺,既可以處理實(shí)時(shí)多變的現(xiàn)場數(shù)據(jù),還可以存儲靜態(tài)的關(guān)系數(shù)據(jù),保證數(shù)據(jù)的完整性。
根據(jù)實(shí)際情況合理的使用不同類別的數(shù)據(jù)庫,不僅可以減少總體的開發(fā)時(shí)間,更重要的是可以滿足用戶的真正需求,實(shí)現(xiàn)合作共贏的目的。
|