一、Niagara框架

1、一个Niagara 系统中有四种典型的Programs,这些程序间的关系及其网络通讯关系可通过下面的通讯图表解释

2、 Niagara  Programs

station : Nigara运行实例,在JavaVM上运行起来的Nigara组件应用实例。

Workbench : 是一种Nigara工具, 意在JavaVM运行,承载Nigara插件的主机。

Daemon  : 是本地的一个守护进程,Daemon用来引导启动一个Station并且管理运行平台的各种配置,比如本地系统的IP配置。

web Browser  :是标准的浏览器客户端,用浏览器来承载一个Nigara网页用户界面。

3、  通讯协议   Protocols

使用三种铜须协议将上述四种程序结合起来:

FOX:   是一种使用专利的TCP/IP上运行的协议,用来实现Station与Station之间的通讯,也可以实现Workbench和Station间的通讯。

HTTP  :  标准协议,用来杨业浏览器和Station 的网页间通讯。

Nigarad  :  是一种私用专利的通讯协议,用来实现守护进程和Workbench间的通讯。

4、 平台   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的系统。

5、站点  Station

Niagara 系统的构架是围绕以组件 Component 为导向的编程为核型设计的。组件Component是使用java编写、打包、部署为模块的自包含单位。多个组件通过连线构成一个应用 application 并运行在Station 上。一个Niagara 的Station的应用,会被存储在名为config.bog 的XML文件中,这个config.bog文件包含了一个包括组件及其属性的牌子的树桩的结构。并且记录。

6、守护进程   Daemon

使用本地代码写成,没有使用java,在操作做系统上有由守护进程来引导并管理Niagara平台。具体功能是,安装别备份站点数据库、启动并监视站点、配置TCP/IP、安装并升级操作系统(只针对QNX)、安装升级就javaVM、安装升级Niagara软件,安装碧迪字典管理并授权安装。

在Windows系统,Daemon是以Windows的后天服务运行的,在QNX操作系统上,Daemon是以一个守护进程方式在QNX启动的时候运行的,

使用Workbench界面访问Daemon是最常使用的方法,必须使用Openplatforms打开一个平台会话用以链接远程客户端的Daemon,

另一种链接Daemon的方法,通过运行plat.ext启动一个命令行控制台来进行通讯。

7、工作台 Workbench

Workbench使用bajaui模块中的widget构建搭建的,而bajaui本事又是使用标准的Niagara的组件模式搭建的。Niagara提供两种客户端技术,第一种是 webWorkbench,这种方式允许Workbench运行在有java产检的浏览器上,web Workbench需要下载小的APP老人头模块wbapplet。。第二种是“hx” 使用Serverlet作为服务器端。

8、FOX 通讯协议

Nagara 拥有自己的通讯协议, fox FOX是一种基于TCP协议的多通道复用点对点通讯协议。FOX默认端口1911,其特点是;

基于 TCP的Socket通讯  、摘要式验证方式、点对点、请求/答复、支持异步事件、基于流 Streaming    、通过频道切换多路复用技术可实现多应用同时运行。使用字符明码发送帧或信息,方便调试。统一的信息语法格式。高性能。使用Java 实现的协议栈。

9、接口软件  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实现图形化界面

二、Niagara Workbench启动 platforms运行出现问题解决方法

关闭 workbench后重新打开出现platforms运行端口出现问题。链接不上,这个时候station也是打不开的。

出现问题的原因是  Daemon丢失,所以重新安装一些大daemon

现在 关闭之前的个station 从新打开一个 station

另一个问题就是 station离线的拷贝问题,只需要将 programdata中的station拷贝到userhome下 再然后在workbench下复制到本地运行。

