一、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物联网框架机制二(笔记)的更多相关文章
-
Niagara物联网框架机制一(笔记)
一.介绍: Niagara是Tridium公司研发的设计用于解决设备连接应的软件框架平台技术,应用框架是一个软件工程中的概念,不同于普通的软件,它是用于实现某应用领域通用完备功能的底层服务,使用这种框 ...
-
《连载 | 物联网框架ServerSuperIO教程》1.4种通讯模式机制。附小文:招.NET开发,结果他转JAVA了,一切都是为了生活
参考文章: 1.SuperIO通讯框架介绍,含通信本质 2.C#跨平台物联网通讯框架ServerSuperIO(SSIO) 一.感慨 上大学的时候,没有学过C#,花了5块钱在地坛书市买了一本教程,也就 ...
-
JAVA的反射机制学习笔记(二)
上次写JAVA的反射机制学习笔记(一)的时候,还是7月22号,这些天就瞎忙活了.自己的步伐全然被打乱了~不能继续被动下去.得又一次找到自己的节奏. 4.获取类的Constructor 通过反射机制得到 ...
-
《连载 | 物联网框架ServerSuperIO教程》2.服务实例的配置参数说明
1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制 一.综述 SuperIO(SIO)定位 ...
-
《连载 | 物联网框架ServerSuperIO教程》- 3.设备驱动介绍
1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...
-
《连载 | 物联网框架ServerSuperIO教程》-4.如开发一套设备驱动,同时支持串口和网络通讯。附:将来支持Windows 10 IOT
1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...
-
《连载 | 物联网框架ServerSuperIO教程》- 7.自控通讯模式开发及注意事项
1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...
-
《连载 | 物联网框架ServerSuperIO教程》- 9. 协议过滤器,解决一包多发、粘包、冗余数据
1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...
-
《连载 | 物联网框架ServerSuperIO教程》- 13.自定义视图显示接口开发,满足不同的显示需求
1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...
随机推荐
-
【分布式】Zookeeper在大型分布式系统中的应用
一.前言 上一篇博文讲解了Zookeeper的典型应用场景,在大数据时代,各种分布式系统层出不穷,其中,有很多系统都直接或间接使用了Zookeeper,用来解决诸如配置管理.分布式通知/协调.集群管理 ...
-
OC之160728
NSData与NSMutableData:代表数据缓冲区有两个作用,将数据读入NSData和输出NSData数据 输出 将字符串写入指定文件 用NSFileManager:为创建,删除,移动,复制文件 ...
-
JavaEE填空与判断
Java EE软件工程师认证考试 试题库- 填空题和选择题 一. 填空题 1. HTML网页文件的标记是__html__,网页文件的主体标记是_body__,标记页面标题的标记是__tit ...
-
linux chmod命令(转)
chmod命令用于改变linux系统文件或目录的访问权限.用它控制文件或目录的访问权限.该命令有两种用法.一种是包含字母和操作符表达式的文字设定法:另一种是包含数字的数字设定法. Linux系统中的每 ...
-
iOS - 移动设备防丢失App
一.原理 二.数据获取 三.报警
-
pyqt tabliwdget表头属性修改
# -*- coding: utf-8 -*-__author__ = 'Administrator'import sysfrom PyQt4 import QtGui class MyWindow( ...
-
SharePoint 2010 新列表模板列表
SharePoint 2010 新列表模板列表 项目描述叙事 发展环境创造了良好的名单为模板.然后使用列表模板将其复制到生产环境. 脚步 1. 打开"列表设置",找到"将 ...
-
hdu 4417 Super Mario (主席树)
链接:http://acm.hdu.edu.cn/showproblem.php?pid=4417 题意: 给你段长为n的序列,有q个询问,每次询问区间[l.r]内有多少个数小于等于k 思路: 之前用 ...
-
DevExpress Cpicturebox或者Dev控件 PictureEdit 按比例的缩放加载图片
方法一: 如果要加载的图片的长宽比不是太过失衡, 1.可以改变picturebox的SizeMode属性为 PictureBoxSizeMode.StretchImage, 2.或者Dev控件 ...
-
ubuntu的应用中心打不开、闪退
原因没有细究,但问题已经解决简单粗暴: 1.更新列表 apt-get update apt-get dist-upgrade 2.重新安装应用中心 apt-get install --reinsta ...