Dokumentacja funkcji

Wszystkie funkcje
platformy CNC Timber

Kompletny przewodnik po możliwościach platformy — od konwerterów formatów, przez wizualizację 3D i walidację, po REST API i integrację OPC UA z maszynami produkcyjnymi.

Konwertery Wizualizacja 3D Walidacja BOM Batch REST API Maszyny Formaty OPC UA
Konwertery formatów
Jeden produkt.
Wszystkie formaty.
Platforma obsługuje oba dominujące formaty wejściowe w branży prefabrykacji drewnianej i konwertuje je do wszystkich używanych formatów wyjściowych — bez konieczności posiadania oprogramowania producenta maszyny.
Format wejścia → TCN (TPA) → G-code (Weinmann) → G-code (Hundegger) → G-code (LinuxCNC) → G-code (TwinCAT) → BOM CSV
BTLx v2.0 (XML)
WUP 3.3 / 3.4.1 / 3.5
BTLx v1.0 / v1.1
WOP (WoodWOP .mpr) planowane planowane
WUP → TCN
Weinmann do TPA Compact 6/8
Konwersja plików Weinmann WUP (format Dietrich's, AGACAD, hsbcad) do natywnego formatu TCN sterownika TPA S.p.A., obsługiwanego przez Compact 6 i Compact 8.
  • Obsługa paneli PLA1, PLA2, PLI1 — zewnętrzne i wewnętrzne poszycia
  • Komendy NR → W#2010 NR25_ZSZYWKA.tcn z optymalizacją kolejności (nearest-neighbor TSP)
  • Komendy PP type=221 (kontur zewnętrzny) → PAF_FREZ_R — offset prawy G42
  • Komendy PP type=121 (okna, kieszenie) → PAF_FREZ_L — offset lewy G41
  • Komendy MP type=221 → PAF_MP_FREZ_R (punkty montażowe)
  • Dynamiczne parametry DS/DL/DH — głębokości obliczane z grubości warstw PLA/PLI
  • Konfigurowalny sub_path do podprogramów (.\assets\sub lub ścieżka niestandardowa)
  • Wyświetlanie ELN/ZNR — etykiety do nadruku logistycznego na elementach
⚠️ Ważne: Pliki WUP wymagają zakończeń linii CRLF (\r\n). Format MS-DOS jest obowiązkowy dla wupWorks — platforma automatycznie wykrywa i ostrzega przy plikach z Unix endings (\n).
SC3_wand.WUP → PLA1-SC3.tcn
; WUP — input (Weinmann 3.5)
ANR 1 ELM Wand_SC3 ELN SC3-001
QS 120.0 80.0 ; przekrój słupka
PLA1 10.0 10.0 10.0 10.0 2
NR 1 100 80 0 0 0 1
PP 1 221 0 0 0.0
MP 1 221 650.0 550.0
↓ konwersja (DS = stud_depth + PLA1 thickness)
::HEADER WUP_TO_TCN v2.1
::SIDE=0 DS=125.000
W#2010 NR25_ZSZYWKA.tcn,r0=100,r1=125.0
W#2010 PAF_FREZ_R.tcn,r0=125.0
W#2010 PAF_MP_FREZ_R.tcn,x=650.0,y=550.0
Sterownik docelowyTPA Compact 6 / Compact 8
Format wyjściowyTCN z wywołaniami W#2010
Wersje WUP3.3, 3.4.1, 3.5
Typy paneliPLA1, PLA2, PLI1
Kodowanie wejściaASCII / UTF-16, CRLF
BTLx → G-code / TCN
Open standard do każdej maszyny
BTLx (Building Timber Language XML) to otwarty standard organizacji design2machine.com — eksportowany przez Dietrich's, SEMA, Cadwork i Revit (AGACAD, hsbcad). Platforma obsługuje wersje v1.0, v1.1 i v2.0.
  • JackRafterCut, CutEnd, CutNotch — cięcia piłą 5-osiową z kątem i inklinacją
  • Drilling, CounterSunk — wiercenia z głębokością i średnicą narzędzia
  • Pocket, Slot — kieszenie frezowane z parametrami wejścia i wyjścia
  • Lap, HalfLap — zaciosy i wycięcia ciesielskie
  • Tenon, Mortise — czopy i gniazda (pełne złącza ciesielskie)
  • NailContour, NailPoint — linie i punkty wbijania gwoździ
  • Śledzenie elementów po GUID (BTLx v2.0) — unikalność w multifile
Wand_IW_007.btlx → G-code (WBZ 160)
<!-- BTLx v2.0 — 21 elementów, 88 operacji -->
<Part GUID="a3f2-..." Name="Stud_07">
 <ProcessingElement type="JackRafterCut">
  <Angle>37.5</Angle> <Inclination>90</Inclination>
 </ProcessingElement>
</Part>
↓ G-code DIN 66025 | 5-axis | G43.4 TCP
; JackRafterCut angle=37.5° — Stud_07 [a3f2]
G90 G71 G17 G54
T1 D1 M06 M03 S3000
G43.4 H1
G00 X0.000 Y-50.0 Z200.0
G01 Y110.0 F300
G00 Z200.0
; ... 4 416 linii łącznie
Przeglądarka 3D
Wizualizacja modelu
w przeglądarce
Interaktywny podgląd Three.js WebGL bez żadnej instalacji. Widoczna pełna geometria ściany z oznaczonymi operacjami, słupkami ramy, poszyciem i strefami chronionymi PSF.
Model 3D z geometrią
Słupki ramy jako BoxGeometry, poszycia jako płaskie panele, okna jako wycięcia. Pełna geometria rekonstruowana z pliku WUP lub BTLx.
Three.js r170
Strefy PSF (Protected Surface)
Obszary chronione (stalowe łączniki, okucia, otwory) renderowane jako czerwone półprzezroczyste nakładki. Walidacja domkniętości poligonu.
PSF / PSZ zones
Tryb 2D i eksport PNG
Rzut ortogonalny z Canvas 2D — widok do dokumentacji projektowej. Eksport PNG w rozdzielczości 2× (retina) jednym kliknięciem.
PNG 2× export
Podgląd ścieżek narzędzia
Animacja ruchów G00/G01 na Canvas 2D. Kolorowe oznaczenie typów ruchów: rapid, cut, arc — zweryfikuj program przed produkcją.
G-code preview
Informacje o ścianie
Sidebar wyświetla wymiary ściany, liczbę słupków, ELN/ZNR (etykiety logistyczne), QS (przekrój poprzeczny), typ paneli i warstwy poszycia.
ELN · ZNR · QS
OrbitControls
Obrót, zoom, pan myszką lub dotykiem. Fokus na wybrany element, przełącznik wireframe, reset widoku — pełna eksploracja modelu.
touch-friendly
Walidacja maszyny
Zapobiegaj błędom
przed produkcją
Platforma automatycznie weryfikuje parametry pliku WUP względem fizycznych limitów wybranego modelu maszyny — zanim cokolwiek trafi na halę produkcyjną.
  • Porównanie DS/DL/DH z maksymalną głębokością frezowania modelu maszyny
  • Walidacja domkniętości stref PSF — otwarty poligon powoduje błąd wczytywania w wupWorks
  • Kontrola QS (Querschnitt) — poprawność wymiarów przekroju poprzecznego słupka
  • Detekcja CRLF vs LF — brak CRLF w WUP = fatal crash wupWorks
  • Raport walidacyjny z numerem linii WUP dla każdego ostrzeżenia
🛡️ Przykład: Ściana z DS=180mm załadowana na profil WBS 120 (limit: 120mm) generuje ostrzeżenie WARN: DS=180mm exceeds WBS 120 max depth (120mm) — widoczne zanim wyślesz plik na maszynę.
Raport walidacyjny — 3 ściany
// Maszyna: Weinmann WBS 120 (max 120mm)
 
SC1_wand.WUP — DS=105mm OK
SC2_wand.WUP — DS=110mm OK
 
⚠ SC3_wand.WUP — linia 47:
  WARN: DS=180mm > limit WBS 120 (120mm)
  → użyj WBS 140 (150mm) lub WBZ 160 (200mm)
 
⚠ SC3_wand.WUP — linia 112:
  WARN: PSF strefa #2 — poligon niedomknięty
  → punkt[0] ≠ punkt[last] (Δ=3.2mm)
 
2 ostrzeżenia — wygeneruj poprawiony plik
WBS 120 max głębokość120 mm
WBS 140 max głębokość150 mm
WBZ 160 max głębokość200 mm
PSF wymaganiezamknięty poligon
WUP kodowanieCRLF (\\r\\n) obowiązkowe
BOM — Zestawienie materiałów
Z pliku WUP
do zamówienia materiałów
Automatyczne zestawienie materiałowe generowane bezpośrednio z pliku WUP lub BTLx. Zawiera panele poszycia, słupki ramy, długości cięć i punkty montażowe. Eksport do JSON i CSV.
  • Panele PLA1/PLA2/PLI1 — wymiary, grubość, materiał
  • Słupki ramy QS — przekrój, pozycja X, długość
  • Cięcia frezarskie PP type=221/121 — sumaryczna długość konturów
  • Punkty montażowe MP — liczba nawiertów
  • Zszywki/gwoździe NR — szacunkowa liczba elementów łączących
  • Eksport CSV gotowy do wklejenia w ERP lub arkusz kalkulacyjny
BOM — SC3_wand.WUP (JSON)
{
  "panels": [
    { "type": "PLA1", "thickness": 10, "count": 2 },
    { "type": "PLI1", "thickness": 10, "count": 1 }
  ],
  "studs": [
    { "x": 120.0, "dim1": 80, "dim2": 120 },
    { "x": 625.0, "dim1": 80, "dim2": 120 }
  ],
  "totals": {
    "total_outer_contour_mm": 12480,
    "total_inner_contour_mm": 3640,
    "mp_points": 14,
    "nr_staples": ~120
  }
}
Batch processing
Cały budynek
naraz
Wgraj wszystkie pliki WUP lub BTLx projektu jednocześnie. Platforma przetworzy każdą ścianę równolegle i zwróci pojedynczy ZIP z plikami produkcyjnymi i zbiorczym raportem.
Drag & drop wielu plików
Zaznacz wszystkie pliki WUP projektu i przeciągnij na stronę. Lub wyślij batch przez API z tablicą plików JSON.
Web + API
ZIP z plikami TCN
Jeden plik ZIP zawiera pliki TCN lub G-code dla każdej ściany projektu — gotowy do skopiowania na komputer przy maszynie.
ZIP download
Zbiorczy BOM projektu
Jedno zestawienie materiałowe dla całego budynku — suma paneli, słupków i łączników ze wszystkich ścian. CSV do zamówień hurtowych.
BOM CSV
📦 Endpoint: POST /api/batch/tcn — przyjmuje {"files": [{"name": "SC1.WUP", "content": "base64..."}]} i zwraca ZIP + zbiorczy BOM JSON.
REST API
Headless — integruj
z ERP i MES
Pełne REST API do integracji konwersji WUP/BTLx w dowolnym systemie. FastAPI + Vercel serverless — zero konfiguracji infrastruktury, globalna sieć Edge.
  • Klucze X-API-Key — per-integracja, rotacja przez panel
  • Rate limiting — 30 req/min konwersje, 120 req/min odczyt (slowapi)
  • CORS konfigurowalny przez env CORS_ORIGINS — dla self-hosted
  • Limit rozmiaru pliku 2 MB — bezpieczeństwo i ochrona przed atakami DoS
  • Dokumentacja Swagger UI — /docs z interaktywnym testowaniem
  • Odpowiedzi JSON + plain text (G-code jako PlainTextResponse)
Endpointy
POST /api/parseParsowanie BTLx → JSON
POST /api/gcodeBTLx → G-code DIN 66025
POST /api/wupWUP → viewer + G-code + BOM
POST /api/tcnWUP → pliki TCN
POST /api/wup/bomWUP → BOM JSON lub CSV
GET /api/machinesLista profili maszyn
POST /api/batch/tcnWiele WUP → ZIP TCN
POST /api/wup — pełna odpowiedź
// Request
POST /api/wup Content-Type: application/json
X-API-Key: sk-prod-xxxxxxxxxxxxxxxx
{
  "file": "YU5SMQE...", // base64 .wup
  "machine": "Weinmann WBS/WBZ"
}
 
// Response 200 OK — 680ms
{
  "viewer_data": { "elements": [...] },
  "gcode": "G90 G71 G17 G54\nG00...",
  "lines": 4416,
  "stats": { "ops_generated": 88 },
  "wall_name": "Wand_SC3",
  "machine": "Weinmann WBS/WBZ"
}
Kompatybilność maszyn
Obsługiwany park maszynowy
Profile maszyn zawierają fizyczne limity głębokości, parametry narzędzi i strategie kinematyczne — walidacja jest per-model, nie tylko per-producent.
Model maszyny Producent Max głębokość Max przekrój Przepustowość Specyfika
WBS 120 Weinmann (HOMAG) 120 mm 200×455 mm 800 mb/zmiana Entry-level, 8-narzędzi, 5-osi
WBS 140 Weinmann (HOMAG) 150 mm 200×455 mm 1 400 mb/zmiana 2 wrzeciona, szybkie przezbrojenie
WBZ 160 / powerSIX Weinmann (HOMAG) 200 mm 200×455 mm 2 200 mb/zmiana Agregat podpodłogowy, 6 stron
WALLTEQ M-120 Weinmann (HOMAG) dynamiczna pełna ściana most wielofunkcyjny Grubość zmienna PLA/PLI, insuFill
TPA Compact 6 TPA S.p.A. walidowana EtherCAT + GreenBUS, Windows CE
TPA Compact 8 TPA S.p.A. walidowana TCN W#2010, SIDE#0-5, VARIABLES
Speed-Cut SC-3 Hundegger wysoka (dual belt) Podpodłogowy taśmociąg zrębków
LinuxCNC Open source zależna od konfiguracji G-code RS-274, pełna kontrola
Beckhoff TwinCAT 3 Beckhoff PC-PLC, OPC UA, TwinCAT IoT
Obsługiwane formaty plików
Techniczne szczegóły
formatów
BTLx v2.0 (XML)
Otwarty standard design2machine.com. Drzewo XML z walidacją XSD. GUID na elementy, NURBS curves/patches, skompresowany .btlz. Ostatnia aktualizacja: 09.07.2021.
design2machine.com
WUP 3.5 (Weinmann)
Plik tekstowy MS-DOS, CRLF, ASCII lub UTF-16. Komendy ANR, ELM, ELN, ZNR, QS, PLA1/2, PLI1, NR, PP, MP, PSF, PSZ, PAF. Spec 3.5 — NDA HOMAG.
HOMAG Group
TCN (TPA Compact)
Sekcje SIDE#0-5 (płaszczyzny elementu), blok EXE, sekcja VARIABLES, komendy IF/ENDIF. W#2010 do wywołań sub-programów z parametrami przez rejestry #8500.
TPA S.p.A.
G-code DIN 66025
Standard ISO CNC. G43.4 (TCP kinematics), G17/G18/G19 (płaszczyzna), G43/G44 (kompensacja narzędzia), T/D/M kody narzędzi. Format: TwinCAT / LinuxCNC.
DIN 66025 / ISO 6983
📖 Otwarta dokumentacja BTLx: Schematy XSD i PDFy specyfikacji dla BTLx v1.0, v1.1 i v2.0 są dostępne bezpłatnie na design2machine.com/btlx. WUP i TCN są formatami zamkniętymi — dostępnymi na mocy umów partnerskich z HOMAG i TPA.
OPC UA / MQTT
Dwukierunkowa komunikacja
z maszyną
Platforma łączy się z maszyną przez protokół OPC UA (VDMA Woodworking Companion Specification — OPC 40092) i raportuje postęp produkcji w czasie rzeczywistym przez WebSocket.
  • OPC UA — VDMA OPC 40092, umati interface, TwinCAT 3 / WinNC
  • WebSocket bridge — przeglądarka viewer widzi postęp obróbki live
  • MQTT / Sparkplug B — pub/sub dla systemów ERP i MES
  • Telemetria: temperatura wrzeciona, obciążenie napędów, wskaźniki OEE
  • Topic timber/machine/{id}/job_complete przy zakończeniu elementu
📡 Sterowniki wspierające OPC UA: Beckhoff TwinCAT 3, TPA Compact (nowsze wersje firmware), Emco WinNC. Starsze TPA Compact 6 z Windows CE wymagają OPC UA gateway.
WebSocket ws/machine — live state
// Subskrypcja live state maszyny
const ws = new WebSocket('/ws/machine')
ws.onmessage = ({data}) => {
  const state = JSON.parse(data)
  // state:
  // {
  // status: "running",
  // current_line: 1847,
  // total_lines: 4416,
  // progress_pct: 41.8,
  // spindle_temp: 68.4,
  // feed_rate: 300
  // }
}

CNC Studio — Pełne sterowanie maszyną

Wgraj plik BTLx bezpośrednio do interfejsu sterowania CNC. Generuj G-code DIN 66025 dla maszyn Weinmann WBS/WBZ, symuluj wykonanie z wizualizacją pozycji osi w czasie rzeczywistym lub połącz bezpośrednio ze sterownikiem Beckhoff TwinCAT przez protokół ADS.

Otwórz CNC Studio
📐

G-code DIN 66025

Pełna generacja G-code: cięcia piłą (G43.4 TCP), wiercenie (G81/G83), frezowanie (G41/G40), połączenia na zakładkę, czopy, wpusty — wszystko dla kinematyki Weinmann (osie X/Y/Z/A/C).

🖥️

Integracja TwinCAT ADS

Bezpośrednie połączenie ze sterownikiem Beckhoff TwinCAT CNC przez protokół ADS. Wgrywaj programy, steruj wykonaniem, odczytuj pozycje osi w czasie rzeczywistym — wszystko z przeglądarki.

🎮

Symulacja 3D toru narzędzia

Wizualizacja 3D belki drewnianej z kolorowymi torami narzędzia. Animowana pozycja narzędzia aktualizuje się na żywo podczas wykonania programu.

🔢

Profesjonalny DRO

Wskazanie cyfrowe pozycji osi X, Y, Z, A, C w czasie rzeczywistym. Override prędkości, info o narzędziu, postęp programu — jak prawdziwy sterownik CNC.

Gotowe do użycia

Wypróbuj z własnym
plikiem BTLx lub WUP

Bez instalacji. Bez karty kredytowej. Bez licencji per-maszyna.

Otwórz aplikację → Wróć na stronę główną