Architektura oprogramowania systemu kontrolno-pomiarowego z interfejsem USB

pol Artykuł w języku polskim DOI: 10.14313/PAR_255/99

wyślij Rafał Wojszczyk Politechnika Koszalińska, ul. Śniadeckich 2, 75-4 53 Koszalin

Pobierz Artykuł

Streszczenie

W pracy zaproponowano implementację wysokopoziomowej architektury oprogramowania, która pozwala na komunikację z urządzeniem zewnętrznym w sposób obiektowy. Opracowane rozwiązanie wraz z autorskim urządzeniem podłączanym do portu USB stanowią gotowy system kontrolno-pomiarowy. Wykorzystanie wielowarstwowej architektury oraz wybranych wzorców projektowych pozwoliło na opracowanie rozwiązania programowego, które zapewnia niski koszt rozbudowy, pozwala na łatwe wykorzystanie w sposób obiektowy oraz zapewnia możliwość wymiany modułów. Dodatkowo uniwersalność opracowanego narzędzia pozwala na wprowadzanie wybranych modyfikacji systemu bez konieczności ponownej kompilacji kodu źródłowego.

Słowa kluczowe

.NET, architektura oprogramowania, ATmega, AVR, LibUSB, MVP, USB, wzorce projektowe

Software Architecture of the Control and Measurement System Using the USB Interface

Abstract

The paper proposes the implementation of a high-level software architecture that allows communication with an external device in an object-oriented manner. The developed solution, together with a proprietary device connected to a USB port, constitutes a ready-made control and measurement system. The use of a multilayered architecture and selected design patterns allowed for the development of a software solution that ensures low development costs, allows easy use in an object-oriented manner and ensures the possibility of module replacement. In addition, the versatility of the developed tool allows selected modifications to be made to the system without recompiling the source code.

Keywords

.NET, ATmega, AVR, design pattern, LibUSB, MVP, software architecture, USB

Bibliografia

  1. Daniluk A., USB Praktyczne programowanie z Windows API w C++, Helion 2009.
  2. Giebas D., Wojszczyk R., Atomicity Violation in Multithreaded Applications and Its Detection in Static Code Analysis Process, “Applied Sciences”, Vol. 10, No. 22, 2020, DOI: 10.3390/app10228005.
  3. Kavaliauskas Ž., Šajev I., Blažiūnas G., Gecevičius G., Čapas V., Adomaitis D., Electronic System for the Remote Monitoring of Solar Power Plant Parameters and Environmental Conditions, “Electronics”, Vol. 11, No. 9, 2022, DOI: 10.3390/electronics11091431.
  4. Kowol A., Internet Rzeczy – przykład implementacji protokołu LoRaWAN, „Pomiary Automatyka Robotyka”, R. 23, Nr 2, 2019, 61–68, DOI: 10.14313/PAR_232/61.
  5. Mielczarek W., USB uniwersalny interfejs szeregowy, Helion 2005.
  6. Nasution A.S., Adhitama B.S., Rasyidi F.H., Adi Aufarachman Putra Bambang Dwi, Imdad M.T., Jatmiko N.W., Development of the NOAA-19 Satellite Data Receiver Ingest System based on FPGA, 2022 International Conference on Radar, Antenna, Microwave, Electronics, and Telecommunications (ICRAMET), Bandung, Indonesia, 2022, 132–137, DOI: 10.1109/ICRAMET56917.2022.9991236.
  7. Nithya M.R., Lakshmi P., Roshmi J., Sabana R., Swetha R.U., Machine Learning and IoT based Seed Suggestion: To Increase Agriculture Harvesting and Development, 2023 International Conference on Sustainable Computing and Data Communication Systems (ICSCDS), Erode, India, 2023, DOI: 10.1109/ICSCDS56580.2023.10104981.
  8. Ladino K.S., Sama M.P., Stanton V.L., Development and Calibration of Pressure-Temperature-Humidity (PTH) Probes for Distributed Atmospheric Monitoring Using Unmanned Aircraft Systems, “Sensors”, Vol. 22, No. 9, 2022, DOI: 10.3390/s22093261.
  9. Tambaro M., Bisio M., Maschietto M., Leparulo A., Vassanelli S., FPGA Design Integration of a 32-Microelectrodes Low-Latency Spike Detector in a Commercial System for Intracortical Recordings, “Digital”, Vol. 1, No. 1, 2021, 34–53, DOI: 10.3390/digital1010003.
  10. Tiboni M., Remino C., Condition Monitoring of Pneumatic Drive Systems Based on the AI Method Feed-Forward Backpropagation Neural Network, “Sensors”, Vol. 24, No. 6, 2024, DOI: 10.3390/s24061783.
  11. Thalman R., Development and Testing of a Rocket-Based Sensor for Atmospheric Sensing Using an Unmanned Aerial System. “Sensors”, Vol. 24, No. 6, 2024, DOI: 10.3390/s24061768.
  12. Wojszczyk R., Zestawienie metryk oprogramowania obiektowego opartych na statycznej analizie kodu źródłowego, „Zarządzanie projektami i modelowanie procesów”, Zeszyty Rady Naukowej Polskiego Towarzystwa Informatycznego, 2013, 95–107, Warszawa 2013.
  13. Wojszczyk R., Giebas D., Multithreading Errors in Data Reading Automation, [In:] Szewczyk, R., Zieliński C., Kaliczyńska M. (eds) Automation 2022: New Solutions and Technologies for Automation, Robotics and Measurement Techniques. AUTOMATION 2022. Advances in Intelligent Systems and Computing, Vol. 1427, DOI: 10.1007/978-3-031-03502-9_10.
  14. Wójcicki S., Rutkowski T., Projekt i budowa uniwersalnego sterownika programowalnego, „Pomiary Automatyka Robotyka”, Nr 2, 2013, 436–442.