Close



Page 23 of 40 FirstFirst ... 13212223242533 ... LastLast
Results 221 to 230 of 396
  1. #221
    Engineer
    Join Date
    Jul 2014
    Location
    Eastern Colorado
    Posts
    536
    Quote Originally Posted by Roxy View Post
    But be that as it may be, it is saying your bed is very level!
    I don't know about that... here's a recent matrix:

    Recv: Bed Level Correction Matrix:
    Recv: 1.000000 0.000000 0.000637
    Recv: -0.000000 1.000000 0.000254
    Recv: -0.000637 -0.000254 1.000000

    and the topographic report that went with it:

    Recv: Bed Height Topography:
    Recv: Origin: Front Left
    Recv: --0.05153 +0.04247 +0.04872 --0.04903
    Recv: --0.04903 +0.03047 +0.07922 +0.03297
    Recv: --0.07103 +0.03072 +0.07647 +0.02297
    Recv: --0.15053 --0.00853 +0.02397 --0.00828

  2. #222
    Engineer-in-Training
    Join Date
    Feb 2015
    Posts
    371
    Quote Originally Posted by Roxy View Post
    Almost for sure, that is the Bed Level Correction matrix. This is the matrix any coordinate gets multiplied against to map it into the 'unlevel' coordinate system. The strange thing is it looks like you are fighting resolution problems with the Arduino math package. The diagonal can't really be unity if there are other components. It would be more plausible if you had .9999 going down the diagonal. But be that as it may be, it is saying your bed is very level!

    What exactly does that mean? Would it influence my prints? I ask cause I can print small things fine but larger parts have failed so far. I get some warping and then the layers delaminate. I got the 12" model to print large things. Very frustrating to not be able to use the full build volume.

    How do I run a topo report?

  3. #223
    Engineer
    Join Date
    Jul 2014
    Location
    Eastern Colorado
    Posts
    536
    If you're using Roxy's code, run G28 then "G29 T n4" or whatever n# you prefer. The "T" is what tells it to make a topographic map.

  4. #224
    Engineer-in-Training TopJimmyCooks's Avatar
    Join Date
    Jul 2014
    Posts
    204
    I also don't understand the bed level correction matrix. I always get the diagonal row of 1.0's as well. doesn't make obvious sense to me. It works ok so no complaints here, just cant' parse the matrix.

  5. #225
    Super Moderator Roxy's Avatar
    Join Date
    Apr 2014
    Location
    Lone Star State
    Posts
    2,182
    Quote Originally Posted by TopJimmyCooks View Post
    I also don't understand the bed level correction matrix. I always get the diagonal row of 1.0's as well. doesn't make obvious sense to me. It works ok so no complaints here, just cant' parse the matrix.
    Do you see the Z Axis move back and forth as it prints a layer? If so, the Auto Bed Leveling is doing it's thing. The way the 'new' coordinates are calculated is by doing matrix math and multiplying the coordinate in the GCode times the Bed Level Correction matrix to get the 'new' coordinate. My Bed Level Correction matrix can have a 1.000 on the diagonal, but never 3 of them. That is why I thought the previous matrix was done on a very level bed.

    If you are willing to unlevel your bed to learn about this, you can tilt your bed and generate a new Bed Level Correction matrix. As you make the bed more and more unlevel, you should see the numbers along the diagonal decrease in size and you should see the numbers off of the diagonal start getting bigger in absolute size. (And there should be symmetry along the diagonal. One side will have a + version of the same - number the other side has)

  6. #226
    Engineer
    Join Date
    Jul 2014
    Location
    Eastern Colorado
    Posts
    536
    The matrix is a grid of X Y and Z values. Across the top are

    X Y Z

    and down the side are

    X
    Y
    Z

    ............X................ Y............. Z
    X 1.000000 0.000000 0.000637
    Y -0.000000 1.000000 0.000254
    Z -0.000637 -0.000254 1.000000

    The coordinates in your gcode gets multiplied by this grid. A move in X gets multiplied by the 1 in X, so the X distance doesn't change. It gets multiplied by the 0 in Y, so it doesn't move in Y at all. It gets multiplied by the number in Z, so the Z axis moves a little bit to make the print level.

    Same thing happens for Y and Z. Y moves won't move in X, won't change in Y, and change Z a little. Z moves change a little in X, change a little in Y, and don't change in Z.

    Hope this helps.

  7. #227
    this made me want to look at my g29 matrix to see how bad my bed is unlevel... :-P

  8. #228
    Super Moderator Roxy's Avatar
    Join Date
    Apr 2014
    Location
    Lone Star State
    Posts
    2,182
    Quote Originally Posted by AbuMaia View Post
    ............X................ Y............. Z
    X 1.000000 0.000000 0.000637
    Y -0.000000 1.000000 0.000254
    Z -0.000637 -0.000254 1.000000

    The coordinates in your gcode gets multiplied by this grid. A move in X gets multiplied by the 1 in X, so the X distance doesn't change. It gets multiplied by the 0 in Y, so it doesn't move in Y at all. It gets multiplied by the number in Z, so the Z axis moves a little bit to make the print level.
    And back to my point... The 1's along the diagonal don't look right with 'correction' numbers off to the sides. I think we are seeing limitations with the Arduino's single precision floating point math. X*1 + Y*0 + Z*.000637 means X movement in the 'corrected' number system is greater than its magnitude in the original system. It would seem the X number should drop from 1.0 to .999 if there are Y & Z components.

  9. #229
    Just to check if i got this right: if you were using the matrix only as a readout to check if your printer is perfectly levelled you would need to achieve a matrix that consists only of 1.000 values right?
    also, i want to say thank you to dacb for creating this thread, it totally saved me

  10. #230
    Super Moderator Roxy's Avatar
    Join Date
    Apr 2014
    Location
    Lone Star State
    Posts
    2,182
    Quote Originally Posted by MulBe039 View Post
    Just to check if i got this right: if you were using the matrix only as a readout to check if your printer is perfectly levelled you would need to achieve a matrix that consists only of 1.000 values right?
    also, i want to say thank you to dacb for creating this thread, it totally saved me
    In a perfect world, Yes the matrix should just have 1.000 down the diagonal. But there is no way you are going to have that precise and repeatable measurement of your bed and have your bed that level.

Page 23 of 40 FirstFirst ... 13212223242533 ... LastLast

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •