M365Con 2027 – gratis online conferentie · 11–22 Jan 2027 · 120 sessions→ m365con.net

Blog · Mirko Peters

Hoe je MES met ERP integreert: een blik vanaf de productievloer

Disclosure: M365.FM host Mirko Peters works at iFAKT GmbH. This page describes the company factually; paid partnerships and links are labelled as advertising.

By ·

Hoe je MES met ERP integreert, vanuit de MES-kant: wat de productievloer van ERP nodig heeft, wat ERP terugkrijgt, hoe je stamgegevens op elkaar afstemt en welke projectvallen je beter kunt vermijden.

Automatically translated with AI from the original post. Read the English original

Om MES met ERP te integreren, spreek je eerst een korte lijst met gegevensobjecten en berichten af. Bouw ze daarna in deze volgorde: stamgegevens, orderrelease, terugmelding vanaf de productievloer en foutafhandeling. Vanuit het MES gezien is de taak eenvoudig: ontvangen wat je moet maken, en melden wat er gebeurd is. De lastige onderdelen zijn dat beide systemen hetzelfde moeten bedoelen met "artikel", "operatie" en "afgerond", en dat iemand eigenaar moet zijn van de fouten. Dit artikel is bedoeld voor productiemanagers die verantwoordelijk zijn voor de productiekant van het project.

Belangrijkste punten

  • Vanuit het MES gezien heeft de integratie twee taken: ontvangen wat er gemaakt moet worden, en met welke gegevens, en terugrapporteren wat er gebeurd is, in een vorm die het ERP kan boeken.
  • Ordermeldingen en referentiegegevens zijn verschillende stromen. In de MES-interface van Microsoft worden producten, stuklijsten en routes apart opgehaald via data-entiteiten of OData.
  • Spreek af wat afgerond betekent, hoe afkeur wordt gemeld en hoe correcties werken, voordat je een interface bouwt.
  • Stamgegevens hebben een eigenaar nodig, een identifier-mapping en een regelmatige controle, want het MES neemt elke fout in ERP-routings en -tijden over.
  • Test bewust fouten en bepaal wie een mislukt bericht te zien krijgt. Een stille wachtrij met afgewezen bevestigingen eindigt in voorraadverschillen.

Wat heeft het MES nodig van het ERP?

Drie dingen, en ze komen op verschillende manieren binnen.

Ten eerste orders. Het MES heeft vrijgegeven productieorders nodig, met product, hoeveelheid, datums en later statuswijzigingen. In de Microsoft-interface voor MES van derden luistert het MES naar een business event wanneer een order wordt vrijgegeven of van status verandert. Andere ERP-systemen gebruiken andere mechanismen, maar het principe blijft gelijk: het ERP kondigt aan, het MES pakt op.

Ten tweede referentiegegevens. Dat is de beschrijving van hoe je het product maakt: artikelen, stuklijsten, routes en insteltijden. Dezelfde Microsoft-pagina vermeldt dat de berichten alleen gebeurtenissen op de productievloer bevatten en geen stamgegevens. Het MES haalt producten, stuklijsten en routes via data-entiteiten of OData uit het ERP. Plan dit als een tweede integratietaak, want dit is de taak die teams het vaakst vergeten.

Ten derde informatie over resources. De ISA-95-standaard noemt vier soorten informatie die systemen uitwisselen tussen het bedrijfs- en het operationele niveau: materiaal, apparatuur, fysieke assets, en personeel met hun rollen en kwalificaties. Als je MES werk toewijst op basis van vaardigheden of machinecapaciteiten, heeft het de versie van deze gegevens nodig die in het ERP of bij HR staat. Maak duidelijk welk systeem de bron is.

Als je SAP, Dynamics 365 of een ander ERP-systeem gebruikt, zijn de vragen dezelfde. Alleen de technische namen veranderen.

Wat heeft het ERP terug nodig van het MES?

Zie het als bevestigingen. De Microsoft-documentatie beschrijft de volgende processen voor de interface: een order starten, geproduceerde en afgekeurde hoeveelheden melden, materiaalverbruik melden, de gebruikte tijd voor een bewerking melden en de order afsluiten. Voor elk proces gebruikt het een apart berichttype. Een eindbericht heeft alleen het productieordernummer nodig, terwijl een hoeveelheidsbericht regels bevat die het artikel, de goede hoeveelheid en een foutoorzaak voor afkeur kunnen bevatten.

Je hoeft dat model niet over te nemen. Wel moet je het volgende beslissen voordat je begint te bouwen:

  • Hoe gedetailleerd is een bevestiging? Per order, per bewerking of per shift?
  • Kan een operator een gedeeltelijke hoeveelheid bevestigen, en wat doet het ERP daarmee?
  • Hoe wordt afkeur gemeld, en welke redencodes bestaan er in beide systemen?
  • Wordt materiaalverbruik op het werkstation gemeten, of berekent het ERP dat op basis van de stuklijst?
  • Hoe worden fouten gecorrigeerd: met een storno, een correctie of een nieuwe bevestiging?
  • Wat betekent "gereed" en wat betekent "afgesloten"? In het procesoverzicht voor productie van Microsoft voegt melding als gereed goederen toe aan de voorraad, terwijl het afsluiten van de order de werkelijke kostprijs berekent en verdere kostenboekingen blokkeert. Jouw ERP trekt de grens mogelijk op een andere plek.

