Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Controlling gas boiler #235

Open
AlexHighTower opened this issue Sep 13, 2024 · 3 comments
Open

Controlling gas boiler #235

AlexHighTower opened this issue Sep 13, 2024 · 3 comments

Comments

@AlexHighTower
Copy link

Hello,

Is there correct way of controlling gas boiler via this smart thermostat?
I connect to boiler via OpenTherm protocol and it is possible only to set temperature setpoint for the supply from the boiler. Boiler it self made decision to start burner or not, change modulation level and so on

At the moment I made following logic:

  • if smartthermostat switch to "on" state I send to boiler 70 as temperature setpoint
  • if smartthermostat switch to "off" state I send 0

It works quite well but I'm not sure that this is the best solution...

@ScratMan
Copy link
Owner

Hello, as far as I understand, your boiler is controlled through an analog 0/100% power control.
If correct, you may set pwm: 0 in the configuration to directly apply the PID output to your boiler power setting.

@AlexHighTower
Copy link
Author

Hello,
Nope, boiler is controlled via OpenTherm communication protocol
But there is not much things it is possible to set up
So, my personal control implementation is to control it by setting up "'coolant' (liquid in pipes) temperature setpoint" and boiler itself support
but in fact if works like analog control and I wonder if it is possible to make it more efficient?

my HA config is:

unique_id: smart_thermostat
heater: input_boolean.smart_thermo_onoff
target_sensor: sensor.smart_thermostat_current_temperature
min_temp: 5
max_temp: 25
ac_mode: False
keep_alive: 00:03:00
kp: 5
ki: 0.01
kd: 500
pwm: 01:00:00
sampling_period: 00:01:00
precision: 0.1
target_temp_step: 0.1
boost_pid_off: true
min_cycle_duration: 00:03:00
min_off_cycle_duration: 00:03:00
cold_tolerance: 0.3
hot_tolerance: 0.0
debug: false

sensor.smart_thermostat_current_temperature - this is 1w sensor
input_boolean.smart_thermo_onoff - switch which trigger setting temperature setpoint to the boiler

it works and even takes into account the inertia of the system, so it turn off heater and the heating battery continues to give off heat and room temperature reach desired value

@AlexHighTower
Copy link
Author

With params above I have a little bit strange behaviour.. it looks like thermostat gets some error and time to time gives very shot output which have no positive influence on target temperature and it goes down, after it gives too long output and temperature goes to high (±13:00, ±04:20, ±10:30 at this example), target temperature is 17.5

Screenshot 2024-10-03 at 14 26 02

outdoor temperature is not changing down at this time and even goes up
Screenshot 2024-10-03 at 14 32 15

so, my questions are:

  • it is normal for pid?
  • is it possible to get rid of such wrong behaviour
  • how to allow wider range of target temperature fluctuation? at the moment it tries to go in +-0.5 deg, I think +-1.0 is ok)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants