Jouw oplossing lijkt te zijn om dan maar geen onderhoud meer te plegen. Vroeg of laatt komt de rekening dan toch bij de Nederlandse bevolking terecht.
Als ABB en Siemens geen garantie wil geven, wie geeft ons dan wel de zekerheid?
Onderhoud in die omgevingen is extreem uitdagend. Dit zijn mega-installaties waar fysiek alles aan elkaar vastzit. Je zet dat niet zomaar even uit, zelfs niet voor een deel. Dit zijn echte 24x7 omgevingen waar men maar eens per zoveel jaar down gaat om onderhoud te kunnen doen. Als je kijkt naar de gemiddelde chemische plant, staalproducent of glasfabrikant, dan kost het je vaak dagen om gecontroleerd down te gaan en weer op te komen. Dat moet maanden van te voren worden gepland. Het kost tonnen tot miljoenen in omzet. Dat doe je niet zomaar.
Ja, als dat is wat nodig is dan moet het maar. Want 40 jaar lang bidden dat er geen fouten in de die apparatuur opduiken vind ik geen geschikte aanpak. Zeker als je bij fouten toch niet meer kan doen dan terug naar de leverancier om iets nieuws te kopen.
Dat vindt jij misschien. Maar hetzelfde geldt voor de equipment waar het aan vastzit: die pomp moet ook decennia probleemloos zijn werk doen. Het zijn heel behoudende partijen waar men soms nog echt op relaistechniek vertrouwd. En als het werkt, dan werkt het ook gewoon 30 tot 40 jaar. Ook die PLC gaat vaak 10 tot 30 jaar mee. Probleem is dat er na verloop van tijd geen reservedelen meer te krijgen zijn (waarmee een defecte PLC gelijk terminaal wordt voor de installatie).
Het is ook spul wat gemaakt wordt om lang mee te gaan: in de industrie kom ik nog steeds Siemens S5's tegen. Die werden sinds 1979 (!) geproduceerd en zijn in 1995 als productlijn formeel vervangen door de S7. Je komt ze nog steeds in het veld tegen en de geruchten gaan dat Siemens onlangs zelfs nog een productierun gedaan om spare parts te maken.
Defacto ben je dan al zelf verantwoordelijk, zorg er dus voor dat je de middelen hebt om die verantwoordelijkheid te nemen.
Of durf jij er op te rekenen dat die software 40 jaar toe kan zonder onderhoud?
De software kan probleemloos 40 jaar mee. Vaak is de onderliggende hardware het probleem, en de firmware/OS die daarmee mee komt. Ik heb op locaties gewerkt waar het SCADA server al 20 jaar oud is. Soms doet men een "mid-life upgrade", maar dat is dan ook de enige stap. Voor SCADA upgrade men de clients vaak wel (vaak Windows machines), maar de rest blijft echt gewoon bevroren zoals het was.
PLC's draaien vaak hun originele programmering en doen dat voor decennia. Je kunt niet zomaar een PLC upgraden, dat is echt een project op zich, en PLC's zijn ook veel meer aan de hardware gebonden. Met een PLC komt een dedicated OS mee, met ook de bouwstenen die je nodig hebt om equipment aan te sturen. En die bouwstenen worden inhoudelijk onderhouden, maar dat kan ook betekenen dat je applicatie het ineens niet meer doet. Vandaar dat je voor veiligheidsfuncties gewoon verplicht bent de boel volledig te hervalideren.
Dus heb je een andere oplossing nodig waarbij je niet afhankelijk bent van die partijen.
Nobel streven, maar totaal onrealistisch in de IT wereld. Als een ABB of Siemens ophoud te bestaan, dan heeft de wereld een heel groot probleem. Maar dat hebben de gemeentes ook als Centric of PinkRoccade omvallen. Of als SAP ophoudt te bestaan. Grote partijen die grote complexe bouwstenen leveren haal je niet meer van de kaart af, en daar moet je met zijn allen van accepteren dat dat de wereld is.
Komt er iedere maand een nieuwe versie van die software uit? Dan wel ja, blijbkaar vind de leverancier dat nodig en waarom zou je die niet geloven als je toch al hebt besloten om daar afhankelijk van te zijn.
Maar mijn punt is niet dat je precies iedere maand moet patchen. Mijn punt was dat je bij moet blijven zodat je niet met verouderde software komt te zitten, hoe sneller je upgrade hoe meer buffer je hebt.
Meestal is het eens per 6 maanden. Maar ik heb toevallig nu zo'n PLC partij die zijn updates eens per maand/twee maanden uitbrengt. Soms zijn het security patches, soms zijn het patches op bouwstenen die niet gebruikt worden. Soms raakt het dingen die wel gebruikt worden en waar je dus de discussie moet hebben of dat je een risico wilt lopen op ongecontroleerde downtime of dat je het gecontroleerd wil uitrollen. Er wordt echt wel gekeken wat de impact is, maar soms is er een OS ontwikkelaar die om onverklaarbare redenen libraries gaat splitsen. Leuk voor hem, maar daar gaan mijn klanten geen miljoen voor uitgeven om die patch uit te rollen.
Het is natuurlijk makkelijker gezegd dan gedaan maar dit zullen we moeten verbeteren. We zijn te afhankelijk geworden van software om die niet snel te kunnen verbteren of vervangen.
Het ontwerp van een installatie is een complex iets, zowel fysiek als besturingstechnisch. Waar men zaken kan ontkoppelen/scheiden doet men dat bewust. Maar er zijn delen waar vrijwel niemand weet hoe het werkt. Ik ken installaties waar er letterlijk maar een persoon op de planeet is die weet hoe het intern werkt.
Maar dat is geen onbekend probleem in de IT. Bij banken en verzekeraars hebben we COBOL systemen, mainframes en SAP. Als die partijen ophouden, is het ook daar klaar. En neimand weet hoe die systemen echt werken.
Je gaf net aan dat die software maar 10 jaar mee gaat. Dus met een beetje pech komt er nooit een upgrade. Of begrijp ik je nu totaal verkeerd?
De PLC's gaan probleemloos 10 jaar mee, maar een leverancier zal in die tussentijd wel veranderingen in zijn PLC platform doorvoeren. Maar als er hardwarechanges komen dan breekt men de lijn. Als consument kun je dat misschien nog het makkelijkst vergelijken met een Raspberry Pi: je kocht een RPi 3, en men geeft de garantie 10 jaar support op Hardware en software. Raspberry houdt na 10 jaar op met leveren van RPi3's met de mededeling "koop maar een 4 voor nieuwe activiteiten". Raspberian OS ontwikkeld door onafhankelijk van die hardware changes. Je kunt nog spare parts krijgen (omruilprogramma), maar dan krijg je ook gelijk de laaste versie van Raspbarien er op.
Nu heb jij een Rapsberry 3. OS updates zijn riskant omdat die allang geen rekening meer houden met de RPi3, en de kans bestaat dat je alles sloopt. Een slimme klant heeft vaak nog een stapeltje RPi3's op vooraad liggen met het juiste OS toen de fabrikant aankondigde te stoppen (bij PLC's noemt men dit een "Last Buy" moment, wat bewust wordt aangekondigd). De applicatie die je daar op ontwikkeld leunt heel sterk op bouwstenen van dat OS, dus upgraden is gewoon extreem riskant. Als een RPi3 de geest geeft dan pak je er gewoon een van je voorraad.
Als RPI volwassen zou zijn, dan meldt men netjes in "Service Bulletins" wat er veranderd. Denk aan Release Notes, maar dan goed gedaan. Als er zaken zijn die kritiek voor jouw oplossing zijn, dan ga je dus als klant gericht upgraden, bij voorkeur op een moment waar je toch al down moet, zoals een groot onderhoudsmoment. Maar kans is groot (er zijn heel veel bouwstenen voor spullen die je niet gebruikt) dat het gewoon zinloos is om te upgraden: het lost niets op, maar introduceert wel risico voor side-effects en downtime. Dan ga je dus niet upgraden (machinerichtlijn verbied dat zelfs wettelijk omdat de netto veiligheidswinst negatief is).
Er komt een moment waarop de RPi3's op zijn en dan moet je over. Maar dat is een moment waar je dus heel strak geplande wijzigingen krijgt, en vaak men begint te kanabaliseren: je haalt preventief simpele RPi3's uit het veld en vervangt ze met RPi4's, zodat je hele moeilijk vervangbare componenten wel op die stabiele basis kunt houden. Pas als dat ook lastig wordt (zijn letterlijk sommetjes die men maakt), dan gaat men serieus nadenken over alles naar de laatste baseline te brengen.
Grote complexe installaties zijn soms net Mikado: je kunt met het verkeerde stokje trekken de hele toren in laten storten. En als je dus van stokjes af kunt blijven dan is dat een hoop mensen een hoop waard.