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.

Rekuperator Nordic S4 BACnet communication
#1
Hi,

I need help with BACnet. I created 10 sec resident script, and I can read all values I need from recuperator over LAN (resident script every 10 sec).

But I need also remotely change some parameters (working modes).

Advices needed:

1. How better build communication with recuperator if I need constantly read info from recuperator and periodically write some parameters to it?
2. What to write (type) for multistate value? Itried different variants, not working..
3. Do I need to stop my bacnet reading script to write to device?
4. Do I need to show Bacnet device IP or enough just show device ID?
 I used such variant to change instance 50 to 1, tot work:
Code:
require('bacnet')
res, err = bacnet.write(2, 'binary value', 50, true, 16)
log(res, err)
In manual 0 or 1 mentioned
And what to wrire for multistate value??

5. I can't change status of these parameters:

       Name:  Comfort button
Description: 
0 = Ventilation mode Away after Away delay timer duration [Pintval,318]. Also overrides Room operating mode [Mval,42].
1 = Ventilation mode according to Room operating mode [Mval,42].


Object type: Binary Value
Instance number 50
Priority 13
Access: RW
Range (present value): 
[0 : Inactive | 1 : Active]


Name: Heat recovery ventilation state
Description: Present Ventilation mode
Object type: Multistate Value
Instance number 361
Access: R
Range (present value): 
[ 1 : Off | 2 : Away | 3 : Home | 4 : High | 5 : Fume hood | 6 : Fireplace | 7 : Temporary high] | ]


Name: Room operating mode
Description: Select Ventilation mode.
Only works if Comfort button [Bval,50] = 1
If Comfort button [Bval,50] = 0, this register is Away.
(If ventilation mode control is active on a digital input,
the digital input overrides this register.)

Object type: Multistate Value
Instance number 42
Priority 13
Access: RW
Range (present value): 
[ 1 : Stop | 2 : Away | 3 : Home | 4 : High] | ]

My reading script (every 10 sec):
Code:
require('bacnet')
OutsideTemp = bacnet.readvalue(2, 'analog input', 1)
SupplyAirTemp = bacnet.readvalue(2, 'analog input', 4)
ExhaustTemp = bacnet.readvalue(2, 'analog input', 11)
ExtractTemp = bacnet.readvalue(2, 'analog input', 59)

S4OpMode = bacnet.readvalue(2, 'multi-state value', 42)
S4VentMode = bacnet.readvalue(2, 'multi-state value', 361)

OpTimeFilter = bacnet.readvalue(2, 'analog value', 285)
OpTimeFilterForReplacement = bacnet.readvalue(2, 'analog value', 286)

ComfortButton = bacnet.readvalue(2, 'binary value', 50)

SetPointT_Away_Sup = bacnet.readvalue(2, 'analog value', 1985)
SetPointT_Away_Exthaust = bacnet.readvalue(2, 'analog value', 1988)
SetPointT_Home_Sup = bacnet.readvalue(2, 'analog value', 1994)
SetPointT_Home_Exthaust = bacnet.readvalue(2, 'analog value', 2070)

CO2_Sensor = bacnet.readvalue(2, 'analog value', 2096)

FaultCounter = bacnet.readvalue(2, 'analog value', 2026)

Exhaustairfanspeedfeedback = bacnet.readvalue(2, 'analog input', 12)
Supplyairfanspeedfeedback = bacnet.readvalue(2, 'analog input', 5)

Exhaustairfanspeed = bacnet.readvalue(2, 'analog output', 4)
Supplyairfanspeed = bacnet.readvalue(2, 'analog output', 3)


Heatingcoilelectricposition = bacnet.readvalue(2, 'analog output', 29)
Heatingcoilvalveposition = bacnet.readvalue(2, 'analog output', 12)
Rotaryheatexchangerspeed = bacnet.readvalue(2, 'analog output', 0)

grp.update ('56/1/0', OutsideTemp)
grp.update ('56/1/1', SupplyAirTemp)
grp.update ('56/1/2', ExhaustTemp)
grp.update ('56/1/3', ExtractTemp)
grp.update ('56/1/4', S4OpMode)
grp.update ('56/1/5', S4VentMode)

grp.update ('56/1/6', OpTimeFilter)
grp.update ('56/1/7', OpTimeFilterForReplacement)

grp.update ('56/1/8', ComfortButton)

grp.update ('56/1/9', SetPointT_Away_Sup)
grp.update ('56/1/10', SetPointT_Away_Exthaust)
grp.update ('56/1/11', SetPointT_Home_Sup)
grp.update ('56/1/12', SetPointT_Home_Exthaust)

grp.update ('56/1/13', CO2_Sensor)

grp.update ('56/1/14', FaultCounter)

grp.update ('56/1/15', Exhaustairfanspeedfeedback)
grp.update ('56/1/16', Supplyairfanspeedfeedback)

grp.update ('56/1/17', Exhaustairfanspeed)
grp.update ('56/1/18', Supplyairfanspeed)

grp.update ('56/1/19', Heatingcoilelectricposition)
grp.update ('56/1/20', Heatingcoilvalveposition)
grp.update ('56/1/21', Rotaryheatexchangerspeed)

BR, Alexander
Reply


Messages In This Thread
Rekuperator Nordic S4 BACnet communication - by AlexLV - 26.11.2024, 15:22

Forum Jump: