电子说
BACnet协议主要是用于智能建筑,楼宇,空调等领域的通信协议。
国内外支持BACnet协议的控制器也有不少。
常见的有Johnson ,西门子,施耐德,台达,Carrier,以及一些SCADA软件及系统等,也都可以支持BACnet协议。
BACnet协议,分有网络和串口两种。
串口的BACnet也通常叫做BACnet MS/TP。
是一种可以支持在一个485串口总线上,支持多个主站,从站设备在一个总线网络进行通信。
而本篇介绍的,就是屏做BACnet MS/TP的服务,可以将屏采集的各种PLC的数据,转到BACNet协议。
这样,像电脑,BACnet网关,控制器,以及FBox等都可以通过MS/TP来访问数据了。
从而实现BACnet网关的作用。
不完全统计,FStudio里已经集成了上百种协议。
也就是基本上只需要一个HMI,就可以将上百种协议,转换为BACnet协议,供主站来访问。
这次要介绍的是一种地址映射的形式。
所谓地址映射的形式,比如我要采集西门子的MD,MW,QD寄存器,想直接映射给BACNet的AV寄存器。
这样当主站采集AV寄存器的时候,就相当于直接采集MD或者QD寄存器了。
采用地址映射的方式,就把整个数据桥打通了,易用性更好,可用性更强,灵活性更高,更具备效率。
如何实现,我们来看一下。
首先,我们在FS里,COM1先选择bacnet_mstp_server的服务驱动。
然后网络PLC里,可以根据需要添加我们要连接的设备.
比如接了modbus tcp和西门子PLC 。
这样我们就把要连接的设备添加完成了。
接下来我们就是要使用地址映射,进行寄存器的关联了。
然后我们根据要用的地址都登记到地址映射表里。
用多少登记多少就可以了。记住不要有地址冲突和重复就行了。
比如AV0同时映射到多个地址,这样就会冲突了。
我们就可以直接把工程下载到屏里了。
然后我们用上位机工具扫描一下BACnet的寄存器。
用地址映射的好处就是用多少,添加多少。
因为BACnet MSTP支持扫描和发现寄存器的功能。
这样用到多少寄存器,就扫描出来多少寄存器。不然如果预先把寄存器都设置满了,扫描出来一大堆寄存器用不到的,会影响我们测试和调试的。
我们看一下数据映射如何。
我们配置的是MV0映射到4X1001,映射了三个地址。
MV寄存器的映射已经对应上了。
我们对MV1进行写操作,很快,Modbus TCP这边的地址也就写修改了。
说明读写是没问题的。
使用地址映射的方法,就比数据双向传输效率高很多,也更好用了。
使用FS配置好工程,下载到屏里,这个屏就相当于实现了BACNet MSTP网关的功能了。
FStudio里,基本支持了市面上常见的,不常见的,主流的,非主流的PLC,控制器协议。有了这个地址映射, 已支持的协议,基本都可以映射至BACNet MSTP里。
快拿起你手中的屏试一下吧。
AV,AO,AI,一般是浮点数为主。
BV,BO,BO, 一般是位元件。
这两个数据已基本满足各种数据需求了。
而MV,MO,MI,一般是多状态寄存器类型为主。当然,也可以作为字类型寄存器使用。
在以往的一些应用场合里,通常是使用BACNet网关来采集像Modbus 等控制的设备,但有时候BACNet网关能支持的采集设备协议不够完善,就会使用触摸屏来采集PLC,然后网关来采集触摸屏,最后由上位机系统等来通过BACNet MSTP来采集网关。
有了这个地址映射,再结合这个bacnet_mstp_server,一个触摸屏就可以完成网关的工作了。
全部0条评论
快来发表一下你的评论吧 !