3.8 KiB
Cincinnati CI Fiber Post Output Reference
Project-written summary of OpenNest.Posts.CincinnatiCIFiber, not a vendor
manual or a machine-operation guide. For the separate CL-series post, see
Cincinnati output.
Controller reference used during development: Beckhoff TF5200 | TwinCAT 3 CNC
Programming manual, version 1.33, May 19, 2026
(TF5200_programming_manual_en.pdf). Obtain the applicable documentation from
Beckhoff and Cincinnati. Vendor PDFs and full-text extracts stay outside source
control; redistribution permission has not been established.
Output contract
The current writer uses the Cincinnati machine-sample convention, not a generic TF5200 laser API:
- Header: nest/configuration/material comments;
V.E.MATERIAL,V.E.THICKNESS,V.E.X_SIZE,V.E.Y_SIZE, andV.E.UNIT. Sheet weight is omitted by default. - Startup:
G90,L PROGRAMSTART.NC, thenP3=V.E.R3,$GOTO NP3:, andN0:. - Parts follow plate order.
V.E.R4identifies the part within its sheet; numbered contour labels andV.E.R3continue across sheets for restart lookup. - Each contour:
/L "L0", restart number, rapid to pierce, then interior/L "L2"withG41or exterior/L "L4"withG42; linear lead-in,/L "L6", cutting moves, and/L "ZHSOFF". - Tail:
/L "L0",L PROGRAMEND.NC,M50,M30, and%. - Motion endpoints are sheet-absolute XY. Arc
I/Jare offsets from the arc start, matching the G162 convention; the post does not explicitly emit G162. - Hole subprogram geometry is inlined. Suppressed moves and, by default, wholly scribe contours are omitted.
- Files use UTF-8 without a BOM and CRLF lines. Default accuracy is three decimal places: coordinates trim trailing zeros; dimensional header values retain them.
Configuration and boundaries
See CIFiberPostConfig for macro names, material mappings, unit codes, precision, and table limits. The post is named for the machine family; table size belongs in configuration.
- Assign linear lead-ins before posting, including circular holes. The writer rejects missing or arc-first lead-ins. Its conservative rule cites the G238 compensation-selection restriction in TF5200 §13.2.4.1; do not generalize it to every controller compensation mode.
/Lcalls are skippable;L PROGRAMSTART.NCandL PROGRAMEND.NCare not. Macro bodies, process settings, restart handling, and compensation cancellation belong to the machine configuration. The post does not emit an explicit G40.InchUnitCodedefaults to1;MetricUnitCodedefaults to0but remains unconfirmed. Table limits compare directly with nest dimensions, without unit conversion. Do not assume changing the unit code establishes metric support.- Multiple nonempty plates are written sequentially, but dimensional header values come only from the first plate and the pallet-change tail occurs once. This is not proof of a qualified multi-sheet machine cycle.
- Validation can throw after output has started. Discard any output from a failed post; it may be incomplete. Successful generation and tests do not establish that a program is safe to run on a particular machine.
Verification
Output-contract tests cover a square with a hole, coordinate transforms/formatting, lead-in rejection, table bounds, and suppression/scribe handling. Run:
dotnet test OpenNest.Tests/OpenNest.Tests.csproj --filter FullyQualifiedName~CincinnatiCIFiber
Keep this summary aligned with the implementation and tests. Cite the relevant manual section for controller rules and distinguish those rules from Cincinnati-specific macros and behavior observed in a machine sample.