Updated v2.0 Assembly instructions and BOM.
|
Before Width: | Height: | Size: 140 KiB After Width: | Height: | Size: 140 KiB |
|
Before Width: | Height: | Size: 100 KiB After Width: | Height: | Size: 100 KiB |
@@ -47,8 +47,20 @@ UL {
|
||||
<h1>Snappy RepRap Assembly Instructions</h1>
|
||||
<ol>
|
||||
<li class="section"><h2>XY Motor Assembly</h2>
|
||||
<div class="desc">Press-fit a drive gear onto the shaft of a stepper motor, making sure to align the flat of the shaft with the flat of the shaft hole. Repeat this with the other drive gear and another stepper. Lubricate the drive gear teeth with mineral oil.</div>
|
||||
<table><tr><td class="befor"><img src="xy_motor_assembly_before.png"></td><td class="arrow"><img src="arrow.png"></td><td class="after"><img src="xy_motor_assembly_after.png"></td></tr></table>
|
||||
<ul>
|
||||
<li class="step"><h3>Step 1</h3>
|
||||
<div class="desc">Print a drive gear with high (around 50%) infill density. Insert a 3mm nut into the slot on the bottom of the drive gear. Push it down the slot until the holes line up with the hole in the nut.</div>
|
||||
<table><tr><td class="befor"><img src="xy_motor_assembly_1_before.png"></td><td class="arrow"><img src="arrow.png"></td><td class="after"><img src="xy_motor_assembly_1_after.png"></td></tr></table>
|
||||
</li>
|
||||
<li class="step"><h3>Step 2</h3>
|
||||
<div class="desc">Thread a 3mm diam (12mm long) bolt just through the inserted nut.</div>
|
||||
<table><tr><td class="befor"><img src="xy_motor_assembly_2_before.png"></td><td class="arrow"><img src="arrow.png"></td><td class="after"><img src="xy_motor_assembly_2_after.png"></td></tr></table>
|
||||
</li>
|
||||
<li class="step"><h3>Step 3</h3>
|
||||
<div class="desc">Slide a drive gear onto the shaft of a stepper motor, making sure to align the flat of the shaft with the flat of the shaft hole. Tighten the set screw onto the shaft flat. Repeat this with the other drive gear and another stepper. Lubricate the drive gear teeth with mineral oil.</div>
|
||||
<table><tr><td class="befor"><img src="xy_motor_assembly_3_before.png"></td><td class="arrow"><img src="arrow.png"></td><td class="after"><img src="xy_motor_assembly_3_after.png"></td></tr></table>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="section"><h2>Y Motor Segment Assembly</h2>
|
||||
<ul>
|
||||
@@ -304,8 +316,19 @@ UL {
|
||||
</li>
|
||||
<li class="section">
|
||||
<h2>RAMPS Wiring</h2>
|
||||
<div class="desc">Heres a diagram of what needs to be connected where on a RAMPS 1.4 controller board.</div>
|
||||
<img src="RAMPS_Wiring_For_Snappy.png"></li>
|
||||
<div class="desc">
|
||||
<p>Heres a diagram of what needs to be connected where on a RAMPS 1.4 controller board.</p>
|
||||
<p><a href="RAMPS_Wiring_For_Snappy.png"><img width="800" height="600" src="RAMPS_Wiring_For_Snappy.png"></a></p><p>Click on the image to enlarge.</p>
|
||||
|
||||
</div>
|
||||
</li>
|
||||
<li class="section">
|
||||
<h2>Marlin Firmware for RAMPS</h2>
|
||||
<div class="desc">
|
||||
You can find Marlin firmware pre-configured for the Snappy with a RAMPS 1.4 controller at
|
||||
<a href="https://github.com/revarbat/snappy-reprap/tree/v2.0/firmware">https://github.com/revarbat/snappy-reprap/tree/v2.0/firmware</a>
|
||||
</div>
|
||||
</li>
|
||||
</ol>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
|
Before Width: | Height: | Size: 99 KiB After Width: | Height: | Size: 99 KiB |
|
Before Width: | Height: | Size: 78 KiB After Width: | Height: | Size: 78 KiB |
|
Before Width: | Height: | Size: 101 KiB After Width: | Height: | Size: 101 KiB |
|
Before Width: | Height: | Size: 64 KiB After Width: | Height: | Size: 64 KiB |
|
Before Width: | Height: | Size: 75 KiB After Width: | Height: | Size: 74 KiB |
|
Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 62 KiB |
|
Before Width: | Height: | Size: 90 KiB After Width: | Height: | Size: 90 KiB |
|
Before Width: | Height: | Size: 49 KiB After Width: | Height: | Size: 49 KiB |
BIN
docs/assembly/xy_motor_assembly_1_after.png
Normal file
|
After Width: | Height: | Size: 70 KiB |
BIN
docs/assembly/xy_motor_assembly_1_before.png
Normal file
|
After Width: | Height: | Size: 36 KiB |
BIN
docs/assembly/xy_motor_assembly_2_after.png
Normal file
|
After Width: | Height: | Size: 82 KiB |
BIN
docs/assembly/xy_motor_assembly_2_before.png
Normal file
|
After Width: | Height: | Size: 51 KiB |
BIN
docs/assembly/xy_motor_assembly_3_after.png
Normal file
|
After Width: | Height: | Size: 47 KiB |
BIN
docs/assembly/xy_motor_assembly_3_before.png
Normal file
|
After Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 46 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 83 KiB After Width: | Height: | Size: 83 KiB |
|
Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 62 KiB |
|
Before Width: | Height: | Size: 84 KiB After Width: | Height: | Size: 84 KiB |
|
Before Width: | Height: | Size: 57 KiB After Width: | Height: | Size: 57 KiB |
|
Before Width: | Height: | Size: 57 KiB After Width: | Height: | Size: 57 KiB |
|
Before Width: | Height: | Size: 64 KiB After Width: | Height: | Size: 64 KiB |
|
Before Width: | Height: | Size: 68 KiB After Width: | Height: | Size: 68 KiB |
|
Before Width: | Height: | Size: 51 KiB After Width: | Height: | Size: 51 KiB |
@@ -43,13 +43,67 @@ use <z_sled_parts.scad>
|
||||
hide_endcaps = false;
|
||||
|
||||
|
||||
module xy_motor_assembly(explode=0, arrows=false)
|
||||
module xy_motor_assembly_1(explode=0, arrows=false)
|
||||
{
|
||||
// view: [0, 0, 0] [225, 0, 330] 140
|
||||
// desc: Print a drive gear with high (around 50%) infill density. Insert a 3mm nut into the slot on the bottom of the drive gear. Push it down the slot until the holes line up with the hole in the nut.
|
||||
drive_gear();
|
||||
down(explode/2-(gear_base-1)/2) {
|
||||
right(motor_shaft_size/2+1.5) {
|
||||
yrot(90) {
|
||||
color("silver") metric_nut(size=set_screw_size, hole=true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Construction arrow.
|
||||
if(arrows && explode>10) {
|
||||
down(explode/4) {
|
||||
right(motor_shaft_size/2+1.5) {
|
||||
yrot(90) arrow(size=explode/6);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
//!xy_motor_assembly_1(explode=100, arrows=true);
|
||||
//!xy_motor_assembly_1();
|
||||
|
||||
|
||||
|
||||
module xy_motor_assembly_2(explode=0, arrows=false)
|
||||
{
|
||||
// view: [0, 0, 0] [235, 0, 305] 140
|
||||
// desc: Thread a 3mm diam (12mm long) bolt just through the inserted nut.
|
||||
xy_motor_assembly_1();
|
||||
up((gear_base-1)/2) {
|
||||
right(explode/2+motor_shaft_size/2+11.5) {
|
||||
yrot(90) {
|
||||
color("silver") screw(screwsize=set_screw_size, screwlen=12, headsize=set_screw_size*2, headlen=set_screw_size);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Construction arrow.
|
||||
if(arrows && explode>10) {
|
||||
up((gear_base-1)/2) {
|
||||
right(explode/5+motor_shaft_size/2+11.5) {
|
||||
arrow(size=explode/6);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
//!xy_motor_assembly_2(explode=100, arrows=true);
|
||||
//!xy_motor_assembly_2();
|
||||
|
||||
|
||||
|
||||
module xy_motor_assembly_3(explode=0, arrows=false)
|
||||
{
|
||||
// view: [30, 25, 30] [55, 0, 25] 475
|
||||
// desc: Press-fit a drive gear onto the shaft of a stepper motor, making sure to align the flat of the shaft with the flat of the shaft hole. Repeat this with the other drive gear and another stepper. Lubricate the drive gear teeth with mineral oil.
|
||||
// desc: Slide a drive gear onto the shaft of a stepper motor, making sure to align the flat of the shaft with the flat of the shaft hole. Tighten the set screw onto the shaft flat. Repeat this with the other drive gear and another stepper. Lubricate the drive gear teeth with mineral oil.
|
||||
nema17_stepper(h=motor_length, shaft_len=motor_shaft_length, $fa=1, $fs=0.5);
|
||||
up(1+2.1+explode) {
|
||||
drive_gear();
|
||||
xy_motor_assembly_2();
|
||||
}
|
||||
|
||||
// Construction arrow.
|
||||
@@ -59,8 +113,8 @@ module xy_motor_assembly(explode=0, arrows=false)
|
||||
}
|
||||
}
|
||||
}
|
||||
//!xy_motor_assembly(explode=100, arrows=true);
|
||||
//!xy_motor_assembly();
|
||||
//!xy_motor_assembly_3(explode=100, arrows=true);
|
||||
//!xy_motor_assembly_3();
|
||||
|
||||
|
||||
|
||||
@@ -75,7 +129,7 @@ module y_motor_segment_assembly_1(explode=0, arrows=false)
|
||||
// Stepper Motor
|
||||
up(motor_top_z) {
|
||||
up(explode*1.1) {
|
||||
zrot(-90) xy_motor_assembly();
|
||||
zrot(-90) xy_motor_assembly_3();
|
||||
down(motor_length-3) {
|
||||
wiring([
|
||||
[0, 0, 0],
|
||||
@@ -350,7 +404,7 @@ module x_motor_segment_assembly_1(explode=0, arrows=false)
|
||||
// Stepper Motor
|
||||
up(motor_top_z) {
|
||||
up(explode*1.1) {
|
||||
zrot(-90) xy_motor_assembly();
|
||||
zrot(-90) xy_motor_assembly_3();
|
||||
down(motor_length-3) {
|
||||
wiring([
|
||||
[0, 0, 0],
|
||||
|
||||
@@ -59,7 +59,7 @@ UL {
|
||||
|
||||
class GenAssemblyIndex(object):
|
||||
indexfile = "docs/assembly/index.html"
|
||||
markdownfile = "wiki/%s-Assembly.md" % snappy_ver
|
||||
markdownfile = "wiki/{0}-Assembly.md".format(snappy_ver)
|
||||
sourcefile = "full_assembly.scad"
|
||||
modules = []
|
||||
modinfo = {}
|
||||
@@ -70,7 +70,7 @@ class GenAssemblyIndex(object):
|
||||
|
||||
for mod_eng in self.modules:
|
||||
f.write('<li class="section">')
|
||||
f.write('<h2>%s</h2>\n' % mod_eng)
|
||||
f.write('<h2>{0}</h2>\n'.format(mod_eng))
|
||||
|
||||
stepcnt = len(self.modinfo[mod_eng])
|
||||
if stepcnt > 1:
|
||||
@@ -104,9 +104,20 @@ class GenAssemblyIndex(object):
|
||||
f.write('</li>\n')
|
||||
|
||||
f.write('<li class="section">\n')
|
||||
f.write('<h2>%s</h2>\n' % "RAMPS Wiring")
|
||||
f.write('<div class="desc">Heres a diagram of what needs to be connected where on a RAMPS 1.4 controller board.</div>\n')
|
||||
f.write('<img src="RAMPS_Wiring_For_Snappy.png">')
|
||||
f.write('<h2>{0}</h2>\n'.format("RAMPS Wiring"))
|
||||
f.write('<div class="desc">\n')
|
||||
f.write('<p>Heres a diagram of what needs to be connected where on a RAMPS 1.4 controller board.</p>\n')
|
||||
f.write('<p><a href="RAMPS_Wiring_For_Snappy.png"><img width="800" height="600" src="RAMPS_Wiring_For_Snappy.png"></a></p>')
|
||||
f.write('<p>Click on the image to enlarge.</p>\n\n')
|
||||
f.write('</div>\n')
|
||||
f.write('</li>\n')
|
||||
|
||||
f.write('<li class="section">\n')
|
||||
f.write('<h2>{0}</h2>\n'.format("Marlin Firmware for RAMPS"))
|
||||
f.write('<div class="desc">\n')
|
||||
f.write('You can find Marlin firmware pre-configured for the Snappy with a RAMPS 1.4 controller at\n')
|
||||
f.write('<a href="https://github.com/revarbat/snappy-reprap/tree/v2.0/firmware">https://github.com/revarbat/snappy-reprap/tree/v2.0/firmware</a>\n')
|
||||
f.write('</div>\n')
|
||||
f.write('</li>\n')
|
||||
|
||||
f.write('</ol>\n')
|
||||
@@ -118,14 +129,14 @@ class GenAssemblyIndex(object):
|
||||
f.write("# Snappy RepRap Assembly Instructions\n\n")
|
||||
|
||||
for mod_eng in self.modules:
|
||||
f.write('## %s\n\n' % mod_eng)
|
||||
f.write('## {0}\n\n'.format(mod_eng))
|
||||
|
||||
stepcnt = len(self.modinfo[mod_eng])
|
||||
for stepinfo in self.modinfo[mod_eng]:
|
||||
stepinfo['base'] = \
|
||||
'https://raw.githubusercontent.com/' \
|
||||
'revarbat/snappy-reprap/%s/docs/assembly/' % \
|
||||
snappy_ver
|
||||
stepinfo['base'] = (
|
||||
'https://raw.githubusercontent.com/'
|
||||
'revarbat/snappy-reprap/{0}/docs/assembly/'
|
||||
).format(snappy_ver)
|
||||
|
||||
if stepcnt > 1:
|
||||
f.write('### Step {step}\n\n'.format(**stepinfo))
|
||||
@@ -140,14 +151,19 @@ class GenAssemblyIndex(object):
|
||||
'({base}{module}_after.png)\n\n'
|
||||
.format(**stepinfo)
|
||||
)
|
||||
f.write('## %s\n\n' % "RAMPS Wiring")
|
||||
f.write('## {0}\n\n'.format("RAMPS Wiring"))
|
||||
f.write('Heres a diagram of what needs to be connected where on a RAMPS 1.4 controller board.\n\n')
|
||||
f.write('[](%s-RAMPS_Wiring_For_Snappy.png)\n' % (snappy_ver, snappy_ver))
|
||||
f.write('Click to enlarge.\n\n')
|
||||
f.write('[]({0}-RAMPS_Wiring_For_Snappy.png)\n'.format(snappy_ver))
|
||||
f.write('Click on the image to enlarge.\n\n')
|
||||
|
||||
f.write('## {0}\n\n'.format("Marlin Firmware for RAMPS"))
|
||||
f.write('You can find Marlin firmware pre-configured for the Snappy with a RAMPS 1.4 controller at\n')
|
||||
f.write('https://github.com/revarbat/snappy-reprap/tree/{0}/firmware\n'.format(snappy_ver))
|
||||
|
||||
|
||||
|
||||
def process_module(self, module, desc):
|
||||
print("module: %s" % module)
|
||||
print("module: {0}".format(module))
|
||||
step = 1
|
||||
mod_eng = module.replace('_', ' ') \
|
||||
.title() \
|
||||
|
||||