1

Topic: [WIP] Out of Filament Alarm - Auto-Pauses/Heater Shutoff when Idle

So as inspired in http://www.soliforum.com/topic/2266/hey … arm-175mm/ , I've been working on making this a reality. This code is shortly to be published over in my firmware thread at http://www.soliforum.com/topic/2470/bet … t-chg-etc/ , so to use this, you will need to download the code from that thread and compile it after tweaking the configuration.h to your needs/liking.

Basically the idea is to have the filament run through a guide with a fitted Microswitch (preferably with a Roller). You connect this microswitch using the normally closed pin to an input pin and ground. On the Sang you can do this to A4 and GND on the IO expansion section, on a RAMPS you can use say D63 and the GND next to it. Its set in the configuration file via FILAMENT_ALARM_PIN.

With filament passing over the switch, its inactive. Every 2500ms the firmware will check the status of the switch. If it detects that its gone low (pulled to ground), it triggers the filament alarm sequence.

First the printer will send a Pause to Repetier-Host. Then it will issue an M600 and return to Home based on what printer you have set in Configuration.h . Due to a current bug in my code I'm trying to resolve, the buffer ends up moving the head back over the workpiece - in the next version it should hopefully avoid this issue! smile .

Once parked, the printer will disable the extruder motor, allowing you to easily remove the existing filament that remains and insert and manually prime the new one.

If however you are not present, the printer will automatically disable the extruder heater after the preset time in PAUSE_HEATER_DELAY (default is 300 seconds or 5 mins). You will need to re-enable it when you return, as the host does not re-enable it automatically.

To restart printing, simply send M601 via the console and then click continue in repetier-host. Your print will now continue as before.

You can use this mechanism to also swap colours over mid-print - simply cut the filament near the extruder, and pull it out of the guide - this will cause the alarm to trip and begin the process.

To avoid the position being lost, once the alarm is tripped, it will wait 2.5 minutes before it will register resetting. This is to enable you to perhaps fumble feeding the filament without accidentally triggering another pause sequence smile

To mount the microswitch, I made up the attached guide/mount. I designed it to clip to the top frame of the SD - if you use an enclosure that covers the top or whatever, feel free to modify the sketchup/stl and post up your mods for others to use - My one is crap and was a quick job tonight to allow me to at least publish this much smile
http://farm8.staticflickr.com/7308/8791786103_5d6567ab1a_z.jpg
If you don't want to do this using the filament guide, then just mount a momentary push button and connect it up - You can simply press this button for 2.5 seconds and you will trigger the filament change process! smile

I'm hugely open to suggestions and feedback here - on both the code in the firmware thread, or in here regarding the process/procedure. I'm also going to finalise very shortly the code to allow a seperate beeper (piezo actually) to be attached to pulse an alarm audibly to bring you back to the room - currently it can use the LCD's Beeper but I want a non-LCD solution for you all as well (for people like lawsy with the tablets etc).

Heres a quick demo video of the process at work; please note in the interests of me debugging this code still to iron out this buffering issue, the switch is mounted on the side of the SD frame and I manually trigger it by wrapping/unwrapping some tape. Obviously though you can see how that would normally be operating as part of the filament guide! smile

Post's attachments

filament-alarm.skp 48.92 kb, 6 downloads since 2013-05-23 

filament-alarmuntitled.stl 31.38 kb, 15 downloads since 2013-05-23 

You don't have the permssions to download the attachments of this post.

2

Re: [WIP] Out of Filament Alarm - Auto-Pauses/Heater Shutoff when Idle

I really like this idea, but I was wondering if the placement of the sensor is ideal.  I have had problems with some of the filament snapping at the extruder, and I think making the sensor an integral part of the extruder assembly might be the best way to go.  Maybe integrate it into Lawsy's MK4 (thing 47561) extruder assembly as part of the top piece.  This would then prevent both running out of filament as well as filament breakage from ruining a print. 

The other option would be to use a sensor which measures the filament travelling through, and if it senses a stop in filament motion triggered by either out of filament or breakage, it would trigger the alarm.  Probably more complicated but still a viable alternative route.

3

Re: [WIP] Out of Filament Alarm - Auto-Pauses/Heater Shutoff when Idle

Excellent work Adrian.

4

Re: [WIP] Out of Filament Alarm - Auto-Pauses/Heater Shutoff when Idle

I'm just going to switch my idler arm bracket. It's all there already. Lever, spring tension, bearing, arm. When the last piece of filament passes the drive gear, the arm, under spring tension, collapses until the bearing hits the drive. Should be plenty of movement to trip the micro switch.

5

Re: [WIP] Out of Filament Alarm - Auto-Pauses/Heater Shutoff when Idle

nice work!

SD2 - Glass Bed, Fans on PCB and Y motor, Custom enclosure
Slicer - Simplify3D

6

Re: [WIP] Out of Filament Alarm - Auto-Pauses/Heater Shutoff when Idle

Love this.  Although I agree i'd like to see it respond to filament travel as well.  I will be adding this to my machine though regardless. Love it.  I think the filament tension arm is the place for the switch as well.

Good Job!

7

Re: [WIP] Out of Filament Alarm - Auto-Pauses/Heater Shutoff when Idle

Additional thought for the sensor to measure filament travel... maybe a better sensor to do this but my thoughts are paint the side of the rotating part on the bearing half white, half black. Then use an ir sensor array in place of the physical limit switch.  On the firmware side have it count rotations.  As long as the sensor measures X amount of rotations within y time frame everything continues on happily.  If it counts no rotations within the given time frame initiate filament change/shoot!-something-happened alarm.

And then add this with the physical limit switch on the tension arm and you have a great insurance policy... Although I haven't checked to see if there is room on the sanguino. Although I am guessing there is.

8

Re: [WIP] Out of Filament Alarm - Auto-Pauses/Heater Shutoff when Idle

pastprimitive wrote:

Love this.  Although I agree i'd like to see it respond to filament travel as well.  I will be adding this to my machine though regardless. Love it.  I think the filament tension arm is the place for the switch as well.

Good Job!

I put the switch right on the frame , center rear. This works great, it has saved a few prints for me recently. I have my STL posted somewhere.

http://www.soliforum.com/post/27993/#p27993

SD3 w/ mods:
Glass bed with QU-BD heat pad upgrade, threadless ballscrew w/ 8mm smooth rod, spectra line belt replacement, lawsy MK5 extruder, Lawsy replacement carriage, E3D hotend, Ramps 1.4 w/ reprap discount controller, DRV8825 drivers, 12v 30A PS, Acrylic case, Overkill Y-idlers, Filament alarm, Extruder fan + more.

9

Re: [WIP] Out of Filament Alarm - Auto-Pauses/Heater Shutoff when Idle

Okay, change my mind, that's the ticket:) Looks stock. Good job.

10

Re: [WIP] Out of Filament Alarm - Auto-Pauses/Heater Shutoff when Idle

Old thread I know but for completeness I wanted to share another option. Probably the cheapest and most simple is an auditory only alarm that makes noise when you are out of filament. There is a great one here that is loud and has add-on features that can tie into a bowden tube or a filament oiler:  https://engineerdog.com/low-filament-alarm/

11

Re: [WIP] Out of Filament Alarm - Auto-Pauses/Heater Shutoff when Idle

Old thread I know but for completeness I wanted to share another option. Probably the cheapest and most simple is an auditory only alarm that makes noise when you are out of filament. There is a great one here that is loud and has add-on features that can tie into a bowden tube or a filament oiler:  https://engineerdog.com/low-filament-alarm/