24.10.2013 Aufrufe

Konzept zur Instrumentsteuerung am FRM II

Konzept zur Instrumentsteuerung am FRM II

Konzept zur Instrumentsteuerung am FRM II

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

KonzeptzurInstrumentsteuerungamFRMII

ZentraleBetriebseinheitFRMII-Bau TechnischeUniversitatMunchen JurgenNeuhaus

14.August1998 Version1.0

ServerStrategie.HierbeiwirddieDatenaufnahmesowiedieExperimentsteuerung dezentralvonsogenanntenServernubernommen.DieAblaufsteuerungdesExperi- DashierbeschriebeneKonzeptzurInstrumentsteuerungbasiertaufeinerClient- Zusammenfassung

nimmtundsieandieentsprechendenServerweiterleitet.DaruberhinausstehendieServeranderenClientenzurVerfugung,diez.B.eineonlineKontrolledesInstrumentserfolgtvoneinemClienten,derdievomBenutzerdeniertenBefehleubermentsermoglichen. 1


Inhaltsverzeichnis

2TechnischeAnforderungen 1Einleitung 43

4CORBA:DerSoftwareBus 3ClientServerArchitektur 4.1Programmierwerkzeuge.......................... 65

5DasTACOKonzeptderESRF 4.2Fazit.................................... 98

8

5.3Platformen................................11 5.2Sicherheitsvorkehrungen.........................10 5.4Schnittstellen...............................11 5.1Aufbau.................................. 9

6EMSSystemamFZ-Julich 5.5TACO-BOX................................12 5.6Weiterentwicklungen...........................12

7Betriebssysteme 13 12

8SteuerprogrammundgraphischeBenutzeroberache 8.3Motiv,wxWindowsundandere.....................15 8.2IDL....................................15 8.1Tcl/Tk...................................15 14

9Zusammenfassung 10Danksagung 16

2


chingistdurchbesondereRandbedingungendesKonzeptesderInstrumentierung 1DieInstrumentsteuerunganderNeuenForschungsneutronenquelleFRMIIinGar Einleitung

gepragt.DerAufbau,sowiederBetriebdereinzelnenInstrumentewirdauschlielichvonexternenNutzergruppenrealisiert.DieoptimaleNutzungderfurdieInstrumentierungzurVerfugungstehendenResourcenerforderteinesorgfaltigeAbwagungdermoglichenStandardisierungeinerseitsunddesexiblenAufbausundErweiterbarkeitanneuenKomponentenandererseits.Nebeneinemsoliden,d.h.zuverlaigen BetriebsolldieBesonderheitdeskreativenUmfeldeseinerHochschulejederzeitin dieWeiterentwicklungderNutzungvonNeutroneneinieen.NeueIdeenkonnen sichnurdanndurchsetzen,wenndieRealisierunginkurzenZeitraumenmoglich hierfurnichtgeeignet. ist.Einstarres,monolithischesKonzeptbeiderIntegrationvielerKomponentenist

grund.HierbeimudasInstrumenteineeinfache,intuitivzubedienendenBenutzerschnittstellezurVerfugungstellen.DieVerwendungvonetabliertenKonzeptennenquellealsGrogeratzurNutzungdurchauswartigeForschergruppenimVorderNebenderVerwirklichungneuerIdeenstehtderBetriebderForschungsneutrozurEingabevonBefehlenundDarstellungvonMedatensollauchwenigererfahrenenNutzerdieoptimaleAusnutzungseinerihmzurVerfugunggestelltenMezeit mitgroerSorgfaltundaufdemneuestenStandderTechnikgebautenInstrumente zeitzurVerfugungstehendeHilfefunktionen(onlinehelp)einebesondereRolle.Diegewahrleisten.HierbeibekommendieDokumentationdesInstrumentessowiejeder- konnenihreLeistungnichterbringen,wennderBenutzersienichtzujederTag-und stetwerden. NachtzeitdemMeproblemanpassenkann.DiehierfurnotwendigeUnterstutzung

detwerdenerforderteinhohesMaanAbstarktionundwohldenierterSchnittstelmuzueinemnichtzuvernachlaigendemTeilvonderInstrumentsteuerunggeleimussen,sonderningleicherWeisefurProgrammierbausteine,diezueinerInstrulen.DiesgiltnichtnurfurmechanischeKomponenten,diezusammengefugtwerdenDieRealisierungvonKomponenten,dieannahezuallenInstrumentenverwenVielfaltvonProgrammiersprachen,TechnikensowieComputerarchitekturenRechmentsteuerungzusammengesetztwerden.HierbeimujedochderbesondershohendardisierungimBereichderGeratesteuerungnichtausgegangenwerden.NebeneinerVielzahlgeeigneterDialektezurProgrammierung,gibteseinegroeAnzahlvonnunggetragenwerden.WahrendbeiderMechanikniemandaufdieIdeekommen Schnittstellen(Busse)zurDatenubertragung,diemehroderwenigerfurbestimmte wurdelinksdrehendeSchraubenzuverwenden,sokannvoneinerallgemeinenStan-

Aufgabengeeignetsind. 3


