Results 1 to 13 of 13

Thread: PWM Electric Water Pump control

  1. #1
    Fuel Injected! gregs78cam's Avatar
    Join Date
    May 2011
    Location
    N. Idaho
    Posts
    767

    PWM Electric Water Pump control

    So I got my Teensy3.0 in the mail, and I am wanting to write a code that controls my electric water pump in the Camaro so that it runs at a speed proportional to the engine temp. I think this will help to decrease the warm up time. Right now I have the ECT sensor in the intake where it's supposed to be, and the sender for the gauge in the top of the hot side of the radiator, near the radiator inlet. I also have another sender in the intake opposite the ECT sensor. I can use either temp sender if I need to for this project. I think I can poke and test my way to a usable code, the only thing I need some input on is where, and how should I get analog temp input from. I am guessing that the PCM won't like another item piggybacking onto the ECT sensor, so that leaves one of the two temp senders that are simply a variable resistor to ground. If I use a 5V regulator, to suppy the Teensy, it will have a common ground with the rest of the car, and the analogRead will simply sample the V? at whatever pin I attach to the sender? Do I have this right?
    1978 Camaro Type LT, 383, Dual TBI, '7427, 4L80E
    1981 Camaro Z-28 Clone, T-Tops, 350/TH350
    1981 Camaro Berlinetta, V-6, 3spd
    1974 Chevy/GMC Truck, '90 TBI 350, '7427, TH350, NP203, 6" lift, 35s

  2. #2
    Super Moderator Six_Shooter's Avatar
    Join Date
    Feb 2011
    Posts
    2,968
    I'm actually working on something very similar, as far as the analog read side goes anyway. In my case I'm making new gauges for my car, using the GM senders.

    The issue here is that the GM temp senders do not have a linear resistance output, there is a curve to it, and this must be accounted for to have accurate temperature sensing. I'm looking at using a look up table in my case.

    You will have to use a voltage divider, to convert the resistance to a voltage that the Teensy can use. In my case I think I have a 5K ohm pull up resistor in the plans, and this will limit the current at the output of the voltage divider to less than 1 amp, at the highest resistance, which you will likely never see, -20* C.

    I was just looking at the curve again, and if you only wanted to use values above 90*F (Approx 32*C), then the function is almost linear to 300*F.

    Hmm... maybe a look up table isn't really needed for the usable range, though there would be some error between 90*F and 130*F where the curve starts to flatten out. Maybe I'll use a linear function for now, until I understand the look up table better.

    Back to what you want to do. PWM is the way to go to control speed, however, you will need to use some serious outputs, solid state relays may be quick enough, if not some power MOSFETS will need to be used to drive the water pump.

    As far as the code goes you could pass in the value of the temp as a variable, maybe multiplied by some other value to get to the correct duty cycle. Something along the ideas of this example, where the LED brightness is variable based on an analog read: http://arduino.cc/en/Tutorial/Fade

    Just to add, I think in the end, the example I linked would be almost the entire code, using only a couple pins and could be in the end put onto an Attiny45. http://dangerousprototypes.com/2011/...duino-project/
    The man who says something is impossible, is usually interrupted by the man doing it.

  3. #3
    Fuel Injected! gregs78cam's Avatar
    Join Date
    May 2011
    Location
    N. Idaho
    Posts
    767
    I'm not really concerned with accuracy, as much as the basic function. I was thinking I would use a table I guess you could call it. Figuring out ADC for rough temps and going something simple like:
    <100*F output 10%DC
    100*-130*F output 25%DC
    130*-160*F output 50%DC
    160*-190*F output 75%DC
    >190*F output 100%DC

    But in reallity, even just two steps would probably be fine, <190F=15%, and >190F=100%. IDK, it would be real easy to change the code though.

    I hadn't thought of MOSFETs for the load side, but that might be better, just like a brushed motor ESC.

    EDIT: I just watched that video, and I like the thought of one chip to do the job. I will look further into that. Thanks.
    Last edited by gregs78cam; 05-05-2013 at 07:57 AM.
    1978 Camaro Type LT, 383, Dual TBI, '7427, 4L80E
    1981 Camaro Z-28 Clone, T-Tops, 350/TH350
    1981 Camaro Berlinetta, V-6, 3spd
    1974 Chevy/GMC Truck, '90 TBI 350, '7427, TH350, NP203, 6" lift, 35s

  4. #4
    RIP EagleMark's Avatar
    Join Date
    Feb 2011
    Location
    North Idaho
    Age
    63
    Posts
    10,477
    All sounds like a cool project, but you sure slowing down coolant flow is going to help warm up? It may cause hot spots from not enough flow? Should not make a difference in warm up as only flow with T stat closed should be through heater core... need good flow past CTS sensor for PCM.

    Adding a couple hundred RPM and about 5 degrees spark to cool spark table when cold could help if you zeroed that out because of aggressive spark table?

    Long time ago I researched HP from mechanical water pump and the loss was minimal with T stat closed, when T stat was open and water had to be pushed through radiator did cause a HP draw... mechanical of course pushes more water with RPM... the electric control by temp would be nice to flow say 100% after a WOT run when back at idle...

    IIRC you were having issues running cold because the intake is not heated and no hot air (Thermac) to TBI? I've added the hot air thermac to un heated TBI intakes with great drive ability results when cold.

    1990 Chevy Suburban 5.7L Auto ECM 1227747 $42!
    1998 Chevy Silverado 5.7L Vortec 0411 Swap to RoadRunner!
    -= =-

  5. #5
    Fuel Injected! gregs78cam's Avatar
    Join Date
    May 2011
    Location
    N. Idaho
    Posts
    767
    Drivability is not an issue when cold, the PCM takes care of that just fine. I just want it to warm up faster, start making heat sooner for those mornings like Thursday.....20* low. The issue is that during warmup, all flow goes through the heater core at around 30 gallons per minute, and what little heat gets put into the coolant, is gone in an instant, then the 30* water(after the radiator) goes back into the engine, at 30gpm and has very little time to absorb any heat. It does get up to temp very slowly after around 10 miles at 45mph.
    1978 Camaro Type LT, 383, Dual TBI, '7427, 4L80E
    1981 Camaro Z-28 Clone, T-Tops, 350/TH350
    1981 Camaro Berlinetta, V-6, 3spd
    1974 Chevy/GMC Truck, '90 TBI 350, '7427, TH350, NP203, 6" lift, 35s

  6. #6
    RIP EagleMark's Avatar
    Join Date
    Feb 2011
    Location
    North Idaho
    Age
    63
    Posts
    10,477
    What's flow of a mechanical pump at idle? I think I see what your doing now.

    So you have no flow to radiator when T stat closed right? Just heater core... that should really be fine, but what your saying is the electric pump is just to much flow when T stat opens? POOF! Cold engine again...

    1990 Chevy Suburban 5.7L Auto ECM 1227747 $42!
    1998 Chevy Silverado 5.7L Vortec 0411 Swap to RoadRunner!
    -= =-

  7. #7
    Fuel Injected! gregs78cam's Avatar
    Join Date
    May 2011
    Location
    N. Idaho
    Posts
    767
    No, what I mean is a SBC holds what, 1.5gallons? of coolant. So coolant spends roughly 3 seconds in the engine, then maybe a second in the heater core, and 2? seconds in the radiator before it goes back to the engine, it has almost NO heat left in it at that point. I just want to slow it down so that it can abosrb more heat and deliver it to the heater core, then maybe have a little more residual heat after it goes through the radiator.
    1978 Camaro Type LT, 383, Dual TBI, '7427, 4L80E
    1981 Camaro Z-28 Clone, T-Tops, 350/TH350
    1981 Camaro Berlinetta, V-6, 3spd
    1974 Chevy/GMC Truck, '90 TBI 350, '7427, TH350, NP203, 6" lift, 35s

  8. #8
    RIP EagleMark's Avatar
    Join Date
    Feb 2011
    Location
    North Idaho
    Age
    63
    Posts
    10,477
    I can see where that is a lot of flow... does your electric pump have the bypass and heater house? Some have to plug bypass... but then again it's a race application, no heater core...

    1990 Chevy Suburban 5.7L Auto ECM 1227747 $42!
    1998 Chevy Silverado 5.7L Vortec 0411 Swap to RoadRunner!
    -= =-

  9. #9
    Fuel Injected! gregs78cam's Avatar
    Join Date
    May 2011
    Location
    N. Idaho
    Posts
    767
    Nope no bypass, Oh and it only draws 5.8A according to CSR. I am going to look for a SSR next time I can get to Pull&Save, which might not be till next month.
    1978 Camaro Type LT, 383, Dual TBI, '7427, 4L80E
    1981 Camaro Z-28 Clone, T-Tops, 350/TH350
    1981 Camaro Berlinetta, V-6, 3spd
    1974 Chevy/GMC Truck, '90 TBI 350, '7427, TH350, NP203, 6" lift, 35s

  10. #10
    Super Moderator Six_Shooter's Avatar
    Join Date
    Feb 2011
    Posts
    2,968
    Mark brought up a good point that you could set up qualifiers in the code to keep the pump at a certain flow rate (say 95% DC), for a certain amount of time regardless of the actual temp. Actually that would likely be a good idea to set up timers to keep the pump at a certain DC to keep the pumps speed consistent instead of fluctuating with temperature, in case there is an air pocket, or cold spike.
    The man who says something is impossible, is usually interrupted by the man doing it.

  11. #11
    Fuel Injected! gregs78cam's Avatar
    Join Date
    May 2011
    Location
    N. Idaho
    Posts
    767
    Yup that would be good, and easy, have it update the pump speed every minute or so. And I can also create a cooldown timer.....lots of options.
    1978 Camaro Type LT, 383, Dual TBI, '7427, 4L80E
    1981 Camaro Z-28 Clone, T-Tops, 350/TH350
    1981 Camaro Berlinetta, V-6, 3spd
    1974 Chevy/GMC Truck, '90 TBI 350, '7427, TH350, NP203, 6" lift, 35s

  12. #12
    Fuel Injected! gregs78cam's Avatar
    Join Date
    May 2011
    Location
    N. Idaho
    Posts
    767
    I was finally able to spend some time (not a whole lot) on trying my hand at writing code a few weeks ago. I didn't really write anything original, just combined a few of the tutorials to simulate what I want to accomplish. It takes a little getting used to writing a set of instructions that don't run concurrently. Like if you write a delay for 3 seconds, nothing else happens until the delay is up. So I have to start thinking about using counters? Where with every cycle it ads 1 to a counter, then causes function to occur at 'x' count and reset the counter right? But then doesn't the rate that the counter counts at depend on the number of instructions? Oh, so much to learn.

    Unfortunately I won't have much time in the near future to get much more done, just too much going on right now to really devote a lot of time to my own stuff. Oh well.
    1978 Camaro Type LT, 383, Dual TBI, '7427, 4L80E
    1981 Camaro Z-28 Clone, T-Tops, 350/TH350
    1981 Camaro Berlinetta, V-6, 3spd
    1974 Chevy/GMC Truck, '90 TBI 350, '7427, TH350, NP203, 6" lift, 35s

  13. #13
    Super Moderator Six_Shooter's Avatar
    Join Date
    Feb 2011
    Posts
    2,968
    You're talking about a for loop.

    But what you really want when you want more than one operation or set of instructions to run at a time (Technically they always do, but that's nitty gritty details), look at the blink without delay example. I recently learned how to use it and it's great, I can have the serial monitor update once a second, so that I can actually catch the values being displayed while the something else that uses the same input can update instantly without affecting the other operation.
    The man who says something is impossible, is usually interrupted by the man doing it.

Similar Threads

  1. EFI Fuel Pump Upgrade
    By gregs78cam in forum Fuel Injection Writeups Articles and How to New and Old
    Replies: 35
    Last Post: 04-24-2014, 10:22 AM
  2. ECM and fuel pump relay control
    By belaw in forum GM EFI Systems
    Replies: 12
    Last Post: 04-26-2013, 04:13 AM
  3. $0E fan control XDF
    By CDeeZ in forum GM EFI Systems
    Replies: 5
    Last Post: 08-04-2012, 05:58 AM
  4. 7427 $OD EGR to control electric fans
    By 96lt4c4 in forum GM EFI Systems
    Replies: 5
    Last Post: 06-28-2012, 03:37 AM
  5. Replies: 0
    Last Post: 03-21-2012, 08:41 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •