Grid bed compensation
-
Thats what I am starting to think Myself (and with the PT100 as Well) will get some Shielded cable tomorrow and re-do those connections (If I have to re-do them I may as well use Shielded stuff)
Doug
-
So Do I still need to run G32? after or before G29
orJust a G29
then A G28 to home then print? -
Does the grid fade after a certain Z height or is it maintained all the way up?
How can you tell if the Grid compensation is active? -
Here is my first grid result. had a error near the end when it probed on top of a clip holding down the glass
RepRapFirmware height map file v1 generated at 0116-10-27 16:15
xmin,xmax,ymin,ymax,radius,spacing,xnum,ynum
20.00,280.00,20.00,280.00,-1.00,28.00,10,10
0.002,0.080,0.121,0.163,0.171,0.142,0.100,-0.004,-0.135,-0.278
0.026,0.113,0.197,0.275,0.271,0.262,0.221,0.118,0.019,-0.161
0.039,0.141,0.225,0.283,0.314,0.280,0.257,0.180,0.103,-0.061
0.019,0.165,0.236,0.257,0.284,0.306,0.275,0.216,0.114,-0.016
0.019,0.139,0.220,0.277,0.295,0.296,0.276,0.235,0.134,0.001
-0.019,0.081,0.179,0.224,0.264,0.261,0.279,0.216,0.141,0.016
-0.095,0.031,0.105,0.179,0.223,0.243,0.216,0.194,0.120,0.015
-0.214,-0.039,0.027,0.098,0.173,0.197,0.183,0.119,0.065,-0.010
-0.279,-0.178,-0.094,0.027,0.070,0.134,0.125,0.046,0.005,-0.104
-0.395,-0.299,-0.212,-0.136,-0.054,-0.034,-1.277,-1.320,-1.651,-1.608 -
You mentioned that you cant load a grid yet.
so if i restart the Duet Wifi G29 S1 wont load current csv?
G29 will just recreate a new mesh for now. -
You mentioned that you cant load a grid yet.
so if i restart the Duet Wifi G29 S1 wont load current csv?
G29 will just recreate a new mesh for now.That's correct. I should get time to implement loading the height map from file later this week.
-
Works like a charm, had to change dive height to 5mm.
-
Where do you change this?
-
Where do you change this?
If you mean the dive height, see http://reprap.org/wiki/G-code#M558:_Set_Z_probe_type.
-
I am trying to run the grid bed compensation, however when i run the G29 I get:
7:10:20 PM G29 Error: No valid grid defined for G29 bed probing
7:04:32 PM G29 Error: No valid grid defined for G29 bed probingI have placed M557 X10:250 Y40:260 S40 in my config.g.
Would like to get this working but do not know enough about it -
I am trying to run the grid bed compensation, however when i run the G29 I get:
7:10:20 PM G29 Error: No valid grid defined for G29 bed probing
7:04:32 PM G29 Error: No valid grid defined for G29 bed probingI have placed M557 X10:250 Y40:260 S40 in my config.g.
Would like to get this working but do not know enough about itI was able to run it but had to use the PanelDue to run it it would not run over the wifi??
-
I had no issue running over wifi
-
I am trying to run the grid bed compensation, however when i run the G29 I get:
7:10:20 PM G29 Error: No valid grid defined for G29 bed probing
7:04:32 PM G29 Error: No valid grid defined for G29 bed probingI have placed M557 X10:250 Y40:260 S40 in my config.g.
Would like to get this working but do not know enough about itI was able to run it but had to use the PanelDue to run it it would not run over the wifi??
Perhaps you didn't restart the Duet after editing config.g?
You can run M557 with no parameters to check that the grid is defined.
-
I am trying to run the grid bed compensation, however when i run the G29 I get:
7:10:20 PM G29 Error: No valid grid defined for G29 bed probing
7:04:32 PM G29 Error: No valid grid defined for G29 bed probingI have placed M557 X10:250 Y40:260 S40 in my config.g.
Would like to get this working but do not know enough about itI was able to run it but had to use the PanelDue to run it it would not run over the wifi??
Perhaps you didn't restart the Duet after editing config.g?
You can run M557 with no parameters to check that the grid is defined.
That must have been it. I thought I had restarted. running fine this morning.
-
Erm!!!
Bed probe has been working great with grid of S40 and S20,
Though I would try a "high res" probe to see how flat the bed was rather than just how level
so tried a S15 grid which at 100 points maxes the grid on my duet 0.6
an got..
RepRapFirmware height map file v1 generated at 0116-10-30 12:17
xmin,xmax,ymin,ymax,radius,spacing,xnum,ynum
40.00,180.00,30.00,170.00,-1.00,15.00,10,10
0.017,0.103,0.102,0.094,0.089,0.092,0.129,0.105,0.100,0.112
0.025,0.116,0.067,0.094,0.125,0.118,0.020,0.086,0.049,0.064
0.084,0.119,0.149,0.122,0.123,0.112,0.087,0.052,0.059,0.129
0.061,0.081,0.111,0.091,0.147,0.123,0.101,0.082,0.052,0.092
0.156,0.143,0.127,-0.016,0.100,0.094,0.056,0.081,0.059,0.038
0.201,0.144,0.116,0.030,0.062,-0.057,0.008,-0.012,0.029,0.035
0.200,0.139,-0.027,0.060,0.057,-0.079,-0.069,-0.030,-0.026,0.001
0.185,0.103,-0.002,0.223,0.030,0.028,0.010,-0.002,-0.021,-0.005
0.116,0.126,0.135,0.086,0.082,-0.036,-0.295,-0.069,-0.100,-0.049
-2.146,0.014,0.117,54548584975029841690624.000,-54548584975029841690624.000,54574818442859274829824.000,2572610785247232.000,2155874671919104.000,12844309018214137856.000,-0.126Something rather stage happened at the end
This is reproducable, a second run gave
RepRapFirmware height map file v1 generated at 0116-10-30 12:26
xmin,xmax,ymin,ymax,radius,spacing,xnum,ynum
40.00,180.00,30.00,170.00,-1.00,15.00,10,10
0.005,0.088,0.093,0.082,0.086,0.084,0.114,0.098,0.087,0.089
0.014,0.095,0.046,0.086,0.116,0.095,0.001,0.082,0.031,0.042
0.064,0.105,0.133,0.114,0.112,0.093,0.080,0.031,0.051,0.122
0.057,0.077,0.094,0.086,0.132,0.116,0.088,0.064,0.035,0.085
0.140,0.137,0.120,-0.040,0.087,0.086,0.047,0.076,0.055,0.026
0.198,0.136,0.113,0.024,0.059,-0.053,-0.004,-0.017,0.024,0.022
0.192,0.133,-0.047,0.039,0.044,-0.099,-0.082,-0.038,-0.037,-0.002
0.164,0.088,-0.017,0.210,0.014,0.016,-0.004,-0.020,-0.039,-0.014
0.096,0.117,0.126,0.081,0.060,-0.051,-0.321,-0.093,-0.114,-0.047
0.047,0.023,0.097,54548584975029841690624.000,-54548584975029841690624.000,54574818442859274829824.000,2572610785247232.000,2155874671919104.000,12844309018214137856.000,-0.146Reducing the grid slightly to 9x9 works as expected
RepRapFirmware height map file v1 generated at 0116-10-30 12:34
xmin,xmax,ymin,ymax,radius,spacing,xnum,ynum
40.00,180.00,30.00,170.00,-1.00,16.00,9,9
0.013,0.065,0.107,0.113,0.109,0.133,0.147,0.118,0.113
0.077,0.058,0.083,0.092,-0.157,0.064,-0.177,0.131,0.131
0.122,0.163,0.134,0.129,0.096,0.237,0.030,0.086,0.107
0.032,0.005,0.052,0.015,0.090,0.085,0.015,0.141,0.071
0.144,0.070,0.013,-0.023,0.116,-0.003,0.020,0.003,-0.013
0.123,0.077,0.119,0.086,0.061,0.041,0.044,0.055,-0.003
0.085,0.115,0.112,0.054,-0.171,-0.390,0.057,0.007,-0.015
0.106,0.155,0.076,0.085,0.057,0.022,-0.007,-0.053,-0.015
0.135,0.130,0.071,0.080,0.065,0.032,-0.039,-0.054,-0.043Looks like the memory block for the 10x10 grid might be a tad too small and the end is getting overwritten ?
Chris
-
Chris, is that on a Duet WiFi or a wired Duet? Please run M122 and report the "Never used memory".
The date looks odd too.
-
Its on a wired duet 0.6
Date is as it was in the heightmap file, just a cut and paste.
-
Memory usage:
Program static ram used: 45740
Dynamic ram used: 41876
Recycled dynamic ram: 2496
Current stack ram used: 2856
Maximum stack ram used: 5288
Never used ram: 2904
Last reset 04:24:53 ago, cause: power up
Last software reset code & available RAM: 0x0003, 3404
Spinning module during software reset: GCodes -
So im trying to understand. Does this work as another form of bed leveling? By running this will the board adjust the tool movement, to compensate for the recorded data? Do I use this together with the standard auto calibration, in order to get better 1st layer? If so how do I make that work? Im using a delta machine if that helps at all.
-
Yes it levels the bed, really with the intention of allowing printing onto an uneven bed. In theory delta calibration compensates for a slightly non-level bed as long as the discrepancy is small, but grid levelling modifies the z coordinate depending on the x and y coordinate based on a map of the bed which can be a very large number of points. My bed is 330mm tooling plate and so very flat but I find since the autocalibration is close but not quite perfect I can now print near the edges and get a nice first layer everywhere. Perfect.
I am testing it with a large delta. Run your autocalibration first then run grid if you put the commands into your bed.g file when you run G32 from your start gcode, it does grid levelling after autocalibration. I think David is working on being able to load the grid from a file to speed up the process meaning it would only have to be done from time to time if the bed was moved/altered.
My bed.g looks like this:
[[language]] ; Auto calibration routine for delta printers M561 ; clear any bed transform, otherwise homing may be at the wrong height G31 X10 Y-5 ; don't want any probe offset for this G28 ; home the printer G28 ;home again in case of endstop problem ;slow down movement to improve accuracy and magnets holding M201 X500 Y500 Z500 E1000 ; Accelerations (mm/s^2) M203 X15000 Y15000 Z15000 E3600 ; Maximum speeds (mm/min) M566 X300 Y300 Z300 E1200 ; Maximum instant speed changes mm/minute ; Probe the bed and do 6- or 7-factor auto calibration positions are probe positions (x-13,y34) G30 P0 X0 Y110 Z-99999 ; middle G30 P1 X95.26 Y55 Z-99999 ; G30 P2 X95.26 Y-55 Z-99999 ; G30 P3 X0 Y-110 Z-99999 ; G30 P4 X-95.26 Y-55 Z-99999 ; G30 P5 X-95.26 Y55 Z-99999 ; G30 P6 X0 Y55 Z-99999 ; X tower inner G30 P7 X47.63 Y-27.50 Z-99999 ; Y tower inner G30 P8 X-47.63 Y-27.50 Z-99999 ; Z tower inner G30 P9 X0 Y0 Z-99999 S7 ; centre, and auto-calibrate 7 factors, rod length calib unreliable? ;restore speed settings to normal printing speeds M201 X3000 Y3000 Z3000 E1000 ; Accelerations (mm/s^2) M203 X15000 Y15000 Z15000 E3600 ; Maximum speeds (mm/min) M566 X1200 Y1200 Z1200 E1200 ; Maximum instant speed changes mm/minute M557 R140 S60 ;define levelling grid G29 ;probe levelling grid G1 X0 Y0 Z75 F7500 ; get the head out of the way of the bed
Ignore the bit about speeds, I slow down my printer considerably for autocalibration then speed it up again.
The key bit is the M557 R is radius and S is how far apart the points are. Make sure your radius does not allow the effector to hit anything.
G29 then runs the grid levelling.