De laatste vraag veroorzaakt de meeste discussie. Planning, financiën en kwaliteit lezen dezelfde status, en elk van hen wil er iets anders uit halen. Leg de definities vast in een korte vergadering met alle drie voordat iemand een interface gaat bouwen.

Hoe koppel je stamgegevens tussen MES en ERP?

Orders zijn transacties. Stamgegevens beschrijven je proces, en het MES erft elke fout die daarin zit. Een routing die een bewerking van 12 minuten vermeldt terwijl die 20 minuten duurt, lijkt op de werkvloer een prestatieprobleem zolang niemand het corrigeert.

Werk deze punten uit voor de pilotlijn:

  1. Benoem de eigenaar van elk object. Een gangbare afspraak is dat het ERP artikelen, stuklijsten en routings beheert, en het MES de instellingen van werkstations en de werkinstructies. Dat is een aanbeveling, geen regel. Belangrijk is dat niemand hoeft te raden.
  2. Breng identificaties in kaart. Het werkcentrum "WC-110" in het ERP kan op de werkvloer "Pers 3" heten. ISA-95 heeft hiervoor zelfs een onderdeel: het aliasservicemodel beschrijft hoe gelijkwaardige identificaties worden gekoppeld en in kaart gebracht, volgens de beschrijving van de standaard door ISA.
  3. Vergelijk bewerkingen. Zet de stappen in de ERP-routing naast de stappen die operators daadwerkelijk uitvoeren. Verschillen komen snel naar boven, bijvoorbeeld een inspectie- of ontbraamstap die alleen op de werkvloer bestaat.
  4. Controleer eenheden, kalenders en tijdzones. Stuks tegenover dozen en lokale tijd tegenover UTC veroorzaken stille fouten.
  5. Stel een wijzigingsregel vast. Wanneer techniek een routing wijzigt, wie vertelt het MES dat, hoe snel komt die informatie aan, en wat gebeurt er met orders die al in uitvoering zijn?
  6. Herhaal de vergelijking volgens een vast schema. Stamgegevens lopen na verloop van tijd uit de pas.

Dit is een hypothetisch voorbeeld. Een ERP-routing heeft drie bewerkingen, maar operators voeren er vijf uit, omdat inspectie en ontbramen jaren geleden zijn toegevoegd en nooit in de routing zijn opgenomen. Het MES kan alleen melden wat de routing bevat. Het ERP toont daardoor bewerking drie als te laat, terwijl de werkvloer simpelweg aan stappen werkt die het ERP niet kent. Niemand heeft iets verkeerd gedaan. De data is onvolledig. Het voorbeeld is verzonnen, maar fabrieken lopen dit soort gaten voortdurend tegen het lijf.

Voor bestandsformaten is B2MML het waard om te kennen. MESA omschrijft het als een set XML-schemadefinities die ISA-95 implementeren, bedoeld voor de integratie van bedrijfssystemen zoals ERP met productiesystemen zoals een MES. Versie 7 voegde een eerste JSON-schema toe. Een gepubliceerd schema geeft je een gemeenschappelijke startwoordenlijst, al neemt het de noodzaak niet weg om het eens te worden over de betekenis van elk veld.

Hoe moet de interface zich gedragen als er iets misgaat?

Het gelukkige pad werkt wel in de demo. Besteed je projecttijd aan de andere paden.

De Microsoft-documentatie laat zien hoe één product zich gedraagt, en dat is een goede aanleiding om vragen te stellen aan je eigen leverancier. Berichten voor hetzelfde productieorder worden verwerkt in de volgorde waarin ze binnenkomen. Berichten voor verschillende orders kunnen in een andere volgorde worden verwerkt, omdat batchtaken parallel draaien. Een mislukt bericht wordt maximaal drie keer opnieuw geprobeerd en daarna als mislukt gemarkeerd. Met een monitorpagina kun je mislukte berichten bekijken, corrigeren en opnieuw verwerken, en een waarschuwing kan een IT-beheerder of een productieleider op de hoogte stellen.

Vertaal dat naar vier vragen voor elk koppelvlak tussen ERP en MES:

  • Wat gebeurt er met een bevestiging die het ERP afwijst, bijvoorbeeld omdat het order al is afgesloten?
  • Wie ziet de fout, en hoe snel?
  • Kan de productievloer blijven werken terwijl het ERP niet beschikbaar is, en alles daarna in de juiste volgorde doorsturen?
  • Kan dezelfde bevestiging twee keer binnenkomen zonder dat er twee keer wordt geboekt?