Niagara物联网框架机制二(笔记)的更多相关文章

  1. Niagara物联网框架机制一(笔记)

    一.介绍: Niagara是Tridium公司研发的设计用于解决设备连接应的软件框架平台技术,应用框架是一个软件工程中的概念,不同于普通的软件,它是用于实现某应用领域通用完备功能的底层服务,使用这种框 ...

  2. 《连载 | 物联网框架ServerSuperIO教程》1.4种通讯模式机制。附小文:招.NET开发,结果他转JAVA了,一切都是为了生活

    参考文章: 1.SuperIO通讯框架介绍,含通信本质 2.C#跨平台物联网通讯框架ServerSuperIO(SSIO) 一.感慨 上大学的时候,没有学过C#,花了5块钱在地坛书市买了一本教程,也就 ...

  3. JAVA的反射机制学习笔记(二)

    上次写JAVA的反射机制学习笔记(一)的时候,还是7月22号,这些天就瞎忙活了.自己的步伐全然被打乱了~不能继续被动下去.得又一次找到自己的节奏. 4.获取类的Constructor 通过反射机制得到 ...

  4. 《连载 | 物联网框架ServerSuperIO教程》2.服务实例的配置参数说明

    1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍  <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制 一.综述 SuperIO(SIO)定位 ...

  5. 《连载 | 物联网框架ServerSuperIO教程》- 3.设备驱动介绍

    1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...

  6. 《连载 | 物联网框架ServerSuperIO教程》-4.如开发一套设备驱动,同时支持串口和网络通讯。附:将来支持Windows 10 IOT

    1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...

  7. 《连载 | 物联网框架ServerSuperIO教程》- 7.自控通讯模式开发及注意事项

    1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...

  8. 《连载 | 物联网框架ServerSuperIO教程》- 9. 协议过滤器,解决一包多发、粘包、冗余数据

    1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...

  9. 《连载 | 物联网框架ServerSuperIO教程》- 13.自定义视图显示接口开发,满足不同的显示需求

    1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...

随机推荐

  1. Django REST framework 第三章 CBV

    从介绍Django快开始,我们就一直在使用FBV的方式来撰写代码,二者本质上并没有太大的区别,然而到了REST framework,更会倾向于用CBV来写API的视图,后面会看到这个方式的强大,它允许 ...

  2. Spring的aop操作

    1 在spring里面进行aop操作,使用aspectj实现(1)aspectj不是spring一部分,和spring一起使用进行aop操作(2)Spring2.0以后新增了对AspectJ支持2 使 ...

  3. Spring重温(一)--Spring快速入门

    1.spring官网(https://repo.spring.io)下载依赖jar. 2.配置spring环境时还需要commons-logging相关jar. 3.打开eclise创建一个工程,并将 ...

  4. 微信小程序弹出可填写框两种方法

    方法一: html页面: < view class = "container" class = "zn-uploadimg" > < butt ...

  5. MySql cmd下的学习笔记 —— 有关常用函数的介绍(数学函数,聚合函数等等)

    (一)数学函数 abs(x)              返回x的绝对值 bin(x)               返回x的二进制(oct返回八进制,hex返回十六进制) ceiling(x)      ...

  6. python基础-----列表操作

    在Python中用[]来表示列表,并用逗号隔开其中的元素. 1.访问列表元素 name=["zhangsan","lisi","ljy"] ...

  7. python,random随机数的获取

    随机数生成 首先我们需要在程序中引入random>>>import random as r r.random()用于生成一个随机的浮点数, >>> print(r. ...

  8. AbstractQueuedSynchronizer的简单介绍

    AbstractQueuedSynchronizer简称为AQS.大多数开发者不会直接使用AQS,标准同步器类的集合能够满足绝大多数情况的需求. 1.AbstractQueuedSynchronize ...

  9. vc++基础班[24]---系统各种路径信息的获取

    vc++基础班[24]---系统各种路径信息的获取 ------------------------------------------ Begin ------------------------- ...

  10. hdu 4825 && acdream 1063 01字典树异或问题

    题意: 给一个集合,多次询问,每次给一个k,问你集合和k异或结果最大的哪个 题解: 经典的01字典树问题,学习一哈. 把一个数字看成32位的01串,然后查找异或的时候不断的沿着^为1的路向下走即可 # ...