Datenaufnahmesystemensein.EssolldasInstrumentubereinzelneKomponenten denieren,dievonunterschiedlichstenGruppenunabhangigvoneinandererstellt werdenkonnen.UmeinlangfristigtragbaresKonzeptzuerstellensollenindustriell DashiervorgestellteKonzeptsolloenfurjedeAnbindungvonelektronischen

erprobteTechnikenundWerkzeugezumEinsatzkommen.EinsolchesKonzeptkann miteinerClient/ServerArchitekturrealisiertwerden.

EinewesentlicheAnforderungandenAufbaueinerInstrumentsteuerungistdieEin- 2beziehungallernotwendigenBussysteme,uberdiedieMe-undSteuergeratean TechnischeAnforderungen

unteranderen: gesprochenwerden.EinezukunftigsicherlichwachsendeAnzahlvonBussenumfat GPIB[1] RS232

Interbus[4] RS485 Probus[2,3] paralleleSchnittstelle(PC) VME,VXI

BedenktmandieVielzahlanindustriellvorhandenenKomponentenzurDa- ISA PCI,cPCI,PXI

tenerfassung,soempehltsichnichtnurausKostengrundendieVerwendungeinerPC-Architektur.DasKonzeptmujedochsoallgemeingefatwerden,daprinzipi- istderAufbaueinerderartigenInstrumentsteuerungskizziert. ellalleKomponenteneingebundenwerdenkoennen.Seieseineleistungsstarkeneue WorkstationodereinbereitsvorhandenesalteresCAMAC-System.InAbbildung1

gungsgeschwindigkeitenstellt,sosolleineInstrumentsteuerungjedochkeineunnotiverlasigkeitimVordergrundstehen.WahrenddieanfallendeDatenmengebeiNeutronenstreuexperimenten(leider)keinebesondershohenAnforderungenanUbertraNebenderFinanzierbarkeitvonLosungenmudieLeistungsfahigkeitundZu- nichtunnotigdurchdieKontrolleweitererParameterverlangertwerden. geZeitbeimUmstelleneinerMekongurationverlieren.UnumganglicheWartezeiten,wiebeiderAnderungvonProbenparametern(z.B.Temperatur)oderBewegungendesInstruments(z.B.AnderungderProben-oderDetektorposition)sollten 4


XTerminal Hausnetz von Zapfstelle

( 100 MBit)

Switch (Ethernet 100 MBit, 10 Mbit)

SubNet Instrument

Probenumgebung

Steuer-PC (Industrie-PC mit PCI/ISA-Bus)

FlaschProm (Linux, evtl. real time)

Eth Seriell (RS232) ProfiBus GPIB Zählerkarte

VME System VME System

2D Detektor mit eigener

Elektronik und Rechner

Externes Gerät

Schrittmotor

SPS

Multimeter

unterschiedlichsterBussysteme Abbildung1:SchematischerAufbaueinerInstrumentsteuerungunterderVerwendung

steuerung

mit Multiplexer

Steuerung

Bedinfeld mit Anzeige

Power supply

externe externe externe

NebendereigentlichenSteuerungzurDatenaufnahmemudasSysteminder

Leistungs Leistungs Leistungs

versorgung versorgung versorgung

Temperaturregler

Lagesein,jederzeitAuskunftuberdenZustandsamtlicherInstrumentkomponenten zugeben.DieseAnforderungdientnichtnurzurKontrolledesInstrumentswahrend einerMessungsonderndientinsbesondereauchzurFehlerndung. systemdesSteuerrechnersodersonstigeRechnerarchitekturengebundensein.Die sollenderArbeitserleichterungundKostensenkungdienen.Siedurfenaufkeinen zuBeginnderInstrumentierungdesFRMIIvorgenommenenStandardisierungen DasKonzeptderInstrumentsteuerungdarfwederandasverwendeteBetriebs-

FallzukunftigeEntwicklungenbehindernoderunnotigerschweren.

DieAufteilungeinzelnerArbeiteninnerhalbeinesSteuerprogrammserfolgtnormalerweiseuberdenAufrufvonFunktionenoderUnterprogrammen,welchedieeigent 3 ClientServerArchitektur

lichenAufgabenerledigen.IneinergeschlossenenGruppevonProgrammierenkann

fest.EinderartigesKonzeptkannsichzwarfureineinzelnesInstrumentalseektiv chesondernoftauchaufeinRechnerbetriebssystemundEntwicklungswerkzeugediesemmonolithischenAnsatzlegtmansichnichtnuraufeineProgrammierspra- dannauchsicherlichdieArbeitineinzelneKomponentenaufgeteiltwerden.Bei

erweisen,istjedochfurdieArbeitsteilungaufsehrheterogeneGruppenmitsehr unterschiedlichenErfahrungenundMoglichkeitennichtgeeignet. DieVerteilungderAufgabeninnerhalbeinesSteuerprogrammssolltevonder

Steuerkarte

Steuerkarte

Steuerkarte

Steuerkarte

Steuerkarte

Steuerkarte

Steuerkarte

Steuerkarte

Steuerkarte

Steuerkarte

PC Linux (evtl. Workstation)

Steuerprogramm, Auswertung, Schnittstelle Instrument-FRM II)

ADC

DAC

