Системы анализа и обработки данных

СИСТЕМЫ АНАЛИЗА И ОБРАБОТКИ ДАННЫХ

ISSN (печатн.): 2782-2001          ISSN (онлайн): 2782-215X
English | Русский

Последний выпуск
№2(94) Апрель - Июнь 2024

Разработка архитектурного решения программного обеспечения для устройств интернет-вещей

Выпуск № 2 (90) Апрель - Июнь 2023
Авторы:

Шперлинг Владимир Константинович,
Якименко Александр Александрович
DOI: http://dx.doi.org/10.17212/2782-2001-2023-2-43-58
Аннотация

Представлена разработка архитектурного решения программного обеспечения для устройств интернет-вещей (IoT), реализующая функционал автоматического дозатора медицинских препаратов, на базе аппаратной платформы ESP32 с использованием возможностей существующих операционных систем реального времени (RTOS). Архитектура программного обеспечения для устройств IoT была спроектирована с учетом масштабируемости и отказоустойчивости. Все компоненты системы взаимодействуют друг с другом через асинхронные callback-функции, что обеспечивает гибкость и расширяемость архитектуры. Было проведено тестирование на отказоустойчивость системы. Архитектура может быть внедрена и использована в основе любого устройства IoT, что позволяет обеспечить поддержку современных стеков безопасности и функциональности при реализации данного функционала единожды в любом из устройств. В работе описывается процесс проектирования архитектуры программного обеспечения, включая выбор подходящих технологий и библиотек. Особое внимание уделено обеспечению безопасности и надежности работы устройства, в том числе защите от несанкционированного доступа и ошибок в работе. Результаты экспериментальных испытаний показывают высокую эффективность и точность работы автоматического дозатора медицинских препаратов на базе разработанного программного обеспечения. В практической части приводятся примеры реализации предложенной архитектуры на языках C и C++ с примерами и основными диаграммами взаимодействия компонентов друг с другом. При написании реализации на языке C++ также была использована библиотека rxcpp, которая позволила упростить написание кодовой базы для взаимодействия с ресурсами операционной системы и переиспользовать многопоточное взаимодействие с системой.


Ключевые слова: IoT, разработка С++, архитектура ПО, ESP-IDF, FreeRTOS, ReactiveX, архитектура интернет-вещей, ПО IoT

Список литературы

1. Sutar S., Mekala P. An Extensive review on IoT security challenges and LWC implementation on tiny hardware for node level security evaluation // International Journal of Next-Generation Computing. – 2022. – Vol. 13 (1). – DOI: 10.47164/ijngc.v13i1.424.



2. A smart wearable system for sudden infant death syndrome monitoring / A.G. Ferreira, D. Fernandes, S. Branco, J.L. Monteiro, J. Cabral, A.P. Catarino, A.M. Rocha // 2016 IEEE International Conference on Industrial Technology (ICIT). – Taipei, Taiwan, 2016. – P. 1920–1925. – DOI: 10.1109/ICIT.2016.7475060.



3. Myers G.J., Sandler C., Badgett T. The Art of Software Testing. – Hoboken, NJ: John Wiley & Sons, 2011.



4. Jorgensen M., Shepperd M. A systematic review of software development cost estimation studies // IEEE Transactions on Software Engineering. – 2007. – Vol. 33 (1). – P. 33–53. – DOI: 10.1109/TSE.2007.256943.



5. Kalinsky D. Basic concepts of real-time operating systems (18 November, 2003). – URL: https://linuxdevices.org/basic-concepts-of-real-time-operating-systems-a/ (accessed: 29.05.2023).



6. Laplante P.A., Ovaska S.J. Real-time systems design and analysis: tools for the practitioner. – 4th ed. – Wiley-Interscience, 2012. – 536 p.



7. Schorcht G. Documentation. ESP32 SoC Series // RIOT: website. – URL: https://doc.riot-os.org/group__cpu__esp32.html#esp32_features (accessed: 29.05.2023).



8. Kernighan W.B., Ritchie M.D. The C programming language. – 2nd ed. – Englewood Cliffs, NJ: Prentice-Hall, 1988. – 272 p.



9. Tornhill A. Patterns in C: patterns, idioms and design principles. – Leanpub, 2015.



10. Schildt H. C++: the complete reference. – 3rd ed. – Osborne: McGraw-Hill, 1998. – ISBN 978-0-07-882476-0.



11. Ševc B. Library for Handling. Asynchronous Events in C++: bachelor's thesis. – Brno, 2019. – URL: https://is.muni.cz/th/lx0et/thesis_Archive.pdf (accessed: 29.05.2023).



12. Schweizer H., Besta M., Hoefler T. Evaluating the cost of atomic operations on modern architectures // 2015 International Conference on Parallel Architecture and Compilation (PACT). – IEEE, 2015. – P. 445–456. – DOI: 10.1109/PACT.2015.24.



13. Garg R., Kumar R. A review of real-time operating systems for Internet of Things applications // Journal of Ambient Intelligence and Humanized Computing. – 2019. – Vol. 10 (7). – P. 2665–2681.



14. Yang Y., Li Y., Li X. A survey on real-time operating systems for embedded systems in Internet of Things // Journal of Ambient Intelligence and Humanized Computing. – 2019. – Vol. 10 (6). – P. 2423–2437.



15. RIOT OS: towards an OS for the Internet of Things / E. Baccelli, O. Hahm, M. Gunnes, M. Wählisch, T.C. Schmidt // 2013 IEEE Conference on Computer Communications Workshops (INFOCOM WKSHPS). – Turin, Italy, 2013. – P. 79–80. – DOI: 10.1109/INFCOMW.2013.6970748.

Благодарности. Финансирование

Исследование выполнено при финансовой поддержке РФФИ в рамках научного проекта № 20-08-00550 А.

Для цитирования:

Шперлинг В.К., Якименко А.А. Разработка архитектурного решения программного обеспечения для устройств интернет-вещей // Системы анализа и обработки данных. – 2023. – № 2 (90).?– С. 43–58. – DOI: 10.17212/2782-2001-2023-2-43-58.

For citation:

Shperling V.K., Yakimenko A.A. Razrabotka arkhitekturnogo resheniya programmnogo obespe-cheniya dlya ustroistv internet-veshchei [Development of an architectural software solution for Internet of Thing devices]. Sistemy analiza i obrabotki dannykh = Analysis and Data Processing Systems, 2023, no. 2 (90), pp. 43–58. DOI: 10.17212/2782-2001-2023-2-43-58.

Просмотров: 497