arduino engine management
The one on the left here is running the speed we know firmware. The one on the right is running, the our do stem crank and cam simulator program. Currently, it is simulating a thirty six minus one crank tooth wheel, there’s a couple of trim pots on the top of that one, one of which is controlling the RPM of that simulated signal and there’s. Also, a trim pot simulating a TPS and another for the o2. Those two are being fed into the speed. We know Arduino the example of the outputs. Here you can see the bottom line. There shows the signal from our do: stem 36 minus one pulse and the signal at the top. There shows the injector output from speed. We know and we can speed that up and slow it down as necessary. You have a fairly standard, tuner studio, dashboard screen, I’ve disconnected the RPM signal from the speed we know at this point just to run through a couple of things. First standard setup is much like you would see in a mega squirt, we set the required fuel figure, we dictate the number of squirts per cycle and the injector staging. Now there are some limitations in this at the moment around. What staging is supportive with which number of squirts that will develop in the future, but both alternating and simultaneous are supported. We can look at a trigger setup. In this particular case, I’ve got thirty six minus one, which is what the stimulator is outputting.
The trigger angle is specified as 240 for crank degrees, after top dead center and as far as the the Skip cycles, which is the number of revolutions that must occur after cranking or so during cranking before the system turns on. We can also set some very basic injector characteristics, such as the opening time and any battery voltage Corrections that we need so I’m going to go ahead and plug in the crank signal at the moment and you’ll see the RPM pop up to around 3300 you’ll see Also, the after study enrichment has come on that will run for a pre configured number of seconds at a certain percentage. We can see the total of the enrichments here now that the after starting richmond has gone off being about 116 17. This is from the based on the coolant temperature, and it is all coming as you can see from the warm up in Richmond, the warm up enrichment can be tuned in much the same way as a mega squirt. You have a standard curve here. We can lift these values up, see a corresponding change here or I can pull them back down and see the same pop that back up to a sensible value. If I just adjust the coolant signal that’s coming into the ECU, I can bring that up to a temperature of about 82 degrees, and we see that the enrichment for four warm up and hence the total enrichments, have now gone to about 100 percent, which is what We would expect for our basic tuning.
We have an 8 by 8 table for fuel. You can see the the corresponding rpm and TPS signals here, both of which can obviously be adjusted up and down, and the changes in these obviously make corresponding difference to the pulse width as well. This can all be live, edited to again show the difference in the pulse, width and that’s all updated live on the ECU. We also have a 3d view table if we want to edit it. That way same goes for a spot control which will affect the spark advance you can see down here. This is a four way interpolation for all these tables to and finally tuning table that we have is for air fuel ratio targets. Currently, there are two ways we can have closed loop AF, our narrowband and white band are both supported for narrowband there’s, a simple target chasing algorithm or for wideband there’s, a Pitts algorithm, and all that the proportional integrals and derivatives can be tuned from here. There’S acceleration enrichment currently based on TPS. Only if I tweak the TPS quickly here, you’ll see this jumping up. You also see the ve changing, as well as the gamma enrichment, as well as the TPS acceleration indicator coming on. We can change the graph here to show the acceleration enrichment and the impact that’s having on total enrichment, there’s basic tuning here for deceleration fuel cut the TPS threshold for the for the acceleration and the time that the enrichment should last in control goes.
We also have dwell settings separate, cranking and running dwell, as well as some over dwell protection in case of noise problems or anything like that. There’S both hard and soft rev limiters, which you currently spark based. So they will retard timing for the soft limiter and cut it completely for the hard limit. Finally, I just wanted to that we get from using tuner studio, and that is that we get the full data logging capabilities that that package has. This is a brief data. Log that I just recorded to show some of the warm up and after start capabilities, and we can log those so I’m, showing three different pieces of information here: the top one being rpm middle line being for pulse width and the bottom line showing gamma II. For the total amount of Corrections that we have so at the beginning, we see zero rpm. The engine is then started, or in this case the stimulator connected. Pulse width jumps up obviously, and we see a relatively high gamma a of about 130. This runs for a pre configured amount of time, at which point the after start, enrichment turns off, and what we’re left with here is the warm up enrichment, who would add, add another line here for just the warm up enrichment. We would see that in this portion, it traces the line for total gamma enrichment. Exactly let me say that the two values here are exactly the same. If I change the coolant value, which we can also map coolant going here from about 43 degrees up to 82, at which point the warm up in Richmond stops and the pulse width changes accordingly, this point the engine is revved a number of times, and we see The corresponding pots with change there as well.
The second second log here just shows an example of the acceleration enrichment line up the top we have is the TPS signal. Second line here in red shows the TPS dot the Delta over time. Green line here shows an acceleration enrichment amount, that’s been calculated based on that TPS dock figure. And finally, we see the impact this has on the actual pulse width, depending on the rate of change of the TPS. The value added can be anywhere from about 21, which we see here up to a larger amount for a faster TPS acceleration. We see about 35 percent fuel increase here and how that Maps down into pulse width. So that concludes everything that I wanted to show about. The speed we know firmware and what features it currently has very shortly. The project will move into a feature: freeze and I’ll look towards creating some release candidates for the V 1.0 firmware. If you are interested in the project – and you wish to learning more about it, please do see the link that’s in the project description happy to answer any questions and help out if you want to give the project a try.
arduino engine management Video
arduino engine management news
Posted on Saturday August 19, 2017Prize Entry: Engine Control Units And Arduinos | Hackaday Hackaday … Continue Reading »
Posted on Sunday May 19, 2019New Arduino Nano Line Rolls Out In Four Flavors At Maker Faire Bay Area Hackaday … Continue Reading »
Posted on Thursday September 26, 2019How to Keep Networks Secure in an IIoT World [Interview] TechAcute … Continue Reading »
arduino engine management Social
Hacktoberfest monthlong celebration of open source software.
Contribute! github.com/arduino/arduino-cli is a good place to start joining the fun!