<dfn id="ncioi"></dfn>

  1. <button id="ncioi"></button>
  2. <em id="ncioi"></em>
    <div id="ncioi"></div>

    <div id="ncioi"></div>

      智物聯,引領工業物聯

      我們始終以技術創新創造價值,并夜以繼日的將互聯和工業智能的力量融入到各行各業
      以前所未見的高度、速度、精度和深度,讓關鍵所在 逐一實現。

      咨詢服務

      技術干貨丨MixIOT 數據入棧交換服務組件——入棧機(Dixie)


      【摘要】: MixIOT的數據采集 在復雜的工業場景中,如何高效、穩定和快速的采集設備數據顯得尤為重要,在之前的技術文章中我們介紹了適配器的自動采集和復雜場景下的離線數據采集兩種方式,今天我們將介紹MixIOT如何與第三方數據采集終端進行適配。

      入棧機(Dixie)
      Dixie是MixIOT體系中的數據入棧交換服務組件,簡稱入棧機。在MixIOT體系中,除了可以使用智物聯的數據采集終端,也支持第三方的數據采集終端,而且不要求第三方的數據采集終端遵循MixIOT體系的數據報文規則。那么,這些第三方數據終端采集到的數據,怎么能夠在MixIOT系統中進行數據處理呢?這就需要用到Dixie(入棧機)來幫忙了。

       

      入棧機服務可以理解為MixIOT的前置翻譯服務,可以把任何第三方數據采集終端上報的任何格式的數據,轉換成符合MixIOT規范的數據格式。這樣,經過入棧機的數據,實際上就變成了符合MixIOT規范的數據。


      圖1 入棧機的使用場景

      圖1就是一個比較典型的使用場景:通過第三方的OPC UA/DA數據采集終端,采集CNC數控加工中心的數據。這個OPC UA/DA數據采集終端所采集的數據,是按其他的標準來的,并不符合MixIOT體系的數據規范,那么,就需要先把這個數據報文給MixIOT Dixie,讓入棧機把數據進行翻譯,變成符合MixIOT體系規范的數據。

       

      Dixie并不限于對接第三方的數據采集終端,而是可以對接任何形式的數據來源,包括來自其他平臺的數據、ERP/MRP的數據、CRM的數據、MES的數據等。

       

      Dixie的管理
      Dixie是MixIOT的一個標準組件。如果需要使用Dixie,需要在MixIOT Admin里面去創建Dixie項目。創建完成后,隨時就可以把Dixie服務給啟動起來,如圖2所示。

       

      Dixie的設置相對是比較復雜的,要真正弄清楚這些設置到底是怎么一回事,就需要對MixIOT系統有更加深入的了解。下面就來解釋一下MixIOT是怎樣接收數據的。


      圖2 入棧機項目的啟動

      Gards服務
      實際上,我們總在說的MixIOT系統,不管是如來方略云部署,還是如來方略柜部署,它都有一個專門用來接收數據的服務組件,叫Gards組件。是通用遠程數據服務,這是一個基于MQTT協議的數據交換服務。Gards服務可以用來接收所有適配器和UFS傳送過來的數據。

       

      Gards有兩個版本,分別是Gards Pagosa(單主機版本)和Gards Falconer(集群版本),在部署MixIOT的時候可以根據實際需要選擇。一般來說,對系統整體可靠性要求很高的情況,可以部署Gards Falconer版本;對普通的工業物聯網應用,Gards Pagosa一般都可以滿足需要。

       

      雖然Gards支持MQTTV3/5協議,但它只能接收符合MixIOT規范的MQTT數據,這是因為MixIOT系統把標準的MQTT服務做了一些擴充和改變,這個問題就不做詳細描述了,大家可以參考智物聯的其他公開技術資料,這些調整和改變是為了讓服務更加高效可靠。

       

      Gards服務除了接收來自適配器和UFS的數據(“數據上行”),也可以給適配器發送數據(“數據下行”),如圖3所示。關于數據下行可以參考《反向控制》一章。

       

      我們注意到,在Dixie的配置里面,需要配置Gards服務器。這是因為Dixie要知道,這些第三方的數據翻譯好后,要把它們發到什么地方。


      圖3 Gards服務

       

      一旦數據進入了Gards服務,后面就是執行標準的MixIOT數據處理流程了。

       

      Garoute服務
      前面介紹了MixIOT系統中的Gards服務。對一個復雜的系統來說,比如數據終端有幾十上百萬個,甚至更多,那么一個Gards服務就很難應付了。所以,一個MixIOT系統允許同時存在多個GardsPagosa服務,或者一個GardsFalconer服務。當一個系統中存在多個Gards服務,那Dixie的數據該送去哪一個Gards呢?

       

      如果我們把所有的數據都死命往一個Gards里送,就很可能導致這個Gards忙死,別的Gards閑死,讓系統失去平衡而出現問題。Garoute就是用來解決這個問題的,Garoute實際上是Gards Route(通用遠程數據服務路徑)的意思,它可以告訴Dixie,什么數據往哪里送。這就是為什么我們在MIXIOT Admin的Dixie服務中,看到有Garoute這個選項。如果MixIOT里只有一個Gards的話,就可以不去管這個選項;而如果存在多個Gards的情況,這個選項就必須要指定,否則,那些翻譯好的數據就不知去向了。

       

      圖4,就解釋了Garoute和Gards之間的關系,Dixie首先需要向Garoute詢問,這些數據發給誰,在得到回復后,就按回復的走。需要說明的是,Dixie并不是每次發生數據都要問Garoute這個數據發給誰,Dixie跟Garoute之間是一個通信管道,該切換到哪一個Gards,Garoute會隨時通知,在沒得到新的通知之前,還是會按之前指定的選項來發。

      圖4 Garoute和Gards

      這里稍微解釋一下,多個Gards Pagosa(單主機版本)和一個Gards Falconer(集群版本)是兩回事,多個單機版本的Gards算多個Gards,Garoute需要去管理負載平衡;而集群版本的Gards雖然也是由多個Gards構成,但在邏輯上仍然只能算一個Gards。這有點像我們安裝服務器的時候,用了兩個硬盤做鏡像一樣,如果一個硬盤壞了,另一個硬盤還能接著工作,但容量還是一個硬盤。所以,集群Gards的能力并不會比單機版高。

       

      Dixie模板和腳本
      MixIOT里面幾乎所有的東西,都是由模板和腳本構成的。映射表、代碼庫等各類組件莫不如此。

       

      Dixie也不例外,也有模板和腳本。Dixie模板是用來描述和解析那些來自第三方的數據是什么樣子的,而Dixie腳本是用來告訴Dixie服務,這個樣子的原始數據需要用什么方法變成MixIOT能接受的樣子。

       

      除了模板腳本和前面介紹的Gards、Garoute,還有不少其他的東西,比如源網關列表之類的,這些都是具體使用的細節了,有需要可以參考詳細的使用手冊。

      圖片名稱
      圖片名稱

      <dfn id="ncioi"></dfn>

      1. <button id="ncioi"></button>
      2. <em id="ncioi"></em>
        <div id="ncioi"></div>

        <div id="ncioi"></div>
          78aiav