Dig I/O

Encoder

Encoder

Encoder

Encoder

Encoder

Encoder

HV

NIM Rack

verwendetenRealisierungdesInstruments(Hardware)unabhangigsein.Einsolches

5

Ratemeter

MCA


ubereinedenierteSchnittstelleFunktionenzurVerfugung,uberdieMe-und dasSteuerprogramm,indasderExperimentatorseineSteuerbefehleeingibt,sendet KonzeptkannineinerClient-Server-Architekturrealisiertwerden.DerServerstellt Steuergerateangesprochenwerdenkonnen(DeviceServer,DS).DerClient,z.B. seineAnfrage,oderBefehlanddenentsprechendenServer,derdanndieeigentliche

andenClientenzuruck.Hierbeiistesunerheblich,wosichdieServerbenden,oder AufgabeeineMeldung,seienesZahlraten,MotorpositionenodereineinfachesOK, Arbeitubernimmt.FurdenClientenistesunerheblich,wiedieseArbeitausgefuhrt wird,ererwartetnurdassieausgefuhrtwird.DerServergibtnachBeendigungder unterwelchemBetriebssystemsiearbeiten. verbreiteteInternetProtokollTCP,dasauchalsStandardProtokollamFRMII eingesetztwerdenwird.DieunterschiedlichenDeviceServerkonnenaberauchauf einemeinzigenRechnerz.B.unterLinuxlaufen.WennmehreresolcherProzesseauf AlsUbertragungsprotokollzwischenraumlichverteiltenDSeignetsichdasweit

einemRechnerlaufensollen,mudasBetriebssystemdazunaturlichinderLage sein.Hierfurkommennurmodernemulti-taskingBetriebssystemeinFrage,was aberdasKonzeptimPrinzipkaumeinschrankt.DasverwendeteBetriebssystem munaturlichinderLageseinubereinTCP/IPProtokollzukommunizieren. RechnerkanndasSteuerprogrammodereinKontrollprogrammlaufen.Hierbeiist esnaturlichnotwendigentsprechendeSicherheitsvorkehrungenzutreen,dasein UnabhangigkeitvonClientundServer.AufjedemandasInternetangeschlossenen DerVorteilderAufteilungderArbeitaufDSzeigtsichauchinderraumlichen

unbefugterZugriaufdasInstrumentunterbundenwird.

DieObjectManagementGroup(OMG)[5]istein1989gegrundeter,internationa- 4ler,nichtprotorientierterZusammenschluvonSoftwareentwicklern,Netzwerkbe CORBA:DerSoftwareBus

treibern,HardwareproduzentenundkommerziellenAnwendernvonComputersystemen.MitderObjectManagementArchitecture(OMA)hatdieOMGeineSoftwarearchitekturspeziziert,diedasZusammenarbeitenvonAnwendungenverschiedenerHerstellerermoglicht,undzwarunabhangigdavon,vonwelchemProgrammierer undanwelchemOrt,furwelchesBetriebssystembzw.furwelcheHardwareundmit welcherProgrammiersprachesieentwickeltwurden.

rogenenSystemen.DerzugehorigeStandardheitCommonObjectRequestBrokeruniverselleKommunikationsmediumfurbeliebiggearteteObjekteinverteiltenhetekationdesObjectRequestBrokers(ORB).EristdasvonderOMAvorgeseheneKerndieserArchitekturistdie1991inderVersion1.1herausgegebeneSpezi- 6


device server

bus (RS232)

Gerät 10

device server

bus (RS232)

Gerät 11

Steuerprogramm

(Spec, Datenaufnahme, TASPROG, ...)

device server

Zählerkarte

Detektor 1-64

device server

bus (GPIB)

Gerät 20

device server

bus (profibus)

Motor 1

Encoder 1

device server

bus (GPIB)

Gerät 21

device server

bus (profibus)

Motor 2

Encoder 2

update daemon

Software-Bus (CORBA, TACO)

device server

bus (??)

Probenparameter

device server

bus (profibus)

Motor 3

Encoder 3

Modell. Abbildung2:SchemaderKommunikationzuMe-undSteuergeratenimClient-Serverdevice

server device server

device server device server

extern (eth) extern (eth)

extern (eth) extern (eth)

VME 1

VME 2

Chopper 2D Detektor

Architecture(CORBA).SeitSommer1995nunmehrinderVersion2.0,zeichneter sichdurchfolgendeEigenschaftenaus: Objektorientierung

Verteilungstransparenz nichtnotwendigerweiseeinObjektimSinneeinerProgrammiersprache. imSinnederOMAeinebeliebige,eindeutigidentizierbareEinheitist,also DiegrundlegendenEinheitenderArchitektursindObjekte,wobeieinObjekt

CORBA-ProgrammegreifenaufentfernteObjektemitdenselbenMechanis- Ezienz menzu,wieauflokaleObjekte.DergenaueAufenthaltsorteinesObjektsbleibtDieArchitekturfurdenORBistvonderOMGbewutsogehalten,dae- furseineKlienteninderRegelunbekannt.

Hardware-,Betriebssystem-undSprachunabhangigkeit gibtCORBAAnwendungenauchaufreal-timeSystemen. nikationdemtraditionellenFunktionsaufrufnurunwesentlichnachstehen.EszienteImplementationenmoglichsind,diez.B.imFallereinlokalerKommutriebssystemen,HardwarearchitekturenundmitverschiedenenProgrammiersprachenrealisiertwerden.DieKomponenteneinesCORBA-ProgrammskonnenaufverschiedenenBe- 7


Oenheit UberdenORBkonnenProgrammeverschiedenerHerstellerzusammenarbeibungenvonverschiedenenAnbieternverwendenzukonnen,dieseinenindiviten.ManerhaltdadurchdieFreiheit,furKomponentenEntwicklungsumge 4.1duellenBedurfnissenambestengerechtwird. FurdieProgrammierungmitCORBAgibteseinigefreiverfugbareSysteme,die sichbereitsbewahrthaben. Programmierwerkzeuge

OmniBroker Inc.,dasfurnichtkommerziellenGebrauchkostenlosistundimQuellcode OmniBroker[7]isteineCORBA-2.0EntwicklungsumgebungderFirmaOOC freierhaltlich[7]ist.DasvonderESRFentwickelteTACOSystemhateineCORBA-Schnittstelle,diemitdenOmniBrokerBibliothekenerstelltund MICO getestetwurde.DiesesSoftwarePaketunterstutztdieUmsetzungderIDLBeMICO[8]isteineEntwicklungdesLehrstuhlsfurverteilteSystemeundBe-

HTML-Ausgabe. fehleinC++undJava.ZusatzlichexistiertnocheinDokumentations-toolmit

Main.AuchdiesesProjekthatsichschoninvielenIndustrieprojektenbewahrt triebssystemederFakultatfurInformatikanderUniversitatFrankfurtam undistkostenlosundimQuellcodefurverschiedeneBetriebssystemeerhaltlich Xt,Gtk)undTcl/Tk)zuGraphischenProgrammieroberachenaus.Esver- [8]. DieverfugbarenPortierungenzeichnensichdurchdieSchnittstellen(X11(Qt,

4.2wendetwieOmniBrokerdenCORBA-2.0Standard. CORBAstelltzumeineneinebeachtlicheMengetechnologischenKnow-howsund zumandereneinenseltenerreichtenKonsensinnerhalbderComputerindustriedar. DieserIndustriestandardwirdindenunterschiedlichstenAnwendungeneingesetzt Fazit

Aufwanddarstellt,sokannmanjedochdavonausgehen,dassichdieFlexibilitat furdenEinsatzzukunftigerRechnersystemeundSteuerprogrammeauszahlenwird. [6].AuchwennderEinsatzeinersolchenTechnologieeinewesentlichenerhoten NegativbeispielefurdieschlechteWartbarkeitundTransfermoglichkeitvonbestehendenSystemengibtesbereitsgenug.EinestandardisierteSoftwareschnittstelle 8


alleinmachtjedochnochkeinefertigeInstrumentsteuerung.BeidiesemAnsatzfehlt diezentraleVerwaltungderServersowieeinSicherheitskonzept(Zugrisrechte)das EinheitendeniertenSteuerbefehleganzzuschweigen. aufderSoftwareschnittstelleaufbaut,voneinerUmsetzungderinphysikalischen

5TACO[9]istderNameeinesobjektorientiertenKontrollsystems,dasanderES- RF(EuropeanSynchrotronRadiationFacility,Grenoble)entwickeltwurde.Indie- DasTACOKonzeptderESRF

semSystemwirdjedesKontrollelement(Instrumentkomponente)alseinObjektdeniert,daKommandosausfuhrenkann.SolcheObjektewerdenalsDevicebe- auchinC++geschriebenwerden.ZugangzudenimplementiertenKommandos zeichnetundsindinsogenanntenDevice-Servernenthalten.DieBefehle,dieein Device-KlassekannsowohlinC(durcheinObjektsystemOIC,ObjectsInC)als erhaltmanubereinekleineAnzahlvonC-(oderC++)Befehlen,dieubereinevor- derartigesDeviceausfuhrenkann,sinddurchDevice-Klassenimplementiert.Eine

gegebeneSchnittstelle(API,ApplicationProgrammer'sInterface)zurVerfugung ubereinnetzwerktransparentesInterface(DSAPI)zu.NebendenDevice-Servern gibtesfurzentraleAufgabendenSystem-ManagerundeineDatenbank,inder gestelltwird.

dieDevice-Serververwaltetwerden.DurchdiesesClient-Server-Modellgibtesa- DasProgramm,welchesdasSystemsteuert(Client),greiftaufdieDevice-Server

priorikeineGrenzenfurdieAnzahlderDevice-ServeroderClients.Eszeichnetsich durcheinehervorragendeSkalierbarkeitaus.EingesetztwirddasTACO-Systemzur RadioAstronomyInstitute,Sudafrika)aufPC-Basis(Linux). derExperimentsteuerunganderESRFsowieeinesRadioteleskops(Hartebeesthoek SteuerungdesSynchrotrons(SteuerunghauptsachlichmitVME-Systemen),Teile

5.1 DerSystem-ManageristdiezentraleEinheitineinemTACO-Kontrollsystem.Der ManagerstartetundbeendetdasgesamteKontrollsystem.AlleClientenalsauch alleDevice-ServerrufenalserstesdenManagerauf,bevorsieihreArbeitaufnehmen. Aufbau

DieKongurationderDevice-ServerwirddurcheineeinfacheDatenbankverwaltet. DieKongurationsdateiliegtalsASCII-DateivorundwirdzurLaufzeitdesSystems ndbm-Programm,dasinallenUNIXSystemen(SystemV)vorhandenist. entsprechendvondemDatenbankprogrammumgewandelt.AlsDatenbankdientdas DasDevice-Server-ModellstelltdieSchnittstellefurdenZugriaufdieeinzelnen 9


einegraphischeBenutzeroberachezuganglichwird.DiewesentlichenBefehlesind: dasubereineProgrammierhochsprache(C,C++,Tcl,...)mittelsdesDSAPIoder Device-Serverdar.FurdenBenutzerprasentiertsichdasSystemalseineblackbox,

devputgetasync()AsynchronesAusfuhreneinesKommandosaufeinemDe- devimport()ImportoderAufbaueinerVerbindungzueinemDevice devputget()AusfuhreneinesKommandosaufeinemDevice

ZusatzlichzudiesenGrundfunktionengibtesBefehlezurKongurationderVer- devfree()BeendenderVerbindungzueinemDevice vice

zurKongurationderZugrisrechte(Systemsicherheit). ProcedureCall(ONC/RPC)vonSunrealisiert.DieONC/RPCVerbindungistauf bindungClient-Server,zurAbfragedesStatuseinesasynchronenKommandosoder

allenSystemen,dieubereinNetworkFileSystem(NFS)verfugen,implementiert. UmdieDatenuberdasTCP-oderUDP-ProtokollimNetzzuversendenwerdensie DieVerbindungClient-ServerwerdendurchOpenNetworkComputing/Remote

Kommandosliefern,dienteinsogenannterdatacollector.Erbestehtauseinemgros- imXDR-Format(eXternalDataRepresentation)kodiert. sensharedmemory,dasaufmehrerenRechnernverteiltseinkann.NebenrealexistierendenDevice-ServerngibtesindiesemdatacollectorauchsogennantePseudo- ZurPuerungvonErgebnissen,diedieDevice-ServeralsRuckgabewertevon

Devices.DiesesindhilfreichzumVerteilenvonInformationen,dienormalerweise imSpeicherderProgrammeabgelegtwerdenodervonausgewerteten,berechneten Werten.DurchdiePuerungvonDatenkonnenauchEngpassevermiedenwerden, wennbeispielsweisemehrereClientenaufInstrumentemitlangsamenSchnittstellen mitderDSAPI. 5.2 zugreifenwollen.DerZugriaufdendatacollectorerfolgtubereineAPIvergleichbar

ImTACO-SystemwirdderZugriaufdieDevice-ServerdurcheinSicherheitskonzeptgeregelt.EsistaufdemKommandoniveauderDevice-Serverimplementiert.SomitkonnendieZugrisrechtefurjedenDevice-Servereinzelneingerichtetwer- Sicherheitsvorkehrungen

den.EsgibtsechsverschiedeneSicherheitsstufen: READ WRITE SINGLEWRITE 10


ADMIN SUPERUSER SINGLESUPERUSER

zeitbetriebssystemhauptsachlichauf68xxx-CPU'sinVME-Systemen)entwickelt. 5.3 DasTACO-KonzeptwurdeursprunglichunterUnix(SunundHP)undOS9(Echt- Dieaktuelle,vonderESRFunterstutzteListederRechnerplattformenumfat: Platformen

Solaris(5.x.x) OS9(3.x) HP-UX(9.x,10.x)

Linux(2.x)

ZudemgibtesPortierungenzu: SunOs(4.x.x) Winows/NT(3.5x)

LynxOS VxWorks

kalkulationsprogrammeabgefragtwerdenkann.FureinlauahigesTACO-SystemDatenbank(Oracle)verwendet,dieuberSQL-Befehle,C-ProgrammeoderTabellen- ZurLangzeitarchivierung(Jahre)derSystemzustandewirdeinekommerzielle OS9000

istdieseDatenbankjedochnichterforderlich.

bislangfolgendeAnbindungengeschaen: zurSteuerung/BedienungdesKontrollsystemszurealisieren.AnderESRFwurden DermodulareTACO-AufbaubietetsichgeradedazuanvielfaltigeSchnittstellen 5.4 Schnittstellen

CORBA-Gateway Java(eigenstandigeProgramme,applets) Tcl/TkScripte ASCII 11


OLE2(Windows/NT) SPEC Labview(Windows/NTuberASCII)

aufeineAusweitungderverteiltenObjektemiteinemsogenanntenembeddedcontro- EineweitereinteressanteEntwicklungderTACO-Steuerung(TACO-box[10])zielt 5.5 ler.HierfurwerdenpreiswertePC/104-Moduleverwendet,mitdeneneigenstandige TACO-BOX

Kontrollsystemerealisiertwerden.AlsBetriebssystemwirdz.Zt.VxWorksalsEchtzeitbetriebssystemverwendet.EinePortierungaufLinuxistinArbeit.MitderartigenSystemenistesdenkbar,einzelneInstrumentkomponenten(Probenumgebung,Motorsteuerung,Choppersteuerung,...)mitkomfortablenundumfassendenKontrollmoglichkeitenauszustatten.terstutzungbeieinermoglichenVerwendungbeiderInstrumentsteuerungamFRM IIwurdevonderProgrammierabteilunganderESRFzugesagt. DasTACO-SystemistinklusivedesQuellcodesfreiverfugbar.EineaktiveUnundServerdurchCORBAund/oderDCOMersetzt.DiedamitmvglichenErweite-

gearbeitet.HierbeiwirddasGrundgerustderRPC-VerbindungenzwischenClient 5.6 AugenblicklichwirdanderESRFaneinerWeiterentwicklungdesTACO-Systems Weiterentwicklungen

etc.ergebendasneueTANGO(TAcoNewGenerationObjects)Device-Kontrollsystem [11]. rungenwiedynamischeTypenverwaltung,asynchroneAufrufe,Thread-Unterstutzung,setzteSteuerung[12]basiertaufeinerSoftware,diezurDatenerfassungundKomDieamNeutronen-Spin-Echo-SpektrometeramForschungszentrumJulicheinge-

6 EMSSystemamFZ-Julich

munikationfurCOSY-Experimenteentwickeltwurde.DieEMS(ExperimentalizingmentkontrolleundderServerderSteuerungderHardware.DieVerbindungClientwendeteineobjektorientierteSprache.HierbeidientderClientwiederderExperiMessageSpecication)SoftwarearbeitetnachdemClient-Server-Prinzipundver- NSE-SpektrometerwerdendabeidieVerbindungzueinemVME-Controllerund ServerwirduberTCP/IPhergestellt,wobeifurdieUmsetzungBibliotheken(EMS- Commlib,EMS-Serivelibrary)zurVerfugungstehen.BeiderAnwendungfurdas 12


DieverschiedenenServerwerdenaufdemVME-ControllerunterOS/9betrieben. SiestellensichnachauenalsVED(VirtualExperimentDevice)darundsind darinuberEinschubkartenVerbindungenzumProbusundGPIB-Busrealisiert. nuruberihreObjektezuganglich.ZuBeginnmussendieServervomClientenkon- abgelegt. guriertwerden.DiedazuerforderlichenDatenwerdeninKongurationsdateien

ModellistengmitdererforderlichenHardwareverbunden.BeiderKonzentration 7DieWahldesBetriebssystemsfureineInstrumentsteuerungineinemClient-Server- Betriebssysteme

meoderUnixverwendet.WahrendsichdieEchtzeitbetriebssystemebesondersfurBetracht.SindVME-SystemeerforderlichsowerdenahnlicheEchtzeitbetriebssystezeitbetriebssystemenwieLynxOS,VxWorks,QNX,OS9/i86auchWindows/NTinaufPC-PlattformenkommennebendenUnix-Derivaten(Linux,BSD,..),Echt- Benutzerschnittstellegeeignet. embeddedcontrolSystemeeignenistWinows/NTeheralsgraphischesFrontendzur

Echtzeitsteuerungalsehergeringeingestuftwerden.DieunabdingbarenEigenschaf- NeutronenstreuexperimenteeingesetztenSteuerungen,sokannderBedarfaneiner derlichenEigenschaftenzusammengefatwerden.BetrachtetmandiebisherigenfurUmhierzueinermoglichsteinheitlichenLosungzukommensolltendieerfortensind: Stabilitat

GraphischeBenutzerschnittstellen VerfugbarkeitvonProgrammierwerkzeugen Netzwerkfahigkeit

setzungen.EsgibtzudemErweiterungenumEchtzeitprozessezuermoglichen(RT-DasfreiverfugbareLinuxBetriebssystemerfulltalleobenangefuhrtenVoraus- UnterstutzungverschiedenerHardware(wunschenswert) Langzeitverfugbarkeit(schnelleWeiterentwicklungderRechnerplattformen)

undMotorollaCPU's(68xxxundPowerPC)verfugbar.Fureinemoglichstum- Linux).NebenPC-Plattformen(Intel)istesauchaufDEC-AlphaWorkstations fassendeVereinheitlichungistessomitambestengeeignet.BeiderRealisierungden.HiermueinestrengeAufwand(Kosten)/Nutzen-Rechnungaufgestelltwerden.einesClient-Server-KonzeptesistaberdieEinbindungvonKomponentenmitandeMehraufwandbeiderUnterstutzungmehrererBetriebsystemeberucksichtigtwerrenBetriebssystemunproblematisch.Esmujedochdernichtzuvernachlaigende

13


8roberache MitderDenitioneinesClient-Server-KonzepteszurInstrumentsteuerungkann SteuerprogrammundgraphischeBenutze-

dieAufgabederEinbindungunterschiedlichsterHardwareineinSteuerprogramm

einerScriptspracheodermittelseinergraphischenBenutzerschnittstelle.Furvie- Serverzulosen.DieEingabederMebefehleerfolgtentwederuberdieTastaturin folgeinphysikalischenEinheitenindieAnweisungen(Kommandos)andieDevice-bewaltigtwerden.AlswesentlicherTeilbleibtnochdieUmsetzungeinerMeableAnwendungsfallewerdenbeideEingabemethodenparallelvonVorteilsein.Ein (H,K,L,En)beivorgewahlterAnzahlderaufdieProbeauftreendenNeutronen SteuerprogrammmudaherbeideModibeherrschen. (VorwahleinerMonitorzahlrate)istbereitsinvielenSteuerprogrammengelostworden.EsliegtfolglichnahebereitsexistierendenProgrammcodezuverwenden.Bei DieAufgabederzuverlassigenUmsetzungeinesMewegesimreziprokenRaum

nahererBetrachtungderexistierendenSoftwarebzw.beiderDiskussionmitden dieSoftwarebetreuendenProgrammierernmumanjedochfeststellen,dakeines TASCOM,Ris;...)sichfureinePortierungeignet. derexistierendenProgramme(MAD,ILL;CARESS,HMI;ChalkTalk,ChalkRiver,

lich4-KreisModus)entwickeltundbedarffurinelastischeNeutronenstreuexperiProgrammwurdejedochimwesentlichenfurDiraktionsexperimente(einschlie- [13].EshateinedirekteSchnittstellezumTACO-System(esrfio()).DasSpec- EinegewisseAusnahmemachthierbeidaskommerziellerhaltlicheSPEC-Programm

Gelegenheitkonnteeineobjektorientierte,modularaufgebaute,einfachzuwartende gefuhrtwerden.SollteeinederartigeLosungnichtdieAnforderungenanNeutronenstreuexperimenteerfullenmueinneuesProgrammgeschriebenwerden.BeidiesermenteeinigerAnpassungen.HierzumussennochVerhandlungenmitdemHerstellerunddamiteinfacherweiterbareSteuerungssoftwareentstehen.EineZusammenar- sicherlichbegruenswert. beitmehrererGruppenandenentsprechendenNeutronenstreuzentrenwarehier

sichauchmitjederanderenScriptsprachezurInstrumentsteuerung.Alsmogliche BefehlemitHilfeeinergraphischenBenutzeroberachezulosen.DasProblemstellt ScriptsprachebietetsichdasaufvielenRechnerplatformenfreiverfugbareTcl[14] SolltesichdasSpec-Programmalsgeeigneterweisen,bleibtdieUmsetzungder

phase.an.DieetwasungewohnlicheSyntaxbedarfjedocheinergewissenEingewohnungs- 14


8.1 BeiderSteuerungjedesExperimentsmiteinerScriptsprachemudiewesentlich berucksichtigtwerden.GroeTeilederSteuerungsolltendaherinCrealisiertund langsamereAusfuhrgeschwindigkeitderzurLaufzeitinterpretiertenKommandos Tcl/Tk

kompiliertvonderScriptspracheaufgerufenwerden.FurdieEinbindungvonC- sprachefureinobjektorientiertenAnsatz(z.B.incrTcl/Tk[17])bzw.Erweiterun ProgrammeninTclsindmehrere,teilsfreiverfugbareEntwicklungswerkzeuge(z.B. SWIG[15]oderallg.VisualTcl[16])erhaltlich.ErweiterungenderTclProgrammiergenimFunktionsumfang(z.B.tclx[18],Tix[19])existieren,diedenProgrammcode ubersichtlichermachenbzw.verkurzen.DerwesentlicheAnreizzurVerwendungvon graphischerDarstellungderMeergebnisse[20]ermoglicht. Tclliegt,nebenderbereitsexistierendenSchnittstellezuTACO,inderKombination mitTk,dasaufauersteinfacheWeiseeinegraphischeBenutzeroberacheinklusive

vonbeliebigenPlattformenausmoglich. entsprechendenPlug-Inserstelltwerden.SomitsindeinfacheKontrollmoglichkeiten GraphischeDarstellungenmitTcl/TkkonnenauchuberaktuelleBrowsermit

8.2 BeieinergegebenenScriptsprachefurdieProgrammsteuerungkonnenauchandere EntwicklungsumgebungenzurErstellunggraphischerBenutzeroberachenverwendetwerden.EinBeispielistdieamILLz.B.furLAMBverwendeteIDL-Bibliothek. IDL

HierbeimuaberderproprietreCharakterderBibliothekunddiehohenLizenzkostenberucksichtigtwerden.DieBibliothekistfurverschiedeneRechnerplatformen undBetriebssystemeerhaltlich.SiewirdubereineeigeneScriptspracheverwendet.

programmerfolgen.HierzueignensichentsprechendeBibliothekenwieMotif,wx- 8.3 NebenderVerwendungeinerweiterenScriptsprachezurErstellungeinergraphischenBenutzeroberachekanneineProgrammierungauchdirektausdemSteuer Motiv,wxWindowsundandere

Windowsoderandere.DerhoheProgrammieraufwandinsbesonderefurdieEinnachlaigen.bindungeineruberdieTastatureingegebenenBefehlsfolgeistjedochnichtzuver 15


ServerKonzeptkeineAlternative.BedenktmandiebegrenztenResourcen,diezur 9FureinelangfristigePlanungderInstrumentsteuerunggibteszueinemClient- Zusammenfassung

einbereitsbestehendes,erprobtesKonzeptverwendetwerden.DasTACO(TANGO) ErstellungeinereinheitlichenSteuerungamFRMIIzurVerfugungstehen,somu

dungdesSPEC-ProgrammsalsBenutzerschnittstellebedarfnocheinergenauerenstabileInstrumentsteuerungaufgebautwerden.DieEntscheidunguberdieVerwen- SystemderESRFisthierfurbesondersgeeignet.BeidereinheitlichenVerwendung

Untersuchung. desLinuxBetriebssystemsaufPC-Hardwarekanneineauerstleistungsfahigeund

(TANGO)SystemserforderteinewohldenierteSchnittstellezwischendeneinzel- konntenachStandderDiskussionenimBereicheinerScriptsprache(vorraussichtlich nenInstrumentenbauernundeinerzentralenGruppeamFRMII.DieseSchnittstelleDieRealisierungeinereinheitlichenInstrumentsteuerungaufBasisdesTACOwohlderDevice-ServeralsauchderClientenerfolgen.DieEinbindungvonGeratenTcl)erfolgen.DesweiterenmueineengeKoordinationbeiderProgrammierungso- uberStandardschnittstellenwieGBIP,serielleSchnittstellen,Feldbusse,etc.kann hierbeivonderzentralenGruppeamFRMIIbewaltigtwerden.BeiderVerwendungvonspeziallisiertenI/O-KartenmitISA-,PCI-oderVME-Busanbindungisttreiber(furLinux)nichtwesentlichgroeralsbeiderEinbindungineinherkommliderAufwandbeimProgrammiereneinesDevice-ServersbeivorhandenemHardwarechesProgramm.BeimEinsatzvonElektronikMarkeEigenbausolltedasSchreiben einesHardwaretreibersfurLinuxjedochnichtunterschatztwerden.DieseArbeit mujedochfurjedeArtvonSteuerungerledigtwerden.FurderartigeProjekteist unbedingteinErfahrungsaustauschzwischendenGruppenerforderlich.

Erfolgfuhren,wenneineregeWechselwirkungzuundzwischendenInstrumentie- verfolgtwerden.DiejetztbegonnenenArbeitenkonnenjedochnurdannzueinem amFRMII.DieaktuelleEntwicklungkannubereinenspeziellenWeb-Server[21] ZumheutigenZeitpunktexistierteineersteRealisierungeinesTACO-Systems

10 rungsgruppenetabliertwird.BeimEntwurfdiesesKonzepteshabeichwesentlichvonderDiskussionmitzahlreichenKollegenprotiert,denenandieserStellegedanktsei.BesondererDankgilt

Danksagung

JorgKloraundAndyGotzvonderESRF,HerrPohlundZwollvomZEL,FZ-Julich undHerrnWulfvomHMI. 16


Literatur [1]GeneralPurpousInstrumentationBus(GPIB),auchIECbusoderIEEE-488.2 [2]PROcessFIeldBUS, [3]Probus-DP,Grundlagen,TipsundTricksfurAnwender,M.Popp,Huthig Busgenannt.

[4]http://www.interbus.com http://www.aut.sea.siemens.com/networks/probus.htm

[5]http://www.corba.org/undhttp://www.omg.org/ Verlag,Heidelberg(1998)

[6]http://www.infosys.tuwien.ac.at/Research/Corba/

[9]TACO:AnobjectorientedsystemforPC'srunningLinux,Winows/NT,OS- [8]http://diamant-atm.vsb.cs.uni-frankfurt.de/mico/ [7]http://www.ooc.com/ob/

Taurel,J.Quick,http://www.esrf.fr/computing/cs/taco/taco.html.Unterdie- 9,LynxOSorVxWorks,A.Gotz,W.-D.Klotz,P.Makijarvi,J.Meyer,E.

[11]TANGO [10]http://www.esrf.fr/computing/cs/sysadmin/rtk/pc104project serAdressesindauchweiteredetailierteDokumentationenzumTACO-System

{objectorientedcontrolimplementedinCORBAandDCOM,W.-D.Klotz, erhaltlich.

[12]NSESoftwareAnwenderHandbuchV2.0,J.Twardowski,H.Pohl,K.Zwoll, [13]SPECSoftwarepackethttp://www.certif.com A.Gotz,E.Taurel,J.Meyer,http://www.ersf.fr/cs/taco/tango/tango.html

[14]http://www.tcltk.com InternerBerichtFZJ-ZEL-IB-500397(Februar1997)

[17]http://www.tcltk.com/itcl [16]http://www.neuron.com/stewart/vtcl [15]http://www.cs.utah.edu/beazley/SWIG/swig.html,Programmerhaltlichunterftp://ftp.cs.utah.edu/pub/beazley/SWIG. [20]http://www.cs.uoregon.edu/jhobbs/work [19]http://www.xpi.com/tix [18]ftp.neosoft.com:/pub/tcl/tclx-distrib/tclX7.6.0.tar.gz

[21]http://tacogate.frm2.tu-muenchen.de 17

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!