Wat is een embedded controller?
Een embedded controller is een gespecialiseerde besturingseenheid, meestal gebouwd rond een microcontroller of System-on-Chip, die in een apparaat, machine of voertuig is ingebouwd om daar één vaste besturingstaak realtime en betrouwbaar uit te voeren. De controller leest sensoren in, rekent met vaste firmware of een RTOS en stuurt actuatoren aan, vaak duizenden keren per seconde. Embedded controllers vormen zo de onzichtbare kern van PLC’s, frequentieregelaars, AGV’s, robots, HVAC-installaties en veiligheidscomponenten in de OT-wereld. Het bredere begrip embedded systemen beschrijft alle ingebouwde computers; dit artikel richt zich op de controllers die daadwerkelijk een fysiek proces besturen.
🧠 Wat doet een embedded controller precies?
Een embedded controller voert een vaste regelcyclus uit die zich eindeloos herhaalt:
- Inlezen - meetwaarden van sensoren, encoders en schakelaars via analoge en digitale ingangen of een veldbus
- Verwerken - regelalgoritmen zoals een PID-regeling, interlocks en toestandsmachines uitrekenen
- Uitsturen - motoren, kleppen, verwarmingselementen of relais aansturen
- Bewaken - diagnose, foutdetectie en communicatie met hogere systemen
Het verschil met een gewone computer zit niet in snelheid, maar in voorspelbaarheid. Een embedded controller is geoptimaliseerd voor deterministisch gedrag, lage latency, lage jitter, continue beschikbaarheid en een lange levensduur. Een watchdog-timer bewaakt de software: als het programma de timer niet op tijd herstart, reset de hardware de controller of brengt hij de uitgangen in een veilige toestand.
Binnen industriële automatisering vormen embedded controllers daarmee de directe schakel tussen software, elektronica en het fysieke proces, en zijn ze het hart van cyber-fysieke systemen.
Let op de tweede betekenis: in laptops en pc’s is de embedded controller (EC) een aparte microcontroller op het moederbord die batterij, ventilatoren, toetsenbord en aan-uitknop beheert. Het besturingssysteem praat met deze EC via de ACPI-specificatie, traditioneel via de I/O-poorten 0x62 en 0x66. In OT bedoelt men met embedded controller vrijwel altijd de procesbesturing.
🔄 Wat is het verschil tussen een embedded controller, een PLC en een industriële pc?
| Kenmerk | Embedded controller (MCU/SoC) | PLC | Industriële pc (IPC) |
|---|---|---|---|
| Hardware | Specifiek printontwerp in het apparaat | Gestandaardiseerde, modulaire controller | Pc-architectuur in robuuste behuizing |
| Programmering | C/C++ of model-based, door de fabrikant | IEC 61131-3-talen, door de gebruiker | IEC 61131-3 via soft PLC, C#, Python |
| Besturingssysteem | Bare metal of RTOS | Eigen RTOS van de leverancier | Windows of Linux, soms met realtime-uitbreiding |
| Typische cyclustijd | Microseconden tot milliseconden | 1 tot 100 ms | 1 ms tot seconden, afhankelijk van de software |
| Aanpasbaar door eindgebruiker | Nauwelijks, alleen parameters | Ja, volledig | Ja, volledig |
| Levensduur in het veld | 10 tot 25 jaar | 15 tot 25 jaar | 5 tot 10 jaar |
Een PLC is zelf ook een embedded controller, maar dan een generieke die de gebruiker zelf programmeert. De meeste embedded controllers zijn “verborgen”: ze zitten in een aandrijving, een slimme sensor of een AGV en de gebruiker ziet alleen parameters.
🧱 Uit welke onderdelen bestaat een embedded controller?
De architectuur combineert hardware en software op één printplaat of module:
| Onderdeel | Functie | Voorbeelden |
|---|---|---|
| Processor | Rekenen en regelen | Microcontroller (Arm Cortex-M), realtimeprocessor (Cortex-R), SoC (Cortex-A), DSP of FPGA |
| Geheugen | Firmware, parameters en werkdata | Flash, RAM, EEPROM voor kalibratie |
| I/O | Koppeling met het proces | ADC/DAC, digitale I/O, PWM, encoderingangen |
| Communicatie | Netwerk en veldbus | Ethernet, CAN, RS-485, SPI en I²C op de print |
| Bewaking | Betrouwbaarheid | Watchdog, spanningsbewaking (brown-out), ECC-geheugen |
| Beveiliging | Integriteit en sleutels | Secure element, TPM, hardware-root-of-trust |
| Software | Besturing | Bootloader, firmware, RTOS, drivers, communicatiestack, diagnostiek |
Voor veiligheidstoepassingen gebruiken fabrikanten vaak processoren met dual-core lockstep: twee kernen voeren dezelfde instructies uit en hardware vergelijkt de resultaten, zodat een rekenfout direct wordt gedetecteerd. Dat helpt om de eisen van IEC 61508 tot en met hoge SIL-niveaus te halen.
Embedded controllers draaien op drie typen platforms: bare metal voor eenvoudige, zeer snelle taken, een RTOS zoals FreeRTOS, Zephyr, VxWorks of QNX voor meerdere taken met harde deadlines, en embedded Linux voor HMI-functies, netwerkdiensten en edge-analyse. Sinds kernelversie 6.12 zit realtime-ondersteuning (PREEMPT_RT) in de standaard Linux-kernel. Op krachtige SoC’s combineert een hypervisor soms een RTOS en Linux op één chip.
⏱️ Waarom is realtime gedrag zo belangrijk?
Realtime betekent niet “snel”, maar “binnen een gegarandeerde tijd”. Een regelkring die soms 1 ms en soms 20 ms nodig heeft, wordt instabiel, ook als het gemiddelde laag is. Typische waarden:
| Toepassing | Typische cyclustijd |
|---|---|
| Stroomregeling in een frequentieregelaar | Tientallen tot honderden microseconden |
| Motion control over EtherCAT of ProfiNET IRT | 0,25 tot 1 ms |
| Machinebesturing in een PLC | 1 tot 20 ms |
| Procesregeling (temperatuur, druk, niveau) | 100 ms tot 1 s |
| Gebouwbeheer en HVAC | Seconden |
Daarnaast telt de cyclustijd van de communicatie mee. Een snelle controller aan een trage veldbus levert geen snelle regeling op.
🔌 Hoe communiceert een embedded controller met de rest van de installatie?
| Protocol | Rol voor embedded controllers |
|---|---|
| Modbus TCP | Eenvoudige uitwisseling van registers, zonder beveiliging |
| ProfiNET | Realtime Ethernet in Siemens-georiënteerde installaties |
| Ethernet IP | Realtime Ethernet in Rockwell-georiënteerde installaties |
| EtherCAT | Zeer snelle motion- en I/O-netwerken |
| CAN | Voertuigen, AGV’s, medische apparatuur en machines |
| RS-485 | Seriële communicatie met oudere apparatuur |
| MQTT | Publiceren van telemetrie naar edge en cloud |
| OPC UA | Gestandaardiseerde, beveiligde data-uitwisseling met informatiemodel |
Via Industrial Ethernet leveren embedded controllers data aan SCADA, MES, HMI’s en een historian. Steeds vaker voeren ze als edge device zelf analyses uit, bijvoorbeeld condition monitoring, predictive maintenance of machine vision. Dat sluit aan bij edge computing en industriële AI: lokaal verwerken geeft lagere latency, minder netwerkbelasting en blijft werken als de cloud wegvalt.
🏭 Waar worden embedded controllers in OT toegepast?
| Toepassing | Taak van de embedded controller |
|---|---|
| PLC en safety PLC | Machinebesturing en veiligheidslogica |
| Frequentieregelaars | Stroom-, toeren- en positieregeling van motoren |
| Slimme sensoren | Meting, linearisatie, diagnose en communicatie |
| Actuatoren en kleppen | Positionering en terugmelding |
| RTU’s en buitenstations onder SCADA | Lokale besturing en datalogging op afstand |
| Robots | Gesynchroniseerde bewegingsbesturing van meerdere assen |
| AGV’s | Navigatie, motorcontrole, LiDAR- en visionverwerking, botsingspreventie, batterijbeheer en communicatie met het vlootbeheersysteem |
In een AGV werken meestal meerdere embedded controllers samen: een navigatiecomputer, motorcontrollers per wiel, een batterijbeheersysteem en een gecertificeerde veiligheidscontroller voor de laserscanners, vaak verbonden via CAN.
🔐 Welke cybersecurityrisico’s hebben embedded controllers?
Embedded controllers zijn een aantrekkelijk doelwit binnen cybersecurity van OT, omdat wie de controller beheerst het fysieke proces beheerst. Twee bekende voorbeelden: Stuxnet (ontdekt in 2010) herprogrammeerde Siemens-PLC’s die centrifuges aanstuurden, en TRITON (2017) probeerde de firmware-omgeving van Triconex-veiligheidscontrollers in een petrochemische fabriek te manipuleren.
| Risico | Mogelijk gevolg |
|---|---|
| Firmwaremanipulatie | Verborgen afwijkend gedrag, verlies van integriteit |
| Onbeveiligde protocollen | Commando’s zonder authenticatie via het netwerk |
| Standaardwachtwoorden en open diensten | Ongeautoriseerde toegang |
| Malware via de engineeringwerkplek | Gemanipuleerde besturingsprogramma’s die via vertrouwde engineeringsoftware worden geladen, zoals bij Stuxnet |
| Kwetsbare gedeelde componenten | Eén lek in een TCP/IP-stack treft veel leveranciers tegelijk |
| Supply-chainaanvallen | Gecompromitteerde hardware of firmware vóór levering |
| Debug-interfaces (JTAG, UART) | Uitlezen of overschrijven van firmware met fysieke toegang |
Patchen is lastig door hoge beschikbaarheidseisen, hertest en soms nieuwe veiligheidsvalidatie, legacy hardware, afhankelijkheid van de leverancier en productiecontinuïteit. Veel controllers blijven daardoor jarenlang op een oude firmwareversie draaien.
🛡️ Hoe beveiligt u embedded controllers?
Beveiliging vraagt meerdere lagen, deels in het apparaat zelf en deels in het netwerk eromheen:
| Maatregel | Doel | Waar |
|---|---|---|
| Secure boot | Alleen vertrouwde firmware opstarten | Apparaat |
| Firmwareondertekening | Integriteit en herkomst van updates | Leverancier en apparaat |
| Uitschakelen van debugpoorten en ongebruikte diensten | Aanvalsoppervlak verkleinen | Apparaat |
| Application whitelisting | Alleen toegestane software, vooral op IPC- en Linux-controllers | Apparaat |
| Netwerksegmentatie | OT-zones isoleren | Netwerk |
| Zero trust-principes | Elke verbinding expliciet toestaan en verifiëren | Netwerk |
| Patchmanagement | Kwetsbaarheden gepland verhelpen | Organisatie |
| IDS en logging | Afwijkingen detecteren en forensisch onderzoek | Netwerk |
Een microcontroller kan geen antivirus of endpoint-agent draaien, dus detectie gebeurt vrijwel altijd passief via het netwerk. De componentnorm IEC 62443-4-2 bevat aparte eisen voor embedded devices (EDR’s). EDR 3.14 eist bijvoorbeeld dat het apparaat de integriteit van firmware en configuratie controleert vóór gebruik, met vanaf security level 2 ook een echtheidscontrole tegen de root of trust van de leverancier. Het ontwikkelproces van de fabrikant valt onder IEC 62443-4-1, het geheel onder IEC 62443.
📜 Welke normen en wetten gelden voor embedded controllers?
| Kader | Betekenis voor embedded controllers |
|---|---|
| IEC 61131-2 | Hardware-eisen en beproeving van programmeerbare controllers (EMC, temperatuur, trillingen) |
| IEC 61131-3 | Programmeertalen voor PLC’s; Instruction List is sinds editie 3 (2013) als verouderd aangemerkt |
| IEC 61508 | Functionele veiligheid van elektronica en software, tot en met SIL 4 |
| MISRA C | Codeerregels voor veilige C-code; de huidige editie MISRA C:2025 verscheen in maart 2025 |
| IEC 62443-4-1 en IEC 62443-4-2 | Veilig ontwikkelproces en technische beveiligingseisen per component |
| Cyber Resilience Act | Meldplicht voor actief misbruikte kwetsbaarheden sinds 11 september 2026, volledige eisen vanaf 11 december 2027 |
| Machineverordening | Vanaf 20 januari 2027 bescherming van besturingen tegen corruptie, ook via software |
Voor Nederlandse machinebouwers en OEM’s betekent dit dat een embedded controller na levering niet “af” is: kwetsbaarheden moeten gedurende de supportperiode worden opgespoord, gemeld en verholpen, en een SBOM wordt een normaal leverdocument.
🧭 Hoe kiest en beheert u embedded controllers in de praktijk?
- Bepaal de tijdseisen - welke cyclustijd en maximale jitter vraagt het proces? Dat bepaalt de keuze tussen bare metal, RTOS of Linux.
- Kies de juiste temperatuurklasse - commerciële chips zijn gespecificeerd voor 0 tot 70 °C, industriële voor -40 tot +85 °C en automotive (AEC-Q100 Grade 1) tot +125 °C.
- Controleer de leverbaarheid - kies componenten uit een longevity-programma van de chipfabrikant, meestal 10 tot 15 jaar leverbaarheid, en voorkom zo vroegtijdige legacy.
- Eis beveiliging bij inkoop - secure boot, getekende firmware, uitschakelbare debugpoorten, een SBOM en een supportperiode, bij voorkeur met IEC 62443-4-2-certificering.
- Leg alles vast - registreer per controller type, firmwareversie en netwerkdiensten in de asset inventory.
- Segmenteer en monitor - plaats controllers in zones volgens het Purdue Model en bewaak het verkeer met netwerkmonitoring.
- Plan de levenscyclus - neem firmware-updates, reserveonderdelen en vervanging op in lifecycle management, want controllers draaien vaak 15 jaar of langer.
Voor organisaties die onder de Cyberbeveiligingswet vallen, sinds 15 augustus 2026 van kracht, horen deze stappen bij de zorgplicht voor de eigen OT-omgeving.
❓ Veelgestelde vragen
Is een PLC een embedded controller?
Ja, een PLC is een embedded controller: de CPU-module bevat een processor, geheugen en een realtime besturingssysteem dat cyclisch het besturingsprogramma uitvoert. Het verschil met een “verborgen” embedded controller in een aandrijving of sensor is dat de gebruiker een PLC zelf programmeert in IEC 61131-3-talen.
Wat is een embedded controller in een laptop?
In een laptop is de embedded controller (EC) een kleine microcontroller op het moederbord die batterij, ventilatoren, toetsenbord en het aan- en uitzetten beheert. Het besturingssysteem communiceert ermee via de ACPI-specificatie. Deze betekenis staat los van embedded controllers in de procesbesturing.
In welke taal worden embedded controllers geprogrammeerd?
Embedded controllers worden meestal geprogrammeerd in C of C++, vaak volgens de codeerregels van MISRA C, of met model-based tools die automatisch code genereren. PLC-achtige embedded controllers gebruiken de IEC 61131-3-talen, bijvoorbeeld via een runtime zoals CODESYS.
Waarom heeft een embedded controller een watchdog?
Een embedded controller heeft een watchdog-timer om vastgelopen software te detecteren. Als het programma de watchdog niet binnen de ingestelde tijd herstart, reset de hardware de controller of zet hij de uitgangen in een veilige toestand. Zo leidt een softwarefout niet tot een ongecontroleerd proces.
Kunt u de firmware van een embedded controller updaten?
De firmware van een embedded controller is meestal te updaten, maar in OT gebeurt dat zelden omdat een update stilstand, hertest en soms nieuwe veiligheidsvalidatie vraagt. Moderne controllers accepteren alleen ondertekende firmware via secure boot. De Cyber Resilience Act verplicht fabrikanten om gedurende de supportperiode beveiligingsupdates te leveren.
Wat is het verschil tussen een microcontroller en een embedded controller?
Een microcontroller is een chip met processor, geheugen en I/O op één stuk silicium. Een embedded controller is de complete besturingseenheid: de microcontroller plus voeding, I/O-circuits, communicatie, behuizing en firmware die samen een besturingstaak uitvoeren.
📌 Samengevat
Een embedded controller is een ingebouwde, taakgerichte besturingseenheid die sensoren inleest, realtime rekent en actuatoren aanstuurt, en daarmee de directe schakel vormt tussen software en het fysieke proces. Voorspelbaar tijdgedrag, een watchdog en een lange levensduur maken embedded controllers betrouwbaar; diezelfde lange levensduur, kwetsbare firmware en beperkte updatemogelijkheden maken beveiliging volgens IEC 62443, de Cyber Resilience Act en goed lifecycle management noodzakelijk.
