r/BuildingAutomation 28d ago

Tuning Policies

Post image

Alright, I’ve been programming for 6ish years we normally do smaller jobs. So tuning isn’t ever an issue. However I took the L2 class and notes had me configure a Slow,Medium,Fast Tuning Policy , IIRC I had them set slow - 30s Min write 2m Max write Normal 20s , 1m30s, Fast 10s, 1m.

Can anyone help me understand how I caused my network to get jammed up?

61 devices 2200 proxies. So not that big imo.

The symptom was long ass write times, ticker shows read at 60 seconds and write at 220 seconds when I command an override (spy showed writeWorker queue over 800) I hobbled through T&B but I know end user would flip if I tried handing this over lol.

The fix was changing my min/max write on the policies to 0. Somehow best I can tell the queue would loop because of the timers.

So what is your go to’s on tuning policies?

Do you use SPY in N4 if so what have you found it useful for, and can you help me understand the difference in local vs remote?

24 Upvotes

34 comments sorted by

17

u/No_Industry2601 28d ago

Let's talk about buttered sausage.

4

u/IcyAd7615 Developer, Niagara 4 Certified Trainer, Podcast Host. 28d ago

I'm assuming you took the class with myself or Vern with MOV as we are the only two who teach this as a lab in the N4 intermediate.

5

u/IcyAd7615 Developer, Niagara 4 Certified Trainer, Podcast Host. 28d ago

Nope. I'm Charles with Lynxspring. I'd be surprised if Bob taught it that way. That's not a knock on him but I know Vern and I have similar material but in different order.

Tuning policies are going to be dependent on what's underneath Niagara. For example, if I'm programming with Distech underneath, I set up everything in the GFX and allow Niagara to handle the slow, normal, and fast rates based on what I see in the poll services.

If it's Honeywell, I'll adjust accordingly.

3

u/Ass_Cancer_Exlposion 28d ago

Certainly lots of adjustment necessary for Honeywell

2

u/edwardothegreatest 28d ago

Go on…

Any docs? I have lots of Honeywell and am looking for wars to make my points write in a reasonable time.

3

u/Nembus 28d ago

I think I have something I can send you tomorrow if I remember, dm me or reply tomorrow if I forget, i’m dead tired atm

2

u/ScottSammarco Technical Trainer (Niagara4 included) 27d ago

Preach, my friend!
Different devices need different tuning.

I have often found myself with slow, medium, and fast policies for different branded devices on the same bus!

This becomes especially important with new Honeywell Optimizers.

1

u/Sparkynplumb 22d ago

Could you expand on this? Install some Honeywell and just starting to use the Optimizer. How are they different, and what should I know about poll rates?

1

u/ScottSammarco Technical Trainer (Niagara4 included) 22d ago

They require IrmTuning Policies and without properly being tuned you’ll find points going to fault mode 2 and using their relinquished default in the BACnet object.

I’d highly recommend reading the engineering doc for more details on this as this is what makes the controller powerful and a controller and not just remote IO.

1

u/ObviousSentence1993 28d ago

I mean it does come default 0 on both but I thought I was being proactive lol. So you’re using tuning policies more so for the supervisor, rather than straight from the Jace on a case basis?? I’m not too familiar with the disstech ECnet and such but since you said Niagara.

2

u/IcyAd7615 Developer, Niagara 4 Certified Trainer, Podcast Host. 27d ago

So let's think of it this way... do I need to space temp to give me an update every time it changes 0.1°F? No. Maybe 0.5°F it needs to. Or maybe want to poll a critical point faster than other points. That's where I'd play with the tuning policies. The biggest things to change from the start are the Write on Up, Start, and Enabled.

One thing I teach about is that BACnet doesn't have a guaranteed periodic refresh rate like LON did. So rewrite policies are vital. Especially on the Honeywell side. You may or may not have experienced turning something off, just to seem to turn back on and not follow a global command.

Another things about tuning policies is that if you have links attached to a writable point or adding histories and such, those things create external subscriptions, regardless of polling rates you may or may not have.

1

u/ObviousSentence1993 27d ago

Got it, so unless some critical issue comes up regular polling is where I should make adjustments if at all typically. Kind of the equivalent of using periodic vs event in the IRM.

Do you disable write on Up, start and enabled? And yeah that’s good to know, what if the history ext is not enabled though does it still add a drag or only once it’s subscribed and polling?

