API per l’ottimizzazione del taglio di tubi
Sì, esiste un’API per il taglio di tubi. Tagliare tubi, condotte o tubolari a misura è un problema di cutting stock 1D, e lo stesso motore che alimenta l’app CutOptim si richiama via HTTP. Il tuo gestionale, il software di preventivazione o l’MES invia in JSON la distinta di taglio e le lunghezze di barra disponibili e riceve il piano di taglio ottimizzato, il numero di barre e la resa — senza browser, senza clic.
È già disponibile: il motore CutOptim esegue da tempo l’ottimizzazione 1D in produzione per l’app; l’Engine API espone via HTTP lo stesso identico solver, quindi il piano restituito da una chiamata API coincide con quello che mostra l’app.
{
"parts": [
{ "length": 1200, "qty": 8, "meta": { "ref": "RHS-40x40" } },
{ "length": 2450, "qty": 4 }
],
"stock": [{ "length": 6000, "qty": 50, "price": 21.5 }],
"options": { "kerf": 2 }
}- Già disponibile su
POST /v1/optimize/1d— lo stesso motore dell’app, non una versione preliminare. - Validazione gratuita:
POST /v1/validate/1dcontrolla un lavoro senza chiave e senza quota. - Allega un oggetto meta (codice articolo, riga d’ordine) e torna su ogni taglio posizionato.
- Lo sfrido riportato è il residuo utilizzabile: il kerf che lo libera è già detratto.
Perché ne hanno bisogno le officine
Tagliare una commessa di tubi nell’ordine in cui compare in lista lascia uno sfrido su quasi ogni barra, e molti sono troppo corti per essere riutilizzati. Un ottimizzatore 1D ridistribuisce i tagli sulle barre in modo che la commessa richieda il minor numero di barre possibile. A mano non regge con centinaia di pezzi; dentro il tuo software, tramite API, sì.
Cosa invii e cosa ottieni
Invii in JSON le lunghezze dei pezzi (con le quantità) e le lunghezze e i prezzi delle barre disponibili. La risposta contiene il piano di taglio completo barra per barra, il numero di barre, la resa, la lunghezza totale segata e lo sfrido utilizzabile rimasto su ogni barra (kerf già detratto). Chiedi include:["csv","dxf"] e la distinta di taglio torna come file direttamente nella risposta.
Deterministico: riproducibile per preventivi e verifiche
La stessa richiesta restituisce sempre lo stesso piano di taglio: nessuna casualità, nessun orologio nell’algoritmo. Un preventivo costruito da una chiamata API si riproduce a distanza di mesi per una verifica o un ordine ripetuto, e i risultati si possono mettere in cache e confrontare nei test.
Una sintesi di due pagine (PDF in inglese): il problema, cosa invii e cosa ricevi, una richiesta e una risposta, e come costruire sul motore. Pronta da stampare, con un QR che rimanda a questa pagina.
Domande frequenti
Esiste un’API per ottimizzare il taglio di tubi?
POST /v1/optimize/1d. Invii in JSON la distinta di taglio e le lunghezze delle barre a magazzino e ricevi il piano di taglio ottimizzato, il numero di barre, la resa e gli sfridi utilizzabili. È lo stesso motore che gira nell’app CutOptim, richiamabile via HTTP.Posso provarla prima di impegnarmi?
POST /v1/validate/1d controlla una richiesta senza risolverla — gratis, senza chiave API e senza consumare quota — così i tuoi sviluppatori possono verificare che il payload sia corretto mentre costruiscono l’integrazione. L’Engine API vera e propria ha una prova di 14 giorni.Gestisce barre di lunghezze e prezzi diversi?
options.minimizeCost il motore ordina i piani in base al prezzo totale del materiale anziché al numero di barre e restituisce totalPrice insieme al piano — utile quando le barre più lunghe costano in proporzione di più.Come vengono gestiti lo spessore della lama e la rifilatura delle teste?
options.kerf sullo spessore della lama e viene detratto a ogni taglio; options.trim.start e options.trim.end riservano il taglio di squadratura a ciascuna estremità della barra. Lo sfrido riportato su ogni barra è il residuo utilizzabile dopo tutto questo, quindi può tornare direttamente nell’elenco del magazzino. Imposta options.minOffcut per riportare solo i residui abbastanza lunghi da tenere.Può pianificare solo con le barre che ho a magazzino?
options.respectStock e ogni quantità di magazzino diventa un limite rigido: il motore pianifica con le barre che hai davvero, e ogni pezzo che non ci sta torna in unplaced invece di essere tagliato da una barra che non possiedi. Senza, il piano presume di poter acquistare altre barre e ti dice quante ordinarne.