Welcome! Log In Create A New Profile

Advanced

Two ideas: Do they exist?

Posted by drmaestro 
Two ideas: Do they exist?
March 31, 2018 04:59AM
I was thinking about the extrusion process and had two ideas. I wanted to know if there is a practical implamentation (or would they even be doable or practical).

1) I know that there are filament runout sensors which detect if the filament is broken or depleted. However I was wondering if there is a constant filament flow detector. The problem that I want to solve is to be able to detect objectively if the filament is flowing as much as required. Sometimes the tension on the idler of the extruder might be low, so while the filament is advancing, there might be some missed steps. What I actually do is to use my 2 fingers at the entrance of the extruder and try to sense if the filament is flowing manually, however this is a very subjective test. If there was a way to detect electronically the fow of the filament, it could be very useful when setting up a new extruder or trying to calibrate the temperature or speed settings. I know that in practice, due to retractions or pressure advance moves, it wouldn't be really useful while actually printing an object, but for calibration it should be possible to use an object printed in vase mode, so the flow is constant.

2) Would it be possible to determine the load on a motor? When extruding a filament at a lower temperature, it is harder to turn the extruder gears manually, so the load on the extruder motor should be higher. If there was a way to mesaure this load, it would, maybe, be possible to determine a printing temperature according to the resistence to the flow. I know that this resistence would also depend on nozzle size or other factors and that there are other ways to find the ideal printing temperature (like the temperature towers) but this could be a more objective way to standardize the printing procedure.
Re: Two ideas: Do they exist?
March 31, 2018 06:03AM
Yes and Yes

1) Your first question has been solved in every consumer 2D printer nowadays. They have this membrane at the end of the rotating axis to determin the speed of the rotation, among other things. It uses an Opto-sensor. The circular membrane has loads and loads of black strips, but it's transparent everywhere else. Using some magic it is able to determine the speed of things by measuring the Opto-sensor interrupts, etc. Opto-sensors are compatible with every board and firmware as far as I know. But I doubt they have the mechanism I described implemented. Also worth noting, that the filament is not constantly extruding at the same speed.



2) Your second inquiry should be solvable with Trinamic TMC2130. Those four pins upside-down are communication pins. Able to tell your controller about stuff, including, but not limited to, current measurement, which is directly linked with your motor's torque (load).



Edited 2 time(s). Last edit at 03/31/2018 06:05AM by Rossos.


Proud owner and maker of build from scratch FDM 3D printer [forums.reprap.org]
Re: Two ideas: Do they exist?
March 31, 2018 06:46AM
1) most definitely

The most common way Ive seen is putting and encoder pattern on the idler bearing then monitoring the movement of that pattern

Makerbot tried this and totally made a mess of it... (what ever happened about that class action suit over their smart extruder?... Darn the case was dismissed)
Re: Two ideas: Do they exist?
March 31, 2018 07:26AM
1. RepRapFirmware compares the measured filament consumption with the commanded extrusion, and can be set to pause the print if the difference goes out of tolerance. See [duet3d.dozuki.com] for how to set this up. So far this has been used with 3 types of filament sensor:

(a) Prototype Duet3D rotating magnet filament monitor. This is very accurate but mechanically more complex than we would like. See [duet3d.dozuki.com].

(b) Prototype Duet3D laser filament monitor. This is less accurate and the accuracy depends to some extent on the filament. See [duet3d.dozuki.com].

(c) Pulse-generating filament monitor. Unlike the Duet3D filament monitor, these do not provide information about the direction the filament is moving in, so retractions may confuse them.

To the best of my knowledge, all other open source firmwares just look to see if filament motion is detected when extrusion has been commanded, without comparing the amounts; except that Prusa's fork of Marlin also checks that the filament motion is forwards because his laser sensor does provide direction information.

2. The "stall detection" supported by the TMC2660 drivers used in Duet electronics, and by the TMC2130, is actually load monitoring with a stall warning threshold configured. The M122 command in RepRapFirmware tells you the maximum load that has been seen on each motor since you last ran M122 (this is to help you tune the stall detection threshold). However, load monitoring doesn't work at low speeds because the motor produces insufficient back emf. So using load monitoring on an extruder motor would only be of use when extruding quite fast using a highly-geared extruder. OTOH you can use stall detection when loading filament, to feed filament in until resistance is encountered, and RepRapFirmware includes this facility as an experimental feature.

