tutorial
This commit is contained in:
+93
@@ -0,0 +1,93 @@
|
||||
# Hardware: Wandplotter
|
||||
|
||||
Der Wandplotter ist ein **Polargraph**: eine Gondel hängt an zwei Riemen, die oben links und rechts über Motoren und Umlenkrollen laufen. Es gibt keine X/Y-Schienen. Position entsteht allein aus den beiden Riemenlängen.
|
||||
|
||||
Setup und Software: [tutorial.md](tutorial.md).
|
||||
|
||||
## Baugruppen
|
||||
|
||||
| Teil | Rolle |
|
||||
|------|--------|
|
||||
| **Linker Motor** | NEMA-17-Schrittmotor, Buchse **X** auf der SKR. Wickelt den linken Riemen. Längerer linker Riemen → Gondel nach rechts/unten. |
|
||||
| **Rechter Motor** | Gleicher Typ, Buchse **Y**. Wickelt den rechten Riemen. |
|
||||
| **Umlenkrollen (Idler)** | Oben, Abstand der Mitten **1660 mm**. Die Riemenlänge zählt **von der Rolle zur Gondel**, nicht die Schleife Motor↔Rolle. |
|
||||
| **Riemen / Zahnriemen** | Zwei Längen, max. in der Firmware 3500 mm (`POLARGRAPH_MAX_BELT_LEN`). |
|
||||
| **Gondel** | Hängender Schlitten mit Stifthalter. Gewicht hält die Riemen straff. |
|
||||
| **Servo** | Hebt und senkt den Stift. Marlin: Servo 0, Befehl `M280`. Im Beispiel oft `S120` oben, `S30` unten (an Mechanik anpassen). |
|
||||
| **Steuerung** | BigTreeTech **SKR Mini E3 V3**, STM32G0, USB-CDC zum Rechner. Treiber **TMC2209**, typisch 1200 mA RMS für die X/Y-Motoren. |
|
||||
| **Firmware** | Marlin mit `#define POLARGRAPH`. Kartesische `G1 X… Y…` werden intern in zwei Riemenlängen umgerechnet. |
|
||||
| **Rechner + Browser** | p5-Sketch, Web Serial, eine G-code-Zeile nach der anderen. |
|
||||
|
||||
## Motorzuordnung (Wand → Board)
|
||||
|
||||
| Seite der Wand | Buchse |
|
||||
|----------------|--------|
|
||||
| links | **X** |
|
||||
| rechts | **Y** |
|
||||
|
||||
Z wird für die hängenden Motoren nicht gebraucht. Der „Extruder“ eines 3D-Druckers ist hier der Stift-Servo.
|
||||
|
||||
## Marlin Polargraph (`Configuration.h`)
|
||||
|
||||
Quelle: `MarlinBigTree/Marlin/Configuration.h` und `Configuration_adv.h`. Board: **SKR Mini E3 V3**.
|
||||
|
||||
```c
|
||||
#define POLARGRAPH
|
||||
#if ENABLED(POLARGRAPH)
|
||||
#define POLARGRAPH_MAX_BELT_LEN 3500.0 // mm, Override mit M665 H
|
||||
#define DEFAULT_SEGMENTS_PER_SECOND 5
|
||||
#define PEN_UP_DOWN_MENU
|
||||
#endif
|
||||
|
||||
#define X_BED_SIZE 1660 // Abstand der Umlenkrollen (Mitten)
|
||||
#define Y_BED_SIZE 2000 // Zeichnungs-Höhe unter der Rollenlinie
|
||||
#define X_MIN_POS (-X_BED_SIZE/2) // -830
|
||||
#define X_MAX_POS (X_BED_SIZE/2) // 830
|
||||
#define Y_MAX_POS 800 // Rollenlinie (80 cm über Y=0)
|
||||
#define Y_MIN_POS (Y_MAX_POS - Y_BED_SIZE) // -1200
|
||||
|
||||
#define BED_CENTER_AT_0_0
|
||||
#define MANUAL_X_HOME_POS 0
|
||||
#define MANUAL_Y_HOME_POS -2598.19 // Boot-Pose bei max. gleicher Riemenlänge
|
||||
|
||||
#define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400 } // 16×, 20Z GT2 → 40 mm/U
|
||||
#define DEFAULT_MAX_FEEDRATE { 500, 500, 5 } // mm/s
|
||||
#define DEFAULT_MAX_ACCELERATION { 3000, 3000, 100 }
|
||||
|
||||
#define INVERT_X_DIR false
|
||||
#define INVERT_Y_DIR true
|
||||
|
||||
#define EXTRUDERS 0
|
||||
#define NUM_SERVOS 1
|
||||
#define SERVO_DELAY { 300 }
|
||||
#define DEACTIVATE_SERVOS_AFTER_MOVE
|
||||
```
|
||||
|
||||
`MANUAL_Y_HOME_POS` folgt aus `Y_MAX_POS - sqrt(POLARGRAPH_MAX_BELT_LEN² − (X_BED_SIZE/2)²)` ≈ −2598. Nach dem Einschalten liegt die Maschine dort, nicht an der Blattmitte. Arbeitsursprung setzen mit **`G92 X0 Y0`** in der Blattmitte (80 cm unter den Rollen).
|
||||
|
||||
### Treiber (`Configuration_adv.h`)
|
||||
|
||||
TMC2209, 16× Microsteps, 1200 mA RMS:
|
||||
|
||||
```c
|
||||
#define X_CURRENT 1200
|
||||
#define Y_CURRENT 1200
|
||||
#define X_MICROSTEPS 16
|
||||
#define Y_MICROSTEPS 16
|
||||
```
|
||||
|
||||
`EMERGENCY_PARSER` ist aus.
|
||||
|
||||
### Live nachjustieren
|
||||
|
||||
Zeichnung konisch/schief (erst nach korrektem Home):
|
||||
|
||||
```gcode
|
||||
M665 L-830 R830
|
||||
```
|
||||
|
||||
Motoren zu heiss oder Schrittverlust (Firmware-Default 1200 mA):
|
||||
|
||||
```gcode
|
||||
M906 X1000 Y1000
|
||||
```
|
||||
Reference in New Issue
Block a user