Linux i EPICS w procesach sterowania przyspieszaczem

Wielki Zderzacz Hadronów to najbardziej na świecie znany przyspieszacz cząstek, ale nie jedyny. Podobnymi konstrukcjami dysponuje między innymi Japonia. Niedawno, w najbardziej zaawansowanym japońskim przyspieszaczu, zastosowano sterowniki PLC bazujące na systemie Linux oraz oprogramowanie o otwartym źródle EPICS. Obie technologie działają w układzie sterowania magnetycznego oraz maskującego wiązki w dwupierścieniowym, elektronowo-pozytronowym akceleratorze zderzeniowym.

Wieczór 7 października 2008 roku wyróżnił się spośród innych tym, że to właśnie wtedy Królewska Szwedzka Akademia Nauk ogłosiła nazwiska zwycięzców Nagrody Nobla w kategorii: fizyka. Prestiżowy tytuł otrzymali: Makoto Kobayashi, profesor honorowy japońskiej organizacji badań nad akceleratorami o wysokiej energii (Japan’s High Energy Accelerator Research Organization – KEK) oraz Toshihide Maskawa, profesor honorowy Uniwersytetu w Kioto. Nagrodę Nobla przyznano im za odkrycie pochodzenia złamanej symetrii, znanej jako naruszenie symetrii C i symetrii P (CP violation), która przewiduje występowanie w naturze najmniej trzech rodzin kwarków. Zwycięstwo obu naukowców świętowali wszyscy badacze oraz inżynierowie organizacji KEK, która ma olbrzymie zaplecze badawcze 60 kilometrów na północny wschód od Tokio.
Cieszyli się, bo to właśnie KEK odegrała decydującą rolę w weryfikowaniu teorii asymetrii pomiędzy materią i antymaterią. Teoria ta została ogłoszona przez Kobayashiego i Maskawę w 1973 roku. Potwierdzono ją więc dopiero po ponad trzech dekadach prac. 
KEK B-factory jest naładowanym przyspieszaczem cząstek z systemem pierścieniowego akumulowania. Przeznaczony został do eksperymentalnego weryfikowania modelu naruszenia symetrii C i symetrii P. Składa się z: injektora elektronów / pozytronów (akcelerator liniowy lub Linac), dwupierścieniowego urządzenia zderzającego z pierścieniami akumulującymi wiązkę elektronów o energii 8 GeV oraz wiązkę pozytronów o energii 3,5 GeV.
Wiązki biegną z prędkością bliską prędkości światła w przeciwnych kierunkach przez 3-kilometrowy tunel i zderzają się pośrodku detektora Belle’a. Detektor Belle’a rejestruje proces rozpadu niezmiernie krótko żyjących mezonów. To właśnie eksperyment Belle’a, przeprowadzony w 2002 roku, mocno ugruntował słuszność teorii Kobayaskiego i Maskawy.
Sterowanie akceleratorem i EPICS 
W głównym pomieszczeniu sterowni KEK B-factory badacze oraz inżynierowie nadzorują położenie i rozmiar wiązki, sprawdzają działanie systemu sprzężenia zwrotnego oraz poziom próżni. Zajmują się również analizą informacji o orbicie oraz obsługują serwery, na których instalowane są nowe programy. System sterowania uruchamia oprogramowanie aplikacyjne nazwane eksperymentalnym fizycznym i przemysłowym systemem sterowania (Experimental Physics and Industrial Control System – EPICS). Oprogramowanie to, napisane wspólnie przez Los Alamos National Laboratory (LANL) i Argonne National Laboratory (ANL), jest obecnie używane przez wiele dużych zapleczy naukowych na świecie. 
– Na początku EPICS został wdrożony do użytku w przyspieszaczu cząstek w zaawansowanych na szeroką skalę instytutach oraz organizacjach badawczych, a także w obserwatoriach astronomicznych na całym świecie – mówi dr Noboru Yamamoto, który jest odpowiedzialny za działanie sterowania w KEK Accelerator Laboratory. – Z uwagi na to, że EPICS wykorzystuje schematy o otwartych źródłach, użytkownicy mogą współdzielić rezultaty rozwijanych części oprogramowania.
System sterowania KEK zawiera prawie 100 kontrolerów z systemami We/Wy, które bazują na VME (IOCs). W obszarze połączeń zastosowano 200 interfejsów VXI mainframes z interfejsami MXI-2. Bezpośrednio do szeregowych arterii zapakowanych zostało 50 CAMAC, a ponadto w szkieletach VME zainstalowano dodatkowo 200 segmentów ARCnet. Zaangażowano także wiele urządzeń IEEE-488, RS232C oraz sterowników swobodnie programowalnych. EPICS był początkowo skojarzony z systemem czasu rzeczywistego VxWorks, ale coraz większa liczba systemów IOCs pracuje obecnie przy wykorzystaniu systemów operacyjnych, takich jak: Linux, RTEMS, µITRON, Mac OS oraz Windows XP. 
Liniowy akcelerator elektronowo-pozytronowy jest w użyciu od 1982 roku. Jego system sterowania był poprawiany w roku 1991 oraz 1993, tuż przed zaakceptowaniem projektu KEK B-factory. Pracował na oddzielnym systemie sterowania, obejmującym: 30 VME, 170 PLC, 15 CAMAC, 30 VXI, 24 inteligentne oscyloskopy, wiele komputerów pracujących pod nadzorem systemu operacyjnego Unix oraz redundantne gigabitowe sieci ethernetowe. Projekt całego sytemu bazował na użyciu standardów, takich jak: Unix, VME oraz TCP/IP z wykorzystaniem optycznych sieci Ethernetowych dla wszystkich urządzeń sterujących bez żadnych specjalnych obszarów sieciowych. Furukawa zaznaczył, że języki skryptowe, jak: SADscript, Pyton i Tcl, są ważną częścią obszaru programowego w KEK.

– Podczas gdy sterowniki sprzętowe są programowane w środowisku czasu rzeczywistego na systemach IOC, wiele algorytmów obsługi jest implementowanych przy użyciu języków skryptowych – mówi dr Kazuro Furukawa, szef KEKB Control and Linac Control Groups. – Badacze oraz inżynierowie polegają głównie na językach skryptowych dla zadań szybkiego prototypowania.
Skrypt strategicznego projektu akceleratora (Strategic Accelerator Design – SAD) był rozwijany przez KEK, w celu obliczenia oddziaływania wiązki akceleratora. Zawierał funkcje listy procesów programu Mathematica, które pozwalają na szybki rozwój systemu działającego online. Jak mówi Furukawa, SAD pozwala badaczom testować ideę dopasowania wiązki w projekcie bazującym na modelu. KEK B-factory angażuje ponad stu inżynierów i badaczy, podczas gdy projekt Belle’a angażował od 200 do 300. Mniejsze zatrudnienie jest możliwe dzięki wykorzystaniu zwykłych narzędzi skryptowych SAD i EPICS, które pozwoliły na współdzielenie opisów projektów. 
EPICS oraz sterowniki PLC 
Noboru Yamamoto zwraca uwagę, że szefostwu KEK bardzo zależało na zmniejszeniu kosztów konstrukcji KEK B-factory. Z tego względu wykorzystano wiele rodzajów dostępnego wyposażenia typu We/Wy z Tristana, a więc poprzedniego urządzenia zderzającego elektrony-pozytrony. Zainstalowano także płyty We/Wy ARCnet w systemie sterowania zasilaniem.

– Z punktu widzenia poziomu aplikacji wszystkie różnice w specyfikacji fieldbusa będą wchłonięte na poziomie IOC – tłumaczy Yamamoto. – EPICS „ukryje” wszystkie różnice, więc integracja tego oprogramowania jest dla nas najwyższym priorytetem.
Dla niektórych systemów szynowych, takich jak GPIB i Modbus, standardowy interfejs EPICS-a jest dostępny od innych grup użytkowników oprogramowania. KEK rozwinęło indywidualny interfejs na własne potrzeby. Do pierścienia KEK B-factory wprowadzono PLC do sterowania systemem zasilania. Dodatkowa instalacja została przeprowadzona, kiedy KEK wprowadził system ochrony inżynierów przed promieniowaniem.
– Użycie PLC zostało rozszerzone nawet do sterowania akceleratorem w obszarach, gdzie nie jest wymagana wysoka prędkość sterowania – podkreśla Yamamoto.
Było kilka powodów, dla których KEK przyspieszył adaptację PLC w systemie kontroli:

  • PLC kosztują mniej, w przeliczeniu na kanał, niż karty VME; w ten sposób zaoszczędzono nawet jedną trzecią kosztów;
  • inżynierowie i badacze czuli, że podzielenie prac będzie łatwiejsze z uwagi na strukturę sprzętową i oprogramowanie PLC, w przeciwieństwie do płyt VME; instalacja i programowanie PLC było przekazane do grup wyposażenia, podczas gdy sieci oraz wyższe połączenia EPICS przekazano pod opiekę grupie kontroli;
  • łatwiejsze okazało się testowanie programów i systemów. 

