MAS 863
How To Make (almost) Anything
2010

Waterjet Cutter, NC Mills

machines
   Roland Modela
   ShopBot mill/router
   Hurco VM10U 5-axis machining center
   Harrison Alpha lathe
   Omax waterjet
   MTM

toolpaths
   kerf, offset, conventional/climb, lead-in/out
   Modela Player
   ShopBot PartWorks
   FeatureCAM
   Omax Layout
   fab modules

file formats
   .rml
   .sbp
   .g
   .ord

tooling
   flutes
   center-cutting
   direction
   end types
   cut types
   coatings

stock
   rigid foam insulation
   veneer plywood
   medium density fiberboard (MDF)
   medium density overlay (MDO)
   oriented strand board (OSB)
   aluminum
   Lexan, polycarbonate
   glass

vendors
   McMaster-Carr
   Home Depot
   Admiral Metals
   Boulter Plywood
   Steritt Lumber
   Beacon Sales

speeds and feeds

lubricants

fixturing

flexures

safety
   cuts, burns, impacts, fires
   glasses, shoes, clothes, hair
   emergency stop, assistance
   cutting air

commands
   stl_png in.stl out.png [units [resolution [axis]]]
      in.stl = input binary STL file
      out.png = output PNG file
      units = file units (optional, mm/unit, default 1)
      resolution = image resolution (optional, pixels/mm, default 10)
      axis = projection axis (optional, top or bottom, x|X|y|Y|z|Z, default z)

   command line: png_path in.png out.path [intensity_top [error [diameter [number [overlap [z_top [z_number z_bottom [intensity_bottom]]]]]]]]
      in.png = input PNG file
      out.path = output path file
      intensity_top = top slice intensity (optional, 0-1, default 0.5)
      error = allowable vector fit deviation (optional, pixels, default 1.1)
      diameter = diameter to offset (optional, mm, default 0)
      number = number of contours to offset (optional, -1 to fill all, default 1)
      overlap = tool overlap fraction (optional, 0 (no overlap) - 1 (complete overlap, default 0.5))
      z_top = top slice z value (optional, mm, default 0)
      z_number = number of z slices (optional, default 1)
      z_bottom = bottom slice z value (optional, mm, default z_top)
      intensity_bottom = bottom slice intensity (optional, 0-1, default intensity_top)

   command line: path_append in1.path in2.path out.path [dx [dy]]
      in1.path = first input path file
      in2.path = second input path file
      out.path = appended output path file
      dx = in1 horizontal offset (optional, mm, default 0)
      dy = in1 vertical offset (optional, mm, default dx)
   
   command line: path_array in.path out.path nx ny [dx [dy]]
      in.path = input path file
      out.path = output path file
      nx = number of horizonal array elements
      ny = number of vertical array elements
      dx = array element horizontal spacing (optional, mm, default 0)
      dy = array element vertical spacing (optional, mm, default dx)

   path_ps in.path out.ps
      in.path = input path file
      out.ps= output PostScript file
   
   path_view in.path [viewer]
      in.path = input path file
      viewer = PostScript viewer [default evince]

   path_rml in.path out.rml [speed [x0 y0 [z0 [z_up [direction]]]]]
      in.path = input path file
      out.rml = output Roland Modela file
      speed = cutting speed (optional, mm/s, default 4)
      x0 = left position (optional, mm, default path value)
      y0 = front position (optional, mm, default path value)
      z0 = bottom position (optional, -mm, default path value)
      z_up = toop up position (optional, mm, default 1)
      direction = machining direction (optional, 0 conventional/1 climb, default 1)

   path_sbp in.path out.sbp [direction [spindle_speed [xy_speed z_speed [xy_jog_speed z_jog_speed z_jog]]]]
      in.path = input path file
      out.sbp = output ShopBot file
      direction = machining direction (optional, 0 conventional/1 climb, default 0)
      spindle_speed = spindle speed (optional, if control installed, RPM, default 12000)
      xy_speed = xy cutting speed (optional, mm/s, default 30)
      z_speed = z cutting speed (optional, mm/s, default 30)
      xy_jog_speed = xy jog speed (optional, mm/s, default 150)
      z_jog_speed = z jog speed (optional, mm/s, default 150)
      z_jog = z jog height (optional, mm, default 25)
   
   path_g in.path out.g [direction [z_jog [feed [z_feed [spindle [tool [coolant]]]]]]
      in.path = input path file
      out.g = output G-code file
      direction = machining direction (optional, 0 conventional/1 climb, default 0)
      z_jog = z jog height (optional, mm, default 25)
      feed = feed rate (optional, mm/s, default 100)
      z_feed = z plunge rate (optional, mm/s, default xy feed rate)
      spindle = spindle speed (optional, RPM, default 5000)
      tool = tool number (optional, default 1)
      coolant = coolant on/off (optional, 0=off/1=on, default 1)

   command line: path_ord in.path out.ord [lead [quality [xstart ystart]]]
      in.path = input path file
      out.ord = output Omax waterjet file
      lead = lead in/out (optional, mm, default 2)
      quality = cut quality (optional, default -3)
      xstart,ystart = start position (optional, mm, default path start)

assignment
   week 1
      make something big
   week 2 (no class)
      prepare a final project proposal
         what are you going to make?
         what will it do?
         how will you make it?
         what are the materials, components, and systems?
         what questions will need to be resolved?
         what is the schedule?
         what is the budget?
      make a rapid-prototyping machine (joint class project)

gurus
   machining
      CBA shop: Dina E El-Zanfaly
      Arch. shop: Dimitris Papanikolaou
   waterjet cutting
      CBA Shop: Sofia Berinstein
      Arch. shop: Zhe Huang

lab sections
   machining
      CBA shop: Tom Lutz
      Arch. shop: Nick Gelpi
   waterjet cutting
      CBA shop: John DiFrancesco
      Arch. shop: Skylar Tibbits
   machine building
      David Carr, Jonathan Ward