Laser filament monitor


  • administrators

    Today I've been trying out a laser optical sensor to see if it is accurate enough to use instead of the rotating magnet sensor we use in the beta test filament monitors. The good new is that in tests with several different filaments including black and transparent, first indications are that it works adequately, provided that the filament position is sufficiently well constrained. So we will go ahead with making prototypes. We may have a very small number (between 2 and 4) available for beta testers

    This does however mean that production of filament monitors to the existing design is on hold until the prototypes are ready and tested, so that we can make an informed decision on which design to use.

    The laser filament monitor would have a much simpler housing design. Basically it just needs to clamp PTFE tubes on the inlet and the outlet, to ensure that the filament is constrained to be in the centre of the field of view of the sensor.



  • That's very good news!



  • Great news.


  • administrators

    The main risk at this stage is that there could be some filaments for which the laser sensor doesn't work reliably, or that the calibration may need to be changed for some filaments. We won't know that until we and beta testers have tested it with a wide range of filaments. I've already observed that some types of filament need to be more accurately positioned than others.

    I think that the laser filament sensor that the Prusa Mk3 uses is the same as the one I have chosen, judging by the photos on Prusa's site. What we don't know is whether his firmware compares the amount of motion with the commanded motion as our firmware does, or does something less sophisticated.



  • Happy to test I have been testing the current filament monitor so will be able to offer direct comparison.



  • Great news! I'd definitely be interested in assisting with testing.

    My Prusa MK3 arrives on Monday, so happy to both compare how both implementations work in practice.


  • administrators

    Testing so far indicates that the laser sensor is reasonably accurate with several filament types when the filament moves at low speed, but at high speeds it under-reads with some filaments. We may be able to get round this by changing the housing. If not, then one option would be to use it to monitor printing moves only, ignoring retractions and un-retractions.



  • Can we have the option to enable or disable retraction monitoring? I only retract 0.37 mm at 5 mm/s so I don't think it would become a problem for me.



  • Only for let you know ,I have a printing time of more than 60 hours from the time I mounted the filament sensor, and after some problem during the configuration time it is proving to be very reliable.
    I tested the sensor in both direct and in bowden machine without any sort of problem
    What improvements are expected form a laser option?



  • I didn't have quite so much success with it, whether it was the mount which flexed somewhat, the inability to use the nimble as it is currently designed to fix an input bowden tube, or the housing allowing the rollers to move laterally, which changes the effective diameter of the filament monitor hobbed gear, or moves the magnet away from the sensor chip, all of these issues at times occurred. I did also get some true positives, where filament snagged or ran out and this was extremely useful.

    So the usefulness of a filament monitor of any sort is for me very clear, its just this current design seems overly complex, fragile and mechanical compared to Prusa's extremely neat, simple solution whether it actually works well we are about to find out.


  • administrators

    @claustro:

    What improvements are expected from a laser option?

    • It's mechanically much simpler. The housing just needs to clamp 2 pieces of PTFE tubing in place so as to guide the filament in front of the sensor.
    • The simplicity may make it more reliable. [OTOH the sensor may be affected by dust.]
    • We could potentially make it smaller than the current 25 x 22.5mm
    • If we find it reproducible enough, it may need no calibration - which also means it could calibrate the extruder steps/mm.


  • That's awesome. I'll love to test this. Can I suggest to yo something guys? Make sure that the mechanism where the laser sensor is integrated will allow the filament to be unloaded. For example when I made my first prototype and I clicked the unload filament button, the filament got stuck in the mecanism and the extruder gear start to grind into the filament. So the filament should run smooth backward in the mechanism when unloaded.



  • @dc42:

    …...................... If we find it reproducible enough, it may need no calibration - which also means it could calibrate the extruder steps/mm.

    Oooo - now there is a use that I never thought about.

    I just need the next gen Duet as I'd need 5 of them and I've only got 3 spare end stops on the Duex5 (the Duet is already full). My cable chain is about full too. 🙂



  • I wouldn't open the bottle of champagne yet though. Whilst it could offer gross calibration, precise calibration would require some manual input such as filament average diameter in order to get close to exact correct steps/mm. But its a big step in the right direction. A laser sensor to measure filament diameter and roundness and you'd be a lot closer to an auto-calibrating extruder.



  • @DjDemonD:

    I wouldn't open the bottle of champagne yet though. Whilst it could offer gross calibration, precise calibration would require some manual input such as filament average diameter in order to get close to exact correct steps/mm. But its a big step in the right direction. A laser sensor to measure filament diameter and roundness and you'd be a lot closer to an auto-calibrating extruder.

    Simon,

    Sadly, I'm not able to drink alcohol any more so the champagne is still on the super market shelf 🙂

    I wasn't thinking so much about compensation for filament diameter (can't see how it would be able to do that) but just thinking that it would be a lot easier than measuring and marking the filament to get the initial steps per mm. That's always a bit of a PITA trying to hold the filament straight while measuring and/or marking it.

    In theory you only need to do that once (or 5 times in my case due to me having 5 extruders) but I get variations between PLA and PETG which I suspect is to do with hobbed bolt biting deeper into one than the other. Having 5 extruders to calibrate, I can't be ar**ed to measure every filament, so simply use an extrusion multiplier to compensate in a hit and miss sort of fashion. But if the filament monitor would give me the amount of filament that has passed through the extruder, that would make life a lot easier and I could fine tune it from there if need be.

    Cheers

    Ian


  • administrators

    @DjDemonD:

    I wouldn't open the bottle of champagne yet though. Whilst it could offer gross calibration, precise calibration would require some manual input such as filament average diameter in order to get close to exact correct steps/mm. But its a big step in the right direction. A laser sensor to measure filament diameter and roundness and you'd be a lot closer to an auto-calibrating extruder.

    I don't agree. The extruder steps/mm should be exactly what comes out of the extruder, and as such can be measured by the filament monitor. If the extrusion amount needs to be compensated for the filament diameter not being quote what not should be, IMO that is best compensated for in the slicer settings or the extrusion factor, not by setting the extruder steps/mm to a deliberately wrong value.



  • I think there are so many parameters influencing extrusion that steps/mm does not have to be that precise. I don't bother anymore to have a perfect match: I prefer printing a small part, check the top layer, and adjust extrusion ratio. And this ratio can have large variations with the extrusion temperature, speed and so (depending on the part I'm printing, and the final aspect and/or mechanical properties I need, I often change the printing temperature within 25°C range, and speed in a factor of 2).

    However, the sensor output should be reproductible, and always give the same steps/mm value for a given filament.


  • administrators

    @fma:

    I think there are so many parameters influencing extrusion that steps/mm does not have to be that precise. I don't bother anymore to have a perfect match: I prefer printing a small part, check the top layer, and adjust extrusion ratio. And this ratio can have large variations with the extrusion temperature, speed and so (depending on the part I'm printing, and the final aspect and/or mechanical properties I need, I often change the printing temperature within 25°C range, and speed in a factor of 2).

    However, the sensor output should be reproducible, and always give the same steps/mm value for a given filament.

    Quite so. I find that the optimum extrusion factor depends on the filament - and not just because of variations in the the diameter.

    I am hoping that the laser filament sensor will show the correct movement amount regardless of filament type, at least at low speeds. But more testing will be needed to confirm that, which will be easier when we have the prototypes.



  • I agree that it will enable you to set steps/mm if you're measuring mm moving past it accurately and consistently. But this is only the relationship between motor steps and linear filament movement, not filament extruded volumetrically, which is actually what we need to measure, albeit no scheme for doing so has proved fruitful.

    As to whether you should use an extrusion multiplier in a slicer or change your steps/mm to compensate for variations in filament diameter (the cross-sectional area is obviously what you really need to measure) is semantic in that what is physically happening is that one motor turns pushing filament through a nozzle, you just need to know how much to turn the extruder to get the right amount of material out, any and all settings that contribute to this are all just different ways to label the same thing.

    If the filament is softer and the drive gear bites into it harder reducing it's effective diameter then the filament monitor should be able to compensate for this automatically, so that great news.

    If you want to make a genuinely autocalibrating extruder (not necessary for us enthusiasts/pros who've been printing for years, but quite important for a true consumer 3D printer) then you need to measure the cross-sectional area to cope with any filament you chose to load.


  • administrators

    If you want to calibrate volumetric extrusion, then I agree, in principle you need to measure filament diameter too. But standard practice is to calibrate linear extrusion. If the filament is of high quality, then the diameter will be tightly controlled so it will also give you sufficiently accurate volumetric extrusion too. Nevertheless, different filaments swell by different amounts after extrusion, so even accurate volumetric extrusion doesn't guarantee that you won't need to adjust the extrusion factor.


 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.