2011-10-25 48 views
1

一位朋友問我是否可以實現數據歷史記錄。我正在忙着研究,搜索UPC Unified Architecture - 但通過很多途徑,所以我會問這裏有沒有人走過這條路(同時還在繼續我的研究)。如何實現數據歷史記錄?

對於20年以上的開發人員(或兩個人)來說,至少需要多少個人月才能獲得至少一個可證明的工作原型 - 完成需要多長時間?

哪種編程語言? C++是好還是什麼?

我可以獲得哪些資源? (我以爲我看到了一個Open OPC框架,但無法再找到它)。我可以依據的任何FOSS,圖書館或免費代碼?也許是一個sourceForge項目?

如何最好地測試?

任何其他提示?

回答

1

如果您在完成項目時寫下您的項目,那將會很有意思。

對於OPC庫,您非常有限,但OPC Connect有一個很好的清單UA development kits,否則您需要成爲OPC Foundation的企業會員。

3

在我公司,我們主要使用OSISoft和GE Profecy Historian開發的Historian,PI品牌。 Ge Profecy now offers a 25 tag version of their latest Historian 4.5。它的工作方式是獲得一臺從數據收集器PC收集的歷史記錄服務器。根據您與您通信的設備,需要不同的OPC驅動程序。

Matrikon和Kepware是該領域的兩個參考文獻。在Matrikon你會發現幾乎所有與OPC有關的東西。我們大多使用Kepware,因爲我們認爲他們的解決方案從長遠來看更穩定。

取決於您對PLC的瞭解,以及您想要獲得的點數。實施歷史學家可能需要一天到一週的時間。如果您向我們提供更多詳細信息,我將非常樂意爲您提供幫助。

1

這是一個老話題,但我對這個話題感興趣。

有一個Python庫爲OPC:openopc at SourceForge.net(我使用的是專有OPC客戶端,因爲它是由我的自動化供應商提供,橫河)

對於短期數據抓住你可以使用一個分隔的文本文件,但對於歷史學家而言,你應該使用數據庫。我使用SQLite來提高速度,大小和便攜性。其他DB解決方案具有優勢。當然,如果你每秒收集400點,那麼隨着時間的推移,你的數據庫會很快增長,因此高效的數據存儲是非常重要的。

使用的語言受您選擇的OPC軟件包影響。 OpenOPC for Python對於Python來說是的。我使用了帶有.Net的免費OPC客戶端Graybox's。我在工作中使用的OCX最容易與VB6一起使用。不確定其他人。

構建歷史數據庫所需的時間完全取決於應用程序的完整性。您可以在幾個小時內組合一個數據採集器。一位長期的歷史學家,具有查看數據,添加和刪除點,保持數據完整性,優雅地處理錯誤數據和中斷通信的接口 - 這需要幾天而不是幾小時。