1、Niagara框架java
一、一個Niagara 系統中有四種典型的Programs,這些程序間的關係及其網絡通信關係可經過下面的通信圖表解釋web
二、 Niagara Programs數據庫
station : Nigara運行實例,在JavaVM上運行起來的Nigara組件應用實例。編程
Workbench : 是一種Nigara工具, 意在JavaVM運行,承載Nigara插件的主機。瀏覽器
Daemon : 是本地的一個守護進程,Daemon用來引導啓動一個Station而且管理運行平臺的各類配置,好比本地系統的IP配置。安全
web Browser :是標準的瀏覽器客戶端,用瀏覽器來承載一個Nigara網頁用戶界面。服務器
三、 通信協議 Protocols 網絡
使用三種銅須協議將上述四種程序結合起來:app
FOX: 是一種使用專利的TCP/IP上運行的協議,用來實現Station與Station之間的通信,也能夠實現Workbench和Station間的通信。框架
HTTP : 標準協議,用來楊業瀏覽器和Station 的網頁間通信。
Nigarad : 是一種私用專利的通信協議,用來實現守護進程和Workbench間的通信。
四、 平臺 Platforms
Niagara 能夠被不少平臺承載,從小的嵌入式系統到高端的服務器均可以實現:
jace :jace是java程序控制引擎的縮寫 java ApplicationControl Engine 他用來描述一個無顯示器的嵌入式平臺,一般一個jace 都運行與一個Flash(閃存)文件系統,而且提供後背電池組, jace 一般承載一個Daemon和一個Station, 不承載Workbench 。jac一般運行QNX(商用實時操做系統)或者WindowsXP版本的操做系統。
Supervisor : 適用於運行了一個Station的工做站或者服務器。Supervisor特指爲其餘無歷史或警報集合的Station提供服務的Station機器,Supervisor必須運行一個Station,但也可能運行Workbench或者daemon
Clinet : 客戶端嗾使運行Windows或者Linux操做系統,並使用Workbench或瀏覽器來訪問Nigara的系統。
五、站點 Station
Niagara 系統的構架是圍繞以組件 Component 爲導向的編程爲核型設計的。組件Component是使用java編寫、打包、部署爲模塊的自包含單位。多個組件經過連線構成一個應用 application 並運行在Station 上。一個Niagara 的Station的應用,會被存儲在名爲config.bog 的XML文件中,這個config.bog文件包含了一個包括組件及其屬性的牌子的樹樁的結構。而且記錄。
六、守護進程 Daemon
使用本地代碼寫成,沒有使用java,在操做作系統上有由守護進程來引導並管理Niagara平臺。具體功能是,安裝別備份站點數據庫、啓動並監視站點、配置TCP/IP、安裝並升級操做系統(只針對QNX)、安裝升級就javaVM、安裝升級Niagara軟件,安裝碧迪字典管理並受權安裝。
在Windows系統,Daemon是以Windows的後天服務運行的,在QNX操做系統上,Daemon是以一個守護進程方式在QNX啓動的時候運行的,
使用Workbench界面訪問Daemon是最常使用的方法,必須使用Openplatforms打開一個平臺會話用以連接遠程客戶端的Daemon,
另外一種連接Daemon的方法,經過運行plat.ext啓動一個命令行控制檯來進行通信。
七、工做臺 Workbench
Workbench使用bajaui模塊中的widget構建搭建的,而bajaui本事又是使用標準的Niagara的組件模式搭建的。Niagara提供兩種客戶端技術,第一種是 webWorkbench,這種方式容許Workbench運行在有java產檢的瀏覽器上,web Workbench須要下載小的APP老人頭模塊wbapplet。。第二種是「hx」 使用Serverlet做爲服務器端。
八、FOX 通信協議
Nagara 擁有本身的通信協議, fox FOX是一種基於TCP協議的多通道複用點對點通信協議。FOX默認端口1911,其特色是;
基於 TCP的Socket通信 、摘要式驗證方式、點對點、請求/答覆、支持異步事件、基於流 Streaming 、經過頻道切換多路複用技術可實現多應用同時運行。使用字符明碼發送幀或信息,方便調試。統一的信息語法格式。高性能。使用Java 實現的協議棧。
九、接口軟件 API Stack
Niagara提供普遍的成套的java API 用來定義擴展Station和WorkBench。Niagara構架以下
Baja : Niagara 構架的基礎,經過Baja模塊訂協議API,這些API定義可基礎規則,包括模塊、某快組、命名、導航、以及安全。
Horizontal : Niagara包含了許多預先建好的組件庫,用來支持物聯網等領域,提供了基本的功能,包括 control、alarm、historical、scheduling、BQL等
Drivers : Niagara被設計爲全面支持多協議混用,在Niagara中,使用driver farmework 標準創建的。用來和外部設備後系統同步信息的組件稱爲drivers,Drivers將先總全部的總線 如 BACnet 或Lonworks整合爲一個體係爲一個商業系統相似於關係型數據庫和網絡服務同樣。
Human Interface ; Niagara 提供了普遍的用戶界面協議棧。「gx」提供了地城的圖像API,在GX基礎上建成的bajaui模塊提供了專業的工具及標準widget。在bajaui基礎上創建的Workbench構架提供了插件的標準API,PX構架和工具來經過XML實現圖形化界面
2、Niagara Workbench啓動 platforms運行出現問題解決方法
關閉 workbench後從新打開出現platforms運行端口出現問題。連接不上,這個時候station也是打不開的。
出現問題的緣由是 Daemon丟失,因此從新安裝一些大daemon
如今 關閉以前的個station 重新打開一個 station
另外一個問題就是 station離線的拷貝問題,只須要將 programdata中的station拷貝到userhome下 再而後在workbench下複製到本地運行。