Niagara物联网框架机制二(笔记)
一、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 ...
随机推荐
- 下载最新的glibc库并临时使用,而不污染原有系统环境
以下参考了文中提到的博文,那篇博文其中有他安装时报错的内容,以及如何解决的,特别是报错2,值得学习借鉴 另外升级glibc,这篇文章有补充https://blog.csdn.net/fzuzhangh ...
- Kotlin数据模型
Java中的常用的Bean类,每一个变量我们都需要写getter,setter方法,却都要手动实现很多方法: 尽管可以用工具帮我们完成,但是代码显得很臃肿,不灵活. 特别是当我们需改其中某一个成员的时 ...
- mysql 原理 ~ kill session解析
一 简介:kill session为什么需要很久 二 kill语句分为三类 1 DML语句 2 select语句 3 DDL语句 三 kill都要做什么操作 1 kill对sessio ...
- cartographer 最新版安装测试
在官网的基础上稍加修改,但保证代码都是最新的 我的系统配置: Debian9 strech, ROS lunar 该方法对 ubuntu 系列操作系统以及其他ROS版本同样适用. 1. 安装依赖库 ...
- 尚硅谷Oracle教程-学习笔记2
控制用户权限 1.创建用户 1) SQL> create user atguigu01 2 identified by atguigu01; User created 2) SQL> gr ...
- 【转】python之配置日志的几种方式
[转]python之配置日志的几种方式 作为开发者,我们可以通过以下3种方式来配置logging: 1)使用Python代码显式的创建loggers, handlers和formatters并分别调用 ...
- aiohttp的笔记之TCPConnector
TCPConnector维持链接池,限制并行连接的总量,当池满了,有请求退出再加入新请求.默认是100,limit=0的时候是无限制 1.use_dns_cache: 使用内部DNS映射缓存用以查询D ...
- 题解-ZeroJudge-c686 高斯符號
Problem ZeroJudge Solution 考慮到\(\lfloor \frac {km}n\rfloor\)等同於\(km\)整除\(n\),換種表示方法就是\(km\)減去\(km\)模 ...
- hibernate框架学习之核心API
ConfigurationSessionFactorySessionTransactionQueryCriteria Configuration Configuration对象用于封装Hibernat ...
- hdu 4825 && acdream 1063 01字典树异或问题
题意: 给一个集合,多次询问,每次给一个k,问你集合和k异或结果最大的哪个 题解: 经典的01字典树问题,学习一哈. 把一个数字看成32位的01串,然后查找异或的时候不断的沿着^为1的路向下走即可 # ...