3D Printer:Creamcheese:Config: Difference between revisions

From All Hands Active Wiki
Jump to navigation Jump to search
Nova1313 (talk | contribs)
No edit summary
Nova1313 (talk | contribs)
No edit summary
Line 58: Line 58:
With this value we can get the following M codes to send. We found we had to send them twice to get it to work.
With this value we can get the following M codes to send. We found we had to send them twice to get it to work.
**I DO NOT BELIEVE M215 BELOW MATCHES THE CURRENT CONFIG FOR CREAMCHEESE Z and A Axis!**
**I DO NOT BELIEVE M215 BELOW MATCHES THE CURRENT CONFIG FOR CREAMCHEESE Z and A Axis!**
<nowiki>
<nowiki>
M201 X700 Y700 Z10 A60000 (Sets the maximum acceleration in mm/s^2 for travel or print moves for X/Y/Z and Extruder)
M201 X700 Y700 Z10 A60000 (Sets the maximum acceleration in mm/s^2 for travel or print moves for X/Y/Z and Extruder)
M203 X150 Y150 Z10 A100 (Sets the maximum feedrate your machine can sustain in mm/sec)
M203 X150 Y150 Z10 A100 (Sets the maximum feedrate your machine can sustain in mm/sec)

Revision as of 23:35, 7 August 2012

The Creamcheese makerbot at AHA is special. If your bot is similar to it, use these settings. They are probably a good start if you are using a Makerbot with 3rd generation electronics, 5D RPM firmware from RobG or Jetty, a stepper extruder (with 3MM filament) and using either the 5D 3D shield or an ugly cable hack

Makerbot Machines Configuration options

ReplicatorG machines config file

These settings were configured for use with ReplicatorG 0029 R2. I started with RobG's XML file and made the following modifications/observations.

Completed config can be found on the main 3D printer page.

To start, find a profile from RobG's config that closely matches your setup. In my case it was Cupcake 3G electronics with Gen4 extruder. I had a gen3 previously but planned to run Gen3 electronics also on a new stepper extruder. The important part is that you pick one with stepper extruder. The reason for picking Gen3 electronics is that the X, Y and Z axis should be preconfigured for the right sizes. If you find after this setup that they move too far or too short when you move the platform from control in replicatorg, copy the stepspermm values for these axis from your prior configuration.

Robs files I started with are found linked from here: THING!

Calculating Stepspermm

Steps per MM in the basic config uses 1/2 steps for all Axis. If you use different stepper drivers divide by 2 and multiply by the amount of microstepping you are doing. Gen4 drivers are 1/8 step. Pololu like we use are max of 1/16 step. We have ours set to 1/8 step for X and Y, 1/4 step for Z and full step for A.

When using RPM (driver=makerbot4ga) the A axis stepspermm is ignored When using 5D (driver=makerbot4g) the A axis stepspermm is used (calculation below in Jetty firmware). If you have scale listed in your config just switch the word to stepspermm.

Set your max feed rate to something your bot can do realistically. If you use acceleration set them higher since the bot will control how fast it moves but will still limit by these. Ours are set to 8000 with acceleration.

Calculating motor_steps

If you are using the 4ga driver you will need to configure the motor steps parameter under the extruder setup in the machines config file. This is how many steps to turn 1 rotation. If your stepper motor does 200 steps per axis then multiply by the amount of microstepping. If you have gearing between the stepper and the filament drive, multiply by that.

In our case our stepper does 200 steps per turn, 1/2 stepping with 13.6:1 gearing so we use a value of: 5440 (200x2x13.6)

How to calculate motor_steps

Degree of rotation of your stepper per step is needed. Kysan 13.6:1 steppers (makergear type) move 1.8 degree per step.

Stepper controller microstepping settings are needed. Makerbot Gen3 electronics do half stepping, Gen4 can do 1/16 stepping. The calculations below include half stepping.

(Degrees in a circle / steping degree) * microstepping * motor gearing (360 / 1.8) * 2 * 13.6 = 5440

I plug this value in and try to rotate 1 rotation. It moved a bit further than I wanted so I fudged it with 5420 as my setting.

New 16th step driver config: (Degrees in a circle / steping degree) * microstepping * motor gearing (360 / 1.8) * 16 * 13.6 = 43520

Jetty firmware acceleration settings

Using acceleration on a cupcake requires telling the firmware how to move when accelerated. We do this by sending M codes to the bot using a special version of replicatorg.

First figure out how many steps to pull in 1 MM of filament. Extruder stepper motor takes 5440 steps (@1/2 stepping) to turn the pully on it 1 rotation. The pully is the Mk5 pully which has an effective diameter of 10.58mm.

Pi x D = C The circumference of our Mk5 pully is 33.238 (direct drive).

Values for our (13.6:1 geared direct drive stepper) Steps per MM 43520 / 33.238 = 1309.345 (1/16th step) 21760 / 33.238 = 654.672 (1/8th step) 5440 / 33.238 = 163.66 (1/2 step) 2720 / 33.238 = 81.834 (full step)

With this value we can get the following M codes to send. We found we had to send them twice to get it to work.

    • I DO NOT BELIEVE M215 BELOW MATCHES THE CURRENT CONFIG FOR CREAMCHEESE Z and A Axis!**
M201 X700 Y700 Z10 A60000 (Sets the maximum acceleration in mm/s^2 for travel or print moves for X/Y/Z and Extruder)
M203 X150 Y150 Z10 A100 (Sets the maximum feedrate your machine can sustain in mm/sec)
M204 S2000 K4000 (Sets the default acceleration in mm/sec^2. S=normal moves K= filament only moves)
M205 S0 K0 Z2 (Sets "S" Minimum Printing Feed Rate, "K" Minimum Travel Feed Rate, "Z" Minimum Planner Speed - all multiplied by 10, except Minimum Planner Speed)
M206 S43 A50 K40 X4 Y1 (Sets "S" noodle diameter multiplied by 100, "A" RevMaxFeedRate, "K" Extruder Deprime multiplied by 10, "X" SlowdownLimit, "Y" ClockwiseExtr)
M207 S850 A900 K200 (Set "S" JKN Advance K - multiplied by 100000, "A" JKN Advance K2 - multiplied by 100000, "K" Minimum Segment Time multiplied by 10000 in seconds)
M208 A152 (Set Extruder Steps:mm, the number of steps to extruder 1 mm of noodle - multiplied by 10)
M209 S3 (acceleration on - planner, also disables override gcode temp)
M215 X9413970 Y9413970 Z32000000 A1636600 (Sets the number of steps to move 1 mm for each axis. The extruder is the for filament going in - all multiplied by 100000)
M216 X100 Y100 Z5 A100 (Sets Maximum Speed Change for X/Y/Z/Extruder - all multiplied by 10)
M200 (reset to pick up settings)

M208 is a guessed value, this is roughly 3 times the amount for the thingomatic since we have more steps per mm of input at current setting (my guess is output is almost 3x as much also)

Changes to machines config file to raise the max feedrate to around 8000 for x/y axis and 10000 for Z were also made.

Slic3r: Setting up a base config.ini

Soon to come!

Skeinforge: Start and End GCODE files

We don't have a thing-o-matic so I swapped these on the profile to be the working versions from a Cupcake. These are located where your new skeinforge profile is. On linux for me it was /home/worman/.replicatorg/sf_40_profiles/(profile name here)/alterations/

Skeinforge: Replace.csv

Skeinforge seems to generate a M113 code which replicatorg doesn't like for my electronics. You can change this by creating a tab delimited file in the alterations directory. This comments out the lines we don't care about. The pointer to this file in Skeinforge gets reset to be "value" instead of replace.csv in later versions. If this happens to you and it is ignoring your replace settings, edit the export settings in skeinforge. More information below.

Mine looks like:

M113 S1.0 ;M113 S1.0

M113 S0.0 ;M113 S0.0

Skeinforge: Modules

Of the default modules I made the following changes.

  • Home: Disable (We don't have limit switches, bot freaks out)
  • Wipe: Disable (We don't have a place to wipe, results in nozzle crap in prints if you don't clean it off manually after test extrusion)
  • Temperature:
    • Changed Base temp to something we like 220 (defaults to 225)
    • Interface runs cooler 215 (we don't want it as sticky)
    • Infill on first layer a bit warmer (220)
    • Support settings are all 220.
  • Speed
    • Feed rate (How fast X,Y,Z move when extruding, can override in POM): 35, faster and bot missed steps.
    • Flow rate (How fast A moves to extrude by default): 40.0
    • Orbital feed rate (Don't know but this works): .6
    • Travel feed rate (How fast x,y,z move when not extruding): 35, faster and it missed steps.
  • Export: name of replace file is set to replace.csv . Changing skeinforge versions screws this up. This is needed to solve the M113 not okay with ReplicatorG errors
  • Fill
    • Solid surface layers: 2
    • Infill Pattern: Grid Haxagonal (I like the look, might slow the bot down)
    • Thread sequence: Loops>Perimeter>Infill may want to do infill before permiter if you have issues with overhangs falling
  • Raft: We had issues with raft generating too high of movement feedrates, these changes resolved this
    • Base feed rate multiplier: .6
    • Base nozzle lift over Base Layer Thickness: .8 (Just made things look better)
    • Interface feed rate: 1.0 (1.1 moved so fast that the head lost steps, but otherwise this would work okay)
    • Interface Flow rate multiplier: .6 (This produces a thick interface layer, increase to make non-thick layers.
    • Interface infill density: .4
    • Interface layer thickness over layer thickness: .7
    • Interface layers (integer): 1
    • Interface nozzle lift over interface layer thickness (ratio): .2
    • The rest of the settings indicate changes (blue/yellow) but I kept the ones from the thingomatic profile I copied.
  • Reversal
    • Reversal speed RPM: 20.0 This was originally set higher but during reversal for infill layers the stepper would retract too fast (40RPM?) and pull back too much filament into the nozzle. I could visually see the retraction but very little was moving for the forward movement during the pushback time of 82 milliseconds. This caused most infill layers to not have any plastic extruded. I think ideally I could have changed pushback time but instead I went with the change to reversal speed as this also stopped the horrible noise the A axis stepper was making as I assume it skipped steps. My thought is that the acceleration on this axis was actually too fast to get to 40rpm in the allotted time. This works and the calibration cubes then looked great.