一條SQL語句搞定半導體行業採集的μs級數據

小 T 導讀:崑山潤石智能科技爲半導體、泛半導體行業客戶提供智能製造一站式解決方案。VMPC是潤石開發的智聯網管理平臺,將IOT、BD、AI三環節打通、形成閉環,從而解決數據孤島的問題。VMPC數據收集、業務邏輯、日誌管理是分離的,傳感器採集的數據,存儲在TDengine中。潤石採用的傳感器精度很高,採集的數據是μs級別的,TDengine是完全契合這一需求的,支持時間精度精確到μs。

場景介紹

VMPC是潤石開發的智聯網管理平臺,將集成電路相關製程所需的傳感器,依據實際工藝階段分門別類,將Leading Foundry的經驗數字化、模型化,來滿足微影、蝕刻、薄膜、擴散、離子注入、研磨、測試或是面板廠的Array、Cell、CF、Module等物聯網需求,也對Facilities相關的附屬設備加以監控,以實現維護提醒、故障報警和狀態預測等功能。VMPC是一套整體解決方案,更是一套定製化的解決方案,最終的方案會根據工廠生產線和設備的實際情況,進行定製化的二次開發。

潤石的VMPC將IOT、BD、AI三環節打通、形成閉環,從而解決數據孤島的問題。VMPC本質上是Data + Algorithm,Data是智聯網傳感器採集到的數據,Algorithm是AI算法在特定領域創新應用的算法。可將流量、振動、壓力、溫度、速度等模擬量,通過邊緣端設備進行採集,從來得到大量的實時數據和歷史數據,採用AI工具和算法進行分析和建模,根據量測到的數據監控設備實時狀態,進而做到預測維護。
VMPC架構圖
VMPC數據收集、業務邏輯、日誌管理是分離的,傳感器採集的數據,存儲在TDengine中,數據流向如下:

1)VBOX負責現場數據採集;

2)VBOX將數據發送到指定的Server;

3)Server 後臺處理程序,將數據進行解析和處理;

4)根據客戶實際的場景選擇算法模型,算法模型決定了TDengine中庫和表的結構。解析和處理之後的數據,存儲到TDengine中;

5)採集的數據一方面用來實時監控,另一方面用來報警和預測。

業務流程

VMPC中AI的Algorithm主要包括兩大類,一是圖像數據算法,二是時序數據算法。如下圖:
圖像智能分析
時序數據智能分析
而TDengine專門用於存儲時序數據。

良品率的提升涉及到查找問題根因,根本原因隱藏在數據之中。以時序數據場景爲例,在設備的衆多參數中,找到關鍵參數,從單一變量演化成多變量分析,從設備監視過渡到設備控制等。從針對某一類問題的通用型產品,到可以定製化的物聯網平臺。

業務流程抽象如下

生產設備 → 數據採集 → 實時展示 → 數據存儲 → 數據分析 → 模型算法 → 生產設備

數據是模型和算法的基礎,模型和算法挖掘數據的價值。

快速實現MVP

舉一個項目作爲示例:面板行業的Robot健康度管理及預測維護——對噪音、設備馬達監控及預警。傳感器部署到現場控制設備上,收集設備的噪音與馬達的振動的數據,收集到的數據利用潤石自研的通訊技術,將數據推送到存儲接口,調用TDengine的jdbc的接口寫入數據。實時數據通過VMPC的應用軟件實現展示。以上的流程可以很複雜,也可以很簡單。潤石已經有了一些積累,對於一些進入到某個行業的初創企業,如果可以給一些建議的話,那就是快速的實現MVP,特別是在給客戶做PoC的階段。技術上需要哪幾部分呢?

1)傳感器,傳感器解析模塊;

2)TDengine,TDengine提供的寫入和查詢Demo;

3)Grafana,TDengine提供的Grafana插件。
TDengine接口demoTDengine的Grafana DataSource插件
整個過程,真正需要寫的代碼,不會超過500行,然後通過一條SQL語句,就完成了MVP的搭建工作,也就可以是客戶演示了。
Grafana中TDengine SQL查詢
數據的寫入和查詢

潤石採用的傳感器精度很高,採集的數據是μs級別的。TDengine默認的時間精度爲ms,只需在建庫的時候指定precision us即可將時間精度設置爲μs,如下:

Create database testdb keep 365 precision ‘us’;

其中keep 365表示保存一年的數據,過期的數據會被刪除,而這個過程全部由數據庫完成,不需要認爲參與。只需要在項目之初,硬件選型時預留足夠的空間,就不用操心數據的任何問題了。

由於業務的具體場景不太方便過多的設計,但是在使用TDengine的過程中,使用超級表tag,僅需要一條SQL就可以檢索出需要的數據,並進行對比:

select * from stb where ts > t1 and ts < t2 group by tag1;

設備採集的數據
模型的訓練集

從事AI模型和算法研究的人都比較清楚,數據處理的流程如下。其中最寶貴的就是數據的訓練集,訓練集的好壞直接決定着模型和算法的成敗。
數據分析流程圖
很多公司新進入一個行業,最難的不是技術,而是拿到一些現場數據。如果有幸得到PoC的計劃,有機會得到實際生產環境中的數據,如果數據量不足以訓練模型,TDengine的降維(down sample)聚合功能可以用於產生訓練集數據。SQL語句如下:

SELECT function FROM stb_name 
 [WHERE where_condition]
 INTERVAL (interval)
 [FILL ({ VALUE | PREV | NULL | LINEAR})]
 [GROUP BY tags]

聚合查詢中,當function取:avg、sum 、min、max、first、last、percentile的時候,就可以降頻之後新的數據集。

原始數據如下
原始數據
變換之後數據如下
變換之後的訓練集(1)
變換之後的訓練集(2)
在預測模型中,很多神經網絡模型都是Long Short Term Memory networks(以下簡稱LSTMs)的變換,LSTMs一種特殊的RNN網絡,該網絡設計出來是爲了解決長依賴問題,非常適合設備維護和故障的預測。LSTMs的訓練集,通過TDengine做降頻處理非常方便,可以在保證樣本數的前提下,改變時間跨度:
更改時間跨度的訓練集

TDengine應用中遇到的問題

1) 客戶端接口不是很方便
C# 讀寫 demo

2)指定是否可以顯示tag

我們查詢子表的時候,數據的tag是顯示不出來的。雖然可以使用group by tag將tag的值顯示出來,但是作爲一個對技術有潔癖的工程師而言,我認爲作爲一個選項決定是否顯示tag值更爲合理。

3)支持多表之間的聯合檢索

雖然內測的beta版功能已經實現,希望儘快發佈出來,是用的人多了,產品才能更加穩定。

下一個發力點

潤石認爲邊緣計算在半導體設備管理上將有更廣泛的應用。整個半導體生產線離散程度高,各個設備間常存在兩兩互聯關係,而不管是設備之間還是單臺設備均需要較強的算力來支持其反應速度。

TDengine的ARM 32位版,爲邊緣計算、嵌入式場景下時序數據的存儲、查詢、分析與計算提供一強大的工具,以解決流行的SQLite在該場景下的諸多不足,並且100%開源。並且提供數據庫遠程登錄功能、提供數據的生命週期管理、提供流式計算、提供數據訂閱服務、支持更好的併發等。

可以預見TDengine的ARM 32位版將爲VMPC的邊緣計算提供很多的便利。

作者簡介:Blues,潤石科技解決方案工程師,主要負責技術架構、業務推廣等工作。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章