-
Notifications
You must be signed in to change notification settings - Fork 47
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
This is so cool! But...couple of questions? #10
Comments
Lolin D32, 2 Groups witch 2 Arctic P12 PWM PST each, 2 Dallas DS18B20. Q3:
Q2: in your case, i would probably rather replace the DHT with a Dalls DS18b20, which I would screw directly to the heatsink. for a slightly better reading, the sensor is also available without stainless steel housing. the control runs through the ESP and with Dallas temperature sensor and HA only gives a warning when the temperature exceeds a certain value. Q1: |
Most excellent! I have now hot both inverters with three fans each running. :-) I have the DHT still in place as a backup but the cooling logic is running off the internal inverter temperature for now...I will look for a place to mount a thermocouple on the inverter but from what I can see without taking if off the wall there's not too many easy options...dangling it in space as with the DHT will not be as effective. RPMs worked a treat too! A fun little project. At present using KP of 0.1, KD and KI are both zero. Inverter heat is a bit chaotic as sun condition can cause wild fluctuations in generation and therefore heat output. So KP does a simple job...may add a little KD atcsomecstagecwhen I have more data. Initial testing shows the fans will knock 20-30°C off the running temperature. Thanks for your help and inspiration! Got me well and truly underway... CP. |
can you show the code on how to get the temperature from the HA to the ESP? |
Sure thing! Code below. :-) I do have a small section to define the "effective temperature" which is basically a 'best-of' the inverter internal or DHT temperature....that part needs a little more work when I get some more time. The external air temperature lags the internal temperature and is much lower - so I will need to fudge that (e.g. air temp + 20C to 'estimate' internal temperature) as I cannot drive the inverter set point temperature (based on internal temp) against the air temperature as the air is so much cooler. Either that or I need to create a second 'mode' - cool against internal temp, OR, cool against air temp. As it is just a backup in case HA goes away and I lose the internal temp data the first approach (+20C) seems easier.....but I've parked it for now until the weekend as I have some other things to do. :-)
|
a suggestion. the temperature at the DHT is surely lower than the internal temperature. So if it waits for 30 degrees at the DHT, the internal temperature could already be too high. Maybe add an offset to the DHT when selecting the effective temperature. |
Yup. Exactly right. That's what I was trying to say with this ramble:
The external air temperature lags the internal temperature and is much
lower - so I will need to fudge that (e.g. air temp + 20C to 'estimate'
internal temperature)
That way it does exactly what you suggest. :-)
I will need to update the lambda but every time I touch something like that
it breaks so it's a job for the weekend when I have more time to
troubleshoot...
…On Mon, 30 Jan 2023, 18:34 DunklesKaltesNichts, ***@***.***> wrote:
a suggestion.
the temperature at the DHT is surely lower than the internal temperature.
So if it waits for 30 degrees at the DHT, the internal temperature could
already be too high. Maybe add an offset to the DHT when selecting the
effective temperature.
—
Reply to this email directly, view it on GitHub
<#10 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AUIP7ZU2FPH5DU2IQ3POV2DWU5HGRANCNFSM6AAAAAAUFUNCV4>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
I have just looked at the data (boring work meeting) and have added "offset: 15" to the DHT configuration....seems to be working nicely and reasonably aligned with he internal temperature. ;-) |
why can't you put the sensor inside the inverter? Why does the inverter not have its own cooling? what is the motivation behind / problem this project? |
Question 1: - The main issue with inverter cooling is that I need a responsive cooling system but one that is skewed - I need a fast(ish) response and the long slow tail....is this where kd comes in? Crank up the KP it'll respond quickly, but it might oscillate the power up and down until it finds equilibrium. Try PID Autotune, it might work for you if it is a fast response system. Question 2: Attach the DHT directly to the fin? I wouldn't try to get the reading from HA into your ESP32 because then your cooling is dependent on all of the systems being connected together. But if you do want to do that, just expose a number template to HA and then with some HA automation you could one value to the other. Question 3: I like @DunklesKaltesNichts 's suggestion, just wire the tach directly to another pin. I'd be keen to hear how you get on with it. |
BTW those fan mounts like amazing. well done. space age. |
So the inverter has a temperature sensor and I use MODBUS to read this out
and give it to HA. This i can pass back to the esp32 so it can run to this
temperature as it's the best data I can get from the heart of the machine.
The inverter doesn't have it's own active cooling system - it has a passive
radiator/ heatsink on the back (between the inverter and the wall) and it
relies on passive air movement and the draft that's created as the hot air
rises. During peak production the temperature of the inverter went to over
70C which is bad for efficiency and not good for the life of the machine.
So adding some fans to draw air up and out makes the heatsink super
effective - the max temperature now is about 42C....30C less. :-)
I can't put a probe inside the inverter (void warranty, plus it's all solid
state electronics so don't want to mess with it) and there's not really
much room to neatly attach a probe to the heat sink either....but I can
dangle a DHT over the heatsink and measure the air temperature from the
rising warm air. There's a max of about a 15-18C temperature difference
between core temperature and air temperature when the fan is running.
I want this because if HA goes away (dead, crashed while I'm on holiday,
being rebuilt, etc) I still want the controlled cooling - there'd be no
HA-based data feed of the internal temperature, but I can still get the DHT
temperature locally and I can run and control the fans with that... Meaning
the fans will stop when it's cool and work harder when it's hot (versus not
running at all or running at full speed).
I use the fan rpm data (or will when I get there) to detect fan or 12v PSU
failure, and if my ESP32 or 5v dies the fans will run at 100% (no PWM) but
HA can tell me it's gone offline (or, again, it will when I get there).
Make sense?
…On Tue, 31 Jan 2023, 16:33 Patrick Collins, ***@***.***> wrote:
why can't you put the sensor inside the inverter? Why does the inverter
not have its own cooling? what is the motivation behind / problem this
project?
—
Reply to this email directly, view it on GitHub
<#10 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AUIP7ZXQCZ5BKEWSMZVHPCTWVCBXNANCNFSM6AAAAAAUFUNCV4>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
Not going to lie, a piece of scrap toe kick board from a kitchen cabinetry
install with the corners cut at an angle, and a bit of undercoat paint to
make it white again (good colour match). Little white brackets ($4 for 10)
from the local building/hardware store. Cheap and cheerful but works good!
…On Tue, 31 Jan 2023, 16:39 Patrick Collins, ***@***.***> wrote:
BTW those fan mounts like amazing. well done. space age.
—
Reply to this email directly, view it on GitHub
<#10 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AUIP7ZVGTDNAUML43CXQ7P3WVCCPFANCNFSM6AAAAAAUFUNCV4>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
Yep, makes sense! You definitely want this running independently of HA. Checkout the new deadband features I added to PID Climate. |
esphome can also read modbus. do i read my solar charge controllers and send the data to HA. https://esphome.io/components/modbus_controller.html tere is an example of this in the cookbook. |
So I did actually try to apply some dead band config to my YAML (based on what was here: https://esphome.io/components/climate/pid.html) but I couldn't get the config to save and deploy - it kept telling me that the config wasn't valid (e.g. 'dead band' is not a valid tag in this section). I wanted to do this to flatten the fan response so it ramps up quickly and but doesn't back off so fast by making a lopsided dead band range. But had to give up as it just wouldn't work. Have you got an example? I know that ESPHome can do some MODBUS, but my inverter will only permit one connection at a time - so I've kicked it off the Internet by applying a blocking rule on the FW to that there is no "phone home" connection, and now I talk to it via HA....and all the data I get from that is useful so the loopback of the temperature back to the ESP is still the easiest. The DHT-based temperature (fudged or otherwise) isn't ideal but it's only a backup....and sometimes near enough is good enough.... |
Can you post the YAML you were using to try and implement deadband? |
So I copied the example from the link above:
Making my section look like this:
It gives the error:
But if I move under control_parameters it says:
So I got nowhere fast....I try re-organising the block by moving the on_state: section to the bottom of the pid definition etc etc but all I go was errors. I simply couldn't find a way to swallow the config..... sometime I could get past the editor error, but then the compile would fail...so something somewhere isn't quite right.... |
Aha, you don't have the latest version of esphome. |
Interesting! It seems my HASOS ESPHome addon had become 'orphaned' and
wasn't updating.....guess that explains why I never saw any changes....when
I asked my installed version to show the release notes it just said
"Nope!". So I've installed a new addon from Settings>Addons, and I have
removed the old ESPHome. All of sudden it looks a little different and it
wants to update my ESPs....so progress I think....
And now I can add the deadband settings.....so not sure why it wasn't
updating....but it is happier now!
…On Sat, 4 Feb 2023 at 14:26, Patrick Collins ***@***.***> wrote:
Aha, you don't have the latest version of esphome.
pip3 install -U esphome
—
Reply to this email directly, view it on GitHub
<#10 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AUIP7ZUIWT3CTICO2K3W6JDWVWV5TANCNFSM6AAAAAAUFUNCV4>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
Hi,
I have this running to control three fans on my inverter. Soon I will expand to cover a second inverter with a second set of fans (once I move out of breadboard stage). You made it so super easy to get up and running!
Question 1:
The main issue with inverter cooling is that I need a responsive cooling system but one that is skewed - I need a fast(ish) response and the long slow tail....is this where kd comes in?
Question 2:
I have a DHT dangling over the back of the inverter radiator to read the air temperature, but really I need something better to read the radiator fin temperature directly, or a way of pushing the inverter internal temperature (which HA knows) to the fan controller...but with the option to still use DHT incase HA fails for some reason. That is, use inverter internal temp reading and if null revert to DHT temperature. Is this possible? if so how the heck could I pull that off?
Question 3:
I'd really like to bring in the tachometer data so that I can detect fan failure. I can do all the logic in HA/NodeRed, just need to plumb up the pins and get a reading....any tips? I've seen a few ways of doing it with resistors, logic level shifters, capacitors etc....but it seems a little complicated? From the looks of things I have exactly the same fans as you... :-)
Thanks heaps!
CP.
The text was updated successfully, but these errors were encountered: