外文翻译可视化的PLC程序使用.doc
VisualizationofPLCProgramsusingXMLM.BaniYounisandG.FreyJuniorprofessorshipAgentenbasedAutomationUniversityofKaiserslautemP.0.Box3049,D-67653Kaiserslautem,GermanyAbstract-DuetothegrowingcomplexityofPLCprogramsthereisanincreasinginterestintheapplicationofformalmethodsinthisarea.Formalmethodsallowrigidprovingofsystempropertiesinverificationandvalidation.OnewaytoapplyformalmethodsistoutilizeaformaldesignapproachinPLCprogramming.However,forexistingsoftwarethathastobeoptimized,changed,orportedtonewsystems.ThereistheneedforanapproachthatcanstartfromagivenPLCprogram.Therefore,formalizationofPLCprogramsisatopicofcurrentresearch.Thepaperoutlinesare-engineeringapproachbasedontheformalizationofPLCprograms.ThetransformationintoavendorindependentformatandthevisualizationofthestructureofPLCprogramsisidentifiedasanimportantintermediatestepinthisprocess.ItisshownhowXMLandcorrespondingtechnologiescanbeusedfortheformalizationandvisualizationofanexistingPLCprogram.I.INTRODUCTIONProgrammableLogicControllers(PLCs)areaspecialtypeofcomputersthatareusedinindustrialandsafetycriticalapplications.ThepurposeofaPLCistocontrolaparticularprocess,oracollectionofprocesses,byproducingelectricalcontrolsignalsinresponsetoelectricalprocess-relatedinputssignals.ThesystemscontrolledbyPLCsvarytremendously,withapplicationsinmanufacturing,chemicalprocesscontrol,machining,transportation,powerdistribution,andmanyotherfields.Automationapplicationscanrangeincomplexityfromasimplepaneltooperatethelightsandmotorizedwindowshadesinaconferenceroomtocompletelyautomatedmanufacturinglines.Withthewideningoftheirapplicationhorizon,PLCprogramsarebeingsubjecttoincreasedcomplexityandhighqualitydemandsespeciallyforsafety-criticalapplications.ThegrowingcomplexityoftheapplicationswithinthecomplianceoflimiteddevelopmenttimeaswellasthereusabilityofexistingsoftwareorPLCmodulesrequiresaformalapproachtobedevelopedI.Ensuringthehighqualitydemandsrequiresverificationandvalidationproceduresaswellasanalysisandsimulationofexistingsystemstobecarriedout2.OneoftheimportantfieldsfortheformalizationofPLCprogramsthathavebeengrowingupinrecenttimeisReverse-engineering3.ReverseEngineeringisaprocessofevaluatingsomethingtounderstandhowitworksinordertoduplicateorenhanceit.WhilethereuseofPLCcodesisbeingestablishedasatoolforcombatingthecomplexityofPLCprograms,ReverseEngineeringissupposedtoreceiveincreasedimportanceinthecomingyearsespeciallyifexitinghardwarehastobereplacedbynewhardwarewithdifferentprogrammingenvironmentsVisualizationofexistingPLCprogramsisanimportantintermediatestepofReverseEngineering.ThepaperprovidesanapproachtowardsthevisualizationofPLCprogramsusingXMLwhichisanimportantapproachfortheorientationandbetterunderstandingforengineersworkingwithPLCprograms.Thepaperisstructuredasfollows.First,ashortintroductiontoPLCsandthecorrespondingprogrammingtechniquesaccordingtotheIEC61131-3standardisgiven.InSectionanapproachforRe-engineeringbasedonformalizationofPLCprogramsisintroduced.ThetransformationofthePLCcodeintoavendorindependentformatisidentifiedasanimportantfirststepinthisprocess.XMLandcorrespondingtechnologiessuchasXSLandXSLTthatcanbeusedinthistransformationarepresentedinSectionIV.SectionVpresentstheapplicationofXMLforthevisualizationofPLCprogramsandillustratestheapproachwithanexample.ThefinalSectionsummarizestheresultsandgivesanoutlookonfutureworkinthisongoingproject.PLCANDIEC61131Sinceitsinceptionintheearly70sthePLCreceivedincreasingattentionduetoitssuccessinfulfillingtheobjectiveofreplacinghard-wiredcontrolequipmentsatmachines.Eventuallyitgrewupasadistinctfieldofapplication,researchanddevelopment,mainlyforControlEngineering.IEC61131isthefirstrealendeavourtostandardizePLCprogramminglanguagesforindustrialautomation.InI993theInternationalElectrotechnicalCommission4publishedtheIEC61131IntemationalStandardforProgrammableControllers.BeforethestandardizationPLCprogramminglanguageswerebeingdevelopedasproprietaryprogramminglanguagesusabletoPLCsofaspecialvendor.Butinordertoenhancecompatibility,opennessandinteroperabilityamongdifferentproductsaswellastopromotethedevelopmentoftoolsandmethodologieswithrespecttoafixedsetofnotationstheIEC61131standardevolved.Thethirdpartofthisstandarddefinesasuitoffiveprogramminglanguages:InstructionList(IL)isalow-leveltextuallanguagewithastructuresimilartoassembler.OriginatedinEuropeILisconsideredtobethePLClanguageinwhichallotherIEC61131-3languagescanbetranslated.LadderDiagram(LO)isagraphicallanguagethathasitsrootsintheUSA.LDsconformtoaprogrammingstyleborrowedfromelectronicandelectricalcircuitsforimplementingcontrollogics.StructuredText(STJisaverypowerfulhigh-levellanguage.STborrowsitssyntaxfromPascal,augmentingitwithsomefeaturesfromAda.STcontainsalltheessentialelementsofamodemprogramminglanguage.FunctionBlockDiagram(FBD)isagraphicallanguageanditisverycommontotheprocessindustry.Inthislanguagecontrollersaremodelledassignalanddataflowsthroughfunctionblocks.FBDtransformstextualprogrammingintoconnectingfunctionblocksandthusimprovesmodularityandsoftwarereuse.SequentialFunctionChart(SFC)isagraphicallanguage.SFCelementsaredefinedforstructuringtheorganizationofprogrammablecontrollerprograms.OneproblemwithIEC61131-3isthatthereisnostandardizedformatfortheprojectinformationinaPLCprogrammingtool.Atthemomentthereareonlyvendorspecificformats.Thisisalsoonereasonfortherestrictionofformalizationapproachestosingleprogramsoralgorithms.However,recentlythePLCusersorganizationPLCopen(seehttp:/www.plcopen.org)startedaTechnicalCommitteetodefineanXMLbasedformatforprojectsaccordingtoIEC61131-3.ThisnewformatwilleasetheaccessofformalizationtoolstoallrelevantinformationofaPLCproject.RE-ENGINEERINGAPPROACHThepresentedapproachtowardsre-engineering(cf.Fig.1)isbasedupontheconceptionthatXMLcanbeusedasamediuminwhichPLCcodeswillbetransformed.Thistransformationofferstheadvantageofobtainingavendorindependentspecificationcode.(EvenifthePLCopensucceedsindefiningastandardizedformatforPLCapplications,therewillremainalotofexistingprogramsthatdonotconformtothisstandard.)Basedonthiscodeastep-wisetransformationtoaformalmodel(automata)isplanned.Thismodelcanthenbeusedforanalysis,simulation,formalverificationandvalidation,andfinallyforthere-implementationoftheoptimizedalgorithmonthesameoranotherPLC.Sincere-engineeringofcompleteprogramswill,inmostcases,beonlyasemi-automaticprocess,intermediatevisualizationofthecodeisanimportantpoint.Atdifferentstagesoftheprocessdifferentaspectsofthecodeand/orformalmodelhavetobevisualizedinawaythatadesignercanguidethefurtherwork.XMLwithitspowerfulvisualizationandtransformationtoolsisanidealtoolforsolvingthistask.IV.XMLASATOOLFORVISUALIZATIONXML(extensibleMarkupLanguage)isasimpleandflexiblemeta-language,i.e,alanguagefordescribingotherlanguages.TailoredbytheWorldWideWebConsortium(W3C)asadialectofSGMLS,XMLremovestwoconstraintswhichwereholdingbackWebdevelopments6.Thedependenceonasingle,inflexibledocumenttype(HTML)whichwasbeingmuchabusedfortasksitwasneverdesignedforononeside;andthecomplexityoffullSGML,whosesyntaxallowsmanypowerfulbuthard-to-programoptionsontheotherside.WhileHTMLdescribeshowdatashouldbepresented,XMLdescribesthedataitself.Anumberofindustriesandscientificdisciplines-medicalrecordsandnewspaperpublishingamongthem-arealreadyusingXMLtoexchangeinformationacrossplatformsandapplications.XMLcanbetailoredtodescribevirtuallyanykindofinformationinaformthattherecipientoftheinformationcanuseinavarietyofways.Itisspecificallydesignedtosupportinformationexchangebetweensystemsthatusefundamentallydifferentformsofdatarepresentation,asforexamplebetweenCADandschedulingapplications.UsingXMLwithitspowerfulparsersandinherentrobustnessintermsofsyntacticandsemanticgrammarismoreadvantageousthantheconventionalmethodofusingalexicalanalyzerandavalidatingparser(cf.Fig.2,7).Theconventionalmethodofanalysisofprogramcoderequiresascanner(lexicalanalyser)whichgeneratesasetofterminalsymbols(tokens)followedbyaparserthatchecksthegrammaticalstructureofthecodeandgeneratesanobjectnet.Intheobjectnettheinternalstructureoftheprogramisrepresentedbyidentifiedobjectsandtherelationsbetweenthem.Boththescannerandtheparsertobeusedinthismethodaredocumentorientedwhichimpliesthatanalysisofdifferenttypesofdocumentsrequiresrewritingthegeneratedcodeforthescannerandtheparser.Anexampleofanapplicationofthismethodcanbefoundin8.ThemostpromisingaspectofusingXMLinsteadisthatXMLanditscomplementaryapplicationsfortransformationsarestandardizedsoastoprovidemaximumflexibilitytoitsuser.TheXMLbasedmethodisadvantageous,sincethelexicalspecificationisaninvariantcomponentofXML;thereforethewell-formednessisindependentfromtherespectiveindividualapplication.Hence,anXML-Parseralsocantransferwell-shapedXMLdocumentsinanabstractrepresentationcalledDocumentObjectModel(DOM)withoutusingagrammar.DOMisanapplicationprogramminginterface(APII)forvalidHTMLandwell-formedXMLdocuments.Itdefinesthelogicalstructureofdocumentsandthewayadocumentisaccessedandmanipulated.IntheDOMspecification,theterm