TANGO | |
---|---|
Type | gratis og open source software |
Udvikler | TANGO konsortium |
Operativ system | på tværs af platforme |
Første udgave | 19. april 2001 |
nyeste version |
|
Licens | GNU LGPL og GNU GPL |
Internet side | tango-controls.org |
TANGO (fra engelsk TAco Next Generation Objects ) er et gratis objektorienteret system designet til at styre acceleratorer , eksperimentelle faciliteter samt diverse hardware og software. TANGO-systemet er aktivt udviklet af fællesskabet af (for det meste) synkrotronoperatører
TANGO er et distribueret kontrolsystem. Den kan køre på en eller hundredvis af maskiner. TANGO bruger den omniorb implementering af CORBA som sin netværksprotokol. Den vigtigste interaktionsmodel er klient-server-modellen. Kommunikation mellem klienter og servere kan være synkron, asynkron eller hændelsesdrevet.
TANGO er baseret på principperne om objekt- og serviceorientering. TANGO-objektmodellen understøtter metoder, attributter og egenskaber. I TANGO er alle objekter enhedsrepræsentationer.
TANGO inkluderer en database, der gemmer alle enheder, der er registreret i systemet, et hurtigt applikationsudviklingsmiljø og et stort antal hjælpeværktøjer.
JIVE er en uafhængig Java- applikation designet til at se og redigere TANGO-databasen. JIVE er skrevet i Swing og kræver en Java Virtual Machine større end 1.8.0 for at køre.
POGOPOGO er en kodegenerator til TANGO enhedsservere.
Astor er softwaremanager for TANGO-systemet. Astor kan:
TANGO-systemet indeholder også et indbygget arkiveringssystem, der bruger enten MySQL eller Oracle . Arkiveringssystemet giver dig mulighed for at gemme de data, du har brug for, fra enheder.
TANGO bruges primært til at give adgang til udstyr over et lokalt netværk. I dette tilfælde kan udvalget af udstyr variere fra de enkleste I/O-registre, der sender individuelle bytes til de mest komplekse detektorsystemer eller endda hele anlægskontrolsystemer. Adgang til hardwaren programmeres i processer kaldet Device Server . Enhedsserveren implementerer klasser, der giver adgang til hardwaren. Under driften opretter enhedsserveren enhedsforekomster, der repræsenterer de logiske entiteter af hardwarekomponenterne. Klienten interagerer med enheder ved hjælp af TANGO-protokollen.
TANGO distribueres primært under to licenser. Bibliotekerne er licenseret under GNU Lesser General Public License (LGPL). Udviklingsværktøjerne og enhedsserverne er licenseret (medmindre andet er angivet) under GNU General Public License (GPL). Nogle biblioteker/komponenter distribueres også under MIT- eller Apache 2.0- licenser.
Konsortiet er en gruppe af institutioner, der aktivt udvikler TANGO. For at tilslutte sig konsortiet skal et institut underskrive et memorandum og aktivt deltage i udviklingen af TANGO. Konsortiet består i øjeblikket af følgende institutter:
Formålet med konsortiet er at garantere udviklingen af TANGO.
TANGO-systemet bruges [2] :