SAAB 900 T16 bruxLH2.2 TRIMNING
LH.2.2
Till att börja med så är det lämpligt att skaffa
sig kunskap om hur systemet fungerar. Här kan mina länkar vara till nytta.
Det som skrivs här gäller BARA LH2.2 ! Kan kanske, till vissa
delar, vara giltigt för LH2.4.X men om det vet jag ingenting.
Siffrorna 521, 517,534 o.s.v. som omnämns nedan avser de tre sista
siffrorna i Bosch part-no på LH-boxen. Man kan INTE sätta
ett chip från t.ex. en -521 i en -539-box och räkna med att
det fungerar. Elektroniken skiljer lite i de olika boxarna och
styrprogram och mappar är anpassade till detta.
Verktyg Börja med att
installera Ragnars LH-edit som finns att hämta här. Sen
skaffar man sig ett program i vilket man kan editera .bin-filer (t.ex
Ultra-Edit, men det finns andra också). Man bör också
skaffa sig ett program där man kan jämföra 2 st
.bin-filer. Man kan visserligen använda t.ex. fc-kommandot i Windows men
bättre, som snart ska visa sig, är att skaffa Ultra-Compare
eller liknande så man kan visa jämföra och visa
två
filer och se skillnaderna mellan dom.
I fas två så kommer du behöva en prombrännare
också, med möjlighet
att läsa och bränna 2732 EPROM (4k*8bitar) samt en promraderare, typ
"solarie för chips" eftersom man raderar EPROM m.h.a. UV-ljus.
(Jo, det finns andra lösningar, ´t.ex. att använda s.k.
FLASH-prom, men det lämnar vi därhän tillsvidare.)
Man bör också ha grundläggande kunskap om hexadecimala
talsystemet och microdatorsystem, det senare inte nödvändigt
men det underlättar avsevärt. Finns dock massor att
hämta på det stora stygga Internettet, bl.a. via mina
LH-änkar.
Utgångsmaterial För att ha nåt att
labba på / lära sig verktygen så laddar man ner 521.bin
eller 534.bin
som finns att hämta här/där, klicka på länken
och spara
filen på nåt bra ställe på din dator. (534.bin
är bra att börja lära sig verktygen med).
Inte nödvändigt men roligare är om du får tag
på den .bin-fil som sitter i din egen box. Det är nu du
behöver något att läsa ut innehållet i "chippet"
som sitter i styrboxen. Vanligtvis gör man det m.h.a. som
EPROM-brännare.
Vänta....vad är en .bin-fil ?
En
.bin-fil är en dump (=utläst innehåll) av det minne som
sitter i bränsleinsputningsboxen. .bin-filen innehåller
både styrprogramvaran och de tabeller som styr
bränslet. Det är innehållet i tabellerna som
presenteras i LHedit och som man kan ändra. Styrprogrammet
ska vi däremot INTE ändra i.
Hur funkar det ? Om man studerar
systembeskrivningarna på LH2.2 så ser man att man
dels har en 3-dimensionell bränsle-map med varvtal och
massflöde som inparametrar och bränslemängd som
utparameter. Förmodligen så är denna bränsle-map ("kennfellt" i
Ragnars editor) anpassad
till elektroniken i boxen.
Sen har vi fyra "kompenseringstabeller" och två konstanter som
man kan pillra på. Dessa hittas på nästa sida (Other
Parameters) i LHedit.
Av systembeskrivningen framgår att insprutningssystemet antingen
jobbar i "open loop" eller "closed loop". För den som inte är
bevandrad i reglerteknikens underbara värld så innebär
"open loop" att man låter utsignalen ( i vårt fall
bränslemängden) bero på ett antal inparametrar
(varvtal, temperatur, luftmassflöde, laddtryck m.m ) men man
kollar inte att det "blev rätt". Det förutsätter man
genom att man har beräknat och framför allt justerat
algoritmerna vid omfattande motorprov.
I "closed loop" däremot så har man, i likhet med "open loop"
ett antal inparametrar för att hamna "hyfsat rätt" men man
kollar resultatet av "gissningen" (i vårt fall m.h.a.
lambdasensorn) och fin-justerar algoritmerna så att
bränslemängden blir rätt och vi får önskat
lambda (=1.0).
Nu vill (kan) vi inte alltid ha lambda =1.0 som börvärde.
När motorn är kall så vill vi ge den extra bränsle
(choke, typ). När motorn går på tomgång vill den
också ha extra bränsle.
När vi ger full-gas vill vi också ge motorn mer bränsle
eftersom max prestanda inte inträffar vid lambda=1 utan vid ett
blandningsförhållande på 12.8:1 (ett lambda-värde
på 0.87 om jag räknat rätt).
Så eftersom (smalbands)lambdasonden bara kan tala om om vi har
fet, lagom eller mager blandning så kan vi bara använda oss
av "closed loop" när vi har andra driftsfall än
tomgång, full-last, vilket i praktiken borde innebära den
mesta tiden. Men det ger oss också utrymme att justera
bränslemängden vid full-last, vilket ju inte är fel. Vid
tomgång kan vi också men är ju inte såvärst
intresserade av att "trimma"....
Vad kan man trimma ? Vi bör alltså inte
pillra i "Kennfellt", den 3-dimensionella mappen eftersom den
sannolikt är knuten till hårdvaran. Å andra sidan
spelar det inte så stor roll eftersom den har massflöde som
en inparameter och om vi t.ex höjer turbotrycket så skickar
vi in mer luft vilket då mäts av LMM'en och genererar en
bränslemängd härefter. Likaså om vi sätter
på en herrejösses-IC, vi sänker då temperaturen
hos luften som passerar LMM. Eftersom den mäter massflöde
så fixar det sig oxo.
Vi
förutsätter fortsättningsvis (helt glatt) att spridarna
räcker
till och luftmängdmätaren inte bottnar (måttlig
trimningsgrad). Vi tar
nu och studerar full-lastupprikningen
eftersom man där kör öppen-loop reglering. Man bryr sig
alltså inte om lambdasensorn (möjligen inte LMM heller) och
vad den tycker utan "pytsar"
bara på bränsle "i blindo". Men helt i blindo är det
nog inte, det är sannolikt noga utprovat i motorprov, där man
bl.a. optimerar på driftssäkerhet, emission och annat. I de
standardmappar jag sett så låter man motorn få extra
bränsle upp till 2570 rpm, sen får den klara sig på
det som mappen ger. Här finns alltså utrymme för
"förbättringar". Man kan förmodligen utan problem
fortsätta att fullgas-upprika ända upp till 6096rmp. Det
är iallafall värt ett försök.
Hur mycket ??? Det
får man liksom experimentera fram.
Här har man god hjälp av en lambda-sond. Se mer på min Mätsystem & givare-sida. OM man
håller ett öga på lamdavärdet under
fullgas-accelleation så ska man ligga på den "feta" sidan
hela tiden. Bäst prestanda har man när man har ett
blandningsförhållande på 12.8:1 (ett lambda-värde
på 0.87 om jag räknat rätt). Tyvärr ger en
smalbandslambda bara besked om blandningen är optimal (ur
avgasreningssynpunkt) eller fet eller mager. Men en bit på
vägen är det iallafall.
Hur gör man då
? Ett av problemen är att
styrprogrammet och tabellerna kan ligga på lite olika adresser i olika
versioner av boxar/.bin'ar. Därför måste man vara
vaksam
på vad man ändrar och om ändringen (gjord med LHedit)
verkar rimligt när man jämför den ändrade
.bin-filen med originalet. Det är här som UltraCompare
är så väldigt praktiskt. Ändrar man ett värde
i en tabell ska (oftast) bara en
byte ändra sig i .bin-filen.
-534 dumpen är en
.bin som verkar passa bra till LHedit. Den är utmärkt att
börja med. Man kan ändra en parameter för att sen
använda sig UltraCompare och jämföra originalet med den
ändrade .bin'en. Testa och bekanta dej med verktygen...
Om du sen laddar in -521 så ser man bl.a. att Control Constant
INTE är 1.0 vilket den ska vara på alla, av mej, kända
standard-bin'ar. Det beror på att den är flyttad i minnet
och således inte finns på den plats som LHedit antar. "Rev
Limit" verkar dock finnas kvar på "rätt" ställe.....
här kan UltraCompare och UltraEdit vara bra verktyg för
att leta reda på den nya addressen.
I slutänden ska du naturligtvis ladda in den .bin-fil som du
använder i din LH-box. Ändra t.ex. full-lastupprikningen
enligt dina teorier. Spara filen, kolla m.h.a. UltraEdit och
UltraCompare (eller vad du använder för program) att det
verkar blivit rätt. Gå till din EPROM-brännare och
"bränn" ett EPROM men din nya .bin-fil. Stoppa den i din LH-box
och provkör !!
OBS vid hantering av inkråmet i alla elektronik-boxar ska
försiktighet vidtagas så inte statisk elektricitet sabbar
allt för dej !!!