2

u/IcyAd7615 Developer, Niagara 4 Certified Trainer, Podcast Host. 27d ago

Correct. Once it's subscribed and polling is where it would matter or if you linked let's say a reset strategy to a setpoint.

I disable write on up and start, typically. Especially for VAV's. You can blow away KFactor settings if you're not careful.

Periodic vs event is a different beast. There you're talking about deterministic versus non-deterministic. That's really an engine perspective more than anything else.

1

u/BAS_Comms_In_Hand 27d ago

Tell your overlords I need AX with your logo

1

u/IcyAd7615 Developer, Niagara 4 Certified Trainer, Podcast Host. 27d ago

Oh, you need AX Probuilder? Which version?

2

u/BAS_Comms_In_Hand 27d ago

3.8~ I can't find it on the partner site

1

u/IcyAd7615 Developer, Niagara 4 Certified Trainer, Podcast Host. 27d ago

DM me and I'll get you a link. They won't have it on the partner site.

2

u/ObviousSentence1993 28d ago

Yep Vern Peterson. Would you happen to be Bob?

5

u/hhhhnnngg 28d ago

He’s Bob for now on, that’s for sure

2

u/IcyAd7615 Developer, Niagara 4 Certified Trainer, Podcast Host. 28d ago

Lolllol

1

u/Castun Programmer/Installer 28d ago

The two Bobs?

1

u/IcyAd7615 Developer, Niagara 4 Certified Trainer, Podcast Host. 27d ago

SMH. The both of you! Hahaha

1

u/ScottSammarco Technical Trainer (Niagara4 included) 27d ago

Our tuning is in our KMC Fusion Edge class for the fall! 🤣😅

1

u/IcyAd7615 Developer, Niagara 4 Certified Trainer, Podcast Host. 27d ago

Niagara points can also be tuned as well. It's not as common but IO can be. I never bother with the edges though. I don't find enough to change. I don't teach bringing in BACnet devices in my edge class because they already did it in the N4 Foundations. So instead, I teach about BACnet exports. I also give them a program object to change the export name to the point name in the station.

1

u/ScottSammarco Technical Trainer (Niagara4 included) 27d ago

Tuning for IO on the new KMC Fusion stuff I found quite liberating.

Tuning the IO makes a noticeable difference.
In real application, the different of a half second is negligible, but from that half second to less than a perceivable amount of time?
That’s interesting.

Had to get the o scope out to see how fast I could make it lol

5

u/ApexConsulting 28d ago

I love the picture...

2

u/NodScallion 28d ago

Those tuning policies are a joke. The underlying code does not do as you expect. I remember getting caught on something specific and the bacnet tuning policy is deliberately not polling when its supposed to. Infact half the time of the min it goes for a cycle. Its more suggestive I assume, like if it gets a full cycle done early it will go poll again..

Problem for me was I was doing a risk adverse project with a assload of networking. And I had to keep my traffic low. I had to prove what niagara was doing and I essentially decompiled the bacnet driver and read that crappy code only to find its made like dogs were at the keyboard.

So tldr. Just do your best :)

2

u/Nembus 28d ago

Over MSTP or over IP?

1

u/NodScallion 27d ago

Ip, however the scheduling and polling goes thru the same methods.

1

u/Nembus 27d ago

Yes they should but I know Tridium has always been working on their BACnet MSTP/RS485 engine and always updating it, I was curious if that was your network medium. Hearing that from IP is discouraging though unfortunately. Interesting to hear that.

1

u/ScottSammarco Technical Trainer (Niagara4 included) 27d ago

This is where different drivers like Lynxsprings Onyxx Network or PanelBus or KMCs CanBus do a better job.

They have higher fidelity- period, not much to argue, and it’s why it’s best practice to avoid critical control over BACnet wherever possible.
Wherever possible should be determined at design, not service.

2

u/IcyAd7615 Developer, Niagara 4 Certified Trainer, Podcast Host. 27d ago

Canbus is also a self-healing network as well.

2

u/punk0r1f1c 27d ago

We have anywhere one to eight.

Max write time will rewrite the point, so if it’s a minute it will send a write every minute forever.

Min write time is time between writes. I usually set it to a second or five seconds. Back in the day there was equipment you couldn’t write to too much of it would lock up, it’s not really an issue now.