Als niemand eigenaar is van mislukte berichten, stapelen ze zich op totdat iemand aan het einde van de maand een voorraadverschil vindt. Noem een persoon, geen team.

Verandert het producttype de integratie?

Ja. In een artikel van Automation World over de implementatie van ISA-95 wordt engineer-to-order omschreven als waarschijnlijk de meest veeleisende integratie, omdat de bedrijfs- en besturingssystemen vrijwel in real time informatie moeten uitwisselen. Lucht- en ruimtevaart is het voorbeeld: ontwerpen sturen de planning aan, maar kunnen tijdens de uitvoering veranderen. Wanneer er een wijziging optreedt, wordt de uitvoering gepauzeerd totdat de planning die weerspiegelt, en nieuwe bewerkingen, zoals extra inspecties, gaan naar de productievloer. Hetzelfde artikel waarschuwt dat verschillende interpretaties van de standaarden door leveranciers tot interoperabiliteitsproblemen kunnen leiden.

Daaruit volgen twee lessen. Als je producten op bestelling worden geconfigureerd of ontworpen, neem dan de wijzigingscase op in de eerste pilot, niet in de laatste. En test standaardgebaseerde interfaces met je eigen data, want "standaard" betekent niet "identiek".

Hoe integreer je MES stap voor stap met ERP?

Houd de scope klein en de controles dagelijks.

  1. Kies één lijn en één productfamilie.
  2. Maak een interfacetabel met object, verzender, ontvanger, trigger, frequentie en eigenaar. Een rij zonder eigenaar is je eerste risico.
  3. Stem de stamgegevens voor die productfamilie af, zoals hierboven beschreven.
  4. Spreek statussen af en de betekenis van gereed, afkeur en herbewerking.
  5. Bouw eerst orders en start- en eindbevestigingen. Voeg materiaal en tijd daarna toe.
  6. Test fouten bewust: stuur een verkeerde hoeveelheid, stop het koppelvlak, start het opnieuw en stuur een dubbel bericht.
  7. Bepaal wat er gebeurt met orders die op de livegangdatum al lopen.
  8. Laat de nieuwe werkwijze enkele weken naast het oude proces draaien, en vergelijk elke dag de goede hoeveelheid, afkeur, uren en materiaal per order in beide systemen.
  9. Tel de extra stappen voor operators. Als bevestigen in het MES langer duurt dan het papieren formulier, zoek dan uit waarom voordat je verder uitrolt.
  10. Breid pas uit naar de volgende lijn wanneer de verschillen zijn verklaard.

Veelgemaakte fouten

  • Stamgegevens behandelen als een eenmalige lading in plaats van een doorlopende taak.
  • Het koppelvlak alleen vanuit het standpunt van het ERP ontwerpen, waardoor het MES niet kan rapporteren in het detailniveau waarin de vloer werkt.
  • Dezelfde statusterm met een andere betekenis in elk systeem gebruiken.
  • Geen regel hebben voor orders in uitvoering op het moment van livegang.
  • Alleen het ideale scenario testen.
  • Mislukte berichten zonder eigenaar laten.
  • Operators vragen dezelfde gegevens twee keer in te voeren, één keer in elk systeem.

Waar Polaris past

Als je probleem de lus is tussen het ERP-plan en de productievloer, is iFAKT Polaris een optie om te bekijken. iFAKT omschrijft Polaris als AI plus een digitale tweeling voor productie die met ERP-data werkt. De module Polaris Designer zet ERP-data, stuklijsten, procestijden en resourcestructuren om in een kennisgraaf van product, proces en resource. De module Polaris Operator brengt plannen naar de productievloer als tijdgebonden taken en stuurt voortgang, vertragingen en verstoringen terug naar de planning. Welke bevestigingen je ERP moet boeken voor voorraad, kostprijs en traceerbaarheid is een aparte vraag, dus maak die lijst voordat je beslist wat een tool moet afdekken.

Gerelateerde onderwerpen om te verkennen

  • ISA-95 in begrijpelijke taal: welke activiteiten horen op het ERP-niveau thuis en welke op het operationele niveau.
  • Closed-loop planning: hoe bevestigingen van de productievloer de volgende planning veranderen.
  • De verbinding tussen het productie- en het bedrijfsnetwerk beveiligen: accounts, segmentatie en patchen van interfaces.
  • Rapportage op de productievloer zonder volledig MES: wat scannen en eenvoudige bevestigingen kunnen afdekken.

Volgende stap

Neem één productfamilie en noteer in een tabel elk object dat tussen je MES en je ERP moet bewegen, met afzender, ontvanger en eigenaar. Als je MES en ERP zonder verrassingen wilt integreren, neem die tabel dan mee naar de eerste vergadering met de IT-afdeling en je leverancier.

Volg de podcastSpotify

Entities in this article

Manufacturing execution system (MES) Enterprise resource planning (ERP) SAP ISA-95 Polaris Designer Polaris Operator iFAKT GmbH

Related articles

RSS

Gesponsord

iFAKT GmbH