No announcement yet.

PC controll over AC/power windows /and more with arduino.

  • Filter
  • Time
  • Show
Clear All
new posts

  • PC controll over AC/power windows /and more with arduino.

    Hello forum. this is a basically a followup of my post here :

    i have been working on it for some months, and since i am almost done, i figured i would post about it!!
    so first of all, at the moment, my car looks like that :
    Click image for larger version

Name:	IMG_20140322_122509.jpg
Views:	3
Size:	101.6 KB
ID:	2311108
    it consists of a digital instrument cluster, fully made by me (it communicates with a diy engine diagnostic module i have made ,that reads the cars sensors, and prints everything on the screen)
    and a 15.6" LCD screen :
    Click image for larger version

Name:	IMAG0412.jpg
Views:	2
Size:	53.3 KB
ID:	2311109
    So far, my car (audi 80 1992) did not had any sort of AirCon, and i badly wanted one, becaouse summers in Greece are very hot... So since to do this, many things had to be swaped out, i decided, i would make a DIY "AC management module" to controll it via my pc. (I alredy had a way too big monitor,so why not use it to save space )
    but then i decided i would take it a bit further, and so i added , power window control , and rear fog/defrost. central lock etc...

    So my work so far is this :
    My AC system would be a very simple one. in order to control such a system you need the following things:
    1) you need to use a PWM method, to control the motor blower, that pumps air into the cabin... i used mosfets to do this, but because the blower draws many amperes. the mosfets would overheat, so you have to place them inside the air vents, with very big heat sinks :
    Click image for larger version

Name:	IMG_20140629_123253.jpg
Views:	1
Size:	83.8 KB
ID:	2311110
    2) you have to be able to control the AC clutch ofc, (i did this via a relay, that gives power to the actual AC relay). you also have to monitor the evaporators temperature, and turn of the AC, when the evaporator is near 0 Celsius, because otherwise, the moisture on it freezes, and you risk damage to the coils..
    3) be able to control 4 servos(in my car). 2 of which control the direction of the air (up/down/middle), one that controls the recirculation of the air, and of course one , that controls how much air passes through the heater matrix.
    this is fair easy, since arduino has ready library's that allow you to control multiple servos.
    but to make the servos last even longer, (because i have used hobby servos that tend to not last long), i have added a relay (Controlled by the arduino), that gives power to the servos. so whenever i tell the pc to change the airflow direction or the temperature, the arduino will give power to the servos, adjust their new positions, and then remove the power. The "doors" that the servos move, are quite heavy, so their is no risk of them moving on their own
    (i will post pics of the servos when i have , becouse i dont have any atm:P )

    the module i have made is this :
    Click image for larger version

Name:	IMG_20140706_204500.jpg
Views:	1
Size:	156.2 KB
ID:	2311111

    the 4 left relays are buff relays that give power to the power windows (2 for each window). Because the windows can be controlled both by the Actual switches, and via my pc, i risked the situation where the actual button tells the window to go up, and the pc tells it to go down, which would make a BIG short circuit..For that i had to add Interlocking protection to those relays.... meaning that the ground of the relay1 (power window up) , goes through the relay2(power window down) contacts. so if one relay is energized for some reason, the other relay does not have ground at all, so it cant get energized

    the 2 other relays are for AC and for power on the Servos. i need to add 3 more relays, to control the rear window defrost /central locking / rear fog lights, but i am bored at the moment and will add it after i am done with the rest

    so now to the good part....
    Of course there wasen't any ready software , to control my module, on the way i wanted, so i decided i would make one myself... i am almost done with it. so far it looks like this :
    Click image for larger version

