A novel solution for controlling hardware components of accelerators and beamlines
Jazyk angličtina Země Spojené státy americké Médium print-electronic
Typ dokumentu časopisecké články
Grantová podpora
609920
H2020 European Research Council
PubMed
35510997
PubMed Central
PMC9070715
DOI
10.1107/s1600577522002685
PII: S1600577522002685
Knihovny.cz E-zdroje
- Klíčová slova
- X-ray spectroscopy, control system, experiment control, physics facility, reactive system, system design,
- MeSH
- software * MeSH
- spektrometrie rentgenová emisní MeSH
- synchrotrony * MeSH
- Publikační typ
- časopisecké články MeSH
A novel approach to the remote-control system for the compact multi-crystal energy-dispersive spectrometer for X-ray emission spectroscopy (XES) applications has been developed. This new approach is based on asynchronous communication between software components and on reactive design principles. In this paper, the challenges faced, their solutions, as well as the implementation and future development prospects are identified. The main motivation of this work was the development of a new holistic communication protocol that can be implemented to control various hardware components allowing both independent operation and easy integration into different SCADA systems.
Institute of Materials Research Helmholtz Zentrum Geesthacht Geesthacht Germany
JetBrains Research Kavčí Hory Office Park Na Hřebenech 2 1718 10 Praha 4 Nusle 140 00 Czech Republic
Zobrazit více v PubMed
Abdurashitov, D., Belesev, A., Berlev, A., Chernov, V., Geraskin, E., Golubev, A., Koroteev, G., Likhovid, N., Lokhov, A., Markin, A., Nozik, A., Parfenov, V. I., Skasyrskaya, A. K., Pantuev, V. S., Titov, N., Tkachev, I., Tkachov, F. & Zadorozhny, S. (2015). J. Instrum. 10, T10005.
Abeln, A. K., Altenmüller, S., Arguedas Cuendis, E., Armengaud, D., Attié, S., Aune, S., Basso, L., Bergé, B., Biasuzzi, P. T. C., Borges De Sousa, P., Brun, N., Bykovskiy, D., Calvet, J. M., Carmona, J. F., Castel, S., Cebrián, V., Chernov, F. E., Christensen, M. M., Civitani, C., Cogollos, T., Dafní, A., Derbin, K., Desch, D., Díez, M., Dinter, B., Döbrich, I., Drachnev, A., Dudarev, L., Dumoulin, D. D. M., Ferreira, E., Ferrer-Ribas, I., Fleck, J., Galán, D., Gascón, L., Gastaldo, M., Giannotti, Y., Giomataris, A., Giuliani, S., Gninenko, J., Golm, N., Golubev, L., Hagge, J., Hahn, C. J., Hailey, D., Hengstler, P. L., Henriksen, T., Houdy, R., Iglesias-Marzoa, F. J., Iguaz, I. G., Irastorza, C., Iñiguez, K., Jakovcic, J., Kaminski, B., Kanoute, S., Karstensen, L., Kravchuk, B., Lakic, T., Lasserre, P., Laurent, O., Limousin, A., Lindner, M., Loidl, I., Lomskaya, G., López-Alegre, B., Lubsandorzhiev, K., Ludwig, G., Luzón, C., Malbrunot, C., Margalejo, A., Marin-Franch, S., Marnieros, F., Marutzky, J., Mauricio, Y., Menesguen, M., Mentink, S., Mertens, F., Mescia, J., Miralda-Escudé, H., Mirallas, J. P., Mols, V., Muratova, X. F., Navick, C., Nones, A., Notari, A., Nozik, L., Obis, C., Oriol, F., Orsini, A., Ortiz de Solórzano, S., Oster, H. P., Pais Da Silva, V., Pantuev, T., Papaevangelou, G., Pareschi, K., Perez, O., Pérez, E., Picatoste, M. J., Pivovaroff, D. V., Poda, J., Redondo, A., Ringwald, M., Rodrigues, F., Rueda-Teruel, S., Rueda-Teruel, E., Ruiz-Choliz, J., Ruz, E. O., Saemann, J., Salvado, T., Schiffer, S., Schmidt, U., Schneekloth, M., Schott, L., Segui, F., ten Tavecchio, H. H. J., Kate, I., Tkachev, S., Troitsky, D., Unger, E., Unzhakov, N., Ushakov, J. K., Vogel, D., Voronin, A., Weltman, U., Werthenbach, W., Wuensch, A. & Yanes-Díaz (2021). arXiv:2010.12076 [physics.ins-det]. PubMed
Alakeel, A. (2009). Intl J. Comp. Sci. Network Security, 10, 153–156.
Alonso-Mori, R., Kern, J., Gildea, R. J., Sokaras, D., Weng, T.-C., Lassalle-Kaiser, B., Tran, R., Hattne, J., Laksmono, H., Hellmich, J., Glöckner, C., Echols, N., Sierra, R. G., Schafer, D. W., Sellberg, J., Kenney, C., Herbst, R., Pines, J., Hart, P., Herrmann, S., Grosse-Kunstleve, R. W., Latimer, M. J., Fry, A. R., Messerschmidt, M. M., Miahnahri, A., Seibert, M. M., Zwart, P. H., White, W. E., Adams, P. D., Bogan, M. J., Boutet, S., Williams, G. J., Zouni, A., Messinger, J., Glatzel, P., Sauter, N. K., Yachandra, V. K., Yano, J. & Bergmann, U. (2012a). Proc. Natl Acad. Sci. USA, 109, 19103–19107. PubMed
Alonso-Mori, R., Kern, J., Sokaras, D., Weng, T.-C., Nordlund, D., Tran, R., Montanez, P., Delor, J., Yachandra, V. K., Yano, J. & Bergmann, U. (2012b). Rev. Sci. Instrum. 83, 073114. PubMed PMC
Bartkiewicz, P. & Duval, P. (2007). Meas. Sci. Technol. 18, 2379–2386.
Birrell, A. D. & Nelson, B. J. (1984). ACM Trans. Comput. Syst. 2, 39–59.
Bonér, J., Farley, D., Kuhn, R. & Thompson, M. (2014). The Reactive Manifesto, https://www.reactivemanifesto.org/.
Brown, E. (2014). Web Development with Node and Express: Leveraging the JavaScript Stack. O’Reilly Media.
Burke, B. (2009). RESTful Java with JAX-RS 2.0: Designing and Developing Distributed Web Services. O’Reilly Media.
Corbin, J. R. (2011). The Art of Distributed Applications: Programming Techniques for Remote Procedure Calls. Springer.
Daigle, L. (2007). The RFC Series and RFC Editor, https://doi.org/10.17487/RFC4844.
Dalesio, L., Hill, J., Kraimer, M., Lewis, S., Murray, D., Hunt, S., Watson, W., Clausen, M. & Dalesio, J. (1994). Nucl. Instrum. Methods Phys. Res. A, 352, 179–184.
Götz, A., Bourtembourg, R., Chaize, J.-M., Verdier, P., Coutinho, T., Moldes, J., Pivetta, L., Khokhriakov, I., Merkulova, O., Gara, S., Goryl, P., Liszcz, M., Joubert, A., Abeille, G., Mant, G., Braun, T., Hardion, V. & Bartolini, M. (2019). Proceedings of the 17th International Conference on Accelerator and Large Experimental Physics Control Systems (ICALEPCS2019), 5–11 October 2019, New York, NY, USA, pp. 1234–1239. WEPHA058.
Götz, A., Chaize, J.-M., Taurel, E., Vierdier, P., Pons, J.-L., Coutinho, T., Poncet, F., Bourtemburg, R., Abeille, G., Fulop, L. J., Gernaianu, M. O., Knapic, C. & Khokhriakov, I. (2015). Proceedings of the 2015 International Conference on Accelerator and Large Experimental Physics Control Systems (ICALEPCS2015), 17–23 October 2015, Melbourne, Australia, pp. 585–588. WEA3O01.
Götz, A., Taurel, E., Pons, J., Verdier, P., Chaize, J., Meyer, J., Poncet, F., Heunen, G., Götz, E., Buteau, A., Leclercq, N. & Ounsy, M. (2003). Proceedings of the 2003 International Conference on Accelerator and Large Experimental Physics Control Systems (ICALEPCS2003), 13–17 October 2003, Gyeongju, Korea, pp. 220–222. MP705.
Götz, A., Taurel, E., Verdier, P. & Abeille, G. (2013). Proceedings of the 14th International Conference on Accelerator and Large Experimental Physics Control Systems (ICALEPCS2013), 6–11 October 2013, San Francisco, CA, USA, pp. 964–968. TUCOCB07.
Graves, W., Chen, J., Fromme, P., Holl, M., Kirian, R., Malin, L., Schmidt, K., Spence, J., Underhill, M., Weierstall, U., Zatsepin, N., Zhang, C., Brown, D., Hong, K., Moncton, D., Nanni, A. & Limborg-Deprey, C. (2017). Proceedings of the 38th International Free Electron Laser Conference (FEL2017), 20–25 August 2017, Santa Fe, NM, USA, pp. 225–228. TUB03.
Grygiel, G., Hensler, O. & Rehlich, K. (1996). Proceedings of the 1st International Workshop on Emerging Technologies and Scientific Facilities Controls (PCaPAC96). DESY, Hamburg, Germany.
Günther, B., Gradl, R., Jud, C., Eggl, E., Huang, J., Kulpe, S., Achterhold, K., Gleich, B., Dierolf, M. & Pfeiffer, F. (2020). J. Synchrotron Rad. 27, 1395–1414. PubMed PMC
Hamos, L. von (1932). Naturwissenschaften, 20, 705.
Hartwell, C. (2019). Single-Node Kubernetes on Raspberry PI with MicroK8s and Ubuntu, https://ubuntu.com/blog/single-node-kubernetes-on-raspberry-pi-microk8s-ubuntu.
Hauf, S., Heisen, B., Aplin, S., Beg, M., Bergemann, M., Bondar, V., Boukhelef, D., Danilevsky, C., Ehsan, W., Essenov, S., Fabbri, R., Flucke, G., Fulla Marsa, D., Göries, D., Giovanetti, G., Hickin, D., Jarosiewicz, T., Kamil, E., Khakhulin, D., Klimovskaia, A., Kluyver, T., Kirienko, Y., Kuhn, M., Maia, L., Mamchyk, D., Mariani, V., Mekinda, L., Michelat, T., Münnich, A., Padee, A., Parenti, A., Santos, H., Silenzi, A., Teichmann, M., Weger, K., Wiggins, J., Wrona, K., Xu, C., Youngman, C., Zhu, J., Fangohr, H. & Brockhauser, S. (2019). J. Synchrotron Rad. 26, 1448–1461. PubMed
Henning, M. & Vinoski, S. (1999). Advanced CORBA Programming with C++. Addison Wesley.
Hintjens, P. (2013). ZeroMQ. O’Reilly Media.
Kärtner, F. X., Ahr, F., Calendron, A.-L., Çankaya, H., Carbajo, S., Chang, G., Cirmi, G., Dörner, K., Dorda, U., Fallahi, A., Hartin, A., Hemmer, M., Hobbs, R., Hua, Y., Huang, W. R., Letrun, R., Matlis, N., Mazalova, V., Mücke, O. D., Nanni, E., Putnam, W., Ravi, K., Reichert, F., Sarrou, I., Wu, X., Yahaghi, A., Ye, H., Zapata, L., Zhang, D., Zhou, C., Miller, R. J. D., Berggren, K. K., Graafsma, H., Meents, A., Assmann, R. W., Chapman, H. N. & Fromme, P. (2016). Nucl. Instrum. Methods Phys. Res. A, 829, 24–29. PubMed PMC
Khokhriakov, I., Lottermoser, L. & Beckmann, F. (2017). Proc. SPIE, 10391, 103911H.
Khokhriakov, I., Lottermoser, L., Gehrke, R., Kracht, T., Wintersberger, E., Kopmann, A., Vogelgesang, M. & Beckmann, F. (2014). Proc. SPIE, 9212, 921217.
Khokhriakov, I., Wilde, F. & Merkulova, O. (2019). Proceedings of the 17th International Conference on Accelerator and Large Experimental Physics Control Systems (ICALEPCS’19), 5–11 October 2019, New York, NY, USA, pp. 1519–1524. WESH3003.
Kuhn, R., Hanafee, B. & Allen, J. (2017). Reactive Design Patterns. Manning Publications.
McCool, M., Reinders, J. & Robison, A. (2012). Structured Parallel Programming: Patterns for Efficient Computation. Morgan Kaufmann Publishers.
Nozik, A. (2019). AIP Conf. Proc. 2163, 040004.
Palmieri, J. (2005). Get on D-BUS. Red Hat Magazine, https://web.archive.org/web/20151023072022/http://www.redhat.com/magazine/003jan05/features/dbus/.
Phelps, J. (2019). Backpressure explained – the resisted flow of data through software, https://medium.com/@jayphelps/backpressure-explained-the-flow-of-data-through-software-2350b3e77ce7.
Poulton, N. (2016). Docker Deep Dive: Zero to Docker in a single book. ASIN: B01LXWQUFF.
Poulton, N. & Joglekar, P. (2019). The Kubernetes Book: The Fastest Way to Get Your Head Around Kubernetes. Packt Publishing.
Rauschmayer, A. (2018). Exploring ES6, ch. 25, https://exploringjs.com/es6/ch_promises.html.
Richardson, L., Amundsen, M. & Ruby, S. (2013). RESTful Web APIs: Services for a Changing World, 1st ed. O’Reilly Media.
Schoder, D., Fischbach, K. & Schmitt, C. (2005). Core Concepts in Peer-to-Peer Networking, pp. 1–27. Idea Group Inc, https://doi.org/10.4018/978-1-59140-429-3.ch001.
Srinivasan, R. (1995). Remote Procedure Call Protocol Specification Version 2, https://www.freesoft.org/CIE/RFC/1831/index.htm.
Szlachetko, J., Nachtegaal, M., de Boni, E., Willimann, M., Safonova, O., Sa, J., Smolentsev, G., Szlachetko, M., van Bokhoven, J. A., Dousse, J., Hoszowska, J., Kayser, Y., Jagodzinski, P., Bergamaschi, A., Schmitt, B., David, C. & Lücke, A. (2012). Rev. Sci. Instrum. 83, 103105. PubMed
Travis, J. & Kring, J. (2007). LabVIEW for everyone: graphical programming made easy and fun, 3rd ed. Upper Saddle River, NJ: Prentice Hall.
Wolff, E. (2016). Microservices: Flexible Software Architecture. Addison-Wesley Professional.
ZeoLearn (2018). Asynchronous Nature of JavaScript, https://medium.com/@zeolearn/asynchronous-nature-of-javascript-d7d18a71aa35.