This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm that you accept these cookies being set.

Bacnet for dummies
#1
I have for the first time tried out the bacnet side of LM5. Exporting my knx signals and using them on the bacnet side and importing to BMS works like a charm. 
But then i want to go the other way and import bacnet points to knx. 
Have searched a bit and find that i need some scripts, but i dont seem to find where to put them.

Any help would be highly appreciated.  Smile
Reply
#2
Hi,

That would require the BACnet client package. At the moment the client is script based without a GUI to map the BACnet objects to KNX. Also not all BACnet object types are supported. (like BACnet trends, BACnet schedulers and BACnet alarms or notification class) and COV is not supported in the client so you need to poll the objects for changes.

Keep in mind that you can’t use the server and client at the same time due to used ports by both.

In case of a BMS i would recommand the use of the server as it has COV and can handle a lot more objects. Bindings/mapping needs to be done in the BMS in that case.

BR,

Erwin
Reply
#3
(07.11.2018, 22:04)Erwin van der Zwart Wrote: Hi,

That would require the BACnet client package. At the moment the client is script based without a GUI to map the BACnet objects to KNX. Also not all BACnet object types are supported. (like BACnet trends, BACnet schedulers and BACnet alarms or notification class) and COV is not supported in the client so you need to poll the objects for changes.

Keep in mind that you can’t use the server and client at the same time due to used ports by both.

In case of a BMS i would recommand the use of the server as it has COV and can handle a lot more objects. Bindings/mapping needs to be done in the BMS in that case.

BR,

Erwin

I installed the package from her. http://openrb.com/logicmachine-as-bacnet-client/

But i did not really get where to write the script from the examples in the article. 

So if i understand correct i cant export from the knx to bacnet and at the same time send commands from bacnet to knx. In that case i would need two LM`s.
Reply
#4
If you just write you could use event script, if you read and write then all should be in single resident script.
------------------------------
Ctrl+F5
Reply
#5
Hi,

I don't understand why you need client and server at the same time, normally you would import the device BACnet points into your BMS and bind them to you processes, with the use of COV and/or polling settings you have bi-directional communication. When changing a value in the BMS the value is send to the KNX controller and when the value changes in the KNX controller it will be picked up by the BMS by the COV or polling. 

So you have 2 choices, or use the server and make the connections (bindings) inside the BMS or use the client and make the connections by script in the KNX controller, you don't need both.. My first choice would be inside the BMS as the server supports more objects then the client and it saves you a lot of scripting as the server part supports COV.

I would use the client only when there is no BMS needed, like when you need to connect to a stand alone BACnet device (like a heatpump or AHU).

In case you want to use both (server and client) at the same time in the same BACnet network (BAC0 but i don't see a use case for this) then yes you need two controllers. When you have 2 networks (BAC0 and BAC1) then you could do it with 1 controller when client is used on BAC0 and server is used on BAC1 as in that case there is no port conflict. But again i don't see a use case for that setup as it's very unusual. 

Keep in mind that objects in 2 different BACnet networks can’t see each other and this will form 2 separated BACnet worlds.

BR,

Erwin
Reply
#6
(09.11.2018, 06:51)Erwin van der Zwart Wrote: Hi,

I don't understand why you need client and server at the same time, normally you would import the device BACnet points into your BMS and bind them to you processes, with the use of COV and/or polling settings you have bi-directional communication. When changing a value in the BMS the value is send to the KNX controller and when the value changes in the KNX controller it will be picked up by the BMS by the COV or polling. 

So you have 2 choices, or use the server and make the connections (bindings) inside the BMS or use the client and make the connections by script in the KNX controller, you don't need both.. My first choice would be inside the BMS as the server supports more objects then the client and it saves you a lot of scripting as the server part supports COV.

I would use the client only when there is no BMS needed, like when you need to connect to a stand alone BACnet device (like a heatpump or AHU).

In case you want to use both (server and client) at the same time in the same BACnet network (BAC0 but i don't see a use case for this) then yes you need two controllers. When you have 2 networks (BAC0 and BAC1) then you could do it with 1 controller when client is used on BAC0 and server is used on BAC1 as in that case there is no port conflict. But again i don't see a use case for that setup as it's very unusual. 

Keep in mind that objects in 2 different BACnet networks can’t see each other and this will form 2 separated BACnet worlds.

BR,

Erwin
Thanks for a great answer, Erwin..


I want to do to simple things actually.

I  want to send values from knx to bacnet side and handle them in BMS system. This is done via the export function on bacnet server. This i got working. Found it using Yabe. And is working fine in the BMS.

Then i want to write to for example a setpoint from bacnet to knx. Thermostat setpoint etc.
Is this as simple as exporting the SP knx object and connect it on the bacnet side. Then it will write the other way, or is this too simple  Smile ..

So i really dont have any real value of using the Client.? The server will work fine for me for this work.

Then i cases where i want to integrate for example a complete AHU with the most commen values i would need to use the Client. 

Sorry for the low knowledge, but aswell you dont get aswears if i dont ask.
Thanks again for the help..
Reply
#7
Hi,

Yes it is as simple as that (: When you want to use a setpoint from KNX in the BMS you just bind it in the BMS to your process and set value transfer direction to -> BMS. Then you could decide to use COV or poll the change every x period depending on how fast you want to react on a changed setpoint. For HVAC it is not realy important to handle it within a second so a small delay in polling would never be noticed by the end user.

BR,

Erwin
Reply


Forum Jump: