Auto Level - Auto Calibration Talk

All things related to the Rostock MAX 3D Printer, the worlds FIRST Delta kit!
Flavored Coffee
Printmaster!
Posts: 85
Joined: Wed May 21, 2014 1:02 am

Re: Auto Level - Auto Calibration Talk

Post by Flavored Coffee »

McSlappy wrote:Wish I had a gauss meter...
The Rostock hot bead, is a flat spiral. So, without any magnets at all, the hot bed produces a very even magnetic field. Bringing any magnets near it would defeat the potential of leveling anything. But, I had an idea for a special kind of ink, and I call it cartoon white. Basically, there's ferrite mixed into the ink. So, if a magnet is placed near the hot end, and it rotates around the hot end, it could produce what I call a cartoon print. The magnet rotates to stay aligned with the outside diameter, of the print. The end result, is you see white, and the elongated ferrite, will make it appear as if there's a black line around it from eye level. Why trash a cool ink, when leveling has been figured out several different ways. An attachment, just a small motor with magnet, and yea, it would have to programmed to being right position for the print but, literally, how many 3D cartoons, have a black line around them from all angles. It's a hybrid idea. I saw some metal flake auto paint, that they used magnets on while it was drying, and new across the street who had a car painted that way for awhile. From the front, it looked red, 90 degrees from the side purple, and from behind it looked green. It was the color of the metal flakes, and which way they were aimed by using magnets to position them without touching the paint. It works because, when you look straight at it, you're looking straight down magnetized particles and only really seeing the tip of a needle. As you get to the sides, the needles have a length, and are aligned, blocking more light. So, the cartoon white is actually a translucent white.
User avatar
Eaglezsoar
ULTIMATE 3D JEDI
Posts: 7185
Joined: Sun Apr 01, 2012 5:26 pm

Re: Auto Level - Auto Calibration Talk

Post by Eaglezsoar »

Flavored Coffee wrote:
McSlappy wrote:Wish I had a gauss meter...
The Rostock hot bead, is a flat spiral. So, without any magnets at all, the hot bed produces a very even magnetic field. Bringing any magnets near it would defeat the potential of leveling anything. But, I had an idea for a special kind of ink, and I call it cartoon white. Basically, there's ferrite mixed into the ink. So, if a magnet is placed near the hot end, and it rotates around the hot end, it could produce what I call a cartoon print. The magnet rotates to stay aligned with the outside diameter, of the print. The end result, is you see white, and the elongated ferrite, will make it appear as if there's a black line around it from eye level. Why trash a cool ink, when leveling has been figured out several different ways. An attachment, just a small motor with magnet, and yea, it would have to programmed to being right position for the print but, literally, how many 3D cartoons, have a black line around them from all angles. It's a hybrid idea. I saw some metal flake auto paint, that they used magnets on while it was drying, and new across the street who had a car painted that way for awhile. From the front, it looked red, 90 degrees from the side purple, and from behind it looked green. It was the color of the metal flakes, and which way they were aimed by using magnets to position them without touching the paint. It works because, when you look straight at it, you're looking straight down magnetized particles and only really seeing the tip of a needle. As you get to the sides, the needles have a length, and are aligned, blocking more light. So, the cartoon white is actually a translucent white.
This is a very interesting concept for print beds and I would love to see that car.
“ Do Not Regret Growing Older. It is a Privilege Denied to Many. ”
User avatar
Flateric
Printmaster!
Posts: 825
Joined: Fri Feb 15, 2013 4:35 pm
Location: Calgary, Alberta

Re: Auto Level - Auto Calibration Talk

Post by Flateric »

Flavored Coffee wrote:
McSlappy wrote:Wish I had a gauss meter...
The Rostock hot bead, is a flat spiral. So, without any magnets at all, the hot bed produces a very even magnetic field. Bringing any magnets near it would defeat the potential of leveling anything. But, I had an idea for a special kind of ink, and I call it cartoon white. Basically, there's ferrite mixed into the ink. So, if a magnet is placed near the hot end, and it rotates around the hot end, it could produce what I call a cartoon print. The magnet rotates to stay aligned with the outside diameter, of the print. The end result, is you see white, and the elongated ferrite, will make it appear as if there's a black line around it from eye level. Why trash a cool ink, when leveling has been figured out several different ways. An attachment, just a small motor with magnet, and yea, it would have to programmed to being right position for the print but, literally, how many 3D cartoons, have a black line around them from all angles. It's a hybrid idea. I saw some metal flake auto paint, that they used magnets on while it was drying, and new across the street who had a car painted that way for awhile. From the front, it looked red, 90 degrees from the side purple, and from behind it looked green. It was the color of the metal flakes, and which way they were aimed by using magnets to position them without touching the paint. It works because, when you look straight at it, you're looking straight down magnetized particles and only really seeing the tip of a needle. As you get to the sides, the needles have a length, and are aligned, blocking more light. So, the cartoon white is actually a translucent white.
Are you sure about that, I have painted many a car and the finished process you are referring to does not require any magnetic magics to achieve the stunning color changes.

Chameleon paint is what I use, but a paint job will generally run in the 10k range for a basic job. The process requires so many different properlly applied pre-coats or undercoats for a top notch job.

A 4 or 5 color shifting job will double this cost easily.
"Now you see why evil will always triumph! Because good is dumb." - Spaceballs
User avatar
lordbinky
Printmaster!
Posts: 755
Joined: Sat May 18, 2013 3:53 am
Location: Tri Cities Washington

Re: Auto Level - Auto Calibration Talk

Post by lordbinky »

they've done the magnet stuff with nail polish. it's like an etch-a-sketch until it dries in place
User avatar
analog_banana
Printmaster!
Posts: 167
Joined: Mon Apr 08, 2013 7:53 am
Location: London, England

Re: Auto Level - Auto Calibration Talk

Post by analog_banana »

Chipping in with totaly unexperimented idea here:
Could capacitance be used for calibration??

Capacitive touch screens work by measuring a change in capacitance when a conductive object (metal nozzle?) touches the screen (glass build plate?)
This is done by putting a capacitive layer under the glass (heated bed pcb?)

Arduino already has a library for CapSense using two pins:
http://playground.arduino.cc/Main/Capac ... n.CapSense" onclick="window.open(this.href);return false;

So.... All the hardware and software already exists and is already there on our machines..
could we monitor capacitive changes in the heated bed pcb to detect nozzle proximity???

At worst , if bed voltage on the bed trace interfers one would just need a separate conductive trace for capacitance or a retrofitted capton/copper foil spiral film

If it works, it works irrespective of what surface you have on the bed, and should not be affected by temperature.

I'm still working on basic "getting printer to work properly" issues so I do not have time to pursue this myself...
Ho Hum...
Rostock Max MDF Kit purchased from Creative Machines UK April 2013
RAMPS 1.4
EZStrruder
SeeMeCNC Bowden Hotend V1
Onyx
Fware: Repetier 0.91
Sware: Repetier-Host V0.95D
User avatar
626Pilot
ULTIMATE 3D JEDI
Posts: 1720
Joined: Tue May 14, 2013 12:52 pm

Re: Auto Level - Auto Calibration Talk

Post by 626Pilot »

Depends on whether there's a difference in potential between the hot end and the glass, how much, how reliable the difference is, etc. Worth checking out, I think. The first capacitors were made out of glass jars!
User avatar
artexmg
Printmaster!
Posts: 291
Joined: Tue Sep 10, 2013 2:49 am
Location: Houston, TX

Re: Auto Level - Auto Calibration Talk

Post by artexmg »

I posted in a different thread, that I noticed a consistent "buzz" in my printer when the nozzle (once heated) get close enough to the borosilicate plate (0.05mm). And, I think, it changes the tone by the 0.01mm.

Actually, I was able to level the nozzle moslty "by ear", using this "buzz cue" and manipulation of the variables in EEPROM, no screws used at all.

I have two Rostocks and I can hear the same buzz in both. I am using E3D V6, not sure if it is the same with stock hot end.

I will (as I have time!) see if I can get the nature of the buzz (capacitance? sound? mechanical vibration? ??) and get the signal. Possible it could be used for calibration purposes.

By the way, using pure EEPROM, I can now level the bed in about 20mins, with nothing else than just variables. :-)
critical_limit
Printmaster!
Posts: 142
Joined: Thu Jul 10, 2014 11:15 am
Location: Berlin Germany

Re: Auto Level - Auto Calibration Talk

Post by critical_limit »

I´ve read in Github Repo that they fixed the autolevel in 0.92 beta.

I´m not at Home for a few days, but I will check it next week.
Cedric_K
Plasticator
Posts: 18
Joined: Mon Jan 05, 2015 11:01 am
Location: Lyon, France

Re: Auto Level - Auto Calibration Talk

Post by Cedric_K »

I followed this lot of interrest that thread...

I work in plastics, and I have some skills in robotics...

Homing, calibrating, are things thats our industrial robot are used to do, and they do it automatic...

Let me give my opinion on why a REAL auto calibration can't be done on our printers...

On an industrial robot (cartesian, polar, or even a delta could be imaginated), each axis comes with cams, (end stops which allows to know the exact positionning on the axis), but the main difference, is the fact that each move of the stepper is monitored by a coder... At each moment, a very precise coder analyse the movement of the stepper and determine where is really the axis...

-with our printer, a stepper spins, and we assume that it is always were we think he is, we trust totally in the precision and the non-failing of the stepper. We never know the real location of the axis, we just extrapolate it, by calculation of each moves done by the stepper.
-
with industrial robots, stepper spins, coder says where the axis is really, and correct the position if necessary, because it is more much accurate than stepper. Coder check that stepper put the axis in the right position, makes corrections, and enable to always get a variable with the REAL location of the axis. Complex PIDs algoritms are used to make corrections, and to make a real time management of acceleration

What I mean, this is that is you make an axis free, and pilot 2 other axis, the free axis will follow randomly the others, but you will lose its location for real. With an industrial, the free axis will not loose its location because the coder wil records each free move of the unpowered stepper...

Now let's imagine how, by end-contact with the surface, a printer equipped with coder and with high-performance microcontroller, would be able to determine the dome done on a straight line from an edge to the other... of course there will be doming, but you become with a few electronic and easy algoritm, able to Calculate that, and correct that by trial, or why not by algoritm able to change the good radius value.

I just think our printers are entertenement devices, too limited by technology to imagine REAL auto calibration. It could be done, of course, but it will have a grat difference of cost...
User avatar
Jimustanguitar
ULTIMATE 3D JEDI
Posts: 2631
Joined: Sun Mar 31, 2013 1:35 am
Location: Notre Dame area
Contact:

Re: Auto Level - Auto Calibration Talk

Post by Jimustanguitar »

Closed loop / true feedback exists: http://makerhive.proboards.com/thread/9 ... s-encoders" onclick="window.open(this.href);return false;

I just don't know anybody who's done it on a Rostock yet.
Cedric_K
Plasticator
Posts: 18
Joined: Mon Jan 05, 2015 11:01 am
Location: Lyon, France

Re: Auto Level - Auto Calibration Talk

Post by Cedric_K »

Of course it exists, and If it wasn't, It would be makeable, but it has a cost

I'm focusing on how to emulate a false auto-calibration routine, but for me there is absolutely no way to succeed in, without getting a feedback on the equivalent cartesian Z-axis, cause to auto calibrate, once you solved how to go to 3 calib points, you have to make a linear deplacement throught the overall surface, in order to see the actual doming, and correct it... only an embedded micrometer with communication with controller, could according to my small knowledge, achieve that..

I have some ideas to how to get very precise locations, and it has nothing to do with a hall effect sensor or even any sensor, it begins by a mecanical centering (a pos cone entering a neg cone), which would guarantee that your location is good... but one more time, how to achieve that ? I'm sure there is a way, but didn't find yet ! Sure that previous works seen in this thread would be very helpful, as I'm sure that this approach is not the good !

At this point : always remember

- a true autocalibration involves that you always know the true location of your axis, or find a way to guarantee that your axis are really where they have to be for the 3/4 calibrations point.

-a true autocalibration involves that when you go to 2 opposites points on max printing circle, at the same Z-height, there must be a way for the controller to know the true location of the Z-height (from the controller point of view, z is always the same, but there is actually a difference that we have to correct, and we need to know the real value of the z axis in order to correct the radius by a routine)
User avatar
626Pilot
ULTIMATE 3D JEDI
Posts: 1720
Joined: Tue May 14, 2013 12:52 pm

Re: Auto Level - Auto Calibration Talk

Post by 626Pilot »

Cedric_K wrote: Let me give my opinion on why a REAL auto calibration can't be done on our printers...

On an industrial robot (cartesian, polar, or even a delta could be imaginated), each axis comes with cams, (end stops which allows to know the exact positionning on the axis), but the main difference, is the fact that each move of the stepper is monitored by a coder... At each moment, a very precise coder analyse the movement of the stepper and determine where is really the axis...

-with our printer, a stepper spins, and we assume that it is always were we think he is, we trust totally in the precision and the non-failing of the stepper. We never know the real location of the axis, we just extrapolate it, by calculation of each moves done by the stepper.
If the current setting is high enough, and if the acceleration settings are low enough for the combination of total drivetrain & effector mass, the steppers should lose steps at a rate of a few per hour at most. Possibly zero. I have printed stuff that took an entire day at 60mm/sec movement speed and 800mm/sec^2 acceleration, 80 micron layer height, and the end product comes out fine every time I print it (unless the filament jams or the serial connection dies). If there was enough step loss to cause significant drift, I would expect to see layers drifting subtly in the XY plane, not adhering, or being too closely spaced (so it knocks the part around and prints spaghetti), etc., but this never happens.

If we really, REALLY care about losing steps, there are stepper drivers that can detect missed steps. Maybe this isn't 100% as good as encoders, but it's better than nothing. I suppose we could put encoders on the stepper output shafts if we wanted.

I designed a Z probe that uses a Hall effect sensor, then modified Smoothieware to do both simulated annealing printer geometry calibration (corrects X, Y, Z) and bilinear interpolation depth correction (corrects only Z). The geometry calibration figures out arm length, each tower's radius and rotation, endstop settings, and build surface normal (a total of 13 variables.) Source is here, and you can see the Z probe in my sig if you're interested. With only a Z probe, we don't know where X and Y truly are. However, as no dimension on the coordinate system has its own axis on a delta printer, changing the geometry in a way that corrects Z will also tend to correct X and Y, at least a little.

I think the ideal calibration would use closed loop sensing for X, Y, and Z, instead of just Z as it is now. Someone else on the forums made an FSR mount for the Onyx bed, so it rests on three points, with an FSR at each. I think an algorithm could triangulate the touched coordinates on the Onyx with three FSRs, if they were placed at the towers in known locations, if the FSRs have enough resolution to give us fine enough feedback, and if they each had their own pin on the microcontroller (so we can read them separately). The idea is that if you touch the print surface next to the X tower, that tower's FSR will return more "weight" than Y or Z, and so forth. It would make the simulated annealing run slower, but you only have to run that once, so not a big deal.
Cedric_K
Plasticator
Posts: 18
Joined: Mon Jan 05, 2015 11:01 am
Location: Lyon, France

Re: Auto Level - Auto Calibration Talk

Post by Cedric_K »

Hi 626 !

thanks for your answer, know that I respect a lot your work, i would be greated to share with you in a near future (I don't have a printer yet, always looking for which model I want...) but if you permit me to deviate the thread for one message, I'm not sure wanting a rostock V2 anymore, because learn'd 100% of the thread about weird Z-axis yesterday, it feels this issue is not solved, and a rostock could not be reliable in extreme perimeter printing... You achieve that cause you use a smoothie controller instead of a rambo, and a such a lot of other mods to your original rostock , but an original kit couldn't be reliable out of the triangle, isn't ?

To come back to original theme...

I think I was wrong with my coders, because the main issue is delta calculation. There is a match between the Z-weird and the auto calib, even if you know the actual location of each axis, even if you have a feedback that they are were you want them, if your calculated coordonates generate an error outside the triangle, your coders will determine that your axis are good, this is not a physical location issue, but a calculated location issue... Sure I teach nothing to you, but I very new with printer, I discovered everything this week !

I don't think there is a lot of error with nema17 stepper, or step looses, but there is always is a very small error. Know that precision given for each step on nema17 is approx 5%... other issue with delta printer => stepper are always moving ! a lot more than a cartesian printer, that's why you finally accumulate more error at the end of printing. Even if as you told, stepper are accurate enough (and they prove it) to be thrusted.. I think they have not reached their limit because at the end of a printing, the deviation of each axis, is smaller than 0,4mm (the standard nozzle size)... Didn't consider that fact before.

I think finally my first printer would be cartesian and my first purpose will be to construct my own delta rostock-based, I will continue to follow your post with interest.
User avatar
626Pilot
ULTIMATE 3D JEDI
Posts: 1720
Joined: Tue May 14, 2013 12:52 pm

Re: Auto Level - Auto Calibration Talk

Post by 626Pilot »

Cedric_K wrote:I'm not sure wanting a rostock V2 anymore, because learn'd 100% of the thread about weird Z-axis yesterday, it feels this issue is not solved, and a rostock could not be reliable in extreme perimeter printing...

You confirm that ?
One person posted here that he upgraded his Rostock MAX to version 2 (bought the laser cut wood from SeeMeCNC, used version 1 parts otherwise) and he still had the same problem. I don't recommend you buy a Rostock MAX 2 or an Orion because frankly, their response to this issue has been t e r r i b l e. They were nice to me when I was building the printer, shipped me a couple replacement parts for free when I managed to damage mine. For that, they get a little good will from me. But this problem? It's beyond the pale. All they did was start working on a Z probe (which they abandoned after a month or two) and published some advice to increase the carriage offset, which did nothing for me. I designed my own Z probe, spent hundreds of hours diagnosing and researching this problem, and more hundreds of hours writing software to fix it. What if I didn't do that? Would this go on for another two years? I better stop thinking about this before my blood pressure gets any higher.
Or actually I think about making a bigger printer rostock-like, which could only print the circle inside the triangle made by towers, which should garantee your always is the right z-axis calculation area, so I will lose lot of surface to ground but I would be reliable... what do you think about that idea ?
Some people do it. I don't think printing outside the triangle is automatically "bad" but it does seem more sensitive to calibration issues. If your firmware does auto calibration, it shouldn't matter too much. The math doesn't change whether you're within the triangle or not.
I don't think there is a lot of error which nema17 stepper, or step looses, but there always is a very small error. Know that precision given for each step on nema17 is approx 5%... other issue with delta printer => stepper are always moving ! a lot more than a cartesian printer, that's why you finally accumulate more error at the end of printing. Even if as you told, stepper are accurate enough (and they prove it) to be thrusted.. I think they have not reached their limit because at the end of a printing, the deviation of each axis, is smaller than 0,4mm (the standard nozzle size)... Didn't consider that fact before.
One of the features in my firmware is the ability to do a probe calibration, and this will tell you how good the repeatability is. It will run the probe up to 30 times, wiggling it in the XY plane between each probe if desired. It collects statistics. On my printer the repeatability (standard deviation) is less than 1 step. Another guy has better sensing (FSRs instead of Hall effect) and his repeatability is ZERO. I don't know how much that would hold up after hours and hours, but I have printed small planetary gear sets multiple times and the gears always meshed perfectly. The gears also came with printed screws, which are threaded, and they worked fine. If anything would be messed up by losing steps, I think it would be that.
I think finally my first printer would be cartesian and my first purpose will be to construct my own delta rostock-based, I will continue to follow your post with interest.
If you want a delta printer, I would skip the Cartesian and just buy a delta kit. You will spend a lot less time and money that way, and if you want to run delta printers regularly, the learning will help. Cartesian printers can have their own problems. Also, whatever printer you get, I recommend getting an E3D version 6 hot end. They are all-metal, so you can print high temperature stuff like nylon and T-glase, and their performance with PLA is very, very good. Hot end jams are a real pain, so just get a hot end that doesn't jam in the first place.
Cedric_K
Plasticator
Posts: 18
Joined: Mon Jan 05, 2015 11:01 am
Location: Lyon, France

Re: Auto Level - Auto Calibration Talk

Post by Cedric_K »

Ok sure for me I would take an E3d V6 because I want to make nylon parts. I've seen your bracket to fit it. You said that for you, with your controller, you are able to get a good calibration with a delta printer ? does it need a smoothie motherboard ? Is a good option for me to buy a rostock V2 and mod it like you done ? the other delta printer I've seen is the VI V2.5 which seems suffer a lot of design issues, not enough reliable for me..
User avatar
626Pilot
ULTIMATE 3D JEDI
Posts: 1720
Joined: Tue May 14, 2013 12:52 pm

Re: Auto Level - Auto Calibration Talk

Post by 626Pilot »

My firmware does require a Smoothieboard or Azteeg X5 (same chip, different layout). I was hoping that now that I've done the hard work figuring out heuristics and all that, someone else will port it to the Arduino-based boards. I don't use those boards anymore. I see them as laughably overpriced for what you get.

You could buy a Rostock Max 2, upgrade to a Smoothieboard or X5, install the firmware, and it should work fine. Or, it might work fine out of the box and not require those upgrades. It's a roll of the dice.
Cedric_K
Plasticator
Posts: 18
Joined: Mon Jan 05, 2015 11:01 am
Location: Lyon, France

Re: Auto Level - Auto Calibration Talk

Post by Cedric_K »

I imagine the genuine must be something like 80mhz 8bit & I agree that it's outpriced, and outdated. It must heat a bit while calculating delta maths ? upgrade to 32bits and faster processor seems a good choice to calculate delta, so that it shouldnt be so expensive nowadays..

When you consider how much floating figures there are in the calculation, a 32bit processor is helpful, and should give more precision with 400 steps steppers...

I'm ok to try to port your job to rambo when getting my machine. To be continued.

Thanks a lot !
User avatar
626Pilot
ULTIMATE 3D JEDI
Posts: 1720
Joined: Tue May 14, 2013 12:52 pm

Re: Auto Level - Auto Calibration Talk

Post by 626Pilot »

The Arduino runs at 16MHz, has 0.5-4K of RAM (4K on RAMBo), and has no FPU. There have been timing problems from the calculations taking too long, so adding anything in a time-critical section requires great care. The simulated annealing is not susceptible to this problem (but it will run very slow on Atmel). However, if planar (surface normal) or depth correction (bilinear interpolation) is turned on, it will take more cycles. Supposedly Marlin firmware has some auto-level, but I was not able to get it to work on my Rostock. Repetier firmware also has auto-level but it worked terribly the last time I tried it.

I'm working on the Teensy 3.1 right now, a $19 ARM controller running at 72MHz. It has 64K of RAM, 256K ROM, 16-channel DMA controller, tons of I/O pins, DSP, ability to read touch screens, native micro-USB (can either be client or host), etc. I don't think it has an FPU, but as fast as it runs, I don't see that it matters. When building a 3D printer controller, it makes more sense to me to use the ARM chip that costs no more than the Atmel chip, and delivers 5-15x the performance on all dimensions. This is why I think Marlin and Repetier firmware will eventually fall by the wayside.
User avatar
jdurand
Printmaster!
Posts: 397
Joined: Mon Dec 01, 2014 12:41 am
Location: Silicon Valley, California
Contact:

Re: Auto Level - Auto Calibration Talk

Post by jdurand »

I LOVE ARM chips, specifically the Cortex ones since I design embedded gear. Even using the little 8-pin one for a cheap PID temperature controller (who needs an ADC when you're sneaky).

I might be somewhat biased, I was paid by NXP for a while to be an "ARM Forum Expert".

Also a FreeRTOS fan.
Standing on the edge of reality... (me)
Quando omni flunkus moritati (Red Green)
Let no man belong to another that can belong to himself. (Paracelsus)
All things are poison and nothing is without poison; only the dose makes a thing not a poison. (Ibid.)
djdelorie
Plasticator
Posts: 5
Joined: Mon Jun 29, 2015 8:55 pm

Re: Auto Level - Auto Calibration Talk

Post by djdelorie »

After spending a week or more reading all about the calibration problems we all seem to be having (me too) I'm taking a stab at understanding them myself. I made my own z-probe which seems repeatable enough, got out all my measuring tools, started fiddling... and now I have some questions.

ASSUMING a perfect delta printer, do the following assumptions hold?

1. When the extruder is positioned DELTA_RADIUS away from center, towards one of the columns, that delta arm is vertical

2. When a delta arm is vertical, the Z position depends only on the delta arm length

3. When at X=0,Y=0, the Z-heights of each carriage are identical, and the distance from the extruder to each column is identical. (if they're not, how do you know which to correct?)

4. The X and Y calibration depends on DELTA_DIAGONAL_ROD and DELTA_RADIUS (i.e. you can't just fiddle those to correct for a warped bed)

Given those assumptions, one should be able to set the Z stops and measure the DELTA_RADIUS and arm angle corrections by locating these "arms are vertical" spots. Reversing the above assumptions, we have...

1. If you position the extruder such that a delta arm is vertical, it's distance from X=0,Y=0 tells you the DELTA RADIUS for that arm

2. You can adjust that end stop screw for Z=0 at that location, and it'll be correct

If you can measure "vertical" accurately enough, and can measure your delta arm length accurately enough, this should let us directly measure delta radius (per arm), angle corrections (per arm), and correct for z offset (per arm). Add delta arm length, and I think that's all the core measurements (not including column tilt).

Having said that... I did some experiments with measuring my bed. I wrote a script to probe the whole surface on a grid and plot the variance, and had the same "too high between columns" as everyone else. I also wrote a delta simulator where I could simulate miscalibrations to see what causes that effect. I was able to reproduce it by assuming the rod length was off by a few mm, and corrected for via z-height and bed radius. However, that "miscalibration" also changed the X and Y scale. I recalibrated my printer so that X and Y dimensions were accurate and re-scanned the bed. Still off.

Next I removed the glass and scanned the onyx directly. Different shape. So I put three bits of thick tape on it and replaced the glass - but no clips - so nothing was trying to flex the glass. Rescan, different shape. Turn the glass 90 degrees. Different shape (and not just rotated 90 degrees).

The variance was +- about 0.2mm. So I put my best straightedge on the surface and checked the edges with feeler gauges. Yup, they're low about 8 thou, or 0.2mm.

So I'm thinking... If I use the above assumptions to properly measure my printer (some of which can be done with a z-probe) and plug the "real world" numbers into the firmware, and use a calibration print to check X,Y scale... if I then print something large with a "flat" top (or even a grid of buttons with the same Z top), should *those* be "flat"?

I'm thinking, should we calibrate assuming a flat bed, or calibrate for a flat build plane and correct for the bed?

Also, a tool I find useful: I milled a bar of aluminum about 4" long such that it's 9.2mm high on one end, and 10.8mm high on the other. Moving to Z=10 lets you easily measure the height to within 0.1mm just by sliding the bar under it. I have a dozen buttons in pronterface to move to Z=10 at various locations and one to quickly re-home.

Also, if anyone is interested in the simulator (in C) or the grid probe script (in Python), I'm willing to share them, it'll just take time to put them somewhere in a useful state :-)
Aquilus
Noob
Posts: 4
Joined: Sat Jul 18, 2020 4:42 am

Re: Auto Level - Auto Calibration Talk

Post by Aquilus »

Hi I'm Aquilus,

I am having trouble z-probing on my rostock max V1 with dual extrusion 0.92.2 firmware. I configured the script on configuration.h as follows but once the machine asks for confirmation with the z_probe button the wendstop sensor does not work despite the pin being correct, (Rambo z-min is pin 10).

The script follows:

#elif PRINTER == 2 // Rostock MAX v2
#if NUM_EXTRUDER == 1
#define MOTOR_CURRENT {140,140,140,130,0}
#elif NUM_EXTRUDER == 2
#define MOTOR_CURRENT {140,140,140,130,130}
#endif
#define HAVE_HEATED_BED 1
#define INVERT_X_DIR 0
#define INVERT_Y_DIR 0
#define INVERT_Z_DIR 0
#define DELTA_DIAGONAL_ROD 291.06 // ball cup arms
#define DELTA_MAX_RADIUS 145.0
#define PRINTER_RADIUS 200.0
#define Z_MAX_LENGTH 350
#define END_EFFECTOR_HORIZONTAL_OFFSET 30.22
#define CARRIAGE_HORIZONTAL_OFFSET 26.5 // molded cheapskates
#define DELTASEGMENTS_PER_PRINTLINE 22
#define STEPPER_INACTIVE_TIME 600L
#define MAX_INACTIVE_TIME 900L
#define MAX_FEEDRATE_X 250
#define MAX_FEEDRATE_Y 250
#define MAX_FEEDRATE_Z 250
#define HOMING_FEEDRATE_X 80
#define HOMING_FEEDRATE_Y 80
#define HOMING_FEEDRATE_Z 80
#define MAX_ACCELERATION_UNITS_PER_SQ_SECOND_X 1850
#define MAX_ACCELERATION_UNITS_PER_SQ_SECOND_Y 1850
#define MAX_ACCELERATION_UNITS_PER_SQ_SECOND_Z 1850
#define MAX_TRAVEL_ACCELERATION_UNITS_PER_SQ_SECOND_X 3000
#define MAX_TRAVEL_ACCELERATION_UNITS_PER_SQ_SECOND_Y 3000
#define MAX_TRAVEL_ACCELERATION_UNITS_PER_SQ_SECOND_Z 3000
#define MAX_JERK 32
#define MAX_ZJERK 32
#if HOTEND == 3
#else

#define FEATURE_Z_PROBE true
#define Z_PROBE_Z_OFFSET 0 // offset for the upholstery from the actual bed level. How z min is measured
#define Z_PROBE_Z_OFFSET_MODE 0
#define Z_PROBE_PIN 10
#define Z_PROBE_ON_HIGH false
#define Z_PROBE_SENSITIVITY 20 // 0-126 7 bit value
#define Z_PROBE_BED_DISTANCE 80
#define Z_PROBE_PULLUP true
#define Z_PROBE_X_OFFSET 0
#define Z_PROBE_Y_OFFSET 0
#define Z_PROBE_WAIT_BEFORE_TEST true
#define Z_PROBE_SPEED 5
#define Z_PROBE_XY_SPEED 150
#define Z_PROBE_SWITCHING_DISTANCE 1.5
#define Z_PROBE_REPETITIONS 5
#define Z_PROBE_HEIGHT 35
#define Z_PROBE_START_SCRIPT ""
#define Z_PROBE_FINISHED_SCRIPT ""
#define FEATURE_AUTOLEVEL true
#define Z_PROBE_X1 -69.28
#define Z_PROBE_Y1 -40
#define Z_PROBE_X2 69.28
#define Z_PROBE_Y2 -40
#define Z_PROBE_X3 0
#define Z_PROBE_Y3 80
#define SDSUPPORT 1
#define SDCARDDETECT 81
#define SDCARDDETECTINVERTED 0
#define FEATURE_CONTROLLER 13
#define UI_PRINTER_NAME "RostockMAXv2"
#endif


Another thing is the problem that with G31 the endstop remains in the open position with L despite the presses it and does not switch to closed with H.
If the pin is correct and so it is since I checked in pin.h under ramp that the z-min is pin 10 I don't know what am I wrong. Even activating the #define Z_PROBE_ON_HIGH the machine not only does not solve but also crashes having to turn off the machine to restore. The modified probing placement measures also do not match. I don't know what to do, help please.
Aquilus
Noob
Posts: 4
Joined: Sat Jul 18, 2020 4:42 am

Re: Auto Level - Auto Calibration Talk

Post by Aquilus »

I installed an optical limit switch as shown in the picture, now it is able to read the opening and closing of the switch via G31, with the led on I from H and when the rod passes me from L. Now I will check the firmware as after the one with the mechanical limit switch the G32 did not crash now with the optical limit switch instead I crash. I enclose everything here.

PS the last level of assembly of the limit switch is ignorable, the assembly as in the photo is ok.

https://i.imgur.com/fXVI82c.jpg
https://i.imgur.com/OCFXdNp.jpg
https://i.imgur.com/XcLdSxG.jpg
https://i.imgur.com/vqDKD0z .mp4
Post Reply

Return to “Rostock MAX”