Je kan er een product tot op de millimeter juist mee uitwerken. Je kan samenstellingen maken, toleranties bepalen, tekeningen genereren en uiteindelijk iets bouwen dat in de werkplaats ook echt past.

Maar hoe langer ik met configuratoren werk, hoe meer ik merk dat geometrie maar één deel van het product is. De vorm vertelt niet waarom iets zo gebouwd is. Een profiel van 40 × 40 × 2 mm kan in CAD op drie plaatsen bijna identiek lijken, terwijl het in werkelijkheid telkens een andere rol heeft in het product.

Dat verschil lijkt klein, maar voor productconfiguratie is het fundamenteel.

De geometrie ziet het resultaat

Neem een eenvoudige werktafel.

De poot kan een kokerprofiel zijn van 40 × 40 × 2 mm, met een lengte die afhangt van de werkhoogte en de dikte van het werkblad. In CAD zie je uiteindelijk gewoon een profiel met een bepaalde lengte. Maar voor het product betekent die poot veel meer: hij hoort bij een frame, staat op de grond, draagt het werkblad en moet uiteindelijk ook zinvolle output opleveren voor productie.

Daar zit voor mij het verschil.

De geometrie toont wat er gebouwd wordt. Het productmodel beschrijft waarom dat onderdeel bestaat, welke rol het speelt en hoe het samenhangt met de rest.

Waarom dat belangrijk wordt bij configuratie

Bij een vast product kan veel kennis stilzwijgend in het CAD-model blijven zitten.

De ontwerper weet waarom een maat 38 mm is, wanneer een gat wel of niet nodig is en welke plaatlengte nog op de plooibank past. Zolang één persoon dat model kent, werkt dat vaak prima. Maar zodra je een configurator bouwt, moet het systeem die kennis ook begrijpen. Wat vroeger in het hoofd van de ontwerper zat, moet dan expliciet beschreven worden.

En dat kan niet alleen in de geometrie.

Een degelijk productmodel moet duidelijk maken welke parameters er zijn, welke waarden geldig zijn, welke onderdelen het product vormen en welke relaties daartussen bestaan. Het moet ook weten welke maten berekend worden, welke constraints altijd moeten kloppen en welke output uiteindelijk nodig is voor prijs, engineering of productie. Pas daarna kan CAD, of een geometry-kernel, daar de juiste vorm van maken.

Niet alles moet semantisch worden

Ik denk trouwens niet dat elk lijntje of elk vlak een uitgebreide betekenis moet krijgen.

Dat zou het systeem vooral zwaarder maken. Het interessante niveau zit voor mij hoger. Ik werk liever met begrippen zoals Profile, Plate, Bend, Material, Constraint of Assembly dan meteen met losse randen, vlakken en coördinaten. Een plaat is immers niet zomaar een vorm, maar een onderdeel dat op een bepaalde manier gemaakt wordt. Een profiel is niet alleen geometrie, maar ook stock, zaaglengte, verbinding en materiaal.

Daar zit kennis in waar je later iets mee kan doen.

Je kan er geometrie mee opbouwen, maar ook een stuklijst, zaaglijst, prijs, productiecontrole of machine-output uit afleiden.

De kernel is daarom niet de bron van waarheid

Zo ben ik ook steeds meer naar mijn eigen geometry kernel gaan kijken.

Toen ik eraan begon, lag de focus vooral op snel geometrie genereren voor configureerbare producten: platen, profielen, gaten, uitsparingen, flenzen, miters en samenstellingen. Dat blijft nuttig. Maar de kernel moet voor mij niet beslissen wat het product betekent.

De kernel moet vooral goed zijn in één ding: een duidelijke technische beschrijving omzetten in geometrie en bruikbare fabricage-informatie. De betekenis van het product zit daarboven. Daar kan bijvoorbeeld beschreven zijn dat een component een poot is, dat vier poten samen een frame dragen en dat een bepaalde plaatlengte begrensd wordt door de beschikbare machine. De kernel krijgt dan een concreet programma en bouwt daar de juiste geometrie uit op.

Dat onderscheid maakt het systeem voor mij veel zuiverder.

Een productmodel kan ook zonder CAD bestaan

Dat vind ik misschien nog het interessantste gevolg.

Als de betekenis van het product niet meer volledig vastzit in een CAD-model, kan dezelfde productkennis doorheen het hele proces gebruikt worden. De configurator, prijsberekening, productiecontrole en geometry engine werken dan elk met dezelfde onderliggende informatie, zonder het product telkens opnieuw te moeten interpreteren. CAD blijft daarbij belangrijk voor detailengineering, maar hoeft niet automatisch ook het enige productmodel te zijn.

Waar ik uiteindelijk naartoe wil

Ik probeer daarom meer in lagen te denken.

Bovenaan staat het product zelf: structuur, parameters, relaties, constraints, materialen en intentie. Daaronder komt logica die waarden berekent of keuzes controleert. Nog een laag lager kan een fabrication layer zitten die weet hoe profielen, platen en verbindingen gemaakt worden. En pas daarna komt de exacte geometrie.

Niet elk product heeft al die lagen nodig. Een eenvoudige configurator moet eenvoudig kunnen blijven. Maar bij complexere producten geeft die scheiding veel meer houvast dan alles rechtstreeks in CAD of in een groot web van regels te stoppen.

Voor mij is dat ondertussen de kern van het idee:

de geometrie beschrijft hoe het product eruitziet. Het productmodel beschrijft wat het product is en waarom het zo opgebouwd is.

Dat verschil lijkt theoretisch tot je een configurator probeert te bouwen die jaren moet meegaan.

Dan wordt het heel praktisch.