fly by wire throttle

Free Open Source Firmware project discussion forum. Post your Free Open Source firmware projects here!
User avatar
KW1252
LQFP112 - Up with the play
Posts: 166
Joined: Tue Jan 15, 2008 5:31 pm

Re: fly by wire throttle

Post by KW1252 »

Fred wrote:If you're using several pics for redundancy, they should be independently designed and implemented such that no flaws are common.
Any serious flaw should be debugged out of the code, just as the hardware needs to be debugged from errors. The code should only check the signal for error conditions, and as such it would be fairly simple, I'd imagine few hundred bytes at most. The redundancy is there for hardware malfunctions.
0 and 100% are valid outputs to a DC throttle motor (I've implemented this in person with excellent results).
As the motors go it is, but it won't allow hardware detection between intentional full throttle and shorted line. LSB set to zero in 16-bit PWM signal won't register in the throttle plate position; for electronics it's a big thing.
As is instant rate change. If I want to literally stamp the pedal, the ADC will go from 0 to full in a single sample (depending upon sample frequency) and you should be able to converge upon that value as quickly as possible with full 0 or 100 DC.
I wouldn't even consider using an ADC that could be outrun by foot. At 10kHz sample rate and 50mm pedal travel you need to put down your foot at nearly 1.5 times the speed of sound to beat the sample rate, I don't think it'll be a problem in any properly designed unit. A faulty electronics on the other hand can slew the signal at far greater rate.
Again, implemented all that for a fast acting and accurate response, but I still wouldn't want one on my car, the indirection isn't nice, there is no feel, you can't notice physical issues with the throttle by feel, etc etc.

Fred.
True the personal preference is a big factor here, but the preference may also be dependent on the circumstances. On a dry road, paved or otherwise, direct control between the accelerator and throttle is pretty much all you need; however, driving on an ice or snow track the accelerator work needs to be smooth, and if it's not, Sir Isaac Newton will take you for a ride. Filtering out accidental blips isn't a bad idea here.
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: fly by wire throttle

Post by Fred »

KW1252 wrote:
Fred wrote:If you're using several pics for redundancy, they should be independently designed and implemented such that no flaws are common.
Any serious flaw should be debugged out of the code, just as the hardware needs to be debugged from errors. The code should only check the signal for error conditions, and as such it would be fairly simple, I'd imagine few hundred bytes at most. The redundancy is there for hardware malfunctions.
This is absolutely not true. In any truly serious application, two teams are employed and isolated such that they develop entirely different solutions, each are tested till they exhibit NO bugs, and then both are put into service monitoring each other and the system. The reason for this is that when some unexpected side effect takes out one system, it will almost certainly not take out the other, because due to the completely independent development process, the same flaw will almost certainly not exist. Each solution is solid and complete, just different, and it is the difference which is what is required.
0 and 100% are valid outputs to a DC throttle motor (I've implemented this in person with excellent results).
As the motors go it is, but it won't allow hardware detection between intentional full throttle and shorted line. LSB set to zero in 16-bit PWM signal won't register in the throttle plate position; for electronics it's a big thing.
That's a fair call. It's only a fair call at the open end, though, and you'd need to uprate the throttle size slightly to ensure good flow efficiency at NWOT (nearly wide open throttle).
As is instant rate change. If I want to literally stamp the pedal, the ADC will go from 0 to full in a single sample (depending upon sample frequency) and you should be able to converge upon that value as quickly as possible with full 0 or 100 DC.
I wouldn't even consider using an ADC that could be outrun by foot. At 10kHz sample rate and 50mm pedal travel you need to put down your foot at nearly 1.5 times the speed of sound to beat the sample rate, I don't think it'll be a problem in any properly designed unit. A faulty electronics on the other hand can slew the signal at far greater rate.
Your math is bad. The software is definitely not going to be performing all of its calculations at 10khz, likely MUCH less. And as such, you better believe that an *impact* from a foot moving at speed can max that sensor out that quickly.
Again, implemented all that for a fast acting and accurate response, but I still wouldn't want one on my car, the indirection isn't nice, there is no feel, you can't notice physical issues with the throttle by feel, etc etc.
True the personal preference is a big factor here, but the preference may also be dependent on the circumstances. On a dry road, paved or otherwise, direct control between the accelerator and throttle is pretty much all you need; however, driving on an ice or snow track the accelerator work needs to be smooth, and if it's not, Sir Isaac Newton will take you for a ride. Filtering out accidental blips isn't a bad idea here.
I'd prefer to filter out the weakest link, the driver that wasn't smooth, and let them die. You've moved out of throttle control, and into traction control and/or ice mode for the vehicle. Besides, I've driven on snow, and ice, and managed to survive with my own finesse. granted, you've done it far more often, but that should mean that you're better at it than I am! :-)

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
User avatar
KW1252
LQFP112 - Up with the play
Posts: 166
Joined: Tue Jan 15, 2008 5:31 pm

Re: fly by wire throttle

Post by KW1252 »

Fred wrote:
KW1252 wrote:
Fred wrote:If you're using several pics for redundancy, they should be independently designed and implemented such that no flaws are common.
Any serious flaw should be debugged out of the code, just as the hardware needs to be debugged from errors. The code should only check the signal for error conditions, and as such it would be fairly simple, I'd imagine few hundred bytes at most. The redundancy is there for hardware malfunctions.
This is absolutely not true. In any truly serious application, two teams are employed and isolated such that they develop entirely different solutions, each are tested till they exhibit NO bugs, and then both are put into service monitoring each other and the system. The reason for this is that when some unexpected side effect takes out one system, it will almost certainly not take out the other, because due to the completely independent development process, the same flaw will almost certainly not exist. Each solution is solid and complete, just different, and it is the difference which is what is required.
That's for the bigger scope, and indeed, it's being done here as internal (code) error checking and external (hardware) with the microcontroller chip to reduce the component count a little. The code complexity far lower and used for fail-operative tasks (where it's not required to cut engine power) so total failure for the component will not be catastrophic, and the loss of the function requires both the internal and the external watch to fail. Two microcontrollers are for hardware malfunction proofing.

0 and 100% are valid outputs to a DC throttle motor (I've implemented this in person with excellent results).
As the motors go it is, but it won't allow hardware detection between intentional full throttle and shorted line. LSB set to zero in 16-bit PWM signal won't register in the throttle plate position; for electronics it's a big thing.
That's a fair call. It's only a fair call at the open end, though, and you'd need to uprate the throttle size slightly to ensure good flow efficiency at NWOT (nearly wide open throttle).
The throttle servo will not have 16 bit effective accuracy. The system will lose far more than one bit from the least significant end to various electrial and mechanical issues.
As is instant rate change. If I want to literally stamp the pedal, the ADC will go from 0 to full in a single sample (depending upon sample frequency) and you should be able to converge upon that value as quickly as possible with full 0 or 100 DC.
I wouldn't even consider using an ADC that could be outrun by foot. At 10kHz sample rate and 50mm pedal travel you need to put down your foot at nearly 1.5 times the speed of sound to beat the sample rate, I don't think it'll be a problem in any properly designed unit. A faulty electronics on the other hand can slew the signal at far greater rate.
Your math is bad. The software is definitely not going to be performing all of its calculations at 10khz, likely MUCH less. And as such, you better believe that an *impact* from a foot moving at speed can max that sensor out that quickly.
A separate throttle controller can focus much more on the accelerator input calculations, and even with 500Hz you'll need to be really abusive to the accelerator. Anyway, if you don't check the input (which still could be done by using a high-pass filter to detect unnatural peaks), the output rate could be set to limited rate (still way faster than the engine should be throttled) to let the watch electronics know the controller is in the loop.
Again, implemented all that for a fast acting and accurate response, but I still wouldn't want one on my car, the indirection isn't nice, there is no feel, you can't notice physical issues with the throttle by feel, etc etc.
True the personal preference is a big factor here, but the preference may also be dependent on the circumstances. On a dry road, paved or otherwise, direct control between the accelerator and throttle is pretty much all you need; however, driving on an ice or snow track the accelerator work needs to be smooth, and if it's not, Sir Isaac Newton will take you for a ride. Filtering out accidental blips isn't a bad idea here.
I'd prefer to filter out the weakest link, the driver that wasn't smooth, and let them die. You've moved out of throttle control, and into traction control and/or ice mode for the vehicle. Besides, I've driven on snow, and ice, and managed to survive with my own finesse. granted, you've done it far more often, but that should mean that you're better at it than I am! :-)

Fred.
I'd consider it an extra insurance rather than traction control, throttle smoothing cannot cure ham-footed driving really. What would be even more useful is logarithmic response curve, it can be done with a spiral throttle lever but such a method does not lend itself to quick alterations.
jtw11
TO220 - Visibile
Posts: 12
Joined: Mon Dec 31, 2012 2:02 pm

Re: fly by wire throttle

Post by jtw11 »

MotoFab wrote:You get back the energy from drawing the vacuum against the throttle plate, because that vacuum helps lift the piston on the compression stroke.

Pumping losses are from pumping. With a blocked intake there is very little air being pumped. If you consider a completely closed intake and exhaust, there are no pumping losses. There's only friction from the motor mechanicals.

Block the hose on a shop vac and the motor speeds up. Block the intake port on an electric-powered piston or diaphragm vacuum pump and it uses less current.

While traveling at a medium rpm in second or maybe third gear, switch off the ignition and take your foot off the gas. While coasting down in gear, open the throttle and notice the increase in deceleration. That is really noticeable on a high power to weight ratio vehicle, like a motorcycle for example.

Jim
Hmm, I'm afraid you're confusing pumping losses with something else - and I'm sure you'll find if you conduct your own experiment - quite the opposite of what you say will happen will happen.

Talking in terms of theory however, yes - you're right - closing the throttle does reduce some kind of loss, the losses caused by having to compress a full cylinder charge, but not pumping losses. Even then, the reduction in loss is so small - as with these 'compression losses', most of the work done by compressing the air is returned as the piston is pushed back down the bore by said pressure - only the energy converted into heat by compressing the air that is then conducted through the bore walls and head is actually lost.... A very small amount indeed! Thus, completely outweighed by the huge increase in pumping losses with a closed throttle.

Look at a pV diagram of an engine producing power (a REAL diagram, not a theoretical cycle diagram) and the lower loop you see is the work absorbed by pulling air through a nearly closed throttle, the upper loop is the work delivered to the crank (before frictional losses etc). The more open the throttle, the smaller the lower loop, the lower the pumping losses.

This is the exact reason an engines brake specific fuel consumption is lowest at full throttle, as pumping losses are minimal, hence why Diesel engines are so efficient at part load relative to a spark ignition engine as they are not throttled.

I'm away from home at the moment being the Christmas season - but when I return, I'll post a load of data I've got from a series of steady state tests on an engine dyno I did earlier in the year with a 1.2l N/A VAG group engine with the exact purpose of proving this... The tests were conducted with fixed ignition, fixed cam timing etc - only the throttle and required fuelling was altered. Even when you let ignition and cam timing do their thing, you get the same result.

jharvey wrote:In my drive by wire Jetta, the throttle is wide open pretty much all that time. I guess it might close some under certain conditions during idle, but I understand the throttle is more of a safety feature than anything else. Basically if the ECU notices the injectors are dumping in extra fuel, the ECU has a separate mechanism to limit intake air, such that it can limit power. Other than that the throttle is wide open, and the intake air pressure is regulated with the turbo. I guess that's why the 1.8T is known for breathing well.

There is no foot feel for issues with the throttle, so if it were to back fire, I'd have no idea it was doing that. Perhaps a handy feature for FreeEMS would be to use the MAP to catch such spikes and toss up an indicator light or something.
Assuming your Jetta has direct injection, then a very open throttle a lot of the time is quite possible. A number of GDI engines from the VAG group only run on fewer than all of their cylinders at part load - injection is switched off to a group of cylinders - that way, the remaining active cylinders must work harder to compensate for the loss, requiring a greater opening of the throttle, thus reducing pumping losses.

There's a good wiki page on the subject, there's a subheading on this page called 'cylinder deactivation'. http://en.wikipedia.org/wiki/Variable_displacement
Last edited by jtw11 on Mon Dec 31, 2012 6:50 pm, edited 3 times in total.
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: fly by wire throttle

Post by Fred »

Ahh, there's nothing better than seeing MotoFab/Jim/Poolside being put in his place. I hope he dares to respond :-)
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
jtw11
TO220 - Visibile
Posts: 12
Joined: Mon Dec 31, 2012 2:02 pm

Re: fly by wire throttle

Post by jtw11 »

Fred wrote:Ahh, there's nothing better than seeing MotoFab/Jim/Poolside being put in his place. I hope he dares to respond :-)
I know I'm new to this forum, a trait which people do not take lightly to I'm sure when challenged - but please be assured my intention is not at all on tread on toes, only to share my knowledge in a subject which provides me with a living, and also to learn from others where possible.
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: fly by wire throttle

Post by Fred »

Look, new to forum is only a problem (here!) when accompanied by a bad attitude, which you don't appear to have! :-) Speaking of bad attitudes:

Besides, any treading on Jim's toes is best done with a steel-capped gumboot such as the one below, with intent to sever!

Fred.

Image
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
jtw11
TO220 - Visibile
Posts: 12
Joined: Mon Dec 31, 2012 2:02 pm

Re: fly by wire throttle

Post by jtw11 »

Here we are, test sites 9 through 11. I carried out this tests on an HTP code VAG Group Skoda engine, which is their 1.2L N/A 3 cylinder engine - these tests were performed on an AVL DynoPerform eddy current dyno.

All tests were conducted at 2500rpm at 15.3%, 19.4% and 47.7% throttle producing 6.1kW, 9.3kW and 25kW respectively. pV scales etc are identical in all three diagrams so you can see the difference - if you want the numbers to calculate IMEP yourself, I've got them, infact - I might have a spreadsheet with it done already, I'll have a look.

Image

Image

Image

On the subject of TC strategies as discussed earlier in this thead;
johnd wrote:...traction control in the old way by cutting fuel ,retarding timing ,cutting spark etc is too jerky and would cause loss of traction ,so they use the ecu controlled t/b along with ingniton retard ,and fuelling and other sensors i have mentioned.
not an afternoons job setting one up for a new track!! and of course toally dif set-up for the wet!!
I would tend to disagree with ignition cuts being too 'jerky' - I would agree however with regards to fuel cuts as the time for them to take effect is greater, so their effect must be somewhat larger to compensate - this of course, is not the case with GDI engines that in N/A applications almost solely use fuel cuts as opposed to ignition cuts for the fuel saving benefit.

Ignition cuts are the primary defence against wheel slip in motorsport... By the time the throttle has moved, and intake flow has reduced, multiple engine cycles have been completed - all of which could have had their ignition cut to pause power delivery and catch that 600hp slide. To address the 'jerkiness' of a cut, individual cylinders are cut per cycle with set ramp in and ramp out rates of ignition cut percentage. This way, a percentage torque reduction can be called for calculated by slip value against vehicle speed, and as you say - corrected for throttle angle, steering angle, lateral and vertical G etc...

Cut patterns typically are random, although some engines such as odd fire engines use pre determined cut patterns to help reduce the stresses present in the crank during pattern cuts.

Fuel and throttle arn't used anywhere near as much as ignition cutting is used for TC - turbo engines typically decay cuts away very quickly and instead retard timing like you say to keep the turbo spooled.
MotoFab
1N4001 - Signed up
Posts: 307
Joined: Thu May 29, 2008 1:23 am
Location: Long Beach CA

Re: fly by wire throttle

Post by MotoFab »

Hey there, jtw. Did you say you had a motoring dyno? The VAG GDI motors mentioned in your prior post have a mechanism on the cam to disengage the valves on the unused cylinders, that in order to eliminate pumping losses.
jtw11
TO220 - Visibile
Posts: 12
Joined: Mon Dec 31, 2012 2:02 pm

Re: fly by wire throttle

Post by jtw11 »

As much as I wish it was, I'm afraid the dyno these tests were performed on does not belong to me, no. Yes, the VAG engines do indeed keep all valves closed on deactivated cylinders, but this is not what decreases pumping losses. Freeing up airflow through the intake system reducing pumping losses, get rid of the horrendously inefficient butterfly, and you do exactly that. Why else do you think the highest performing N/A engines such as the current breed of 2.4L F1 engines do not use a butterfly, but instead a barrel throttle? Pumping losses again - the lower pV loop becomes smaller, albiet very small and the majority of flow control through a butterly is in the ~0-50%, but not to be ignored in those sorts of applications, too small for road yes, however.

Think about it another way, systems like Fiat's new Multiair (okay, not all that new as we're now in 2013) - open the throttle wide open, then to allow a say 50% cylinder fill, open the valve fully, then snap it shut fully half as early as normal. That way, you've created the 50% cylinder fill without throttling the air flow - you're filling with as little restriction as possible, then closed. The engines still have throttles to allow you to still drive the car if the actuators that control oil volume flow to the valve actuators fail and leaves you with 'normal' cam operation.

If you performed steady state dyno tests with a multiair system, where you snap the valves shut where you normally would, then 80%, 60%, 40% etc - you wouldn't see the same increase in the lower pV loop as you would if you restricted cylinder flow with a throttle. People seem to get confused with variable valve lift, and the new systems such as Multiair - those systems allow maximum airflow, then snap the valves shut early.

There will ALWAYS be pumping losses, so saying a throttle eliminates them is not strictly true - it only eliminates the losses 'eliminateable' for a given engine design. The very fact you're pulling air through the gaps in an engine bay, into a manifold, through a filter, through the ports etc always creates some sort of pumping loss, that's inevitable - get rid of those, you no longer have an engine.

However, I'm afraid you've still misunderstood - even when staring dyno data directly in the face *sigh*. VAG and other manufacturers keep valves closed for a number of other reasons; intake / exhaust ports have restrictions of their own, and to keep the deactivated cylinders hot. Think what happens to thermal losses through the activated bore walls if neighboured by a cool deactivated cylinder. I think you'll find if you look a number of engines, there are many which still deactivate cylinders with 'traditional' camshafts, as I've already described. Clever valve trickery simply increases the potential for gains.

The below quote from my earlier post explains exactly why compressing air in a cylinder does not contribute to pumping losses, pumping losses should not be called pumping losses at all, but rather 'intake flow losses.' The below explains how you get back all (minus an almost insignificant amount) of the energy you put in to compressing the air in the first place.
Talking in terms of theory however, yes - you're right - closing the throttle does reduce some kind of loss, the losses caused by having to compress a full cylinder charge, but not pumping losses. Even then, the reduction in loss is so small - as with these 'compression losses', most of the work done by compressing the air is returned as the piston is pushed back down the bore by said pressure - only the energy converted into heat by compressing the air that is then conducted through the bore walls and head is actually lost.... A very small amount indeed! Thus, completely outweighed by the huge increase in pumping losses with a closed throttle.
I'm afraid there is a vast amount of incorrect information floating about the internet, and thus it may be easy to believe the almost everybody on forums around the world has it wrong, but I'm afraid in this case - they haven't. Pumping losses are caused by intake restrictions. Please, using the provided dyno data, explain what else is causing the lower pV loop to decrease in size with an opening throttle? Also, please explain why BSFC decreases with an opening throttle, and IMEP increases with an opening throttle with respect to percentages of upper and lower pV loops?

I suppose you could always fire Honda an email and kindly explain to them that their website is wrong, and they haven't understood pumping losses with so many Championship wins to their name... http://world.honda.com/automobile-techn ... CM/detail/
"Pumping loss is the air resistance incurred when the pistons pump intake and exhaust gases through the cylinder. It is particularly high during intake with the throttle closed."
Note the wording, through the cylinder, not in the cylinder - if you allow the air to pumped through the cylinder more easily, pumping losses go down. The only reason we're not discussing exhaust systems here too if they're almost always fixed, conduct the same tests on a dyno - but with a throttle in the exhaust (clearly, please don't attempt this with a brass throttle butterfly) - and you can create pumping losses by throttling the exhaust.

Or these lot http://www.mechadyne-int.com/vva-refere ... -si-engine
Or Fiat, who you are sure have wasted a decade developing their multiair system http://www.fiatpowertrain.com/FPTPressR ... GENEVA.pdf
Not sure BMW would be happy about having got all their information wrong in a published book http://books.google.co.uk/books?id=AZKF ... mw&f=false , http://www.bmw.com/com/en/insights/tech ... ronic.html
I'm not trying to be an arse, I'm simply trying to make you see it from a different point of view - and realise that, unfortunately - you have it wrong. I think I've now run out of different ways to try and explain it.
Post Reply