Name:	Untitled.jpg
Views:	1
Size:	64.1 KB
ID:	2311112

    it consists of two main screens. the one is the one shown above. the other will accommodate the buttons for central lock/rear fog/rear defrost/car diagnostics/and maybe more.

    what it can do:
    Well for one it can control the power windows :P it also controls the blower level, air temperature, airflow direction, ac and air recirculate... it gathers info based on the buttons that are pressed, and then sends it to the arduino that does the rest!! the program actually sends a string like this "0,0,2,5,..,24". the arduino receives this strings, and decodes it, to understand what it should do.

    one of those days, i will add the second screen, that will allow for control of rear fog/defrost/central lock, and i will also add the ability to connect to my "car diagnostic" tool, so that you can be able to pop up another window, which will contain car info (speed,fuel,rpm and so). that way it will also work as a cross-talk between my modules, and will allow for some functions like "turn of the ac compressor when above 4000 rpm or something )

    i have tested all the above separately, and they work swell i just wait for my mechanic, to install the Actuall AC compressor and the rest of the system, so i will be able to post pictures of the program, inside the car enviroment

    let me know what do you guys think!!! also, if you think i could be controlling anything else from there, then please tell me !
    Last edited by settra; 07-06-2014, 01:53 PM.

  • #2
    My hats of to you ir should i say again i am speechless.....!

    Έγραψες πατριώτη ...( sorry guys)
    Vw Sharan 2007 1.9tdi || Exide 100Ah
    Fuzzy 945gme + core duo T2400 + 2gb ddr 667 + pci nvidia 5500 256mb + kingston v300 60gb + hdd 2.5" 100gb 5400 + Sure Gps module
    Primary monitor 8" 800x600 || Secondary monitor 15.4" 1280x800
    Powered by M2 atx


    • #3
      my jaw is on the floor. you have what i am working towards. incredible. and i love the huge screen


      • #4
        awesome! i just gave up on my project... oh about 15 mins ago and ordered aftermarket gauges for my system. I did have a proof of concept for an UI though that you may find useful:

        it isnt' specifically a hvac control ui, but can be very easily adjusted for that. The best part about it is that you dont have to take your eyes off the road.
        New System in progress:
        Phaze TD1500 ~> Dynaudio MD130
        Phaze TD1500 ~> Seas g18rnx/p
        Zapco Ref 500.1 ~ 12" tc-9
        Behringer DCX2496 ~ Envision Electronics psu
        Transflective Xenarc

        My Car Pc Install
        My Boat Pc worklog


        • #5
          Wow....I'm not sure what else to say...

          regarding the heat issue of the mosfets for the blower, could you relay the blower with 3 separate relays (or whatever # is needed to match # of speeds you want). Then just have the board trigger the appropriate relay for the speed requested? You wouldn't have infinite speeds but it might reduce complexity and increase reliability?
          My 2007 Ford F350 Work Log located HERE


          • #6
            this is a nice idea, and actually more simple than the mosfet one...But i think that the relays, (all except one at least) would had to be connected on some sort of ressistors, to limit the current that passes the blower... and the ressistors would heat up Allot as well! this is how the older set up worked i think....prio to my install, mine had as well some ressistors connected to the blower, and they where also inside the air vents!! (that is how i got the idea ).
            The mosfets on the beggining tho, seemed liek it was impossible to not be burned... but it turned out, i was not saturating them good enough,
            i used 2 mosfets that costed 4 euro each . the arduino board is not strong enough to do the job alone it seemed! so i builded a driving circuit, and the heat droped ALLOT more than expected! (still needed to be inside the vents tho )


            • #7
              Then how about a traditional setup with using a common blower resister, your board would just have be the control circuit then with several outputs to trigger the appropriate resister wire:

              Click image for larger version

Name:	HVAC.jpg
Views:	1
Size:	78.8 KB
ID:	2288591

              I didn't attach this for this vehicles specific diagram, just a generic idea of using a factory type blower resister & relay which should be very reliable.
              Attached Files
              My 2007 Ford F350 Work Log located HERE


              • #8
                this would ofc work but my search prio to the buiild, had shown that the ressistors overheat more than the Mosfets, so i decided to go with MOS


                • #9
                  settra, i wanted to pwm my 3 cooling fans, but got lost on how to create a pwm ckt that can handle ~30a please indulge me with specific mosfets you used and how many in parallel if more than 1 were used to build this pwm ckt. or better post a detailed diagram of your ckt between arduino and blower motor.


                  • #10
                    Click image for larger version

Name:	FAN_control.png
Views:	1
Size:	21.5 KB
ID:	2288593
                    Besically, the arduino PWM's the optocoupler, and the optocoupler drives the Mosfet gate. this is best becouse it both isolates the arduino, and allowes for higher voltage driving the gate (even very expensive logic level mosfets, are hardly saturated at 5v...)
                    for opto i used PC817 ( i bet that any can do the job).
                    for Mosfet i used IRL1404. but i was recommended to use :
                    but couldent find them here where i leave... you should search for what fits best for your applications!!.

                    The DIODE is of absolute importance. i used a moore1520. This diode is to surpress the backfire voltage that the fans will produce... and they will be ALLOT. no matter how big the diode will be, it will overheat as well, cause of the many amperes ( at the begining, i had used a small diode, and i **** you not, i SHOW it getting burned with my own eyes, when i first turned on the blower (not to mantion arduino got burned after as well :P ) ). so the diode should also have heatsink.

                    but remember. my application was for 15A, and with ultra good cooling of the heat sinks (the air that the blower blows ). for 30A, you should use, more than one MOS, wired parallel, and you should also try to find a way, to cool them...
                    use a cpu cooler i think its the most efficient , in less space !


                    • #11
                      yes, i was thinking about using one of my large heatpipe cpu coolers with some thermal paste, and having arduino turn on 120mm fan when ckt is being used. so i can have effective pwm control with multiple mosfets wired in parallel? now i wanna remake my fan controller, AGAIN.


                      • #12