Seems like this is getting quite complicated with your feedback system...
Why do you want/need one? I plan on just telling the HVAC system what to do, and then if its broken and doesnt do it, well I'll notice it pretty quickly, and can fix it. All these feedback circuits and what not.. just seems a bit much.
It'll be worth it:)
Simplicity has it's price. Besides there's only 2 feedback circuits, and for automatic control one of them is a must. And, when driving an analog output, it's kind of nice to see where you're at.
Complicated....The intermediate processing between the buttons and the outputs, and automatic control, and the error checking all put what I have shown already to shame... Already, and I've barely started on all of that.
Hopefully, what I do can be used, with little modification by others, so it doesn't remain too complicated. I'm going to include it with the Modernity skin.
I figured control of the heat mixer, fan speed, and vent selection, internal temp sensor, and external temp sensor, with a bit of code to tie it all together would be plenty..
Whats the sunload sensor for?
As the light shining upon the sensor gets brighter, the sensor conductance increases. The sensor signal decreases as the conductance increases. The sensor operates within an intensity range between completely dark and bright. The sensor signal varies between zero-Max volts.
The sunload sensor provides the HVAC control module a measurement of the amount of light shining on the vehicle. Bright, or high intensity, light causes the vehicles inside temperature to increase. The HVAC system compensates for the increased temperature by diverting additional cool air into the vehicle. If the HVAC control module detects a malfunctioning sensor, then the control module software will use a defaulted sunload value.
Why not skip that and use a temp sensor mounted inside the car to detect the temperature inside? Instead of extrapolating it based on how much sun is shining...
I am using interior,exterior, air outlet(2) Temperature as well. Sunload isn't for extrapolating, as much as it is for anticipating, and making percieved temperature be the temperature that is really being controlled. It's how OEM systems do the job.
Here's a quote from another thread I posted shortly after getting back into this that kind of describes what I'm talking about:
Originally Posted by h3rk
Haha nice writeup!
It's all about perceived temp then.. got it =] I don't think I'm going to go THAT far with my setup, but, if needed, I will at a later date ;)
As for the A/C control.. If you interface the brain to the switch on the dash for the A/C swtich/setting, then the climate controls dont know any better and should still behave like they do from the factory.. I know for a fact that my A/C compressor will shutoff during full throttle, which is controlled by the ECU. There should be no reason to remove the ECU from the loop, nor should you have to remove whattever error catching system is in place for the error codes.
If you make the brain press buttons and turn knobs just like a human would, the car knows no difference =]
Yeah, hopefully it works for most everyone who tries this the same as it does for me; shortly after writing that I re-learned that the HVAC modules usually send a compressor engage request to the engine controller, the Engine controller takes that and checks for 'compressor-off' conditions, the ECU is what decides when the compressor turns on.
My plans involve throwing my manual HVAC controller on the shelf when I'm done, so I wont have the luxury of interfacing and letting OEM engineering do the thinking for me. That would probably be the easier route, hacking a functional module with the brain, but I think this will be more fun, and perhaps more universal.
See, thats your problem right there! My car doesnt do any thinking, so I'll probably just lop the connectors off the back of my climate control ,and wire up the brain =] Though the japanese CRX's had an optional automatic climate control, but that would be too easy ;)
Good luck with yours, I'll definitly be paying attention!
Ok trying to make a working model now, but it's going to take me some time. I have to make all of the functions that react to the inputs an GUI, taking real world time into consideration so that things happen smoothly.
I'm writing it as a simple software simulator,without using IO.
I am not real good at it, so it will take a little time (I need the practice). Writing it as a simple software program will help me sort out a lot of things, and will be in a format that will be easy to translate to the skin (I hope). Here's what it looks like (on top).