Skip to content

Instantly share code, notes, and snippets.

@ushiocheng
Last active December 26, 2023 06:43
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ushiocheng/ae28d7730f1941f2dcb68f0de801bb7f to your computer and use it in GitHub Desktop.
Save ushiocheng/ae28d7730f1941f2dcb68f0de801bb7f to your computer and use it in GitHub Desktop.
Rail stopper for MGN9H on 2020 Extrusion
// Rail stopper for MGN9H on 2020 Extrusion
// by github.com/ushiocheng
// WARNING: this is not tested
// variant 0: counterbored hole
// variant 1: rail guide
variant=1;
zfc=0.001; // correcting z-fighting in render view, not actually printable/functional
translate(variant==1?[0,15,10]:[0,0,0])
rotate(variant==1?[180,0,0]:[0,0,0])
difference(){
union(){
cube([18,15,10]);
// Align feature with rail, would be difficult to print
if (variant==1)
translate([6.1,0,-1.8]){
cube([6-0.2,15,1.8+zfc]);
}
}
union(){
// M5x10 BHCS counterbored clearance hole
if (variant==0)
translate([9,8,10-5+zfc]) {
cylinder(h=5,d=10,center=false);
}
translate([9,8,-2]) {
cylinder(h=100,d=5.5,center=false);
}
if (variant==1)
translate([6,8-6/2,-1.8-zfc]){
cube([6,6,1.8+zfc]);
}
// Chamfers, 3 of them on larger part
translate([0-zfc,15+zfc,10+zfc]){
rotate([90,0,0]){
linear_extrude(15+2*zfc){
polygon([
[0,0],
[2,0],
[0,-2]
]);
}
}
}
translate([18-2+zfc,15+zfc,10+zfc]){
rotate([90,0,0]){
linear_extrude(15+2*zfc){
polygon([
[0,0],
[2,0],
[2,-2]
]);
}
}
}
translate([0-zfc,0-zfc,10+zfc]){
rotate([0,90,0]){
linear_extrude(18+2*zfc){
polygon([
[0,0],
[2,0],
[0,2]
]);
}
}
}
// 2 more chamfer on the smaller part
if (variant==1){
translate([6.1-zfc,15+zfc,0-zfc]){
rotate([90,0,0]){
linear_extrude(15+2*zfc){
polygon([
[0,0],
[0,-1.8],
[.5,-1.8]
]);
}
}
}
translate([12-0.1+zfc,15+zfc,0-zfc]){
rotate([90,0,0]){
linear_extrude(15+2*zfc){
polygon([
[0,0],
[0,-1.8],
[-.5,-1.8]
]);
}
}
}}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment