

| Subject: | Re: Arduino and Vanagons |
| From: | Angus Gordon |
| Date: | Tue, 26 Nov 2013 08:56:49 -0800 |
Brett, great that you're working on this. I haven't had time to follow closely and didn't realize the Arduino has a built-in PWM function. If it lacks the resolution needed, how about using the Arduino to regulate a dedicated PWM controller? When the ISCU quit working on my Syncro I disconnected the ISV and drove that way for a couple of years. The only time I missed the ISV was on cold starts, say below 40-50F. Granted, I have no AC or PS. After a cold start I'd have to hold the throttle open slightly to keep it idling, until it had warmed for one to two minutes. I added a 'manual' PWM controller so the engine would idle while I got out to scrape the windshield. In stock form the PWM control was very sensitive, but after swapping a potentiometer matched to the range I needed it works quite well as a form of manual idle speed adjustment. Once the engine is warmed somewhat I shut it off. As I'm sure you're aware, dedicated PWM boards are super cheap. A few years back I think I paid $10 for mine. Today you could likely find a suitable controller for $2. Thanks again for undertaking this, a computer controlled (cheap) idle would be a nice thing to have again. Angus On Tue, Nov 26, 2013 at 8:10 AM, Brett Ne <brettn777@gmail.com> wrote: > We have some data to work with! One of our members has generously put in > the time and effort to gather most of the readings we need. Here is what > we have so far: > > *Duty Cycle Under Various Engine Conditions* > > > > > > > *Condition* *Duty Cycle* *Peak Voltage* > Engine Cold, Key On, Engine Off 34.0% 9 > Engine Warm, Key On, Engine Off 29.4% 9 @ 157 mA Engine Cold & Starter > cranking (45 F) 55.0% 6 > Engine Cold & Idling 25.0% 10.5 > Engine Warm & Idling 20.5% 10.5 > Engine Warm & Running 2000 RPM > > > Engine Warm, WOT Signal > > > > > > > > > > > > > > > > > > > *Duty Cycle Under Various Load Conditions* > > > > > > > *Load* *Engine Cold* *Engine Warm* > None 23.0% 20.5% > AT in Gear 25.5% 23.0% > PS 27.0% 25.0% > AT in Gear & PS 30.0% 27.0% > > > > > > > > > *Miscellaneous:* > > > PWM Frequency constant at 148.2 Hz > > > > > Yellow Wire (11/ST1) PWM Power to Idle Stabilizer Valve > > > > > White Wire (4/ST2) Ground Connection? (Needs to be confirmed) > > > > > > > From this we can conclude: > **The idle air valve is very sensitive. A 7% increase in duty cycle is > able to overcome the combined loads of AT in gear and PS at full pressure. > The built-in PWM output on the Arduino only has 256 settings, which would > give use increments of 0.4% in the duty cycle output. This would work, but > I think that there would be a noticeable unevenness in idle speed. Not a > big deal, it just means that we will need to use a timer interrupt to gain > fine control over the duty cycle(the percentage of "on" time of the pulse) > of the PWM. It's just not as fun and easy as using the built-in PWM > functions. I'll explain interrupts in more detail when we get to the > programming stage, but it basically is just a way to grab the computer's > attention and make it suspend its current operations while it attends to a > time-critical event, like a new hall sensor pulse coming in. > > **Most of the time, the duty cycle is pretty low, around 25%, but that > changes during starting. While the engine is cranking, the duty cycle > jumps to around 55%. When I first saw this figure I thought, "Wow, it's > really increasing the airflow a lot while the engine is cranking." But I > don't think that is true because the current draw from the starter motor > drops the available battery voltage considerably. The stock ICU output > voltage drops from 9v with engine not running to 6v with starter cranking. > I think the dramatic increase in duty cycle is not for increasing airflow, > but rather to compensate for the expected voltage drop during cranking. > > **The ICU apparently makes no attempt to send a fixed voltage to the idle > air valve. With engine off, it sends 9v. With engine running, it sends > 10.5v, which matches the increase in voltage from the alternator. With > engine cranking, the output drops to 6v, reflecting the battery voltage > drop under the heavy load of the starter. For running conditions, we don't > need to worry about the output voltage level because it will be > automatically compensated for by the engine speed feedback. But for > starting, we could have the Arduino measure the voltage coming from the > battery and calculate the appropriate duty cycle change to have better > control over the airflow. > > **The idle air valve draws 157 mA when supplied with a 9v 29% duty cycle. > This translates to a 535 mA draw @ 100% & 9v or 4.8 W of power. The final > drive transistor in our circuit should be chosen to handle 1A of current to > assure durability. Lots of options here. > > > > What we're still looking for: > > What happens above idle speed? Does the idle air flow shut down, or stay > at some predetermined level? > What happens at Wide Open Throttle? > What does the Hall sensor output signal look like? I haven't found > anything definitive on the internet. There are hints that it is a square > wave and that the peak pulses are up near battery voltage. I would like to > know peak and base voltages and confirm that it's a clean square wave. > Also, has anyone taken apart an idle air valve? Is it just a motor > operating against a spring? > > > Brett > > > > > On Wed, Nov 20, 2013 at 1:41 PM, Brett Ne <brettn777@gmail.com> wrote: > > > Before we can go any further with this project, we need those > > measurements. I'm not interested in investing time, materials, and money > > into a project if it's based on assumptions and guesswork. My Vanagon > > can't be used because it doesn't have the Digifant injection system. > > > > So, we need either: > > > > Someone with an oscilloscope or a digital multimeter w/pwm functions who > > has access to a Vanagon with Digifant FI that has a healthy ICU as well > as > > power steering and AC. Bonus points if it's an automatic. > > > > Or, > > > > Someone in the Portland Metro area with a van that fits the above > > description who would be willing to work with me for a couple of hours. > I > > do have an oscilloscope and could take the measurements. > > > > > > > > > > > > > > On Wed, Nov 20, 2013 at 1:23 PM, Brett Ne <brettn777@gmail.com> wrote: > > > >> > >> > >> > >> > >> > >>> Assuming a properly functioning engine and IS system, if one measured > >>> current draw at the ISV, loads on and off, at idle, cruising speed and > >>> WOT, could they get a really good idea of when the ISV is used? (valve > >>> changes position). Maybe a graphing meter would be useful in this > >>> regard? > >> > >> > >> Current draw or voltage measurements would be kinda okay. They should > be > >> proportional to the duty cycle, but again, knowing the duty cycle tells > you > >> exactly what the control unit is doing and is much preferred over > indirect > >> measurements. > >> > >> > >> > >>> My guess is that at idle, no loads (PS, AC) the valve is > >>> closed. Or..... > >>> > >> > >> ...or partially open. We can all guess until we're blue in the face, > but > >> if we want to create a re-engineered control unit that solidly replaces > the > >> old one, we have to establish the behaviors of the old one first > >> > >> > >>> > >>> Isn't the ICU basically taken out of the picture any time the throttle > >>> is just off idle or at WOT? (throttle enrichment switch activated or > >>> not). > >>> > >> > >> Maybe, maybe not. Maybe the idle throttle opens fully under full > >> throttle to help the engine breathe better. I just don't know. > >> > >> > >>> > >>> Did you find the correct "Vanagon" Digifant pro training manual > >>> online? If not, can send more images. There may be some useful in > >>> there for your needs. > >>> > >> > >> No, I haven't, though to be honest, I haven't been looking. Typically > >> training or repair manuals may give enough info to identify a faulty > part > >> but don't give all the details on how that part interacts with all the > >> other parts of the system. > >> > >> > >> > >> -- > >> Brett in Portland, OR > >> "Albert" '82 VanaFox I4 Riviera > >> > > > > > > > > -- > > Brett in Portland, OR > > "Albert" '82 VanaFox I4 Riviera > > > > > > -- > Brett in Portland, OR > "Albert" '82 VanaFox I4 Riviera >
Have something to add on this topic today? Revive this thread in the forum »