自动化论坛
标题: BACnetIP服务器开发包说明书 [打印本页]
作者: sunfull2014 时间: 2014-3-31 09:16
标题: BACnetIP服务器开发包说明书
1. 简介
BACnet英文全称为:Buliding Automation Control network。BACnet是专门为建筑的自动控制网络制定的一种数据通信协议;最初于1995年由美国制冷采暖空调工程师协会(简称ASHRAE)制定。其最根本的目的:给建筑自动控制系统 实现互操作 提供一种方法。
所谓互操作是指一种能力,可以使 分布的控制系统设备通过相关信息的数字交换,能够协调地工作,从而完成一个共同的目标。
BACnet解决了建筑自控系统中存在的多厂商系统(如Honeywell、Airtek、Siemen、Johnson、Alerton等品牌)和设备不兼容而难以集成的问题,提供了不同建筑自动控制系统实现互操作的方法,有望成为控制网络中的TCP/IP协议。
2003年1月,BACnet成为正式的国际标准(ISO 16484标准)。
BACnet有以下特点:
• 开放性:是美国现行的国家标准和ISO国际标准。
• 面向对象:BACnet协议采用面向对象的技术,因此具有可扩展性和可复用性。
• 互操作性:ASHRAE的BACnet委员会提出了一种新的描述自动控制系统功能性的方法,称为“互操作域(Interoperability Areas)”,其中规定了5个互操作域,分别是:数据共享、报警和事件管理、时序安排、趋势记录、设备与网络管理。
目前市场上符合BACnet 的品牌有Honeywell、Airtek、Siemen、Johnson、Alerton等
BACnetIPSvr.dll是根据BACnet协议开发出来的快速开发工具,其具有以下特点:
1. 使用C++开发,执行效率高。
2. 可移植性好,可以被C++、VB、C#、Delphi等开发语言调用。
3. 跨平台,源码可方便地移植到WinCE平台、Linux平台下。
4. 实现了BI、BO、BV、AI、AO和AV对象的访问。
5. 可以被其它BACnetIP客户端发现,并实现自动搜索。
6. 通过多个厂家的测试、譬如霍尼韦尔的EBI、西门子的Insight、江森的Matasys等软件的测试。
7. API函数个数少,简单易用。
2. API函数介绍
a. BOOL WINAPI StartBacnetIPServer(DWORD dwInstanceNum, WORD wPort);
说明:用于初始化BACnetIP服务器,设置设备的Instance号,以及UDP端口号。默认端口号为47808
b. BOOL WINAPI StopBacnetIPServer();
关闭BacnetIP服务器,释放系统资源。
c. BOOL WINAPI SetBacnetIPValue(WORD wObjType, DWORD dwInstanceNum, DWORD dwData);
往BACnetIP服务器写值,第一个参数是对象类型的ID号。
#define OBJECT_ANALOG_INPUT 0
#define OBJECT_ANALOG_OUTPUT 1
#define OBJECT_ANALOG_VALUE 2
#define OBJECT_BINARY_INPUT 3
#define OBJECT_BINARY_OUTPUT 4
#define OBJECT_BINARY_VALUE 5
第二个参数是对象实例的ID号,相当于寄存器地址,最后一个为写入的数据。
d. DWORD WINAPI GetBacnetIPValue(WORD wObjType, DWORD dwInstanceNum);
说明:从BACnetIP服务器里取得数据,第一个参数是实例类型,第二个参数是对象实例的ID号。
e. BOOL WINAPI EnableBacnetIPWriteNofity(BACNETIPNOTIFYPROC fnCallback);
说明:开启写回调函数。当BACnetIP客户端对开发包写操作的时候,会调用该回调函数。
f. BOOL WINAPI ResetBacnetIPValue();
说明:清空BACnetIP服务器里的所有数据,设置当前值为0。
g. BOOL WINAPI SetTagHandle(WORD wObjType, DWORD dwInstanceNum, HANDLE hTag);
说明:辅助函数,方便定位。用于设置外部的Handle到BACnetIP服务器内部。
h. HANDLE WINAPI GetTagHandle(WORD wObjType, DWORD dwInstanceNum);
说明:辅助函数,方便定位。从BACnetIP服务器内部取得外部的Handle。
欢迎光临 自动化论坛 (https://bbs.ca168.com/) |
Powered by Discuz! X2.5 |