Broken Filament Detector

From BITPlan Wiki
Revision as of 18:34, 18 June 2019 by Wf (talk | contribs) (→‎Improvement options)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

see facebook post

Issue

The filament detector connection broke off

BrokenFilamentSensorIMG 3088.JPGFixIMG 3105.JPG

Workaround

As a first workaround a cable binder is in place:

WorkaroundIMG 3102.JPG

Original part

Geeetech_20181031065911.jpg Geeetech Filament Detector Module

Improvement options

8d14f043697a3e03d60666f4b21689f7_preview_featured.jpg

Improved workaround

While waiting for the shipment I designed a part to be attached to the broken Detector.

FixImg 3106.png

Instead of glue i simply used a cable binder wrapped around the whole detector: FixIMG 3115.JPG

Geeetech A10 Filament detector fix

The preview below currently only works for older JSCad code using the CSG syntax. See OpenJsCad Issue 448 <jscad>// title : Geeetech A10 Filament detector fix // author : Wolfgang Fahl // license : Apache License // revision : 0.0.1 // tags : Geeetech, A10 // file : FilamentDetectorFix/main.jscad


function fix() {

 l=21.4;
 w=7.85;
 h=3.5;
 rout=5;
 rin=2.5;
 hw=3;
 hl=6;
 hh=2.5;
 var parts=[];
 var holes=[];
 parts.push(cube({size:[w,l,h],center:true}).translate([0,0,h/2]));
 parts.push(cylinder({r: rout,h:h,center:true}).translate([0,l/2,h/2]));
 holes.push(cylinder({r: rin,h:h,center:true}).translate([0,l/2,h/2]));
 for (fx=-1;fx<=1;fx+=2) {
   holes.push(cube({size:[hw,hl,hh],center:true}).translate([fx*(hw+3)/2,(l-hl-rout)/2,(h+hh)/2]));
 }
 return difference(union(parts),union(holes));

}

function main() {

 return fix();

}</jscad>

Source code

Just cut&paste the source code below to https://www.openjscad.org/

// title      : Geeetech A10 Filament detector fix
// author     : Wolfgang Fahl
// license    : Apache License
// revision   : 0.0.1
// tags       : Geeetech, A10
// file       : FilamentDetectorFix/main.jscad


function fix() {
  l=21.4;
  w=7.85;
  h=3.5;
  rout=5;
  rin=2.5;

  hw=3;
  hl=6;
  hh=2.5;

  var parts=[];
  var holes=[];
  parts.push(cube({size:[w,l,h],center:true}).translate([0,0,h/2]));
  parts.push(cylinder({r: rout,h:h,center:true}).translate([0,l/2,h/2]));
  holes.push(cylinder({r: rin,h:h,center:true}).translate([0,l/2,h/2]));
  for (fx=-1;fx<=1;fx+=2) {
    holes.push(cube({size:[hw,hl,hh],center:true}).translate([fx*(hw+3)/2,(l-hl-rout)/2,(h+hh)/2]));
  }
  return difference(union(parts),union(holes));
}

function main() {
  return fix();
}