Announcement

Collapse
No announcement yet.

Does the BLM vary with engine temp?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    since it's relevant:

    how intake runner temp is calculated:

    coolant temp and MAT/IAT are immediately updated during the beginning of this snippet of code
    then the engine runnig status is checked. if not running, no update and IRT will stay at it's initial value(which is the coolant temp at time of cranking)

    since it's running, the F150 table is looked up, which is indexed by calculated airflow. this airflow value is kind of a fudge in that it is calculated based off of RPM, target AFR, cylinder count, BPW and the "airflow multiplier" value (KAIRFLOW).

    now coolant temp and the coolant temp offset(that is created via the F152 table and the KCLOFFST value) are added together.

    then they are used with the MAT reading in a lag filter.

    now the F151 table is looked up and the value from the previous lag filtering is used with the F151 value in a new lag filter and the IRT value has been updated.....



    i'm not so sure i like the way the value is determined..... may be something i'll have to fix.
    1995 Monte Carlo LS 3100, 4T60E...for now, future plans include driving it until the wheels fall off!
    Latest nAst1 files here!
    Need a wiring diagram for any GM car or truck from 82-06(and 07-08 cars)? PM me!

    Comment


    • #17
      Great thanks, that is super helpful. Where did you get the new value of 00F3?

      Comment


      • #18
        00F3 is the RAM location where intake runner temp is stored. the ALDL response table is purely locations, mostly RAM(except for PROM ID, which is in the PROM). the ALDL stream/table is actually one of the greatest sources of help while hacking, since it defines a lot of important variables for you to use to determine what does what.

        if you want to see what all variables you can place in the datastream(and usually their conversions, but sometimes i get sloppy), let me know, i'll export a text copy of that area to upload.
        1995 Monte Carlo LS 3100, 4T60E...for now, future plans include driving it until the wheels fall off!
        Latest nAst1 files here!
        Need a wiring diagram for any GM car or truck from 82-06(and 07-08 cars)? PM me!

        Comment


        • #19
          If you get a chance I would like to see a text copy of those variables.

          Thanks for the calculation explanation for irt. Do you have an equation for it too?

          Comment


          • #20
            the equation for IRT is the same as coolant temp:

            X * 1.35 - 40

            that will create intake runner temp in *F.



            you can ignore the DATA XREF stuff, just look at the location and descriptions and you'll see what everything is.

            not too many question marks left at this point, so that's good. a lot of them i already have figured out, just haven't updated them.
            Attached Files
            1995 Monte Carlo LS 3100, 4T60E...for now, future plans include driving it until the wheels fall off!
            Latest nAst1 files here!
            Need a wiring diagram for any GM car or truck from 82-06(and 07-08 cars)? PM me!

            Comment


            • #21
              Thanks for the .txt, that's impressive.

              By equation I mean an equation that uses all the table values to come up with the value for irt.

              so for example: F150 * (F152 + KCLOFFST) ...etc = calculated IRT

              Comment


              • #22
                oh..... been a while since i've done one of these.... not sure if it can be done accurately due to nearly all of the calculations being done via the lag filters.... it's not like the simple multiplication/division used for the fueling/airflow/spark calcs.
                1995 Monte Carlo LS 3100, 4T60E...for now, future plans include driving it until the wheels fall off!
                Latest nAst1 files here!
                Need a wiring diagram for any GM car or truck from 82-06(and 07-08 cars)? PM me!

                Comment


                • #23
                  actually, the filtering subroutine is highly understood, so maybe i can....

                  NEWVALUE = OLDVALUE + Q * (INPUT - OLDVALUE)

                  that's the basis for the filter....

                  this could get complicated, so i'll likely have to do it in a few different steps.

                  F150 = Q
                  Offset Coolant Temp = OLDVALUE
                  MAT = INPUT

                  STEP1 Value = Offset Coolant Temp + F150 * (MAT - Offset Coolant Temp)

                  step 2:

                  F151 = Q
                  Previous Intake Runner Temp = OLDVALUE
                  STEP1 Value = INPUT

                  New Intake Runner Temp = Previous Intake Runner Temp + F151 * (STEP1 Value - Previous Intake Runner Temp)



                  that's an accurate representation, though it is broken into two parts. i didn't include the steps for the coolant temp offset value because it isn't directly involved in this subroutine.

                  also, i goofed a bit: the intake runner temp location is 019E, not 00F3. 00F3 is the coolant temp offset value.
                  1995 Monte Carlo LS 3100, 4T60E...for now, future plans include driving it until the wheels fall off!
                  Latest nAst1 files here!
                  Need a wiring diagram for any GM car or truck from 82-06(and 07-08 cars)? PM me!

                  Comment


                  • #24
                    Great thanks!

                    In the "Step1 Value" equation, does "offset coolant temp" = "New Value" from the first equation?
                    If not, where is "New Value" used in either of the steps?

                    Comment


                    • #25
                      And is the offset coolant temp essentially just the coolant temp?

                      Comment


                      • #26
                        the "NEWVALUE" items are "STEP1 Value"(which could be considered "non-lag filtered new intake runner temp") and "New Intake Runner Temp"

                        assuming i understand your question correctly. with the amount of sleep i'm running on currently, i could be misinterpretting.
                        1995 Monte Carlo LS 3100, 4T60E...for now, future plans include driving it until the wheels fall off!
                        Latest nAst1 files here!
                        Need a wiring diagram for any GM car or truck from 82-06(and 07-08 cars)? PM me!

                        Comment


                        • #27
                          offset coolant temp = coolant temp + coolant temp offset. the wording here is a bit critical.

                          NEWVALUE = OLDVALUE + Q * (INPUT - OLDVALUE)

                          coolant temp offset (new) = coolant temp offset (old) + F152 * (KCLOFFST - coolant temp offset (old))

                          ^ that is used when at idle. if non-idle:

                          coolant temp offset (new) = coolant temp offset (old) + F152 * (0 - coolant temp offset (old))
                          1995 Monte Carlo LS 3100, 4T60E...for now, future plans include driving it until the wheels fall off!
                          Latest nAst1 files here!
                          Need a wiring diagram for any GM car or truck from 82-06(and 07-08 cars)? PM me!

                          Comment


                          • #28
                            Originally posted by robertisaar View Post
                            the "NEWVALUE" items are "STEP1 Value"(which could be considered "non-lag filtered new intake runner temp") and "New Intake Runner Temp"

                            assuming i understand your question correctly. with the amount of sleep i'm running on currently, i could be misinterpretting.
                            Yes that answered my question perfectly, I missed that.

                            Comment


                            • #29
                              I was going through this information again. What is the initial value for for "coolant temp offset"? I looked for a table and found "choke coolant temp offset". If this is the value that is looked up and used as initial "coolant temp offset", and all the stock bins I have worked with have those values set at 0, then the coolant temp offset equation behaves rather strange over the duration normal driving.

                              Also, is the "air flow multiplier (KAIRFLOW)" the way we change the amount of calculated airflow based on displacement? And is that what is used during table look up for f150 and f151? If so, would multiplying it by the percentage relation in displacement be a good approximation?
                              In my case: 3.38 airflow multiplier x (3.5 L /3.1 L ) = 3.82 new airflow multiplier

                              Comment


                              • #30
                                coolant temp offset = F152 table lookup, which is run through a lag filter with either a 0 or the KCLOFFST value, depending on if at idle or not.

                                then the coolant temp offset is added to actual coolant temp to create offset coolant temp.

                                offset coolant temp is run through a lag filter with IAT/MAT and the F150 result. this creates the new, raw intake runner temp value.

                                then the new, raw intake runner temp value is ran through another lag filter with the F151 lookup and the previous, filtered intake runner temp. this creates the new, filtered intake runner temp.

                                if it seems overly complicated, it probably is. i really don't like how GM went about calculating it.

                                choke coolant temp offset (F50) is looked up and stored. eventually, startup coolant temp is compared against current coolant temp, the lower of the two values is used and has the F50 result added to it. the added result is compared to actual, current coolant temp. if lower, it allows INT to react, otherwise, INT will be stuck at 128. so i guess, that table has an incorrect title/description. it's actually used to determine the minimum amount of coolant temp change since startup to allow closed loop fueling. i generated the title based off of "BIASTEMP VS. COOLTSU".

                                KAIRFLOW is a hack really. it's used in combination with the pulse width, AFR, RPM and cylinder count to create an "airflow" value.... notice how ass-backwards that is, creating an airflow value from BPW? anyways, it creates the 16-bit word 183 and 8 bit byte AD.

                                183 is used entirely for the cat temp calculation and correction stuff, along with the estimated amount of backpressure vs airflow table.
                                AD is used for the intake runner temp calcs, CCP airflow requirements, % of airflow is EGR calc, EGR lag filter and one DTC21 check.

                                technically..... i guess you could play with it, but since it also is integrated with pulse width, it won't be that simple, since the injector/displacement ratio plays a part here. example: LH0 = 3.38 multiplier, but LQ1 = 5.31.... only a 9.7% increase in displacement, but a 57% increase in the multiplier. the injector flowrate difference is only 34%. (16.7 vs 22.4).

                                lots of half-assedness.
                                1995 Monte Carlo LS 3100, 4T60E...for now, future plans include driving it until the wheels fall off!
                                Latest nAst1 files here!
                                Need a wiring diagram for any GM car or truck from 82-06(and 07-08 cars)? PM me!

                                Comment

                                Working...
                                X