Un equip de la UOC dissenya una eina per automatitzar la programació de dispositius a la internet de les coses
Els investigadors treballen noves solucions informàtiques per potenciar el desenvolupament de la indústria 4.0En l'era de la internet de les coses (IOT, en la sigla en anglès), els objectes quotidians han evolucionat cap al que coneixem com a «sistemes ciberfísics». Un sistema ciberfísic és un mecanisme físic controlat o monitorat per algoritmes computacionals i altament interconnectat mitjançant internet. L'ús i el desplegament d'aquests sistemes ha penetrat amb molta intensitat en la indústria, especialment per al control i la gestió de processos industrials, i ha donat lloc a l'anomenada «indústria 4.0». El professor de recerca ICREA Jordi Cabot i l'investigador Abel Gómez, membres del grup Systems, Software and Models Research Lab (SOM Research Lab) de l'Internet Interdisciplinary Institute (IN3) de la UOC, en col·laboració amb el centre tecnològic basc IKERLAN, han dissenyat una eina innovadora per automatitzar i facilitar la creació de sistemes que empren comunicacions asíncrones dirigides per esdeveniments, una de les arquitectures informàtiques més utilitzades en aquest sector. L'eina és pionera en utilitzar l'especificació recent AsyncAPI, que permet treballar més àgilment amb aquest tipus d'arquitectures. El prototip, desenvolupat inicialment en el context del projecte MegaMa@Rt2, s'ha fet en codi obert i està disponible de manera gratuïta.
En les infraestructures informàtiques on hi ha molts dispositius que s'han de comunicar entre ells, com és el cas de fàbriques amb diferent maquinària que cal monitorar i controlar, tota la informació acostuma a estar dirigida per un node central. Per evitar que aquestes arquitectures es col·lapsin per fallades d'alguns dels elements del sistema, s'utilitzen arquitectures asíncrones dirigides per esdeveniments, que tenen l'avantatge, entre altres coses, que en cas que un component no funcioni correctament, no es bloqueja la resta del sistema. Un dels paradigmes més populars en aquest tipus d'arquitectures és l'anomenada «publicació-subscripció», en què les comunicacions no s'adrecen a un destinatari específic. «El que es fa és establir un canal comú a tots els dispositius de la xarxa i quan un dels elements —com ara un ordinador, un servidor o un altre tipus de dispositiu— vol rebre una informació determinada, l'únic que ha de fer és subscriure's a una determinada categoria de missatges. D'aquesta manera, quan un altre dispositiu és capaç de proporcionar aquesta informació, simplement la publica al canal comú sota la categoria que s'hagi acordat i només rebran els missatges publicats sobre aquest tema els dispositius que hi estiguin subscrits», explica Abel Gómez.
Tot i que aquestes arquitectures distribuïdes són especialment escalables i flexibles, no estan exemptes de problemes, ja que encara no hi ha un estàndard de programació establert, com per exemple sí que passa en la creació de pàgines web. Per tant, cal acordar quines són les categories de missatges, així com el format i l'estructura interns. «Com que no hi ha un llenguatge comú i es tracta d'infraestructures tan distribuïdes, és molt fàcil que cada un dels elements els hagi programat una persona diferent, de manera que els missatges poden variar entre els diferents dispositius. Així, en cas que es produeixi una divergència en el nom dels temes o en el format emprat, els receptors no rebran o no en sabran desxifrar el contingut», detalla l'investigador.
Recentment ha sorgit una proposta de solució estandarditzada per unificar la programació d'arquitectures dirigides per esdeveniments: l'especificació AsyncAPI. Aquesta especificació permet definir tota la informació rellevant necessària per dissenyar i executar dispositius IoT en aquests entorns. No obstant això, AsyncAPI es troba en les primeres etapes de desenvolupament i, per tant, les eines que li donen suport encara són escasses. En aquest context, els investigadors han desenvolupat una eina basada en aquesta nova proposta que permet automatitzar la creació dels missatges en el format adequat, així com l'enviament i la recepció. «Gran part de la feina que cal fer per implementar un programa per a un dispositiu IoT és crear els missatges en el format que esperen els subscriptors al canal i també "traduir" el que arriba d'altres dispositius per poder processar la informació. Es tracta, per tant, d'una gran quantitat de codi que s'ha de programar i que, com que es fa manualment, pot ser una font d'errors», descriu Abel Gómez.
«L'adopció d'aquesta nova eina —continua l'investigador— permet reduir significativament el temps de desenvolupament i implementació dels programes, i n'afavoreix la interoperabilitat, augmenta la qualitat del codi, i, per tant, redueix el nombre d'errors en el cicle de vida de desenvolupament de sofware.»
Un model per optimitzar els programes basats en sèries temporals de dades
Un altre dels reptes de la integració dels sistemes ciberfísics en la indústria 4.0 és la millora de la gestió informàtica de les sèries temporals de dades, com ara les que recullen temperatura o altres dades de manera contínua. Aquest registre històric és necessari per monitorar el funcionament correcte dels sistemes, així com per millorar els processos industrials o per detectar les possibles fonts d'un error després d'un error catastròfic. En aquesta àrea, els investigadors de la UOC, en col·laboració amb un grup de recerca austríac, han dissenyat un model teòric que combina l'enginyeria basada en models amb les bases de dades de sèries temporals per automatitzar part del procés de desenvolupament.
Les bases de dades de sèries temporals permeten el registre i l'anàlisi de dades històriques massives, com ara el mesurament de tant en tant de la temperatura d'una nevera industrial. Aquesta informació permet després fer diferents operacions, com ara calcular la temperatura màxima o la temperatura mitjana durant un període de temps concret. L'objectiu principal del nou treball ha estat integrar aquest tipus de càlculs basats en bases de dades temporals en un model, és a dir, una representació d'un determinat sistema informàtic, que automatitzi tot el procés i eviti haver de codificar les funcionalitats cada vegada per a diferents casos. «Hem definit un model que permet optimitzar les consultes històriques aprofitant les bases de dades temporals. Aquest model inclou tant com hauria de ser el llenguatge de consultes com l'estructura adequada de les bases de dades temporals que donarien suport a aquest model», descriu Abel Gómez.
Segons els investigadors, els avantatges d'aquesta proposta és que permetria automatitzar el procés de programació i evitar el risc dels potencials errors de codi, ja que en el model hi hauria especificada tota la informació necessària perquè funcioni correctament. «Aquest model reduiria el temps de programació i també els errors, ja que, en generar el codi de manera automàtica a partir del model, no tens un programador fent-ho a mà que pugui cometre errors», conclou l'investigador.
Aquesta recerca forma part del projecte Open Data for All: an API-based infrastructure for exploiting online data sources, finançat pels ajuts a projectes d'R+D+I corresponents al Programa estatal de recerca, desenvolupament i innovació orientada als reptes de la societat, en el marc del Pla estatal de recerca científica i tècnica i d'innovació 2013-2016 del Ministeri d'Economia i Competitivitat (TIN2016-75944-R).
Aquesta recerca de la UOC afavoreix l'objectiu de desenvolupament sostenible (ODS) 9, indústria, innovació i infraestructures.
Articles de referència:
Mazak, Alexandra; Wolny, Sabine; Gómez, Abel; Cabot, Jordi; Wimmer, Manuel; Kappel, Gerti. «Temporal Models on Time Series Databases. Journal of Object Technology». Vol. 19, núm. 3, 2020. http://dx.doi.org/10.5381/jot.2020.19.3.a14
Gómez, Abel; Iglesias-Urkia, Markel; Urbieta, Aitor; Cabot, Jordi. «A model-based approach for developing event-driven architectures with AsyncAPI». Proceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, Association for Computing Machinery. Esdeveniment virtual, Canadà, 2020. ISBN: 9781450370196. https://doi.org/10.1145/3365438.3410948
UOC R&I
La recerca i innovació (R+I) de la UOC contribueix a solucionar els reptes a què s'enfronten les societats globals del segle xxi, mitjançant l'estudi de la interacció de les TIC amb l'activitat humana, amb un focus específic en l'aprenentatge en línia i la salut digital. Els més de 400 investigadors i 50 grups de recerca s'articulen entorn dels set estudis de la UOC i dos centres de recerca: l'Internet Interdisciplinary Institute (IN3) i l'eHealth Center (eHC).
Els objectius de l'Agenda 2030 de desenvolupament sostenible de les Nacions Unides i el coneixement obert són eixos estratègics de la docència, la recerca i la innovació de la UOC. Més informació research.uoc.edu #25anysUOC
Experts UOC
Contacte de premsa
-
Redacció