diff --git a/scad/contact_printer.scad b/scad/contact_printer.scad index 5b5eb18..37b071c 100644 --- a/scad/contact_printer.scad +++ b/scad/contact_printer.scad @@ -214,7 +214,7 @@ module debug () { //feed feed_panel_picture([FeedPanelPictureX, FeedPanelPictureY, PanelOffsetZ]); - //takeup_panel_picture_motor_mount([FeedPanelPictureX, FeedPanelPictureY, PanelOffsetZ]); + feed_panel_motor_mount([FeedPanelPictureX, FeedPanelPictureY, PanelOffsetZ]); feed_panel_stock([FeedPanelStockX, FeedPanelStockY, PanelOffsetZ]); @@ -225,6 +225,12 @@ module debug () { } translate([ReelX + 50, ReelY, -10]) cube([100, 100, 100], center = true); } + difference() { + union(){ + translate([-ReelX, ReelY, -8]) slip_coupling(); + } + translate([-ReelX + 50, ReelY, -10]) cube([100, 100, 100], center = true); + } translate([ReelX, ReelY, PanelOffsetZ+1]) { rotate([0, 0, BearingRotateZ1]) color("blue") bearing([0, BearingY, BearingZ]); rotate([0, 0, BearingRotateZ2]) color("blue") bearing([0, BearingY, BearingZ]); @@ -738,6 +744,34 @@ module takeup_panel_stock_motor_mount (pos = [0, 0, 0] ) { } } } +module feed_panel_motor_mount_pad (pos = [0, 0, 0], rot = [0, 0, 0]) { + translate(pos) rotate(rot) { + cylinder(r = R(10), h = 17, center = true, $fn = 60); + translate([5, 0, 0]) cube([10, 10, 17], center = true); + } +} + +module feed_panel_motor_mount_pads (pos = [0, 0, 0], rot = [0, 0, 0]) { + translate(pos) rotate(rot) { + feed_panel_motor_mount_pad([TakeupMotorMountX, 0, 0], [0, 0, 180]); + feed_panel_motor_mount_pad([-TakeupMotorMountX, 0, 0], [0, 0, 0]); + feed_panel_motor_mount_pad([0, TakeupMotorMountY, 0], [0, 0, -90]); + } +} + +module feed_panel_motor_mount_m4_bolt_void (pos = [0, 0, 0], rot = [0, 0, 0], H = 30) { + translate(pos) rotate(rot) { + cylinder(r = R(4.25), h = H, center = true); + } +} + +module feed_panel_motor_mount_m4_bolts_voids (pos = [0, 0, 0], rot = [0, 0, 0]) { + translate(pos) rotate(rot) { + feed_panel_motor_mount_m4_bolt_void([TakeupMotorMountX, 0, 0], [0, 0, 30]); + feed_panel_motor_mount_m4_bolt_void([-TakeupMotorMountX, 0, 0], [0, 0, 30]); + feed_panel_motor_mount_m4_bolt_void([0, TakeupMotorMountY, 0]); + } +} module feed_panel_picture (pos = [0, 0, 0]) { OtherX = 25; @@ -795,6 +829,30 @@ module feed_panel_stock (pos = [0, 0, 0]) { } } +module feed_panel_motor_mount (pos = [0, 0, 0]) { + translate(pos) { + translate([FeedPanelPictureOffsetX, 0, 0]) { + difference () { + union () { + difference () { + union () { + translate([0, 0, -(PanelZ/2) - (TakeupCenterColumnZ/2)]) cylinder(r = R(TakeupCenterColumnD), h = TakeupCenterColumnZ, center = true, $fn = 100); + translate([0, 0, -16]) cylinder(r = R(TakeupCenterColumnD), h = 3, center = true, $fn = 100); + feed_panel_motor_mount_pads([0, 0, -11]); + } + translate([0, 0, -4.5]) cylinder(r = R(TakeupCenterVoidD), h = TakeupCenterColumnZ, center = true, $fn = 100); + feed_panel_motor_mount_m4_bolts_voids([0, 0, -8.99]); + } + translate([0, 0, -14]) cylinder(r = R(COUPLING_D), h = 5, center = true, $fn = 100); + translate([0, 0, -10]) magnetic_coupling(); + } + //remove bottom + translate([0, 0, -TakeupCenterColumnZ - 7.875]) cylinder(r = R(TakeupCenterColumnD) + 1, h = TakeupCenterColumnZ, center = true, $fn = 100); + } + } + } +} + module bearing_post_nut (pos = [0, 0, 0]) { translate(pos) difference() { cylinder(r = R(10), h = 5, center = true, $fn = 70); @@ -850,7 +908,7 @@ module l289N_mount (pos = [0, 0, 0]) { } } -PART = "idle_roller_half_a"; +PART = "feed_panel_motor_mount"; LIBRARY = true; if (PART == "panel") { @@ -869,6 +927,8 @@ if (PART == "panel") { feed_panel_picture(); } else if (PART == "feed_panel_stock") { feed_panel_stock(); +} else if (PART == "feed_panel_motor_mount") { + feed_panel_motor_mount(); } else if (PART == "picture_gate") { rotate([-90, 0, 0]) picture_gate(Type = "standard"); } else if (PART == "sprocketed_roller_reinforced") {