Instalacja EPICS i PLC oraz adaptacja Ethernetu w systemach sterowania przyspieszaczami cząstek pozwala na redukcję kosztów oraz czasu rozwoju oprogramowania. Z drugiej strony mamy tu do czynienia z kilkoma problemami, jak chociażby szufladkowanie logiki pomiędzy oprogramowaniem napisanym w języku drabinkowym i oprogramowaniem napisanym w językach wyższego poziomu.
– Inżynierowie powinni rozwijać programy logiczne w języku drabinkowym, ale sporadycznie grupa inżynierów sterowania projektuje funkcje logiczne w EPICS, co komplikuje obsługę systemu sterowania – twierdzi Furukawa. – Wzrost kosztów ponoszonych na naukę programowania jest kolejną problematyczną kwestią.
Przyszłe systemy sterowania akceleratorów
Odnosząc się do protokołów sieciowych, Furukawa powiedział: „Kiedy łączymy drabinkowe jednostki centralne przez Ethernet, mamy dwupoziomowy system komunikacji. Oprogramowanie serwera EPICS komunikuje się z protokołami PLC na niższym poziomie, zaś z protokołami EPICS na wyższym poziomie. Jeśli moglibyśmy zrobić sieć jednopoziomową, można by uprościć narzędzia do rozwijania i debagowania procedur”.
– Ponieważ występuje komunikacja pomiędzy jednostkami centralnymi PLC i komputerami VME (IOC), która wspiera protokół wymiany, wsparcie programowania urządzeń / sterowników wydaje się być bardzo skomplikowane – dodaje Yamamoto. – Niemniej jasne jest, że cały system sterowania powinien być zintegrowany z EPICS.
Ostatnio producenci automatyki dostarczają PLC, które mają jednostkę centralną pracującą pod systemem operacyjnym Linux. Używając wersji beta tego modelu, KEK oraz dwóch innych użytkowników EPICS zainicjowało wspólny projekt. Celem jest rozwój PLC, które mogłyby być obsługiwane jako EPICS IOC. 
Zarówno Linux, jak też EPICS należą do oprogramowania o otwartym źródle. Sterowniki PLC bazujące na systemie Linux mogą być połączone z konwencjonalnymi sterownikami programowanymi w języku drabinkowym. Jeśli użytkownik chciałby zaprojektować nowy system sterowania od podstaw, z tak dzieloną funkcjonalnością procesów byłoby to możliwe. Skomplikowana logika byłaby przetwarzana przez PLC bazujące na systemie Linux, podczas gdy proste przetwarzanie mogłoby być przekazane w języku drabinkowym. PLC zagnieżdżone w EPICS sprawdziły się już w procesie testowania, jak też normalnej pracy.
– Od kilku miesięcy sprawdzamy pierwsze sterowniki zagnieżdżone w EPICS – mówi Furukawa. – Kontrolują one maskę wiązki w pierścieniu KEK B-factory. Następnie dodaliśmy dwa z nich do sterowania impulsu magnesów czteropolowych. Na początku byliśmy ostrożni, ale nie stwierdziliśmy żadnych problemów.
Furukawa dodał, że w przyszłości łączność ethernetowa będzie przepustką do sterowania akceleratorami w urządzeniach i komponentach.
Shin Kai 
Artykuł pod redakcją Krzysztofa Jaroszewskiego, asystenta w Zakładzie Automatyki Instytutu Automatyki Przemysłowej Zachodniopomorskiego Uniwersytetu Technologicznego