HTH David

Edited 4 time(s). Last edit at 03/31/2018 07:32AM by dc42.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Two ideas: Do they exist?
March 31, 2018 07:32AM
I've also seen an idea where the filament's thickness was constatly being monitored and G-code being modified according to the thickness to ensure that the extrusion amount is held constant despite diameter change. However there are no commercial examples that are being sold so either it isn't as important for the extrusion, or the filaments nowadays have very stable diameters.
Re: Two ideas: Do they exist?
March 31, 2018 10:23AM
1) What about reverse Servo logic? Since Servo motors always know the rotation angle of their shaft, they could be attached directly to the extruder gear and report the changes in the shaft rotation. I'll try and research if it's viable.


Proud owner and maker of build from scratch FDM 3D printer [forums.reprap.org]
Re: Two ideas: Do they exist?
March 31, 2018 11:36AM
Quote
Rossos
1) What about reverse Servo logic? Since Servo motors always know the rotation angle of their shaft, they could be attached directly to the extruder gear and report the changes in the shaft rotation. I'll try and research if it's viable.

Servo motors typically have an Alarm output, which is set of the servo fails to achieve the required position. So you could use that.

However, not all extruders skip steps when there is a filament jam. If the motor current is set too high, they just grind the filament up instead.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Two ideas: Do they exist?
March 31, 2018 11:52AM
Quote
dc42
However, not all extruders skip steps when there is a filament jam. If the motor current is set too high, they just grind the filament up instead.

Easily solvable by attaching rotation sensor to the pairing bearing instead of the stepper motor gear. And with rotation sensor I am now inclined towards 360ยบ endless rotation potentiometer.


Proud owner and maker of build from scratch FDM 3D printer [forums.reprap.org]
Re: Two ideas: Do they exist?
April 01, 2018 05:04AM
Quote
dc42
1. RepRapFirmware compares the measured filament consumption with the commanded extrusion, and can be set to pause the print if the difference goes out of tolerance. See [duet3d.dozuki.com] for how to set this up. So far this has been used with 3 types of filament sensor:

(a) Prototype Duet3D rotating magnet filament monitor. This is very accurate but mechanically more complex than we would like. See [duet3d.dozuki.com].

This is a very nice idea that I wasn't aware off. I'd like to try that on my Duet3D. However, the current implamentation seems to be geared towards the detection of filament extrusion mismatches, not fine-tuning of the extrusion. Instead of stopping the printing process in case there is a mismatch, it would be better to get a numerical value (a delta value between the filament extruded and the amount commanded) and use this value to adjust the spring tension. It could even be used to calibrate the extruder steps, if it is sensitive enough.

Edited 1 time(s). Last edit at 04/01/2018 05:05AM by drmaestro.
Re: Two ideas: Do they exist?
April 01, 2018 05:25AM
Quote
drmaestro
This is a very nice idea that I wasn't aware off. I'd like to try that on my Duet3D. However, the current implamentation seems to be geared towards the detection of filament extrusion mismatches, not fine-tuning of the extrusion. Instead of stopping the printing process in case there is a mismatch, it would be better to get a numerical value (a delta value between the filament extruded and the amount commanded) and use this value to adjust the spring tension. It could even be used to calibrate the extruder steps, if it is sensitive enough.

You can get a numerical value, because at any time during a print you can use the M591 D# command to read out the calibration data for extruder number #, whether or not you have enabled filament checking.

The problem with calibrating the extruder using the filament monitor is that the filament monitor itself needs to be calibrated. We were hoping that the laser filament monitor would not need any calibration and so could be used to calibrate the extruder, but unfortunately it isn't accurate enough for that.

However, if you calibrate the rotating magnet sensor at low speeds, you could then do some high speed runs and see how the calibration changes. That would allow you to calibrate the M592 nonlinear extrusion parameters, see [duet3d.dozuki.com].



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Sorry, only registered users may post in this forum.

Click here to login