Hendrik Langer
5 years ago
7 changed files with 189 additions and 0 deletions
Binary file not shown.
Binary file not shown.
@ -1,2 +1,152 @@ |
|||||
# Anycubic Kossel Plus |
# Anycubic Kossel Plus |
||||
|
|
||||
|
Set-up guide and related things for the Anycubic Kossel Linear Plus 3D Printer. |
||||
|
|
||||
|
## Getting started |
||||
|
|
||||
|
### Build Marlin |
||||
|
|
||||
|
* [Marlin Repository](https://github.com/MarlinFirmware/Marlin) |
||||
|
* [Instructions for Anycubic Kossel](https://github.com/MarlinFirmware/Marlin/tree/bugfix-2.0.x/config/examples/delta/Anycubic/Kossel) |
||||
|
|
||||
|
```bash |
||||
|
git clone https://github.com/MarlinFirmware/Marlin.git -b bugfix-2.0.x |
||||
|
cd Marlin |
||||
|
cp config/examples/delta/Anycubic/Kossel/Configuration.h Marlin/ |
||||
|
cp config/examples/delta/Anycubic/Kossel/Configuration_adv.h Marlin/ |
||||
|
``` |
||||
|
|
||||
|
Adjust the `Marlin/Configuration.h` for your model: |
||||
|
|
||||
|
> #define ANYCUBIC_KOSSEL_PLUS |
||||
|
> #define ANYCUBIC_PROBE_VERSION 2 |
||||
|
> #define ANYCUBIC_KOSSEL_ENABLE_BED 1 |
||||
|
> |
||||
|
> ( #if ANYCUBIC_PROBE_VERSION == 2 |
||||
|
> #define NOZZLE_TO_PROBE_OFFSET { 0, 0, -15.00 } |
||||
|
> ) |
||||
|
|
||||
|
```bash |
||||
|
virtualenv -p python --no-site-packages . |
||||
|
source bin/activate |
||||
|
pip install -U platformio |
||||
|
pio run |
||||
|
pio run --target upload |
||||
|
``` |
||||
|
|
||||
|
### Set up the 3d printer |
||||
|
|
||||
|
* `Configuration > Advanced Settings > Initialize EEPROM` |
||||
|
* `Configuration > Delta Calibration > Set Delta Height` ( G33 P1 ) |
||||
|
* `Configuration > Delta Configuration > Probe Z-offset` ( Set manually to 15.00 ) |
||||
|
* `Configuration > Delta Calibration > Set Delta Height` ( G33 P1 ) |
||||
|
* connect the Z-Probe and start `Configuration > Delta Calibration > Auto Calibration` |
||||
|
* `Configuration > Delta Calibration > Store Settings` |
||||
|
* `Motion > Bed Leveling > Level bed` followed by `Store Settings` |
||||
|
|
||||
|
use `Configuration > Advanced Settings > Probe Z Offset` to correct the difference and execute the calibration again |
||||
|
|
||||
|
|
||||
|
### optional: tune PID |
||||
|
|
||||
|
#### Nozzle |
||||
|
|
||||
|
(DEFAULT_Kp 22.36 DEFAULT_Ki 1.63 DEFAULT_Kd 76.48) |
||||
|
|
||||
|
* run the following G-Code (e.g. in Proterface) with the nozzle cold: 'M106 S255' & 'M303 E0 C10 S200' |
||||
|
* store measured values: 'M301 P17.96 I1.44 D55.90' |
||||
|
|
||||
|
#### Bed |
||||
|
|
||||
|
(DEFAULT_bedKp 374.03 DEFAULT_bedKi 72.47 DEFAULT_bedKd 482.59) |
||||
|
|
||||
|
* run 'M303 E-1 C8 S60' |
||||
|
|
||||
|
* store measured values: 'M304 P254.09 I44.31 D971.39' |
||||
|
|
||||
|
#### store values in eeprom: |
||||
|
'M500' |
||||
|
|
||||
|
|
||||
|
### Configure Cura |
||||
|
[Cura Profiles](https://www.thingiverse.com/thing:2367365) |
||||
|
|
||||
|
Download the profiles and put the json-Files into: `$HOME/.local/share/cura/4.4/definitions/` |
||||
|
|
||||
|
|
||||
|
## Snippets |
||||
|
|
||||
|
### Firmware backup |
||||
|
|
||||
|
avrdude -p m2560 -c avrispmkII -P /dev/ttyUSB0 -b 115200 -D -U flash:r:factory_kossel.hex:i |
||||
|
avrdude -p m2560 -c avrispmkII -P /dev/ttyUSB0 -b 115200 -D -U eeprom:r:factory_kossel_eeprom.hex:i |
||||
|
|
||||
|
### Litophanes: |
||||
|
|
||||
|
[3dp.rocks Image to Litophane Converter](http://3dp.rocks/lithophane/) |
||||
|
|
||||
|
### Plotting |
||||
|
|
||||
|
use Inkscape and the included [Gcodetools](https://github.com/cnc-club/gcodetools). |
||||
|
A 3d-printable pen holder (to use with rubber-bands) is attached in the `addons/` folder. |
||||
|
|
||||
|
#### Prepare Image |
||||
|
|
||||
|
* Make sure to have everything on a single layer |
||||
|
* At the top bar leave units at px but treat them as mm! |
||||
|
* scale object to desired size |
||||
|
* `Path -> Object to Path` |
||||
|
* `Path -> Combine` |
||||
|
* `Path -> Union` |
||||
|
* `View -> Display mode -> Outline` to preview |
||||
|
* if there are too many nodes: `Path -> Simplify` |
||||
|
|
||||
|
#### Gcodetools |
||||
|
|
||||
|
* `Extensions -> Gcodetools -> Tools library...` select `default` tool |
||||
|
* Diameter: 1.0 |
||||
|
* Feed: 2400 |
||||
|
* Penetration feed: 2400 |
||||
|
* Passing feed: 3600 |
||||
|
* Depth step: 1.0 |
||||
|
|
||||
|
* `Extensions -> Gcodetools -> Orientation points` |
||||
|
* 2-points mode |
||||
|
* Z surface: 0.0 |
||||
|
* Z depth: -1.0 |
||||
|
* move to center of object (0,0 is center of print-bed) and a bit to the right, as the pen is mounted right from the effector (45mm) |
||||
|
|
||||
|
* select object |
||||
|
* `Extensions -> Gcodetools -> Path to Gcode |
||||
|
* Offset along Z axis: 11.0 |
||||
|
* Z safe height for G00 move over blank: 3.0 |
||||
|
* Units: mm |
||||
|
|
||||
|
#### Print |
||||
|
* home printer |
||||
|
* print |
||||
|
|
||||
|
#### Experimental Cura settings: |
||||
|
|
||||
|
> Layer Height: 10 mm |
||||
|
> Initial Layer Height: 10 mm |
||||
|
> Wall Line Count: 1 |
||||
|
> Top/Bottom Thickness: 10 mm |
||||
|
> Print Thin Walls: True |
||||
|
> Infill Density: 0 % |
||||
|
> Default Printing Temperature: 0 °C |
||||
|
> Build Plate Temperature: 0 °C |
||||
|
> Enable Retraction: True |
||||
|
> Retraction Minimum Travel: 2 mm |
||||
|
> Combing Mode: off |
||||
|
> Z Hop When Retracted: True |
||||
|
> Z Hop Height: 2 mm |
||||
|
> Enable Print Cooling: False |
||||
|
> Generate Support: False |
||||
|
> Build Plate Adhesion Type: none |
||||
|
> Slicing Tolerance: Inclusive |
||||
|
> Maximum Resolution: 0.2 mm |
||||
|
|
||||
|
## Original Anycubic Links |
||||
|
|
||||
|
* https://github.com/ANYCUBIC-3D/ANYCUBIC_Kossel_Source_Code |
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,39 @@ |
|||||
|
pen_diameter=9; // stabilo: 9mm // weitere: 11mm |
||||
|
height=65; |
||||
|
thick=1.5; |
||||
|
|
||||
|
$fn=100; |
||||
|
|
||||
|
module rubberband_fix() { |
||||
|
translate([1.5,0,0]) cube([pen_diameter/2+2*thick-3,1.5,1]); |
||||
|
translate([0,1.5,0]) cube([pen_diameter/2+2*thick,1.5,1]); |
||||
|
} |
||||
|
|
||||
|
module all_rubberband_fix() { |
||||
|
translate([0,pen_diameter+2*thick,47+4+4*thick+2]) rubberband_fix(); |
||||
|
translate([0,pen_diameter+2*thick,47+4+4*thick+2-12]) rubberband_fix(); |
||||
|
translate([0,pen_diameter+2*thick,47+4+4*thick+2-24]) rubberband_fix(); |
||||
|
translate([0,pen_diameter+2*thick,4+thick]) rubberband_fix(); |
||||
|
translate([0,pen_diameter+2*thick,4+thick+12]) rubberband_fix(); |
||||
|
translate([pen_diameter/2+2*thick,0,47+4+4*thick+2]) rotate([0,0,180]) rubberband_fix(); |
||||
|
translate([pen_diameter/2+2*thick,0,47+4+4*thick+2-12]) rotate([0,0,180]) rubberband_fix(); |
||||
|
translate([pen_diameter/2+2*thick,0,47+4+4*thick+2-24]) rotate([0,0,180]) rubberband_fix(); |
||||
|
translate([pen_diameter/2+2*thick,0,4+thick]) rotate([0,0,180]) rubberband_fix(); |
||||
|
translate([pen_diameter/2+2*thick,0,4+thick+12]) rotate([0,0,180]) rubberband_fix(); |
||||
|
} |
||||
|
|
||||
|
difference() { |
||||
|
union() { |
||||
|
cube([pen_diameter/2+2*thick,pen_diameter+2*thick,height]); |
||||
|
translate([-22,0,4]) cube([22,pen_diameter+2*thick,47+4*thick]); |
||||
|
translate([-3,0,1]) cube([3,pen_diameter+2*thick,1]); // rubber band bottom |
||||
|
translate([-3,0,47+4+4*thick+2]) cube([3,pen_diameter+2*thick,1]); // rubber band top |
||||
|
all_rubberband_fix(); |
||||
|
} |
||||
|
translate([pen_diameter/2+thick,pen_diameter/2+thick,-0.2]) cylinder(r=pen_diameter/2,h=height+0.4); // pen |
||||
|
translate([-20-12,0,4+2*thick+7]) cube([20,pen_diameter+2*thick,47+thick-7-1]); // fan |
||||
|
translate([-30,0,4+2*thick]) cube([30,pen_diameter+2*thick,7]); // plate |
||||
|
translate([-20-9,0,4]) cube([20,pen_diameter+2*thick,2*thick]); // bottom |
||||
|
//#translate([-30,0,0.33*height]) cube([30,pen_diameter+2*thick,2]); // rubberband cutout |
||||
|
//#translate([-30,0,0.66*height]) cube([30,pen_diameter+2*thick,2]); // rubberband cutout |
||||
|
} |
Loading…
Reference in new issue