|
|
|
| SCADA .net Hoe sterk gaat de .Net techniek van Microsoft en XML de komende jaren een rol spelen in de Industrie Automatisering ? Als we beginnen met de stelling dat 'ieder SCADA pakket de techniek meekrijgt van de ontwikkeltools waarmee het oorspronkelijk geschreven is' ofwel 'de hond gaat op de baas lijken' dan kunnen we de komende tijd een sterke invloed verwachten van de '.Net' technologie' (spreek uit dot.net) van Microsoft in OPC-, SCADA pakketten en MES-achtigen. De source code van SCADA en MES pakketten die onder de Windows platformen draaien zijn voornamelijk geschreven met Visual Studio van Microsoft. Aangezien de laatste versie van het pakket gebaseerd op het .Net framework, zullen de pakketten van .Net techniek gebruik gaan maken. Maar het is niet alleen noodzaak wat SCADA leveranciers drijft, de .Net techniek biedt ook een groot aantal voordelen. Eigenlijk richt Microsoft zich met het .Net framework op het makkelijk toegang krijgen tot gegevens uit databases voor toepassingen als bijvoorbeeld E-commerce. Het doel dat Microsoft daarmee voor ogen staat is : "To provide products and technologies that enable users to access information at any time, anywhere and on any type of device". Het maakt kortom niet uit waarmee, waar en wanneer je gegevens ophaalt, ze zijn altijd beschikbaar. Een mobiele telefoon, PDA of TV werken net zo goed om die gegevens op te halen dan de omslachtige PC met Internet Explorer. Wie de TV reclame van Microsoft heeft gezien om ".Net connected te geraken" denkt aan verkopers die op hun PDA kunnen zien of een artikel leverbaar is en logistiek medewerkers die op een display kunnen zien waar producten in een magazijn liggen opgeslagen. Een voorbeeld van een succesvolle .Net dienst is bjivoorbeeld MSN Messenger, waarmee groepen personen via internet met elkaar kunnen spreken, chatten of op andere manieren informatie met elkaar kunnen uitwisselen. Tsja... de 'real time' wereld van SCADA lijkt nog ver weg. Wij geven in dit artikel een overzicht van de .Net techniek voor toepassingen in de Industriële Automatisering. Betekenis van .Net in gewoon Nederlands De kortste definitie die Microsoft hanteert voor .Net is : "Microsoft .Net is een platform voor XML webservices".
Hiermee is een webservice nog geen .Net webservice , want XML is een algemene standaard. Door de service te beschrijven via WSDL (Webservice DefinitionLanguage), een bepaald schema voor XML, wordt een webservice pas een .Net webservice en worden de gehele .Net bibliotheken toegankelijk. Dus de bovenstaande definitie kan moeiteloos worden vervolgd met "mits deze webservices maar met Microsoft kookgerei zijn gemaakt en Microsoft ingrediënten bevatten". XML maakt gebruik van een software bus -SOAP (Simple Object Access Protokoll) - om te bi-directioneel communiceren tussen client en service via het internet. SOAP biedt een lichtgewicht "messaging format", een manier om het ene component taken laten uitvoeren voor het andere component, dat werkt met ieder besturingssysteem en platform. SOAP bevat een vergelijkbare functionaliteit als de DCOM software bus, maar is in tegenstelling tot DCOM niet beperkt tot de Microsoft Windows besturingssystemen en -domeinen. De open SOAP en XML standaarden zijn dus de kurk waarop het .Net framework van Microsoft drijft. Normaal communiceren .Net componenten dus met elkaar door gebruik te maken van SOAP, wat op zijn beurt weer van gebruik maakt van HTTP en XML en mogelijkheden heeft om door met Firewall beschermde netten om te gaan. De .Net componenten hoeven niet per se met elkaar via SOAP te communiceren, in een intranet omgeving kan direct over TCP worden gecommuniceerd. Dot Net software is dus geschreven dat het ook kan functioneren zonder webserver binnen een computer of op een lokaal netwerk. Echter de tijd van een executable van een megabyte en een paar runtime libraries is voorbij. Op de achtergrond moet eerst een runtime versie van het .Net framework geïnstalleerd worden van 30 megabyte. Daarna kan men de userapplicatie laden en zonder problemen draaien. In .Net zitten allerlei grappen en grollen, die het systeem in de eerste plaats geschikt maken voor E-commerce. Op .Net gebaseerde webservices hebben de eigenschap dat ze in een soort "Gouden Gids" opgenomen zijn en de clients vanaf nul zelf kunnen vertellen wat ze te bieden hebben. Dit is de zogenaamde UDDI (Universal Description, Discovery and Intergration). De speciale eigenschappen van SCADA (suite) producten en .Net Microsoft richt zich in de eerste plaats op transactie systemen zoals E-commerce. Een cliënt vraagt informatie en een webservice geeft informatie door raadpleging van een database, dit is transaktiegeorienteerd. In de MES omgeving zijn de meeste systemen puur transaktiegeorienteerd zoals Operations/Detail Scheduling, Document Control en Maintenance Management. Hier kan .Net zonder moeite worden toegepast. De moeilijkheid zit in de systemen die met de productievloer zijn verbonden, zoals Data Collection/Acquisition (SCADA en de suite producten zoals batchpakketten en tracking en tracing modules dus) Bij SCADA (en de suite-) producten zijn volgende specifieke eigenschappen belangrijk :
Met name punt 1 en de laatste 4 genoemde punten doen een SCADA systeem verschillen van een transactie georiënteerd systeem als een database. Immers als aan een E-commerce systeem geen clients gekoppeld zijn gebeurt er niets. Een SCADA systeem wordt continu vanuit het veld geactualiseerd, wordt voorzien van real time data, moet een logisch geheel vormen, wat betreft achtergrond taken en de gebruikers van het systeem willen ook door het systeem gewaarschuwd worden bij een bepaald alarm of event. Er zal dus veel effort gestoken moeten worden door SCADA ontwikkelaars en de OPC foundation om .Net geschikt te maken voor typische SCADA taken. Vergelijk van .Net en DCOM in de industrieautomatisering als transport protocol en communicatiemechanisme. Microsoft positioneert .NET graag als een internet gerichte opvolger van DCOM (Distributed COM) en zal de toekomstige ontwikkelingsomgeving van Microsoft zijn. DCOM wordt niet verder doorontwikkeld. Om meteen ongerustheid weg te halen : bestaande DCOM toepassingen waaronder OPC servers kunnen met een interface wel geschikt gemaakt worden voor .Net. Om de betekenis .Net in te schatten, moeten we een stap terug maken in de tijd door naar DCOM te kijken. DCOM is al met al een transport protocol in de hogere lagen van het OSI model. Sinds het aanbreken van het Windows tijdperk zijn er wat betreft informatieoverdracht in SCADA(suites) en tussen SCADA en PLC's in die lagen 3 generaties technieken gebruikt :
De verschillende producten hier en daar in de industrieautomatisering zijn dus doorspekt met DCOM technieken. Er is vandaag geen SCADA pakket te noemen zonder dat het OPC cliënt mogelijkheden heeft. Tegelijkertijd begint men tegen de nadelen van DCOM aan te lopen (lees DCOM ... niet OPC). DCOM is niet internetfahig, is lastig te configureren vooral in complexe netwerkomgevingen, heeft aanmeld-, afmeld- en time-out mechanismes die eigenlijk niet geschikt zijn voor industriële omgevingen. Vooral dat laatste is een probleem, want in de standaard DCOM mechanismes kan een server of een client pas na minuten merken dat z'n tegenpool niet meer on-line is. Niet voor niets zijn er buiten het .Net verhaal reeds initiatieven opgestart voor verdere uitkleding van DCOM mechanismen of zelfs DCOM-loze OPC communicatie. De XML specificatie van de OPC foundation en het product "Genbroker" van Iconics zijn daar voorbeelden van. Om kort te gaan SCADA leveranciers en de OPC foundation willen eigenlijk het liefst af van de nadelen van DCOM. Wat maakt .NET beter dan DCOM ?
Voordelen aan DCOM ten opzichte van SOAP/XML zijn er overigens ook : DCOM voert een remote commando directer uit en is daardoor sneller, bij .Net (SOAP/XML) moet een commando nog geinterpreteerd worden. Updates binnen enkele 10 tallen milliseconden zijn mogelijk in DCOM. Binnen een PC dus met COM communiceren processen op de meest directe manier, updates van milliseconde zijn mogelijk. Er zijn genoeg voorbeelden te vinden van de eis van milliseconden communcatie. Het is maar de vraag of dit ook in .Net mogelijk is. Rol van .Net en XML in de industrieautomatisering voor visualisering en bediening Als we het hebben over de mogelijkheden van .Net voor gegevensuitwisseling doen we tekort aan de mogelijkheden voor visualisatie en bediening. Met andere woorden wat zijn de consequenties van het ouderwetse maken van procesmimics in de grafische omgeving van een SCADA pakket. De XML clients en XML en SOAP zijn dus platformonafhankelijk. Dit zijn dus niet alleen Windows desktops PC's zijn, maar bijvoorbeeld ook PDA's (ook met andere besturingssystemen dan Windows CE), Mobiele telefoons en in de toekomst bijvoorbeeld TV's. XML laat niet zoals een eenvoudige HTML pagina tekst zien, maar is een grafische pagina die interactief gebruikt kan worden worden. Verder is XML in staat om een en dezelfde grafische pagina verschillend te presenteren afhankelijk van het gebruikte apparaat. Je hoeft een XML pagina maar één keer te configureren om hem op verschillende clients te kunnen draaien. Personalisatie van de gerepresenteerde informatie is ook hiermee mogelijk. Maar het maken van procesmimics behelst meer. Objecten moeten in een grafisch schema kunnen worden geplaatst, niet zomaar in een sequentiële file. Hier komt de Vector Mark-up language (VML), eXtensible Stylesheet Language (XSL) en XSL Transformation (XSLT) om de hoek kijken. Dit zijn potentiële mogelijkheden om een vector georiënteerd plaatje te maken. VML is een XML schema om vectors te kunnen beschrijven en configureren. Hiermee kunnen dus objecten in een x,y positie geplaatst worden. In principe hoeft alleen het object veranderd te worden de rest van het procesplaatje blijft hetzelfde. Oplossingen als sliders, graphs en buttons die worden geconverteerd naar een bitmap en dan worden getoond, wat een extensief proces is, kunnen achterweg blijven. Met VML kan je van een object de grootte, x,y positie en kleur aangeven in XML en dan wordt het getekend. Deze web-based HMI kan op ieder platform worden bekeken als de browser maar XML/VML ondersteunt. Extensible style sheets staan de ontwikkelaar toe de inhoud van de grafische voorstelling te scheiden. Op verschillende grafische displays van bijvoorbeeld palm-tops, lap-top, pager of desk-top kan in de stijl die bij dat apparaat hoort dezelfde informatie getoond worden. XML heeft enkele eigenschappen die goed van pas komen voor visualisatie van industriële data. Je kan in XML objecten beschrijven en gestructureerd nesten in andere objecten. Hiermee leent de opmaaktaal zich voor domein-specifieke vocabulaires. Je kan met standaard elementen bibliotheken bouwen met intelligente grafische objecten voor verschillende soorten toepassingen bijvoorbeeld chemie, pharmacie, voeding enzovoorts. Er zijn reeds voorbeelden XML presentatie van grapics bekend. Deze zijn veelal systemen ontwikkeld met Java (dit is geen .Net) . Bijvoorbeeld GTI en Fabricom hebben een systeem ontwikkeld op basis van J2EE applicatie heeft ontwikkeld voor United Biscuits in Zaandam. Een ander voorbeeld het relatief onbekende WebControl van Automated Logic voor gebouwautomatisering. Het MES pakket Infoplus.21 koppeling Business Warehouse van SAP. Verwachte ontwikkelingen in .Net technologie Een volgend generatie SCADA pakket wordt als men Microsoft gebruikt automatisch in het .Net framework geprogrammeerd. Het programmeert eenvoudig weg sneller dan een eigen gemaakte webservice. Het is net zoiets als Windows applicaties maken zonder en met Microsoft Framework Classes. Een eenvoudige applicatie vergt bij de eerste techniek enkele A-viertjes code, terwijl met MFC een regel code voldoet. Nadeel is wel dat men zich ophangt zich dan wel weer op aan Microsoft, maar de geschiedenis leert dat SCADA producenten daar weinig moeite mee hebben. Zoals gezegd wordt een .Net service vanuit het Internet aangeboden. Beschikbaar stellen van een SCADA .Net service over het Internet kan wenselijk zijn, maar voor een kerncentrale om maar wat te noemen, niet verstandig. Een meer voor de hand liggende toepassing is dat .Net componenten aan elkaar data beschikbaar gaan stellen. Bij het configureren van een S88.01 applicatie in een Batch pakket kan moeiteloos worden beschikt over de datapunten en de methoden van het SCADA systeem en omgekeerd. Het heeft er de schijn van dat .Net als communicatiemethode het snelst zal doorbreken, om dat de nood om over internet te gaan en met firewalls te kunnen omgaan het hoogst is. Voor de grafische presentatie zijn nog alternatieven beschikbaar in de vorm van Active X, Java enzovoorts. Wat de ontwikkelingen voor OPC betreffen heeft OPC Foundation heeft in maart van dit jaar een eerste stap gezet met de OPC XML-specificatie vrij te geven die toegang van een OPC server via internet mogelijk maakt. In de specificatie is de definitie gegeven van een webservice die kan koppelen aan een OPC server. Verwacht wordt dat nieuwe OPC producten in
.Net worden geprogrammeerd. Bestaande DCOM-clients en -servers kunnen
communiceren met .Net componenten door middel van een interface. Overigens
kunnen DCOM componenten zoals ze nu worden gebruikt nog jaren mee, zoals DOS
applicaties op de Windows platformen kunnen draaien. Als voordelen om OPC in de
toekomst in .Net componenten te programmeren kunnen genoemd worden in de
ontwikkelingssfeer dat de ontwikkeling eenvoudiger wordt, dat men
verschillende programmeer talen kan gebruiken. Een belangrijker rol speelt de
Internet-Fähigkeit van de componenten. Actuele voorbeelden van .Net systemen in SCADA en MES Het eerste wat natuurlijk .Net gebaseerd zal zijn de toegang naar mobiele HMI apparaten en als standaard voor webportals om procespagina's via Internet te kunnen zien. Het product Mobile HMI van Iconics een voorbeeld van het gebruik naar mobiele HMI apparaten. In het product SuiteVoyager van Wonderware zijn enige .Net technologieën al geïmplementeerd. Het product heeft de functie van een webportal en maakt gebruik van XML, VML, XSL en HTTP/SOAP om de graphics te genereren. Conclusies Het gebruik van .Net methode gaat de komende jaren veel voordelen opleveren. Afwachten kan in veel gevallen. Oriëntatie in dit moment op de .Net techniek en de beschikbare pakketten wordt door Control-IT aanbevolen als een van de dingen van het volgende aan uw applicatie belangrijk is :
Uiteraard kunnen wij u deze oriëntatie voor uw organisatie uitvoeren. |
|
Send mail to info@control-it.nl with questions or comments about this web site.Copyright © 2002
Control-IT Industrial Automation
|