Trigger hysteresis using avload instead of load?

A forum for discussing applications and implementations of the MegaShift transmission controller code for the GPIO from B&G. This can control up to 8-speeds and 6 shift solenoids (plus a 16x9 table for controlling a PWM line pressure valve). It has manual and fully automatic modes (16x9 load x speed table), with under and over rev-limit protection, and full data logging of all inputs and outputs (among many other abilities). A TransStim to test your completed board is also available.
Bernard Fife
Posts: 1696
Joined: Fri Apr 04, 2008 1:28 pm

Re: Trigger hysteresis using avload instead of load?

Post by Bernard Fife »

Addicted,

Here is new 5.099zviii code that has one small change; it makes sure that the new load hyst value is the greater of the instant load or the average load (the average load is normally set to the instant load if it is higher, but this wasn't done previously during a shift, so they could get out of sync). Combined with the delay, this might help.
Monitor_5099zviii.abs.s19
Uses previous INI
(83.16 KiB) Downloaded 525 times
Lance.
"Never wrestle with pigs. You both get dirty and the pig likes it." - George Bernard Shaw
Addicted
Posts: 188
Joined: Mon Oct 14, 2013 7:14 am
Location: Winchester, England

Re: Trigger hysteresis using avload instead of load?

Post by Addicted »

Thanks Lance,

It looks like our thinking is starting to converge.. or maybe I'm understanding better ;)

You remember a few weeks ago I asked you to alter the code to allow the hysteresis to use avload instead of instant? that was because I felt that spikes in the load when shifting were turning off the hysteresis, my hope was that using avload would smooth it out a little as can be seen in this image:
Image

As we know, it didn't quite work. But if I was missing points where hyst=0 because of the granularity of the datalog it makes a lot more sense. I'm assuming on the bench your instantaneous load isn't quite as 'spikey' as my realworld load either..

I've tried quite diverse settings for the load smoothing, in fact I was under the impression that it WAS set to 1000, but you're right its currently 3000.

I'm itching to get out and try your new code now... but the weather outside is blocking me.. :cry:
Addicted
Posts: 188
Joined: Mon Oct 14, 2013 7:14 am
Location: Winchester, England

Re: Trigger hysteresis using avload instead of load?

Post by Addicted »

OK, tried the new code.. not good, see log attached :lol:

avload is either 100kpa or 0kpa... I tried to drive it, it nearly killed me.
Attachments
2015-03-28_16.14.41.msl
(255.92 KiB) Downloaded 511 times
2015-03-28_16.05.41.msl
(734.39 KiB) Downloaded 494 times
Bernard Fife
Posts: 1696
Joined: Fri Apr 04, 2008 1:28 pm

Re: Trigger hysteresis using avload instead of load?

Post by Bernard Fife »

Whoops, sorry! I think I know why (the load average is only updating during shifts....), but I need to re-think this obviously. Lance.
"Never wrestle with pigs. You both get dirty and the pig likes it." - George Bernard Shaw
Bernard Fife
Posts: 1696
Joined: Fri Apr 04, 2008 1:28 pm

Re: Trigger hysteresis using avload instead of load?

Post by Bernard Fife »

Martin,

Were the above logs with 5.099zvii or 5.099zviii?

If this was mine, I would revert to the code previous to whatever you generated the log with, but try to shift the load more to the TPS. If that helps, we can play with the TPS /RPM/load table a bit too.

Lance.
"Never wrestle with pigs. You both get dirty and the pig likes it." - George Bernard Shaw
Bernard Fife
Posts: 1696
Joined: Fri Apr 04, 2008 1:28 pm

Re: Trigger hysteresis using avload instead of load?

Post by Bernard Fife »

Addicted,

I had another thought about this; it's related to the decel mode. I believe this, and the way that the average load increases with the instant load, will help explain the issue quite well. So what I am going to do is roll back the code a few versions, and implement fixes to the decel mode and load averaging. This may take a day or so, I will post back here when I have something for you.

Lance.
"Never wrestle with pigs. You both get dirty and the pig likes it." - George Bernard Shaw
Addicted
Posts: 188
Joined: Mon Oct 14, 2013 7:14 am
Location: Winchester, England

Re: Trigger hysteresis using avload instead of load?

Post by Addicted »

Lance wrote:Martin,

Were the above logs with 5.099zvii or 5.099zviii?

Lance.
Hi Lance, those two logs are with the latest 5.099zviii
Bernard Fife
Posts: 1696
Joined: Fri Apr 04, 2008 1:28 pm

Re: Trigger hysteresis using avload instead of load?

Post by Bernard Fife »

Okay, thanks Martin. I have some ideas based on your logs. I need to implement these and test them a bit, then I will post something here (hopefully tomorrow). Lance.
"Never wrestle with pigs. You both get dirty and the pig likes it." - George Bernard Shaw
Addicted
Posts: 188
Joined: Mon Oct 14, 2013 7:14 am
Location: Winchester, England

Re: Trigger hysteresis using avload instead of load?

Post by Addicted »

Lance, can you confirm something for me?

If I set TPS load to 50% does that mean 'load' becomes the average of TPS(%) and CAN load (KPA)?

So if TPS is a steady 30%, the TPS/REV table cell is 100 and CAN load is 70KPA then 'load' will be 50 (KPA)?

and if TPS is a steady 30%, the TPS/REV table cell is 70 and CAN load is 70KPA then 'load' will be 45.5 (KPA)?

All my early tuning was with TPS load at 50%, but after a while I reverted back to 100% KPA... might be time to go back again..
Bernard Fife
Posts: 1696
Joined: Fri Apr 04, 2008 1:28 pm

Re: Trigger hysteresis using avload instead of load?

Post by Bernard Fife »

Martin,

The way it works is like this:

- first the raw TPS is passed through the table (with the rpm) to get the adjusted TPS.
- then the adjusted TPS is combined with the MAP (kpa) on a percentage basis to get the Load.

If user really wants to use raw TPS for load (with no adjustments), they can set the table so the the cells in each TPS row are identical to the bin value for that row, then the output from the table will be the raw TPS.

There is more here: http://www.msgpio.com/manuals/mshift/V5tune.html#gh
If I set TPS load to 50% does that mean 'load' becomes the average of TPS(%) and CAN load (KPA)?
It becomes the average of adjusted TPS and the MAP.
So if TPS is a steady 30%, the TPS/REV table cell is 100 and CAN load is 70KPA then 'load' will be 50 (KPA)?
Assuming the TPS/MAP ratio is 50% and the adjusted TPS (current TPS/REV table cell value), the load value would be: 100%TPS x 50% + 70kpa x 50% = 85%
and if TPS is a steady 30%, the TPS/REV table cell is 70 and CAN load is 70KPA then 'load' will be 45.5 (KPA)?
Assuming the TPS/MAP ratio is 50% and the adjusted TPS (current TPS/REV table cell value), the load value would be: 70%TPS x 50% + 70kpa x 50% = 70%

I am working on the code, and making progress; hopefully I can post something soon.

Lance.
"Never wrestle with pigs. You both get dirty and the pig likes it." - George Bernard Shaw
Post Reply