Welcome! Log In Create A New Profile

Advanced

Optical endstop precision

Optical endstop precision
March 23, 2020 08:38AM
I saw a demo of a MarkForged printer last year at the makerspace. It had optical endstops and for some reason, when they demoed the machine, it rehomed the X and Y axes at every layer change. I still don't know why they did that, but the print quality was very good in spite of doing that. Normally the axes are homed once at the start of a print. As long as the mechanism doesn't shift or miss steps because of improper configuration or poor mechanical alignment, that should be sufficient and usually is. By homing at each layer, any imprecision in the endstops will result in the print layers not registering exactly and the print quality will suffer.

I recently installed optical endstops in UMMD, my coreXY printer. Yesterday I decided to test the precision of the endstops with a couple test prints- one that is homed only at the start of the print and another in which the X and Y axes were re-homed at every layer change. Result:

Normal print:



Re-homed print:



Looking at the two prints side by side without the benefit of magnification, there's no appreciable difference between them. If it weren't for the slight elephant footing on the normal print, I wouldn't be able to tell which is which. Apparently optical endstops are pretty high precision parts.

More here: https://drmrehorst.blogspot.com/2020/03/testing-ummds-xy-optical-endstops.html


Ultra MegaMax Dominator 3D printer: [drmrehorst.blogspot.com]
Re: Optical endstop precision
March 24, 2020 03:11PM
I've enjoyed using the optical stops for a while, and there's two other things to like about them:

*No mechanical "hit", you're not touching the switch ever, so they maintain their mounted position even when things go wrong.

*A variable LED makes adjusting my Z switch much easier than trying to set .1mm to exactly coincide with the mechanical click of a switch.

The only downside I've found is they absolutely mean it when the bag says "static sensitive device".. my work room is carpeted. grinning smiley


Nice Print!
Re: Optical endstop precision
April 10, 2020 05:27AM
I removed my homemade servo+mecanical probe to an optical switch on the Z axis.
No problem so far, but your deeper analysis comfort me smiling smiley
Did you try to change the ambiant light during the "rehome" print?
Re: Optical endstop precision
April 10, 2020 08:17AM
No, I didn't.

My printer has a lot of white LED lighting built-in and it was all on when I did the test (but white LEDs don't produce a lot of IR). I don't think ambient light, other than maybe direct sunlight, is likely to have any effect. The IR LED and phototransistor used in opto couplers are matched for wavelength/sensitivity and IR LEDs tend to be very efficient - i.e. bright. The package design for the opto interruptor limits the direction of light coming into the phototransistor, so I think it would take a LOT of extraneous light coming from just the right direction to trick the opto interruptor. Further complicating the light path and making it less likely to malfunction is that the remote source of IR would have to be shining into the opto device while the flag is in the gap, because otherwise, the LED is directly shining on the phototransistor. It's probably a good idea to use a flag that is thin and painted black (assuming black paint doesn't reflect IR).

If you're really worried about it, you could put a cover over the opto interruptor to shield it from ambient light. The only way to make it truly ambient-lightproof would be to add flexible skirts in the gap between the LED and phototransistor, and/or modulate the LED and detect the modulation at the phototransistor, but demodulation takes time and the reaction time would be slow. It might also lose some precision.

These things are used in industrial machinery all the time. There may be some differences in component quality, but the principle is the same.

I don't know if you saw the Z=0 switch has also been converted to an optical type. I also tested that for precision. I made a fancy differential screw based adjuster for it, but it really isn't necessary. You can simply detect the bed position with the opto anywhere along the Z axis and then put an offset in the firmware to set the Z=0 position (assuming, of course, that your printer is stable and doesn't require rezeroing from one print to the next). In my test of the Z=0 switch a couple readings came in with 0.01 mm error, but the precision spec of the gauge I was using is +/-0.01 mm, so there's no way to know if that's actual position error or not. Unless you're printing very thin layers, 0.01 mm error in the first layer isn't likely to affect print adhesion or quality.

If 0.01 mm represents real error, is it in the opto endstop or in the Z axis positioning mechanism? It would take more tests to figure that out.

After further investigation of the MarkForged printer, I believe they were rehoming the X and Y axis at each layer change in order to detect a layer shift and stop the print. Their material is pretty expensive stuff so it would make sense that you wouldn't want it wasted on a failed print. OTOH, the rehoming adds a lot of time to complete a print. If a rehoming takes 10 seconds per layer, and you're making a print that 500 layers tall, that's 5000 seconds of rehoming. Ouch!

Edited 4 time(s). Last edit at 04/10/2020 08:27AM by the_digital_dentist.


Ultra MegaMax Dominator 3D printer: [drmrehorst.blogspot.com]
Re: Optical endstop precision
April 11, 2020 08:10PM
So which is the preferred way to home Z? Home with the opto to first layer thickness say .13 mm and leave software Z offset at 0 or home the opto to some other positive number and use a software -z offset? I'm guessing it's probably personal preference.

Edited 1 time(s). Last edit at 04/11/2020 08:11PM by luckyflyer.
Re: Optical endstop precision
April 11, 2020 10:36PM
if you're going to use an offset, why home it to Z=0? When I get around to trying a fixed stop and offset, I'll set it so the home position is well above the bed to allow easy access to clean the nozzle with a wire brush or to extrude some filament without it sticking to the bed.

Edited 1 time(s). Last edit at 04/11/2020 10:36PM by the_digital_dentist.


Ultra MegaMax Dominator 3D printer: [drmrehorst.blogspot.com]
Re: Optical endstop precision
April 12, 2020 01:09AM
Good point. Those little blobs of filament on the bed are annoying.
Re: Optical endstop precision
April 12, 2020 12:39PM
I always move/reset my Z endstop at .1mm while leveling the bed (manual, paper trick). I don't have to do leveling very often.

I have gamma_min set to .1 in firmware, so it automatically sets a .1 position for the end stop trigger point.

I've added G1 Z10 F5000 after homing in my slicer(s) start gcode so it lifts to 10mm before starting/waiting for the hot end to heat, then 5C before target I snag the drizzle with my forceps.

I'm sure there's a ton of different rituals that we all follow. grinning smiley
Re: Optical endstop precision
April 12, 2020 02:44PM
Yeah, but you can't do that with octoprint and your phone!


Ultra MegaMax Dominator 3D printer: [drmrehorst.blogspot.com]
Sorry, only registered users may post in this forum.

Click here to login